diff --git a/build/gnupg/build.sh b/build/gnupg/build.sh index 7fe67ef3c..69aba673c 100755 --- a/build/gnupg/build.sh +++ b/build/gnupg/build.sh @@ -136,6 +136,7 @@ PATH+=":$DEPROOT$PREFIX/bin" download_source $PROG $PROG $VER patch_source +run_autoreconf -fi build install_execattr run_testsuite check diff --git a/build/gnupg/local.mog b/build/gnupg/local.mog index 0162dd3df..1f019096a 100644 --- a/build/gnupg/local.mog +++ b/build/gnupg/local.mog @@ -22,7 +22,6 @@ license ../pinentry-$(PINENTRY)/COPYING license=GPLv2 dir group=bin mode=0755 owner=root path=etc/$(PREFIX) drop> - drop> # gpg needs the proc_lock_memory privilege in order to be able to lock a # memory segment. If it can't do that, it utters diff --git a/build/gnupg/patches/gcc14.patch b/build/gnupg/patches/gcc14.patch index 1d95e1fa6..47a0abed1 100644 --- a/build/gnupg/patches/gcc14.patch +++ b/build/gnupg/patches/gcc14.patch @@ -1,13 +1,13 @@ -diff -wpruN --no-dereference '--exclude=*.orig' a~/configure a/configure ---- a~/configure 1970-01-01 00:00:00 -+++ a/configure 1970-01-01 00:00:00 -@@ -14096,7 +14096,8 @@ rm -f core conftest.err conftest.$ac_obj - else - cat confdefs.h - <<_ACEOF >conftest.$ac_ext - /* end confdefs.h. */ --main () { -+#include -+int main () { +diff -wpruN --no-dereference '--exclude=*.orig' a~/acinclude.m4 a/acinclude.m4 +--- a~/acinclude.m4 1970-01-01 00:00:00 ++++ a/acinclude.m4 1970-01-01 00:00:00 +@@ -84,7 +84,8 @@ AC_DEFUN([GNUPG_CHECK_ENDIAN], + not big endian + #endif]])], gnupg_cv_c_endian=big, gnupg_cv_c_endian=little)]) + if test "$gnupg_cv_c_endian" = unknown; then +- AC_RUN_IFELSE([AC_LANG_SOURCE([[main () { ++ AC_RUN_IFELSE([AC_LANG_SOURCE([[#include ++ int main (void) { /* Are we little or big endian? From Harbison&Steele. */ union { diff --git a/build/gnupg/patches/no-html-doc.patch b/build/gnupg/patches/no-html-doc.patch new file mode 100644 index 000000000..73255483c --- /dev/null +++ b/build/gnupg/patches/no-html-doc.patch @@ -0,0 +1,30 @@ +diff -wpruN --no-dereference '--exclude=*.orig' a~/doc/Makefile.am a/doc/Makefile.am +--- a~/doc/Makefile.am 1970-01-01 00:00:00 ++++ a/doc/Makefile.am 1970-01-01 00:00:00 +@@ -95,7 +95,7 @@ myhtmlman_pages = \ + gpg-wks-server.1.html \ + dirmngr-client.1.html gpg-card.1.html gpg-check-pattern.1.html + +-man_MANS = $(myman_pages) gnupg.7 gnupg.7.html ++man_MANS = $(myman_pages) gnupg.7 + + watchgnupg_SOURCE = gnupg.texi + +@@ -103,7 +103,7 @@ watchgnupg_SOURCE = gnupg.texi + CLEANFILES = yat2m mkdefsinc defs.inc + + DISTCLEANFILES = gnupg.tmp gnupg.ops yat2m-stamp.tmp yat2m-stamp \ +- $(myman_pages) gnupg.7 gnupg.7.html $(myhtmlman_pages) ++ $(myman_pages) gnupg.7 + + yat2m: yat2m.c + $(CC_FOR_BUILD) -o $@ $(srcdir)/yat2m.c +@@ -152,7 +152,7 @@ yat2m-stamp: $(myman_sources) defs.inc + + yat2m-stamp: $(YAT2M) + +-$(myman_pages) $(myhtmlman_pages) gnupg.7 gnupg.7.html : yat2m-stamp defs.inc ++$(myman_pages) gnupg.7 : yat2m-stamp defs.inc + @if test -f $@; then :; else \ + trap 'rm -rf yat2m-stamp yat2m-lock' 1 2 13 15; \ + if mkdir yat2m-lock 2>/dev/null; then \ diff --git a/build/gnupg/patches/series b/build/gnupg/patches/series index f2b23e61d..bad30a44a 100644 --- a/build/gnupg/patches/series +++ b/build/gnupg/patches/series @@ -1,2 +1,3 @@ thread_cputime.patch +no-html-doc.patch gcc14.patch diff --git a/build/icu4c/build.sh b/build/icu4c/build.sh index 101e55e9a..99a8aaa2d 100755 --- a/build/icu4c/build.sh +++ b/build/icu4c/build.sh @@ -33,7 +33,7 @@ CONFIGURE_OPTS[amd64]+=" --sbindir=$PREFIX/sbin " -CXXFLAGS[aarch64]+=" -mtls-dialect=trad" +CXXFLAGS[aarch64]+=" -mno-outline-atomics -mtls-dialect=trad" pre_configure() { typeset arch=$1 diff --git a/build/pango/build.sh b/build/pango/build.sh index 45bba8ff8..d5f1b8e19 100755 --- a/build/pango/build.sh +++ b/build/pango/build.sh @@ -17,7 +17,7 @@ . ../../lib/build.sh PROG=pango -VER=1.51.0 +VER=1.55.5 PKG=ooce/library/pango SUMMARY="pango" DESC="Pango is a library for laying out and rendering of text" @@ -25,8 +25,10 @@ DESC="Pango is a library for laying out and rendering of text" forgo_isaexec # Dependencies -HARFBUZZVER=8.2.1 -FRIBIDIVER=1.0.13 +HARFBUZZVER=10.1.0 +FRIBIDIVER=1.0.16 + +export CC_FOR_BUILD=/opt/gcc-$DEFAULT_GCC_VER/bin/gcc # The icu4c ABI changes frequently. Lock the version # pulled into each build of harfbuzz. @@ -50,13 +52,27 @@ XFORM_ARGS=" -DFRIBIDI=$FRIBIDIVER " +save_variable PKG_CONFIG_PATH + pre_configure() { typeset arch=$1 + _dd=$DESTDIR + cross_arch $arch && _dd+=.$arch + CPPFLAGS+=" -I$_dd$PREFIX/include/fribidi -I$_dd$PREFIX/include/harfbuzz" + LDFLAGS[$arch]+=" -L$_dd$PREFIX/${LIBDIRS[$arch]}" LDFLAGS[$arch]+=" -L${SYSROOT[$arch]}$PREFIX/${LIBDIRS[$arch]}" LDFLAGS[$arch]+=" -R$PREFIX/${LIBDIRS[$arch]}" [ $arch = i386 ] && LDFLAGS[$arch]+=" -lssp_ns" + restore_variable PKG_CONFIG_PATH + + _pkgconfpath=${PKG_CONFIG_PATH[$arch]} + PKG_CONFIG_PATH[$arch]="$_dd$PREFIX/${LIBDIRS[$arch]}/pkgconfig" + PKG_CONFIG_PATH[$arch]+=":$_pkgconfpath" + subsume_arch $arch PKG_CONFIG_PATH + export PKG_CONFIG_PATH + export MAKE } @@ -66,50 +82,36 @@ post_configure() { done } -# we'd have to check whether the gcc version is lower or equal to 11 -# however `set_crossgcc` does not set GCCVER so we cannot check -post_build() { - [ "$1" = aarch64 ] && EXPECTED_BUILD_ERRS=0 || EXPECTED_BUILD_ERRS=2 -} - init -prep_build +prep_build meson ###################################################################### -# false positive due to the BUFFER_VERIFY_ERROR macro showing up in the build log -# since there will be one error in the log after the 32-bit build but two -# after the 64-bit build we disable error checking for harfbuzz but enable -# it afterwards and set the expected error count to 2 -SKIP_BUILD_ERRCHK=1 - -EXPECTED_OPTIONS="CAIRO CAIRO_FT FREETYPE GLIB" -build_dependency -merge -noctf harfbuzz harfbuzz-$HARFBUZZVER \ - harfbuzz harfbuzz $HARFBUZZVER +save_buildenv -export CPPFLAGS+=" -I$DEPROOT/$PREFIX/include/harfbuzz" +CONFIGURE_OPTS="--prefix=$PREFIX" +CONFIGURE_OPTS[aarch64]=" + --cross-file $SRCDIR/files/aarch64-gcc.txt +" -SKIP_BUILD_ERRCHK= +build_dependency -meson -multi -merge -noctf fribidi fribidi-$FRIBIDIVER \ + fribidi fribidi $FRIBIDIVER ###################################################################### -EXPECTED_OPTIONS="" -build_dependency -merge -noctf fribidi fribidi-$FRIBIDIVER \ - fribidi fribidi $FRIBIDIVER -export CPPFLAGS+=" -I$DEPROOT/$PREFIX/include/fribidi" +CXXFLAGS[aarch64]+=" -mno-outline-atomics" -###################################################################### +build_dependency -meson -multi -merge -noctf harfbuzz harfbuzz-$HARFBUZZVER \ + harfbuzz harfbuzz $HARFBUZZVER -for arch in $ARCH_LIST; do - LDFLAGS[$arch]+=" -L$DEPROOT/$PREFIX/${LIBDIRS[$arch]}" - addpath PKG_CONFIG_PATH[$arch] $DEPROOT/$PREFIX/${LIBDIRS[$arch]}/pkgconfig -done +restore_buildenv + +###################################################################### CONFIGURE_OPTS=" --prefix=$PREFIX -Db_asneeded=false - -Dgtk_doc=false - -Dinstall-tests=false + -Ddocumentation=false -Dintrospection=disabled " CONFIGURE_OPTS[i386]=" --libdir=$PREFIX/${LIBDIRS[i386]} " @@ -155,9 +157,9 @@ fixup() { note -n "-- Building $PROG" +set_builddir $PROG-$VER download_source $PROG $PROG $VER patch_source -prep_build meson -keep build fixup make_package diff --git a/build/pango/files/ctf.skip b/build/pango/files/ctf.skip index dfc49d8b6..0c1450dc0 100644 --- a/build/pango/files/ctf.skip +++ b/build/pango/files/ctf.skip @@ -1,2 +1,3 @@ hb- fribidi +harfbuzz diff --git a/build/znc/build.sh b/build/znc/build.sh index d6d00585b..025624cc3 100755 --- a/build/znc/build.sh +++ b/build/znc/build.sh @@ -72,6 +72,10 @@ pre_configure() { typeset arch=$1 LDFLAGS[$arch]+=" -Wl,-R$OPREFIX/${LIBDIRS[$arch]}" + + ! cross_arch $arch && return + + LDFLAGS[$arch]+=" -L${SYSROOT[$arch]}$OPREFIX/${LIBDIRS[$arch]}" } post_install() { diff --git a/doc/packages.md b/doc/packages.md index 153da1d64..26a83b1a1 100644 --- a/doc/packages.md +++ b/doc/packages.md @@ -138,7 +138,7 @@ | ooce/library/libzip | 1.11.1 | https://libzip.org/download/ | [omniosorg](https://github.com/omniosorg) | ooce/library/nettle | 3.10 | https://ftp.gnu.org/gnu/nettle/ https://www.lysator.liu.se/~nisse/nettle/ | [omniosorg](https://github.com/omniosorg) | ooce/library/onig | 6.9.9 | https://github.com/kkos/oniguruma/releases/ | [omniosorg](https://github.com/omniosorg) -| ooce/library/pango | 1.51.0 | https://download.gnome.org/sources/pango/cache.json https://ftp.gnome.org/pub/GNOME/sources/pango/ | [omniosorg](https://github.com/omniosorg) +| ooce/library/pango | 1.55.5 | https://download.gnome.org/sources/pango/cache.json https://ftp.gnome.org/pub/GNOME/sources/pango/ | [omniosorg](https://github.com/omniosorg) | ooce/library/pixman | 0.43.4 | https://www.cairographics.org/releases/ http://www.pixman.org/ | [omniosorg](https://github.com/omniosorg) | ooce/library/popt | 1.19 | https://github.com/rpm-software-management/popt/releases | [omniosorg](https://github.com/omniosorg) | ooce/library/security/libsasl2 | 2.1.28 | https://github.com/cyrusimap/cyrus-sasl/releases | [omniosorg](https://github.com/omniosorg) diff --git a/lib/functions.sh b/lib/functions.sh index c6385169a..afeb0dea9 100644 --- a/lib/functions.sh +++ b/lib/functions.sh @@ -2947,7 +2947,7 @@ build_dependency() { -ctf) buildargs+=" -ctf" ;; -noctf) buildargs+=" -noctf" ;; -oot) oot=1 ;; - -meson) meson=1 ; oot=1 ;; + -meson) meson=1; oot=1 ;; -cmake) cmake=1; oot=1 ;; -multi) buildargs+=" -multi" ;; esac