termux-packages/packages/texlive-bin/build.sh

135 lines
4.4 KiB
Bash
Raw Normal View History

Properly package texlive and split package into texlive & texlive-bin (#1203) * texlive: enable makeindex and put man files and headers in proper location. * texlive: upgrade to 2017 * texlive: split into texlive-bin and arch independent texlive-base. Download texmf-dist and other tarballs and package necessary files instead of using tlnet installer on device. * texlive-base: extract only a minimal set of files from texmf-dist, do complete uninstall on removal. Patch some files. The texmf-dist tar is quite large so use --checkpoint to indicate progress. * texlive: use gnupg2 instead of gnupg * texlive: fix texlive profile * texlive: added TL_BINDIR variable to simplify build scripts * texlive: replace tlmgr symlink with small wrapper. After `tlmgr update --self` has been run, the shebang of tlmgr.pl is none-working and there is a reference to /bin/sh in TLUtils.pm. This wrapper fixes this (if needed) before tlmgr is run. * texlive: update command-not-found with a few common texlive commands. * remove un-needed minimal.list * Format generation working. xelatex activated. Remove all texmf-dist files created by texlive-bin package. * texlive: fix installation and removal of texlive-{bin,base}. All essential fixes done. Only thing remaining to fix is figuring out how to deal with the transition texlive -> texlive-{bin,base}. * texlive: use Breaks instead of Conflicts * texlive: properly fix split into two packages [WIP] * delete old termux-install-tl.sh * texlive: Fix so that the upgrade from texlive 20170524-2 goes smoothly and works as it should (with Breaks and Replaces). Also major clean up of texlive/build.sh. * texlive: minor clean up of texlive/build.sh. Update patches to avoid (silent) complaints from patching. Add previously forgotten install-tl.list with list of files to take from install-tl-unx.tar.gz. * texlive: make texlive-bin-dev properly replace texlive-dev. Everything is done now, just need to wait for breaks and subpkg_replaces before opening a pull request. * texlive: skip format generation on install, rm old files in texlive-bin as well. Also decrease verbosity of installation * texlive: when deleting old files, leave texmf-dist alone * texlive: fix typo, correctly remove files from old texlive version
2017-08-09 23:09:01 +02:00
TERMUX_PKG_HOMEPAGE=https://www.tug.org/texlive/
TERMUX_PKG_DESCRIPTION="TeX Live is a distribution of the TeX typesetting system. This package contains architecture dependent binaries."
2019-01-21 13:53:58 +01:00
TERMUX_PKG_LICENSE="GPL-2.0"
Properly package texlive and split package into texlive & texlive-bin (#1203) * texlive: enable makeindex and put man files and headers in proper location. * texlive: upgrade to 2017 * texlive: split into texlive-bin and arch independent texlive-base. Download texmf-dist and other tarballs and package necessary files instead of using tlnet installer on device. * texlive-base: extract only a minimal set of files from texmf-dist, do complete uninstall on removal. Patch some files. The texmf-dist tar is quite large so use --checkpoint to indicate progress. * texlive: use gnupg2 instead of gnupg * texlive: fix texlive profile * texlive: added TL_BINDIR variable to simplify build scripts * texlive: replace tlmgr symlink with small wrapper. After `tlmgr update --self` has been run, the shebang of tlmgr.pl is none-working and there is a reference to /bin/sh in TLUtils.pm. This wrapper fixes this (if needed) before tlmgr is run. * texlive: update command-not-found with a few common texlive commands. * remove un-needed minimal.list * Format generation working. xelatex activated. Remove all texmf-dist files created by texlive-bin package. * texlive: fix installation and removal of texlive-{bin,base}. All essential fixes done. Only thing remaining to fix is figuring out how to deal with the transition texlive -> texlive-{bin,base}. * texlive: use Breaks instead of Conflicts * texlive: properly fix split into two packages [WIP] * delete old termux-install-tl.sh * texlive: Fix so that the upgrade from texlive 20170524-2 goes smoothly and works as it should (with Breaks and Replaces). Also major clean up of texlive/build.sh. * texlive: minor clean up of texlive/build.sh. Update patches to avoid (silent) complaints from patching. Add previously forgotten install-tl.list with list of files to take from install-tl-unx.tar.gz. * texlive: make texlive-bin-dev properly replace texlive-dev. Everything is done now, just need to wait for breaks and subpkg_replaces before opening a pull request. * texlive: skip format generation on install, rm old files in texlive-bin as well. Also decrease verbosity of installation * texlive: when deleting old files, leave texmf-dist alone * texlive: fix typo, correctly remove files from old texlive version
2017-08-09 23:09:01 +02:00
TERMUX_PKG_MAINTAINER="Henrik Grimler @Grimler91"
2019-04-30 17:14:19 +02:00
TERMUX_PKG_VERSION=20190410
2020-01-31 14:17:24 +01:00
TERMUX_PKG_REVISION=9
2019-04-30 17:14:19 +02:00
TERMUX_PKG_SRCURL=https://github.com/TeX-Live/texlive-source/archive/build-svn50882.tar.gz
TERMUX_PKG_SHA256=a7462f8e29163faa52ad2ac658727b60f95241449832f1a4dac8d8a406d18233
2019-06-20 14:54:53 +02:00
TERMUX_PKG_DEPENDS="libc++, libiconv, freetype, libpng, libgd, libgmp, libmpfr, libicu, liblua, poppler, libgraphite, harfbuzz, harfbuzz-icu, teckit, libpixman, libcairo, zlib"
2019-01-20 18:39:20 +01:00
# libpcre, glib, fonconfig are dependencies to libcairo. pkg-config gives an error if they are missing
# libuuid, libxml2 are needed by fontconfig
TERMUX_PKG_BUILD_DEPENDS="icu-devtools, pcre, glib, fontconfig, libuuid, libxml2"
TERMUX_PKG_BREAKS="texlive (<< 20180414), texlive-bin-dev"
TERMUX_PKG_REPLACES="texlive (<< 20170524-3), texlive-bin-dev"
TERMUX_PKG_RECOMMENDS="texlive"
TERMUX_PKG_HOSTBUILD=true
Properly package texlive and split package into texlive & texlive-bin (#1203) * texlive: enable makeindex and put man files and headers in proper location. * texlive: upgrade to 2017 * texlive: split into texlive-bin and arch independent texlive-base. Download texmf-dist and other tarballs and package necessary files instead of using tlnet installer on device. * texlive-base: extract only a minimal set of files from texmf-dist, do complete uninstall on removal. Patch some files. The texmf-dist tar is quite large so use --checkpoint to indicate progress. * texlive: use gnupg2 instead of gnupg * texlive: fix texlive profile * texlive: added TL_BINDIR variable to simplify build scripts * texlive: replace tlmgr symlink with small wrapper. After `tlmgr update --self` has been run, the shebang of tlmgr.pl is none-working and there is a reference to /bin/sh in TLUtils.pm. This wrapper fixes this (if needed) before tlmgr is run. * texlive: update command-not-found with a few common texlive commands. * remove un-needed minimal.list * Format generation working. xelatex activated. Remove all texmf-dist files created by texlive-bin package. * texlive: fix installation and removal of texlive-{bin,base}. All essential fixes done. Only thing remaining to fix is figuring out how to deal with the transition texlive -> texlive-{bin,base}. * texlive: use Breaks instead of Conflicts * texlive: properly fix split into two packages [WIP] * delete old termux-install-tl.sh * texlive: Fix so that the upgrade from texlive 20170524-2 goes smoothly and works as it should (with Breaks and Replaces). Also major clean up of texlive/build.sh. * texlive: minor clean up of texlive/build.sh. Update patches to avoid (silent) complaints from patching. Add previously forgotten install-tl.list with list of files to take from install-tl-unx.tar.gz. * texlive: make texlive-bin-dev properly replace texlive-dev. Everything is done now, just need to wait for breaks and subpkg_replaces before opening a pull request. * texlive: skip format generation on install, rm old files in texlive-bin as well. Also decrease verbosity of installation * texlive: when deleting old files, leave texmf-dist alone * texlive: fix typo, correctly remove files from old texlive version
2017-08-09 23:09:01 +02:00
TL_ROOT=$TERMUX_PREFIX/share/texlive
TL_BINDIR=$TERMUX_PREFIX/bin
Properly package texlive and split package into texlive & texlive-bin (#1203) * texlive: enable makeindex and put man files and headers in proper location. * texlive: upgrade to 2017 * texlive: split into texlive-bin and arch independent texlive-base. Download texmf-dist and other tarballs and package necessary files instead of using tlnet installer on device. * texlive-base: extract only a minimal set of files from texmf-dist, do complete uninstall on removal. Patch some files. The texmf-dist tar is quite large so use --checkpoint to indicate progress. * texlive: use gnupg2 instead of gnupg * texlive: fix texlive profile * texlive: added TL_BINDIR variable to simplify build scripts * texlive: replace tlmgr symlink with small wrapper. After `tlmgr update --self` has been run, the shebang of tlmgr.pl is none-working and there is a reference to /bin/sh in TLUtils.pm. This wrapper fixes this (if needed) before tlmgr is run. * texlive: update command-not-found with a few common texlive commands. * remove un-needed minimal.list * Format generation working. xelatex activated. Remove all texmf-dist files created by texlive-bin package. * texlive: fix installation and removal of texlive-{bin,base}. All essential fixes done. Only thing remaining to fix is figuring out how to deal with the transition texlive -> texlive-{bin,base}. * texlive: use Breaks instead of Conflicts * texlive: properly fix split into two packages [WIP] * delete old termux-install-tl.sh * texlive: Fix so that the upgrade from texlive 20170524-2 goes smoothly and works as it should (with Breaks and Replaces). Also major clean up of texlive/build.sh. * texlive: minor clean up of texlive/build.sh. Update patches to avoid (silent) complaints from patching. Add previously forgotten install-tl.list with list of files to take from install-tl-unx.tar.gz. * texlive: make texlive-bin-dev properly replace texlive-dev. Everything is done now, just need to wait for breaks and subpkg_replaces before opening a pull request. * texlive: skip format generation on install, rm old files in texlive-bin as well. Also decrease verbosity of installation * texlive: when deleting old files, leave texmf-dist alone * texlive: fix typo, correctly remove files from old texlive version
2017-08-09 23:09:01 +02:00
TERMUX_PKG_EXTRA_CONFIGURE_ARGS="
RANLIB=ranlib
2018-10-05 21:54:09 +02:00
--mandir=$TERMUX_PREFIX/share/man
--infodir=$TERMUX_PREFIX/share/info
--datarootdir=$TL_ROOT
--build=$TERMUX_BUILD_TUPLE
--enable-ttfdump=no
--enable-makeindexk=yes
--enable-makejvf=no
--enable-mendexk=no
--enable-musixtnt=no
--enable-ps2pk=no
--enable-seetexk=no
--enable-gregorio=no
--disable-native-texlive-build
--disable-bibtexu
--disable-dvisvgm
--disable-dialog
--disable-psutils
--disable-multiplatform
--disable-t1utils
--enable-luatex
--disable-luajittex
--disable-mflua
--disable-mfluajit
--disable-xz
--disable-pmx
--without-texinfo
--without-xdvipdfmx
--without-texi2html
--with-system-cairo
--with-system-graphite2
--with-system-harfbuzz
--with-system-gd
--with-system-gmp
--with-system-icu
--with-system-mpfr
--with-system-poppler
--with-system-zlib
--with-system-xpdf
--with-system-lua
--with-system-teckit
--without-x
Properly package texlive and split package into texlive & texlive-bin (#1203) * texlive: enable makeindex and put man files and headers in proper location. * texlive: upgrade to 2017 * texlive: split into texlive-bin and arch independent texlive-base. Download texmf-dist and other tarballs and package necessary files instead of using tlnet installer on device. * texlive-base: extract only a minimal set of files from texmf-dist, do complete uninstall on removal. Patch some files. The texmf-dist tar is quite large so use --checkpoint to indicate progress. * texlive: use gnupg2 instead of gnupg * texlive: fix texlive profile * texlive: added TL_BINDIR variable to simplify build scripts * texlive: replace tlmgr symlink with small wrapper. After `tlmgr update --self` has been run, the shebang of tlmgr.pl is none-working and there is a reference to /bin/sh in TLUtils.pm. This wrapper fixes this (if needed) before tlmgr is run. * texlive: update command-not-found with a few common texlive commands. * remove un-needed minimal.list * Format generation working. xelatex activated. Remove all texmf-dist files created by texlive-bin package. * texlive: fix installation and removal of texlive-{bin,base}. All essential fixes done. Only thing remaining to fix is figuring out how to deal with the transition texlive -> texlive-{bin,base}. * texlive: use Breaks instead of Conflicts * texlive: properly fix split into two packages [WIP] * delete old termux-install-tl.sh * texlive: Fix so that the upgrade from texlive 20170524-2 goes smoothly and works as it should (with Breaks and Replaces). Also major clean up of texlive/build.sh. * texlive: minor clean up of texlive/build.sh. Update patches to avoid (silent) complaints from patching. Add previously forgotten install-tl.list with list of files to take from install-tl-unx.tar.gz. * texlive: make texlive-bin-dev properly replace texlive-dev. Everything is done now, just need to wait for breaks and subpkg_replaces before opening a pull request. * texlive: skip format generation on install, rm old files in texlive-bin as well. Also decrease verbosity of installation * texlive: when deleting old files, leave texmf-dist alone * texlive: fix typo, correctly remove files from old texlive version
2017-08-09 23:09:01 +02:00
--with-banner-add=/Termux"
# These files are provided by texlive:
TERMUX_PKG_RM_AFTER_INSTALL="
bin/tlmgr
bin/man
share/texlive/texmf-dist/web2c/mktex.opt
share/texlive/texmf-dist/web2c/mktexdir.opt
share/texlive/texmf-dist/web2c/mktexnam.opt
share/texlive/texmf-dist/web2c/fmtutil.cnf
share/texlive/texmf-dist/web2c/mktexdir
share/texlive/texmf-dist/web2c/mktexnam
share/texlive/texmf-dist/web2c/mktexupd
share/texlive/texmf-dist/web2c/texmf.cnf
share/texlive/texmf-dist/fonts
share/texlive/texmf-dist/doc
share/texlive/texmf-dist/dvips
share/texlive/texmf-dist/dvipdfmx
share/texlive/texmf-dist/texconfig
share/texlive/texmf-dist/bibtex
share/texlive/texmf-dist/scripts
share/texlive/texmf-dist/ttf2pk
share/texlive/texmf-dist/source
share/texlive/texmf-dist/chktex
share/texlive/texmf-dist/hbf2gf"
Properly package texlive and split package into texlive & texlive-bin (#1203) * texlive: enable makeindex and put man files and headers in proper location. * texlive: upgrade to 2017 * texlive: split into texlive-bin and arch independent texlive-base. Download texmf-dist and other tarballs and package necessary files instead of using tlnet installer on device. * texlive-base: extract only a minimal set of files from texmf-dist, do complete uninstall on removal. Patch some files. The texmf-dist tar is quite large so use --checkpoint to indicate progress. * texlive: use gnupg2 instead of gnupg * texlive: fix texlive profile * texlive: added TL_BINDIR variable to simplify build scripts * texlive: replace tlmgr symlink with small wrapper. After `tlmgr update --self` has been run, the shebang of tlmgr.pl is none-working and there is a reference to /bin/sh in TLUtils.pm. This wrapper fixes this (if needed) before tlmgr is run. * texlive: update command-not-found with a few common texlive commands. * remove un-needed minimal.list * Format generation working. xelatex activated. Remove all texmf-dist files created by texlive-bin package. * texlive: fix installation and removal of texlive-{bin,base}. All essential fixes done. Only thing remaining to fix is figuring out how to deal with the transition texlive -> texlive-{bin,base}. * texlive: use Breaks instead of Conflicts * texlive: properly fix split into two packages [WIP] * delete old termux-install-tl.sh * texlive: Fix so that the upgrade from texlive 20170524-2 goes smoothly and works as it should (with Breaks and Replaces). Also major clean up of texlive/build.sh. * texlive: minor clean up of texlive/build.sh. Update patches to avoid (silent) complaints from patching. Add previously forgotten install-tl.list with list of files to take from install-tl-unx.tar.gz. * texlive: make texlive-bin-dev properly replace texlive-dev. Everything is done now, just need to wait for breaks and subpkg_replaces before opening a pull request. * texlive: skip format generation on install, rm old files in texlive-bin as well. Also decrease verbosity of installation * texlive: when deleting old files, leave texmf-dist alone * texlive: fix typo, correctly remove files from old texlive version
2017-08-09 23:09:01 +02:00
termux_step_host_build() {
mkdir -p auxdir/auxsub
mkdir -p texk/kpathsea
mkdir -p texk/web2c
cd $TERMUX_PKG_HOSTBUILD_DIR/auxdir/auxsub
$TERMUX_PKG_SRCDIR/auxdir/auxsub/configure
make
cd $TERMUX_PKG_HOSTBUILD_DIR/texk/kpathsea
$TERMUX_PKG_SRCDIR/texk/kpathsea/configure
cd $TERMUX_PKG_HOSTBUILD_DIR/texk/web2c
$TERMUX_PKG_SRCDIR/texk/web2c/configure --without-x
make tangle
make ctangle
make tie
make otangle
}
Properly package texlive and split package into texlive & texlive-bin (#1203) * texlive: enable makeindex and put man files and headers in proper location. * texlive: upgrade to 2017 * texlive: split into texlive-bin and arch independent texlive-base. Download texmf-dist and other tarballs and package necessary files instead of using tlnet installer on device. * texlive-base: extract only a minimal set of files from texmf-dist, do complete uninstall on removal. Patch some files. The texmf-dist tar is quite large so use --checkpoint to indicate progress. * texlive: use gnupg2 instead of gnupg * texlive: fix texlive profile * texlive: added TL_BINDIR variable to simplify build scripts * texlive: replace tlmgr symlink with small wrapper. After `tlmgr update --self` has been run, the shebang of tlmgr.pl is none-working and there is a reference to /bin/sh in TLUtils.pm. This wrapper fixes this (if needed) before tlmgr is run. * texlive: update command-not-found with a few common texlive commands. * remove un-needed minimal.list * Format generation working. xelatex activated. Remove all texmf-dist files created by texlive-bin package. * texlive: fix installation and removal of texlive-{bin,base}. All essential fixes done. Only thing remaining to fix is figuring out how to deal with the transition texlive -> texlive-{bin,base}. * texlive: use Breaks instead of Conflicts * texlive: properly fix split into two packages [WIP] * delete old termux-install-tl.sh * texlive: Fix so that the upgrade from texlive 20170524-2 goes smoothly and works as it should (with Breaks and Replaces). Also major clean up of texlive/build.sh. * texlive: minor clean up of texlive/build.sh. Update patches to avoid (silent) complaints from patching. Add previously forgotten install-tl.list with list of files to take from install-tl-unx.tar.gz. * texlive: make texlive-bin-dev properly replace texlive-dev. Everything is done now, just need to wait for breaks and subpkg_replaces before opening a pull request. * texlive: skip format generation on install, rm old files in texlive-bin as well. Also decrease verbosity of installation * texlive: when deleting old files, leave texmf-dist alone * texlive: fix typo, correctly remove files from old texlive version
2017-08-09 23:09:01 +02:00
termux_step_pre_configure() {
# When building against libicu 59.1 or later we need c++11:
CXXFLAGS+=" -std=c++11"
export TANGLE=$TERMUX_PKG_HOSTBUILD_DIR/texk/web2c/tangle
export TANGLEBOOT=$TERMUX_PKG_HOSTBUILD_DIR/texk/web2c/tangleboot
export CTANGLE=$TERMUX_PKG_HOSTBUILD_DIR/texk/web2c/ctangle
export CTANGLEBOOT=$TERMUX_PKG_HOSTBUILD_DIR/texk/web2c/ctangleboot
export TIE=$TERMUX_PKG_HOSTBUILD_DIR/texk/web2c/tie
export OTANGLE=$TERMUX_PKG_HOSTBUILD_DIR/texk/web2c/.libs/otangle
# otangle is linked against libkpathsea but can't find it, so we use LD_LIBRARY_PATH
export LD_LIBRARY_PATH=$TERMUX_PKG_HOSTBUILD_DIR/texk/kpathsea/.libs
find "$TERMUX_PKG_SRCDIR"/texk/web2c/luatexdir -type f -exec sed -i \
-e 's|gTrue|true|g' \
-e 's|gFalse|false|g' \
-e 's|GBool|bool|g' \
-e 's|getCString|c_str|g' \
-e 's|Guint|unsigned int|g' \
-e 's|Guchar|unsigned char|g' \
{} +
# These files are from upstream master:
2020-01-12 14:34:06 +01:00
cp "$TERMUX_PKG_BUILDER_DIR"/pdftoepdf-poppler0.83.0.cc "$TERMUX_PKG_SRCDIR"/texk/web2c/pdftexdir/pdftoepdf.cc # commit f0d0598b
cp "$TERMUX_PKG_BUILDER_DIR"/pdftosrc-poppler0.83.0.cc "$TERMUX_PKG_SRCDIR"/texk/web2c/pdftexdir/pdftosrc.cc # commit f0d0598b
Properly package texlive and split package into texlive & texlive-bin (#1203) * texlive: enable makeindex and put man files and headers in proper location. * texlive: upgrade to 2017 * texlive: split into texlive-bin and arch independent texlive-base. Download texmf-dist and other tarballs and package necessary files instead of using tlnet installer on device. * texlive-base: extract only a minimal set of files from texmf-dist, do complete uninstall on removal. Patch some files. The texmf-dist tar is quite large so use --checkpoint to indicate progress. * texlive: use gnupg2 instead of gnupg * texlive: fix texlive profile * texlive: added TL_BINDIR variable to simplify build scripts * texlive: replace tlmgr symlink with small wrapper. After `tlmgr update --self` has been run, the shebang of tlmgr.pl is none-working and there is a reference to /bin/sh in TLUtils.pm. This wrapper fixes this (if needed) before tlmgr is run. * texlive: update command-not-found with a few common texlive commands. * remove un-needed minimal.list * Format generation working. xelatex activated. Remove all texmf-dist files created by texlive-bin package. * texlive: fix installation and removal of texlive-{bin,base}. All essential fixes done. Only thing remaining to fix is figuring out how to deal with the transition texlive -> texlive-{bin,base}. * texlive: use Breaks instead of Conflicts * texlive: properly fix split into two packages [WIP] * delete old termux-install-tl.sh * texlive: Fix so that the upgrade from texlive 20170524-2 goes smoothly and works as it should (with Breaks and Replaces). Also major clean up of texlive/build.sh. * texlive: minor clean up of texlive/build.sh. Update patches to avoid (silent) complaints from patching. Add previously forgotten install-tl.list with list of files to take from install-tl-unx.tar.gz. * texlive: make texlive-bin-dev properly replace texlive-dev. Everything is done now, just need to wait for breaks and subpkg_replaces before opening a pull request. * texlive: skip format generation on install, rm old files in texlive-bin as well. Also decrease verbosity of installation * texlive: when deleting old files, leave texmf-dist alone * texlive: fix typo, correctly remove files from old texlive version
2017-08-09 23:09:01 +02:00
}