diff --git a/mingw-w64-gtk-doc/0001-exeext.patch b/mingw-w64-gtk-doc/0001-exeext.patch new file mode 100644 index 0000000000..263eedc652 --- /dev/null +++ b/mingw-w64-gtk-doc/0001-exeext.patch @@ -0,0 +1,16 @@ +--- gtk-doc-1.33.0/gtkdoc/meson.build.orig 2020-10-01 21:19:36.163794500 +0200 ++++ gtk-doc-1.33.0/gtkdoc/meson.build 2020-10-02 11:04:43.478778000 +0200 +@@ -9,7 +9,12 @@ + config_py.set('XSLTPROC', xsltproc_prg_path) + + config_py.set('VERSION', version) +-config_py.set('EXEEXT', '') ++ ++if host_machine.system() == 'windows' ++ config_py.set('EXEEXT', '.exe') ++else ++ config_py.set('EXEEXT', '') ++endif + + configure_file( + input: 'config_data.py.in', diff --git a/mingw-w64-gtk-doc/PKGBUILD b/mingw-w64-gtk-doc/PKGBUILD index 9e796f45fe..1af7f8c20b 100644 --- a/mingw-w64-gtk-doc/PKGBUILD +++ b/mingw-w64-gtk-doc/PKGBUILD @@ -3,8 +3,8 @@ _realname=gtk-doc pkgbase=mingw-w64-${_realname} pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}") -pkgver=1.32 -pkgrel=1 +pkgver=1.33.0 +pkgrel=2 pkgdesc="Documentation tool for public library API (mingw-w64)" arch=('any') url="https://www.gtk.org/gtk-doc/" @@ -16,54 +16,63 @@ depends=("${MINGW_PACKAGE_PREFIX}-docbook-xsl" "${MINGW_PACKAGE_PREFIX}-python3" "${MINGW_PACKAGE_PREFIX}-python3-pygments") makedepends=("${MINGW_PACKAGE_PREFIX}-python3-setuptools" - "${MINGW_PACKAGE_PREFIX}-itstool") + "${MINGW_PACKAGE_PREFIX}-itstool" + "${MINGW_PACKAGE_PREFIX}-meson") url="https://www.gtk.org/gtk-doc/" -source=(https://download.gnome.org/sources/${_realname}/${pkgver}/${_realname}-${pkgver}.tar.xz +source=(https://download.gnome.org/sources/${_realname}/${pkgver%.*}/${_realname}-${pkgver}.tar.xz + 0001-exeext.patch pyscript2exe.py) -sha256sums=('de0ef034fb17cb21ab0c635ec730d19746bce52984a6706e7bbec6fb5e0b907c' +sha256sums=('d5e3b3f837174d246fa8482455740627efec1e5210aa15d0c7989ca68f72bb51' + 'e30928ae5f89b9a8f5a8757ea772749f25c3a445b3d7e441faa318540b6526c9' '00e03a8b9d45e620c6fabbf96f5ccb41d1e49cc9b35ccb846d423f235ad5bec6') prepare() { cd "${srcdir}/${_realname}-${pkgver}" + + patch -p1 -i "${srcdir}"/0001-exeext.patch } build() { - export MSYS2_ARG_CONV_EXCL="-//OASIS" - mkdir -p "${srcdir}/build-${MINGW_CHOST}" cd "${srcdir}/build-${MINGW_CHOST}" - export PYTHON=${MINGW_PREFIX}/bin/python3 - ../${_realname}-${pkgver}/configure \ - --prefix=${MINGW_PREFIX} \ - --build=${MINGW_CHOST} \ - --host=${MINGW_CHOST} \ - --enable-shared \ - --enable-static \ - --with-xml-catalog=${MINGW_PREFIX}/etc/xml/catalog + meson \ + --default-library shared \ + --buildtype plain \ + -Dyelp_manual=false \ + -Dtests=false \ + ../${_realname}-${pkgver} - make - - for name in check fixxref mkdb mkhtml mkman mkpdf rebase scan scangobj ; do - sed -s "s|'${MINGW_PREFIX}|sys.prefix + '|g" -i "gtkdoc-${name}" - done - - echo -e "import sys\n$(cat gtkdoc/config.py)" > gtkdoc/config.py - - sed -s "s|'${MINGW_PREFIX}|sys.prefix + '|g" -i "gtkdoc/config.py" + meson compile } package() { install=${_realname}-${CARCH}.install + cd "${srcdir}/build-${MINGW_CHOST}" - make DESTDIR="$pkgdir" install + DESTDIR=${pkgdir}${MINGW_PREFIX} meson install + + for pcfile in "${pkgdir}${MINGW_PREFIX}"/share/pkgconfig/*.pc; do + sed -s "s|$(cygpath -m ${MINGW_PREFIX})|${MINGW_PREFIX}|g" -i "${pcfile}" + done + + # Make relocatable (hacky... :/) + for name in check fixxref mkdb mkhtml mkman mkpdf rebase scan scangobj depscan mkhtml2; do + sed -s "s|'$(cygpath -m ${MINGW_PREFIX})|sys.prefix + '|g" -i "${pkgdir}${MINGW_PREFIX}/bin/gtkdoc-${name}" + done - local _PRE_WIN="$(cygpath -m ${MINGW_PREFIX})" for name in check fixxref mkdb mkhtml mkman mkpdf rebase scan scangobj depscan mkhtml2; do ${MINGW_PREFIX}/bin/python3 \ "${srcdir}/pyscript2exe.py" "${pkgdir}${MINGW_PREFIX}/bin/gtkdoc-${name}" - sed -e "s|${_PRE_WIN}|${MINGW_PREFIX}|g" \ + sed -e "s|$(cygpath -m ${MINGW_PREFIX})|${MINGW_PREFIX}|g" \ -i "${pkgdir}${MINGW_PREFIX}/bin/gtkdoc-${name}-script.py" done + + sed -e "s|$(cygpath -m ${MINGW_PREFIX})|${MINGW_PREFIX}|g" \ + -i "${pkgdir}${MINGW_PREFIX}/bin/gtkdocize" + + local _config_data="${pkgdir}${MINGW_PREFIX}/share/gtk-doc/python/gtkdoc/config_data.py" + echo -e "import sys\n$(cat "${_config_data}")" > "${_config_data}" + sed -s "s|'$(cygpath -m ${MINGW_PREFIX})|sys.prefix + '|g" -i "${_config_data}" }