@@ -17,42 +17,43 @@ SVGBOB_VERSION=0.5.0-alpha.6
1717
1818VERSION =0.60.0
1919MOTTO =rusty version
20- PDF_VERSION =0.11
21- STANDALONE_VERSION =0.5
22- FRIENDS_VERSION =0.5
23- A2SKETCH_VERSION =0.15
24- JUPYTER_VERSION =0.4
2520
2621
27- # all: docroot pandocs
2822.PHONY : all target/binaries/markdeck.x86_64-apple-darwin target/binaries/markdeck.x86_64-unknown-linux-musl
2923all : docroot pandocs binaries docker-image
3024
25+
3126debug :
3227 time cargo build
3328
29+
3430pandocs : src/docroot/pandoc-x86_64-apple-darwin src/docroot/pandoc-x86_64-unknown-linux-musl
3531
32+
3633src/docroot/pandoc-x86_64-apple-darwin :
3734 curl -OL https://github.com/jgm/pandoc/releases/download/$(PANDOC_VERSION ) /pandoc-$(PANDOC_VERSION ) -macOS.zip
3835 unzip -p pandoc-$(PANDOC_VERSION ) -macOS.zip pandoc-$(PANDOC_VERSION ) /bin/pandoc > $@
3936 chmod a+rx $@
4037 rm -f pandoc-$(PANDOC_VERSION ) -macOS.zip
4138
39+
4240src/docroot/pandoc-x86_64-unknown-linux-musl :
4341 curl -OL https://github.com/jgm/pandoc/releases/download/$(PANDOC_VERSION ) /pandoc-$(PANDOC_VERSION ) -linux-amd64.tar.gz
4442 tar zxvOf pandoc-$(PANDOC_VERSION ) -linux-amd64.tar.gz pandoc-$(PANDOC_VERSION ) /bin/pandoc > $@
4543 chmod a+rx $@
4644 rm -f pandoc-$(PANDOC_VERSION ) -linux-amd64.tar.gz
4745
46+
4847binaries : target/binaries/markdeck.x86_64-apple-darwin target/binaries/markdeck.x86_64-unknown-linux-musl
4948
49+
5050target/binaries/markdeck.x86_64-apple-darwin :
5151 export TARGET=x86_64-apple-darwin
5252 time cargo build --release --target $$ {TARGET}
5353 mkdir -p target/binaries
5454 cp target/$$ {TARGET}/release/markdeck $@
5555
56+
5657target/binaries/markdeck.x86_64-unknown-linux-musl :
5758 export CC_x86_64_unknown_linux_musl=x86_64-unknown-linux-musl-gcc
5859 export CXX_x86_64_unknown_linux_musl=x86_64-unknown-linux-musl-g++
@@ -64,29 +65,27 @@ target/binaries/markdeck.x86_64-unknown-linux-musl:
6465 cp target/$$ {TARGET}/release/markdeck $@
6566
6667
67-
6868docker-image :
6969 docker build -f docker/Dockerfile.markdeck target/binaries -t arne/markdeck:$(VERSION )
7070
71+
7172push-image :
7273 docker push arne/markdeck:$(VERSION )
7374 docker tag arne/markdeck:$(VERSION ) quay.io/arne/markdeck:$(VERSION )
7475 docker push quay.io/arne/markdeck:$(VERSION )
7576
77+
7678run-as-container :
7779 mkdir -p example/test
7880 # docker run -it -v $(PWD)/example/:/source:ro -v $(PWD)/example/test/:/target -p 8080:8080 markdeck:$(VERSION)
7981 docker rm -f markdeck
8082 docker run -it -v $(PWD ) /example/:/source:ro -p 8080:8080 -e RUST_LOG=debug --name markdeck markdeck:$(VERSION )
8183
84+
8285debug-container :
8386 docker exec -it markdeck ash
8487
8588
86-
87- # all: docker-compose.yaml develop.yaml images.built
88-
89-
9089images.built : Makefile docker/Dockerfile.*
9190 cp target/binaries/markdeck.x86_64-unknown-linux-musl ./
9291 docker compose build \
@@ -141,69 +140,12 @@ docroot: src/docroot/main/toplevel/admin.html src/docroot/main/assets/3rdparty/j
141140 docker export docroot-helper | tar -C src/docroot/live_server/helper --strip-components 1 -x docroot/
142141
143142
144- tag : all
143+ tag :
145144 @echo $(VERSION )
146145 git tag -a v$(VERSION ) -m v$(VERSION )
147146 git push --tags
148147
149148
150- push : all
151- for I in $( shell yq r docker-compose.yaml ' services.*.image' | uniq) ; do
152- echo pushing $$ I
153- docker push $$ I
154- docker tag $$ I quay.io/$$ I
155- docker push quay.io/$$ I
156- done
157-
158-
159- docker-compose.yaml : docker-compose.yaml.source Makefile
160- cp docker-compose.yaml.source docker-compose.yaml
161- yq eval ' .services.markdeck.image = "arne/markdeck-pandoc:$(VERSION)"' -i docker-compose.yaml
162- yq eval ' .services.markdeck.build.args.version = "$(VERSION)"' -i docker-compose.yaml
163- yq eval ' .services.markdeck.build.args.motto = "$(MOTTO)"' -i docker-compose.yaml
164- yq eval ' .services.pdf.image = "arne/markdeck-decktape:$(PDF_VERSION)"' -i docker-compose.yaml
165- yq eval ' .services.standalone.image = "arne/markdeck-standalone:$(STANDALONE_VERSION)"' -i docker-compose.yaml
166- yq eval ' .services.friends.image = "arne/markdown-friends:$(FRIENDS_VERSION)"' -i docker-compose.yaml
167- yq eval ' .services.a2sketch.image = "arne/a2sketch:$(A2SKETCH_VERSION)"' -i docker-compose.yaml
168- yq eval ' .services.jupyter.image = "arne/markdeck-jupyter:$(JUPYTER_VERSION)"' -i docker-compose.yaml
169- yq eval ' .services.jupyterlab.image = "arne/markdeck-jupyter:$(JUPYTER_VERSION)"' -i docker-compose.yaml
170-
171-
172- develop.yaml : develop.yaml.source Makefile
173- cp develop.yaml.source develop.yaml
174- yq eval ' .services.markdeck.image = "arne/markdeck-pandoc:$(VERSION)"' -i docker-compose.yaml
175- yq eval ' .services.pdf.image = "arne/markdeck-decktape:$(PDF_VERSION)"' -i docker-compose.yaml
176- yq eval ' .services.standalone.image = "arne/markdeck-standalone:$(STANDALONE_VERSION)"' -i docker-compose.yaml
177- yq eval ' .services.friends.image = "arne/markdown-friends:$(FRIENDS_VERSION)"' -i docker-compose.yaml
178- yq eval ' .services.a2sketch.image = "arne/a2sketch:$(A2SKETCH_VERSION)"' -i docker-compose.yaml
179- yq eval ' .services.jupyter.image = "arne/markdeck-jupyter:$(JUPYTER_VERSION)"' -i docker-compose.yaml
180- yq eval ' .services.jupyterlab.image = "arne/markdeck-jupyter:$(JUPYTER_VERSION)"' -i docker-compose.yaml
181-
182-
183- ../markdeck : docker-compose.yaml Makefile
184- sed -n ' /EODCF/,/EODCF/{/EODCF/d;s/..MARKDECK_USER/______/;p;}' ../markdeck > dc.tmp
185- yq eval ' .services.markdeck.image = "arne/markdeck-pandoc:$(VERSION)"' -i dc.tmp
186- yq eval ' .services.markdeck.build.args.version = "$(VERSION)"' -i dc.tmp
187- yq eval ' del(.services.markdeck.build)' -i dc.tmp
188- yq eval ' del(.services.web.build)' -i dc.tmp
189- yq eval ' .services.pdf.image = "arne/markdeck-decktape:$(PDF_VERSION)"' -i dc.tmp
190- yq eval ' del(.services.pdf.build)' -i dc.tmp
191- yq eval ' .services.standalone.image = "arne/markdeck-standalone:$(STANDALONE_VERSION)"' -i dc.tmp
192- yq eval ' del(.services.standalone.build)' -i dc.tmp
193- yq eval ' .services.friends.image = "arne/markdown-friends:$(FRIENDS_VERSION)"' -i dc.tmp
194- yq eval ' del(.services.friends.build)' -i dc.tmp
195- yq eval ' .services.a2sketch.image = "arne/a2sketch:$(A2SKETCH_VERSION)"' -i dc.tmp
196- yq eval ' del(.services.jupyter.build)' -i dc.tmp
197- yq eval ' .services.jupyter.image = "arne/markdeck-jupyter:$(JUPYTER_VERSION)"' -i dc.tmp
198- yq eval ' del(.services.jupyterlab.build)' -i dc.tmp
199- yq eval ' .services.jupyterlab.image = "arne/markdeck-jupyter:$(JUPYTER_VERSION)"' -i dc.tmp
200- sed -i.bak ' s/______/\\$$MARKDECK_USER/' dc.tmp
201- sed -i.bak -e ' / EODCF/r dc.tmp' -e ' / EODCF/,/EODCF/{/EODCF/p;d;}' ../markdeck
202- rm -f dc.tmp* ../markdeck.bak
203- sed -i.bak ' /VERSION=/{s/=.*/=$(VERSION)/;}' ../markdeck
204- rm -f ../markdeck.bak
205-
206-
207149check-versions :
208150 @echo " PANDOC_VERSION"
209151 @echo " $( PANDOC_VERSION) "
@@ -246,15 +188,6 @@ target/versions: Makefile
246188 echo " MERMAID_VERSION=$( MERMAID_VERSION) " >> $@
247189 echo " SVGBOB_VERSION=$( SVGBOB_VERSION) " >> $@
248190
249- markdeck/versions : Makefile
250- rm -f $@
251- echo " PANDOC_VERSION=$( PANDOC_VERSION) " >> $@
252- echo " REVEALJS_VERSION=$( REVEALJS_VERSION) " >> $@
253- echo " ASCIINEMAPLAYER_VERSION=$( ASCIINEMAPLAYER_VERSION) " >> $@
254- echo " JQUERY_VERSION=$( JQUERY_VERSION) " >> $@
255- echo " IMPRESSJS_VERSION=$( IMPRESSJS_VERSION) " >> $@
256- echo " MERMAID_VERSION=$( MERMAID_VERSION) " >> $@
257- echo " SVGBOB_VERSION=$( SVGBOB_VERSION) " >> $@
258191
259192update-rust :
260193 rustup self update
@@ -273,6 +206,7 @@ update-rust:
273206 brew upgrade mingw-w64 || brew install mingw-w64
274207 rustup target add x86_64-pc-windows-gnu
275208
209+
276210clean :
277211 rm -f downloaded/bin/*
278212 rm -rf markdeck/assets/3rdparty markdeck/assets/framework
@@ -283,4 +217,4 @@ tabularasa:
283217 docker images " arne/markdeck*"
284218 docker images -q " arne/markdeck*" | xargs docker rmi -f
285219 docker system prune -f
286- docker images " arne/markdeck*"
220+ docker images " arne/markdeck*"
0 commit comments