From: Martin Mares Date: Wed, 21 Feb 2024 18:54:01 +0000 (+0100) Subject: Maintainer scripts: Generating distribution archives and specimen PDFs X-Git-Url: http://mj.ucw.cz/gitweb/?a=commitdiff_plain;h=707118ec4b12d8c98105cb259fb553e7b99f35b4;p=diplomky.git Maintainer scripts: Generating distribution archives and specimen PDFs --- diff --git a/maint/mkdist b/maint/mkdist index 3d4ac4f..2732827 100755 --- a/maint/mkdist +++ b/maint/mkdist @@ -1,102 +1,60 @@ #!/bin/bash set -e -export LC_ALL=cs_CZ -for a in bp dp phd ; do - rm -rf vzor-$a{,.zip} - git archive --prefix=vzor-$a/ HEAD | tar xf - +BRANCH=cs +VERSIONS="bc mgr phd rig" +TMPL=sablona +SPEC=vzor + +function template () +{ + local ver=$1 + + echo "### Generating $TMPL-$ver" + git archive --prefix=out/$TMPL-$ver/ $BRANCH | tar xf - + ( - cd vzor-$a - rm -rf mkdist upload uprava slides TODO + cd out/$TMPL-$ver ( date +'%Y-%m-%d' echo -n 'Git commit: ' - git rev-parse HEAD + git rev-parse $BRANCH ) >VERSION ) -done +} -# BP -( - echo "Generating BP" - cd vzor-bp - sed -i ' - /^%\+ *ONLYPHD/N - /^%\+ *PHDONLY/,/^%\+ *ONLYPHD/d - /^%\+ *NOPHD/d - /^%\+ *PHDNO/d - ' */*.tex README* -) +function specimen () +{ + local ver=$1 -# DP -( - echo "Generating DP" - cd vzor-dp - sed -i ' - s/bakalářsk/diplomov/g - s/BAKALÁŘSK/DIPLOMOV/g - s/bachelor/master/g - s/BACHELOR/MASTER/g - s/bp_uprava/dp_uprava/g - /^%\+ *ONLYPHD/N - /^%\+ *PHDONLY/,/^%\+ *ONLYPHD/d - /^%\+ *NOPHD/d - /^%\+ *PHDNO/d - ' */*.tex README* - if grep -Eri 'bakal|bachel' . ; then - echo >&2 "Substitutions failed" - exit 1 - fi -) + echo "### Generating $SPEC-$ver" + git archive --prefix=out/$SPEC-$ver/ $BRANCH-specimen | tar xf - -# PhD -( - echo "Generating PhD" - cd vzor-phd - sed -i ' - s/bakalářská/disertační/g - s/bakalářské/disertační/g - s/bakalářských/disertačních/g - s/bakalářskou/disertační/g - s/BAKALÁŘSKÁ/DISERTAČNÍ/g - s/bachelor/doctoral/g - s/BACHELOR/DOCTORAL/g - s/bp_uprava/phd_uprava/g - /^%\+ *PHDONLY/d - /^%\+ *ONLYPHD/d - /^%\+ *PHDNO/N - /^%\+ *NOPHD/,/^%\+ *PHDNO/d - ' */*.tex README* - if grep -Eri 'bakal|bachel' . ; then - echo >&2 "Substitutions failed" - exit 1 - fi -) - -for a in bp dp phd ; do - ( - cd vzor-$a/cs - make - mv prace.pdf vzor.pdf - make clean - ) ( - cd vzor-$a/en - make - mv thesis.pdf example.pdf - make clean + cd out/$SPEC-$ver + sed -i "/\\def\\ThesisType/s/{.*}/{$ver}/" -i metadata.tex + if ! make >make.log 2>&1 ; then + echo >2 "make failed, see $SPEC-$ver/make.log for details" + exit 1 + fi ) - ( - cd vzor-$a - sed -i ' - /^%\+ *NEMICEPS/N - /^%\+ *SPECIMEN/,/^%\+ *NEMICEPS/d - s/ *\\X{[^}]*}// - /^\\XXX{/d - ' */*.tex - ) -done -for a in bp dp phd ; do - zip -r vzor-$a.zip vzor-$a + cp out/$SPEC-$ver/thesis.pdf out/$TMPL-$ver/$SPEC.pdf +} + +function archive () +{ + local ver=$1 + + echo "### Zipping $TMPL-$ver" + zip -r out/$TMPL-$ver.zip out/$TMPL-$ver +} + +rm -rf out +mkdir out + +for ver in $VERSIONS ; do + template $ver + specimen $ver + archive $ver done