# Copyright 1999-2008 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: /var/cvsroot/gentoo-x86/app-text/ptex/ptex-3.1.10_p20071214.ebuild,v 1.2 2008/02/14 16:05:47 matsuu Exp $ TETEX_PV=3.0_p1 inherit eutils tetex-3 flag-o-matic autotools multilib SMALL_PV="${TETEX_PV/_p*}" TETEX_TEXMF_PV="${SMALL_PV}" TETEX_S="${WORKDIR}/tetex-src-${SMALL_PV}" DESCRIPTION="TeX distribution teTeX with Japanese patch collection 'ptetex3'" HOMEPAGE="http://www.nn.iij4u.or.jp/~tutimura/tex/ptetex.html" #TETEX_SRC="tetex-src-${TETEX_PV}.tar.gz" TETEX_SRC="tetex-src-${SMALL_PV}.tar.gz" TETEX_TEXMF="tetex-texmf-${TETEX_TEXMF_PV:-${TETEX_PV}}" TETEX_TEXMF_SRC="tetex-texmf-${TETEX_TEXMF_PV:-${TETEX_PV}}po.tar.gz" PTETEX="ptetex3-${PV/*_p}" PTETEX_CMAP="ptetex-cmap-20051117" SRC_PATH_TETEX="ftp://cam.ctan.org/tex-archive/systems/unix/teTeX/3.0/distrib" SRC_URI="${SRC_PATH_TETEX}/${TETEX_SRC} ${SRC_PATH_TETEX}/${TETEX_TEXMF_SRC} http://tutimura.ath.cx/~nob/tex/ptetex/ptetex3/${PTETEX}.tar.gz http://tutimura.ath.cx/~nob/tex/ptetex/ptetex-cmap/${PTETEX_CMAP}.tar.gz mirror://gentoo/${PN}-3.1.10_p20071122-dviljk-security-fixes.patch.bz2" # mirror://gentoo/tetex-${TETEX_PV}-gentoo.tar.gz KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86" BUILD_DIR="${WORKDIR}/build/usr" LICENSE="GPL-2 BSD" IUSE="X motif Xaw3d neXt iconv unicode" DEPEND="!app-text/tetex !=media-libs/freetype-2.3.4 || ( media-fonts/ja-ipafonts media-fonts/ipamonafont media-fonts/vlgothic media-fonts/sazanami media-fonts/kochi-substitute ) )" S="${WORKDIR}/${PTETEX}" # Sorry this provides tetex again... PROVIDE="virtual/tetex" src_unpack() { #tetex-3_src_unpack mkdir -p "${WORKDIR}/${TETEX_TEXMF}" cd "${WORKDIR}/${TETEX_TEXMF}" unpack ${TETEX_TEXMF_SRC} cd "${WORKDIR}" unpack ${TETEX_SRC} cd "${WORKDIR}" unpack ${PN}-3.1.10_p20071122-dviljk-security-fixes.patch.bz2 unpack ${PTETEX}.tar.gz unpack ${PTETEX_CMAP}.tar.gz echo ">>> Unpacking jis and morisawa fonts ..." tar xzf "${WORKDIR}"/${PTETEX}/archive/jis.tar.gz -C "${WORKDIR}" || die tar xzf "${WORKDIR}"/${PTETEX}/archive/morisawa.tar.gz -C "${WORKDIR}" || die # Gentoo box reserves variable ${P}!! cd "${S}" epatch "${FILESDIR}"/${PN}-3.1.10_p20071203-gentoo.patch cat < "${S}"/my_option SRC_DIR="${WORKDIR}" TMP_PREFIX="${BUILD_DIR}" PREFIX=/usr DATADIR=/usr/share TEXMFDIST="${WORKDIR}/${TETEX_TEXMF}" TEXSRC_EXTRACTED="${WORKDIR}" #make_option vartexfonts=/var/lib/texmf make_option vartexfonts="${T}/texfonts" make_option CC="$(tc-getCC)" make_option CXX="$(tc-getCXX)" JAPANESE=international XDVI=echo PXDVI=echo PLATEX209=no conf_option --without-dviljk conf_option --without-dvipng conf_option --without-info conf_option --without-texi2html conf_option --without-texinfo conf_option --with-system-zlib conf_option --with-system-pnglib conf_option --with-system-gd conf_option --with-system-ncurses conf_option --with-system-t1lib conf_option --enable-shared EOF if use iconv ; then echo "conf_option --enable-kanji-iconv" >> "${S}"/my_option fi if use unicode ; then echo "KANJI_CODE=UTF8" >> "${S}"/my_option else echo "KANJI_CODE=EUC" >> "${S}"/my_option fi # copied from tetex-3.eclass and modified if use X ; then if use motif ; then append-ldflags $(motif-config --libs) export CPPFLAGS="${CPPFLAGS} $(motif-config --cflags)" toolkit="motif" elif use neXt ; then toolkit="neXtaw" elif use Xaw3d ; then toolkit="xaw3d" else toolkit="xaw" fi append-ldflags $(freetype-config --libs) echo "export CPPFLAGS=\"${CPPFLAGS} $(freetype-config --cflags)\"" >> "${S}"/my_option echo "conf_option --with-xdvi-x-toolkit=${toolkit}" >> "${S}"/my_option else echo "conf_option --without-x" >> "${S}"/my_option echo "conf_option --without-xdvik" >> "${S}"/my_option echo "conf_option --without-pxdvik" >> "${S}"/my_option fi cd "${S}" unset TEXMFMAIN TEXMF HOME emake -j1 x || die "emake x failed" cd "${TETEX_S}" epatch "${FILESDIR}/tetex-${SMALL_PV}-kpathsea-pic.patch" # bug 85404 epatch "${FILESDIR}/${PN}-3.1.10_p20071122-epstopdf-wrong-rotation.patch" # ptetex included #epatch "${FILESDIR}/tetex-${TETEX_PV}-amd64-xdvik-wp.patch" epatch "${FILESDIR}/tetex-${TETEX_PV}-mptest.patch" #bug 98029 # no need #epatch "${FILESDIR}/${PN}-3.1.10_p20071122-fmtutil-etex.patch" #bug 115775 # ptex included #epatch "${FILESDIR}/tetex-${TETEX_PV}-xpdf-vulnerabilities.patch" # bug 94860 epatch "${FILESDIR}/${PN}-3.1.10_p20071122-pdftosrc-install.patch" # bug 126918 epatch "${FILESDIR}/tetex-${TETEX_PV}-create-empty-files.patch" # bug 94901 epatch "${FILESDIR}/tetex-${TETEX_PV}-dvipdfm-timezone.patch" # security bug #170861 # ptetex included # epatch "${FILESDIR}/tetex-${TETEX_PV}-CVE-2007-0650.patch" # security bug #188172 # ptetex included #epatch "${FILESDIR}/tetex-${TETEX_PV}-xpdf-CVE-2007-3387.patch" # security bug #198238 epatch "${FILESDIR}/tetex-${TETEX_PV}-dvips_bufferoverflow.patch" # securty bug #196735 epatch "${FILESDIR}/xpdf-3.02pl2.patch" # Construct a Gentoo site texmf directory # that overlays the upstream supplied # target not found #epatch "${FILESDIR}/tetex-${TETEX_PV}-texmf-site.patch" # security bug #198238 epatch "${WORKDIR}/${PN}-3.1.10_p20071122-dviljk-security-fixes.patch" # security bug #198238 and bug #193437 epatch "${FILESDIR}/tetex-${TETEX_PV}-t1lib-SA26241_buffer_overflow.patch" cd "${TETEX_S}/texk/dviljk" eautoreconf } src_compile() { unset TEXMFMAIN TEXMF HOME emake -j1 c || die "emake c failed" emake -j1 macro || die "emake macro failed" emake -j1 otf || die "emake otf failed" emake -j1 fonty || die "emake fonty failed" emake -j1 babel || die "emake babel failed" einfo "Setting ptetex-cmap ..." cd "${WORKDIR}/${PTETEX_CMAP}" PATH="${BUILD_DIR}/bin:$PATH" ./setup.sh "${BUILD_DIR}"/share/texmf/fonts/cmap } src_test() { emake -j1 test || die "emake test failed" } src_install() { #tetex-3_src_install einfo "Installing ptetex3 binaries ..." dobin "${BUILD_DIR}"/bin/* dolib "${BUILD_DIR}"/lib/* einfo "Installing /usr/include/* files ..." insinto /usr/include doins -r "${BUILD_DIR}"/include/* einfo "Installing /usr/share/* files ..." insinto /usr/share #doins -r "${BUILD_DIR}"/share/* cp -dr "${BUILD_DIR}"/share/* "${D}"/usr/share einfo "Installing document files ..." doman "${BUILD_DIR}"/man/*/* doinfo "${BUILD_DIR}"/info/* einfo "Installing jis and morisawa fonts ..." insinto /usr/share/texmf/fonts/tfm doins -r "${WORKDIR}"/jis/tfm/* || die "installing jis/tfm failed" doins -r "${WORKDIR}"/morisawa/tfm/* || die "installing morisawa/tfm failed" einfo "Installing texmf files ..." find "${WORKDIR}"/${TETEX_TEXMF} -maxdepth 1 -mindepth 1 -type f | xargs rm -f insinto /usr/share/texmf doins -r "${WORKDIR}"/${TETEX_TEXMF}/* einfo "Installing other files ..." insinto /usr/share/texmf/fonts/map/dvips/tetex doins "${WORKDIR}"/${TETEX_S}/texk/pdvipsk/psfonts_jp.map #insinto /var/lib/texmf/web2c insinto /usr/share/texmf/web2c doins -r "${BUILD_DIR}"/share/texmf-config/web2c/* doins -r "${BUILD_DIR}"/share/texmf-var/web2c/*.fmt einfo "Removing unnecessary files ..." rm -r "${D}"/usr/share/texmf/doc #rm -r "${D}"/usr/share/texmf-config #rm -r "${D}"/usr/share/texmf-var rm -r "${D}"/usr/share/texmf/web2c/texmf.cnf.* rm -r "${D}"/usr/share/texmf/web2c/fmtutil.cnf.* rm -r "${D}"/usr/info/dir find "${D}"/usr/share/texmf | grep "ls-R" | xargs rm -f einfo "Installing texmf-update scripte ..." dosbin "${FILESDIR}"/texmf-update #einfo "Making ls-R files ..." #TEXMF="${D}"/usr/share/texmf "${D}"/usr/bin/mktexlsr || die } pkg_postinst() { tetex-3_pkg_postinst elog elog "Japanese dvips and xdvi have been renamed to pdvipsk and pxdvik." #elog "You also need to emerge app-text/dvipdfmx to convert dvi into PDF." elog }