From 3e45c6253c8d072bc94fabbd0334add88327eba8 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 16 Nov 2024 20:18:31 +0800 Subject: [PATCH 001/722] groups: add optenv32 --- groups/optenv32 | 223 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 223 insertions(+) create mode 100644 groups/optenv32 diff --git a/groups/optenv32 b/groups/optenv32 new file mode 100644 index 00000000000..f6cbc893860 --- /dev/null +++ b/groups/optenv32 @@ -0,0 +1,223 @@ +linux+api+32 +libxcrypt+32 +mpc+32 +mpfr+32 +gmp+32 +zlib+32 +binutils+32 +gcc+32 +devel-base+32 +glibc+32 +libidn+32 +bzip2+32 +ncurses+32 +readline+32 +a52dec+32 +expat+32 +xz+32 +python-2+32 +elfutils+32 +db+32 +fftw+32 +game-music-emu+32 +gdbm+32 +libdvdcss+32 +libdvdread+32 +libdvdnav+32 +libmms+32 +libmodplug+32 +popt+32 +libdv+32 +libtool+32 +sbc+32 +srtp+32 +libraw1394+32 +libiec61883+32 +libcddb+32 +libcdio+32 +libsidplay+32 +icu+32 +libnl+32 +nasm+32 +perl+32 +perl-xml-parser+32 +tbb+32 +recode+32 +enca+32 +vulkan-headers+32 +volk-meta-loader+32 +vulkan-tools+32 +vulkan-loader+32 +vulkan+32 +soxr+32 +xvidcore+32 +libssh+32 +libbluray+32 +ffmpeg+32 +gst-libav-1-0+32 +libass+32 +gsm+32 +wxgtk-3+32 +wxgtk+32 +util-macros+32 +tk+32 +tcl+32 +sdl-ttf+32 +s2tc+32 +portaudio+32 +pkg-config+32 +p11-kit+32 +sqlite+32 +nss+32 +nspr+32 +libva-vdpau-driver+32 +libva-intel-driver+32 +libva+32 +libtasn1+32 +libpcap+32 +libcroco+32 +libaio+32 +gtk-2+32 +opencore-amr+32 +x264+32 +libmad+32 +lame+32 +gst-plugins-ugly-1-0+32 +twolame+32 +wavpack+32 +v4l-utils+32 +taglib+32 +libvpx+32 +libshout+32 +libid3tag+32 +imlib2+32 +libcaca+32 +libavc1394+32 +gst-plugins-good-1-0+32 +gstreamer-0-10+32 +gst-plugins-base-0-10+32 +schroedinger+32 +libmpeg2+32 +libexif+32 +x265+32 +wildmidi+32 +soundtouch+32 +rtmpdump+32 +opus+32 +lcms2+32 +openjpeg-legacy+32 +neon+32 +mpg123+32 +sdl+32 +mjpegtools+32 +libwebp+32 +libofa+32 +libdca+32 +gstreamer-1-0+32 +orc+32 +libvisual+32 +libtheora+32 +gst-plugins-base-1-0+32 +gst-plugins-bad-1-0+32 +glu+32 +glew+32 +giflib+32 +gdk-pixbuf+32 +gconf+32 +freeglut+32 +openal-soft+32 +freealut+32 +faad2+32 +mp4v2+32 +faac+32 +dbus-glib+32 +libssh2+32 +curl+32 +libusb+32 +nettle+32 +gnutls+32 +openssl+32 +openldap+32 +krb5+32 +cups+32 +libglvnd+32 +libvdpau+32 +eudev+32 +libffi+32 +llvm+32 +mesa+32 +cg+32 +celt+32 +cdparanoia+32 +libepoxy+32 +libxkbcommon+32 +fribidi+32 +pango+32 +gtk-3+32 +librsvg+32 +poppler+32 +libtiff+32 +libjpeg-turbo+32 +libpng+32 +ghostscript+32 +libspectre+32 +pixman+32 +libdrm+32 +cairo+32 +at-spi2-core+32 +at-spi2-atk+32 +atk+32 +speex+32 +json-c+32 +libvorbis+32 +libogg+32 +flac+32 +libsndfile+32 +libcap+32 +dbus+32 +libasyncns+32 +pulseaudio+32 +alsa-plugins+32 +alsa-lib+32 +attr+32 +acl+32 +libgpg-error+32 +libgcrypt+32 +libxslt+32 +libxdmcp+32 +x11-proto+32 +libxau+32 +xcb-proto+32 +libxcb+32 +util-linux+32 +libxml2+32 +libpng-1.6+32 +freetype+32 +fontconfig+32 +x11-lib+32 +aalib+32 +32subsystem +pcre+32 +glib+32 +harfbuzz+32 +wayland+32 +libmikmod+32 +smpeg+32 +sdl-sound+32 +libxnvctrl+32 +nvidia+32 +allegro+32 +boost+32 +fluidsynth+32 +glslang+32 +nlohmann-json+32 +mangohud+32 +openssl-1.1+32 +libusb-compat+32 +libjpeg+legacy+32 +mbedtls+32 +vkd3d+32 +nvidia+390+32 +virtualgl+32 +proxychains-ng+32 +sdl-net+32 \ No newline at end of file From 9c5fce19c5db3869579cd2707390b86346e21f33 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 16 Nov 2024 20:53:38 +0800 Subject: [PATCH 002/722] linux+api+32: improve PKGDES optenv32 => 32-bit x86 runtime --- runtime-optenv32/linux+api+32/autobuild/defines | 2 +- runtime-optenv32/linux+api+32/spec | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/runtime-optenv32/linux+api+32/autobuild/defines b/runtime-optenv32/linux+api+32/autobuild/defines index fd82fe5ba23..aa7cef51696 100644 --- a/runtime-optenv32/linux+api+32/autobuild/defines +++ b/runtime-optenv32/linux+api+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=linux+api+32 PKGSEC=devel -PKGDES="Linux API Headers for glibc (optenv32)" +PKGDES="Linux API Headers for glibc (32-bit x86 runtime)" NOLTO=1 ABHOST=optenv32 diff --git a/runtime-optenv32/linux+api+32/spec b/runtime-optenv32/linux+api+32/spec index f262fc9496a..763b2b4fa9e 100644 --- a/runtime-optenv32/linux+api+32/spec +++ b/runtime-optenv32/linux+api+32/spec @@ -1,4 +1,5 @@ VER=6.7.12 +REL=1 # RC= # Use this for RC releases. #SRCS="tbl::https://git.kernel.org/torvalds/t/linux-${VER%%.0}-rc${RC}.tar.gz" From 11d68e033a0f806807718a329cea689ec7b907b7 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 16 Nov 2024 20:54:14 +0800 Subject: [PATCH 003/722] libxcrypt+32: improve PKGDES optenv32 => 32-bit x86 runtime --- runtime-optenv32/libxcrypt+32/autobuild/defines | 2 +- runtime-optenv32/libxcrypt+32/spec | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/runtime-optenv32/libxcrypt+32/autobuild/defines b/runtime-optenv32/libxcrypt+32/autobuild/defines index ca329ac6234..d2456402089 100644 --- a/runtime-optenv32/libxcrypt+32/autobuild/defines +++ b/runtime-optenv32/libxcrypt+32/autobuild/defines @@ -1,7 +1,7 @@ PKGNAME=libxcrypt+32 PKGSEC=libs PKGDEP="glibc+32" -PKGDES="Library for one-way hashing of passwords (optenv32)" +PKGDES="Library for one-way hashing of passwords (32-bit x86 runtime)" BUILDDEP="devel-base+32" ABHOST=optenv32 diff --git a/runtime-optenv32/libxcrypt+32/spec b/runtime-optenv32/libxcrypt+32/spec index 46e3010b467..0ec18d601f6 100644 --- a/runtime-optenv32/libxcrypt+32/spec +++ b/runtime-optenv32/libxcrypt+32/spec @@ -1,4 +1,5 @@ VER=4.4.36 +REL=1 SRCS="tbl::https://github.com/besser82/libxcrypt/releases/download/v$VER/libxcrypt-$VER.tar.xz" CHKSUMS="sha256::e5e1f4caee0a01de2aee26e3138807d6d3ca2b8e67287966d1fefd65e1fd8943" CHKUPDATE="anitya::id=16436" From 0e884d2428c8c37871dadcb63b22291fcd777ae5 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 16 Nov 2024 20:55:27 +0800 Subject: [PATCH 004/722] mpc+32: improve PKGDES optenv32 => 32-bit x86 runtime --- runtime-optenv32/mpc+32/autobuild/defines | 2 +- runtime-optenv32/mpc+32/spec | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/runtime-optenv32/mpc+32/autobuild/defines b/runtime-optenv32/mpc+32/autobuild/defines index 1376e324d29..163a72e95b1 100644 --- a/runtime-optenv32/mpc+32/autobuild/defines +++ b/runtime-optenv32/mpc+32/autobuild/defines @@ -1,7 +1,7 @@ PKGNAME=mpc+32 PKGDEP="gmp+32 mpfr+32" PKGSEC=libs -PKGDES="Library for the arithmetic of complex numbers (optenv32)" +PKGDES="Library for the arithmetic of complex numbers (32-bit x86 runtime)" BUILDDEP="devel-base+32" AB_FLAGS_O3=1 diff --git a/runtime-optenv32/mpc+32/spec b/runtime-optenv32/mpc+32/spec index cadbc22337b..a6aef27e75a 100644 --- a/runtime-optenv32/mpc+32/spec +++ b/runtime-optenv32/mpc+32/spec @@ -1,4 +1,5 @@ VER=1.3.1 +REL=1 SRCS="tbl::https://ftp.gnu.org/gnu/mpc/mpc-$VER.tar.gz" CHKSUMS="sha256::ab642492f5cf882b74aa0cb730cd410a81edcdbec895183ce930e706c1c759b8" CHKUPDATE="anitya::id=1667" From 7f6d29b60e13bd754e8dab6b33c66493a444e4d0 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 16 Nov 2024 20:59:48 +0800 Subject: [PATCH 005/722] mpfr+32: improve PKGDES optenv32 => 32-bit x86 runtime --- runtime-optenv32/mpfr+32/autobuild/defines | 2 +- runtime-optenv32/mpfr+32/spec | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/runtime-optenv32/mpfr+32/autobuild/defines b/runtime-optenv32/mpfr+32/autobuild/defines index fb246fed718..72f53e1d34f 100644 --- a/runtime-optenv32/mpfr+32/autobuild/defines +++ b/runtime-optenv32/mpfr+32/autobuild/defines @@ -1,7 +1,7 @@ PKGNAME=mpfr+32 PKGSEC=libs PKGDEP="gmp+32 glibc+32" -PKGDES="Functions for multiple precision math" +PKGDES="Functions for multiple precision math (32-bit x86 runtime)" BUILDDEP="devel-base+32" # Configuration: diff --git a/runtime-optenv32/mpfr+32/spec b/runtime-optenv32/mpfr+32/spec index f616bf573a3..9d9a5a27110 100644 --- a/runtime-optenv32/mpfr+32/spec +++ b/runtime-optenv32/mpfr+32/spec @@ -1,4 +1,5 @@ VER=4.2.1 +REL=1 SRCS="tbl::https://ftp.gnu.org/gnu/mpfr/mpfr-$VER.tar.xz" CHKSUMS="sha256::277807353a6726978996945af13e52829e3abd7a9a5b7fb2793894e18f1fcbb2" CHKUPDATE="anitya::id=2019" From 95d33e0deaf884fe70692fa86d679c80722151e5 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 16 Nov 2024 21:01:17 +0800 Subject: [PATCH 006/722] gmp+32: improve PKGDES optenv32 => 32-bit x86 runtime --- runtime-optenv32/gmp+32/autobuild/defines | 2 +- runtime-optenv32/gmp+32/spec | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/runtime-optenv32/gmp+32/autobuild/defines b/runtime-optenv32/gmp+32/autobuild/defines index 486ab4ef101..cfb075e2774 100644 --- a/runtime-optenv32/gmp+32/autobuild/defines +++ b/runtime-optenv32/gmp+32/autobuild/defines @@ -2,7 +2,7 @@ PKGNAME=gmp+32 PKGSEC=libs PKGDEP="glibc+32" BUILDDEP="devel-base+32" -PKGDES="GNU Multiprecision library (optenv32)" +PKGDES="GNU Multiprecision library (32-bit x86 runtime)" AUTOTOOLS_AFTER=( "--enable-static" diff --git a/runtime-optenv32/gmp+32/spec b/runtime-optenv32/gmp+32/spec index 6d72017c64a..f98733384d8 100644 --- a/runtime-optenv32/gmp+32/spec +++ b/runtime-optenv32/gmp+32/spec @@ -1,4 +1,5 @@ VER=6.3.0 +REL=1 SRCS="tbl::https://ftp.gnu.org/gnu/gmp/gmp-$VER.tar.xz" CHKSUMS="sha256::a3c2b80201b89e68616f4ad30bc66aee4927c3ce50e33929ca819d5c43538898" CHKUPDATE="anitya::id=1186" From 18f912f5cbd8d57ffe31837d6e123474d228bbd1 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 16 Nov 2024 21:02:17 +0800 Subject: [PATCH 007/722] zlib+32: improve PKGDES optenv32 => 32-bit x86 runtime --- runtime-optenv32/zlib+32/autobuild/defines | 2 +- runtime-optenv32/zlib+32/spec | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/runtime-optenv32/zlib+32/autobuild/defines b/runtime-optenv32/zlib+32/autobuild/defines index 9b29ababfe7..ea7f88ffb24 100644 --- a/runtime-optenv32/zlib+32/autobuild/defines +++ b/runtime-optenv32/zlib+32/autobuild/defines @@ -1,5 +1,5 @@ PKGNAME=zlib+32 -PKGDES="A Massively Spiffy Yet Delicately Unobtrusive Compression Library (optenv32)" +PKGDES="A Massively Spiffy Yet Delicately Unobtrusive Compression Library (32-bit x86 runtime)" PKGSEC=libs PKGDEP="glibc+32" BUILDDEP="devel-base+32" diff --git a/runtime-optenv32/zlib+32/spec b/runtime-optenv32/zlib+32/spec index ce4de8c826c..f919e2d336b 100644 --- a/runtime-optenv32/zlib+32/spec +++ b/runtime-optenv32/zlib+32/spec @@ -1,4 +1,5 @@ VER=1.3.1 +REL=1 SRCS="https://zlib.net/zlib-$VER.tar.xz" CHKSUMS="sha256::38ef96b8dfe510d42707d9c781877914792541133e1870841463bfa73f883e32" CHKUPDATE="anitya::id=5303" From 36314ef5ae288e29afda2814ac8e0a398ec74e9f Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 16 Nov 2024 21:04:38 +0800 Subject: [PATCH 008/722] binutils+32: update to 2.43.1 Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/binutils+32/autobuild/defines | 2 +- runtime-optenv32/binutils+32/spec | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/runtime-optenv32/binutils+32/autobuild/defines b/runtime-optenv32/binutils+32/autobuild/defines index 565c3e74c6b..528a33e3997 100644 --- a/runtime-optenv32/binutils+32/autobuild/defines +++ b/runtime-optenv32/binutils+32/autobuild/defines @@ -1,5 +1,5 @@ PKGNAME=binutils+32 -PKGDES="A set of programs to assemble and manipulate binary and object files (optenv32)" +PKGDES="A set of programs to assemble and manipulate binary and object files (32-bit x86 runtime)" PKGSEC=devel PKGDEP="glibc+32 zlib+32" BUILDDEP="devel-base+32" diff --git a/runtime-optenv32/binutils+32/spec b/runtime-optenv32/binutils+32/spec index fd56f7bcfc0..d7b329c68ff 100644 --- a/runtime-optenv32/binutils+32/spec +++ b/runtime-optenv32/binutils+32/spec @@ -1,4 +1,4 @@ -VER=2.42 +VER=2.43.1 SRCS="tbl::https://ftp.gnu.org/gnu/binutils/binutils-$VER.tar.xz" -CHKSUMS="sha256::f6e4d41fd5fc778b06b7891457b3620da5ecea1006c6a4a41ae998109f85a800" +CHKSUMS="sha256::13f74202a3c4c51118b797a39ea4200d3f6cfbe224da6d1d95bb938480132dfd" CHKUPDATE="anitya::id=7981" From 97a1e785e69544ff9220047aa39d26a464bcde57 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 16 Nov 2024 21:31:10 +0800 Subject: [PATCH 009/722] gcc+32: improve PKGDES optenv32 => 32-bit x86 runtime --- runtime-optenv32/gcc+32/autobuild/defines | 2 +- runtime-optenv32/gcc+32/spec | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/runtime-optenv32/gcc+32/autobuild/defines b/runtime-optenv32/gcc+32/autobuild/defines index 6f9074b0b86..8fe244d25be 100644 --- a/runtime-optenv32/gcc+32/autobuild/defines +++ b/runtime-optenv32/gcc+32/autobuild/defines @@ -1,5 +1,5 @@ PKGNAME=gcc+32 -PKGDES="GNU Compiler Collection (optenv32)" +PKGDES="GNU Compiler Collection (32-bit x86 runtime)" PKGSEC=devel PKGDEP="binutils+32 gmp+32 mpfr+32 mpc+32 zlib+32 glibc+32 linux+api+32 libxcrypt+32" BUILDDEP="devel-base+32" diff --git a/runtime-optenv32/gcc+32/spec b/runtime-optenv32/gcc+32/spec index 1da29121b05..fb8f0accbaf 100644 --- a/runtime-optenv32/gcc+32/spec +++ b/runtime-optenv32/gcc+32/spec @@ -3,6 +3,7 @@ __GMP_VER=6.3.0 __MPC_VER=1.3.1 __MPFR_VER=4.2.1 VER=$__GCC_VER +REL=1 # Note: Use with Git snapshots. # SRCS="tbl::https://repo.aosc.io/aosc-repacks/gcc-$VER.tar.xz" # Note: Use with upstream stable releases. From 9d6e184dd1c2800ebebe180ed645137a0556fe88 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 16 Nov 2024 21:32:25 +0800 Subject: [PATCH 010/722] devel-base+32: improve PKGDES optenv32 => 32-bit x86 runtime --- runtime-optenv32/devel-base+32/autobuild/defines | 2 +- runtime-optenv32/devel-base+32/spec | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/devel-base+32/autobuild/defines b/runtime-optenv32/devel-base+32/autobuild/defines index 3175d4206b1..9bab2d808c5 100644 --- a/runtime-optenv32/devel-base+32/autobuild/defines +++ b/runtime-optenv32/devel-base+32/autobuild/defines @@ -1,5 +1,5 @@ PKGNAME="devel-base+32" -PKGDES="Meta package for AOSC OS optenv32 development support" +PKGDES="Meta package for AOSC OS optenv32 development support (32-bit x86 runtime)" PKGSEC=misc PKGDEP="devel-base gcc+32 binutils+32 linux+api+32 glibc+32" diff --git a/runtime-optenv32/devel-base+32/spec b/runtime-optenv32/devel-base+32/spec index eb6182909f1..d8968178f21 100644 --- a/runtime-optenv32/devel-base+32/spec +++ b/runtime-optenv32/devel-base+32/spec @@ -1,3 +1,3 @@ VER=0 +REL=1 DUMMYSRC=1 -SUBDIR="." From adbb940837a24e3dc054686084ba4e160b1f4c96 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 16 Nov 2024 21:37:57 +0800 Subject: [PATCH 011/722] glibc+32: improve PKGDES optenv32 => 32-bit x86 runtime --- runtime-optenv32/glibc+32/autobuild/defines | 2 +- runtime-optenv32/glibc+32/spec | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/runtime-optenv32/glibc+32/autobuild/defines b/runtime-optenv32/glibc+32/autobuild/defines index 6d02498aa66..2156803d840 100644 --- a/runtime-optenv32/glibc+32/autobuild/defines +++ b/runtime-optenv32/glibc+32/autobuild/defines @@ -2,7 +2,7 @@ PKGNAME=glibc+32 PKGSEC=libs PKGDEP="tzdata" BUILDDEP="devel-base+32" -PKGDES="GNU C Library (optenv32)" +PKGDES="GNU C Library (32-bit x86 runtime)" AUTOTOOLS_STRICT=0 AUTOTOOLS_AFTER=( diff --git a/runtime-optenv32/glibc+32/spec b/runtime-optenv32/glibc+32/spec index a57c194446d..15abf54268d 100644 --- a/runtime-optenv32/glibc+32/spec +++ b/runtime-optenv32/glibc+32/spec @@ -1,4 +1,5 @@ VER=2.38 +REL=1 LOCALEGENVER=20160914 SRCS="tbl::https://ftp.gnu.org/gnu/glibc/glibc-$VER.tar.xz \ https://github.com/AOSC-Dev/locale-gen/archive/refs/tags/v$LOCALEGENVER.tar.gz" From 9e062f2d74234fbee8e4e6ecb3fa3769a18747ad Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 16 Nov 2024 21:53:41 +0800 Subject: [PATCH 012/722] libidn+32: update to 1.41 - Improve PKGDES optenv32 => 32-bit x86 runtime. - Use optenv32 template. - Use devel-base+32 as build dependency. --- runtime-optenv32/libidn+32/autobuild/build | 8 -------- runtime-optenv32/libidn+32/autobuild/defines | 8 +++++--- runtime-optenv32/libidn+32/spec | 5 ++--- 3 files changed, 7 insertions(+), 14 deletions(-) delete mode 100644 runtime-optenv32/libidn+32/autobuild/build diff --git a/runtime-optenv32/libidn+32/autobuild/build b/runtime-optenv32/libidn+32/autobuild/build deleted file mode 100644 index 25631a23ef6..00000000000 --- a/runtime-optenv32/libidn+32/autobuild/build +++ /dev/null @@ -1,8 +0,0 @@ -export PATH=/opt/32/bin:$PATH -./configure --prefix=/opt/32 --disable-static \ - CC=i686-pc-linux-gnu-gcc CXX=i686-pc-linux-gnu-g++ \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/libidn+32/autobuild/defines b/runtime-optenv32/libidn+32/autobuild/defines index ff731466779..163dea5635d 100644 --- a/runtime-optenv32/libidn+32/autobuild/defines +++ b/runtime-optenv32/libidn+32/autobuild/defines @@ -1,6 +1,8 @@ PKGNAME=libidn+32 PKGSEC=libs -PKGDES="Implementation of the Stringprep, Punycode and IDNA specifications (optenv32)" -PKGDEP=glibc+32 +PKGDEP="glibc+32" +BUILDDEP="devel-base+32 gtk-doc" +PKGDES="Implementation of the Stringprep, Punycode and IDNA specifications (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libidn+32/spec b/runtime-optenv32/libidn+32/spec index b4a1fa446ac..b8b9dc2bca5 100644 --- a/runtime-optenv32/libidn+32/spec +++ b/runtime-optenv32/libidn+32/spec @@ -1,5 +1,4 @@ -VER=1.33 +VER=1.41 SRCS="tbl::https://ftp.gnu.org/gnu/libidn/libidn-$VER.tar.gz" -CHKSUMS="sha256::44a7aab635bb721ceef6beecc4d49dfd19478325e1b47f3196f7d2acc4930e19" -REL=2 +CHKSUMS="sha256::884d706364b81abdd17bee9686d8ff2ae7431c5a14651047c68adf8b31fd8945" CHKUPDATE="anitya::id=1639" From 84953b332f428989d56eb0158164dda34486ef9d Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 16 Nov 2024 21:59:00 +0800 Subject: [PATCH 013/722] bzip2+32: improve packaging - Improve PKGDES optenv32 => 32-bit x86 runtime. - Enable hardening. --- runtime-optenv32/bzip2+32/autobuild/defines | 3 +-- runtime-optenv32/bzip2+32/spec | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/runtime-optenv32/bzip2+32/autobuild/defines b/runtime-optenv32/bzip2+32/autobuild/defines index 6330ee27bad..bf766f2b5e1 100644 --- a/runtime-optenv32/bzip2+32/autobuild/defines +++ b/runtime-optenv32/bzip2+32/autobuild/defines @@ -2,7 +2,6 @@ PKGNAME=bzip2+32 PKGSEC=utils PKGDEP="glibc+32" BUILDDEP="devel-base+32" -PKGDES="A freely available, patent free, high-quality data compressor (optenv32)" +PKGDES="A freely available, patent free, high-quality data compressor (32-bit x86 runtime)" ABHOST=optenv32 -AB_FLAGS_SPECS=0 diff --git a/runtime-optenv32/bzip2+32/spec b/runtime-optenv32/bzip2+32/spec index 15f287f460c..df85f47fb47 100644 --- a/runtime-optenv32/bzip2+32/spec +++ b/runtime-optenv32/bzip2+32/spec @@ -1,5 +1,5 @@ VER=1.0.8 -REL=1 +REL=2 SRCS="tbl::https://sourceware.org/pub/bzip2/bzip2-$VER.tar.gz" CHKSUMS="sha256::ab5a03176ee106d3f0fa90e381da478ddae405918153cca248e682cd0c4a2269" CHKUPDATE="anitya::id=237" From cecddf2443bc2a30384347bc4b16752a4b9942f6 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 16 Nov 2024 22:01:17 +0800 Subject: [PATCH 014/722] ncurses+32: improve PKGDES optenv32 => 32-bit x86 runtime --- runtime-optenv32/ncurses+32/autobuild/defines | 2 +- runtime-optenv32/ncurses+32/spec | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/runtime-optenv32/ncurses+32/autobuild/defines b/runtime-optenv32/ncurses+32/autobuild/defines index 19c89c776a9..f2a52b985fc 100644 --- a/runtime-optenv32/ncurses+32/autobuild/defines +++ b/runtime-optenv32/ncurses+32/autobuild/defines @@ -2,7 +2,7 @@ PKGNAME=ncurses+32 PKGSEC=libs PKGDEP="glibc+32" BUILDDEP="devel-base+32" -PKGDES="System V Release 4.0 curses emulation library (optenv32)" +PKGDES="System V Release 4.0 curses emulation library (32-bit x86 runtime)" AUTOTOOLS_AFTER=( "--with-pkg-config-libdir=/opt/32/lib/pkgconfig" diff --git a/runtime-optenv32/ncurses+32/spec b/runtime-optenv32/ncurses+32/spec index a6f3fc92099..96c3288d1c5 100644 --- a/runtime-optenv32/ncurses+32/spec +++ b/runtime-optenv32/ncurses+32/spec @@ -1,4 +1,5 @@ VER=6.4 +REL=1 SRCS="https://ftp.gnu.org/gnu/ncurses/ncurses-${VER}.tar.gz" CHKSUMS="sha256::6931283d9ac87c5073f30b6290c4c75f21632bb4fc3603ac8100812bed248159" CHKUPDATE="anitya::id=2057" From 7696ab56f6c598a49bae61011ccf454578c7330a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 16 Nov 2024 22:04:15 +0800 Subject: [PATCH 015/722] readline+32: improve packaging - Improve PKGDES optenv32 => 32-bit x86 runtime. - Use AUTOTOOLS_AFTER (not AUTOTOOLS_DEF). - Fix a wrong quotation in AUTOTOOLS_AFTER. --- runtime-optenv32/readline+32/autobuild/defines | 6 +++--- runtime-optenv32/readline+32/spec | 1 + 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/runtime-optenv32/readline+32/autobuild/defines b/runtime-optenv32/readline+32/autobuild/defines index 30358fc1fc7..12e1fb50ba4 100644 --- a/runtime-optenv32/readline+32/autobuild/defines +++ b/runtime-optenv32/readline+32/autobuild/defines @@ -2,10 +2,10 @@ PKGNAME=readline+32 PKGSEC=libs PKGDEP="glibc+32 ncurses+32" BUILDDEP="devel-base+32" -PKGDES="GNU readline library (optenv32)" +PKGDES="GNU readline library (32-bit x86 runtime)" -AUTOTOOLS_DEF=( - ”--with-curses“ +AUTOTOOLS_AFTER=( + "--with-curses" "--enable-multibyte" "--enable-shared" ) diff --git a/runtime-optenv32/readline+32/spec b/runtime-optenv32/readline+32/spec index 84e2c6a4b71..98b8ac64091 100644 --- a/runtime-optenv32/readline+32/spec +++ b/runtime-optenv32/readline+32/spec @@ -1,4 +1,5 @@ VER=8.2.1 +REL=1 SRCS="https://ftp.gnu.org/gnu/readline/readline-${VER:0:3}.tar.gz" CHKSUMS="sha256::3feb7171f16a84ee82ca18a36d7b9be109a52c04f492a053331d7d1095007c35" CHKUPDATE="anitya::id=4173" From 8d3dac006a0faec25394ae37ed019b7b852f7bc9 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 16 Nov 2024 22:16:33 +0800 Subject: [PATCH 016/722] a52dec+32: improve packaging - Improve PKGDES optenv32 => 32-bit x86 runtime. - Use optenv32 template. - Use BLFS mirror for source for now since upstream URL is now 404. --- runtime-optenv32/a52dec+32/autobuild/build | 12 ------------ runtime-optenv32/a52dec+32/autobuild/defines | 5 +++-- runtime-optenv32/a52dec+32/spec | 6 ++++-- 3 files changed, 7 insertions(+), 16 deletions(-) delete mode 100644 runtime-optenv32/a52dec+32/autobuild/build diff --git a/runtime-optenv32/a52dec+32/autobuild/build b/runtime-optenv32/a52dec+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/a52dec+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/a52dec+32/autobuild/defines b/runtime-optenv32/a52dec+32/autobuild/defines index 02615bc8d8c..313c9649793 100644 --- a/runtime-optenv32/a52dec+32/autobuild/defines +++ b/runtime-optenv32/a52dec+32/autobuild/defines @@ -1,8 +1,9 @@ PKGNAME=a52dec+32 -PKGDES="A free library for decoding ATSC A/52 streams (optenv32)" PKGSEC=libs PKGDEP="glibc+32" +BUILDDEP="devel-base+32" +PKGDES="A free library for decoding ATSC A/52 streams (32-bit x86 runtime)" AUTOTOOLS_AFTER="--enable-shared" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/a52dec+32/spec b/runtime-optenv32/a52dec+32/spec index a4b14558d3c..17b83a65442 100644 --- a/runtime-optenv32/a52dec+32/spec +++ b/runtime-optenv32/a52dec+32/spec @@ -1,5 +1,7 @@ VER=0.7.4 -SRCS="tbl::http://liba52.sourceforge.net/files/a52dec-$VER.tar.gz" +REL=3 +# FIXME: Upstream URL is now gone https://liba52.sourceforge.net/files/a52dec-0.7.4.tar.gz. +# Use BLFS mirror until we update to 0.8.0. +SRCS="tbl::https://ftp2.osuosl.org/pub/blfs/conglomeration/a52dec/a52dec-$VER.tar.gz" CHKSUMS="sha256::a21d724ab3b3933330194353687df82c475b5dfb997513eef4c25de6c865ec33" -REL=2 CHKUPDATE="anitya::id=13972" From cb1411be6022d37bc5ef8ca7e42aae8d057879ee Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 16 Nov 2024 22:17:53 +0800 Subject: [PATCH 017/722] expat+32: improve PKGDES optenv32 => 32-bit x86 runtime --- runtime-optenv32/expat+32/autobuild/defines | 2 +- runtime-optenv32/expat+32/spec | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/runtime-optenv32/expat+32/autobuild/defines b/runtime-optenv32/expat+32/autobuild/defines index 622e36184a3..ccab9e13e1b 100644 --- a/runtime-optenv32/expat+32/autobuild/defines +++ b/runtime-optenv32/expat+32/autobuild/defines @@ -1,5 +1,5 @@ PKGNAME=expat+32 -PKGDES="A stream oriented C library for parsing XML (optenv32)" +PKGDES="A stream oriented C library for parsing XML (32-bit x86 runtime)" PKGSEC=libs PKGDEP="glibc+32" BUILDDEP="devel-base+32" diff --git a/runtime-optenv32/expat+32/spec b/runtime-optenv32/expat+32/spec index ef289c22218..c1e9d2ab8eb 100644 --- a/runtime-optenv32/expat+32/spec +++ b/runtime-optenv32/expat+32/spec @@ -1,4 +1,5 @@ VER=2.6.2 +REL=1 SRCS="tbl::https://github.com/libexpat/libexpat/releases/download/R_${VER//./_}/expat-$VER.tar.xz" CHKSUMS="sha256::ee14b4c5d8908b1bec37ad937607eab183d4d9806a08adee472c3c3121d27364" CHKUPDATE="anitya::id=770" From 2f4af093eb4803850a35fc702bd34d42b2f6f823 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 16 Nov 2024 22:19:54 +0800 Subject: [PATCH 018/722] xz+32: update to 5.6.3 Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/xz+32/autobuild/defines | 2 +- runtime-optenv32/xz+32/spec | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/runtime-optenv32/xz+32/autobuild/defines b/runtime-optenv32/xz+32/autobuild/defines index 02163bd38fa..78715fc3a94 100644 --- a/runtime-optenv32/xz+32/autobuild/defines +++ b/runtime-optenv32/xz+32/autobuild/defines @@ -1,5 +1,5 @@ PKGNAME=xz+32 -PKGDES="General-purpose data compression software with a high compression ratio (optenv32)" +PKGDES="General-purpose data compression software with a high compression ratio (32-bit x86 runtime)" PKGDEP="glibc+32" BUILDDEP="devel-base+32 po4a" PKGSEC=utils diff --git a/runtime-optenv32/xz+32/spec b/runtime-optenv32/xz+32/spec index 7c07b66f93f..5635de02633 100644 --- a/runtime-optenv32/xz+32/spec +++ b/runtime-optenv32/xz+32/spec @@ -1,4 +1,4 @@ -VER=5.4.1 +VER=5.6.3 SRCS="tbl::https://tukaani.org/xz/xz-$VER.tar.xz" -CHKSUMS="sha256::5d9827aa1875b21c288f78864bb26d2650b436ea8d2cad364e4921eb6266a5a5" +CHKSUMS="sha256::db0590629b6f0fa36e74aea5f9731dc6f8df068ce7b7bafa45301832a5eebc3a" CHKUPDATE="anitya::id=5277" From 3369dcbccc7acc532d624630d915bc167d8b78f9 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 16 Nov 2024 22:20:57 +0800 Subject: [PATCH 019/722] python-2+32: drop, orphaned --- groups/optenv32 | 3 +-- runtime-optenv32/32subsystem/autobuild/defines | 2 +- runtime-optenv32/python-2+32/autobuild/build | 2 -- runtime-optenv32/python-2+32/autobuild/defines | 5 ----- runtime-optenv32/python-2+32/spec | 4 ---- 5 files changed, 2 insertions(+), 14 deletions(-) delete mode 100644 runtime-optenv32/python-2+32/autobuild/build delete mode 100644 runtime-optenv32/python-2+32/autobuild/defines delete mode 100644 runtime-optenv32/python-2+32/spec diff --git a/groups/optenv32 b/groups/optenv32 index f6cbc893860..38859504184 100644 --- a/groups/optenv32 +++ b/groups/optenv32 @@ -15,7 +15,6 @@ readline+32 a52dec+32 expat+32 xz+32 -python-2+32 elfutils+32 db+32 fftw+32 @@ -220,4 +219,4 @@ vkd3d+32 nvidia+390+32 virtualgl+32 proxychains-ng+32 -sdl-net+32 \ No newline at end of file +sdl-net+32 diff --git a/runtime-optenv32/32subsystem/autobuild/defines b/runtime-optenv32/32subsystem/autobuild/defines index 47c4d445a93..2905e4fdc20 100644 --- a/runtime-optenv32/32subsystem/autobuild/defines +++ b/runtime-optenv32/32subsystem/autobuild/defines @@ -21,7 +21,7 @@ libxcb+32 libxdmcp+32 libxkbcommon+32 libxml2+32 libxslt+32 linux+api+32 llvm+32 mjpegtools+32 mp4v2+32 mpc+32 mpfr+32 mpg123+32 nasm+32 ncurses+32 neon+32 nettle+32 nspr+32 \ nss+32 openal-soft+32 opencore-amr+32 openjpeg-legacy+32 openldap+32 openssl+32 opus+32 orc+32 \ p11-kit+32 pango+32 pcre+32 perl+32 perl-xml-parser+32 pixman+32 pkg-config+32 poppler+32 \ -popt+32 portaudio+32 pulseaudio+32 python-2+32 readline+32 rtmpdump+32 s2tc+32 sbc+32 \ +popt+32 portaudio+32 pulseaudio+32 readline+32 rtmpdump+32 s2tc+32 sbc+32 \ schroedinger+32 sdl+32 sdl-ttf+32 soundtouch+32 speex+32 sqlite+32 srtp+32 taglib+32 tbb+32 \ tcl+32 tk+32 twolame+32 util-linux+32 util-macros+32 v4l-utils+32 wavpack+32 wildmidi+32 \ wxgtk+32 wxgtk-3+32 x11-lib+32 x11-proto+32 x264+32 x265+32 xcb-proto+32 xz+32 zlib+32 \ diff --git a/runtime-optenv32/python-2+32/autobuild/build b/runtime-optenv32/python-2+32/autobuild/build deleted file mode 100644 index f2bd0914731..00000000000 --- a/runtime-optenv32/python-2+32/autobuild/build +++ /dev/null @@ -1,2 +0,0 @@ -export PATH=/opt/32/bin:$PATH -mkdir $PKGDIR diff --git a/runtime-optenv32/python-2+32/autobuild/defines b/runtime-optenv32/python-2+32/autobuild/defines deleted file mode 100644 index 14ddeb178f9..00000000000 --- a/runtime-optenv32/python-2+32/autobuild/defines +++ /dev/null @@ -1,5 +0,0 @@ -PKGNAME=python-2+32 -PKGSEC=python -PKGDES="Transitional package for python-2" -NOLTO=1 -ABHOST=noarch diff --git a/runtime-optenv32/python-2+32/spec b/runtime-optenv32/python-2+32/spec deleted file mode 100644 index 6ee694870cf..00000000000 --- a/runtime-optenv32/python-2+32/spec +++ /dev/null @@ -1,4 +0,0 @@ -VER=999 -DUMMYSRC=1 -REL=3 -CHKUPDATE="anitya::id=13255" From 9b83074353b74c6f6aecb252a24974e8ae5f4ad9 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 16 Nov 2024 22:31:46 +0800 Subject: [PATCH 020/722] elfutils: update to 0.191 - Drop old patches. - Use optenv32 template. - Disable debuginfod, libdebuginfod to minimise dependencies. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/elfutils+32/autobuild/build | 9 --- .../elfutils+32/autobuild/defines | 10 ++- ...ed-and-vdsosyms-testcases-work-with-.patch | 64 ------------------- .../autobuild/patches/CVE-2014-0172.patch | 37 ----------- runtime-optenv32/elfutils+32/spec | 9 +-- 5 files changed, 13 insertions(+), 116 deletions(-) delete mode 100644 runtime-optenv32/elfutils+32/autobuild/build delete mode 100644 runtime-optenv32/elfutils+32/autobuild/patches/0001-tests-Make-deleted-and-vdsosyms-testcases-work-with-.patch delete mode 100644 runtime-optenv32/elfutils+32/autobuild/patches/CVE-2014-0172.patch diff --git a/runtime-optenv32/elfutils+32/autobuild/build b/runtime-optenv32/elfutils+32/autobuild/build deleted file mode 100644 index 41b38c02126..00000000000 --- a/runtime-optenv32/elfutils+32/autobuild/build +++ /dev/null @@ -1,9 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -./configure --prefix=/opt/32 --program-prefix="eu-" \ - CC=i686-pc-linux-gnu-gcc \ - LDFLAGS="-L/opt/32/lib" PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/elfutils+32/autobuild/defines b/runtime-optenv32/elfutils+32/autobuild/defines index b6a14e944f5..1c24805130d 100644 --- a/runtime-optenv32/elfutils+32/autobuild/defines +++ b/runtime-optenv32/elfutils+32/autobuild/defines @@ -1,6 +1,12 @@ PKGNAME=elfutils+32 PKGSEC=utils PKGDEP="bzip2+32 zlib+32" -PKGDES="Libraries and utilities to handle ELF object files and DWARF debugging information (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="Libraries and utilities to handle ELF object files and DWARF debugging information (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 + +# Note: Minimise dependency. +AUTOTOOLS_AFTER="--disable-debuginfod \ + --disable-libdebuginfod" diff --git a/runtime-optenv32/elfutils+32/autobuild/patches/0001-tests-Make-deleted-and-vdsosyms-testcases-work-with-.patch b/runtime-optenv32/elfutils+32/autobuild/patches/0001-tests-Make-deleted-and-vdsosyms-testcases-work-with-.patch deleted file mode 100644 index f3b4e26338e..00000000000 --- a/runtime-optenv32/elfutils+32/autobuild/patches/0001-tests-Make-deleted-and-vdsosyms-testcases-work-with-.patch +++ /dev/null @@ -1,64 +0,0 @@ -From 224e6776cfe6fc23a207cd05bf75b1e3548853a0 Mon Sep 17 00:00:00 2001 -From: Mark Wielaard -Date: Thu, 15 Jan 2015 13:39:06 +0100 -Subject: [PATCH] tests: Make deleted and vdsosyms testcases work with - "restricted ptrace". - -Some systems might have "restricted ptrace" that doesn't allow process -inspection of arbitrary processes. Change the deleted testcase to -explicitly allow any other process to inspect it using the PR_SET_PTRACER -prctl set to PR_SET_PTRACER_ANY. Change the vdsosyms testcase to inspect -the process itself which should always be allowed. - -Reported-by: Anatol Pomozov -Signed-off-by: Mark Wielaard ---- - tests/ChangeLog | 5 +++++ - tests/deleted.c | 6 ++++++ - tests/vdsosyms.c | 5 +++-- - 3 files changed, 14 insertions(+), 2 deletions(-) - -diff --git a/tests/deleted.c b/tests/deleted.c -index 32a310b..d071bf7 100644 ---- a/tests/deleted.c -+++ b/tests/deleted.c -@@ -23,6 +23,7 @@ - #include - #include - #include -+#include - - extern void libfunc (void); - -@@ -42,6 +43,11 @@ main (int argc __attribute__ ((unused)), char **argv __attribute__ ((unused))) - assert (!err); - err = close (2); - assert (!err); -+ /* Make sure eu-stack -p works on this process even with -+ "restricted ptrace". */ -+#ifdef PR_SET_PTRACER_ANY -+ prctl(PR_SET_PTRACER, PR_SET_PTRACER_ANY, 0, 0, 0); -+#endif - libfunc (); - abort (); - } -diff --git a/tests/vdsosyms.c b/tests/vdsosyms.c -index c1f8d89..4f12b9a 100644 ---- a/tests/vdsosyms.c -+++ b/tests/vdsosyms.c -@@ -80,8 +80,9 @@ main (int argc __attribute__ ((unused)), char **argv __attribute__ ((unused))) - if (dwfl == NULL) - error (2, 0, "dwfl_begin: %s", dwfl_errmsg (-1)); - -- /* Take our parent as "arbitrary" process to inspect. */ -- pid_t pid = getppid(); -+ /* Take ourself as "arbitrary" process to inspect. This should work -+ even with "restricted ptrace". */ -+ pid_t pid = getpid(); - - int result = dwfl_linux_proc_report (dwfl, pid); - if (result < 0) --- -1.8.3.1 - - diff --git a/runtime-optenv32/elfutils+32/autobuild/patches/CVE-2014-0172.patch b/runtime-optenv32/elfutils+32/autobuild/patches/CVE-2014-0172.patch deleted file mode 100644 index 5f9541d6849..00000000000 --- a/runtime-optenv32/elfutils+32/autobuild/patches/CVE-2014-0172.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 7f1eec317db79627b473c5b149a22a1b20d1f68f Mon Sep 17 00:00:00 2001 -From: Mark Wielaard -Date: Wed, 9 Apr 2014 11:33:23 +0200 -Subject: [PATCH] CVE-2014-0172 Check for overflow before calling malloc to - uncompress data. - -https://bugzilla.redhat.com/show_bug.cgi?id=1085663 - -Reported-by: Florian Weimer -Signed-off-by: Mark Wielaard -diff --git a/libdw/dwarf_begin_elf.c b/libdw/dwarf_begin_elf.c -index 79daeac..34ea373 100644 ---- a/libdw/dwarf_begin_elf.c -+++ b/libdw/dwarf_begin_elf.c -@@ -1,5 +1,5 @@ - /* Create descriptor from ELF descriptor for processing file. -- Copyright (C) 2002-2011 Red Hat, Inc. -+ Copyright (C) 2002-2011, 2014 Red Hat, Inc. - This file is part of elfutils. - Written by Ulrich Drepper , 2002. - -@@ -282,6 +282,12 @@ check_section (Dwarf *result, GElf_Ehdr *ehdr, Elf_Scn *scn, bool inscngrp) - memcpy (&size, data->d_buf + 4, sizeof size); - size = be64toh (size); - -+ /* Check for unsigned overflow so malloc always allocated -+ enough memory for both the Elf_Data header and the -+ uncompressed section data. */ -+ if (unlikely (sizeof (Elf_Data) + size < size)) -+ break; -+ - Elf_Data *zdata = malloc (sizeof (Elf_Data) + size); - if (unlikely (zdata == NULL)) - break; --- -1.9.2 - diff --git a/runtime-optenv32/elfutils+32/spec b/runtime-optenv32/elfutils+32/spec index 769ddbc5b21..6113646a4b8 100644 --- a/runtime-optenv32/elfutils+32/spec +++ b/runtime-optenv32/elfutils+32/spec @@ -1,5 +1,6 @@ -VER=0.166 -SRCS="tbl::https://fedorahosted.org/releases/e/l/elfutils/$VER/elfutils-$VER.tar.bz2" -CHKSUMS="sha256::3c056914c8a438b210be0d790463b960fc79d234c3f05ce707cbff80e94cba30" -REL=2 +VER=0.191 +REL=1 +SRCS="tbl::https://sourceware.org/elfutils/ftp/$VER/elfutils-$VER.tar.bz2" +# checksum: https://sourceware.org/elfutils/ftp/$VER/sha512.sum +CHKSUMS="sha256::df76db71366d1d708365fc7a6c60ca48398f14367eb2b8954efc8897147ad871" CHKUPDATE="anitya::id=5679" From c41f36ff080d0f5c7b731691c8af52d93727186f Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 16 Nov 2024 22:34:05 +0800 Subject: [PATCH 021/722] db+32: improve PKGDES optenv32 => 32-bit x86 runtime --- runtime-optenv32/db+32/autobuild/defines | 2 +- runtime-optenv32/db+32/spec | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/runtime-optenv32/db+32/autobuild/defines b/runtime-optenv32/db+32/autobuild/defines index c01a18dde94..672a00ceb13 100644 --- a/runtime-optenv32/db+32/autobuild/defines +++ b/runtime-optenv32/db+32/autobuild/defines @@ -1,5 +1,5 @@ PKGNAME=db+32 -PKGDES="Berkeley DB embedded database system (optenv32)" +PKGDES="Berkeley DB embedded database system (32-bit x86 runtime)" PKGSEC=database PKGDEP="glibc+32" BUILDDEP="devel-base+32" diff --git a/runtime-optenv32/db+32/spec b/runtime-optenv32/db+32/spec index ff10de21ca7..39e9855ca56 100644 --- a/runtime-optenv32/db+32/spec +++ b/runtime-optenv32/db+32/spec @@ -1,4 +1,5 @@ VER=5.3.28 +REL=1 SRCS="https://download.oracle.com/berkeley-db/db-$VER.tar.gz" CHKSUMS="sha256::e0a992d740709892e81f9d93f06daf305cf73fb81b545afe72478043172c3628" CHKUPDATE="anitya::id=64941" From d2992686698d506a8d45f18723f740db020f34da Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 16 Nov 2024 22:46:51 +0800 Subject: [PATCH 022/722] fftw+32: update to 3.3.10 - Use optenv32 template. - Simplify patch script and rename to prepare. --- runtime-optenv32/fftw+32/autobuild/build | 20 +++++++++----------- runtime-optenv32/fftw+32/autobuild/defines | 5 +++-- runtime-optenv32/fftw+32/autobuild/patch | 11 ----------- runtime-optenv32/fftw+32/autobuild/prepare | 4 ++++ runtime-optenv32/fftw+32/spec | 8 ++++---- 5 files changed, 20 insertions(+), 28 deletions(-) delete mode 100644 runtime-optenv32/fftw+32/autobuild/patch create mode 100644 runtime-optenv32/fftw+32/autobuild/prepare diff --git a/runtime-optenv32/fftw+32/autobuild/build b/runtime-optenv32/fftw+32/autobuild/build index 4a10eff99a7..a3a3f51a556 100644 --- a/runtime-optenv32/fftw+32/autobuild/build +++ b/runtime-optenv32/fftw+32/autobuild/build @@ -1,31 +1,29 @@ abinfo "Setting environment variables ..." -export PATH=/opt/32/bin:$PATH export CFLAGS+=" -O3 -fomit-frame-pointer -malign-double -fstrict-aliasing -ffast-math" -CONFIGURE="./configure F77=i686-aosc-linux-gnu-gfortran --prefix=/opt/32 \ - --host=i686-aosc-linux-gnu --target=i686-aosc-linux-gnu \ - --enable-shared --enable-threads \ - --enable-openmp" +CONFIGURE="./configure \ + --prefix=/opt/32 \ + --enable-shared \ + --enable-threads \ + --enable-openmp" -pushd fftw-3.3.4-double +pushd fftw-${PKGVER}-double abinfo "Building double variant ..." $CONFIGURE --enable-sse2 --enable-avx make make install DESTDIR="$PKGDIR" popd -pushd fftw-3.3.4-long-double +pushd fftw-${PKGVER}-long-double abinfo "Building long double variant ..." $CONFIGURE --enable-long-double -make +make make install DESTDIR="$PKGDIR" popd -pushd fftw-3.3.4-single +pushd fftw-${PKGVER}-single abinfo "Building single variant ..." $CONFIGURE --enable-float --enable-sse --enable-avx make make install DESTDIR="$PKGDIR" popd - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/fftw+32/autobuild/defines b/runtime-optenv32/fftw+32/autobuild/defines index cdabc1f55c6..d5ff88d786d 100644 --- a/runtime-optenv32/fftw+32/autobuild/defines +++ b/runtime-optenv32/fftw+32/autobuild/defines @@ -1,8 +1,9 @@ PKGNAME=fftw+32 PKGSEC=libs PKGDEP="glibc+32" -PKGDES="Library for computing the discrete Fourier transform (DFT) (optenv32)" +PKGDES="Library for computing the discrete Fourier transform (DFT) (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 BUILDDEP="gcc+32" diff --git a/runtime-optenv32/fftw+32/autobuild/patch b/runtime-optenv32/fftw+32/autobuild/patch deleted file mode 100644 index db2ad220a90..00000000000 --- a/runtime-optenv32/fftw+32/autobuild/patch +++ /dev/null @@ -1,11 +0,0 @@ -for i in fftw-$PKGVER-{single,double,long-double} -do -mkdir -p $i -cp -a \ -AUTHORS ChangeLog NEWS api config.guess configure doc kernel missing simd-support tools \ -CONVENTIONS INSTALL README config.h.in configure.ac fftw.pc.in libbench2 mpi support \ -COPYING Makefile.am TODO bootstrap.sh depcomp genfft ltmain.sh rdft tests \ -COPYRIGHT Makefile.in aclocal.m4 compile config.sub dft install-sh m4 reodft threads \ -$i/ -done -chmod a-s $SRCDIR fftw-$PKGVER-{single,double,long-double} diff --git a/runtime-optenv32/fftw+32/autobuild/prepare b/runtime-optenv32/fftw+32/autobuild/prepare new file mode 100644 index 00000000000..9bdb50d03ff --- /dev/null +++ b/runtime-optenv32/fftw+32/autobuild/prepare @@ -0,0 +1,4 @@ +for i in single double long-double; do + abinfo "Making a copy of the source tree for variant: $i ..." + cp -av fftw-$PKGVER fftw-$PKGVER-${i} +done diff --git a/runtime-optenv32/fftw+32/spec b/runtime-optenv32/fftw+32/spec index 4854e31db40..a278e82d352 100644 --- a/runtime-optenv32/fftw+32/spec +++ b/runtime-optenv32/fftw+32/spec @@ -1,5 +1,5 @@ -VER=3.3.4 -SRCS="tbl::http://www.fftw.org/fftw-$VER.tar.gz" -CHKSUMS="sha256::8f0cde90929bc05587c3368d2f15cd0530a60b8a9912a8e2979a72dbe5af0982" -REL=3 +VER=3.3.10 +SRCS="tbl::http://www.fftw.org/fftw-${VER/+/-}.tar.gz" +CHKSUMS="sha256::56c932549852cddcfafdab3820b0200c7742675be92179e59e6215b340e26467" CHKUPDATE="anitya::id=803" +SUBDIR=. From b50c01db1ec0bd10c77f76c74b4961de1d92c829 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 16 Nov 2024 22:50:44 +0800 Subject: [PATCH 023/722] game-music-emu+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/game-music-emu+32/autobuild/build | 9 --------- runtime-optenv32/game-music-emu+32/autobuild/defines | 6 ++++-- runtime-optenv32/game-music-emu+32/spec | 7 +++---- 3 files changed, 7 insertions(+), 15 deletions(-) delete mode 100644 runtime-optenv32/game-music-emu+32/autobuild/build diff --git a/runtime-optenv32/game-music-emu+32/autobuild/build b/runtime-optenv32/game-music-emu+32/autobuild/build deleted file mode 100644 index 256404a7c3d..00000000000 --- a/runtime-optenv32/game-music-emu+32/autobuild/build +++ /dev/null @@ -1,9 +0,0 @@ -export PATH=/opt/32/bin:$PATH -export PKG_CONFIG_PATH=/opt/32/lib/pkg-config - -cmake . -DCMAKE_INSTALL_PREFIX=/opt/32 -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_C_COMPILER=/opt/32/bin/i686-pc-linux-gnu-gcc -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/game-music-emu+32/autobuild/defines b/runtime-optenv32/game-music-emu+32/autobuild/defines index 2b764481937..ec5661458ec 100644 --- a/runtime-optenv32/game-music-emu+32/autobuild/defines +++ b/runtime-optenv32/game-music-emu+32/autobuild/defines @@ -1,6 +1,8 @@ PKGNAME=game-music-emu+32 PKGSEC=libs PKGDEP="glibc+32" -PKGDES="Video game music file emulation/playback library (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="Video game music file emulation/playback library (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/game-music-emu+32/spec b/runtime-optenv32/game-music-emu+32/spec index 8b166be03f3..154ff74b561 100644 --- a/runtime-optenv32/game-music-emu+32/spec +++ b/runtime-optenv32/game-music-emu+32/spec @@ -1,5 +1,4 @@ -VER=0.6.0 -SRCS="tbl::https://sources.archlinux.org/other/game-music-emu/game-music-emu-$VER.tar.xz" -CHKSUMS="sha256::b944849fa478de898a07178e7ce0c6cc25ca02f9126022f6384e461f85f87173" -REL=2 +VER=0.6.3 +SRCS="tbl::https://bitbucket.org/mpyne/game-music-emu/downloads/game-music-emu-$VER.tar.xz" +CHKSUMS="sha256::aba34e53ef0ec6a34b58b84e28bf8cfbccee6585cebca25333604c35db3e051d" CHKUPDATE="anitya::id=866" From 4c4f2f33ff09af96931cd2eb63c437226b0efcb6 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 16 Nov 2024 22:54:22 +0800 Subject: [PATCH 024/722] gdbm+32: update to 1.23 - Use optenv32 template. - Lint scripts in accordance with the Styling Manual. - Drop old patches. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/gdbm+32/autobuild/beyond | 14 ++++---- runtime-optenv32/gdbm+32/autobuild/build | 11 ------- runtime-optenv32/gdbm+32/autobuild/defines | 6 ++-- .../autobuild/patches/zeroheaders.patch | 33 ------------------- runtime-optenv32/gdbm+32/spec | 7 ++-- 5 files changed, 15 insertions(+), 56 deletions(-) delete mode 100644 runtime-optenv32/gdbm+32/autobuild/build delete mode 100644 runtime-optenv32/gdbm+32/autobuild/patches/zeroheaders.patch diff --git a/runtime-optenv32/gdbm+32/autobuild/beyond b/runtime-optenv32/gdbm+32/autobuild/beyond index f0e67055789..29fe4f401fa 100644 --- a/runtime-optenv32/gdbm+32/autobuild/beyond +++ b/runtime-optenv32/gdbm+32/autobuild/beyond @@ -1,6 +1,8 @@ -install -dm755 $PKGDIR/opt/32/include/gdbm -ln -sf ../gdbm.h $PKGDIR/opt/32/include/gdbm/gdbm.h -ln -sf ../ndbm.h $PKGDIR/opt/32/include/gdbm/ndbm.h -ln -sf ../dbm.h $PKGDIR/opt/32/include/gdbm/dbm.h - -rm -rf $PKGDIR/opt/32/share/info/dir +abinfo "Creating compatibility symlinks for gdbm headers ..." +install -dm755 "$PKGDIR"/opt/32/include/gdbm +ln -sv ../gdbm.h \ + "$PKGDIR"/opt/32/include/gdbm/gdbm.h +ln -sv ../ndbm.h \ + "$PKGDIR"/opt/32/include/gdbm/ndbm.h +ln -sv ../dbm.h \ + "$PKGDIR"/opt/32/include/gdbm/dbm.h diff --git a/runtime-optenv32/gdbm+32/autobuild/build b/runtime-optenv32/gdbm+32/autobuild/build deleted file mode 100644 index c59216537ba..00000000000 --- a/runtime-optenv32/gdbm+32/autobuild/build +++ /dev/null @@ -1,11 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -./configure --prefix=/opt/32 --enable-libgdbm-compat \ - LDFLAGS="${LDFLAGS} -L/opt/32/lib" \ - CC=i686-pc-linux-gnu-gcc CXX=i686-pc-linux-gnu-g++ \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig - -make -make install DESTDIR=$PKGDIR - -rm -rf $PKGDIR/opt/32/{bin,share} diff --git a/runtime-optenv32/gdbm+32/autobuild/defines b/runtime-optenv32/gdbm+32/autobuild/defines index 47862e129f1..6bdd6b1c5a0 100644 --- a/runtime-optenv32/gdbm+32/autobuild/defines +++ b/runtime-optenv32/gdbm+32/autobuild/defines @@ -1,6 +1,8 @@ PKGNAME=gdbm+32 -PKGDES="GNU Database Manager library" PKGSEC=libs PKGDEP="glibc+32" +BUILDDEP="devel-base+32" +PKGDES="GNU Database Manager library (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/gdbm+32/autobuild/patches/zeroheaders.patch b/runtime-optenv32/gdbm+32/autobuild/patches/zeroheaders.patch deleted file mode 100644 index a268f6bdfa0..00000000000 --- a/runtime-optenv32/gdbm+32/autobuild/patches/zeroheaders.patch +++ /dev/null @@ -1,33 +0,0 @@ -diff -up gdbm-1.10/src/falloc.c.zeroheaders gdbm-1.10/src/falloc.c ---- gdbm-1.10/src/falloc.c.zeroheaders 2011-11-11 11:59:11.000000000 +0100 -+++ gdbm-1.10/src/falloc.c 2011-11-14 17:34:32.487604027 +0100 -@@ -255,7 +255,7 @@ push_avail_block (GDBM_FILE dbf) - - - /* Split the header block. */ -- temp = (avail_block *) malloc (av_size); -+ temp = (avail_block *) calloc (1, av_size); - if (temp == NULL) _gdbm_fatal (dbf, _("malloc error")); - /* Set the size to be correct AFTER the pop_avail_block. */ - temp->size = dbf->header->avail.size; -diff -up gdbm-1.10/src/gdbmopen.c.zeroheaders gdbm-1.10/src/gdbmopen.c ---- gdbm-1.10/src/gdbmopen.c.zeroheaders 2011-11-11 19:39:42.000000000 +0100 -+++ gdbm-1.10/src/gdbmopen.c 2011-11-14 17:33:24.867608650 +0100 -@@ -264,7 +264,7 @@ gdbm_open (const char *file, int block_s - (dbf->header->block_size - sizeof (hash_bucket)) - / sizeof (bucket_element) + 1; - dbf->header->bucket_size = dbf->header->block_size; -- dbf->bucket = (hash_bucket *) malloc (dbf->header->bucket_size); -+ dbf->bucket = (hash_bucket *) calloc (1, dbf->header->bucket_size); - if (dbf->bucket == NULL) - { - gdbm_close (dbf); -@@ -456,7 +456,7 @@ _gdbm_init_cache(GDBM_FILE dbf, size_t s - for(index = 0; index < size; index++) - { - (dbf->bucket_cache[index]).ca_bucket -- = (hash_bucket *) malloc (dbf->header->bucket_size); -+ = (hash_bucket *) calloc (1, dbf->header->bucket_size); - if ((dbf->bucket_cache[index]).ca_bucket == NULL) - { - gdbm_errno = GDBM_MALLOC_ERROR; diff --git a/runtime-optenv32/gdbm+32/spec b/runtime-optenv32/gdbm+32/spec index 87860ad1775..9218cf1043b 100644 --- a/runtime-optenv32/gdbm+32/spec +++ b/runtime-optenv32/gdbm+32/spec @@ -1,5 +1,4 @@ -VER=1.11 -REL=3 -SRCS="tbl::https://ftp.gnu.org/gnu/gdbm/gdbm-$VER.tar.gz" -CHKSUMS="sha256::8d912f44f05d0b15a4a5d96a76f852e905d051bb88022fcdfd98b43be093e3c3" +VER=1.23 +SRCS="https://ftp.gnu.org/gnu/gdbm/gdbm-$VER.tar.gz" +CHKSUMS="sha256::74b1081d21fff13ae4bd7c16e5d6e504a4c26f7cde1dca0d963a484174bbcacd" CHKUPDATE="anitya::id=882" From c601b32c03d016bed12b2b8a836992897999242e Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 16 Nov 2024 22:56:54 +0800 Subject: [PATCH 025/722] libdvdcss+32: update to 1.4.3 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libdvdcss+32/autobuild/build | 12 ------------ runtime-optenv32/libdvdcss+32/autobuild/defines | 6 ++++-- runtime-optenv32/libdvdcss+32/spec | 4 ++-- 3 files changed, 6 insertions(+), 16 deletions(-) delete mode 100644 runtime-optenv32/libdvdcss+32/autobuild/build diff --git a/runtime-optenv32/libdvdcss+32/autobuild/build b/runtime-optenv32/libdvdcss+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/libdvdcss+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/libdvdcss+32/autobuild/defines b/runtime-optenv32/libdvdcss+32/autobuild/defines index 0622b4b7328..d131da6232a 100644 --- a/runtime-optenv32/libdvdcss+32/autobuild/defines +++ b/runtime-optenv32/libdvdcss+32/autobuild/defines @@ -1,6 +1,8 @@ PKGNAME=libdvdcss+32 PKGSEC=libs PKGDEP="glibc+32" -PKGDES="Portable abstraction library for DVD decryption (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="Portable abstraction library for DVD decryption (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libdvdcss+32/spec b/runtime-optenv32/libdvdcss+32/spec index d915fd9cd68..6a1155d05b7 100644 --- a/runtime-optenv32/libdvdcss+32/spec +++ b/runtime-optenv32/libdvdcss+32/spec @@ -1,4 +1,4 @@ -VER=1.4.2 +VER=1.4.3 SRCS="tbl::https://download.videolan.org/pub/libdvdcss/$VER/libdvdcss-$VER.tar.bz2" -CHKSUMS="sha256::78c2ed77ec9c0d8fbed7bf7d3abc82068b8864be494cfad165821377ff3f2575" +CHKSUMS="sha256::233cc92f5dc01c5d3a96f5b3582be7d5cee5a35a52d3a08158745d3d86070079" CHKUPDATE="anitya::id=5568" From dd99b3cbd4522f1cd20cd49721402974fe107ad9 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 16 Nov 2024 22:58:39 +0800 Subject: [PATCH 026/722] libdvdread+32: update to 6.1.1 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libdvdread+32/autobuild/build | 12 ------------ runtime-optenv32/libdvdread+32/autobuild/defines | 6 ++++-- runtime-optenv32/libdvdread+32/spec | 5 ++--- 3 files changed, 6 insertions(+), 17 deletions(-) delete mode 100644 runtime-optenv32/libdvdread+32/autobuild/build diff --git a/runtime-optenv32/libdvdread+32/autobuild/build b/runtime-optenv32/libdvdread+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/libdvdread+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/libdvdread+32/autobuild/defines b/runtime-optenv32/libdvdread+32/autobuild/defines index 587198e5949..43983b24adf 100644 --- a/runtime-optenv32/libdvdread+32/autobuild/defines +++ b/runtime-optenv32/libdvdread+32/autobuild/defines @@ -1,6 +1,8 @@ PKGNAME=libdvdread+32 PKGSEC=libs PKGDEP="libdvdcss+32" -PKGDES="Provides a simple foundation for reading DVD video disks (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="Provides a simple foundation for reading DVD video disks (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libdvdread+32/spec b/runtime-optenv32/libdvdread+32/spec index 173e3a22389..e8bc9c9a34b 100644 --- a/runtime-optenv32/libdvdread+32/spec +++ b/runtime-optenv32/libdvdread+32/spec @@ -1,5 +1,4 @@ -VER=5.0.3 +VER=6.1.1 SRCS="tbl::https://www.videolan.org/pub/videolan/libdvdread/$VER/libdvdread-$VER.tar.bz2" -CHKSUMS="sha256::321cdf2dbdc83c96572bc583cd27d8c660ddb540ff16672ecb28607d018ed82b" -REL=2 +CHKSUMS="sha256::3e357309a17c5be3731385b9eabda6b7e3fa010f46022a06f104553bf8e21796" CHKUPDATE="anitya::id=5614" From f21250c33fad4c3987cb246898cf44ef7652b10f Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 16 Nov 2024 23:18:30 +0800 Subject: [PATCH 027/722] libdvdnav+32: update to 6.1.1 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libdvdnav+32/autobuild/build | 12 ------------ runtime-optenv32/libdvdnav+32/autobuild/defines | 6 ++++-- runtime-optenv32/libdvdnav+32/spec | 5 ++--- 3 files changed, 6 insertions(+), 17 deletions(-) delete mode 100644 runtime-optenv32/libdvdnav+32/autobuild/build diff --git a/runtime-optenv32/libdvdnav+32/autobuild/build b/runtime-optenv32/libdvdnav+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/libdvdnav+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/libdvdnav+32/autobuild/defines b/runtime-optenv32/libdvdnav+32/autobuild/defines index 2fb4d90eb12..11d54a96e4f 100644 --- a/runtime-optenv32/libdvdnav+32/autobuild/defines +++ b/runtime-optenv32/libdvdnav+32/autobuild/defines @@ -1,6 +1,8 @@ PKGNAME=libdvdnav+32 PKGSEC=libs -PKGDES="Library for xine-dvdnav plugin (optenv32)" PKGDEP="libdvdread+32" +BUILDDEP="devel-base+32" +PKGDES="Library for xine-dvdnav plugin (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libdvdnav+32/spec b/runtime-optenv32/libdvdnav+32/spec index e5d797e4b61..3bb6dcc6c53 100644 --- a/runtime-optenv32/libdvdnav+32/spec +++ b/runtime-optenv32/libdvdnav+32/spec @@ -1,5 +1,4 @@ -VER=5.0.3 +VER=6.1.1 SRCS="tbl::https://download.videolan.org/pub/videolan/libdvdnav/$VER/libdvdnav-$VER.tar.bz2" -CHKSUMS="sha256::5097023e3d2b36944c763f1df707ee06b19dc639b2b68fb30113a5f2cbf60b6d" -REL=2 +CHKSUMS="sha256::c191a7475947d323ff7680cf92c0fb1be8237701885f37656c64d04e98d18d48" CHKUPDATE="anitya::id=5615" From 36f3d30d5fd0fcf56851848d9959b73dc0da05e3 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 16 Nov 2024 23:29:38 +0800 Subject: [PATCH 028/722] libmms+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libmms+32/autobuild/build | 12 ------------ runtime-optenv32/libmms+32/autobuild/defines | 6 ++++-- runtime-optenv32/libmms+32/spec | 2 +- 3 files changed, 5 insertions(+), 15 deletions(-) delete mode 100644 runtime-optenv32/libmms+32/autobuild/build diff --git a/runtime-optenv32/libmms+32/autobuild/build b/runtime-optenv32/libmms+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/libmms+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/libmms+32/autobuild/defines b/runtime-optenv32/libmms+32/autobuild/defines index 3c45da9c32e..2cf53decec1 100644 --- a/runtime-optenv32/libmms+32/autobuild/defines +++ b/runtime-optenv32/libmms+32/autobuild/defines @@ -1,6 +1,8 @@ PKGNAME=libmms+32 PKGSEC=libs PKGDEP="glibc+32" -PKGDES="MMS stream protocol library (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="MMS stream protocol library (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libmms+32/spec b/runtime-optenv32/libmms+32/spec index 16c19fff224..f0fe0c6dde5 100644 --- a/runtime-optenv32/libmms+32/spec +++ b/runtime-optenv32/libmms+32/spec @@ -1,5 +1,5 @@ VER=0.6.4 +REL=3 SRCS="tbl::https://sourceforge.net/projects/libmms/files/libmms/$VER/libmms-$VER.tar.gz" CHKSUMS="sha256::3c05e05aebcbfcc044d9e8c2d4646cd8359be39a3f0ba8ce4e72a9094bee704f" -REL=2 CHKUPDATE="anitya::id=21489" From 91d197dd4eef31e5fd56a862096b103f7b9afc7c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 17 Nov 2024 00:12:25 +0800 Subject: [PATCH 029/722] libmodplug+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libmodplug+32/autobuild/build | 12 ------------ runtime-optenv32/libmodplug+32/autobuild/defines | 6 ++++-- runtime-optenv32/libmodplug+32/spec | 2 +- 3 files changed, 5 insertions(+), 15 deletions(-) delete mode 100644 runtime-optenv32/libmodplug+32/autobuild/build diff --git a/runtime-optenv32/libmodplug+32/autobuild/build b/runtime-optenv32/libmodplug+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/libmodplug+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/libmodplug+32/autobuild/defines b/runtime-optenv32/libmodplug+32/autobuild/defines index 8cfe56211f9..f7ae6b27e91 100644 --- a/runtime-optenv32/libmodplug+32/autobuild/defines +++ b/runtime-optenv32/libmodplug+32/autobuild/defines @@ -1,6 +1,8 @@ PKGNAME=libmodplug+32 -PKGDES="Libraries for mod music based on ModPlug (optenv32)" PKGSEC=libs PKGDEP="glibc+32" +BUILDDEP="devel-base+32" +PKGDES="Libraries for mod music based on ModPlug (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libmodplug+32/spec b/runtime-optenv32/libmodplug+32/spec index e7caea6747b..35974e198c9 100644 --- a/runtime-optenv32/libmodplug+32/spec +++ b/runtime-optenv32/libmodplug+32/spec @@ -1,5 +1,5 @@ VER=0.8.8.5 +REL=3 SRCS="tbl::https://sourceforge.net/projects/modplug-xmms/files/libmodplug/$VER/libmodplug-$VER.tar.gz" CHKSUMS="sha256::77462d12ee99476c8645cb5511363e3906b88b33a6b54362b4dbc0f39aa2daad" -REL=2 CHKUPDATE="anitya::id=5669" From 98a2f62b73860c92b2aea5730fe6800814b9b52e Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 17 Nov 2024 00:15:30 +0800 Subject: [PATCH 030/722] popt+32: update to 1.18 - Use optenv32 template. - Drop old patches. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/popt+32/autobuild/build | 12 -- runtime-optenv32/popt+32/autobuild/defines | 9 +- .../patches/popt-1.16-execfail.patch | 71 ------------ .../autobuild/patches/popt-1.16-help.patch | 107 ------------------ .../patches/popt-1.16-man-page.patch | 66 ----------- .../patches/popt-1.16-pkgconfig.patch | 31 ----- runtime-optenv32/popt+32/spec | 7 +- 7 files changed, 7 insertions(+), 296 deletions(-) delete mode 100644 runtime-optenv32/popt+32/autobuild/build delete mode 100644 runtime-optenv32/popt+32/autobuild/patches/popt-1.16-execfail.patch delete mode 100644 runtime-optenv32/popt+32/autobuild/patches/popt-1.16-help.patch delete mode 100644 runtime-optenv32/popt+32/autobuild/patches/popt-1.16-man-page.patch delete mode 100644 runtime-optenv32/popt+32/autobuild/patches/popt-1.16-pkgconfig.patch diff --git a/runtime-optenv32/popt+32/autobuild/build b/runtime-optenv32/popt+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/popt+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/popt+32/autobuild/defines b/runtime-optenv32/popt+32/autobuild/defines index 6e98017e7d6..3143f961c48 100644 --- a/runtime-optenv32/popt+32/autobuild/defines +++ b/runtime-optenv32/popt+32/autobuild/defines @@ -1,11 +1,10 @@ PKGNAME=popt+32 PKGSEC=utils PKGDEP="glibc+32" -PKGDES="A command line option parser (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="A command line option parser (32-bit x86 runtime)" -NOSTATIC=no AUTOTOLS_AFTER="--enable-static" -ABSHADOW=no -RECONF=0 + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/popt+32/autobuild/patches/popt-1.16-execfail.patch b/runtime-optenv32/popt+32/autobuild/patches/popt-1.16-execfail.patch deleted file mode 100644 index f530faba6ee..00000000000 --- a/runtime-optenv32/popt+32/autobuild/patches/popt-1.16-execfail.patch +++ /dev/null @@ -1,71 +0,0 @@ -Patch by Panu Matilainen for popt <= 1.16 which kludges -poptBadOption() to return something semi-meaningful on exec alias fail: - -- poptBadOption() is totally unaware of exec alias failures, and will return - either the first argument or last option, giving wonderfully misleading error - messages (#697435, #710267). -- Remember execvp() first argument on failure and return that from - poptBadOption() if present to give the user a reasonable clue what exactly - went wrong. - -This patch was proposed to upstream: http://rpm5.org/community/popt-devel/0264.html - ---- popt-1.16/popt.c 2010-01-19 01:39:10.000000000 +0100 -+++ popt-1.16/popt.c.execfail 2013-11-24 15:50:06.000000000 +0100 -@@ -192,6 +192,7 @@ - con->flags = flags; - con->execs = NULL; - con->numExecs = 0; -+ con->execFail = NULL; - con->finalArgvAlloced = argc * 2; - con->finalArgv = calloc( (size_t)con->finalArgvAlloced, sizeof(*con->finalArgv) ); - con->execAbsolute = 1; -@@ -236,6 +237,7 @@ - con->nextLeftover = 0; - con->restLeftover = 0; - con->doExec = NULL; -+ con->execFail = _free(con->execFail); - - if (con->finalArgv != NULL) - for (i = 0; i < con->finalArgvCount; i++) { -@@ -564,6 +566,7 @@ - /*@-nullstate@*/ - rc = execvp(argv[0], (char *const *)argv); - /*@=nullstate@*/ -+ con->execFail = xstrdup(argv[0]); - - exit: - if (argv) { -@@ -1697,11 +1700,19 @@ - const char * poptBadOption(poptContext con, unsigned int flags) - { - struct optionStackEntry * os = NULL; -+ const char *badOpt = NULL; - -- if (con != NULL) -- os = (flags & POPT_BADOPTION_NOALIAS) ? con->optionStack : con->os; -+ if (con != NULL) { -+ /* Stupid hack to return something semi-meaningful from exec failure */ -+ if (con->execFail) { -+ badOpt = con->execFail; -+ } else { -+ os = (flags & POPT_BADOPTION_NOALIAS) ? con->optionStack : con->os; -+ badOpt = os->argv[os->next - 1]; -+ } -+ } - -- return (os != NULL && os->argv != NULL ? os->argv[os->next - 1] : NULL); -+ return badOpt; - } - - const char * poptStrerror(const int error) ---- popt-1.16/poptint.h 2010-01-19 01:39:10.000000000 +0100 -+++ popt-1.16/poptint.h.execfail 2013-11-24 15:50:38.000000000 +0100 -@@ -132,6 +132,7 @@ - /*@owned@*/ /*@null@*/ - poptItem execs; - int numExecs; -+ char * execFail; - /*@only@*/ /*@null@*/ - poptArgv finalArgv; - int finalArgvCount; diff --git a/runtime-optenv32/popt+32/autobuild/patches/popt-1.16-help.patch b/runtime-optenv32/popt+32/autobuild/patches/popt-1.16-help.patch deleted file mode 100644 index 85fd5ce4b0e..00000000000 --- a/runtime-optenv32/popt+32/autobuild/patches/popt-1.16-help.patch +++ /dev/null @@ -1,107 +0,0 @@ -Patch initially by Miloslav Trmač and revised by Akira Tagoh - for popt <= 1.16 which fixes the problem that help messages -for --help and --usage seem not translatable. There already was some i18n support -for autohelp in popt.c, but not in popthelp.c, where it actually matters. - -See https://bugzilla.redhat.com/show_bug.cgi?id=734434 for further details, please. - -This patch was proposed to upstream: http://rpm5.org/community/popt-devel/0287.html - ---- popt-1.16/popthelp.c 2009-08-28 09:06:33.000000000 +0900 -+++ popt-1.16/popthelp.c.help 2014-01-08 12:04:00.888260244 +0900 -@@ -89,7 +89,7 @@ static struct poptOption poptHelpOptions - { "defaults", '\0', POPT_ARG_NONE, &show_option_defaults, 0, - N_("Display option defaults in message"), NULL }, - #endif -- { "", '\0', 0, NULL, 0, N_("Terminate options"), NULL }, -+ { NULL, '\0', 0, NULL, 0, N_("Terminate options"), NULL }, - POPT_TABLEEND - } ; - -@@ -527,8 +527,11 @@ static size_t maxArgWidth(const struct p - if (opt != NULL) - while (opt->longName || opt->shortName || opt->arg) { - if (poptArgType(opt) == POPT_ARG_INCLUDE_TABLE) { -- if (opt->arg) /* XXX program error */ -- len = maxArgWidth(opt->arg, translation_domain); -+ void * arg = opt->arg; -+ /* XXX sick hack to preserve pretense of ABI. */ -+ if (arg == poptHelpOptions) arg = poptHelpOptionsI18N; -+ if (arg) /* XXX program error */ -+ len = maxArgWidth(arg, translation_domain); - if (len > max) max = len; - } else if (!F_ISSET(opt, DOC_HIDDEN)) { - len = sizeof(" ")-1; -@@ -619,19 +622,22 @@ static void singleTableHelp(poptContext - - if (table != NULL) - for (opt = table; opt->longName || opt->shortName || opt->arg; opt++) { -+ void * arg = opt->arg; - if (poptArgType(opt) != POPT_ARG_INCLUDE_TABLE) - continue; -- sub_transdom = getTableTranslationDomain(opt->arg); -+ /* XXX sick hack to preserve pretense of ABI. */ -+ if (arg == poptHelpOptions) arg = poptHelpOptionsI18N; -+ sub_transdom = getTableTranslationDomain(arg); - if (sub_transdom == NULL) - sub_transdom = translation_domain; - - /* If no popt aliases/execs, skip poptAliasOption processing. */ -- if (opt->arg == poptAliasOptions && !(con->numAliases || con->numExecs)) -+ if (arg == poptAliasOptions && !(con->numAliases || con->numExecs)) - continue; - if (opt->descrip) - xx = POPT_fprintf(fp, "\n%s\n", D_(sub_transdom, opt->descrip)); - -- singleTableHelp(con, fp, opt->arg, columns, sub_transdom); -+ singleTableHelp(con, fp, arg, columns, sub_transdom); - } - } - -@@ -808,22 +814,25 @@ static size_t singleTableUsage(poptConte - translation_domain = (const char *)opt->arg; - } else - if (poptArgType(opt) == POPT_ARG_INCLUDE_TABLE) { -+ void * arg = opt->arg; -+ /* XXX sick hack to preserve pretense of ABI. */ -+ if (arg == poptHelpOptions) arg = poptHelpOptionsI18N; - if (done) { - int i = 0; - if (done->opts != NULL) - for (i = 0; i < done->nopts; i++) { - const void * that = done->opts[i]; -- if (that == NULL || that != opt->arg) -+ if (that == NULL || that != arg) - /*@innercontinue@*/ continue; - /*@innerbreak@*/ break; - } - /* Skip if this table has already been processed. */ -- if (opt->arg == NULL || i < done->nopts) -+ if (arg == NULL || i < done->nopts) - continue; - if (done->opts != NULL && done->nopts < done->maxopts) -- done->opts[done->nopts++] = (const void *) opt->arg; -+ done->opts[done->nopts++] = (const void *) arg; - } -- columns->cur = singleTableUsage(con, fp, columns, opt->arg, -+ columns->cur = singleTableUsage(con, fp, columns, arg, - translation_domain, done); - } else - if ((opt->longName || opt->shortName) && !F_ISSET(opt, DOC_HIDDEN)) { -@@ -864,9 +873,13 @@ static size_t showShortOptions(const str - if (!strchr(s, opt->shortName) && isprint((int)opt->shortName) - && opt->shortName != ' ') - s[strlen(s)] = opt->shortName; -- } else if (poptArgType(opt) == POPT_ARG_INCLUDE_TABLE) -- if (opt->arg) /* XXX program error */ -- len = showShortOptions(opt->arg, fp, s); -+ } else if (poptArgType(opt) == POPT_ARG_INCLUDE_TABLE) { -+ void * arg = opt->arg; -+ /* XXX sick hack to preserve pretense of ABI. */ -+ if (arg == poptHelpOptions) arg = poptHelpOptionsI18N; -+ if (arg) /* XXX program error */ -+ len = showShortOptions(arg, fp, s); -+ } - } - - /* On return to top level, print the short options, return print length. */ diff --git a/runtime-optenv32/popt+32/autobuild/patches/popt-1.16-man-page.patch b/runtime-optenv32/popt+32/autobuild/patches/popt-1.16-man-page.patch deleted file mode 100644 index bc8dafdddca..00000000000 --- a/runtime-optenv32/popt+32/autobuild/patches/popt-1.16-man-page.patch +++ /dev/null @@ -1,66 +0,0 @@ -Patch by John Bradshaw for popt <= 1.16 which fixes some -spelling mistakes in popt man page. - -See https://bugzilla.redhat.com/show_bug.cgi?id=675567 for further details, please. -This patch was proposed to upstream: http://rpm5.org/community/popt-devel/0263.html - -Upstream already corrected some issues with http://rpm5.org/cvs/chngview?cn=16879 -and solved the last ones with http://rpm5.org/cvs/chngview?cn=17375 now. Thus popt -1.17 should make this patch completely obsolete. - ---- popt-1.16/popt.3 2009-07-25 20:52:36.000000000 +0200 -+++ popt-1.16/popt.3.man-page 2013-11-24 15:59:58.000000000 +0100 -@@ -200,7 +200,7 @@ - .RB "This macro includes another option table (via " POPT_ARG_INCLUDE_TABLE - ; see below) in the main one which provides the table entries for these - .RB "arguments. When " --usage " or " --help " are passed to programs which --use popt's automatical help, popt displays the appropriate message on -+use popt's automatic help, popt displays the appropriate message on - stderr as soon as it finds the option, and exits the program with a - return code of 0. If you want to use popt's automatic help generation in - a different way, you need to explicitly add the option entries to your programs -@@ -210,7 +210,7 @@ - the argument will not be shown in help output. - .sp - If the \fIargInfo\fR value is bitwise or'd with \fBPOPT_ARGFLAG_SHOW_DEFAULT\fR, --the inital value of the arg will be shown in help output. -+the initial value of the arg will be shown in help output. - .sp - The final structure in the table should have all the pointer values set - .RB "to " NULL " and all the arithmetic values set to 0, marking the " -@@ -233,7 +233,7 @@ - contain a overall description of the option table being included. - .sp - The other special option table entry type tells popt to call a function (a --callback) when any option in that table is found. This is especially usefull -+callback) when any option in that table is found. This is especially useful - when included option tables are being used, as the program which provides - the top-level option table doesn't need to be aware of the other options - which are provided by the included table. When a callback is set for -@@ -473,7 +473,7 @@ - .TP - .B POPT_ERROR_BADNUMBER - A conversion from a string to a number (int or long) failed due --to the string containing nonnumeric characters. This occurs when -+to the string containing non-numeric characters. This occurs when - .BR poptGetNextOpt() " is processing an argument of type " - .BR POPT_ARG_INT ", " POPT_ARG_SHORT ", " POPT_ARG_LONG ", " POPT_ARG_LONGLONG ", " - .RB POPT_ARG_FLOAT ", or " POPT_ARG_DOUBLE "." -@@ -517,7 +517,7 @@ - applications. When an error is detected from most of the functions, - an error message is printed along with the error string from - .BR poptStrerror() ". When an error occurs during argument parsing, " --code similiar to the following displays a useful error message: -+code similar to the following displays a useful error message: - .sp - .nf - fprintf(stderr, "%s: %s\\n", -@@ -608,7 +608,7 @@ - .RI "an " argv "-style array, some programs need to parse strings that " - are formatted identically to command lines. To facilitate this, popt - provides a function that parses a string into an array of strings, --using rules similiar to normal shell parsing. -+using rules similar to normal shell parsing. - .sp - .nf - .B "#include " diff --git a/runtime-optenv32/popt+32/autobuild/patches/popt-1.16-pkgconfig.patch b/runtime-optenv32/popt+32/autobuild/patches/popt-1.16-pkgconfig.patch deleted file mode 100644 index 08d05c67b0f..00000000000 --- a/runtime-optenv32/popt+32/autobuild/patches/popt-1.16-pkgconfig.patch +++ /dev/null @@ -1,31 +0,0 @@ -Patch by Robert Scheck for popt <= 1.16 which changes -$(pkgconfigdir) on 64 bit systems from /usr/lib/pkgconfig to /usr/lib64/pkgconfig. -Using $(libdir)/pkgconfig rather $(prefix)/lib/pkgconfig seems to be common when -searching on the Internet. This patch however is not really compliant with Fedora -/%{_lib} vs. %{_libdir} handling before the UsrMove with Fedora 17. Alternatively ---with-pkgconfigdir or similar should be implemented. - -This patch was proposed to upstream: http://rpm5.org/community/popt-devel/0265.html - ---- popt-1.16/Makefile.in 2010-05-04 22:55:59.000000000 +0200 -+++ popt-1.16/Makefile.in.pkgconfig 2013-11-24 15:06:43.000000000 +0100 -@@ -370,7 +370,7 @@ - libpopt_la_SOURCES = popt.c poptparse.c poptconfig.c popthelp.c poptint.c - libpopt_la_LDFLAGS = -no-undefined @LTLIBINTL@ @LTLIBICONV@ \ - $(am__append_1) --pkgconfigdir = $(prefix)/lib/pkgconfig -+pkgconfigdir = $(libdir)/pkgconfig - pkgconfig_DATA = popt.pc - man_MANS = popt.3 - BUILT_SOURCES = popt.pc # popt.lcd ---- popt-1.16/Makefile.am 2010-05-04 22:55:54.000000000 +0200 -+++ popt-1.16/Makefile.am.pkgconfig 2013-11-24 15:02:21.000000000 +0100 -@@ -47,7 +47,7 @@ - libpopt_la_SOURCES = popt.c poptparse.c poptconfig.c popthelp.c poptint.c - libpopt_la_LDFLAGS = -no-undefined @LTLIBINTL@ @LTLIBICONV@ - --pkgconfigdir = $(prefix)/lib/pkgconfig -+pkgconfigdir = $(libdir)/pkgconfig - pkgconfig_DATA = popt.pc - - if HAVE_LD_VERSION_SCRIPT diff --git a/runtime-optenv32/popt+32/spec b/runtime-optenv32/popt+32/spec index 2c1b6ea650b..d815f0499c8 100644 --- a/runtime-optenv32/popt+32/spec +++ b/runtime-optenv32/popt+32/spec @@ -1,5 +1,4 @@ -VER=1.16 -SRCS="tbl::http://rpm5.org/files/popt/popt-$VER.tar.gz" -CHKSUMS="sha256::d6a01d72cf18dbe20d173fed7bc32cf87daafe62cf6b87672f6b434daff1ed74" -REL=3 +VER=1.18 +SRCS="tbl::https://ftp.osuosl.org/pub/blfs/conglomeration/popt/popt-$VER.tar.gz" +CHKSUMS="sha256::5159bc03a20b28ce363aa96765f37df99ea4d8850b1ece17d1e6ad5c24fdc5d1" CHKUPDATE="anitya::id=3689" From 266dff672b01fcd8d5d8f554894709781ef86089 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 17 Nov 2024 00:19:06 +0800 Subject: [PATCH 031/722] libdv+32: improve packaging - Use optenv32 template. - Drop unused prepare script. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libdv+32/autobuild/build | 12 ------------ runtime-optenv32/libdv+32/autobuild/defines | 9 ++++++--- runtime-optenv32/libdv+32/autobuild/prepare | 1 - runtime-optenv32/libdv+32/spec | 2 +- 4 files changed, 7 insertions(+), 17 deletions(-) delete mode 100644 runtime-optenv32/libdv+32/autobuild/build delete mode 100644 runtime-optenv32/libdv+32/autobuild/prepare diff --git a/runtime-optenv32/libdv+32/autobuild/build b/runtime-optenv32/libdv+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/libdv+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/libdv+32/autobuild/defines b/runtime-optenv32/libdv+32/autobuild/defines index 0e281160d87..ceda300222d 100644 --- a/runtime-optenv32/libdv+32/autobuild/defines +++ b/runtime-optenv32/libdv+32/autobuild/defines @@ -1,9 +1,12 @@ PKGNAME=libdv+32 PKGSEC=libs PKGDEP="popt+32" -PKGDES="The Quarsar DV codec (optenv32)" +BUILDDEP="autoconf-archive devel-base+32" +PKGDES="The Quarsar DV codec (32-bit x86 runtime)" AUTOTOOLS_AFTER="--disable-gtk" -ABSHADOW=no +RECONF=0 +ABSHADOW=0 NOLTO=1 -ABHOST=noarch + +ABHOST=optenv32 diff --git a/runtime-optenv32/libdv+32/autobuild/prepare b/runtime-optenv32/libdv+32/autobuild/prepare deleted file mode 100644 index ba1d9cbe2c3..00000000000 --- a/runtime-optenv32/libdv+32/autobuild/prepare +++ /dev/null @@ -1 +0,0 @@ -autoreconf -fi diff --git a/runtime-optenv32/libdv+32/spec b/runtime-optenv32/libdv+32/spec index 0c65586e517..0dd5af507ee 100644 --- a/runtime-optenv32/libdv+32/spec +++ b/runtime-optenv32/libdv+32/spec @@ -1,5 +1,5 @@ VER=1.0.0 +REL=3 SRCS="tbl::https://sourceforge.net/projects/libdv/files/libdv/$VER/libdv-$VER.tar.gz" CHKSUMS="sha256::a305734033a9c25541a59e8dd1c254409953269ea7c710c39e540bd8853389ba" -REL=2 CHKUPDATE="anitya::id=230925" From ebfc66159c090a0abca42abab2e163e6fc60f165 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 17 Nov 2024 00:22:09 +0800 Subject: [PATCH 032/722] libtool+32: update to 2.4.7 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libtool+32/autobuild/build | 9 --------- runtime-optenv32/libtool+32/autobuild/defines | 14 +++++++++++--- runtime-optenv32/libtool+32/spec | 7 +++---- 3 files changed, 14 insertions(+), 16 deletions(-) delete mode 100644 runtime-optenv32/libtool+32/autobuild/build diff --git a/runtime-optenv32/libtool+32/autobuild/build b/runtime-optenv32/libtool+32/autobuild/build deleted file mode 100644 index dfe95908102..00000000000 --- a/runtime-optenv32/libtool+32/autobuild/build +++ /dev/null @@ -1,9 +0,0 @@ -export PATH=/opt/32/bin:$PATH -./configure --prefix=/opt/32 --disable-static \ - --host=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --build=i686-pc-linux-gnu \ - CC=i686-pc-linux-gnu-gcc -make -make install DESTDIR=$PKGDIR - -rm -rf $PKGDIR/opt/32/{bin,share} diff --git a/runtime-optenv32/libtool+32/autobuild/defines b/runtime-optenv32/libtool+32/autobuild/defines index 953f30a3ede..44b0c90c102 100644 --- a/runtime-optenv32/libtool+32/autobuild/defines +++ b/runtime-optenv32/libtool+32/autobuild/defines @@ -1,6 +1,14 @@ PKGNAME=libtool+32 -PKGDES="GNU generic library support script" -PKGDEP="glibc+32" PKGSEC=devel +PKGDEP="glibc+32" +BUILDDEP="devel-base+32" +PKGDES="GNU generic library support script (32-bit x86 runtime)" + +# FIXME: +# +# bootstrap: error: Bootstrapping from a non-checked-out distribution is +# risky. If you wish to bootstrap anyway, use the '--force' option. +RECONF=0 + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libtool+32/spec b/runtime-optenv32/libtool+32/spec index 4b31b7e3605..86d015b3e18 100644 --- a/runtime-optenv32/libtool+32/spec +++ b/runtime-optenv32/libtool+32/spec @@ -1,5 +1,4 @@ -VER=2.4.6 -SRCS="tbl::https://ftp.gnu.org/gnu/libtool/libtool-$VER.tar.gz" -CHKSUMS="sha256::e3bd4d5d3d025a36c21dd6af7ea818a2afcd4dfc1ea5a17b39d7854bcd0c06e3" -REL=2 +VER=2.4.7 +SRCS="tbl::https://ftp.gnu.org/gnu/libtool/libtool-$VER.tar.xz" +CHKSUMS="sha256::4f7f217f057ce655ff22559ad221a0fd8ef84ad1fc5fcb6990cecc333aa1635d" CHKUPDATE="anitya::id=1741" From 726037646df6b07ffc4186fdd25a9c35c9fc658e Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 17 Nov 2024 00:33:45 +0800 Subject: [PATCH 033/722] libsndfile+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libsndfile+32/autobuild/build | 14 -------------- runtime-optenv32/libsndfile+32/autobuild/defines | 9 +++++---- runtime-optenv32/libsndfile+32/spec | 2 +- 3 files changed, 6 insertions(+), 19 deletions(-) delete mode 100644 runtime-optenv32/libsndfile+32/autobuild/build diff --git a/runtime-optenv32/libsndfile+32/autobuild/build b/runtime-optenv32/libsndfile+32/autobuild/build deleted file mode 100644 index 2cb9c8aa0c4..00000000000 --- a/runtime-optenv32/libsndfile+32/autobuild/build +++ /dev/null @@ -1,14 +0,0 @@ -export PATH=/opt/32/bin:$PATH -autoreconf -vifs -./configure --prefix=/opt/32 --disable-static \ - --build=i686-aosc-linux-gnu \ - --host=i686-aosc-linux-gnu \ - --target=i686-aosc-linux-gnu \ - --disable-sqlite \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig \ - CC=/opt/32/bin/gcc \ - CXX=/opt/32/bin/g++ -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/libsndfile+32/autobuild/defines b/runtime-optenv32/libsndfile+32/autobuild/defines index 5e1f7c64ae1..dc9da0f1768 100644 --- a/runtime-optenv32/libsndfile+32/autobuild/defines +++ b/runtime-optenv32/libsndfile+32/autobuild/defines @@ -1,7 +1,8 @@ PKGNAME=libsndfile+32 -PKGDES="A C library for reading and writing files containing sampled sound (optenv32)" -PKGDEP="alsa-lib+32 flac+32 libvorbis+32" -BUILDDEP="32subsystem autogen" PKGSEC=libs +PKGDEP="alsa-lib+32 flac+32 libvorbis+32" +BUILDDEP="autogen devel-base+32" +PKGDES="A C library for reading and writing files containing sampled sound (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libsndfile+32/spec b/runtime-optenv32/libsndfile+32/spec index 8fd261a2f4a..156a33a1362 100644 --- a/runtime-optenv32/libsndfile+32/spec +++ b/runtime-optenv32/libsndfile+32/spec @@ -1,5 +1,5 @@ VER=1.2.0 -REL=1 +REL=2 SRCS="git::commit=tags/$VER::https://github.com/libsndfile/libsndfile" CHKSUMS="SKIP" CHKUPDATE="anitya::id=13277" From f0943c9dc486aec1b52e341d2e8e2ca5afe4debf Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 17 Nov 2024 00:34:52 +0800 Subject: [PATCH 034/722] sbc+32: improve packaging - Add missing libsndfile+32 dep. - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/sbc+32/autobuild/build | 12 ------------ runtime-optenv32/sbc+32/autobuild/defines | 8 +++++--- runtime-optenv32/sbc+32/spec | 5 ++--- 3 files changed, 7 insertions(+), 18 deletions(-) delete mode 100644 runtime-optenv32/sbc+32/autobuild/build diff --git a/runtime-optenv32/sbc+32/autobuild/build b/runtime-optenv32/sbc+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/sbc+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/sbc+32/autobuild/defines b/runtime-optenv32/sbc+32/autobuild/defines index 8898a9f5d3d..18b10bef63d 100644 --- a/runtime-optenv32/sbc+32/autobuild/defines +++ b/runtime-optenv32/sbc+32/autobuild/defines @@ -1,6 +1,8 @@ PKGNAME=sbc+32 PKGSEC=libs -PKGDEP="glibc+32" -PKGDES="Bluetooth SubBand Codec (SBC) library (optenv32)" +PKGDEP="glibc+32 libsndfile+32" +BUILDDEP="devel-base+32" +PKGDES="Bluetooth SubBand Codec (SBC) library (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/sbc+32/spec b/runtime-optenv32/sbc+32/spec index d7b0c28af16..faef86d6fd2 100644 --- a/runtime-optenv32/sbc+32/spec +++ b/runtime-optenv32/sbc+32/spec @@ -1,5 +1,4 @@ -VER=1.3 +VER=2.0 SRCS="tbl::https://www.kernel.org/pub/linux/bluetooth/sbc-$VER.tar.xz" -CHKSUMS="sha256::e61022cf576f14190241e7071753fdacdce5d1dea89ffd704110fc50be689309" -REL=2 +CHKSUMS="sha256::8f12368e1dbbf55e14536520473cfb338c84b392939cc9b64298360fd4a07992" CHKUPDATE="anitya::id=16338" From 18bed7666a07b45871a7f057fe8f090a63f91772 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 17 Nov 2024 00:38:59 +0800 Subject: [PATCH 035/722] srtp+32: update to 2.6.0 - Use optenv32 template. - Use Git tag per the Styling Manual. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/srtp+32/autobuild/build | 12 ------------ runtime-optenv32/srtp+32/autobuild/defines | 12 ++++++++---- runtime-optenv32/srtp+32/spec | 7 +++---- 3 files changed, 11 insertions(+), 20 deletions(-) delete mode 100644 runtime-optenv32/srtp+32/autobuild/build diff --git a/runtime-optenv32/srtp+32/autobuild/build b/runtime-optenv32/srtp+32/autobuild/build deleted file mode 100644 index 09107281f2f..00000000000 --- a/runtime-optenv32/srtp+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make $ABMK -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/srtp+32/autobuild/defines b/runtime-optenv32/srtp+32/autobuild/defines index b52304c760d..d5d0dc794aa 100644 --- a/runtime-optenv32/srtp+32/autobuild/defines +++ b/runtime-optenv32/srtp+32/autobuild/defines @@ -1,9 +1,13 @@ PKGNAME=srtp+32 PKGSEC=net PKGDEP="glibc+32" -PKGDES="Open-source implementation of the Secure Real-time Transport Protocol (SRTP) (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="Open-source implementation of the Secure Real-time Transport Protocol (SRTP) (32-bit x86 runtime)" -ABMK="libsrtp.a shared_library" -NOSTATIC=no +# FIXME: Missing file `ar-lib'. +RECONF=0 NOLTO=1 -ABHOST=noarch + +ABMK="shared_library" + +ABHOST=optenv32 diff --git a/runtime-optenv32/srtp+32/spec b/runtime-optenv32/srtp+32/spec index 62e294f9330..ea1c972850b 100644 --- a/runtime-optenv32/srtp+32/spec +++ b/runtime-optenv32/srtp+32/spec @@ -1,5 +1,4 @@ -VER=1.5.4 -SRCS="tbl::https://github.com/cisco/libsrtp/archive/v$VER.tar.gz" -CHKSUMS="sha256::56a7b521c25134f48faff26b0b1e3d4378a14986a2d3d7bc6fefb48987304ff0" -REL=3 +VER=2.6.0 +SRCS="git::commit=tags/v$VER::https://github.com/cisco/libsrtp" +CHKSUMS="SKIP" CHKUPDATE="anitya::id=18547" From 9b547f440fbf1d81cbfb7d2dc2be0ec56cc20566 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 17 Nov 2024 00:40:27 +0800 Subject: [PATCH 036/722] libraw1394+32: improve packaging - Use optenv32 template. - Enable shadow build (not sure why it was disabled). - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libraw1394+32/autobuild/build | 12 ------------ runtime-optenv32/libraw1394+32/autobuild/defines | 6 +++--- runtime-optenv32/libraw1394+32/spec | 2 +- 3 files changed, 4 insertions(+), 16 deletions(-) delete mode 100644 runtime-optenv32/libraw1394+32/autobuild/build diff --git a/runtime-optenv32/libraw1394+32/autobuild/build b/runtime-optenv32/libraw1394+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/libraw1394+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/libraw1394+32/autobuild/defines b/runtime-optenv32/libraw1394+32/autobuild/defines index d7503142c04..71192bfdf97 100644 --- a/runtime-optenv32/libraw1394+32/autobuild/defines +++ b/runtime-optenv32/libraw1394+32/autobuild/defines @@ -1,8 +1,8 @@ PKGNAME=libraw1394+32 PKGSEC=libs PKGDEP="glibc+32" -PKGDES="API for the Linux IEEE1394 driver stack (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="API for the Linux IEEE1394 driver stack (32-bit x86 runtime)" -ABSHADOW=no NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libraw1394+32/spec b/runtime-optenv32/libraw1394+32/spec index f3607e0ccd9..f277c68360b 100644 --- a/runtime-optenv32/libraw1394+32/spec +++ b/runtime-optenv32/libraw1394+32/spec @@ -1,5 +1,5 @@ VER=2.1.2 +REL=3 SRCS="tbl::https://www.kernel.org/pub/linux/libs/ieee1394/libraw1394-$VER.tar.xz" CHKSUMS="sha256::03ccc69761d22c7deb1127fc301010dd13e70e44bb7134b8ff0d07590259a55e" -REL=2 CHKUPDATE="anitya::id=1710" From fbfe510555cfb4afb898102044761a43b8034057 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 17 Nov 2024 00:42:10 +0800 Subject: [PATCH 037/722] libiec61883+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libiec61883+32/autobuild/build | 12 ------------ runtime-optenv32/libiec61883+32/autobuild/defines | 6 ++++-- runtime-optenv32/libiec61883+32/spec | 2 +- 3 files changed, 5 insertions(+), 15 deletions(-) delete mode 100644 runtime-optenv32/libiec61883+32/autobuild/build diff --git a/runtime-optenv32/libiec61883+32/autobuild/build b/runtime-optenv32/libiec61883+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/libiec61883+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/libiec61883+32/autobuild/defines b/runtime-optenv32/libiec61883+32/autobuild/defines index 0aaf2ed5152..61f639cbb04 100644 --- a/runtime-optenv32/libiec61883+32/autobuild/defines +++ b/runtime-optenv32/libiec61883+32/autobuild/defines @@ -1,6 +1,8 @@ PKGNAME=libiec61883+32 PKGSEC=libs PKGDEP="libraw1394+32" -PKGDES="A higher level API for streaming DV, MPEG-2 and audio over Linux IEEE 1394 (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="A higher level API for streaming DV, MPEG-2 and audio over Linux IEEE 1394 (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libiec61883+32/spec b/runtime-optenv32/libiec61883+32/spec index ee9a077b71e..c292244dea4 100644 --- a/runtime-optenv32/libiec61883+32/spec +++ b/runtime-optenv32/libiec61883+32/spec @@ -1,5 +1,5 @@ VER=1.2.0 +REL=3 SRCS="tbl::https://www.kernel.org/pub/linux/libs/ieee1394/libiec61883-$VER.tar.xz" CHKSUMS="sha256::d1e02c7e276fac37313a2f8c1c33d7a9e19282ff16f32e72435428ff5121f09e" -REL=2 CHKUPDATE="anitya::id=1640" From 40d65fcba92de88b3c01de024c56985e0b09b478 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Mon, 18 Nov 2024 11:27:23 +0800 Subject: [PATCH 038/722] libcddb+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libcddb+32/autobuild/build | 12 ------------ runtime-optenv32/libcddb+32/autobuild/defines | 8 +++++--- runtime-optenv32/libcddb+32/spec | 2 +- 3 files changed, 6 insertions(+), 16 deletions(-) delete mode 100644 runtime-optenv32/libcddb+32/autobuild/build diff --git a/runtime-optenv32/libcddb+32/autobuild/build b/runtime-optenv32/libcddb+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/libcddb+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/libcddb+32/autobuild/defines b/runtime-optenv32/libcddb+32/autobuild/defines index d79e4a0c16d..4d573be6ea6 100644 --- a/runtime-optenv32/libcddb+32/autobuild/defines +++ b/runtime-optenv32/libcddb+32/autobuild/defines @@ -1,6 +1,8 @@ PKGNAME=libcddb+32 -PKGDES="Library that implements the different protocols (CDDBP, HTTP, SMTP) to access data on a CDDB server (e.g. http://freedb.org) (optenv32)" -PKGDEP="glibc+32" PKGSEC=libs +PKGDEP="glibc+32" +BUILDDEP="devel-base+32" +PKGDES="Library that implements the different protocols (CDDBP, HTTP, SMTP) to access data on a CDDB server (e.g. http://freedb.org) (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libcddb+32/spec b/runtime-optenv32/libcddb+32/spec index a239c8f728d..1d8bd001b3d 100644 --- a/runtime-optenv32/libcddb+32/spec +++ b/runtime-optenv32/libcddb+32/spec @@ -1,5 +1,5 @@ VER=1.3.2 +REL=3 SRCS="tbl::https://prdownloads.sourceforge.net/libcddb/libcddb-$VER.tar.bz2" CHKSUMS="sha256::35ce0ee1741ea38def304ddfe84a958901413aa829698357f0bee5bb8f0a223b" -REL=2 CHKUPDATE="anitya::id=1572" From 260f06a796d72922cb2d2d7c9976d56e6b5bf527 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Mon, 18 Nov 2024 11:32:05 +0800 Subject: [PATCH 039/722] libcdio+32: update to 2.1.0 - Use optenv32 template. - Drop an old patch and beyond script. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libcdio+32/autobuild/beyond | 2 -- runtime-optenv32/libcdio+32/autobuild/build | 12 ---------- runtime-optenv32/libcdio+32/autobuild/defines | 6 +++-- .../autobuild/patches/cdio-0.83-linking.patch | 22 ------------------- runtime-optenv32/libcdio+32/spec | 7 +++--- 5 files changed, 7 insertions(+), 42 deletions(-) delete mode 100644 runtime-optenv32/libcdio+32/autobuild/beyond delete mode 100644 runtime-optenv32/libcdio+32/autobuild/build delete mode 100644 runtime-optenv32/libcdio+32/autobuild/patches/cdio-0.83-linking.patch diff --git a/runtime-optenv32/libcdio+32/autobuild/beyond b/runtime-optenv32/libcdio+32/autobuild/beyond deleted file mode 100644 index 84577ce5498..00000000000 --- a/runtime-optenv32/libcdio+32/autobuild/beyond +++ /dev/null @@ -1,2 +0,0 @@ -sed -i "/LIBCDIO_SOURCE_PATH/s|.*|/* #undef LIBCDIO_SOURCE_PATH */|" \ - "$PKGDIR"/opt/32/include/cdio/cdio_config.h diff --git a/runtime-optenv32/libcdio+32/autobuild/build b/runtime-optenv32/libcdio+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/libcdio+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/libcdio+32/autobuild/defines b/runtime-optenv32/libcdio+32/autobuild/defines index 7a452340c8e..3a3bd5efb30 100644 --- a/runtime-optenv32/libcdio+32/autobuild/defines +++ b/runtime-optenv32/libcdio+32/autobuild/defines @@ -1,8 +1,10 @@ PKGNAME=libcdio+32 -PKGDES="GNU compact disk input and control library (optenv32)" PKGSEC=libs PKGDEP="libcddb+32 ncurses+32" +BUILDDEP="devel-base+32" +PKGDES="GNU compact disk input and control library (32-bit x86 runtime)" AUTOTOOLS_AFTER="--enable-cpp-progs" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libcdio+32/autobuild/patches/cdio-0.83-linking.patch b/runtime-optenv32/libcdio+32/autobuild/patches/cdio-0.83-linking.patch deleted file mode 100644 index 84a0746b520..00000000000 --- a/runtime-optenv32/libcdio+32/autobuild/patches/cdio-0.83-linking.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff -Naur libcdio-0.83-orig/example/C++/OO/Makefile.in libcdio-0.83/example/C++/OO/Makefile.in ---- libcdio-0.83-orig/example/C++/OO/Makefile.in 2011-10-27 18:02:31.000000000 +1000 -+++ libcdio-0.83/example/C++/OO/Makefile.in 2012-02-18 11:10:07.369277231 +1000 -@@ -315,15 +315,15 @@ - - isofile2_SOURCES = isofile2.cpp - isofile2_LDADD = $(LIBISO9660PP_LIBS) $(LIBISO9660_LIBS) \ -- $(LIBCDIOPP_LIBS) $(LTLIBICONV) -+ $(LIBCDIOPP_LIBS) $(LIBCDIO_LIBS) $(LTLIBICONV) - - isolist_SOURCES = isolist.cpp - isolist_LDADD = $(LIBISO9660PP_LIBS) $(LIBISO9660_LIBS) \ -- $(LIBCDIOPP_LIBS) $(LTLIBICONV) -+ $(LIBCDIOPP_LIBS) $(LIBCDIO_LIBS) $(LTLIBICONV) - - iso4_SOURCES = iso4.cpp - iso4_LDADD = $(LIBISO9660PP_LIBS) $(LIBISO9660_LIBS) \ -- $(LIBCDIOPP_LIBS) $(LTLIBICONV) -+ $(LIBCDIOPP_LIBS) $(LIBCDIO_LIBS) $(LTLIBICONV) - - mmc1_SOURCES = mmc1.cpp - mmc1_DEPENDENCIES = $(LIBCDIO_DEPS) diff --git a/runtime-optenv32/libcdio+32/spec b/runtime-optenv32/libcdio+32/spec index 841c55626eb..4dc6d5b3acc 100644 --- a/runtime-optenv32/libcdio+32/spec +++ b/runtime-optenv32/libcdio+32/spec @@ -1,5 +1,4 @@ -VER=0.94 -SRCS="tbl::https://ftp.gnu.org/gnu/libcdio/libcdio-$VER.tar.gz" -CHKSUMS="sha256::96e2c903f866ae96f9f5b9048fa32db0921464a2286f5b586c0f02699710025a" -REL=2 +VER=2.1.0 +SRCS="tbl::https://ftp.gnu.org/gnu/libcdio/libcdio-$VER.tar.bz2" +CHKSUMS="sha256::8550e9589dbd594bfac93b81ecf129b1dc9d0d51e90f9696f1b2f9b2af32712b" CHKUPDATE="anitya::id=1573" From 0f4b3da9cb9a8e97213245c114697e8253b332e3 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Mon, 18 Nov 2024 11:35:46 +0800 Subject: [PATCH 040/722] libsidplay+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- .../libsidplay+32/autobuild/build | 14 ------- .../libsidplay+32/autobuild/defines | 8 ++-- .../patches/libsidplay-1.36.59-gcc43.patch | 41 ------------------- runtime-optenv32/libsidplay+32/spec | 2 +- 4 files changed, 6 insertions(+), 59 deletions(-) delete mode 100644 runtime-optenv32/libsidplay+32/autobuild/build delete mode 100644 runtime-optenv32/libsidplay+32/autobuild/patches/libsidplay-1.36.59-gcc43.patch diff --git a/runtime-optenv32/libsidplay+32/autobuild/build b/runtime-optenv32/libsidplay+32/autobuild/build deleted file mode 100644 index 8ebab07bc14..00000000000 --- a/runtime-optenv32/libsidplay+32/autobuild/build +++ /dev/null @@ -1,14 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc -export CFLAGS="$CFLAGS -Wno-narrowing" -export CXXFLAGS="$CXXFLAGS -Wno-narrowing" - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/libsidplay+32/autobuild/defines b/runtime-optenv32/libsidplay+32/autobuild/defines index 7fde6819f74..a27485f4560 100644 --- a/runtime-optenv32/libsidplay+32/autobuild/defines +++ b/runtime-optenv32/libsidplay+32/autobuild/defines @@ -1,6 +1,8 @@ PKGNAME=libsidplay+32 PKGSEC=libs -PKGDEP="gcc+32" -PKGDES="A library for playing SID music files (optenv32)" +PKGDEP="glibc+32" +BUILDDEP="devel-base+32" +PKGDES="A library for playing SID music files (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libsidplay+32/autobuild/patches/libsidplay-1.36.59-gcc43.patch b/runtime-optenv32/libsidplay+32/autobuild/patches/libsidplay-1.36.59-gcc43.patch deleted file mode 100644 index 8125e7ef383..00000000000 --- a/runtime-optenv32/libsidplay+32/autobuild/patches/libsidplay-1.36.59-gcc43.patch +++ /dev/null @@ -1,41 +0,0 @@ -diff --git a/src/sidtune.cpp b/src/sidtune.cpp -index 4d1d33b..6fbae80 100644 ---- a/src/sidtune.cpp -+++ b/src/sidtune.cpp -@@ -306,11 +306,7 @@ udword sidTune::loadFile(const char* fileName, ubyte** bufferRef) - return 0; - } - // Open binary input file stream at end of file. --#if defined(SID_HAVE_IOS_BIN) -- ifstream myIn( fileName, ios::in|ios::bin|ios::ate ); --#else - ifstream myIn( fileName, ios::in|ios::binary|ios::ate ); --#endif - // As a replacement for !is_open(), bad() and the NOT-operator - // don't seem to work on all systems. - #if defined(SID_DONT_HAVE_IS_OPEN) -@@ -972,11 +968,7 @@ bool sidTune::saveC64dataFile( const char* fileName, bool overWriteFlag ) - } - // Open binary output file stream. - else --#if defined(SID_HAVE_IOS_BIN) -- fMyOut.open( fileName, ios::out|ios::bin|ios::trunc ); --#else - fMyOut.open( fileName, ios::out|ios::binary|ios::trunc ); --#endif - if ( !fMyOut ) - { - info.statusString = text_cantCreateFile; -@@ -1061,11 +1053,7 @@ bool sidTune::savePSIDfile( const char* fileName, bool overWriteFlag ) - } - // Open binary output file stream. - else --#if defined(SID_HAVE_IOS_BIN) -- fMyOut.open( fileName, ios::out|ios::bin|ios::trunc ); --#else - fMyOut.open( fileName, ios::out|ios::binary|ios::trunc ); --#endif - if ( !fMyOut ) - { - info.statusString = text_cantCreateFile; - diff --git a/runtime-optenv32/libsidplay+32/spec b/runtime-optenv32/libsidplay+32/spec index c20e175c76a..6d481b690d8 100644 --- a/runtime-optenv32/libsidplay+32/spec +++ b/runtime-optenv32/libsidplay+32/spec @@ -1,5 +1,5 @@ VER=1.36.59 +REL=3 SRCS="tbl::https://critical.ch/distfiles/libsidplay-$VER.tgz" CHKSUMS="sha256::3da9b38d4eb5bf9e936b9604ba92da0594ef38047d50cf806a8e11c400008024" -REL=2 CHKUPDATE="anitya::id=21492" From dccd6d9bf082f7cca85934d4171d7ef6ac3727a0 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Mon, 18 Nov 2024 13:40:01 +0800 Subject: [PATCH 041/722] icu+32: update to 74.2 Improve PKGDES optenv32 => 32-bit x86 runtime. --- .../0003-fix-genrb-internal-error.patch | 2 +- ...n-default-locale-mapping-for-C-UTF-8.patch | 79 ------------ ...005-icu-64.1-data_archive_generation.patch | 14 --- .../patches/0006-CVE-2020-10531.patch | 112 ------------------ runtime-optenv32/icu+32/spec | 5 +- 5 files changed, 3 insertions(+), 209 deletions(-) delete mode 100644 runtime-optenv32/icu+32/autobuild/patches/0004-ICU-20575-fix-broken-default-locale-mapping-for-C-UTF-8.patch delete mode 100644 runtime-optenv32/icu+32/autobuild/patches/0005-icu-64.1-data_archive_generation.patch delete mode 100644 runtime-optenv32/icu+32/autobuild/patches/0006-CVE-2020-10531.patch diff --git a/runtime-optenv32/icu+32/autobuild/patches/0003-fix-genrb-internal-error.patch b/runtime-optenv32/icu+32/autobuild/patches/0003-fix-genrb-internal-error.patch index 4a0b001779f..cfadce33550 100644 --- a/runtime-optenv32/icu+32/autobuild/patches/0003-fix-genrb-internal-error.patch +++ b/runtime-optenv32/icu+32/autobuild/patches/0003-fix-genrb-internal-error.patch @@ -5,7 +5,7 @@ This patch can be used in any architecture. --- icu/source/config/mh-linux 2015-03-27 21:11:20.000000000 +0000 +++ icu-changed/source/config/mh-linux 2015-08-17 01:26:15.000000000 +0000 -@@ -21,7 +21,7 @@ +@@ -23,7 +23,7 @@ LD_RPATH_PRE = -Wl,-rpath, ## These are the library specific LDFLAGS diff --git a/runtime-optenv32/icu+32/autobuild/patches/0004-ICU-20575-fix-broken-default-locale-mapping-for-C-UTF-8.patch b/runtime-optenv32/icu+32/autobuild/patches/0004-ICU-20575-fix-broken-default-locale-mapping-for-C-UTF-8.patch deleted file mode 100644 index aa6e360195b..00000000000 --- a/runtime-optenv32/icu+32/autobuild/patches/0004-ICU-20575-fix-broken-default-locale-mapping-for-C-UTF-8.patch +++ /dev/null @@ -1,79 +0,0 @@ -From 075cefb2e21f57f4cac1bc2868e93dd1b8c077cc Mon Sep 17 00:00:00 2001 -From: "Steven R. Loomis" -Date: Thu, 25 Apr 2019 10:40:28 -0700 -Subject: [PATCH] ICU-20575 fix broken default locale mapping for C.UTF-8 - -Regression was in 1afef30549d93c17bb966c6803d5d943cf055925 -PR #418 [ICU-20187] - -- We dropped the mapping from "C" in uloc_canonicalize, - but then putil did not handle cases where a codepage was - set (such as C.UTF-8). - -- Add an additional check in uprv_getDefaultLocaleID() for - locales that end up as "C" or "POSIX" after removing codepage - suffix. - -- Also fix regression where aa@bb would become aa__BB__BB - (incorrectly doubled __BB) ---- - source/common/putil.cpp | 23 +++++++++++++++++------ - 1 file changed, 17 insertions(+), 6 deletions(-) - -diff --git a/source/common/putil.cpp b/source/common/putil.cpp -index 532a0903cdd..289a8aaa141 100644 ---- a/source/common/putil.cpp -+++ b/source/common/putil.cpp -@@ -1560,6 +1560,10 @@ static const char *uprv_getPOSIXIDForCategory(int category) - { - /* Nothing worked. Give it a nice POSIX default value. */ - posixID = "en_US_POSIX"; -+ // Note: this test will not catch 'C.UTF-8', -+ // that will be handled in uprv_getDefaultLocaleID(). -+ // Leave this mapping here for the uprv_getPOSIXIDForDefaultCodepage() -+ // caller which expects to see "en_US_POSIX" in many branches. - } - return posixID; - } -@@ -1631,8 +1635,8 @@ The leftmost codepage (.xxx) wins. - } - - // Copy the ID into owned memory. -- // Over-allocate in case we replace "@" with "__". -- char *correctedPOSIXLocale = static_cast(uprv_malloc(uprv_strlen(posixID) + 1 + 1)); -+ // Over-allocate in case we replace "C" with "en_US_POSIX" (+10), + null termination -+ char *correctedPOSIXLocale = static_cast(uprv_malloc(uprv_strlen(posixID) + 10 + 1)); - if (correctedPOSIXLocale == nullptr) { - return nullptr; - } -@@ -1641,11 +1645,18 @@ The leftmost codepage (.xxx) wins. - char *limit; - if ((limit = uprv_strchr(correctedPOSIXLocale, '.')) != nullptr) { - *limit = 0; -- if ((limit = uprv_strchr(correctedPOSIXLocale, '@')) != nullptr) { -- *limit = 0; -- } -+ } -+ if ((limit = uprv_strchr(correctedPOSIXLocale, '@')) != nullptr) { -+ *limit = 0; - } - -+ if ((uprv_strcmp("C", correctedPOSIXLocale) == 0) // no @ variant -+ || (uprv_strcmp("POSIX", correctedPOSIXLocale) == 0)) { -+ // Raw input was C.* or POSIX.*, Give it a nice POSIX default value. -+ // (The "C"/"POSIX" case is handled in uprv_getPOSIXIDForCategory()) -+ uprv_strcpy(correctedPOSIXLocale, "en_US_POSIX"); -+ } -+ - /* Note that we scan the *uncorrected* ID. */ - const char *p; - if ((p = uprv_strrchr(posixID, '@')) != nullptr) { -@@ -1668,7 +1679,7 @@ The leftmost codepage (.xxx) wins. - if ((q = uprv_strchr(p, '.')) != nullptr) { - /* How big will the resulting string be? */ - int32_t len = (int32_t)(uprv_strlen(correctedPOSIXLocale) + (q-p)); -- uprv_strncat(correctedPOSIXLocale, p, q-p); -+ uprv_strncat(correctedPOSIXLocale, p, q-p); // do not include charset - correctedPOSIXLocale[len] = 0; - } - else { diff --git a/runtime-optenv32/icu+32/autobuild/patches/0005-icu-64.1-data_archive_generation.patch b/runtime-optenv32/icu+32/autobuild/patches/0005-icu-64.1-data_archive_generation.patch deleted file mode 100644 index 48ddcd94c1b..00000000000 --- a/runtime-optenv32/icu+32/autobuild/patches/0005-icu-64.1-data_archive_generation.patch +++ /dev/null @@ -1,14 +0,0 @@ -https://bugs.gentoo.org/682170 - ---- a/source/data/Makefile.in -+++ b/source/data/Makefile.in -@@ -148,7 +148,8 @@ - # and convert it to the current type. - ifneq ($(ICUDATA_ARCHIVE),) - ICUDATA_SOURCE_ARCHIVE = $(OUTDIR)/$(ICUDATA_PLATFORM_NAME).dat --$(ICUDATA_SOURCE_ARCHIVE): $(ICUDATA_ARCHIVE) $(OUTDIR) -+$(ICUDATA_SOURCE_ARCHIVE): $(ICUDATA_ARCHIVE) -+ $(MKINSTALLDIRS) $(OUTDIR) - $(INVOKE) $(TOOLBINDIR)/icupkg -t$(ICUDATA_CHAR) $(ICUDATA_ARCHIVE) $(ICUDATA_SOURCE_ARCHIVE) - endif - else diff --git a/runtime-optenv32/icu+32/autobuild/patches/0006-CVE-2020-10531.patch b/runtime-optenv32/icu+32/autobuild/patches/0006-CVE-2020-10531.patch deleted file mode 100644 index e033928b579..00000000000 --- a/runtime-optenv32/icu+32/autobuild/patches/0006-CVE-2020-10531.patch +++ /dev/null @@ -1,112 +0,0 @@ -From b7d08bc04a4296982fcef8b6b8a354a9e4e7afca Mon Sep 17 00:00:00 2001 -From: Frank Tang -Date: Sat, 1 Feb 2020 02:39:04 +0000 -Subject: [PATCH] ICU-20958 Prevent SEGV_MAPERR in append - -See #971 -diff --git a/source/common/unistr.cpp b/source/common/unistr.cpp -index c8b6c0a..43b755d 100644 ---- a/source/common/unistr.cpp -+++ b/source/common/unistr.cpp -@@ -1564,7 +1564,11 @@ UnicodeString::doAppend(const UChar *srcChars, int32_t srcStart, int32_t srcLeng - } - - int32_t oldLength = length(); -- int32_t newLength = oldLength + srcLength; -+ int32_t newLength; -+ if (uprv_add32_overflow(oldLength, srcLength, &newLength)) { -+ setToBogus(); -+ return *this; -+ } - - // Check for append onto ourself - const UChar* oldArray = getArrayStart(); -diff --git a/source/test/intltest/ustrtest.cpp b/source/test/intltest/ustrtest.cpp -index 57d72fb..3fbfea9 100644 ---- a/source/test/intltest/ustrtest.cpp -+++ b/source/test/intltest/ustrtest.cpp -@@ -65,6 +65,7 @@ void UnicodeStringTest::runIndexedTest( int32_t index, UBool exec, const char* & - TESTCASE_AUTO(TestWCharPointers); - TESTCASE_AUTO(TestNullPointers); - TESTCASE_AUTO(TestUnicodeStringInsertAppendToSelf); -+ TESTCASE_AUTO(TestLargeAppend); - TESTCASE_AUTO_END; - } - -@@ -2303,3 +2304,64 @@ void UnicodeStringTest::TestUnicodeStringInsertAppendToSelf() { - str.insert(2, sub); - assertEquals("", u"abbcdcde", str); - } -+ -+void UnicodeStringTest::TestLargeAppend() { -+ if(quick) return; -+ -+ IcuTestErrorCode status(*this, "TestLargeAppend"); -+ // Make a large UnicodeString -+ int32_t len = 0xAFFFFFF; -+ UnicodeString str; -+ char16_t *buf = str.getBuffer(len); -+ // A fast way to set buffer to valid Unicode. -+ // 4E4E is a valid unicode character -+ uprv_memset(buf, 0x4e, len * 2); -+ str.releaseBuffer(len); -+ UnicodeString dest; -+ // Append it 16 times -+ // 0xAFFFFFF times 16 is 0xA4FFFFF1, -+ // which is greater than INT32_MAX, which is 0x7FFFFFFF. -+ int64_t total = 0; -+ for (int32_t i = 0; i < 16; i++) { -+ dest.append(str); -+ total += len; -+ if (total <= INT32_MAX) { -+ assertFalse("dest is not bogus", dest.isBogus()); -+ } else { -+ assertTrue("dest should be bogus", dest.isBogus()); -+ } -+ } -+ dest.remove(); -+ total = 0; -+ for (int32_t i = 0; i < 16; i++) { -+ dest.append(str); -+ total += len; -+ if (total + len <= INT32_MAX) { -+ assertFalse("dest is not bogus", dest.isBogus()); -+ } else if (total <= INT32_MAX) { -+ // Check that a string of exactly the maximum size works -+ UnicodeString str2; -+ int32_t remain = INT32_MAX - total; -+ char16_t *buf2 = str2.getBuffer(remain); -+ if (buf2 == nullptr) { -+ // if somehow memory allocation fail, return the test -+ return; -+ } -+ uprv_memset(buf2, 0x4e, remain * 2); -+ str2.releaseBuffer(remain); -+ dest.append(str2); -+ total += remain; -+ assertEquals("When a string of exactly the maximum size works", (int64_t)INT32_MAX, total); -+ assertEquals("When a string of exactly the maximum size works", INT32_MAX, dest.length()); -+ assertFalse("dest is not bogus", dest.isBogus()); -+ -+ // Check that a string size+1 goes bogus -+ str2.truncate(1); -+ dest.append(str2); -+ total++; -+ assertTrue("dest should be bogus", dest.isBogus()); -+ } else { -+ assertTrue("dest should be bogus", dest.isBogus()); -+ } -+ } -+} -diff --git a/source/test/intltest/ustrtest.h b/source/test/intltest/ustrtest.h -index 218befd..4a356a9 100644 ---- a/source/test/intltest/ustrtest.h -+++ b/source/test/intltest/ustrtest.h -@@ -97,6 +97,7 @@ public: - void TestWCharPointers(); - void TestNullPointers(); - void TestUnicodeStringInsertAppendToSelf(); -+ void TestLargeAppend(); - }; - - #endif diff --git a/runtime-optenv32/icu+32/spec b/runtime-optenv32/icu+32/spec index 7e230adb140..5bbd9728b31 100644 --- a/runtime-optenv32/icu+32/spec +++ b/runtime-optenv32/icu+32/spec @@ -1,5 +1,4 @@ -VER=64.2 -REL=5 +VER=74.2 SRCS="tbl::https://github.com/unicode-org/icu/releases/download/release-${VER//./-}/icu4c-${VER//./_}-src.tgz" -CHKSUMS="sha256::627d5d8478e6d96fc8c90fed4851239079a561a6a8b9e48b0892f24e82d31d6c" +CHKSUMS="sha256::68db082212a96d6f53e35d60f47d38b962e9f9d207a74cfac78029ae8ff5e08c" CHKUPDATE="anitya::id=16134" From f660a196c13931723e1dd3838743ae41ccce8c61 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 19 Nov 2024 21:05:27 +0800 Subject: [PATCH 042/722] libnl+32: update to 3.9.0 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libnl+32/autobuild/build | 10 ---------- runtime-optenv32/libnl+32/autobuild/defines | 7 ++++--- runtime-optenv32/libnl+32/spec | 5 ++--- 3 files changed, 6 insertions(+), 16 deletions(-) delete mode 100644 runtime-optenv32/libnl+32/autobuild/build diff --git a/runtime-optenv32/libnl+32/autobuild/build b/runtime-optenv32/libnl+32/autobuild/build deleted file mode 100644 index c0bb587a1c8..00000000000 --- a/runtime-optenv32/libnl+32/autobuild/build +++ /dev/null @@ -1,10 +0,0 @@ -export PATH=/opt/32/bin:$PATH -./configure --host=i686-pc-linux-gnu \ - --build=i686-pc-linux-gnu \ - --target=i686-pc-linux-gnu \ - --prefix=/opt/32 - -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{etc,sbin,share} diff --git a/runtime-optenv32/libnl+32/autobuild/defines b/runtime-optenv32/libnl+32/autobuild/defines index 9c6a6b93f3d..50ba57a9d4e 100644 --- a/runtime-optenv32/libnl+32/autobuild/defines +++ b/runtime-optenv32/libnl+32/autobuild/defines @@ -1,7 +1,8 @@ PKGNAME=libnl+32 -PKGDES="APIs to netlink protocol based Linux Kernel interfaces (optenv32)" -PKGDEP="glibc+32" PKGSEC=net +PKGDEP="glibc+32" +BUILDDEP="devel-base+32" +PKGDES="APIs to netlink protocol based Linux Kernel interfaces (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libnl+32/spec b/runtime-optenv32/libnl+32/spec index 9bb3b67d443..402f71ee527 100644 --- a/runtime-optenv32/libnl+32/spec +++ b/runtime-optenv32/libnl+32/spec @@ -1,5 +1,4 @@ -VER=3.2.28 +VER=3.9.0 SRCS="tbl::https://github.com/thom311/libnl/releases/download/libnl${VER//./_}/libnl-$VER.tar.gz" -CHKSUMS="sha256::cd608992c656e8f6e3ab6c1391b162a5a51c49336b9219f7f390e61fc5437c41" -REL=1 +CHKSUMS="sha256::aed507004d728a5cf11eab48ca4bf9e6e1874444e33939b9d3dfed25018ee9bb" CHKUPDATE="anitya::id=1684" From 6adb5d5c758a08f9b1c23d37008b7e3c2c698fd1 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 19 Nov 2024 21:18:43 +0800 Subject: [PATCH 043/722] nasm+32: update to 2.16.03 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/nasm+32/autobuild/beyond | 1 - runtime-optenv32/nasm+32/autobuild/build | 8 -------- runtime-optenv32/nasm+32/autobuild/defines | 7 ++++--- runtime-optenv32/nasm+32/spec | 7 +++---- 4 files changed, 7 insertions(+), 16 deletions(-) delete mode 100644 runtime-optenv32/nasm+32/autobuild/beyond delete mode 100644 runtime-optenv32/nasm+32/autobuild/build diff --git a/runtime-optenv32/nasm+32/autobuild/beyond b/runtime-optenv32/nasm+32/autobuild/beyond deleted file mode 100644 index a100a5d43a3..00000000000 --- a/runtime-optenv32/nasm+32/autobuild/beyond +++ /dev/null @@ -1 +0,0 @@ -chmod -R a-s "$SRCDIR" diff --git a/runtime-optenv32/nasm+32/autobuild/build b/runtime-optenv32/nasm+32/autobuild/build deleted file mode 100644 index 45e46a8f224..00000000000 --- a/runtime-optenv32/nasm+32/autobuild/build +++ /dev/null @@ -1,8 +0,0 @@ -export PATH=/opt/32/bin:$PATH -./configure --prefix=/opt/32 \ - CC=i686-pc-linux-gnu-gcc CXX=i686-pc-linux-gnu-g++ - -make -make install INSTALLROOT="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/share diff --git a/runtime-optenv32/nasm+32/autobuild/defines b/runtime-optenv32/nasm+32/autobuild/defines index 353f117faae..706a345999b 100644 --- a/runtime-optenv32/nasm+32/autobuild/defines +++ b/runtime-optenv32/nasm+32/autobuild/defines @@ -1,7 +1,8 @@ PKGNAME=nasm+32 -PKGDES="An 80x86 assembler designed for portability and modularity (optenv32)" -PKGDEP="glibc+32" PKGSEC=devel +PKGDEP="glibc+32" +BUILDDEP="devel-base+32" +PKGDES="An 80x86 assembler designed for portability and modularity (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/nasm+32/spec b/runtime-optenv32/nasm+32/spec index fa5d5790389..07c4827ac2e 100644 --- a/runtime-optenv32/nasm+32/spec +++ b/runtime-optenv32/nasm+32/spec @@ -1,5 +1,4 @@ -VER=2.12.01 -SRCS="tbl::https://www.nasm.us/pub/nasm/releasebuilds/$VER/nasm-$VER.tar.gz" -CHKSUMS="sha256::6a6b06de279b4ce8749d924a5d46bc29edff50126c57dcbc9d23e0f0f1375f17" -REL=2 +VER=2.16.03 +SRCS="tbl::https://www.nasm.us/pub/nasm/releasebuilds/$VER/nasm-$VER.tar.xz" +CHKSUMS="sha256::1412a1c760bbd05db026b6c0d1657affd6631cd0a63cddb6f73cc6d4aa616148" CHKUPDATE="anitya::id=2048" From 5acf9c32f6779c0b3157ac026a3936cc6acb6edb Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 19 Nov 2024 21:19:35 +0800 Subject: [PATCH 044/722] perl+32: drop, orphaned --- groups/optenv32 | 1 - runtime-optenv32/perl+32/autobuild/build | 2 -- runtime-optenv32/perl+32/autobuild/defines | 5 ----- runtime-optenv32/perl+32/spec | 4 ---- 4 files changed, 12 deletions(-) delete mode 100644 runtime-optenv32/perl+32/autobuild/build delete mode 100644 runtime-optenv32/perl+32/autobuild/defines delete mode 100644 runtime-optenv32/perl+32/spec diff --git a/groups/optenv32 b/groups/optenv32 index 38859504184..dd347fd55b2 100644 --- a/groups/optenv32 +++ b/groups/optenv32 @@ -38,7 +38,6 @@ libsidplay+32 icu+32 libnl+32 nasm+32 -perl+32 perl-xml-parser+32 tbb+32 recode+32 diff --git a/runtime-optenv32/perl+32/autobuild/build b/runtime-optenv32/perl+32/autobuild/build deleted file mode 100644 index f2bd0914731..00000000000 --- a/runtime-optenv32/perl+32/autobuild/build +++ /dev/null @@ -1,2 +0,0 @@ -export PATH=/opt/32/bin:$PATH -mkdir $PKGDIR diff --git a/runtime-optenv32/perl+32/autobuild/defines b/runtime-optenv32/perl+32/autobuild/defines deleted file mode 100644 index 9457f559203..00000000000 --- a/runtime-optenv32/perl+32/autobuild/defines +++ /dev/null @@ -1,5 +0,0 @@ -PKGNAME=perl+32 -PKGSEC=perl -PKGDES="Transitional package for perl" -NOLTO=1 -ABHOST=noarch diff --git a/runtime-optenv32/perl+32/spec b/runtime-optenv32/perl+32/spec deleted file mode 100644 index 3f57f943e16..00000000000 --- a/runtime-optenv32/perl+32/spec +++ /dev/null @@ -1,4 +0,0 @@ -VER=999 -DUMMYSRC=1 -REL=3 -CHKUPDATE="anitya::id=13599" From 790b8d288d0a3ae2fc54ca23b24d306f27e08b85 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 19 Nov 2024 21:26:17 +0800 Subject: [PATCH 045/722] perl-xml-parser+32: drop, orphaned --- groups/optenv32 | 1 - runtime-optenv32/perl-xml-parser+32/autobuild/build | 2 -- runtime-optenv32/perl-xml-parser+32/autobuild/defines | 5 ----- runtime-optenv32/perl-xml-parser+32/spec | 4 ---- 4 files changed, 12 deletions(-) delete mode 100644 runtime-optenv32/perl-xml-parser+32/autobuild/build delete mode 100644 runtime-optenv32/perl-xml-parser+32/autobuild/defines delete mode 100644 runtime-optenv32/perl-xml-parser+32/spec diff --git a/groups/optenv32 b/groups/optenv32 index dd347fd55b2..bd634ab51eb 100644 --- a/groups/optenv32 +++ b/groups/optenv32 @@ -38,7 +38,6 @@ libsidplay+32 icu+32 libnl+32 nasm+32 -perl-xml-parser+32 tbb+32 recode+32 enca+32 diff --git a/runtime-optenv32/perl-xml-parser+32/autobuild/build b/runtime-optenv32/perl-xml-parser+32/autobuild/build deleted file mode 100644 index f2bd0914731..00000000000 --- a/runtime-optenv32/perl-xml-parser+32/autobuild/build +++ /dev/null @@ -1,2 +0,0 @@ -export PATH=/opt/32/bin:$PATH -mkdir $PKGDIR diff --git a/runtime-optenv32/perl-xml-parser+32/autobuild/defines b/runtime-optenv32/perl-xml-parser+32/autobuild/defines deleted file mode 100644 index b20d6584bdd..00000000000 --- a/runtime-optenv32/perl-xml-parser+32/autobuild/defines +++ /dev/null @@ -1,5 +0,0 @@ -PKGNAME=perl-xml-parser+32 -PKGSEC=perl -PKGDES="Transitional package for perl-xml-parser" -NOLTO=1 -ABHOST=noarch diff --git a/runtime-optenv32/perl-xml-parser+32/spec b/runtime-optenv32/perl-xml-parser+32/spec deleted file mode 100644 index 0bb2c09c263..00000000000 --- a/runtime-optenv32/perl-xml-parser+32/spec +++ /dev/null @@ -1,4 +0,0 @@ -VER=999 -DUMMYSRC=1 -REL=3 -CHKUPDATE="anitya::id=3531" From eac13464b12492f23b1a44c44912eab096b1dd9e Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 24 Nov 2024 18:59:54 +0800 Subject: [PATCH 046/722] tbb+32: drop, orphaned --- groups/optenv32 | 1 - runtime-optenv32/32subsystem/autobuild/defines | 2 +- runtime-optenv32/tbb+32/autobuild/build | 13 ------------- runtime-optenv32/tbb+32/autobuild/defines | 7 ------- runtime-optenv32/tbb+32/spec | 5 ----- 5 files changed, 1 insertion(+), 27 deletions(-) delete mode 100644 runtime-optenv32/tbb+32/autobuild/build delete mode 100644 runtime-optenv32/tbb+32/autobuild/defines delete mode 100644 runtime-optenv32/tbb+32/spec diff --git a/groups/optenv32 b/groups/optenv32 index bd634ab51eb..acb40632ae5 100644 --- a/groups/optenv32 +++ b/groups/optenv32 @@ -38,7 +38,6 @@ libsidplay+32 icu+32 libnl+32 nasm+32 -tbb+32 recode+32 enca+32 vulkan-headers+32 diff --git a/runtime-optenv32/32subsystem/autobuild/defines b/runtime-optenv32/32subsystem/autobuild/defines index 2905e4fdc20..db809f31040 100644 --- a/runtime-optenv32/32subsystem/autobuild/defines +++ b/runtime-optenv32/32subsystem/autobuild/defines @@ -22,7 +22,7 @@ mjpegtools+32 mp4v2+32 mpc+32 mpfr+32 mpg123+32 nasm+32 ncurses+32 neon+32 nettl nss+32 openal-soft+32 opencore-amr+32 openjpeg-legacy+32 openldap+32 openssl+32 opus+32 orc+32 \ p11-kit+32 pango+32 pcre+32 perl+32 perl-xml-parser+32 pixman+32 pkg-config+32 poppler+32 \ popt+32 portaudio+32 pulseaudio+32 readline+32 rtmpdump+32 s2tc+32 sbc+32 \ -schroedinger+32 sdl+32 sdl-ttf+32 soundtouch+32 speex+32 sqlite+32 srtp+32 taglib+32 tbb+32 \ +schroedinger+32 sdl+32 sdl-ttf+32 soundtouch+32 speex+32 sqlite+32 srtp+32 taglib+32 \ tcl+32 tk+32 twolame+32 util-linux+32 util-macros+32 v4l-utils+32 wavpack+32 wildmidi+32 \ wxgtk+32 wxgtk-3+32 x11-lib+32 x11-proto+32 x264+32 x265+32 xcb-proto+32 xz+32 zlib+32 \ gsm+32 fribidi+32 recode+32 enca+32 libass+32 gst-libav-1-0+32 ffmpeg+32 xvidcore+32 \ diff --git a/runtime-optenv32/tbb+32/autobuild/build b/runtime-optenv32/tbb+32/autobuild/build deleted file mode 100644 index b2435332a8f..00000000000 --- a/runtime-optenv32/tbb+32/autobuild/build +++ /dev/null @@ -1,13 +0,0 @@ -export PATH=/opt/32/bin:$PATH -export PATH="/opt/32/bin:$PATH" - -CC=i686-pc-linux-gnu-gcc -CXX=i686-pc-linux-gnu-g++ - -make arch=ia32 CPLUS_FLAGS="$CPPFLAGS $CXXFLAGS" - -install -d "$PKGDIR"/opt/32/lib -install -m755 build/linux_*/*.so* "$PKGDIR"/opt/32/lib -install -d "$PKGDIR"/opt/32/include -cp -a include/tbb "$PKGDIR"/opt/32/include - diff --git a/runtime-optenv32/tbb+32/autobuild/defines b/runtime-optenv32/tbb+32/autobuild/defines deleted file mode 100644 index e5244670df2..00000000000 --- a/runtime-optenv32/tbb+32/autobuild/defines +++ /dev/null @@ -1,7 +0,0 @@ -PKGNAME=tbb+32 -PKGSEC=libs -PKGDEP="glibc+32" -PKGDES="Intel Threading Building Blocks - high level abstract threading library (optenv32)" - -NOLTO=1 -ABHOST=noarch diff --git a/runtime-optenv32/tbb+32/spec b/runtime-optenv32/tbb+32/spec deleted file mode 100644 index 1476085d6b4..00000000000 --- a/runtime-optenv32/tbb+32/spec +++ /dev/null @@ -1,5 +0,0 @@ -VER=4.4u4 -SRCS="tbl::https://www.threadingbuildingblocks.org/sites/default/files/software_releases/source/tbb44_20160413oss_src.tgz" -CHKSUMS="sha256::3fecffef5e42f9f22e51a81a1bfa89ea40cefb439d168c285c9d5f0128353644" -REL=3 -CHKUPDATE="anitya::id=8217" From 703f83e78c01d66a2281a49981ec081feacd3b76 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 24 Nov 2024 19:09:50 +0800 Subject: [PATCH 047/722] recode+32: update to 3.7.14 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/recode+32/autobuild/build | 10 - runtime-optenv32/recode+32/autobuild/defines | 8 +- runtime-optenv32/recode+32/autobuild/patch | 11 - .../recode+32/autobuild/patches/as-if.patch | 19 - .../recode+32/autobuild/patches/gcc43.patch | 20 - .../autobuild/patches/gettext-fix.patch | 23 - .../autobuild/patches/recode_3.6-17.diff | 39081 ---------------- runtime-optenv32/recode+32/spec | 7 +- 8 files changed, 8 insertions(+), 39171 deletions(-) delete mode 100644 runtime-optenv32/recode+32/autobuild/build delete mode 100644 runtime-optenv32/recode+32/autobuild/patch delete mode 100644 runtime-optenv32/recode+32/autobuild/patches/as-if.patch delete mode 100644 runtime-optenv32/recode+32/autobuild/patches/gcc43.patch delete mode 100644 runtime-optenv32/recode+32/autobuild/patches/gettext-fix.patch delete mode 100644 runtime-optenv32/recode+32/autobuild/patches/recode_3.6-17.diff diff --git a/runtime-optenv32/recode+32/autobuild/build b/runtime-optenv32/recode+32/autobuild/build deleted file mode 100644 index 3c4709b7fa7..00000000000 --- a/runtime-optenv32/recode+32/autobuild/build +++ /dev/null @@ -1,10 +0,0 @@ -export PATH=/opt/32/bin:$PATH -./configure --prefix=/opt/32 \ - --build=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --target=i686-pc-linux-gnu \ - CC=i686-pc-linux-gnu-gcc -make -make install DESTDIR="$PKGDIR" - -rm -r "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/recode+32/autobuild/defines b/runtime-optenv32/recode+32/autobuild/defines index b7a9b8ba83d..13fae3a4005 100644 --- a/runtime-optenv32/recode+32/autobuild/defines +++ b/runtime-optenv32/recode+32/autobuild/defines @@ -1,8 +1,10 @@ PKGNAME=recode+32 PKGSEC=utils PKGDEP="glibc+32" -PKGDES="Converts file between various character sets and usages (opten32)" +BUILDDEP="devel-base+32" +PKGDES="Converts file between various character sets and usages (32-bit x86 runtime)" + +AUTOTOOLS_AFTER="PYTHON=/usr/bin/python3" -AUTOTOOLS_AFTER="--without-included-gettext" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/recode+32/autobuild/patch b/runtime-optenv32/recode+32/autobuild/patch deleted file mode 100644 index 46548170b16..00000000000 --- a/runtime-optenv32/recode+32/autobuild/patch +++ /dev/null @@ -1,11 +0,0 @@ -patch -Np1 -i autobuild/patches/gettext-fix.patch -patch -Np1 -i autobuild/patches/as-if.patch -patch -Np1 -i autobuild/patches/recode_3.6-17.diff - -sed -i '1i#include ' src/argmatch.c -sed -i -e '/^AM_C_PROTOTYPES/d' -e '/^AUTOMAKE_OPTIONS.*ansi2knr/d' \ - configure.in src/Makefile.am - -rm -f acinclude.m4 -autoreconf -fi -libtoolize diff --git a/runtime-optenv32/recode+32/autobuild/patches/as-if.patch b/runtime-optenv32/recode+32/autobuild/patches/as-if.patch deleted file mode 100644 index c7bcc27c875..00000000000 --- a/runtime-optenv32/recode+32/autobuild/patches/as-if.patch +++ /dev/null @@ -1,19 +0,0 @@ -http://bugs.gentoo.org/283029 - ---- a/m4/flex.m4 -+++ b/m4/flex.m4 -@@ -8,11 +8,11 @@ dnl ad_AC_PROG_FLEX - dnl Look for flex or missing, then run AC_PROG_LEX and AC_DECL_YYTEXT - AC_DEFUN(ad_AC_PROG_FLEX, - [AC_CHECK_PROGS(LEX, flex, missing) --if test "$LEX" = missing; then -+AS_IF([test "$LEX" = missing], [dnl - LEX="\$(top_srcdir)/$ac_aux_dir/missing flex" - LEX_OUTPUT_ROOT=lex.yy - AC_SUBST(LEX_OUTPUT_ROOT)dnl --else -+], [: - AC_PROG_LEX - AC_DECL_YYTEXT --fi]) -+])]) diff --git a/runtime-optenv32/recode+32/autobuild/patches/gcc43.patch b/runtime-optenv32/recode+32/autobuild/patches/gcc43.patch deleted file mode 100644 index beaf26e9a3e..00000000000 --- a/runtime-optenv32/recode+32/autobuild/patches/gcc43.patch +++ /dev/null @@ -1,20 +0,0 @@ -http://bugs.gentoo.org/209036 - -fix building with gcc-4.3 - ---- src/recodext.h 2008-04-03 18:35:42 +0000 -+++ src/recodext.h 2008-04-03 18:36:32 +0000 -@@ -215,10 +215,10 @@ - struct recode_single *unsurfacer; - - /* Non zero if this is an acceptable charset (not only a surface). */ -- enum recode_symbol_type type : 3; -+ enum recode_symbol_type type : 2; - - /* Non zero if this one should be ignored. */ -- bool ignore : 2; -+ bool ignore : 1; - }; - - struct recode_surface_list - diff --git a/runtime-optenv32/recode+32/autobuild/patches/gettext-fix.patch b/runtime-optenv32/recode+32/autobuild/patches/gettext-fix.patch deleted file mode 100644 index 3b7eb8ba20e..00000000000 --- a/runtime-optenv32/recode+32/autobuild/patches/gettext-fix.patch +++ /dev/null @@ -1,23 +0,0 @@ -http://bugs.gentoo.org/239372 - -patch by Dmitry Karasik - ---- recode-3.6/m4/gettext.m4 -+++ recode-3.6/m4/gettext.m4 -@@ -109,12 +109,12 @@ - else - ac_items="$LINGUAS" - for ac_item in $ac_items; do -- case "$ALL_LINGUAS" in -- *$ac_item*) -+ for supported_item in $ALL_LINGUAS; do -+ if test "$ac_item" = "$supported_item"; then - ac_print="$ac_print $ac_item" - MOFILES="$MOFILES $ac_item.mo" -- ;; -- esac -+ fi -+ done - done - fi - AC_SUBST(MOFILES) diff --git a/runtime-optenv32/recode+32/autobuild/patches/recode_3.6-17.diff b/runtime-optenv32/recode+32/autobuild/patches/recode_3.6-17.diff deleted file mode 100644 index cb557caa551..00000000000 --- a/runtime-optenv32/recode+32/autobuild/patches/recode_3.6-17.diff +++ /dev/null @@ -1,39081 +0,0 @@ ---- recode-3.6.orig/config.sub -+++ recode-3.6/config.sub -@@ -1,6 +1,11 @@ - #! /bin/sh --# Configuration validation subroutine script, version 1.1. --# Copyright (C) 1991, 92-97, 1998, 1999 Free Software Foundation, Inc. -+# Configuration validation subroutine script. -+# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -+# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 -+# Free Software Foundation, Inc. -+ -+timestamp='2009-06-11' -+ - # This file is (in principle) common to ALL GNU software. - # The presence of a machine in this file suggests that SOME GNU software - # can handle that machine. It does not imply ALL GNU software can. -@@ -17,14 +22,18 @@ - # - # You should have received a copy of the GNU General Public License - # along with this program; if not, write to the Free Software --# Foundation, Inc., 59 Temple Place - Suite 330, --# Boston, MA 02111-1307, USA. -- -+# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA -+# 02110-1301, USA. -+# - # As a special exception to the GNU General Public License, if you - # distribute this file as part of a program that contains a - # configuration script generated by Autoconf, you may include it under - # the same distribution terms that you use for the rest of that program. - -+ -+# Please send patches to . Submit a context -+# diff and a properly formatted ChangeLog entry. -+# - # Configuration subroutine to validate and canonicalize a configuration type. - # Supply the specified configuration type as an argument. - # If it is invalid, we print an error message on stderr and exit with code 1. -@@ -45,30 +54,76 @@ - # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM - # It is wrong to echo any other type of specification. - --if [ x$1 = x ] --then -- echo Configuration name missing. 1>&2 -- echo "Usage: $0 CPU-MFR-OPSYS" 1>&2 -- echo "or $0 ALIAS" 1>&2 -- echo where ALIAS is a recognized configuration type. 1>&2 -- exit 1 --fi -+me=`echo "$0" | sed -e 's,.*/,,'` - --# First pass through any local machine types. --case $1 in -- *local*) -- echo $1 -- exit 0 -- ;; -- *) -- ;; -+usage="\ -+Usage: $0 [OPTION] CPU-MFR-OPSYS -+ $0 [OPTION] ALIAS -+ -+Canonicalize a configuration name. -+ -+Operation modes: -+ -h, --help print this help, then exit -+ -t, --time-stamp print date of last modification, then exit -+ -v, --version print version number, then exit -+ -+Report bugs and patches to ." -+ -+version="\ -+GNU config.sub ($timestamp) -+ -+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, -+2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. -+ -+This is free software; see the source for copying conditions. There is NO -+warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." -+ -+help=" -+Try \`$me --help' for more information." -+ -+# Parse command line -+while test $# -gt 0 ; do -+ case $1 in -+ --time-stamp | --time* | -t ) -+ echo "$timestamp" ; exit ;; -+ --version | -v ) -+ echo "$version" ; exit ;; -+ --help | --h* | -h ) -+ echo "$usage"; exit ;; -+ -- ) # Stop option processing -+ shift; break ;; -+ - ) # Use stdin as input. -+ break ;; -+ -* ) -+ echo "$me: invalid option $1$help" -+ exit 1 ;; -+ -+ *local*) -+ # First pass through any local machine types. -+ echo $1 -+ exit ;; -+ -+ * ) -+ break ;; -+ esac -+done -+ -+case $# in -+ 0) echo "$me: missing argument$help" >&2 -+ exit 1;; -+ 1) ;; -+ *) echo "$me: too many arguments$help" >&2 -+ exit 1;; - esac - - # Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). - # Here we must recognize all the valid KERNEL-OS combinations. - maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` - case $maybe_os in -- linux-gnu*) -+ nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \ -+ uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \ -+ kopensolaris*-gnu* | \ -+ storm-chaos* | os2-emx* | rtmk-nova*) - os=-$maybe_os - basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` - ;; -@@ -94,10 +149,13 @@ - -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ - -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ - -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ -- -apple) -+ -apple | -axis | -knuth | -cray) - os= - basic_machine=$1 - ;; -+ -bluegene*) -+ os=-cnk -+ ;; - -sim | -cisco | -oki | -wec | -winbond) - os= - basic_machine=$1 -@@ -108,9 +166,21 @@ - os=-vxworks - basic_machine=$1 - ;; -+ -chorusos*) -+ os=-chorusos -+ basic_machine=$1 -+ ;; -+ -chorusrdb) -+ os=-chorusrdb -+ basic_machine=$1 -+ ;; - -hiux*) - os=-hiuxwe2 - ;; -+ -sco6) -+ os=-sco5v6 -+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` -+ ;; - -sco5) - os=-sco3.2v5 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` -@@ -127,6 +197,10 @@ - # Don't forget version if it is 3.2v4 or newer. - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` - ;; -+ -sco5v6*) -+ # Don't forget version if it is 3.2v4 or newer. -+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` -+ ;; - -sco*) - os=-sco3.2v2 - basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` -@@ -166,27 +240,78 @@ - case $basic_machine in - # Recognize the basic CPU types without company name. - # Some are omitted here because they have special meanings below. -- tahoe | i860 | ia64 | m32r | m68k | m68000 | m88k | ns32k | arc | arm \ -- | arme[lb] | pyramid | mn10200 | mn10300 | tron | a29k \ -- | 580 | i960 | h8300 \ -- | hppa | hppa1.0 | hppa1.1 | hppa2.0 | hppa2.0w | hppa2.0n \ -- | alpha | alphaev[4-7] | alphaev56 | alphapca5[67] \ -- | we32k | ns16k | clipper | i370 | sh | powerpc | powerpcle \ -- | 1750a | dsp16xx | pdp11 | mips16 | mips64 | mipsel | mips64el \ -- | mips64orion | mips64orionel | mipstx39 | mipstx39el \ -- | mips64vr4300 | mips64vr4300el | mips64vr4100 | mips64vr4100el \ -- | mips64vr5000 | miprs64vr5000el | mcore \ -- | sparc | sparclet | sparclite | sparc64 | sparcv9 | v850 | c4x \ -- | thumb | d10v) -+ 1750a | 580 \ -+ | a29k \ -+ | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ -+ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ -+ | am33_2.0 \ -+ | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ -+ | bfin \ -+ | c4x | clipper \ -+ | d10v | d30v | dlx | dsp16xx \ -+ | fido | fr30 | frv \ -+ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ -+ | i370 | i860 | i960 | ia64 \ -+ | ip2k | iq2000 \ -+ | lm32 \ -+ | m32c | m32r | m32rle | m68000 | m68k | m88k \ -+ | maxq | mb | microblaze | mcore | mep | metag \ -+ | mips | mipsbe | mipseb | mipsel | mipsle \ -+ | mips16 \ -+ | mips64 | mips64el \ -+ | mips64octeon | mips64octeonel \ -+ | mips64orion | mips64orionel \ -+ | mips64r5900 | mips64r5900el \ -+ | mips64vr | mips64vrel \ -+ | mips64vr4100 | mips64vr4100el \ -+ | mips64vr4300 | mips64vr4300el \ -+ | mips64vr5000 | mips64vr5000el \ -+ | mips64vr5900 | mips64vr5900el \ -+ | mipsisa32 | mipsisa32el \ -+ | mipsisa32r2 | mipsisa32r2el \ -+ | mipsisa64 | mipsisa64el \ -+ | mipsisa64r2 | mipsisa64r2el \ -+ | mipsisa64sb1 | mipsisa64sb1el \ -+ | mipsisa64sr71k | mipsisa64sr71kel \ -+ | mipstx39 | mipstx39el \ -+ | mn10200 | mn10300 \ -+ | moxie \ -+ | mt \ -+ | msp430 \ -+ | nios | nios2 \ -+ | ns16k | ns32k \ -+ | or32 \ -+ | pdp10 | pdp11 | pj | pjl \ -+ | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ -+ | pyramid \ -+ | score \ -+ | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ -+ | sh64 | sh64le \ -+ | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ -+ | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ -+ | spu | strongarm \ -+ | tahoe | thumb | tic4x | tic80 | tron \ -+ | v850 | v850e \ -+ | we32k \ -+ | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ -+ | z8k | z80) - basic_machine=$basic_machine-unknown - ;; -- m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | z8k | v70 | h8500 | w65) -+ m6811 | m68hc11 | m6812 | m68hc12) -+ # Motorola 68HC11/12. -+ basic_machine=$basic_machine-unknown -+ os=-none -+ ;; -+ m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) -+ ;; -+ ms1) -+ basic_machine=mt-unknown - ;; - - # We use `pc' rather than `unknown' - # because (1) that's what they normally are, and - # (2) the word "unknown" tends to confuse beginning users. -- i[34567]86) -+ i*86 | x86_64) - basic_machine=$basic_machine-pc - ;; - # Object if more than one company name word. -@@ -195,24 +320,73 @@ - exit 1 - ;; - # Recognize the basic CPU types with company name. -- # FIXME: clean up the formatting here. -- vax-* | tahoe-* | i[34567]86-* | i860-* | ia64-* | m32r-* | m68k-* | m68000-* \ -- | m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | arm-* | c[123]* \ -- | mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \ -- | power-* | none-* | 580-* | cray2-* | h8300-* | h8500-* | i960-* \ -- | xmp-* | ymp-* \ -- | hppa-* | hppa1.0-* | hppa1.1-* | hppa2.0-* | hppa2.0w-* | hppa2.0n-* \ -- | alpha-* | alphaev[4-7]-* | alphaev56-* | alphapca5[67]-* \ -- | we32k-* | cydra-* | ns16k-* | pn-* | np1-* | xps100-* \ -- | clipper-* | orion-* \ -- | sparclite-* | pdp11-* | sh-* | powerpc-* | powerpcle-* \ -- | sparc64-* | sparcv9-* | sparc86x-* | mips16-* | mips64-* | mipsel-* \ -- | mips64el-* | mips64orion-* | mips64orionel-* \ -- | mips64vr4100-* | mips64vr4100el-* | mips64vr4300-* | mips64vr4300el-* \ -- | mipstx39-* | mipstx39el-* | mcore-* \ -- | f301-* | armv*-* | t3e-* \ -- | m88110-* | m680[01234]0-* | m683?2-* | m68360-* | z8k-* | d10v-* \ -- | thumb-* | v850-* | d30v-* | tic30-* | c30-* ) -+ 580-* \ -+ | a29k-* \ -+ | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ -+ | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ -+ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ -+ | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ -+ | avr-* | avr32-* \ -+ | bfin-* | bs2000-* \ -+ | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ -+ | clipper-* | craynv-* | cydra-* \ -+ | d10v-* | d30v-* | dlx-* \ -+ | elxsi-* \ -+ | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ -+ | h8300-* | h8500-* \ -+ | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ -+ | i*86-* | i860-* | i960-* | ia64-* \ -+ | ip2k-* | iq2000-* \ -+ | lm32-* \ -+ | m32c-* | m32r-* | m32rle-* \ -+ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ -+ | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ -+ | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ -+ | mips16-* \ -+ | mips64-* | mips64el-* \ -+ | mips64octeon-* | mips64octeonel-* \ -+ | mips64orion-* | mips64orionel-* \ -+ | mips64r5900-* | mips64r5900el-* \ -+ | mips64vr-* | mips64vrel-* \ -+ | mips64vr4100-* | mips64vr4100el-* \ -+ | mips64vr4300-* | mips64vr4300el-* \ -+ | mips64vr5000-* | mips64vr5000el-* \ -+ | mips64vr5900-* | mips64vr5900el-* \ -+ | mipsisa32-* | mipsisa32el-* \ -+ | mipsisa32r2-* | mipsisa32r2el-* \ -+ | mipsisa64-* | mipsisa64el-* \ -+ | mipsisa64r2-* | mipsisa64r2el-* \ -+ | mipsisa64sb1-* | mipsisa64sb1el-* \ -+ | mipsisa64sr71k-* | mipsisa64sr71kel-* \ -+ | mipstx39-* | mipstx39el-* \ -+ | mmix-* \ -+ | mt-* \ -+ | msp430-* \ -+ | nios-* | nios2-* \ -+ | none-* | np1-* | ns16k-* | ns32k-* \ -+ | orion-* \ -+ | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ -+ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ -+ | pyramid-* \ -+ | romp-* | rs6000-* \ -+ | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ -+ | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ -+ | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ -+ | sparclite-* \ -+ | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ -+ | tahoe-* | thumb-* \ -+ | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \ -+ | tron-* \ -+ | v850-* | v850e-* | vax-* \ -+ | we32k-* \ -+ | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ -+ | xstormy16-* | xtensa*-* \ -+ | ymp-* \ -+ | z8k-* | z80-*) -+ ;; -+ # Recognize the basic CPU types without company name, with glob match. -+ xtensa*) -+ basic_machine=$basic_machine-unknown - ;; - # Recognize the various machine names and aliases which stand - # for a CPU type and a company and sometimes even an OS. -@@ -230,6 +404,9 @@ - basic_machine=a29k-amd - os=-udi - ;; -+ abacus) -+ basic_machine=abacus-unknown -+ ;; - adobe68k) - basic_machine=m68010-adobe - os=-scout -@@ -244,19 +421,25 @@ - basic_machine=a29k-none - os=-bsd - ;; -+ amd64) -+ basic_machine=x86_64-pc -+ ;; -+ amd64-*) -+ basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` -+ ;; - amdahl) - basic_machine=580-amdahl - os=-sysv - ;; - amiga | amiga-*) -- basic_machine=m68k-cbm -+ basic_machine=m68k-unknown - ;; - amigaos | amigados) -- basic_machine=m68k-cbm -+ basic_machine=m68k-unknown - os=-amigaos - ;; - amigaunix | amix) -- basic_machine=m68k-cbm -+ basic_machine=m68k-unknown - os=-sysv4 - ;; - apollo68) -@@ -267,6 +450,10 @@ - basic_machine=m68k-apollo - os=-bsd - ;; -+ aros) -+ basic_machine=i386-pc -+ os=-aros -+ ;; - aux) - basic_machine=m68k-apple - os=-aux -@@ -275,6 +462,26 @@ - basic_machine=ns32k-sequent - os=-dynix - ;; -+ blackfin) -+ basic_machine=bfin-unknown -+ os=-linux -+ ;; -+ blackfin-*) -+ basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` -+ os=-linux -+ ;; -+ bluegene*) -+ basic_machine=powerpc-ibm -+ os=-cnk -+ ;; -+ c90) -+ basic_machine=c90-cray -+ os=-unicos -+ ;; -+ cegcc) -+ basic_machine=arm-unknown -+ os=-cegcc -+ ;; - convex-c1) - basic_machine=c1-convex - os=-bsd -@@ -295,27 +502,45 @@ - basic_machine=c38-convex - os=-bsd - ;; -- cray | ymp) -- basic_machine=ymp-cray -+ cray | j90) -+ basic_machine=j90-cray - os=-unicos - ;; -- cray2) -- basic_machine=cray2-cray -- os=-unicos -+ craynv) -+ basic_machine=craynv-cray -+ os=-unicosmp - ;; -- [ctj]90-cray) -- basic_machine=c90-cray -- os=-unicos -+ cr16) -+ basic_machine=cr16-unknown -+ os=-elf - ;; - crds | unos) - basic_machine=m68k-crds - ;; -+ crisv32 | crisv32-* | etraxfs*) -+ basic_machine=crisv32-axis -+ ;; -+ cris | cris-* | etrax*) -+ basic_machine=cris-axis -+ ;; -+ crx) -+ basic_machine=crx-unknown -+ os=-elf -+ ;; - da30 | da30-*) - basic_machine=m68k-da30 - ;; - decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) - basic_machine=mips-dec - ;; -+ decsystem10* | dec10*) -+ basic_machine=pdp10-dec -+ os=-tops10 -+ ;; -+ decsystem20* | dec20*) -+ basic_machine=pdp10-dec -+ os=-tops20 -+ ;; - delta | 3300 | motorola-3300 | motorola-delta \ - | 3300-motorola | delta-motorola) - basic_machine=m68k-motorola -@@ -324,6 +549,14 @@ - basic_machine=m88k-motorola - os=-sysv3 - ;; -+ dicos) -+ basic_machine=i686-pc -+ os=-dicos -+ ;; -+ djgpp) -+ basic_machine=i586-pc -+ os=-msdosdjgpp -+ ;; - dpx20 | dpx20-*) - basic_machine=rs6000-bull - os=-bosx -@@ -357,6 +590,10 @@ - basic_machine=tron-gmicro - os=-sysv - ;; -+ go32) -+ basic_machine=i386-pc -+ os=-go32 -+ ;; - h3050r* | hiux*) - basic_machine=hppa1.1-hitachi - os=-hiuxwe2 -@@ -430,22 +667,21 @@ - ;; - i370-ibm* | ibm*) - basic_machine=i370-ibm -- os=-mvs - ;; - # I'm not sure what "Sysv32" means. Should this be sysv3.2? -- i[34567]86v32) -+ i*86v32) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv32 - ;; -- i[34567]86v4*) -+ i*86v4*) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv4 - ;; -- i[34567]86v) -+ i*86v) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-sysv - ;; -- i[34567]86sol2) -+ i*86sol2) - basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` - os=-solaris2 - ;; -@@ -457,14 +693,6 @@ - basic_machine=i386-unknown - os=-vsta - ;; -- i386-go32 | go32) -- basic_machine=i386-unknown -- os=-go32 -- ;; -- i386-mingw32 | mingw32) -- basic_machine=i386-unknown -- os=-mingw32 -- ;; - iris | iris4d) - basic_machine=mips-sgi - case $os in -@@ -479,6 +707,14 @@ - basic_machine=m68k-isi - os=-sysv - ;; -+ m68knommu) -+ basic_machine=m68k-unknown -+ os=-linux -+ ;; -+ m68knommu-*) -+ basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` -+ os=-linux -+ ;; - m88k-omron*) - basic_machine=m88k-omron - ;; -@@ -490,6 +726,14 @@ - basic_machine=ns32k-utek - os=-sysv - ;; -+ mingw32) -+ basic_machine=i386-pc -+ os=-mingw32 -+ ;; -+ mingw32ce) -+ basic_machine=arm-unknown -+ os=-mingw32ce -+ ;; - miniframe) - basic_machine=m68000-convergent - ;; -@@ -497,14 +741,6 @@ - basic_machine=m68k-atari - os=-mint - ;; -- mipsel*-linux*) -- basic_machine=mipsel-unknown -- os=-linux-gnu -- ;; -- mips*-linux*) -- basic_machine=mips-unknown -- os=-linux-gnu -- ;; - mips3*-*) - basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` - ;; -@@ -515,10 +751,21 @@ - basic_machine=m68k-rom68k - os=-coff - ;; -+ morphos) -+ basic_machine=powerpc-unknown -+ os=-morphos -+ ;; - msdos) -- basic_machine=i386-unknown -+ basic_machine=i386-pc - os=-msdos - ;; -+ ms1-*) -+ basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` -+ ;; -+ mvs) -+ basic_machine=i370-ibm -+ os=-mvs -+ ;; - ncr3000) - basic_machine=i486-ncr - os=-sysv4 -@@ -528,7 +775,7 @@ - os=-netbsd - ;; - netwinder) -- basic_machine=armv4l-corel -+ basic_machine=armv4l-rebel - os=-linux - ;; - news | news700 | news800 | news900) -@@ -576,13 +823,27 @@ - basic_machine=i960-intel - os=-mon960 - ;; -+ nonstopux) -+ basic_machine=mips-compaq -+ os=-nonstopux -+ ;; - np1) - basic_machine=np1-gould - ;; -+ nsr-tandem) -+ basic_machine=nsr-tandem -+ ;; - op50n-* | op60c-*) - basic_machine=hppa1.1-oki - os=-proelf - ;; -+ openrisc | openrisc-*) -+ basic_machine=or32-unknown -+ ;; -+ os400) -+ basic_machine=powerpc-ibm -+ os=-os400 -+ ;; - OSE68000 | ose68000) - basic_machine=m68000-ericsson - os=-ose -@@ -599,51 +860,89 @@ - basic_machine=i860-intel - os=-osf - ;; -+ parisc) -+ basic_machine=hppa-unknown -+ os=-linux -+ ;; -+ parisc-*) -+ basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` -+ os=-linux -+ ;; - pbd) - basic_machine=sparc-tti - ;; - pbb) - basic_machine=m68k-tti - ;; -- pc532 | pc532-*) -+ pc532 | pc532-*) - basic_machine=ns32k-pc532 - ;; -- pentium | p5 | k5 | k6 | nexen) -+ pc98) -+ basic_machine=i386-pc -+ ;; -+ pc98-*) -+ basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` -+ ;; -+ pentium | p5 | k5 | k6 | nexgen | viac3) - basic_machine=i586-pc - ;; -- pentiumpro | p6 | 6x86) -+ pentiumpro | p6 | 6x86 | athlon | athlon_*) -+ basic_machine=i686-pc -+ ;; -+ pentiumii | pentium2 | pentiumiii | pentium3) - basic_machine=i686-pc - ;; -- pentiumii | pentium2) -+ pentium4) - basic_machine=i786-pc - ;; -- pentium-* | p5-* | k5-* | k6-* | nexen-*) -+ pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) - basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; -- pentiumpro-* | p6-* | 6x86-*) -+ pentiumpro-* | p6-* | 6x86-* | athlon-*) -+ basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` -+ ;; -+ pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) - basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; -- pentiumii-* | pentium2-*) -+ pentium4-*) - basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - pn) - basic_machine=pn-gould - ;; -- power) basic_machine=rs6000-ibm -+ power) basic_machine=power-ibm - ;; - ppc) basic_machine=powerpc-unknown -- ;; -+ ;; - ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; - ppcle | powerpclittle | ppc-le | powerpc-little) - basic_machine=powerpcle-unknown -- ;; -+ ;; - ppcle-* | powerpclittle-*) - basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` - ;; -+ ppc64) basic_machine=powerpc64-unknown -+ ;; -+ ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` -+ ;; -+ ppc64le | powerpc64little | ppc64-le | powerpc64-little) -+ basic_machine=powerpc64le-unknown -+ ;; -+ ppc64le-* | powerpc64little-*) -+ basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` -+ ;; - ps2) - basic_machine=i386-ibm - ;; -+ pw32) -+ basic_machine=i586-unknown -+ os=-pw32 -+ ;; -+ rdos) -+ basic_machine=i386-pc -+ os=-rdos -+ ;; - rom68k) - basic_machine=m68k-rom68k - os=-coff -@@ -654,10 +953,30 @@ - rtpc | rtpc-*) - basic_machine=romp-ibm - ;; -+ s390 | s390-*) -+ basic_machine=s390-ibm -+ ;; -+ s390x | s390x-*) -+ basic_machine=s390x-ibm -+ ;; - sa29200) - basic_machine=a29k-amd - os=-udi - ;; -+ sb1) -+ basic_machine=mipsisa64sb1-unknown -+ ;; -+ sb1el) -+ basic_machine=mipsisa64sb1el-unknown -+ ;; -+ sde) -+ basic_machine=mipsisa32-sde -+ os=-elf -+ ;; -+ sei) -+ basic_machine=mips-sei -+ os=-seiux -+ ;; - sequent) - basic_machine=i386-sequent - ;; -@@ -665,7 +984,13 @@ - basic_machine=sh-hitachi - os=-hms - ;; -- sparclite-wrs) -+ sh5el) -+ basic_machine=sh5le-unknown -+ ;; -+ sh64) -+ basic_machine=sh64-unknown -+ ;; -+ sparclite-wrs | simso-wrs) - basic_machine=sparclite-wrs - os=-vxworks - ;; -@@ -723,23 +1048,55 @@ - sun386 | sun386i | roadrunner) - basic_machine=i386-sun - ;; -+ sv1) -+ basic_machine=sv1-cray -+ os=-unicos -+ ;; - symmetry) - basic_machine=i386-sequent - os=-dynix - ;; - t3e) -- basic_machine=t3e-cray -+ basic_machine=alphaev5-cray - os=-unicos - ;; -+ t90) -+ basic_machine=t90-cray -+ os=-unicos -+ ;; -+ tic54x | c54x*) -+ basic_machine=tic54x-unknown -+ os=-coff -+ ;; -+ tic55x | c55x*) -+ basic_machine=tic55x-unknown -+ os=-coff -+ ;; -+ tic6x | c6x*) -+ basic_machine=tic6x-unknown -+ os=-coff -+ ;; -+ tile*) -+ basic_machine=tile-unknown -+ os=-linux-gnu -+ ;; - tx39) - basic_machine=mipstx39-unknown - ;; - tx39el) - basic_machine=mipstx39el-unknown - ;; -+ toad1) -+ basic_machine=pdp10-xkl -+ os=-tops20 -+ ;; - tower | tower-32) - basic_machine=m68k-ncr - ;; -+ tpf) -+ basic_machine=s390x-ibm -+ os=-tpf -+ ;; - udi29k) - basic_machine=a29k-amd - os=-udi -@@ -761,8 +1118,8 @@ - os=-vms - ;; - vpp*|vx|vx-*) -- basic_machine=f301-fujitsu -- ;; -+ basic_machine=f301-fujitsu -+ ;; - vxworks960) - basic_machine=i960-wrs - os=-vxworks -@@ -783,17 +1140,25 @@ - basic_machine=hppa1.1-winbond - os=-proelf - ;; -- xmp) -- basic_machine=xmp-cray -- os=-unicos -+ xbox) -+ basic_machine=i686-pc -+ os=-mingw32 - ;; -- xps | xps100) -+ xps | xps100) - basic_machine=xps100-honeywell - ;; -+ ymp) -+ basic_machine=ymp-cray -+ os=-unicos -+ ;; - z8k-*-coff) - basic_machine=z8k-unknown - os=-sim - ;; -+ z80-*-coff) -+ basic_machine=z80-unknown -+ os=-sim -+ ;; - none) - basic_machine=none-none - os=-none -@@ -810,32 +1175,35 @@ - op60c) - basic_machine=hppa1.1-oki - ;; -- mips) -- if [ x$os = x-linux-gnu ]; then -- basic_machine=mips-unknown -- else -- basic_machine=mips-mips -- fi -- ;; - romp) - basic_machine=romp-ibm - ;; -+ mmix) -+ basic_machine=mmix-knuth -+ ;; - rs6000) - basic_machine=rs6000-ibm - ;; - vax) - basic_machine=vax-dec - ;; -+ pdp10) -+ # there are many clones, so DEC is not a safe bet -+ basic_machine=pdp10-unknown -+ ;; - pdp11) - basic_machine=pdp11-dec - ;; - we32k) - basic_machine=we32k-att - ;; -- sparc | sparcv9) -+ sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) -+ basic_machine=sh-unknown -+ ;; -+ sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) - basic_machine=sparc-sun - ;; -- cydra) -+ cydra) - basic_machine=cydra-cydrome - ;; - orion) -@@ -850,9 +1218,8 @@ - pmac | pmac-mpw) - basic_machine=powerpc-apple - ;; -- c4x*) -- basic_machine=c4x-none -- os=-coff -+ *-unknown) -+ # Make sure to match an already-canonicalized machine name. - ;; - *) - echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 -@@ -900,28 +1267,56 @@ - # Each alternative MUST END IN A *, to match a version number. - # -sysv* is not here because it comes later, after sysvr4. - -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ -- | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ -+ | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ - | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ -+ | -kopensolaris* \ - | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ -- | -aos* \ -+ | -aos* | -aros* \ - | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ - | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ -- | -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \ -- | -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ -+ | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ -+ | -openbsd* | -solidbsd* \ -+ | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ -+ | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ - | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ - | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ -+ | -chorusos* | -chorusrdb* | -cegcc* \ - | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ -- | -mingw32* | -linux-gnu* | -uxpv* | -beos* | -mpeix* | -udk* \ -- | -interix* | -uwin* | -rhapsody* | -openstep* | -oskit*) -+ | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \ -+ | -uxpv* | -beos* | -mpeix* | -udk* \ -+ | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ -+ | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ -+ | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ -+ | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ -+ | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ -+ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ -+ | -skyos* | -haiku* | -rdos* | -toppers* | -drops*) - # Remember, each alternative MUST END IN *, to match a version number. - ;; -+ -qnx*) -+ case $basic_machine in -+ x86-* | i*86-*) -+ ;; -+ *) -+ os=-nto$os -+ ;; -+ esac -+ ;; -+ -nto-qnx*) -+ ;; -+ -nto*) -+ os=`echo $os | sed -e 's|nto|nto-qnx|'` -+ ;; - -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ -- | -windows* | -osx | -abug | -netware* | -os9* | -beos* \ -- | -macos* | -mpw* | -magic* | -mon960* | -lnews*) -+ | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ -+ | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) - ;; - -mac*) - os=`echo $os | sed -e 's|mac|macos|'` - ;; -+ -linux-dietlibc) -+ os=-linux-dietlibc -+ ;; - -linux*) - os=`echo $os | sed -e 's|linux|linux-gnu|'` - ;; -@@ -931,6 +1326,15 @@ - -sunos6*) - os=`echo $os | sed -e 's|sunos6|solaris3|'` - ;; -+ -opened*) -+ os=-openedition -+ ;; -+ -os400*) -+ os=-os400 -+ ;; -+ -wince*) -+ os=-wince -+ ;; - -osfrose*) - os=-osfrose - ;; -@@ -946,14 +1350,26 @@ - -acis*) - os=-aos - ;; -+ -atheos*) -+ os=-atheos -+ ;; -+ -syllable*) -+ os=-syllable -+ ;; - -386bsd) - os=-bsd - ;; - -ctix* | -uts*) - os=-sysv - ;; -+ -nova*) -+ os=-rtmk-nova -+ ;; - -ns2 ) -- os=-nextstep2 -+ os=-nextstep2 -+ ;; -+ -nsk*) -+ os=-nsk - ;; - # Preserve the version number of sinix5. - -sinix5.*) -@@ -962,6 +1378,9 @@ - -sinix*) - os=-sysv4 - ;; -+ -tpf*) -+ os=-tpf -+ ;; - -triton*) - os=-sysv3 - ;; -@@ -989,8 +1408,20 @@ - -xenix) - os=-xenix - ;; -- -*mint | -*MiNT) -- os=-mint -+ -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) -+ os=-mint -+ ;; -+ -aros*) -+ os=-aros -+ ;; -+ -kaos*) -+ os=-kaos -+ ;; -+ -zvmoe) -+ os=-zvmoe -+ ;; -+ -dicos*) -+ os=-dicos - ;; - -none) - ;; -@@ -1014,16 +1445,29 @@ - # system, and we'll never get to this point. - - case $basic_machine in -+ score-*) -+ os=-elf -+ ;; -+ spu-*) -+ os=-elf -+ ;; - *-acorn) - os=-riscix1.2 - ;; -- arm*-corel) -+ arm*-rebel) - os=-linux - ;; - arm*-semi) - os=-aout - ;; -- pdp11-*) -+ c4x-* | tic4x-*) -+ os=-coff -+ ;; -+ # This must come before the *-dec entry. -+ pdp10-*) -+ os=-tops20 -+ ;; -+ pdp11-*) - os=-none - ;; - *-dec | vax-*) -@@ -1044,12 +1488,18 @@ - m68*-cisco) - os=-aout - ;; -+ mep-*) -+ os=-elf -+ ;; - mips*-cisco) - os=-elf - ;; - mips*-*) - os=-elf - ;; -+ or32-*) -+ os=-coff -+ ;; - *-tti) # must be before sparc entry or we get the wrong os. - os=-sysv3 - ;; -@@ -1059,9 +1509,15 @@ - *-be) - os=-beos - ;; -+ *-haiku) -+ os=-haiku -+ ;; - *-ibm) - os=-aix - ;; -+ *-knuth) -+ os=-mmixware -+ ;; - *-wec) - os=-proelf - ;; -@@ -1113,25 +1569,25 @@ - *-next) - os=-nextstep3 - ;; -- *-gould) -+ *-gould) - os=-sysv - ;; -- *-highlevel) -+ *-highlevel) - os=-bsd - ;; - *-encore) - os=-bsd - ;; -- *-sgi) -+ *-sgi) - os=-irix - ;; -- *-siemens) -+ *-siemens) - os=-sysv4 - ;; - *-masscomp) - os=-rtu - ;; -- f301-fujitsu) -+ f30[01]-fujitsu | f700-fujitsu) - os=-uxpv - ;; - *-rom68k) -@@ -1164,7 +1620,7 @@ - -sunos*) - vendor=sun - ;; -- -aix*) -+ -cnk*|-aix*) - vendor=ibm - ;; - -beos*) -@@ -1191,13 +1647,19 @@ - -genix*) - vendor=ns - ;; -- -mvs*) -+ -mvs* | -opened*) -+ vendor=ibm -+ ;; -+ -os400*) - vendor=ibm - ;; - -ptx*) - vendor=sequent - ;; -- -vxsim* | -vxworks*) -+ -tpf*) -+ vendor=ibm -+ ;; -+ -vxsim* | -vxworks* | -windiss*) - vendor=wrs - ;; - -aux*) -@@ -1209,12 +1671,23 @@ - -mpw* | -macos*) - vendor=apple - ;; -- -*mint | -*MiNT) -+ -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) - vendor=atari - ;; -+ -vos*) -+ vendor=stratus -+ ;; - esac - basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` - ;; - esac - - echo $basic_machine$os -+exit -+ -+# Local variables: -+# eval: (add-hook 'write-file-hooks 'time-stamp) -+# time-stamp-start: "timestamp='" -+# time-stamp-format: "%:y-%02m-%02d" -+# time-stamp-end: "'" -+# End: ---- recode-3.6.orig/acinclude.m4 -+++ recode-3.6/acinclude.m4 -@@ -1,5 +1,6 @@ --## libtool.m4 - Configure libtool for the target system. -*-Shell-script-*- --## Copyright (C) 1996-1999 Free Software Foundation, Inc. -+# libtool.m4 - Configure libtool for the host system. -*-Shell-script-*- -+## Copyright 1996, 1997, 1998, 1999, 2000, 2001 -+## Free Software Foundation, Inc. - ## Originally by Gordon Matzigkeit , 1996 - ## - ## This program is free software; you can redistribute it and/or modify -@@ -21,134 +22,3028 @@ - ## configuration script generated by Autoconf, you may include it under - ## the same distribution terms that you use for the rest of that program. - --# serial 40 AC_PROG_LIBTOOL --AC_DEFUN(AC_PROG_LIBTOOL, -+# serial 46 AC_PROG_LIBTOOL -+# Debian $Rev: 50 $ -+ -+AC_DEFUN([AC_PROG_LIBTOOL], - [AC_REQUIRE([AC_LIBTOOL_SETUP])dnl - --# Save cache, so that ltconfig can load it --AC_CACHE_SAVE -+# This can be used to rebuild libtool when needed -+LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh" -+ -+# Always use our own libtool. -+LIBTOOL='$(SHELL) $(top_builddir)/libtool' -+AC_SUBST(LIBTOOL)dnl -+ -+# Prevent multiple expansion -+define([AC_PROG_LIBTOOL], []) -+]) -+ -+AC_DEFUN([AC_LIBTOOL_SETUP], -+[AC_PREREQ(2.13)dnl -+AC_REQUIRE([AC_ENABLE_SHARED])dnl -+AC_REQUIRE([AC_ENABLE_STATIC])dnl -+AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl -+AC_REQUIRE([AC_CANONICAL_HOST])dnl -+AC_REQUIRE([AC_CANONICAL_BUILD])dnl -+AC_REQUIRE([AC_PROG_CC])dnl -+AC_REQUIRE([AC_PROG_LD])dnl -+AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl -+AC_REQUIRE([AC_PROG_NM])dnl -+AC_REQUIRE([LT_AC_PROG_SED])dnl -+ -+AC_REQUIRE([AC_PROG_LN_S])dnl -+AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl -+AC_REQUIRE([AC_OBJEXT])dnl -+AC_REQUIRE([AC_EXEEXT])dnl -+dnl -+ -+_LT_AC_PROG_ECHO_BACKSLASH -+# Only perform the check for file, if the check method requires it -+case $deplibs_check_method in -+file_magic*) -+ if test "$file_magic_cmd" = '$MAGIC_CMD'; then -+ AC_PATH_MAGIC -+ fi -+ ;; -+esac -+ -+AC_CHECK_TOOL(RANLIB, ranlib, :) -+AC_CHECK_TOOL(STRIP, strip, :) -+ -+ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN], enable_dlopen=yes, enable_dlopen=no) -+ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], -+enable_win32_dll=yes, enable_win32_dll=no) -+ -+AC_ARG_ENABLE(libtool-lock, -+ [ --disable-libtool-lock avoid locking (might break parallel builds)]) -+test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes -+ -+# Some flags need to be propagated to the compiler or linker for good -+# libtool support. -+case $host in -+*-*-irix6*) -+ # Find out which ABI we are using. -+ echo '[#]line __oline__ "configure"' > conftest.$ac_ext -+ if AC_TRY_EVAL(ac_compile); then -+ case `/usr/bin/file conftest.$ac_objext` in -+ *32-bit*) -+ LD="${LD-ld} -32" -+ ;; -+ *N32*) -+ LD="${LD-ld} -n32" -+ ;; -+ *64-bit*) -+ LD="${LD-ld} -64" -+ ;; -+ esac -+ fi -+ rm -rf conftest* -+ ;; -+ -+*-*-sco3.2v5*) -+ # On SCO OpenServer 5, we need -belf to get full-featured binaries. -+ SAVE_CFLAGS="$CFLAGS" -+ CFLAGS="$CFLAGS -belf" -+ AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, -+ [AC_LANG_SAVE -+ AC_LANG_C -+ AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) -+ AC_LANG_RESTORE]) -+ if test x"$lt_cv_cc_needs_belf" != x"yes"; then -+ # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf -+ CFLAGS="$SAVE_CFLAGS" -+ fi -+ ;; -+ -+ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], -+[*-*-cygwin* | *-*-mingw* | *-*-pw32*) -+ AC_CHECK_TOOL(DLLTOOL, dlltool, false) -+ AC_CHECK_TOOL(AS, as, false) -+ AC_CHECK_TOOL(OBJDUMP, objdump, false) -+ -+ # recent cygwin and mingw systems supply a stub DllMain which the user -+ # can override, but on older systems we have to supply one -+ AC_CACHE_CHECK([if libtool should supply DllMain function], lt_cv_need_dllmain, -+ [AC_TRY_LINK([], -+ [extern int __attribute__((__stdcall__)) DllMain(void*, int, void*); -+ DllMain (0, 0, 0);], -+ [lt_cv_need_dllmain=no],[lt_cv_need_dllmain=yes])]) -+ -+ case $host/$CC in -+ *-*-cygwin*/gcc*-mno-cygwin*|*-*-mingw*) -+ # old mingw systems require "-dll" to link a DLL, while more recent ones -+ # require "-mdll" -+ SAVE_CFLAGS="$CFLAGS" -+ CFLAGS="$CFLAGS -mdll" -+ AC_CACHE_CHECK([how to link DLLs], lt_cv_cc_dll_switch, -+ [AC_TRY_LINK([], [], [lt_cv_cc_dll_switch=-mdll],[lt_cv_cc_dll_switch=-dll])]) -+ CFLAGS="$SAVE_CFLAGS" ;; -+ *-*-cygwin* | *-*-pw32*) -+ # cygwin systems need to pass --dll to the linker, and not link -+ # crt.o which will require a WinMain@16 definition. -+ lt_cv_cc_dll_switch="-Wl,--dll -nostartfiles" ;; -+ esac -+ ;; -+ ]) -+esac -+ -+_LT_AC_LTCONFIG_HACK -+ -+]) -+ -+# AC_LIBTOOL_HEADER_ASSERT -+# ------------------------ -+AC_DEFUN([AC_LIBTOOL_HEADER_ASSERT], -+[AC_CACHE_CHECK([whether $CC supports assert without backlinking], -+ [lt_cv_func_assert_works], -+ [case $host in -+ *-*-solaris*) -+ if test "$GCC" = yes && test "$with_gnu_ld" != yes; then -+ case `$CC --version 2>/dev/null` in -+ [[12]].*) lt_cv_func_assert_works=no ;; -+ *) lt_cv_func_assert_works=yes ;; -+ esac -+ fi -+ ;; -+ esac]) -+ -+if test "x$lt_cv_func_assert_works" = xyes; then -+ AC_CHECK_HEADERS(assert.h) -+fi -+])# AC_LIBTOOL_HEADER_ASSERT -+ -+# _LT_AC_CHECK_DLFCN -+# -------------------- -+AC_DEFUN([_LT_AC_CHECK_DLFCN], -+[AC_CHECK_HEADERS(dlfcn.h) -+])# _LT_AC_CHECK_DLFCN -+ -+# AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE -+# --------------------------------- -+AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], -+[AC_REQUIRE([AC_CANONICAL_HOST]) -+AC_REQUIRE([AC_PROG_NM]) -+AC_REQUIRE([AC_OBJEXT]) -+# Check for command to grab the raw symbol name followed by C symbol from nm. -+AC_MSG_CHECKING([command to parse $NM output]) -+AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe], [dnl -+ -+# These are sane defaults that work on at least a few old systems. -+# [They come from Ultrix. What could be older than Ultrix?!! ;)] -+ -+# Character class describing NM global symbol codes. -+symcode='[[BCDEGRST]]' -+ -+# Regexp to match symbols that can be accessed directly from C. -+sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)' -+ -+# Transform the above into a raw symbol and a C symbol. -+symxfrm='\1 \2\3 \3' -+ -+# Transform an extracted symbol line into a proper C declaration -+lt_cv_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'" -+ -+# Transform an extracted symbol line into symbol name and symbol address -+lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" -+ -+# Define system-specific variables. -+case $host_os in -+aix*) -+ symcode='[[BCDT]]' -+ ;; -+cygwin* | mingw* | pw32*) -+ symcode='[[ABCDGISTW]]' -+ ;; -+hpux*) # Its linker distinguishes data from code symbols -+ lt_cv_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" -+ lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" -+ ;; -+irix* | nonstopux*) -+ symcode='[[BCDEGRST]]' -+ ;; -+osf*) -+ symcode='[[BCDEGQRST]]' -+ ;; -+solaris* | sysv5*) -+ symcode='[[BDT]]' -+ ;; -+sysv4) -+ symcode='[[DFNSTU]]' -+ ;; -+esac -+ -+# Handle CRLF in mingw tool chain -+opt_cr= -+case $host_os in -+mingw*) -+ opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp -+ ;; -+esac -+ -+# If we're using GNU nm, then use its standard symbol codes. -+if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then -+ symcode='[[ABCDGISTW]]' -+fi -+ -+# Try without a prefix undercore, then with it. -+for ac_symprfx in "" "_"; do -+ -+ # Write the raw and C identifiers. -+lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'" -+ -+ # Check to see that the pipe works correctly. -+ pipe_works=no -+ rm -f conftest* -+ cat > conftest.$ac_ext < $nlist) && test -s "$nlist"; then -+ # Try sorting and uniquifying the output. -+ if sort "$nlist" | uniq > "$nlist"T; then -+ mv -f "$nlist"T "$nlist" -+ else -+ rm -f "$nlist"T -+ fi -+ -+ # Make sure that we snagged all the symbols we need. -+ if egrep ' nm_test_var$' "$nlist" >/dev/null; then -+ if egrep ' nm_test_func$' "$nlist" >/dev/null; then -+ cat < conftest.$ac_ext -+#ifdef __cplusplus -+extern "C" { -+#endif -+ -+EOF -+ # Now generate the symbol file. -+ eval "$lt_cv_global_symbol_to_cdecl"' < "$nlist" >> conftest.$ac_ext' -+ -+ cat <> conftest.$ac_ext -+#if defined (__STDC__) && __STDC__ -+# define lt_ptr void * -+#else -+# define lt_ptr char * -+# define const -+#endif -+ -+/* The mapping between symbol names and symbols. */ -+const struct { -+ const char *name; -+ lt_ptr address; -+} -+lt_preloaded_symbols[[]] = -+{ -+EOF -+ sed "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (lt_ptr) \&\2},/" < "$nlist" >> conftest.$ac_ext -+ cat <<\EOF >> conftest.$ac_ext -+ {0, (lt_ptr) 0} -+}; -+ -+#ifdef __cplusplus -+} -+#endif -+EOF -+ # Now try linking the two files. -+ mv conftest.$ac_objext conftstm.$ac_objext -+ save_LIBS="$LIBS" -+ save_CFLAGS="$CFLAGS" -+ LIBS="conftstm.$ac_objext" -+ CFLAGS="$CFLAGS$no_builtin_flag" -+ if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then -+ pipe_works=yes -+ fi -+ LIBS="$save_LIBS" -+ CFLAGS="$save_CFLAGS" -+ else -+ echo "cannot find nm_test_func in $nlist" >&AC_FD_CC -+ fi -+ else -+ echo "cannot find nm_test_var in $nlist" >&AC_FD_CC -+ fi -+ else -+ echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AC_FD_CC -+ fi -+ else -+ echo "$progname: failed program was:" >&AC_FD_CC -+ cat conftest.$ac_ext >&5 -+ fi -+ rm -f conftest* conftst* -+ -+ # Do not use the global_symbol_pipe unless it works. -+ if test "$pipe_works" = yes; then -+ break -+ else -+ lt_cv_sys_global_symbol_pipe= -+ fi -+done -+]) -+global_symbol_pipe="$lt_cv_sys_global_symbol_pipe" -+if test -z "$lt_cv_sys_global_symbol_pipe"; then -+ global_symbol_to_cdecl= -+ global_symbol_to_c_name_address= -+else -+ global_symbol_to_cdecl="$lt_cv_global_symbol_to_cdecl" -+ global_symbol_to_c_name_address="$lt_cv_global_symbol_to_c_name_address" -+fi -+if test -z "$global_symbol_pipe$global_symbol_to_cdec$global_symbol_to_c_name_address"; -+then -+ AC_MSG_RESULT(failed) -+else -+ AC_MSG_RESULT(ok) -+fi -+]) # AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE -+ -+# _LT_AC_LIBTOOL_SYS_PATH_SEPARATOR -+# --------------------------------- -+AC_DEFUN([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR], -+[# Find the correct PATH separator. Usually this is `:', but -+# DJGPP uses `;' like DOS. -+if test "X${PATH_SEPARATOR+set}" != Xset; then -+ UNAME=${UNAME-`uname 2>/dev/null`} -+ case X$UNAME in -+ *-DOS) lt_cv_sys_path_separator=';' ;; -+ *) lt_cv_sys_path_separator=':' ;; -+ esac -+ PATH_SEPARATOR=$lt_cv_sys_path_separator -+fi -+])# _LT_AC_LIBTOOL_SYS_PATH_SEPARATOR -+ -+# _LT_AC_PROG_ECHO_BACKSLASH -+# -------------------------- -+# Add some code to the start of the generated configure script which -+# will find an echo command which doesn't interpret backslashes. -+AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH], -+[ifdef([AC_DIVERSION_NOTICE], [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)], -+ [AC_DIVERT_PUSH(NOTICE)]) -+_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR -+ -+# Check that we are running under the correct shell. -+SHELL=${CONFIG_SHELL-/bin/sh} -+ -+case X$ECHO in -+X*--fallback-echo) -+ # Remove one level of quotation (which was required for Make). -+ ECHO=`echo "$ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','` -+ ;; -+esac -+ -+echo=${ECHO-echo} -+if test "X[$]1" = X--no-reexec; then -+ # Discard the --no-reexec flag, and continue. -+ shift -+elif test "X[$]1" = X--fallback-echo; then -+ # Avoid inline document here, it may be left over -+ : -+elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then -+ # Yippee, $echo works! -+ : -+else -+ # Restart under the correct shell. -+ exec $SHELL "[$]0" --no-reexec ${1+"[$]@"} -+fi -+ -+if test "X[$]1" = X--fallback-echo; then -+ # used as fallback echo -+ shift -+ cat </dev/null && -+ echo_test_string="`eval $cmd`" && -+ (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null -+ then -+ break -+ fi -+ done -+fi -+ -+if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && -+ echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && -+ test "X$echo_testing_string" = "X$echo_test_string"; then -+ : -+else -+ # The Solaris, AIX, and Digital Unix default echo programs unquote -+ # backslashes. This makes it impossible to quote backslashes using -+ # echo "$something" | sed 's/\\/\\\\/g' -+ # -+ # So, first we look for a working echo in the user's PATH. -+ -+ IFS="${IFS= }"; save_ifs="$IFS"; IFS=$PATH_SEPARATOR -+ for dir in $PATH /usr/ucb; do -+ if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && -+ test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && -+ echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` && -+ test "X$echo_testing_string" = "X$echo_test_string"; then -+ echo="$dir/echo" -+ break -+ fi -+ done -+ IFS="$save_ifs" -+ -+ if test "X$echo" = Xecho; then -+ # We didn't find a better echo, so look for alternatives. -+ if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' && -+ echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` && -+ test "X$echo_testing_string" = "X$echo_test_string"; then -+ # This shell has a builtin print -r that does the trick. -+ echo='print -r' -+ elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) && -+ test "X$CONFIG_SHELL" != X/bin/ksh; then -+ # If we have ksh, try running configure again with it. -+ ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} -+ export ORIGINAL_CONFIG_SHELL -+ CONFIG_SHELL=/bin/ksh -+ export CONFIG_SHELL -+ exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"} -+ else -+ # Try using printf. -+ echo='printf %s\n' -+ if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && -+ echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && -+ test "X$echo_testing_string" = "X$echo_test_string"; then -+ # Cool, printf works -+ : -+ elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && -+ test "X$echo_testing_string" = 'X\t' && -+ echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && -+ test "X$echo_testing_string" = "X$echo_test_string"; then -+ CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL -+ export CONFIG_SHELL -+ SHELL="$CONFIG_SHELL" -+ export SHELL -+ echo="$CONFIG_SHELL [$]0 --fallback-echo" -+ elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && -+ test "X$echo_testing_string" = 'X\t' && -+ echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && -+ test "X$echo_testing_string" = "X$echo_test_string"; then -+ echo="$CONFIG_SHELL [$]0 --fallback-echo" -+ else -+ # maybe with a smaller string... -+ prev=: -+ -+ for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do -+ if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null -+ then -+ break -+ fi -+ prev="$cmd" -+ done -+ -+ if test "$prev" != 'sed 50q "[$]0"'; then -+ echo_test_string=`eval $prev` -+ export echo_test_string -+ exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"} -+ else -+ # Oops. We lost completely, so just stick with echo. -+ echo=echo -+ fi -+ fi -+ fi -+ fi -+fi -+fi -+ -+# Copy echo and quote the copy suitably for passing to libtool from -+# the Makefile, instead of quoting the original, which is used later. -+ECHO=$echo -+if test "X$ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then -+ ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo" -+fi -+ -+AC_SUBST(ECHO) -+AC_DIVERT_POP -+])# _LT_AC_PROG_ECHO_BACKSLASH -+ -+# _LT_AC_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE, -+# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING) -+# ------------------------------------------------------------------ -+AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF], -+[if test "$cross_compiling" = yes; then : -+ [$4] -+else -+ AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl -+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 -+ lt_status=$lt_dlunknown -+ cat > conftest.$ac_ext < -+#endif -+ -+#include -+ -+#ifdef RTLD_GLOBAL -+# define LT_DLGLOBAL RTLD_GLOBAL -+#else -+# ifdef DL_GLOBAL -+# define LT_DLGLOBAL DL_GLOBAL -+# else -+# define LT_DLGLOBAL 0 -+# endif -+#endif -+ -+/* We may have to define LT_DLLAZY_OR_NOW in the command line if we -+ find out it does not work in some platform. */ -+#ifndef LT_DLLAZY_OR_NOW -+# ifdef RTLD_LAZY -+# define LT_DLLAZY_OR_NOW RTLD_LAZY -+# else -+# ifdef DL_LAZY -+# define LT_DLLAZY_OR_NOW DL_LAZY -+# else -+# ifdef RTLD_NOW -+# define LT_DLLAZY_OR_NOW RTLD_NOW -+# else -+# ifdef DL_NOW -+# define LT_DLLAZY_OR_NOW DL_NOW -+# else -+# define LT_DLLAZY_OR_NOW 0 -+# endif -+# endif -+# endif -+# endif -+#endif -+ -+#ifdef __cplusplus -+extern "C" void exit (int); -+#endif -+ -+void fnord() { int i=42;} -+int main () -+{ -+ void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); -+ int status = $lt_dlunknown; -+ -+ if (self) -+ { -+ if (dlsym (self,"fnord")) status = $lt_dlno_uscore; -+ else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; -+ /* dlclose (self); */ -+ } -+ -+ exit (status); -+}] -+EOF -+ if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then -+ (./conftest; exit; ) 2>/dev/null -+ lt_status=$? -+ case x$lt_status in -+ x$lt_dlno_uscore) $1 ;; -+ x$lt_dlneed_uscore) $2 ;; -+ x$lt_unknown|x*) $3 ;; -+ esac -+ else : -+ # compilation failed -+ $3 -+ fi -+fi -+rm -fr conftest* -+])# _LT_AC_TRY_DLOPEN_SELF -+ -+# AC_LIBTOOL_DLOPEN_SELF -+# ------------------- -+AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], -+[if test "x$enable_dlopen" != xyes; then -+ enable_dlopen=unknown -+ enable_dlopen_self=unknown -+ enable_dlopen_self_static=unknown -+else -+ lt_cv_dlopen=no -+ lt_cv_dlopen_libs= -+ -+ case $host_os in -+ beos*) -+ lt_cv_dlopen="load_add_on" -+ lt_cv_dlopen_libs= -+ lt_cv_dlopen_self=yes -+ ;; -+ -+ cygwin* | mingw* | pw32*) -+ lt_cv_dlopen="LoadLibrary" -+ lt_cv_dlopen_libs= -+ ;; -+ -+ *) -+ AC_CHECK_FUNC([shl_load], -+ [lt_cv_dlopen="shl_load"], -+ [AC_CHECK_LIB([dld], [shl_load], -+ [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"], -+ [AC_CHECK_FUNC([dlopen], -+ [lt_cv_dlopen="dlopen"], -+ [AC_CHECK_LIB([dl], [dlopen], -+ [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"], -+ [AC_CHECK_LIB([svld], [dlopen], -+ [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"], -+ [AC_CHECK_LIB([dld], [dld_link], -+ [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"]) -+ ]) -+ ]) -+ ]) -+ ]) -+ ]) -+ ;; -+ esac -+ -+ if test "x$lt_cv_dlopen" != xno; then -+ enable_dlopen=yes -+ else -+ enable_dlopen=no -+ fi -+ -+ case $lt_cv_dlopen in -+ dlopen) -+ save_CPPFLAGS="$CPPFLAGS" -+ AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl -+ test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" -+ -+ save_LDFLAGS="$LDFLAGS" -+ eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" -+ -+ save_LIBS="$LIBS" -+ LIBS="$lt_cv_dlopen_libs $LIBS" -+ -+ AC_CACHE_CHECK([whether a program can dlopen itself], -+ lt_cv_dlopen_self, [dnl -+ _LT_AC_TRY_DLOPEN_SELF( -+ lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes, -+ lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross) -+ ]) -+ -+ if test "x$lt_cv_dlopen_self" = xyes; then -+ LDFLAGS="$LDFLAGS $link_static_flag" -+ AC_CACHE_CHECK([whether a statically linked program can dlopen itself], -+ lt_cv_dlopen_self_static, [dnl -+ _LT_AC_TRY_DLOPEN_SELF( -+ lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes, -+ lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross) -+ ]) -+ fi -+ -+ CPPFLAGS="$save_CPPFLAGS" -+ LDFLAGS="$save_LDFLAGS" -+ LIBS="$save_LIBS" -+ ;; -+ esac -+ -+ case $lt_cv_dlopen_self in -+ yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; -+ *) enable_dlopen_self=unknown ;; -+ esac -+ -+ case $lt_cv_dlopen_self_static in -+ yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; -+ *) enable_dlopen_self_static=unknown ;; -+ esac -+fi -+])# AC_LIBTOOL_DLOPEN_SELF -+ -+AC_DEFUN([_LT_AC_LTCONFIG_HACK], -+[AC_REQUIRE([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])dnl -+# Sed substitution that helps us do robust quoting. It backslashifies -+# metacharacters that are still active within double-quoted strings. -+Xsed='sed -e s/^X//' -+sed_quote_subst='s/\([[\\"\\`$\\\\]]\)/\\\1/g' -+ -+# Same as above, but do not quote variable references. -+double_quote_subst='s/\([[\\"\\`\\\\]]\)/\\\1/g' -+ -+# Sed substitution to delay expansion of an escaped shell variable in a -+# double_quote_subst'ed string. -+delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' -+ -+# Constants: -+rm="rm -f" -+ -+# Global variables: -+default_ofile=libtool -+can_build_shared=yes -+ -+# All known linkers require a `.a' archive for static linking (except M$VC, -+# which needs '.lib'). -+libext=a -+ltmain="$ac_aux_dir/ltmain.sh" -+ofile="$default_ofile" -+with_gnu_ld="$lt_cv_prog_gnu_ld" -+need_locks="$enable_libtool_lock" -+ -+old_CC="$CC" -+old_CFLAGS="$CFLAGS" -+ -+# Set sane defaults for various variables -+test -z "$AR" && AR=ar -+test -z "$AR_FLAGS" && AR_FLAGS=cru -+test -z "$AS" && AS=as -+test -z "$CC" && CC=cc -+test -z "$DLLTOOL" && DLLTOOL=dlltool -+test -z "$LD" && LD=ld -+test -z "$LN_S" && LN_S="ln -s" -+test -z "$MAGIC_CMD" && MAGIC_CMD=file -+test -z "$NM" && NM=nm -+test -z "$OBJDUMP" && OBJDUMP=objdump -+test -z "$RANLIB" && RANLIB=: -+test -z "$STRIP" && STRIP=: -+test -z "$ac_objext" && ac_objext=o -+ -+if test x"$host" != x"$build"; then -+ ac_tool_prefix=${host_alias}- -+else -+ ac_tool_prefix= -+fi -+ -+# Transform linux* to *-*-linux-gnu*, to support old configure scripts. -+case $host_os in -+linux-gnu*) ;; -+linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'` -+esac -+ -+case $host_os in -+aix3*) -+ # AIX sometimes has problems with the GCC collect2 program. For some -+ # reason, if we set the COLLECT_NAMES environment variable, the problems -+ # vanish in a puff of smoke. -+ if test "X${COLLECT_NAMES+set}" != Xset; then -+ COLLECT_NAMES= -+ export COLLECT_NAMES -+ fi -+ ;; -+esac -+ -+# Determine commands to create old-style static archives. -+old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs' -+old_postinstall_cmds='chmod 644 $oldlib' -+old_postuninstall_cmds= -+ -+if test -n "$RANLIB"; then -+ case $host_os in -+ openbsd*) -+ old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds" -+ ;; -+ *) -+ old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds" -+ ;; -+ esac -+ old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib" -+fi -+ -+# Allow CC to be a program name with arguments. -+set dummy $CC -+compiler="[$]2" -+ -+## FIXME: this should be a separate macro -+## -+AC_MSG_CHECKING([for objdir]) -+rm -f .libs 2>/dev/null -+mkdir .libs 2>/dev/null -+if test -d .libs; then -+ objdir=.libs -+else -+ # MS-DOS does not allow filenames that begin with a dot. -+ objdir=_libs -+fi -+rmdir .libs 2>/dev/null -+AC_MSG_RESULT($objdir) -+## -+## END FIXME -+ -+ -+## FIXME: this should be a separate macro -+## -+AC_ARG_WITH(pic, -+[ --with-pic try to use only PIC/non-PIC objects [default=use both]], -+pic_mode="$withval", pic_mode=default) -+test -z "$pic_mode" && pic_mode=default -+ -+# We assume here that the value for lt_cv_prog_cc_pic will not be cached -+# in isolation, and that seeing it set (from the cache) indicates that -+# the associated values are set (in the cache) correctly too. -+AC_MSG_CHECKING([for $compiler option to produce PIC]) -+AC_CACHE_VAL(lt_cv_prog_cc_pic, -+[ lt_cv_prog_cc_pic= -+ lt_cv_prog_cc_shlib= -+ lt_cv_prog_cc_wl= -+ lt_cv_prog_cc_static= -+ lt_cv_prog_cc_no_builtin= -+ lt_cv_prog_cc_can_build_shared=$can_build_shared -+ -+ if test "$GCC" = yes; then -+ lt_cv_prog_cc_wl='-Wl,' -+ lt_cv_prog_cc_static='-static' -+ -+ case $host_os in -+ aix*) -+ # Below there is a dirty hack to force normal static linking with -ldl -+ # The problem is because libdl dynamically linked with both libc and -+ # libC (AIX C++ library), which obviously doesn't included in libraries -+ # list by gcc. This cause undefined symbols with -static flags. -+ # This hack allows C programs to be linked with "-static -ldl", but -+ # not sure about C++ programs. -+ lt_cv_prog_cc_static="$lt_cv_prog_cc_static ${lt_cv_prog_cc_wl}-lC" -+ ;; -+ amigaos*) -+ # FIXME: we need at least 68020 code to build shared libraries, but -+ # adding the `-m68020' flag to GCC prevents building anything better, -+ # like `-m68040'. -+ lt_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4' -+ ;; -+ beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) -+ # PIC is the default for these OSes. -+ ;; -+ darwin* | rhapsody*) -+ # PIC is the default on this platform -+ # Common symbols not allowed in MH_DYLIB files -+ lt_cv_prog_cc_pic='-fno-common' -+ ;; -+ cygwin* | mingw* | pw32* | os2*) -+ # This hack is so that the source file can tell whether it is being -+ # built for inclusion in a dll (and should export symbols for example). -+ lt_cv_prog_cc_pic='-DDLL_EXPORT' -+ ;; -+ sysv4*MP*) -+ if test -d /usr/nec; then -+ lt_cv_prog_cc_pic=-Kconform_pic -+ fi -+ ;; -+ *) -+ lt_cv_prog_cc_pic='-fPIC' -+ ;; -+ esac -+ else -+ # PORTME Check for PIC flags for the system compiler. -+ case $host_os in -+ aix3* | aix4* | aix5*) -+ lt_cv_prog_cc_wl='-Wl,' -+ # All AIX code is PIC. -+ if test "$host_cpu" = ia64; then -+ # AIX 5 now supports IA64 processor -+ lt_cv_prog_cc_static='-Bstatic' -+ else -+ lt_cv_prog_cc_static='-bnso -bI:/lib/syscalls.exp' -+ fi -+ ;; -+ -+ hpux9* | hpux10* | hpux11*) -+ # Is there a better lt_cv_prog_cc_static that works with the bundled CC? -+ lt_cv_prog_cc_wl='-Wl,' -+ lt_cv_prog_cc_static="${lt_cv_prog_cc_wl}-a ${lt_cv_prog_cc_wl}archive" -+ lt_cv_prog_cc_pic='+Z' -+ ;; -+ -+ irix5* | irix6* | nonstopux*) -+ lt_cv_prog_cc_wl='-Wl,' -+ lt_cv_prog_cc_static='-non_shared' -+ # PIC (with -KPIC) is the default. -+ ;; -+ -+ cygwin* | mingw* | pw32* | os2*) -+ # This hack is so that the source file can tell whether it is being -+ # built for inclusion in a dll (and should export symbols for example). -+ lt_cv_prog_cc_pic='-DDLL_EXPORT' -+ ;; -+ -+ newsos6) -+ lt_cv_prog_cc_pic='-KPIC' -+ lt_cv_prog_cc_static='-Bstatic' -+ ;; -+ -+ osf3* | osf4* | osf5*) -+ # All OSF/1 code is PIC. -+ lt_cv_prog_cc_wl='-Wl,' -+ lt_cv_prog_cc_static='-non_shared' -+ ;; -+ -+ sco3.2v5*) -+ lt_cv_prog_cc_pic='-Kpic' -+ lt_cv_prog_cc_static='-dn' -+ lt_cv_prog_cc_shlib='-belf' -+ ;; -+ -+ solaris*) -+ lt_cv_prog_cc_pic='-KPIC' -+ lt_cv_prog_cc_static='-Bstatic' -+ lt_cv_prog_cc_wl='-Wl,' -+ ;; -+ -+ sunos4*) -+ lt_cv_prog_cc_pic='-PIC' -+ lt_cv_prog_cc_static='-Bstatic' -+ lt_cv_prog_cc_wl='-Qoption ld ' -+ ;; -+ -+ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) -+ lt_cv_prog_cc_pic='-KPIC' -+ lt_cv_prog_cc_static='-Bstatic' -+ lt_cv_prog_cc_wl='-Wl,' -+ ;; -+ -+ uts4*) -+ lt_cv_prog_cc_pic='-pic' -+ lt_cv_prog_cc_static='-Bstatic' -+ ;; -+ -+ sysv4*MP*) -+ if test -d /usr/nec ;then -+ lt_cv_prog_cc_pic='-Kconform_pic' -+ lt_cv_prog_cc_static='-Bstatic' -+ fi -+ ;; -+ -+ *) -+ lt_cv_prog_cc_can_build_shared=no -+ ;; -+ esac -+ fi -+]) -+if test -z "$lt_cv_prog_cc_pic"; then -+ AC_MSG_RESULT([none]) -+else -+ AC_MSG_RESULT([$lt_cv_prog_cc_pic]) -+ -+ # Check to make sure the pic_flag actually works. -+ AC_MSG_CHECKING([if $compiler PIC flag $lt_cv_prog_cc_pic works]) -+ AC_CACHE_VAL(lt_cv_prog_cc_pic_works, [dnl -+ save_CFLAGS="$CFLAGS" -+ CFLAGS="$CFLAGS $lt_cv_prog_cc_pic -DPIC" -+ AC_TRY_COMPILE([], [], [dnl -+ case $host_os in -+ hpux9* | hpux10* | hpux11*) -+ # On HP-UX, both CC and GCC only warn that PIC is supported... then -+ # they create non-PIC objects. So, if there were any warnings, we -+ # assume that PIC is not supported. -+ if test -s conftest.err; then -+ lt_cv_prog_cc_pic_works=no -+ else -+ lt_cv_prog_cc_pic_works=yes -+ fi -+ ;; -+ *) -+ lt_cv_prog_cc_pic_works=yes -+ ;; -+ esac -+ ], [dnl -+ lt_cv_prog_cc_pic_works=no -+ ]) -+ CFLAGS="$save_CFLAGS" -+ ]) -+ -+ if test "X$lt_cv_prog_cc_pic_works" = Xno; then -+ lt_cv_prog_cc_pic= -+ lt_cv_prog_cc_can_build_shared=no -+ else -+ lt_cv_prog_cc_pic=" $lt_cv_prog_cc_pic" -+ fi -+ -+ AC_MSG_RESULT([$lt_cv_prog_cc_pic_works]) -+fi -+## -+## END FIXME -+ -+# Check for any special shared library compilation flags. -+if test -n "$lt_cv_prog_cc_shlib"; then -+ AC_MSG_WARN([\`$CC' requires \`$lt_cv_prog_cc_shlib' to build shared libraries]) -+ if echo "$old_CC $old_CFLAGS " | egrep -e "[[ ]]$lt_cv_prog_cc_shlib[[ ]]" >/dev/null; then : -+ else -+ AC_MSG_WARN([add \`$lt_cv_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure]) -+ lt_cv_prog_cc_can_build_shared=no -+ fi -+fi -+ -+## FIXME: this should be a separate macro -+## -+AC_MSG_CHECKING([if $compiler static flag $lt_cv_prog_cc_static works]) -+AC_CACHE_VAL([lt_cv_prog_cc_static_works], [dnl -+ lt_cv_prog_cc_static_works=no -+ save_LDFLAGS="$LDFLAGS" -+ LDFLAGS="$LDFLAGS $lt_cv_prog_cc_static" -+ AC_TRY_LINK([], [], [lt_cv_prog_cc_static_works=yes]) -+ LDFLAGS="$save_LDFLAGS" -+]) -+ -+# Belt *and* braces to stop my trousers falling down: -+test "X$lt_cv_prog_cc_static_works" = Xno && lt_cv_prog_cc_static= -+AC_MSG_RESULT([$lt_cv_prog_cc_static_works]) -+ -+pic_flag="$lt_cv_prog_cc_pic" -+special_shlib_compile_flags="$lt_cv_prog_cc_shlib" -+wl="$lt_cv_prog_cc_wl" -+link_static_flag="$lt_cv_prog_cc_static" -+no_builtin_flag="$lt_cv_prog_cc_no_builtin" -+can_build_shared="$lt_cv_prog_cc_can_build_shared" -+## -+## END FIXME -+ -+ -+## FIXME: this should be a separate macro -+## -+# Check to see if options -o and -c are simultaneously supported by compiler -+AC_MSG_CHECKING([if $compiler supports -c -o file.$ac_objext]) -+AC_CACHE_VAL([lt_cv_compiler_c_o], [ -+$rm -r conftest 2>/dev/null -+mkdir conftest -+cd conftest -+echo "int some_variable = 0;" > conftest.$ac_ext -+mkdir out -+# According to Tom Tromey, Ian Lance Taylor reported there are C compilers -+# that will create temporary files in the current directory regardless of -+# the output directory. Thus, making CWD read-only will cause this test -+# to fail, enabling locking or at least warning the user not to do parallel -+# builds. -+chmod -w . -+save_CFLAGS="$CFLAGS" -+CFLAGS="$CFLAGS -o out/conftest2.$ac_objext" -+compiler_c_o=no -+if { (eval echo configure:__oline__: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then -+ # The compiler can only warn and ignore the option if not recognized -+ # So say no if there are warnings -+ if test -s out/conftest.err; then -+ lt_cv_compiler_c_o=no -+ else -+ lt_cv_compiler_c_o=yes -+ fi -+else -+ # Append any errors to the config.log. -+ cat out/conftest.err 1>&AC_FD_CC -+ lt_cv_compiler_c_o=no -+fi -+CFLAGS="$save_CFLAGS" -+chmod u+w . -+$rm conftest* out/* -+rmdir out -+cd .. -+rmdir conftest -+$rm -r conftest 2>/dev/null -+]) -+compiler_c_o=$lt_cv_compiler_c_o -+AC_MSG_RESULT([$compiler_c_o]) -+ -+if test x"$compiler_c_o" = x"yes"; then -+ # Check to see if we can write to a .lo -+ AC_MSG_CHECKING([if $compiler supports -c -o file.lo]) -+ AC_CACHE_VAL([lt_cv_compiler_o_lo], [ -+ lt_cv_compiler_o_lo=no -+ save_CFLAGS="$CFLAGS" -+ CFLAGS="$CFLAGS -c -o conftest.lo" -+ save_objext="$ac_objext" -+ ac_objext=lo -+ AC_TRY_COMPILE([], [int some_variable = 0;], [dnl -+ # The compiler can only warn and ignore the option if not recognized -+ # So say no if there are warnings -+ if test -s conftest.err; then -+ lt_cv_compiler_o_lo=no -+ else -+ lt_cv_compiler_o_lo=yes -+ fi -+ ]) -+ ac_objext="$save_objext" -+ CFLAGS="$save_CFLAGS" -+ ]) -+ compiler_o_lo=$lt_cv_compiler_o_lo -+ AC_MSG_RESULT([$compiler_o_lo]) -+else -+ compiler_o_lo=no -+fi -+## -+## END FIXME -+ -+## FIXME: this should be a separate macro -+## -+# Check to see if we can do hard links to lock some files if needed -+hard_links="nottested" -+if test "$compiler_c_o" = no && test "$need_locks" != no; then -+ # do not overwrite the value of need_locks provided by the user -+ AC_MSG_CHECKING([if we can lock with hard links]) -+ hard_links=yes -+ $rm conftest* -+ ln conftest.a conftest.b 2>/dev/null && hard_links=no -+ touch conftest.a -+ ln conftest.a conftest.b 2>&5 || hard_links=no -+ ln conftest.a conftest.b 2>/dev/null && hard_links=no -+ AC_MSG_RESULT([$hard_links]) -+ if test "$hard_links" = no; then -+ AC_MSG_WARN([\`$CC' does not support \`-c -o', so \`make -j' may be unsafe]) -+ need_locks=warn -+ fi -+else -+ need_locks=no -+fi -+## -+## END FIXME -+ -+## FIXME: this should be a separate macro -+## -+if test "$GCC" = yes; then -+ # Check to see if options -fno-rtti -fno-exceptions are supported by compiler -+ AC_MSG_CHECKING([if $compiler supports -fno-rtti -fno-exceptions]) -+ echo "int some_variable = 0;" > conftest.$ac_ext -+ save_CFLAGS="$CFLAGS" -+ CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.$ac_ext" -+ compiler_rtti_exceptions=no -+ AC_TRY_COMPILE([], [int some_variable = 0;], [dnl -+ # The compiler can only warn and ignore the option if not recognized -+ # So say no if there are warnings -+ if test -s conftest.err; then -+ compiler_rtti_exceptions=no -+ else -+ compiler_rtti_exceptions=yes -+ fi -+ ]) -+ CFLAGS="$save_CFLAGS" -+ AC_MSG_RESULT([$compiler_rtti_exceptions]) -+ -+ if test "$compiler_rtti_exceptions" = "yes"; then -+ no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions' -+ else -+ no_builtin_flag=' -fno-builtin' -+ fi -+fi -+## -+## END FIXME -+ -+## FIXME: this should be a separate macro -+## -+# See if the linker supports building shared libraries. -+AC_MSG_CHECKING([whether the linker ($LD) supports shared libraries]) -+ -+allow_undefined_flag= -+no_undefined_flag= -+need_lib_prefix=unknown -+need_version=unknown -+# when you set need_version to no, make sure it does not cause -set_version -+# flags to be left without arguments -+archive_cmds= -+archive_expsym_cmds= -+old_archive_from_new_cmds= -+old_archive_from_expsyms_cmds= -+export_dynamic_flag_spec= -+whole_archive_flag_spec= -+thread_safe_flag_spec= -+hardcode_into_libs=no -+hardcode_libdir_flag_spec= -+hardcode_libdir_separator= -+hardcode_direct=no -+hardcode_minus_L=no -+hardcode_shlibpath_var=unsupported -+runpath_var= -+link_all_deplibs=unknown -+always_export_symbols=no -+export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols' -+# include_expsyms should be a list of space-separated symbols to be *always* -+# included in the symbol list -+include_expsyms= -+# exclude_expsyms can be an egrep regular expression of symbols to exclude -+# it will be wrapped by ` (' and `)$', so one must not match beginning or -+# end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', -+# as well as any symbol that contains `d'. -+exclude_expsyms="_GLOBAL_OFFSET_TABLE_" -+# Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out -+# platforms (ab)use it in PIC code, but their linkers get confused if -+# the symbol is explicitly referenced. Since portable code cannot -+# rely on this symbol name, it's probably fine to never include it in -+# preloaded symbol tables. -+extract_expsyms_cmds= -+ -+case $host_os in -+cygwin* | mingw* | pw32*) -+ # FIXME: the MSVC++ port hasn't been tested in a loooong time -+ # When not using gcc, we currently assume that we are using -+ # Microsoft Visual C++. -+ if test "$GCC" != yes; then -+ with_gnu_ld=no -+ fi -+ ;; -+openbsd*) -+ with_gnu_ld=no -+ ;; -+esac -+ -+ld_shlibs=yes -+if test "$with_gnu_ld" = yes; then -+ # If archive_cmds runs LD, not CC, wlarc should be empty -+ wlarc='${wl}' -+ -+ # See if GNU ld supports shared libraries. -+ case $host_os in -+ aix3* | aix4* | aix5*) -+ # On AIX, the GNU linker is very broken -+ # Note:Check GNU linker on AIX 5-IA64 when/if it becomes available. -+ ld_shlibs=no -+ cat <&2 -+ -+*** Warning: the GNU linker, at least up to release 2.9.1, is reported -+*** to be unable to reliably create shared libraries on AIX. -+*** Therefore, libtool is disabling shared libraries support. If you -+*** really care for shared libraries, you may want to modify your PATH -+*** so that a non-GNU linker is found, and then restart. -+ -+EOF -+ ;; -+ -+ amigaos*) -+ archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_minus_L=yes -+ -+ # Samuel A. Falvo II reports -+ # that the semantics of dynamic libraries on AmigaOS, at least up -+ # to version 4, is to share data among multiple programs linked -+ # with the same dynamic library. Since this doesn't match the -+ # behavior of shared libraries on other platforms, we can use -+ # them. -+ ld_shlibs=no -+ ;; -+ -+ beos*) -+ if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then -+ allow_undefined_flag=unsupported -+ # Joseph Beckenbach says some releases of gcc -+ # support --undefined. This deserves some investigation. FIXME -+ archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' -+ else -+ ld_shlibs=no -+ fi -+ ;; -+ -+ cygwin* | mingw* | pw32*) -+ # hardcode_libdir_flag_spec is actually meaningless, as there is -+ # no search path for DLLs. -+ hardcode_libdir_flag_spec='-L$libdir' -+ allow_undefined_flag=unsupported -+ always_export_symbols=yes -+ -+ extract_expsyms_cmds='test -f $output_objdir/impgen.c || \ -+ sed -e "/^# \/\* impgen\.c starts here \*\//,/^# \/\* impgen.c ends here \*\// { s/^# //;s/^# *$//; p; }" -e d < $''0 > $output_objdir/impgen.c~ -+ test -f $output_objdir/impgen.exe || (cd $output_objdir && \ -+ if test "x$HOST_CC" != "x" ; then $HOST_CC -o impgen impgen.c ; \ -+ else $CC -o impgen impgen.c ; fi)~ -+ $output_objdir/impgen $dir/$soroot > $output_objdir/$soname-def' -+ -+ old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib' -+ -+ # cygwin and mingw dlls have different entry points and sets of symbols -+ # to exclude. -+ # FIXME: what about values for MSVC? -+ dll_entry=__cygwin_dll_entry@12 -+ dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12~ -+ case $host_os in -+ mingw*) -+ # mingw values -+ dll_entry=_DllMainCRTStartup@12 -+ dll_exclude_symbols=DllMain@12,DllMainCRTStartup@12,DllEntryPoint@12~ -+ ;; -+ esac -+ -+ # mingw and cygwin differ, and it's simplest to just exclude the union -+ # of the two symbol sets. -+ dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12,DllMainCRTStartup@12,DllEntryPoint@12 -+ -+ # recent cygwin and mingw systems supply a stub DllMain which the user -+ # can override, but on older systems we have to supply one (in ltdll.c) -+ if test "x$lt_cv_need_dllmain" = "xyes"; then -+ ltdll_obj='$output_objdir/$soname-ltdll.'"$ac_objext " -+ ltdll_cmds='test -f $output_objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $''0 > $output_objdir/$soname-ltdll.c~ -+ test -f $output_objdir/$soname-ltdll.$ac_objext || (cd $output_objdir && $CC -c $soname-ltdll.c)~' -+ else -+ ltdll_obj= -+ ltdll_cmds= -+ fi -+ -+ # Extract the symbol export list from an `--export-all' def file, -+ # then regenerate the def file from the symbol export list, so that -+ # the compiled dll only exports the symbol export list. -+ # Be careful not to strip the DATA tag left be newer dlltools. -+ export_symbols_cmds="$ltdll_cmds"' -+ $DLLTOOL --export-all --exclude-symbols '$dll_exclude_symbols' --output-def $output_objdir/$soname-def '$ltdll_obj'$libobjs $convenience~ -+ sed -e "1,/EXPORTS/d" -e "s/ @ [[0-9]]*//" -e "s/ *;.*$//" < $output_objdir/$soname-def > $export_symbols' -+ -+ # If the export-symbols file already is a .def file (1st line -+ # is EXPORTS), use it as is. -+ # If DATA tags from a recent dlltool are present, honour them! -+ archive_expsym_cmds='if test "x`sed 1q $export_symbols`" = xEXPORTS; then -+ cp $export_symbols $output_objdir/$soname-def; -+ else -+ echo EXPORTS > $output_objdir/$soname-def; -+ _lt_hint=1; -+ cat $export_symbols | while read symbol; do -+ set dummy \$symbol; -+ case \[$]# in -+ 2) echo " \[$]2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;; -+ 4) echo " \[$]2 \[$]3 \[$]4 ; " >> $output_objdir/$soname-def; _lt_hint=`expr \$_lt_hint - 1`;; -+ *) echo " \[$]2 @ \$_lt_hint \[$]3 ; " >> $output_objdir/$soname-def;; -+ esac; -+ _lt_hint=`expr 1 + \$_lt_hint`; -+ done; -+ fi~ -+ '"$ltdll_cmds"' -+ $CC -Wl,--base-file,$output_objdir/$soname-base '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~ -+ $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp~ -+ $CC -Wl,--base-file,$output_objdir/$soname-base $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~ -+ $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp --output-lib $output_objdir/$libname.dll.a~ -+ $CC $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags' -+ ;; -+ -+ netbsd*) -+ if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then -+ archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' -+ wlarc= -+ else -+ archive_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' -+ archive_expsym_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' -+ fi -+ ;; -+ -+ solaris* | sysv5*) -+ if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then -+ ld_shlibs=no -+ cat <&2 -+ -+*** Warning: The releases 2.8.* of the GNU linker cannot reliably -+*** create shared libraries on Solaris systems. Therefore, libtool -+*** is disabling shared libraries support. We urge you to upgrade GNU -+*** binutils to release 2.9.1 or newer. Another option is to modify -+*** your PATH or compiler configuration so that the native linker is -+*** used, and then restart. -+ -+EOF -+ elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then -+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' -+ archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' -+ else -+ ld_shlibs=no -+ fi -+ ;; -+ -+ sunos4*) -+ archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' -+ wlarc= -+ hardcode_direct=yes -+ hardcode_shlibpath_var=no -+ ;; -+ -+ *) -+ if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then -+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' -+ archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' -+ else -+ ld_shlibs=no -+ fi -+ ;; -+ esac -+ -+ if test "$ld_shlibs" = yes; then -+ runpath_var=LD_RUN_PATH -+ hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir' -+ export_dynamic_flag_spec='${wl}--export-dynamic' -+ case $host_os in -+ cygwin* | mingw* | pw32*) -+ # dlltool doesn't understand --whole-archive et. al. -+ whole_archive_flag_spec= -+ ;; -+ *) -+ # ancient GNU ld didn't support --whole-archive et. al. -+ if $LD --help 2>&1 | egrep 'no-whole-archive' > /dev/null; then -+ whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' -+ else -+ whole_archive_flag_spec= -+ fi -+ ;; -+ esac -+ fi -+else -+ # PORTME fill in a description of your system's linker (not GNU ld) -+ case $host_os in -+ aix3*) -+ allow_undefined_flag=unsupported -+ always_export_symbols=yes -+ archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' -+ # Note: this linker hardcodes the directories in LIBPATH if there -+ # are no directories specified by -L. -+ hardcode_minus_L=yes -+ if test "$GCC" = yes && test -z "$link_static_flag"; then -+ # Neither direct hardcoding nor static linking is supported with a -+ # broken collect2. -+ hardcode_direct=unsupported -+ fi -+ ;; -+ -+ aix4* | aix5*) -+ if test "$host_cpu" = ia64; then -+ # On IA64, the linker does run time linking by default, so we don't -+ # have to do anything special. -+ aix_use_runtimelinking=no -+ exp_sym_flag='-Bexport' -+ no_entry_flag="" -+ else -+ aix_use_runtimelinking=no -+ -+ # Test if we are trying to use run time linking or normal -+ # AIX style linking. If -brtl is somewhere in LDFLAGS, we -+ # need to do runtime linking. -+ case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*) -+ for ld_flag in $LDFLAGS; do -+ case $ld_flag in -+ *-brtl*) -+ aix_use_runtimelinking=yes -+ break -+ ;; -+ esac -+ done -+ esac -+ -+ exp_sym_flag='-bexport' -+ no_entry_flag='-bnoentry' -+ fi -+ -+ # When large executables or shared objects are built, AIX ld can -+ # have problems creating the table of contents. If linking a library -+ # or program results in "error TOC overflow" add -mminimal-toc to -+ # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not -+ # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. -+ -+ hardcode_direct=yes -+ archive_cmds='' -+ hardcode_libdir_separator=':' -+ if test "$GCC" = yes; then -+ case $host_os in aix4.[[012]]|aix4.[[012]].*) -+ collect2name=`${CC} -print-prog-name=collect2` -+ if test -f "$collect2name" && \ -+ strings "$collect2name" | grep resolve_lib_name >/dev/null -+ then -+ # We have reworked collect2 -+ hardcode_direct=yes -+ else -+ # We have old collect2 -+ hardcode_direct=unsupported -+ # It fails to find uninstalled libraries when the uninstalled -+ # path is not listed in the libpath. Setting hardcode_minus_L -+ # to unsupported forces relinking -+ hardcode_minus_L=yes -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_libdir_separator= -+ fi -+ esac -+ -+ shared_flag='-shared' -+ else -+ # not using gcc -+ if test "$host_cpu" = ia64; then -+ shared_flag='${wl}-G' -+ else -+ if test "$aix_use_runtimelinking" = yes; then -+ shared_flag='${wl}-G' -+ else -+ shared_flag='${wl}-bM:SRE' -+ fi -+ fi -+ fi -+ -+ # It seems that -bexpall can do strange things, so it is better to -+ # generate a list of symbols to export. -+ always_export_symbols=yes -+ if test "$aix_use_runtimelinking" = yes; then -+ # Warning - without using the other runtime loading flags (-brtl), -+ # -berok will link without error, but may produce a broken library. -+ allow_undefined_flag='-berok' -+ hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib' -+ archive_expsym_cmds="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag" -+ else -+ if test "$host_cpu" = ia64; then -+ hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib' -+ allow_undefined_flag="-z nodefs" -+ archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname ${wl}-h$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" -+ else -+ hardcode_libdir_flag_spec='${wl}-bnolibpath ${wl}-blibpath:$libdir:/usr/lib:/lib' -+ # Warning - without using the other run time loading flags, -+ # -berok will link without error, but may produce a broken library. -+ allow_undefined_flag='${wl}-berok' -+ # This is a bit strange, but is similar to how AIX traditionally builds -+ # it's shared libraries. -+ archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"' ~$AR -crlo $output_objdir/$libname$release.a $output_objdir/$soname' -+ fi -+ fi -+ ;; -+ -+ amigaos*) -+ archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_minus_L=yes -+ # see comment about different semantics on the GNU ld section -+ ld_shlibs=no -+ ;; -+ -+ cygwin* | mingw* | pw32*) -+ # When not using gcc, we currently assume that we are using -+ # Microsoft Visual C++. -+ # hardcode_libdir_flag_spec is actually meaningless, as there is -+ # no search path for DLLs. -+ hardcode_libdir_flag_spec=' ' -+ allow_undefined_flag=unsupported -+ # Tell ltmain to make .lib files, not .a files. -+ libext=lib -+ # FIXME: Setting linknames here is a bad hack. -+ archive_cmds='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | sed -e '\''s/ -lc$//'\''` -link -dll~linknames=' -+ # The linker will automatically build a .lib file if we build a DLL. -+ old_archive_from_new_cmds='true' -+ # FIXME: Should let the user specify the lib program. -+ old_archive_cmds='lib /OUT:$oldlib$oldobjs$old_deplibs' -+ fix_srcfile_path='`cygpath -w "$srcfile"`' -+ ;; -+ -+ darwin* | rhapsody*) -+ case "$host_os" in -+ rhapsody* | darwin1.[[012]]) -+ allow_undefined_flag='-undefined suppress' -+ ;; -+ *) # Darwin 1.3 on -+ allow_undefined_flag='-flat_namespace -undefined suppress' -+ ;; -+ esac -+ # FIXME: Relying on posixy $() will cause problems for -+ # cross-compilation, but unfortunately the echo tests do not -+ # yet detect zsh echo's removal of \ escapes. Also zsh mangles -+ # `"' quotes if we put them in here... so don't! -+ archive_cmds='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs && $CC $(test .$module = .yes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib ${lib}-master.o $deplibs$linker_flags $(test .$module != .yes && echo -install_name $rpath/$soname $verstring)' -+ # We need to add '_' to the symbols in $export_symbols first -+ #archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols' -+ hardcode_direct=yes -+ hardcode_shlibpath_var=no -+ whole_archive_flag_spec='-all_load $convenience' -+ ;; -+ -+ freebsd1*) -+ ld_shlibs=no -+ ;; -+ -+ # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor -+ # support. Future versions do this automatically, but an explicit c++rt0.o -+ # does not break anything, and helps significantly (at the cost of a little -+ # extra space). -+ freebsd2.2*) -+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' -+ hardcode_libdir_flag_spec='-R$libdir' -+ hardcode_direct=yes -+ hardcode_shlibpath_var=no -+ ;; -+ -+ # Unfortunately, older versions of FreeBSD 2 do not have this feature. -+ freebsd2*) -+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_direct=yes -+ hardcode_minus_L=yes -+ hardcode_shlibpath_var=no -+ ;; -+ -+ # FreeBSD 3 and greater uses gcc -shared to do shared libraries. -+ freebsd*) -+ archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' -+ hardcode_libdir_flag_spec='-R$libdir' -+ hardcode_direct=yes -+ hardcode_shlibpath_var=no -+ ;; -+ -+ hpux9* | hpux10* | hpux11*) -+ case $host_os in -+ hpux9*) archive_cmds='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' ;; -+ *) archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' ;; -+ esac -+ hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' -+ hardcode_libdir_separator=: -+ hardcode_direct=yes -+ hardcode_minus_L=yes # Not in the search PATH, but as the default -+ # location of the library. -+ export_dynamic_flag_spec='${wl}-E' -+ ;; -+ -+ irix5* | irix6* | nonstopux*) -+ if test "$GCC" = yes; then -+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' -+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' -+ else -+ archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' -+ hardcode_libdir_flag_spec='-rpath $libdir' -+ fi -+ hardcode_libdir_separator=: -+ link_all_deplibs=yes -+ ;; -+ -+ netbsd*) -+ if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then -+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out -+ else -+ archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF -+ fi -+ hardcode_libdir_flag_spec='-R$libdir' -+ hardcode_direct=yes -+ hardcode_shlibpath_var=no -+ ;; -+ -+ newsos6) -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_direct=yes -+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' -+ hardcode_libdir_separator=: -+ hardcode_shlibpath_var=no -+ ;; -+ -+ openbsd*) -+ hardcode_direct=yes -+ hardcode_shlibpath_var=no -+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then -+ archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' -+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir' -+ export_dynamic_flag_spec='${wl}-E' -+ else -+ case "$host_os" in -+ openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*) -+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_libdir_flag_spec='-R$libdir' -+ ;; -+ *) -+ archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' -+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir' -+ ;; -+ esac -+ fi -+ ;; -+ -+ os2*) -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_minus_L=yes -+ allow_undefined_flag=unsupported -+ archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' -+ old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' -+ ;; -+ -+ osf3*) -+ if test "$GCC" = yes; then -+ allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' -+ archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' -+ else -+ allow_undefined_flag=' -expect_unresolved \*' -+ archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' -+ fi -+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' -+ hardcode_libdir_separator=: -+ ;; -+ -+ osf4* | osf5*) # as osf3* with the addition of -msym flag -+ if test "$GCC" = yes; then -+ allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' -+ archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' -+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' -+ else -+ allow_undefined_flag=' -expect_unresolved \*' -+ archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' -+ archive_expsym_cmds='for i in `cat $export_symbols`; do printf "-exported_symbol " >> $lib.exp; echo "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~ -+ $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp' -+ -+ #Both c and cxx compiler support -rpath directly -+ hardcode_libdir_flag_spec='-rpath $libdir' -+ fi -+ hardcode_libdir_separator=: -+ ;; -+ -+ sco3.2v5*) -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_shlibpath_var=no -+ runpath_var=LD_RUN_PATH -+ hardcode_runpath_var=yes -+ export_dynamic_flag_spec='${wl}-Bexport' -+ ;; -+ -+ solaris*) -+ # gcc --version < 3.0 without binutils cannot create self contained -+ # shared libraries reliably, requiring libgcc.a to resolve some of -+ # the object symbols generated in some cases. Libraries that use -+ # assert need libgcc.a to resolve __eprintf, for example. Linking -+ # a copy of libgcc.a into every shared library to guarantee resolving -+ # such symbols causes other problems: According to Tim Van Holder -+ # , C++ libraries end up with a separate -+ # (to the application) exception stack for one thing. -+ no_undefined_flag=' -z defs' -+ if test "$GCC" = yes; then -+ case `$CC --version 2>/dev/null` in -+ [[12]].*) -+ cat <&2 -+ -+*** Warning: Releases of GCC earlier than version 3.0 cannot reliably -+*** create self contained shared libraries on Solaris systems, without -+*** introducing a dependency on libgcc.a. Therefore, libtool is disabling -+*** -no-undefined support, which will at least allow you to build shared -+*** libraries. However, you may find that when you link such libraries -+*** into an application without using GCC, you have to manually add -+*** \`gcc --print-libgcc-file-name\` to the link command. We urge you to -+*** upgrade to a newer version of GCC. Another option is to rebuild your -+*** current GCC to use the GNU linker from GNU binutils 2.9.1 or newer. -+ -+EOF -+ no_undefined_flag= -+ ;; -+ esac -+ fi -+ # $CC -shared without GNU ld will not create a library from C++ -+ # object files and a static libstdc++, better avoid it by now -+ archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ -+ $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' -+ hardcode_libdir_flag_spec='-R$libdir' -+ hardcode_shlibpath_var=no -+ case $host_os in -+ solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; -+ *) # Supported since Solaris 2.6 (maybe 2.5.1?) -+ whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;; -+ esac -+ link_all_deplibs=yes -+ ;; -+ -+ sunos4*) -+ if test "x$host_vendor" = xsequent; then -+ # Use $CC to link under sequent, because it throws in some extra .o -+ # files that make .init and .fini sections work. -+ archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' -+ else -+ archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' -+ fi -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_direct=yes -+ hardcode_minus_L=yes -+ hardcode_shlibpath_var=no -+ ;; -+ -+ sysv4) -+ case $host_vendor in -+ sni) -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_direct=yes # is this really true??? -+ ;; -+ siemens) -+ ## LD is ld it makes a PLAMLIB -+ ## CC just makes a GrossModule. -+ archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' -+ reload_cmds='$CC -r -o $output$reload_objs' -+ hardcode_direct=no -+ ;; -+ motorola) -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_direct=no #Motorola manual says yes, but my tests say they lie -+ ;; -+ esac -+ runpath_var='LD_RUN_PATH' -+ hardcode_shlibpath_var=no -+ ;; -+ -+ sysv4.3*) -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_shlibpath_var=no -+ export_dynamic_flag_spec='-Bexport' -+ ;; -+ -+ sysv5*) -+ no_undefined_flag=' -z text' -+ # $CC -shared without GNU ld will not create a library from C++ -+ # object files and a static libstdc++, better avoid it by now -+ archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ -+ $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' -+ hardcode_libdir_flag_spec= -+ hardcode_shlibpath_var=no -+ runpath_var='LD_RUN_PATH' -+ ;; -+ -+ uts4*) -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_shlibpath_var=no -+ ;; -+ -+ dgux*) -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_shlibpath_var=no -+ ;; -+ -+ sysv4*MP*) -+ if test -d /usr/nec; then -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_shlibpath_var=no -+ runpath_var=LD_RUN_PATH -+ hardcode_runpath_var=yes -+ ld_shlibs=yes -+ fi -+ ;; -+ -+ sysv4.2uw2*) -+ archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_direct=yes -+ hardcode_minus_L=no -+ hardcode_shlibpath_var=no -+ hardcode_runpath_var=yes -+ runpath_var=LD_RUN_PATH -+ ;; -+ -+ sysv5uw7* | unixware7*) -+ no_undefined_flag='${wl}-z ${wl}text' -+ if test "$GCC" = yes; then -+ archive_cmds='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' -+ else -+ archive_cmds='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' -+ fi -+ runpath_var='LD_RUN_PATH' -+ hardcode_shlibpath_var=no -+ ;; -+ -+ *) -+ ld_shlibs=no -+ ;; -+ esac -+fi -+AC_MSG_RESULT([$ld_shlibs]) -+test "$ld_shlibs" = no && can_build_shared=no -+## -+## END FIXME -+ -+## FIXME: this should be a separate macro -+## -+# Check hardcoding attributes. -+AC_MSG_CHECKING([how to hardcode library paths into programs]) -+hardcode_action= -+if test -n "$hardcode_libdir_flag_spec" || \ -+ test -n "$runpath_var"; then -+ -+ # We can hardcode non-existant directories. -+ if test "$hardcode_direct" != no && -+ # If the only mechanism to avoid hardcoding is shlibpath_var, we -+ # have to relink, otherwise we might link with an installed library -+ # when we should be linking with a yet-to-be-installed one -+ ## test "$hardcode_shlibpath_var" != no && -+ test "$hardcode_minus_L" != no; then -+ # Linking always hardcodes the temporary library directory. -+ hardcode_action=relink -+ else -+ # We can link without hardcoding, and we can hardcode nonexisting dirs. -+ hardcode_action=immediate -+ fi -+else -+ # We cannot hardcode anything, or else we can only hardcode existing -+ # directories. -+ hardcode_action=unsupported -+fi -+AC_MSG_RESULT([$hardcode_action]) -+## -+## END FIXME -+ -+## FIXME: this should be a separate macro -+## -+striplib= -+old_striplib= -+AC_MSG_CHECKING([whether stripping libraries is possible]) -+if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then -+ test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" -+ test -z "$striplib" && striplib="$STRIP --strip-unneeded" -+ AC_MSG_RESULT([yes]) -+else -+ AC_MSG_RESULT([no]) -+fi -+## -+## END FIXME -+ -+reload_cmds='$LD$reload_flag -o $output$reload_objs' -+test -z "$deplibs_check_method" && deplibs_check_method=unknown -+ -+## FIXME: this should be a separate macro -+## -+# PORTME Fill in your ld.so characteristics -+AC_MSG_CHECKING([dynamic linker characteristics]) -+library_names_spec= -+libname_spec='lib$name' -+soname_spec= -+postinstall_cmds= -+postuninstall_cmds= -+finish_cmds= -+finish_eval= -+shlibpath_var= -+shlibpath_overrides_runpath=unknown -+version_type=none -+dynamic_linker="$host_os ld.so" -+sys_lib_dlsearch_path_spec="/lib /usr/lib" -+sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" -+ -+case $host_os in -+aix3*) -+ version_type=linux -+ library_names_spec='${libname}${release}.so$versuffix $libname.a' -+ shlibpath_var=LIBPATH -+ -+ # AIX has no versioning support, so we append a major version to the name. -+ soname_spec='${libname}${release}.so$major' -+ ;; -+ -+aix4* | aix5*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ hardcode_into_libs=yes -+ if test "$host_cpu" = ia64; then -+ # AIX 5 supports IA64 -+ library_names_spec='${libname}${release}.so$major ${libname}${release}.so$versuffix $libname.so' -+ shlibpath_var=LD_LIBRARY_PATH -+ else -+ # With GCC up to 2.95.x, collect2 would create an import file -+ # for dependence libraries. The import file would start with -+ # the line `#! .'. This would cause the generated library to -+ # depend on `.', always an invalid library. This was fixed in -+ # development snapshots of GCC prior to 3.0. -+ case $host_os in -+ aix4 | aix4.[[01]] | aix4.[[01]].*) -+ if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' -+ echo ' yes ' -+ echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then -+ : -+ else -+ can_build_shared=no -+ fi -+ ;; -+ esac -+ # AIX (on Power*) has no versioning support, so currently we can -+ # not hardcode correct soname into executable. Probably we can -+ # add versioning support to collect2, so additional links can -+ # be useful in future. -+ if test "$aix_use_runtimelinking" = yes; then -+ # If using run time linking (on AIX 4.2 or later) use lib.so -+ # instead of lib.a to let people know that these are not -+ # typical AIX shared libraries. -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ else -+ # We preserve .a as extension for shared libraries through AIX4.2 -+ # and later when we are not doing run time linking. -+ library_names_spec='${libname}${release}.a $libname.a' -+ soname_spec='${libname}${release}.so$major' -+ fi -+ shlibpath_var=LIBPATH -+ fi -+ hardcode_into_libs=yes -+ ;; -+ -+amigaos*) -+ library_names_spec='$libname.ixlibrary $libname.a' -+ # Create ${libname}_ixlibrary.a entries in /sys/libs. -+ finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done' -+ ;; -+ -+beos*) -+ library_names_spec='${libname}.so' -+ dynamic_linker="$host_os ld.so" -+ shlibpath_var=LIBRARY_PATH -+ ;; -+ -+bsdi4*) -+ version_type=linux -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" -+ sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" -+ export_dynamic_flag_spec=-rdynamic -+ # the default ld.so.conf also contains /usr/contrib/lib and -+ # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow -+ # libtool to hard-code these into programs -+ ;; -+ -+cygwin* | mingw* | pw32*) -+ version_type=windows -+ need_version=no -+ need_lib_prefix=no -+ case $GCC,$host_os in -+ yes,cygwin*) -+ library_names_spec='$libname.dll.a' -+ soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll' -+ postinstall_cmds='dlpath=`bash 2>&1 -c '\''. $dir/${file}i;echo \$dlname'\''`~ -+ dldir=$destdir/`dirname \$dlpath`~ -+ test -d \$dldir || mkdir -p \$dldir~ -+ $install_prog .libs/$dlname \$dldir/$dlname' -+ postuninstall_cmds='dldll=`bash 2>&1 -c '\''. $file; echo \$dlname'\''`~ -+ dlpath=$dir/\$dldll~ -+ $rm \$dlpath' -+ ;; -+ yes,mingw*) -+ library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll' -+ sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g" -e "s,=/,/,g"` -+ ;; -+ yes,pw32*) -+ library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll' -+ ;; -+ *) -+ library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll $libname.lib' -+ ;; -+ esac -+ dynamic_linker='Win32 ld.exe' -+ # FIXME: first we should search . and the directory the executable is in -+ shlibpath_var=PATH -+ ;; -+ -+darwin* | rhapsody*) -+ dynamic_linker="$host_os dyld" -+ version_type=darwin -+ need_lib_prefix=no -+ need_version=no -+ # FIXME: Relying on posixy $() will cause problems for -+ # cross-compilation, but unfortunately the echo tests do not -+ # yet detect zsh echo's removal of \ escapes. -+ library_names_spec='${libname}${release}${versuffix}.$(test .$module = .yes && echo so || echo dylib) ${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib) ${libname}.$(test .$module = .yes && echo so || echo dylib)' -+ soname_spec='${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib)' -+ shlibpath_overrides_runpath=yes -+ shlibpath_var=DYLD_LIBRARY_PATH -+ ;; -+ -+freebsd1*) -+ dynamic_linker=no -+ ;; -+ -+kfreebsd*-gnu*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=no -+ hardcode_into_libs=yes -+ dynamic_linker='GNU/FreeBSD ld.so' -+ ;; -+ -+freebsd*) -+ objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` -+ version_type=freebsd-$objformat -+ case $version_type in -+ freebsd-elf*) -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so' -+ need_version=no -+ need_lib_prefix=no -+ ;; -+ freebsd-*) -+ library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix' -+ need_version=yes -+ ;; -+ esac -+ shlibpath_var=LD_LIBRARY_PATH -+ case $host_os in -+ freebsd2*) -+ shlibpath_overrides_runpath=yes -+ ;; -+ *) -+ shlibpath_overrides_runpath=no -+ hardcode_into_libs=yes -+ ;; -+ esac -+ ;; -+ -+gnu*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so${major} ${libname}.so' -+ soname_spec='${libname}${release}.so$major' -+ shlibpath_var=LD_LIBRARY_PATH -+ hardcode_into_libs=yes -+ ;; -+ -+hpux9* | hpux10* | hpux11*) -+ # Give a soname corresponding to the major version so that dld.sl refuses to -+ # link against other versions. -+ dynamic_linker="$host_os dld.sl" -+ version_type=sunos -+ need_lib_prefix=no -+ need_version=no -+ shlibpath_var=SHLIB_PATH -+ shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH -+ library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl' -+ soname_spec='${libname}${release}.sl$major' -+ # HP-UX runs *really* slowly unless shared libraries are mode 555. -+ postinstall_cmds='chmod 555 $lib' -+ ;; -+ -+irix5* | irix6* | nonstopux*) -+ case $host_os in -+ nonstopux*) version_type=nonstopux ;; -+ *) version_type=irix ;; -+ esac -+ need_lib_prefix=no -+ need_version=no -+ soname_spec='${libname}${release}.so$major' -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so' -+ case $host_os in -+ irix5* | nonstopux*) -+ libsuff= shlibsuff= -+ ;; -+ *) -+ case $LD in # libtool.m4 will add one of these switches to LD -+ *-32|*"-32 ") libsuff= shlibsuff= libmagic=32-bit;; -+ *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 libmagic=N32;; -+ *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;; -+ *) libsuff= shlibsuff= libmagic=never-match;; -+ esac -+ ;; -+ esac -+ shlibpath_var=LD_LIBRARY${shlibsuff}_PATH -+ shlibpath_overrides_runpath=no -+ sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" -+ sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" -+ ;; -+ -+# No shared lib support for Linux oldld, aout, or coff. -+linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*) -+ dynamic_linker=no -+ ;; -+ -+# This must be Linux ELF. -+linux-gnu*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=no -+ # This implies no fast_install, which is unacceptable. -+ # Some rework will be needed to allow for fast_install -+ # before this can be enabled. -+ hardcode_into_libs=yes -+ -+ # We used to test for /lib/ld.so.1 and disable shared libraries on -+ # powerpc, because MkLinux only supported shared libraries with the -+ # GNU dynamic linker. Since this was broken with cross compilers, -+ # most powerpc-linux boxes support dynamic linking these days and -+ # people can always --disable-shared, the test was removed, and we -+ # assume the GNU/Linux dynamic linker is in use. -+ dynamic_linker='GNU/Linux ld.so' -+ ;; -+ -+netbsd*) -+ version_type=sunos -+ need_lib_prefix=no -+ need_version=no -+ if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then -+ library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' -+ dynamic_linker='NetBSD (a.out) ld.so' -+ else -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so' -+ soname_spec='${libname}${release}.so$major' -+ dynamic_linker='NetBSD ld.elf_so' -+ fi -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=yes -+ hardcode_into_libs=yes -+ ;; -+ -+newsos6) -+ version_type=linux -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=yes -+ ;; -+ -+openbsd*) -+ version_type=sunos -+ need_lib_prefix=no -+ need_version=no -+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then -+ case "$host_os" in -+ openbsd2.[[89]] | openbsd2.[[89]].*) -+ shlibpath_overrides_runpath=no -+ ;; -+ *) -+ shlibpath_overrides_runpath=yes -+ ;; -+ esac -+ else -+ shlibpath_overrides_runpath=yes -+ fi -+ library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ ;; -+ -+os2*) -+ libname_spec='$name' -+ need_lib_prefix=no -+ library_names_spec='$libname.dll $libname.a' -+ dynamic_linker='OS/2 ld.exe' -+ shlibpath_var=LIBPATH -+ ;; -+ -+osf3* | osf4* | osf5*) -+ version_type=osf -+ need_version=no -+ need_lib_prefix=no -+ soname_spec='${libname}${release}.so$major' -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ shlibpath_var=LD_LIBRARY_PATH -+ sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" -+ sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" -+ hardcode_into_libs=yes -+ ;; -+ -+sco3.2v5*) -+ version_type=osf -+ soname_spec='${libname}${release}.so$major' -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ shlibpath_var=LD_LIBRARY_PATH -+ ;; -+ -+solaris*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=yes -+ hardcode_into_libs=yes -+ # ldd complains unless libraries are executable -+ postinstall_cmds='chmod +x $lib' -+ ;; -+ -+sunos4*) -+ version_type=sunos -+ library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' -+ finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=yes -+ if test "$with_gnu_ld" = yes; then -+ need_lib_prefix=no -+ fi -+ need_version=yes -+ ;; -+ -+sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) -+ version_type=linux -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ shlibpath_var=LD_LIBRARY_PATH -+ case $host_vendor in -+ sni) -+ shlibpath_overrides_runpath=no -+ need_lib_prefix=no -+ export_dynamic_flag_spec='${wl}-Blargedynsym' -+ runpath_var=LD_RUN_PATH -+ ;; -+ siemens) -+ need_lib_prefix=no -+ ;; -+ motorola) -+ need_lib_prefix=no -+ need_version=no -+ shlibpath_overrides_runpath=no -+ sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' -+ ;; -+ esac -+ ;; -+ -+uts4*) -+ version_type=linux -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ shlibpath_var=LD_LIBRARY_PATH -+ ;; -+ -+dgux*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ shlibpath_var=LD_LIBRARY_PATH -+ ;; -+ -+sysv4*MP*) -+ if test -d /usr/nec ;then -+ version_type=linux -+ library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so' -+ soname_spec='$libname.so.$major' -+ shlibpath_var=LD_LIBRARY_PATH -+ fi -+ ;; -+ -+*) -+ dynamic_linker=no -+ ;; -+esac -+AC_MSG_RESULT([$dynamic_linker]) -+test "$dynamic_linker" = no && can_build_shared=no -+## -+## END FIXME -+ -+## FIXME: this should be a separate macro -+## -+# Report the final consequences. -+AC_MSG_CHECKING([if libtool supports shared libraries]) -+AC_MSG_RESULT([$can_build_shared]) -+## -+## END FIXME -+ -+## FIXME: this should be a separate macro -+## -+AC_MSG_CHECKING([whether to build shared libraries]) -+test "$can_build_shared" = "no" && enable_shared=no -+ -+# On AIX, shared libraries and static libraries use the same namespace, and -+# are all built from PIC. -+case "$host_os" in -+aix3*) -+ test "$enable_shared" = yes && enable_static=no -+ if test -n "$RANLIB"; then -+ archive_cmds="$archive_cmds~\$RANLIB \$lib" -+ postinstall_cmds='$RANLIB $lib' -+ fi -+ ;; -+ -+aix4*) -+ if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then -+ test "$enable_shared" = yes && enable_static=no -+ fi -+ ;; -+esac -+AC_MSG_RESULT([$enable_shared]) -+## -+## END FIXME -+ -+## FIXME: this should be a separate macro -+## -+AC_MSG_CHECKING([whether to build static libraries]) -+# Make sure either enable_shared or enable_static is yes. -+test "$enable_shared" = yes || enable_static=yes -+AC_MSG_RESULT([$enable_static]) -+## -+## END FIXME -+ -+if test "$hardcode_action" = relink; then -+ # Fast installation is not supported -+ enable_fast_install=no -+elif test "$shlibpath_overrides_runpath" = yes || -+ test "$enable_shared" = no; then -+ # Fast installation is not necessary -+ enable_fast_install=needless -+fi -+ -+variables_saved_for_relink="PATH $shlibpath_var $runpath_var" -+if test "$GCC" = yes; then -+ variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" -+fi -+ -+AC_LIBTOOL_DLOPEN_SELF -+ -+## FIXME: this should be a separate macro -+## -+if test "$enable_shared" = yes && test "$GCC" = yes; then -+ case $archive_cmds in -+ *'~'*) -+ # FIXME: we may have to deal with multi-command sequences. -+ ;; -+ '$CC '*) -+ # Test whether the compiler implicitly links with -lc since on some -+ # systems, -lgcc has to come before -lc. If gcc already passes -lc -+ # to ld, don't add -lc before -lgcc. -+ AC_MSG_CHECKING([whether -lc should be explicitly linked in]) -+ AC_CACHE_VAL([lt_cv_archive_cmds_need_lc], -+ [$rm conftest* -+ echo 'static int dummy;' > conftest.$ac_ext -+ -+ if AC_TRY_EVAL(ac_compile); then -+ soname=conftest -+ lib=conftest -+ libobjs=conftest.$ac_objext -+ deplibs= -+ wl=$lt_cv_prog_cc_wl -+ compiler_flags=-v -+ linker_flags=-v -+ verstring= -+ output_objdir=. -+ libname=conftest -+ save_allow_undefined_flag=$allow_undefined_flag -+ allow_undefined_flag= -+ if AC_TRY_EVAL(archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1) -+ then -+ lt_cv_archive_cmds_need_lc=no -+ else -+ lt_cv_archive_cmds_need_lc=yes -+ fi -+ allow_undefined_flag=$save_allow_undefined_flag -+ else -+ cat conftest.err 1>&5 -+ fi]) -+ AC_MSG_RESULT([$lt_cv_archive_cmds_need_lc]) -+ ;; -+ esac -+fi -+need_lc=${lt_cv_archive_cmds_need_lc-yes} -+## -+## END FIXME -+ -+## FIXME: this should be a separate macro -+## -+# The second clause should only fire when bootstrapping the -+# libtool distribution, otherwise you forgot to ship ltmain.sh -+# with your package, and you will get complaints that there are -+# no rules to generate ltmain.sh. -+if test -f "$ltmain"; then -+ : -+else -+ # If there is no Makefile yet, we rely on a make rule to execute -+ # `config.status --recheck' to rerun these tests and create the -+ # libtool script then. -+ test -f Makefile && make "$ltmain" -+fi - --# Actually configure libtool. ac_aux_dir is where install-sh is found. --CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \ --LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ --LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" \ --DLLTOOL="$DLLTOOL" AS="$AS" OBJDUMP="$OBJDUMP" \ --${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \ --$libtool_flags --no-verify $ac_aux_dir/ltmain.sh $lt_target \ --|| AC_MSG_ERROR([libtool configure failed]) -+if test -f "$ltmain"; then -+ trap "$rm \"${ofile}T\"; exit 1" 1 2 15 -+ $rm -f "${ofile}T" -+ -+ echo creating $ofile -+ -+ # Now quote all the things that may contain metacharacters while being -+ # careful not to overquote the AC_SUBSTed values. We take copies of the -+ # variables and quote the copies for generation of the libtool script. -+ for var in echo old_CC old_CFLAGS SED \ -+ AR AR_FLAGS CC LD LN_S NM SHELL \ -+ reload_flag reload_cmds wl \ -+ pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \ -+ thread_safe_flag_spec whole_archive_flag_spec libname_spec \ -+ library_names_spec soname_spec \ -+ RANLIB old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \ -+ old_postuninstall_cmds archive_cmds archive_expsym_cmds postinstall_cmds \ -+ postuninstall_cmds extract_expsyms_cmds old_archive_from_expsyms_cmds \ -+ old_striplib striplib file_magic_cmd export_symbols_cmds \ -+ deplibs_check_method allow_undefined_flag no_undefined_flag \ -+ finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \ -+ global_symbol_to_c_name_address \ -+ hardcode_libdir_flag_spec hardcode_libdir_separator \ -+ sys_lib_search_path_spec sys_lib_dlsearch_path_spec \ -+ compiler_c_o compiler_o_lo need_locks exclude_expsyms include_expsyms; do -+ -+ case $var in -+ reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \ -+ old_postinstall_cmds | old_postuninstall_cmds | \ -+ export_symbols_cmds | archive_cmds | archive_expsym_cmds | \ -+ extract_expsyms_cmds | old_archive_from_expsyms_cmds | \ -+ postinstall_cmds | postuninstall_cmds | \ -+ finish_cmds | sys_lib_search_path_spec | sys_lib_dlsearch_path_spec) -+ # Double-quote double-evaled strings. -+ eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" -+ ;; -+ *) -+ eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\"" -+ ;; -+ esac -+ done - --# Reload cache, that may have been modified by ltconfig --AC_CACHE_LOAD -+ cat <<__EOF__ > "${ofile}T" -+#! $SHELL - --# This can be used to rebuild libtool when needed --LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh" -+# `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. -+# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP) -+# NOTE: Changes made to this file will be lost: look at ltmain.sh. -+# -+# Copyright (C) 1996-2000 Free Software Foundation, Inc. -+# Originally by Gordon Matzigkeit , 1996 -+# -+# This program is free software; you can redistribute it and/or modify -+# it under the terms of the GNU General Public License as published by -+# the Free Software Foundation; either version 2 of the License, or -+# (at your option) any later version. -+# -+# This program is distributed in the hope that it will be useful, but -+# WITHOUT ANY WARRANTY; without even the implied warranty of -+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+# General Public License for more details. -+# -+# You should have received a copy of the GNU General Public License -+# along with this program; if not, write to the Free Software -+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -+# -+# As a special exception to the GNU General Public License, if you -+# distribute this file as part of a program that contains a -+# configuration script generated by Autoconf, you may include it under -+# the same distribution terms that you use for the rest of that program. - --# Always use our own libtool. --LIBTOOL='$(SHELL) $(top_builddir)/libtool' --AC_SUBST(LIBTOOL)dnl -+# A sed that does not truncate output. -+SED=$lt_SED - --# Redirect the config.log output again, so that the ltconfig log is not --# clobbered by the next message. --exec 5>>./config.log --]) -+# Sed that helps us avoid accidentally triggering echo(1) options like -n. -+Xsed="${SED} -e s/^X//" - --AC_DEFUN(AC_LIBTOOL_SETUP, --[AC_PREREQ(2.13)dnl --AC_REQUIRE([AC_ENABLE_SHARED])dnl --AC_REQUIRE([AC_ENABLE_STATIC])dnl --AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl --AC_REQUIRE([AC_CANONICAL_HOST])dnl --AC_REQUIRE([AC_CANONICAL_BUILD])dnl --AC_REQUIRE([AC_PROG_RANLIB])dnl --AC_REQUIRE([AC_PROG_CC])dnl --AC_REQUIRE([AC_PROG_LD])dnl --AC_REQUIRE([AC_PROG_NM])dnl --AC_REQUIRE([AC_PROG_LN_S])dnl --dnl -+# The HP-UX ksh and POSIX shell print the target directory to stdout -+# if CDPATH is set. -+if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi - --case "$target" in --NONE) lt_target="$host" ;; --*) lt_target="$target" ;; --esac -+# ### BEGIN LIBTOOL CONFIG - --# Check for any special flags to pass to ltconfig. --libtool_flags="--cache-file=$cache_file" --test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared" --test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static" --test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install" --test "$ac_cv_prog_gcc" = yes && libtool_flags="$libtool_flags --with-gcc" --test "$ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld" --ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN], --[libtool_flags="$libtool_flags --enable-dlopen"]) --ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], --[libtool_flags="$libtool_flags --enable-win32-dll"]) --AC_ARG_ENABLE(libtool-lock, -- [ --disable-libtool-lock avoid locking (might break parallel builds)]) --test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock" --test x"$silent" = xyes && libtool_flags="$libtool_flags --silent" -+# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: - --# Some flags need to be propagated to the compiler or linker for good --# libtool support. --case "$lt_target" in --*-*-irix6*) -- # Find out which ABI we are using. -- echo '[#]line __oline__ "configure"' > conftest.$ac_ext -- if AC_TRY_EVAL(ac_compile); then -- case "`/usr/bin/file conftest.o`" in -- *32-bit*) -- LD="${LD-ld} -32" -- ;; -- *N32*) -- LD="${LD-ld} -n32" -- ;; -- *64-bit*) -- LD="${LD-ld} -64" -- ;; -- esac -- fi -- rm -rf conftest* -- ;; -+# Shell to use when invoking shell scripts. -+SHELL=$lt_SHELL - --*-*-sco3.2v5*) -- # On SCO OpenServer 5, we need -belf to get full-featured binaries. -- SAVE_CFLAGS="$CFLAGS" -- CFLAGS="$CFLAGS -belf" -- AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, -- [AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])]) -- if test x"$lt_cv_cc_needs_belf" != x"yes"; then -- # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf -- CFLAGS="$SAVE_CFLAGS" -- fi -- ;; -+# Whether or not to build shared libraries. -+build_libtool_libs=$enable_shared - --ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], --[*-*-cygwin* | *-*-mingw*) -- AC_CHECK_TOOL(DLLTOOL, dlltool, false) -- AC_CHECK_TOOL(AS, as, false) -- AC_CHECK_TOOL(OBJDUMP, objdump, false) -- ;; --]) --esac --]) -+# Whether or not to build static libraries. -+build_old_libs=$enable_static -+ -+# Whether or not to add -lc for building shared libraries. -+build_libtool_need_lc=$need_lc -+ -+# Whether or not to optimize for fast installation. -+fast_install=$enable_fast_install -+ -+# The host system. -+host_alias=$host_alias -+host=$host -+ -+# An echo program that does not interpret backslashes. -+echo=$lt_echo -+ -+# The archiver. -+AR=$lt_AR -+AR_FLAGS=$lt_AR_FLAGS -+ -+# The default C compiler. -+CC=$lt_CC -+ -+# Is the compiler the GNU C compiler? -+with_gcc=$GCC -+ -+# The linker used to build libraries. -+LD=$lt_LD -+ -+# Whether we need hard or soft links. -+LN_S=$lt_LN_S -+ -+# A BSD-compatible nm program. -+NM=$lt_NM -+ -+# A symbol stripping program -+STRIP="$STRIP" -+ -+# Used to examine libraries when file_magic_cmd begins "file" -+MAGIC_CMD=$MAGIC_CMD -+ -+# Used on cygwin: DLL creation program. -+DLLTOOL="$DLLTOOL" -+ -+# Used on cygwin: object dumper. -+OBJDUMP="$OBJDUMP" -+ -+# Used on cygwin: assembler. -+AS="$AS" -+ -+# The name of the directory that contains temporary libtool files. -+objdir=$objdir -+ -+# How to create reloadable object files. -+reload_flag=$lt_reload_flag -+reload_cmds=$lt_reload_cmds -+ -+# How to pass a linker flag through the compiler. -+wl=$lt_wl -+ -+# Object file suffix (normally "o"). -+objext="$ac_objext" -+ -+# Old archive suffix (normally "a"). -+libext="$libext" -+ -+# Executable file suffix (normally ""). -+exeext="$exeext" -+ -+# Additional compiler flags for building library objects. -+pic_flag=$lt_pic_flag -+pic_mode=$pic_mode -+ -+# Does compiler simultaneously support -c and -o options? -+compiler_c_o=$lt_compiler_c_o -+ -+# Can we write directly to a .lo ? -+compiler_o_lo=$lt_compiler_o_lo -+ -+# Must we lock files when doing compilation ? -+need_locks=$lt_need_locks -+ -+# Do we need the lib prefix for modules? -+need_lib_prefix=$need_lib_prefix -+ -+# Do we need a version for libraries? -+need_version=$need_version -+ -+# Whether dlopen is supported. -+dlopen_support=$enable_dlopen -+ -+# Whether dlopen of programs is supported. -+dlopen_self=$enable_dlopen_self -+ -+# Whether dlopen of statically linked programs is supported. -+dlopen_self_static=$enable_dlopen_self_static -+ -+# Compiler flag to prevent dynamic linking. -+link_static_flag=$lt_link_static_flag -+ -+# Compiler flag to turn off builtin functions. -+no_builtin_flag=$lt_no_builtin_flag -+ -+# Compiler flag to allow reflexive dlopens. -+export_dynamic_flag_spec=$lt_export_dynamic_flag_spec -+ -+# Compiler flag to generate shared objects directly from archives. -+whole_archive_flag_spec=$lt_whole_archive_flag_spec -+ -+# Compiler flag to generate thread-safe objects. -+thread_safe_flag_spec=$lt_thread_safe_flag_spec -+ -+# Library versioning type. -+version_type=$version_type -+ -+# Format of library name prefix. -+libname_spec=$lt_libname_spec -+ -+# List of archive names. First name is the real one, the rest are links. -+# The last name is the one that the linker finds with -lNAME. -+library_names_spec=$lt_library_names_spec -+ -+# The coded name of the library, if different from the real name. -+soname_spec=$lt_soname_spec -+ -+# Commands used to build and install an old-style archive. -+RANLIB=$lt_RANLIB -+old_archive_cmds=$lt_old_archive_cmds -+old_postinstall_cmds=$lt_old_postinstall_cmds -+old_postuninstall_cmds=$lt_old_postuninstall_cmds -+ -+# Create an old-style archive from a shared archive. -+old_archive_from_new_cmds=$lt_old_archive_from_new_cmds -+ -+# Create a temporary old-style archive to link instead of a shared archive. -+old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds -+ -+# Commands used to build and install a shared archive. -+archive_cmds=$lt_archive_cmds -+archive_expsym_cmds=$lt_archive_expsym_cmds -+postinstall_cmds=$lt_postinstall_cmds -+postuninstall_cmds=$lt_postuninstall_cmds -+ -+# Commands to strip libraries. -+old_striplib=$lt_old_striplib -+striplib=$lt_striplib -+ -+# Method to check whether dependent libraries are shared objects. -+deplibs_check_method=$lt_deplibs_check_method -+ -+# Command to use when deplibs_check_method == file_magic. -+file_magic_cmd=$lt_file_magic_cmd -+ -+# Flag that allows shared libraries with undefined symbols to be built. -+allow_undefined_flag=$lt_allow_undefined_flag -+ -+# Flag that forces no undefined symbols. -+no_undefined_flag=$lt_no_undefined_flag -+ -+# Commands used to finish a libtool library installation in a directory. -+finish_cmds=$lt_finish_cmds -+ -+# Same as above, but a single script fragment to be evaled but not shown. -+finish_eval=$lt_finish_eval -+ -+# Take the output of nm and produce a listing of raw symbols and C names. -+global_symbol_pipe=$lt_global_symbol_pipe -+ -+# Transform the output of nm in a proper C declaration -+global_symbol_to_cdecl=$lt_global_symbol_to_cdecl -+ -+# Transform the output of nm in a C name address pair -+global_symbol_to_c_name_address=$lt_global_symbol_to_c_name_address -+ -+# This is the shared library runtime path variable. -+runpath_var=$runpath_var -+ -+# This is the shared library path variable. -+shlibpath_var=$shlibpath_var -+ -+# Is shlibpath searched before the hard-coded library search path? -+shlibpath_overrides_runpath=$shlibpath_overrides_runpath -+ -+# How to hardcode a shared library path into an executable. -+hardcode_action=$hardcode_action -+ -+# Whether we should hardcode library paths into libraries. -+hardcode_into_libs=$hardcode_into_libs -+ -+# Flag to hardcode \$libdir into a binary during linking. -+# This must work even if \$libdir does not exist. -+hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec -+ -+# Whether we need a single -rpath flag with a separated argument. -+hardcode_libdir_separator=$lt_hardcode_libdir_separator -+ -+# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the -+# resulting binary. -+hardcode_direct=$hardcode_direct -+ -+# Set to yes if using the -LDIR flag during linking hardcodes DIR into the -+# resulting binary. -+hardcode_minus_L=$hardcode_minus_L -+ -+# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into -+# the resulting binary. -+hardcode_shlibpath_var=$hardcode_shlibpath_var -+ -+# Variables whose values should be saved in libtool wrapper scripts and -+# restored at relink time. -+variables_saved_for_relink="$variables_saved_for_relink" -+ -+# Whether libtool must link a program against all its dependency libraries. -+link_all_deplibs=$link_all_deplibs -+ -+# Compile-time system search path for libraries -+sys_lib_search_path_spec=$lt_sys_lib_search_path_spec -+ -+# Run-time system search path for libraries -+sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec -+ -+# Fix the shell variable \$srcfile for the compiler. -+fix_srcfile_path="$fix_srcfile_path" -+ -+# Set to yes if exported symbols are required. -+always_export_symbols=$always_export_symbols -+ -+# The commands to list exported symbols. -+export_symbols_cmds=$lt_export_symbols_cmds -+ -+# The commands to extract the exported symbol list from a shared archive. -+extract_expsyms_cmds=$lt_extract_expsyms_cmds -+ -+# Symbols that should not be listed in the preloaded symbols. -+exclude_expsyms=$lt_exclude_expsyms -+ -+# Symbols that must always be exported. -+include_expsyms=$lt_include_expsyms -+ -+# ### END LIBTOOL CONFIG -+ -+__EOF__ -+ -+ case $host_os in -+ aix3*) -+ cat <<\EOF >> "${ofile}T" -+ -+# AIX sometimes has problems with the GCC collect2 program. For some -+# reason, if we set the COLLECT_NAMES environment variable, the problems -+# vanish in a puff of smoke. -+if test "X${COLLECT_NAMES+set}" != Xset; then -+ COLLECT_NAMES= -+ export COLLECT_NAMES -+fi -+EOF -+ ;; -+ esac -+ -+ case $host_os in -+ cygwin* | mingw* | pw32* | os2*) -+ cat <<'EOF' >> "${ofile}T" -+ # This is a source program that is used to create dlls on Windows -+ # Don't remove nor modify the starting and closing comments -+# /* ltdll.c starts here */ -+# #define WIN32_LEAN_AND_MEAN -+# #include -+# #undef WIN32_LEAN_AND_MEAN -+# #include -+# -+# #ifndef __CYGWIN__ -+# # ifdef __CYGWIN32__ -+# # define __CYGWIN__ __CYGWIN32__ -+# # endif -+# #endif -+# -+# #ifdef __cplusplus -+# extern "C" { -+# #endif -+# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved); -+# #ifdef __cplusplus -+# } -+# #endif -+# -+# #ifdef __CYGWIN__ -+# #include -+# DECLARE_CYGWIN_DLL( DllMain ); -+# #endif -+# HINSTANCE __hDllInstance_base; -+# -+# BOOL APIENTRY -+# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved) -+# { -+# __hDllInstance_base = hInst; -+# return TRUE; -+# } -+# /* ltdll.c ends here */ -+ # This is a source program that is used to create import libraries -+ # on Windows for dlls which lack them. Don't remove nor modify the -+ # starting and closing comments -+# /* impgen.c starts here */ -+# /* Copyright (C) 1999-2000 Free Software Foundation, Inc. -+# -+# This file is part of GNU libtool. -+# -+# This program is free software; you can redistribute it and/or modify -+# it under the terms of the GNU General Public License as published by -+# the Free Software Foundation; either version 2 of the License, or -+# (at your option) any later version. -+# -+# This program is distributed in the hope that it will be useful, -+# but WITHOUT ANY WARRANTY; without even the implied warranty of -+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+# GNU General Public License for more details. -+# -+# You should have received a copy of the GNU General Public License -+# along with this program; if not, write to the Free Software -+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -+# */ -+# -+# #include /* for printf() */ -+# #include /* for open(), lseek(), read() */ -+# #include /* for O_RDONLY, O_BINARY */ -+# #include /* for strdup() */ -+# -+# /* O_BINARY isn't required (or even defined sometimes) under Unix */ -+# #ifndef O_BINARY -+# #define O_BINARY 0 -+# #endif -+# -+# static unsigned int -+# pe_get16 (fd, offset) -+# int fd; -+# int offset; -+# { -+# unsigned char b[2]; -+# lseek (fd, offset, SEEK_SET); -+# read (fd, b, 2); -+# return b[0] + (b[1]<<8); -+# } -+# -+# static unsigned int -+# pe_get32 (fd, offset) -+# int fd; -+# int offset; -+# { -+# unsigned char b[4]; -+# lseek (fd, offset, SEEK_SET); -+# read (fd, b, 4); -+# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24); -+# } -+# -+# static unsigned int -+# pe_as32 (ptr) -+# void *ptr; -+# { -+# unsigned char *b = ptr; -+# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24); -+# } -+# -+# int -+# main (argc, argv) -+# int argc; -+# char *argv[]; -+# { -+# int dll; -+# unsigned long pe_header_offset, opthdr_ofs, num_entries, i; -+# unsigned long export_rva, export_size, nsections, secptr, expptr; -+# unsigned long name_rvas, nexp; -+# unsigned char *expdata, *erva; -+# char *filename, *dll_name; -+# -+# filename = argv[1]; -+# -+# dll = open(filename, O_RDONLY|O_BINARY); -+# if (dll < 1) -+# return 1; -+# -+# dll_name = filename; -+# -+# for (i=0; filename[i]; i++) -+# if (filename[i] == '/' || filename[i] == '\\' || filename[i] == ':') -+# dll_name = filename + i +1; -+# -+# pe_header_offset = pe_get32 (dll, 0x3c); -+# opthdr_ofs = pe_header_offset + 4 + 20; -+# num_entries = pe_get32 (dll, opthdr_ofs + 92); -+# -+# if (num_entries < 1) /* no exports */ -+# return 1; -+# -+# export_rva = pe_get32 (dll, opthdr_ofs + 96); -+# export_size = pe_get32 (dll, opthdr_ofs + 100); -+# nsections = pe_get16 (dll, pe_header_offset + 4 +2); -+# secptr = (pe_header_offset + 4 + 20 + -+# pe_get16 (dll, pe_header_offset + 4 + 16)); -+# -+# expptr = 0; -+# for (i = 0; i < nsections; i++) -+# { -+# char sname[8]; -+# unsigned long secptr1 = secptr + 40 * i; -+# unsigned long vaddr = pe_get32 (dll, secptr1 + 12); -+# unsigned long vsize = pe_get32 (dll, secptr1 + 16); -+# unsigned long fptr = pe_get32 (dll, secptr1 + 20); -+# lseek(dll, secptr1, SEEK_SET); -+# read(dll, sname, 8); -+# if (vaddr <= export_rva && vaddr+vsize > export_rva) -+# { -+# expptr = fptr + (export_rva - vaddr); -+# if (export_rva + export_size > vaddr + vsize) -+# export_size = vsize - (export_rva - vaddr); -+# break; -+# } -+# } -+# -+# expdata = (unsigned char*)malloc(export_size); -+# lseek (dll, expptr, SEEK_SET); -+# read (dll, expdata, export_size); -+# erva = expdata - export_rva; -+# -+# nexp = pe_as32 (expdata+24); -+# name_rvas = pe_as32 (expdata+32); -+# -+# printf ("EXPORTS\n"); -+# for (i = 0; i> "${ofile}T" || (rm -f "${ofile}T"; exit 1) -+ -+ mv -f "${ofile}T" "$ofile" || \ -+ (rm -f "$ofile" && cp "${ofile}T" "$ofile" && rm -f "${ofile}T") -+ chmod +x "$ofile" -+fi -+## -+## END FIXME -+ -+])# _LT_AC_LTCONFIG_HACK - - # AC_LIBTOOL_DLOPEN - enable checks for dlopen support --AC_DEFUN(AC_LIBTOOL_DLOPEN, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])]) -+AC_DEFUN([AC_LIBTOOL_DLOPEN], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])]) - - # AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's --AC_DEFUN(AC_LIBTOOL_WIN32_DLL, [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])]) -+AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])]) - - # AC_ENABLE_SHARED - implement the --enable-shared flag - # Usage: AC_ENABLE_SHARED[(DEFAULT)] - # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to - # `yes'. --AC_DEFUN(AC_ENABLE_SHARED, [dnl --define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl -+AC_DEFUN([AC_ENABLE_SHARED], -+[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl - AC_ARG_ENABLE(shared, - changequote(<<, >>)dnl - << --enable-shared[=PKGS] build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT], - changequote([, ])dnl - [p=${PACKAGE-default} --case "$enableval" in -+case $enableval in - yes) enable_shared=yes ;; - no) enable_shared=no ;; - *) -@@ -167,21 +3062,22 @@ - ]) - - # AC_DISABLE_SHARED - set the default shared flag to --disable-shared --AC_DEFUN(AC_DISABLE_SHARED, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -+AC_DEFUN([AC_DISABLE_SHARED], -+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl - AC_ENABLE_SHARED(no)]) - - # AC_ENABLE_STATIC - implement the --enable-static flag - # Usage: AC_ENABLE_STATIC[(DEFAULT)] - # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to - # `yes'. --AC_DEFUN(AC_ENABLE_STATIC, [dnl --define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl -+AC_DEFUN([AC_ENABLE_STATIC], -+[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl - AC_ARG_ENABLE(static, - changequote(<<, >>)dnl - << --enable-static[=PKGS] build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT], - changequote([, ])dnl - [p=${PACKAGE-default} --case "$enableval" in -+case $enableval in - yes) enable_static=yes ;; - no) enable_static=no ;; - *) -@@ -200,7 +3096,8 @@ - ]) - - # AC_DISABLE_STATIC - set the default static flag to --disable-static --AC_DEFUN(AC_DISABLE_STATIC, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -+AC_DEFUN([AC_DISABLE_STATIC], -+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl - AC_ENABLE_STATIC(no)]) - - -@@ -208,14 +3105,14 @@ - # Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)] - # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to - # `yes'. --AC_DEFUN(AC_ENABLE_FAST_INSTALL, [dnl --define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl -+AC_DEFUN([AC_ENABLE_FAST_INSTALL], -+[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl - AC_ARG_ENABLE(fast-install, - changequote(<<, >>)dnl - << --enable-fast-install[=PKGS] optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT], - changequote([, ])dnl - [p=${PACKAGE-default} --case "$enableval" in -+case $enableval in - yes) enable_fast_install=yes ;; - no) enable_fast_install=no ;; - *) -@@ -233,29 +3130,120 @@ - enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl - ]) - --# AC_ENABLE_FAST_INSTALL - set the default to --disable-fast-install --AC_DEFUN(AC_DISABLE_FAST_INSTALL, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -+# AC_DISABLE_FAST_INSTALL - set the default to --disable-fast-install -+AC_DEFUN([AC_DISABLE_FAST_INSTALL], -+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl - AC_ENABLE_FAST_INSTALL(no)]) - -+# AC_LIBTOOL_PICMODE - implement the --with-pic flag -+# Usage: AC_LIBTOOL_PICMODE[(MODE)] -+# Where MODE is either `yes' or `no'. If omitted, it defaults to -+# `both'. -+AC_DEFUN([AC_LIBTOOL_PICMODE], -+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -+pic_mode=ifelse($#,1,$1,default)]) -+ -+ -+# AC_PATH_TOOL_PREFIX - find a file program which can recognise shared library -+AC_DEFUN([AC_PATH_TOOL_PREFIX], -+[AC_MSG_CHECKING([for $1]) -+AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, -+[case $MAGIC_CMD in -+ /*) -+ lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. -+ ;; -+ ?:/*) -+ lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path. -+ ;; -+ *) -+ ac_save_MAGIC_CMD="$MAGIC_CMD" -+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" -+dnl $ac_dummy forces splitting on constant user-supplied paths. -+dnl POSIX.2 word splitting is done only on the output of word expansions, -+dnl not every word. This closes a longstanding sh security hole. -+ ac_dummy="ifelse([$2], , $PATH, [$2])" -+ for ac_dir in $ac_dummy; do -+ test -z "$ac_dir" && ac_dir=. -+ if test -f $ac_dir/$1; then -+ lt_cv_path_MAGIC_CMD="$ac_dir/$1" -+ if test -n "$file_magic_test_file"; then -+ case $deplibs_check_method in -+ "file_magic "*) -+ file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" -+ MAGIC_CMD="$lt_cv_path_MAGIC_CMD" -+ if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | -+ egrep "$file_magic_regex" > /dev/null; then -+ : -+ else -+ cat <&2 -+ -+*** Warning: the command libtool uses to detect shared libraries, -+*** $file_magic_cmd, produces output that libtool cannot recognize. -+*** The result is that libtool may fail to recognize shared libraries -+*** as such. This will affect the creation of libtool libraries that -+*** depend on shared libraries, but programs linked with such libtool -+*** libraries will work regardless of this problem. Nevertheless, you -+*** may want to report the problem to your system manager and/or to -+*** bug-libtool@gnu.org -+ -+EOF -+ fi ;; -+ esac -+ fi -+ break -+ fi -+ done -+ IFS="$ac_save_ifs" -+ MAGIC_CMD="$ac_save_MAGIC_CMD" -+ ;; -+esac]) -+MAGIC_CMD="$lt_cv_path_MAGIC_CMD" -+if test -n "$MAGIC_CMD"; then -+ AC_MSG_RESULT($MAGIC_CMD) -+else -+ AC_MSG_RESULT(no) -+fi -+]) -+ -+ -+# AC_PATH_MAGIC - find a file program which can recognise a shared library -+AC_DEFUN([AC_PATH_MAGIC], -+[AC_REQUIRE([AC_CHECK_TOOL_PREFIX])dnl -+AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin:$PATH) -+if test -z "$lt_cv_path_MAGIC_CMD"; then -+ if test -n "$ac_tool_prefix"; then -+ AC_PATH_TOOL_PREFIX(file, /usr/bin:$PATH) -+ else -+ MAGIC_CMD=: -+ fi -+fi -+]) -+ -+ - # AC_PROG_LD - find the path to the GNU or non-GNU linker --AC_DEFUN(AC_PROG_LD, -+AC_DEFUN([AC_PROG_LD], - [AC_ARG_WITH(gnu-ld, - [ --with-gnu-ld assume the C compiler uses GNU ld [default=no]], - test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no) - AC_REQUIRE([AC_PROG_CC])dnl - AC_REQUIRE([AC_CANONICAL_HOST])dnl - AC_REQUIRE([AC_CANONICAL_BUILD])dnl -+AC_REQUIRE([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR])dnl - ac_prog=ld --if test "$ac_cv_prog_gcc" = yes; then -+if test "$GCC" = yes; then - # Check if gcc -print-prog-name=ld gives a path. - AC_MSG_CHECKING([for ld used by GCC]) -- ac_prog=`($CC -print-prog-name=ld) 2>&5` -- case "$ac_prog" in -+ case $host in -+ *-*-mingw*) -+ # gcc leaves a trailing carriage return which upsets mingw -+ ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; -+ *) -+ ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; -+ esac -+ case $ac_prog in - # Accept absolute paths. --changequote(,)dnl -- [\\/]* | [A-Za-z]:[\\/]*) -- re_direlt='/[^/][^/]*/\.\./' --changequote([,])dnl -+ [[\\/]]* | [[A-Za-z]]:[[\\/]]*) -+ re_direlt='/[[^/]][[^/]]*/\.\./' - # Canonicalize the path of ld - ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` - while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do -@@ -277,17 +3265,17 @@ - else - AC_MSG_CHECKING([for non-GNU ld]) - fi --AC_CACHE_VAL(ac_cv_path_LD, -+AC_CACHE_VAL(lt_cv_path_LD, - [if test -z "$LD"; then -- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" -+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH; do - test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then -- ac_cv_path_LD="$ac_dir/$ac_prog" -+ lt_cv_path_LD="$ac_dir/$ac_prog" - # Check to see if the program is GNU ld. I'd rather use --version, - # but apparently some GNU ld's only accept -v. - # Break only if it was the GNU/non-GNU ld that we prefer. -- if "$ac_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then -+ if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then - test "$with_gnu_ld" != no && break - else - test "$with_gnu_ld" != yes && break -@@ -296,9 +3284,9 @@ - done - IFS="$ac_save_ifs" - else -- ac_cv_path_LD="$LD" # Let the user override the test with a path. -+ lt_cv_path_LD="$LD" # Let the user override the test with a path. - fi]) --LD="$ac_cv_path_LD" -+LD="$lt_cv_path_LD" - if test -n "$LD"; then - AC_MSG_RESULT($LD) - else -@@ -308,56 +3296,255 @@ - AC_PROG_LD_GNU - ]) - --AC_DEFUN(AC_PROG_LD_GNU, --[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], ac_cv_prog_gnu_ld, -+# AC_PROG_LD_GNU - -+AC_DEFUN([AC_PROG_LD_GNU], -+[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld, - [# I'd rather use --version here, but apparently some GNU ld's only accept -v. - if $LD -v 2>&1 &5; then -- ac_cv_prog_gnu_ld=yes -+ lt_cv_prog_gnu_ld=yes - else -- ac_cv_prog_gnu_ld=no -+ lt_cv_prog_gnu_ld=no - fi]) -+with_gnu_ld=$lt_cv_prog_gnu_ld -+]) -+ -+# AC_PROG_LD_RELOAD_FLAG - find reload flag for linker -+# -- PORTME Some linkers may need a different reload flag. -+AC_DEFUN([AC_PROG_LD_RELOAD_FLAG], -+[AC_CACHE_CHECK([for $LD option to reload object files], lt_cv_ld_reload_flag, -+[lt_cv_ld_reload_flag='-r']) -+reload_flag=$lt_cv_ld_reload_flag -+test -n "$reload_flag" && reload_flag=" $reload_flag" -+]) -+ -+# AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies -+# -- PORTME fill in with the dynamic library characteristics -+AC_DEFUN([AC_DEPLIBS_CHECK_METHOD], -+[AC_CACHE_CHECK([how to recognise dependent libraries], -+lt_cv_deplibs_check_method, -+[lt_cv_file_magic_cmd='$MAGIC_CMD' -+lt_cv_file_magic_test_file= -+lt_cv_deplibs_check_method='unknown' -+# Need to set the preceding variable on all platforms that support -+# interlibrary dependencies. -+# 'none' -- dependencies not supported. -+# `unknown' -- same as none, but documents that we really don't know. -+# 'pass_all' -- all dependencies passed with no checks. -+# 'test_compile' -- check by making test program. -+# 'file_magic [[regex]]' -- check by looking for files in library path -+# which responds to the $file_magic_cmd with a given egrep regex. -+# If you have `file' or equivalent on your system and you're not sure -+# whether `pass_all' will *always* work, you probably want this one. -+ -+case $host_os in -+aix4* | aix5*) -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ -+beos*) -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ -+bsdi4*) -+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)' -+ lt_cv_file_magic_cmd='/usr/bin/file -L' -+ lt_cv_file_magic_test_file=/shlib/libc.so -+ ;; -+ -+cygwin* | mingw* | pw32*) -+ lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' -+ lt_cv_file_magic_cmd='$OBJDUMP -f' -+ ;; -+ -+darwin* | rhapsody*) -+ lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library' -+ lt_cv_file_magic_cmd='/usr/bin/file -L' -+ case "$host_os" in -+ rhapsody* | darwin1.[[012]]) -+ lt_cv_file_magic_test_file=`echo /System/Library/Frameworks/System.framework/Versions/*/System | head -1` -+ ;; -+ *) # Darwin 1.3 on -+ lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib' -+ ;; -+ esac -+ ;; -+ -+freebsd*) -+ if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then -+ case $host_cpu in -+ i*86 ) -+ # Not sure whether the presence of OpenBSD here was a mistake. -+ # Let's accept both of them until this is cleared up. -+ lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[[3-9]]86 (compact )?demand paged shared library' -+ lt_cv_file_magic_cmd=/usr/bin/file -+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` -+ ;; -+ esac -+ else -+ lt_cv_deplibs_check_method=pass_all -+ fi -+ ;; -+ -+gnu*) -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ -+hpux10.20*|hpux11*) -+ lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library' -+ lt_cv_file_magic_cmd=/usr/bin/file -+ lt_cv_file_magic_test_file=/usr/lib/libc.sl -+ ;; -+ -+irix5* | irix6* | nonstopux*) -+ case $host_os in -+ irix5* | nonstopux*) -+ # this will be overridden with pass_all, but let us keep it just in case -+ lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1" -+ ;; -+ *) -+ case $LD in -+ *-32|*"-32 ") libmagic=32-bit;; -+ *-n32|*"-n32 ") libmagic=N32;; -+ *-64|*"-64 ") libmagic=64-bit;; -+ *) libmagic=never-match;; -+ esac -+ # this will be overridden with pass_all, but let us keep it just in case -+ lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[[1234]] dynamic lib MIPS - version 1" -+ ;; -+ esac -+ lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*` -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ -+# This must be Linux ELF. -+linux-gnu*) -+ case $host_cpu in -+ alpha* | hppa* | i*86 | mips | mipsel | powerpc* | sparc* | ia64* | arm* | m68k) -+ lt_cv_deplibs_check_method=pass_all ;; -+ *) -+ # glibc up to 2.1.1 does not perform some relocations on ARM -+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' ;; -+ esac -+ lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` -+ ;; -+ -+netbsd*) -+ if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then -+ lt_cv_deplibs_check_method='match_pattern /lib[[^/\.]]+\.so\.[[0-9]]+\.[[0-9]]+$' -+ else -+ lt_cv_deplibs_check_method='match_pattern /lib[[^/\.]]+\.so$' -+ fi -+ ;; -+ -+newos6*) -+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)' -+ lt_cv_file_magic_cmd=/usr/bin/file -+ lt_cv_file_magic_test_file=/usr/lib/libnls.so -+ ;; -+ -+openbsd*) -+ lt_cv_file_magic_cmd=/usr/bin/file -+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` -+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then -+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB shared object' -+ else -+ lt_cv_deplibs_check_method='file_magic OpenBSD.* shared library' -+ fi -+ ;; -+ -+osf3* | osf4* | osf5*) -+ # this will be overridden with pass_all, but let us keep it just in case -+ lt_cv_deplibs_check_method='file_magic COFF format alpha shared library' -+ lt_cv_file_magic_test_file=/shlib/libc.so -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ -+sco3.2v5*) -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ -+solaris*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=/lib/libc.so -+ ;; -+ -+sysv5uw[[78]]* | sysv4*uw2*) -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ -+sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) -+ case $host_vendor in -+ motorola) -+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]' -+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` -+ ;; -+ ncr) -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ sequent) -+ lt_cv_file_magic_cmd='/bin/file' -+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' -+ ;; -+ sni) -+ lt_cv_file_magic_cmd='/bin/file' -+ lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib" -+ lt_cv_file_magic_test_file=/lib/libc.so -+ ;; -+ siemens) -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ esac -+ ;; -+esac -+]) -+file_magic_cmd=$lt_cv_file_magic_cmd -+deplibs_check_method=$lt_cv_deplibs_check_method - ]) - -+ - # AC_PROG_NM - find the path to a BSD-compatible name lister --AC_DEFUN(AC_PROG_NM, --[AC_MSG_CHECKING([for BSD-compatible nm]) --AC_CACHE_VAL(ac_cv_path_NM, -+AC_DEFUN([AC_PROG_NM], -+[AC_REQUIRE([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR])dnl -+AC_MSG_CHECKING([for BSD-compatible nm]) -+AC_CACHE_VAL(lt_cv_path_NM, - [if test -n "$NM"; then - # Let the user override the test. -- ac_cv_path_NM="$NM" -+ lt_cv_path_NM="$NM" - else -- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" -+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do - test -z "$ac_dir" && ac_dir=. -- if test -f $ac_dir/nm || test -f $ac_dir/nm$ac_exeext ; then -+ tmp_nm=$ac_dir/${ac_tool_prefix}nm -+ if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then - # Check to see if the nm accepts a BSD-compat flag. - # Adding the `sed 1q' prevents false positives on HP-UX, which says: - # nm: unknown option "B" ignored -- if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then -- ac_cv_path_NM="$ac_dir/nm -B" -+ # Tru64's nm complains that /dev/null is an invalid object file -+ if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then -+ lt_cv_path_NM="$tmp_nm -B" - break -- elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then -- ac_cv_path_NM="$ac_dir/nm -p" -+ elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then -+ lt_cv_path_NM="$tmp_nm -p" - break - else -- ac_cv_path_NM=${ac_cv_path_NM="$ac_dir/nm"} # keep the first match, but -+ lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but - continue # so that we can try to find one that supports BSD flags - fi - fi - done - IFS="$ac_save_ifs" -- test -z "$ac_cv_path_NM" && ac_cv_path_NM=nm -+ test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm - fi]) --NM="$ac_cv_path_NM" -+NM="$lt_cv_path_NM" - AC_MSG_RESULT([$NM]) - ]) - - # AC_CHECK_LIBM - check for math library --AC_DEFUN(AC_CHECK_LIBM, -+AC_DEFUN([AC_CHECK_LIBM], - [AC_REQUIRE([AC_CANONICAL_HOST])dnl - LIBM= --case "$lt_target" in --*-*-beos* | *-*-cygwin*) -+case $host in -+*-*-beos* | *-*-cygwin* | *-*-pw32*) - # These system don't have libm - ;; - *-ncr-sysv4.3*) -@@ -371,33 +3558,41 @@ - ]) - - # AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for --# the libltdl convenience library, adds --enable-ltdl-convenience to --# the configure arguments. Note that LIBLTDL is not AC_SUBSTed, nor --# is AC_CONFIG_SUBDIRS called. If DIR is not provided, it is assumed --# to be `${top_builddir}/libltdl'. Make sure you start DIR with --# '${top_builddir}/' (note the single quotes!) if your package is not --# flat, and, if you're not using automake, define top_builddir as --# appropriate in the Makefiles. --AC_DEFUN(AC_LIBLTDL_CONVENIENCE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -- case "$enable_ltdl_convenience" in -+# the libltdl convenience library and LTDLINCL to the include flags for -+# the libltdl header and adds --enable-ltdl-convenience to the -+# configure arguments. Note that LIBLTDL and LTDLINCL are not -+# AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If DIR is not -+# provided, it is assumed to be `libltdl'. LIBLTDL will be prefixed -+# with '${top_builddir}/' and LTDLINCL will be prefixed with -+# '${top_srcdir}/' (note the single quotes!). If your package is not -+# flat and you're not using automake, define top_builddir and -+# top_srcdir appropriately in the Makefiles. -+AC_DEFUN([AC_LIBLTDL_CONVENIENCE], -+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -+ case $enable_ltdl_convenience in - no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;; - "") enable_ltdl_convenience=yes - ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;; - esac -- LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdlc.la -- INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl']) -+ LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la -+ LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) -+ # For backwards non-gettext consistent compatibility... -+ INCLTDL="$LTDLINCL" - ]) - - # AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for --# the libltdl installable library, and adds --enable-ltdl-install to --# the configure arguments. Note that LIBLTDL is not AC_SUBSTed, nor --# is AC_CONFIG_SUBDIRS called. If DIR is not provided, it is assumed --# to be `${top_builddir}/libltdl'. Make sure you start DIR with --# '${top_builddir}/' (note the single quotes!) if your package is not --# flat, and, if you're not using automake, define top_builddir as --# appropriate in the Makefiles. -+# the libltdl installable library and LTDLINCL to the include flags for -+# the libltdl header and adds --enable-ltdl-install to the configure -+# arguments. Note that LIBLTDL and LTDLINCL are not AC_SUBSTed, nor is -+# AC_CONFIG_SUBDIRS called. If DIR is not provided and an installed -+# libltdl is not found, it is assumed to be `libltdl'. LIBLTDL will -+# be prefixed with '${top_builddir}/' and LTDLINCL will be prefixed -+# with '${top_srcdir}/' (note the single quotes!). If your package is -+# not flat and you're not using automake, define top_builddir and -+# top_srcdir appropriately in the Makefiles. - # In the future, this macro may have to be called after AC_PROG_LIBTOOL. --AC_DEFUN(AC_LIBLTDL_INSTALLABLE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -+AC_DEFUN([AC_LIBLTDL_INSTALLABLE], -+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl - AC_CHECK_LIB(ltdl, main, - [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no], - [if test x"$enable_ltdl_install" = xno; then -@@ -408,23 +3603,116 @@ - ]) - if test x"$enable_ltdl_install" = x"yes"; then - ac_configure_args="$ac_configure_args --enable-ltdl-install" -- LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdl.la -- INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl']) -+ LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la -+ LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) - else - ac_configure_args="$ac_configure_args --enable-ltdl-install=no" - LIBLTDL="-lltdl" -- INCLTDL= -+ LTDLINCL= - fi -+ # For backwards non-gettext consistent compatibility... -+ INCLTDL="$LTDLINCL" - ]) - --dnl old names --AC_DEFUN(AM_PROG_LIBTOOL, [indir([AC_PROG_LIBTOOL])])dnl --AC_DEFUN(AM_ENABLE_SHARED, [indir([AC_ENABLE_SHARED], $@)])dnl --AC_DEFUN(AM_ENABLE_STATIC, [indir([AC_ENABLE_STATIC], $@)])dnl --AC_DEFUN(AM_DISABLE_SHARED, [indir([AC_DISABLE_SHARED], $@)])dnl --AC_DEFUN(AM_DISABLE_STATIC, [indir([AC_DISABLE_STATIC], $@)])dnl --AC_DEFUN(AM_PROG_LD, [indir([AC_PROG_LD])])dnl --AC_DEFUN(AM_PROG_NM, [indir([AC_PROG_NM])])dnl -+# old names -+AC_DEFUN([AM_PROG_LIBTOOL], [AC_PROG_LIBTOOL]) -+AC_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) -+AC_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) -+AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) -+AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) -+AC_DEFUN([AM_PROG_LD], [AC_PROG_LD]) -+AC_DEFUN([AM_PROG_NM], [AC_PROG_NM]) -+ -+# This is just to silence aclocal about the macro not being used -+ifelse([AC_DISABLE_FAST_INSTALL]) -+ -+############################################################ -+# NOTE: This macro has been submitted for inclusion into # -+# GNU Autoconf as AC_PROG_SED. When it is available in # -+# a released version of Autoconf we should remove this # -+# macro and use it instead. # -+############################################################ -+# LT_AC_PROG_SED -+# -------------- -+# Check for a fully-functional sed program, that truncates -+# as few characters as possible. Prefer GNU sed if found. -+AC_DEFUN([LT_AC_PROG_SED], -+[AC_MSG_CHECKING([for a sed that does not truncate output]) -+AC_CACHE_VAL(lt_cv_path_SED, -+[# Loop through the user's path and test for sed and gsed. -+# Then use that list of sed's as ones to test for truncation. -+as_executable_p="test -f" -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_prog in sed gsed; do -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then -+ _sed_list="$_sed_list $as_dir/$ac_prog$ac_exec_ext" -+ fi -+ done -+ done -+done - --dnl This is just to silence aclocal about the macro not being used --ifelse([AC_DISABLE_FAST_INSTALL])dnl -+ # Create a temporary directory, and hook for its removal unless debugging. -+$debug || -+{ -+ trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 -+ trap '{ (exit 1); exit 1; }' 1 2 13 15 -+} -+ -+# Create a (secure) tmp directory for tmp files. -+: ${TMPDIR=/tmp} -+{ -+ tmp=`(umask 077 && mktemp -d -q "$TMPDIR/sedXXXXXX") 2>/dev/null` && -+ test -n "$tmp" && test -d "$tmp" -+} || -+{ -+ tmp=$TMPDIR/sed$$-$RANDOM -+ (umask 077 && mkdir $tmp) -+} || -+{ -+ echo "$me: cannot create a temporary directory in $TMPDIR" >&2 -+ { (exit 1); exit 1; } -+} -+ _max=0 -+ _count=0 -+ # Add /usr/xpg4/bin/sed as it is typically found on Solaris -+ # along with /bin/sed that truncates output. -+ for _sed in $_sed_list /usr/xpg4/bin/sed; do -+ test ! -f ${_sed} && break -+ cat /dev/null > "$tmp/sed.in" -+ _count=0 -+ echo ${ECHO_N-$ac_n} "0123456789${ECHO_C-$ac_c}" >"$tmp/sed.in" -+ # Check for GNU sed and select it if it is found. -+ if "${_sed}" --version 2>&1 < /dev/null | egrep '(GNU)' > /dev/null; then -+ lt_cv_path_SED=${_sed} -+ break -+ fi -+ while true; do -+ cat "$tmp/sed.in" "$tmp/sed.in" >"$tmp/sed.tmp" -+ mv "$tmp/sed.tmp" "$tmp/sed.in" -+ cp "$tmp/sed.in" "$tmp/sed.nl" -+ echo >>"$tmp/sed.nl" -+ ${_sed} -e 's/a$//' < "$tmp/sed.nl" >"$tmp/sed.out" || break -+ cmp -s "$tmp/sed.out" "$tmp/sed.nl" || break -+ # 40000 chars as input seems more than enough -+ test $_count -gt 10 && break -+ _count=`expr $_count + 1` -+ if test $_count -gt $_max; then -+ _max=$_count -+ lt_cv_path_SED=$_sed -+ fi -+ done -+ done -+ rm -rf "$tmp" -+]) -+if test "X$SED" != "X"; then -+ lt_cv_path_SED=$SED -+else -+ SED=$lt_cv_path_SED -+fi -+AC_MSG_RESULT([$SED]) -+]) ---- recode-3.6.orig/Makefile.in -+++ recode-3.6/Makefile.in -@@ -119,7 +119,7 @@ - DIST_COMMON = README ./stamp-h.in ABOUT-NLS AUTHORS BACKLOG COPYING \ - ChangeLog INSTALL Makefile.am Makefile.in NEWS THANKS TODO acconfig.h \ - acinclude.m4 aclocal.m4 config.guess config.h.in config.sub configure \ --configure.in install-sh ltconfig ltmain.sh missing mkinstalldirs -+configure.in install-sh ltmain.sh missing mkinstalldirs - - - DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) ---- recode-3.6.orig/ltmain.sh -+++ recode-3.6/ltmain.sh -@@ -1,7 +1,8 @@ - # ltmain.sh - Provide generalized library-building support services. --# NOTE: Changing this file will not affect anything until you rerun ltconfig. -+# NOTE: Changing this file will not affect anything until you rerun configure. - # --# Copyright (C) 1996-1999 Free Software Foundation, Inc. -+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001 -+# Free Software Foundation, Inc. - # Originally by Gordon Matzigkeit , 1996 - # - # This program is free software; you can redistribute it and/or modify -@@ -48,14 +49,14 @@ - fi - - # The name of this program. --progname=`$echo "$0" | sed 's%^.*/%%'` -+progname=`$echo "$0" | ${SED} 's%^.*/%%'` - modename="$progname" - - # Constants. - PROGRAM=ltmain.sh - PACKAGE=libtool --VERSION=1.3.4 --TIMESTAMP=" (1.385.2.196 1999/12/07 21:47:57)" -+VERSION=1.4.3 -+TIMESTAMP=" (1.922.2.111 2002/10/23 02:54:36) Debian$Rev: 50 $" - - default_mode= - help="Try \`$progname --help' for more information." -@@ -66,10 +67,19 @@ - - # Sed substitution that helps us do robust quoting. It backslashifies - # metacharacters that are still active within double-quoted strings. --Xsed='sed -e 1s/^X//' -+Xsed="${SED}"' -e 1s/^X//' - sed_quote_subst='s/\([\\`\\"$\\\\]\)/\\\1/g' --SP2NL='tr \040 \012' --NL2SP='tr \015\012 \040\040' -+# test EBCDIC or ASCII -+case `echo A|od -x` in -+ *[Cc]1*) # EBCDIC based system -+ SP2NL="tr '\100' '\n'" -+ NL2SP="tr '\r\n' '\100\100'" -+ ;; -+ *) # Assume ASCII based system -+ SP2NL="tr '\040' '\012'" -+ NL2SP="tr '\015\012' '\040\040'" -+ ;; -+esac - - # NLS nuisances. - # Only set LANG and LC_ALL to C if already set. -@@ -83,11 +93,9 @@ - save_LANG="$LANG"; LANG=C; export LANG - fi - --if test "$LTCONFIG_VERSION" != "$VERSION"; then -- echo "$modename: ltconfig version \`$LTCONFIG_VERSION' does not match $PROGRAM version \`$VERSION'" 1>&2 -- echo "Fatal configuration error. See the $PACKAGE docs for more information." 1>&2 -- exit 1 --fi -+# Make sure IFS has a sensible default -+: ${IFS=" -+"} - - if test "$build_libtool_libs" != yes && test "$build_old_libs" != yes; then - echo "$modename: not configured to build any kind of library" 1>&2 -@@ -113,16 +121,16 @@ - arg="$1" - shift - -- case "$arg" in -+ case $arg in - -*=*) optarg=`$echo "X$arg" | $Xsed -e 's/[-_a-zA-Z0-9]*=//'` ;; - *) optarg= ;; - esac - - # If the previous option needs an argument, assign it. - if test -n "$prev"; then -- case "$prev" in -+ case $prev in - execute_dlfiles) -- eval "$prev=\"\$$prev \$arg\"" -+ execute_dlfiles="$execute_dlfiles $arg" - ;; - *) - eval "$prev=\$arg" -@@ -135,7 +143,7 @@ - fi - - # Have we seen a non-optional argument yet? -- case "$arg" in -+ case $arg in - --help) - show_help=yes - ;; -@@ -146,7 +154,7 @@ - ;; - - --config) -- sed -e '1,/^### BEGIN LIBTOOL CONFIG/d' -e '/^### END LIBTOOL CONFIG/,$d' $0 -+ ${SED} -e '1,/^# ### BEGIN LIBTOOL CONFIG/d' -e '/^# ### END LIBTOOL CONFIG/,$d' $0 - exit 0 - ;; - -@@ -179,6 +187,8 @@ - --mode) prevopt="--mode" prev=mode ;; - --mode=*) mode="$optarg" ;; - -+ --preserve-dup-deps) duplicate_deps="yes" ;; -+ - --quiet | --silent) - show=: - ;; -@@ -207,16 +217,21 @@ - exit 1 - fi - -+# If this variable is set in any of the actions, the command in it -+# will be execed at the end. This prevents here-documents from being -+# left over by shells. -+exec_cmd= -+ - if test -z "$show_help"; then - - # Infer the operation mode. - if test -z "$mode"; then -- case "$nonopt" in -- *cc | *++ | gcc* | *-gcc*) -+ case $nonopt in -+ *cc | *++ | gcc* | *-gcc* | g++* | xlc*) - mode=link - for arg - do -- case "$arg" in -+ case $arg in - -c) - mode=compile - break -@@ -261,12 +276,13 @@ - help="Try \`$modename --help --mode=$mode' for more information." - - # These modes are in order of execution frequency so that they run quickly. -- case "$mode" in -+ case $mode in - # libtool compile mode - compile) - modename="$modename: compile" - # Get the compilation command and the source file. - base_compile= -+ prev= - lastarg= - srcfile="$nonopt" - suppress_output= -@@ -274,8 +290,34 @@ - user_target=no - for arg - do -+ case $prev in -+ "") ;; -+ xcompiler) -+ # Aesthetically quote the previous argument. -+ prev= -+ lastarg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` -+ -+ case $arg in -+ # Double-quote args containing other shell metacharacters. -+ # Many Bourne shells cannot handle close brackets correctly -+ # in scan sets, so we specify it separately. -+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") -+ arg="\"$arg\"" -+ ;; -+ esac -+ -+ # Add the previous argument to base_compile. -+ if test -z "$base_compile"; then -+ base_compile="$lastarg" -+ else -+ base_compile="$base_compile $lastarg" -+ fi -+ continue -+ ;; -+ esac -+ - # Accept any command-line options. -- case "$arg" in -+ case $arg in - -o) - if test "$user_target" != "no"; then - $echo "$modename: you cannot specify \`-o' more than once" 1>&2 -@@ -288,9 +330,53 @@ - build_old_libs=yes - continue - ;; -+ -+ -prefer-pic) -+ pic_mode=yes -+ continue -+ ;; -+ -+ -prefer-non-pic) -+ pic_mode=no -+ continue -+ ;; -+ -+ -Xcompiler) -+ prev=xcompiler -+ continue -+ ;; -+ -+ -Wc,*) -+ args=`$echo "X$arg" | $Xsed -e "s/^-Wc,//"` -+ lastarg= -+ save_ifs="$IFS"; IFS=',' -+ for arg in $args; do -+ IFS="$save_ifs" -+ -+ # Double-quote args containing other shell metacharacters. -+ # Many Bourne shells cannot handle close brackets correctly -+ # in scan sets, so we specify it separately. -+ case $arg in -+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") -+ arg="\"$arg\"" -+ ;; -+ esac -+ lastarg="$lastarg $arg" -+ done -+ IFS="$save_ifs" -+ lastarg=`$echo "X$lastarg" | $Xsed -e "s/^ //"` -+ -+ # Add the arguments to base_compile. -+ if test -z "$base_compile"; then -+ base_compile="$lastarg" -+ else -+ base_compile="$base_compile $lastarg" -+ fi -+ continue -+ ;; - esac - -- case "$user_target" in -+ case $user_target in - next) - # The next one is the -o target name - user_target=yes -@@ -316,10 +402,10 @@ - lastarg=`$echo "X$lastarg" | $Xsed -e "$sed_quote_subst"` - - # Double-quote args containing other shell metacharacters. -- # Many Bourne shells cannot handle close brackets correctly in scan -- # sets, so we specify it separately. -- case "$lastarg" in -- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) -+ # Many Bourne shells cannot handle close brackets correctly -+ # in scan sets, so we specify it separately. -+ case $lastarg in -+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - lastarg="\"$lastarg\"" - ;; - esac -@@ -332,7 +418,7 @@ - fi - done - -- case "$user_target" in -+ case $user_target in - set) - ;; - no) -@@ -348,7 +434,7 @@ - # Recognize several different file suffixes. - # If the user specifies -o file.o, it is replaced with file.lo - xform='[cCFSfmso]' -- case "$libobj" in -+ case $libobj in - *.ada) xform=ada ;; - *.adb) xform=adb ;; - *.ads) xform=ads ;; -@@ -363,7 +449,7 @@ - - libobj=`$echo "X$libobj" | $Xsed -e "s/\.$xform$/.lo/"` - -- case "$libobj" in -+ case $libobj in - *.lo) obj=`$echo "X$libobj" | $Xsed -e "$lo2o"` ;; - *) - $echo "$modename: cannot determine name of library object from \`$libobj'" 1>&2 -@@ -387,10 +473,21 @@ - $run $rm $removelist - trap "$run $rm $removelist; exit 1" 1 2 15 - -+ # On Cygwin there's no "real" PIC flag so we must build both object types -+ case $host_os in -+ cygwin* | mingw* | pw32* | os2*) -+ pic_mode=default -+ ;; -+ esac -+ if test "$pic_mode" = no && test "$deplibs_check_method" != pass_all; then -+ # non-PIC code in shared libraries is not supported -+ pic_mode=default -+ fi -+ - # Calculate the filename of the output object if compiler does - # not support -o with -c - if test "$compiler_c_o" = no; then -- output_obj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\..*$%%'`.${objext} -+ output_obj=`$echo "X$srcfile" | $Xsed -e 's%^.*/%%' -e 's%\.[^.]*$%%'`.${objext} - lockfile="$output_obj.lock" - removelist="$removelist $output_obj $lockfile" - trap "$run $rm $removelist; exit 1" 1 2 15 -@@ -402,7 +499,7 @@ - # Lock this critical section if it is needed - # We use this script file to make the link, it avoids creating a new file - if test "$need_locks" = yes; then -- until ln "$0" "$lockfile" 2>/dev/null; do -+ until $run ln "$0" "$lockfile" 2>/dev/null; do - $show "Waiting for $lockfile to be removed" - sleep 2 - done -@@ -434,8 +531,13 @@ - # Without this assignment, base_compile gets emptied. - fbsd_hideous_sh_bug=$base_compile - -- # All platforms use -DPIC, to notify preprocessed assembler code. -- command="$base_compile $srcfile $pic_flag -DPIC" -+ if test "$pic_mode" != no; then -+ # All platforms use -DPIC, to notify preprocessed assembler code. -+ command="$base_compile $srcfile $pic_flag -DPIC" -+ else -+ # Don't build PIC code -+ command="$base_compile $srcfile" -+ fi - if test "$build_old_libs" = yes; then - lo_libobj="$libobj" - dir=`$echo "X$libobj" | $Xsed -e 's%/[^/]*$%%'` -@@ -506,7 +608,8 @@ - fi - - # If we have no pic_flag, then copy the object into place and finish. -- if test -z "$pic_flag" && test "$build_old_libs" = yes; then -+ if (test -z "$pic_flag" || test "$pic_mode" != default) && -+ test "$build_old_libs" = yes; then - # Rename the .lo from within objdir to obj - if test -f $obj; then - $show $rm $obj -@@ -532,6 +635,10 @@ - # Now arrange that obj and lo_libobj become the same file - $show "(cd $xdir && $LN_S $baseobj $libobj)" - if $run eval '(cd $xdir && $LN_S $baseobj $libobj)'; then -+ # Unlock the critical section if it was locked -+ if test "$need_locks" != no; then -+ $run $rm "$lockfile" -+ fi - exit 0 - else - error=$? -@@ -546,7 +653,13 @@ - - # Only build a position-dependent object if we build old libraries. - if test "$build_old_libs" = yes; then -- command="$base_compile $srcfile" -+ if test "$pic_mode" != yes; then -+ # Don't build PIC code -+ command="$base_compile $srcfile" -+ else -+ # All platforms use -DPIC, to notify preprocessed assembler code. -+ command="$base_compile $srcfile $pic_flag -DPIC" -+ fi - if test "$compiler_c_o" = yes; then - command="$command -o $obj" - output_obj="$obj" -@@ -612,17 +725,17 @@ - - # Unlock the critical section if it was locked - if test "$need_locks" != no; then -- $rm "$lockfile" -+ $run $rm "$lockfile" - fi - - exit 0 - ;; - - # libtool link mode -- link) -+ link | relink) - modename="$modename: link" -- case "$host" in -- *-*-cygwin* | *-*-mingw* | *-*-os2*) -+ case $host in -+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) - # It is impossible to link a dll without this setting, and - # we shouldn't force the makefile maintainer to figure out - # which system we are compiling for in order to pass an extra -@@ -635,179 +748,12 @@ - # -no-undefined on the libtool link line when we can be certain - # that all symbols are satisfied, otherwise we get a static library. - allow_undefined=yes -- -- # This is a source program that is used to create dlls on Windows -- # Don't remove nor modify the starting and closing comments --# /* ltdll.c starts here */ --# #define WIN32_LEAN_AND_MEAN --# #include --# #undef WIN32_LEAN_AND_MEAN --# #include --# --# #ifndef __CYGWIN__ --# # ifdef __CYGWIN32__ --# # define __CYGWIN__ __CYGWIN32__ --# # endif --# #endif --# --# #ifdef __cplusplus --# extern "C" { --# #endif --# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved); --# #ifdef __cplusplus --# } --# #endif --# --# #ifdef __CYGWIN__ --# #include --# DECLARE_CYGWIN_DLL( DllMain ); --# #endif --# HINSTANCE __hDllInstance_base; --# --# BOOL APIENTRY --# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved) --# { --# __hDllInstance_base = hInst; --# return TRUE; --# } --# /* ltdll.c ends here */ -- # This is a source program that is used to create import libraries -- # on Windows for dlls which lack them. Don't remove nor modify the -- # starting and closing comments --# /* impgen.c starts here */ --# /* Copyright (C) 1999 Free Software Foundation, Inc. --# --# This file is part of GNU libtool. --# --# This program is free software; you can redistribute it and/or modify --# it under the terms of the GNU General Public License as published by --# the Free Software Foundation; either version 2 of the License, or --# (at your option) any later version. --# --# This program is distributed in the hope that it will be useful, --# but WITHOUT ANY WARRANTY; without even the implied warranty of --# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the --# GNU General Public License for more details. --# --# You should have received a copy of the GNU General Public License --# along with this program; if not, write to the Free Software --# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. --# */ --# --# #include /* for printf() */ --# #include /* for open(), lseek(), read() */ --# #include /* for O_RDONLY, O_BINARY */ --# #include /* for strdup() */ --# --# static unsigned int --# pe_get16 (fd, offset) --# int fd; --# int offset; --# { --# unsigned char b[2]; --# lseek (fd, offset, SEEK_SET); --# read (fd, b, 2); --# return b[0] + (b[1]<<8); --# } --# --# static unsigned int --# pe_get32 (fd, offset) --# int fd; --# int offset; --# { --# unsigned char b[4]; --# lseek (fd, offset, SEEK_SET); --# read (fd, b, 4); --# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24); --# } --# --# static unsigned int --# pe_as32 (ptr) --# void *ptr; --# { --# unsigned char *b = ptr; --# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24); --# } --# --# int --# main (argc, argv) --# int argc; --# char *argv[]; --# { --# int dll; --# unsigned long pe_header_offset, opthdr_ofs, num_entries, i; --# unsigned long export_rva, export_size, nsections, secptr, expptr; --# unsigned long name_rvas, nexp; --# unsigned char *expdata, *erva; --# char *filename, *dll_name; --# --# filename = argv[1]; --# --# dll = open(filename, O_RDONLY|O_BINARY); --# if (!dll) --# return 1; --# --# dll_name = filename; --# --# for (i=0; filename[i]; i++) --# if (filename[i] == '/' || filename[i] == '\\' || filename[i] == ':') --# dll_name = filename + i +1; --# --# pe_header_offset = pe_get32 (dll, 0x3c); --# opthdr_ofs = pe_header_offset + 4 + 20; --# num_entries = pe_get32 (dll, opthdr_ofs + 92); --# --# if (num_entries < 1) /* no exports */ --# return 1; --# --# export_rva = pe_get32 (dll, opthdr_ofs + 96); --# export_size = pe_get32 (dll, opthdr_ofs + 100); --# nsections = pe_get16 (dll, pe_header_offset + 4 +2); --# secptr = (pe_header_offset + 4 + 20 + --# pe_get16 (dll, pe_header_offset + 4 + 16)); --# --# expptr = 0; --# for (i = 0; i < nsections; i++) --# { --# char sname[8]; --# unsigned long secptr1 = secptr + 40 * i; --# unsigned long vaddr = pe_get32 (dll, secptr1 + 12); --# unsigned long vsize = pe_get32 (dll, secptr1 + 16); --# unsigned long fptr = pe_get32 (dll, secptr1 + 20); --# lseek(dll, secptr1, SEEK_SET); --# read(dll, sname, 8); --# if (vaddr <= export_rva && vaddr+vsize > export_rva) --# { --# expptr = fptr + (export_rva - vaddr); --# if (export_rva + export_size > vaddr + vsize) --# export_size = vsize - (export_rva - vaddr); --# break; --# } --# } --# --# expdata = (unsigned char*)malloc(export_size); --# lseek (dll, expptr, SEEK_SET); --# read (dll, expdata, export_size); --# erva = expdata - export_rva; --# --# nexp = pe_as32 (expdata+24); --# name_rvas = pe_as32 (expdata+32); --# --# printf ("EXPORTS\n"); --# for (i = 0; i\?\'\ \ ]*|*]*|"") -+ qarg=\"`$echo "X$arg" | $Xsed -e "$sed_quote_subst"`\" ### testsuite: skip nested quoting test -+ ;; -+ *) qarg=$arg ;; -+ esac -+ libtool_args="$libtool_args $qarg" - - # If the previous option needs an argument, assign it. - if test -n "$prev"; then -- case "$prev" in -+ case $prev in - output) - compile_command="$compile_command @OUTPUT@" - finalize_command="$finalize_command @OUTPUT@" - ;; - esac - -- case "$prev" in -+ case $prev in - dlfiles|dlprefiles) - if test "$preload" = no; then - # Add the symbol object into the linking commands. -@@ -905,7 +853,7 @@ - finalize_command="$finalize_command @SYMFILE@" - preload=yes - fi -- case "$arg" in -+ case $arg in - *.la | *.lo) ;; # We handle these cases below. - force) - if test "$dlself" = no; then -@@ -934,6 +882,7 @@ - dlprefiles="$dlprefiles $arg" - fi - prev= -+ continue - ;; - esac - ;; -@@ -951,6 +900,11 @@ - prev= - continue - ;; -+ inst_prefix) -+ inst_prefix_dir="$arg" -+ prev= -+ continue -+ ;; - release) - release="-$arg" - prev= -@@ -958,7 +912,7 @@ - ;; - rpath | xrpath) - # We need an absolute path. -- case "$arg" in -+ case $arg in - [\\/]* | [A-Za-z]:[\\/]*) ;; - *) - $echo "$modename: only absolute run-paths are allowed" 1>&2 -@@ -979,17 +933,32 @@ - prev= - continue - ;; -+ xcompiler) -+ compiler_flags="$compiler_flags $qarg" -+ prev= -+ compile_command="$compile_command $qarg" -+ finalize_command="$finalize_command $qarg" -+ continue -+ ;; -+ xlinker) -+ linker_flags="$linker_flags $qarg" -+ compiler_flags="$compiler_flags $wl$qarg" -+ prev= -+ compile_command="$compile_command $wl$qarg" -+ finalize_command="$finalize_command $wl$qarg" -+ continue -+ ;; - *) - eval "$prev=\"\$arg\"" - prev= - continue - ;; - esac -- fi -+ fi # test -n $prev - - prevarg="$arg" - -- case "$arg" in -+ case $arg in - -all-static) - if test -n "$link_static_flag"; then - compile_command="$compile_command $link_static_flag" -@@ -1026,7 +995,7 @@ - - -export-symbols | -export-symbols-regex) - if test -n "$export_symbols" || test -n "$export_symbols_regex"; then -- $echo "$modename: not more than one -exported-symbols argument allowed" -+ $echo "$modename: more than one -exported-symbols argument is not allowed" - exit 1 - fi - if test "X$arg" = "X-export-symbols"; then -@@ -1037,58 +1006,83 @@ - continue - ;; - -+ -inst-prefix-dir) -+ prev=inst_prefix -+ continue -+ ;; -+ -+ # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:* -+ # so, if we see these flags be careful not to treat them like -L -+ -L[A-Z][A-Z]*:*) -+ if test -z "$with_gcc"; then -+ case $host in -+ *-*-irix* | *-*-nonstopux*) -+ compile_command="$compile_command $arg" -+ finalize_command="$finalize_command $arg" -+ ;; -+ esac -+ fi -+ continue -+ ;; -+ - -L*) - dir=`$echo "X$arg" | $Xsed -e 's/^-L//'` - # We need an absolute path. -- case "$dir" in -+ case $dir in - [\\/]* | [A-Za-z]:[\\/]*) ;; - *) - absdir=`cd "$dir" && pwd` - if test -z "$absdir"; then -- $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2 -- $echo "$modename: passing it literally to the linker, although it might fail" 1>&2 -- absdir="$dir" -+ $echo "$modename: cannot determine absolute directory name of \`$dir'" 1>&2 -+ exit 1 - fi - dir="$absdir" - ;; - esac -- case " $deplibs " in -- *" $arg "*) ;; -- *) deplibs="$deplibs $arg";; -- esac -- case " $lib_search_path " in -- *" $dir "*) ;; -- *) lib_search_path="$lib_search_path $dir";; -+ case "$deplibs " in -+ *" -L$dir "*) ;; -+ *) -+ deplibs="$deplibs -L$dir" -+ lib_search_path="$lib_search_path $dir" -+ ;; - esac -- case "$host" in -- *-*-cygwin* | *-*-mingw* | *-*-os2*) -- dllsearchdir=`cd "$dir" && pwd || echo "$dir"` -- case ":$dllsearchpath:" in -- ::) dllsearchpath="$dllsearchdir";; -- *":$dllsearchdir:"*) ;; -- *) dllsearchpath="$dllsearchpath:$dllsearchdir";; -+ case $host in -+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) -+ case :$dllsearchpath: in -+ *":$dir:"*) ;; -+ *) dllsearchpath="$dllsearchpath:$dir";; - esac - ;; - esac -+ continue - ;; - - -l*) -- if test "$arg" = "-lc"; then -- case "$host" in -- *-*-cygwin* | *-*-mingw* | *-*-os2* | *-*-beos*) -- # These systems don't actually have c library (as such) -+ if test "X$arg" = "X-lc" || test "X$arg" = "X-lm"; then -+ case $host in -+ *-*-cygwin* | *-*-pw32* | *-*-beos*) -+ # These systems don't actually have a C or math library (as such) - continue - ;; -+ *-*-mingw* | *-*-os2*) -+ # These systems don't actually have a C library (as such) -+ test "X$arg" = "X-lc" && continue -+ ;; -+ *-*-openbsd* | *-*-freebsd*) -+ # Do not include libc due to us having libc/libc_r. -+ test "X$arg" = "X-lc" && continue -+ ;; - esac -- elif test "$arg" = "-lm"; then -- case "$host" in -- *-*-cygwin* | *-*-beos*) -- # These systems don't actually have math library (as such) -+ elif test "X$arg" = "X-lc_r"; then -+ case $host in -+ *-*-openbsd* | *-*-freebsd*) -+ # Do not include libc_r directly, use -pthread flag. - continue - ;; - esac - fi - deplibs="$deplibs $arg" -+ continue - ;; - - -module) -@@ -1096,6 +1090,25 @@ - continue - ;; - -+ -no-fast-install) -+ fast_install=no -+ continue -+ ;; -+ -+ -no-install) -+ case $host in -+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) -+ # The PATH hackery in wrapper scripts is required on Windows -+ # in order for the loader to find any dlls it needs. -+ $echo "$modename: warning: \`-no-install' is ignored for $host" 1>&2 -+ $echo "$modename: warning: assuming \`-no-fast-install' instead" 1>&2 -+ fast_install=no -+ ;; -+ *) no_install=yes ;; -+ esac -+ continue -+ ;; -+ - -no-undefined) - allow_undefined=no - continue -@@ -1121,7 +1134,7 @@ - -R*) - dir=`$echo "X$arg" | $Xsed -e 's/^-R//'` - # We need an absolute path. -- case "$dir" in -+ case $dir in - [\\/]* | [A-Za-z]:[\\/]*) ;; - *) - $echo "$modename: only absolute run-paths are allowed" 1>&2 -@@ -1136,11 +1149,11 @@ - ;; - - -static) -- # If we have no pic_flag, then this is the same as -all-static. -- if test -z "$pic_flag" && test -n "$link_static_flag"; then -- compile_command="$compile_command $link_static_flag" -- finalize_command="$finalize_command $link_static_flag" -- fi -+ # The effects of -static are defined in a previous loop. -+ # We used to do the same as -all-static on platforms that -+ # didn't have a PIC flag, but the assumption that the effects -+ # would be equivalent was wrong. It would break on at least -+ # Digital Unix and AIX. - continue - ;; - -@@ -1154,28 +1167,76 @@ - continue - ;; - -+ -Wc,*) -+ args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wc,//'` -+ arg= -+ save_ifs="$IFS"; IFS=',' -+ for flag in $args; do -+ IFS="$save_ifs" -+ case $flag in -+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") -+ flag="\"$flag\"" -+ ;; -+ esac -+ arg="$arg $wl$flag" -+ compiler_flags="$compiler_flags $flag" -+ done -+ IFS="$save_ifs" -+ arg=`$echo "X$arg" | $Xsed -e "s/^ //"` -+ ;; -+ -+ -Wl,*) -+ args=`$echo "X$arg" | $Xsed -e "$sed_quote_subst" -e 's/^-Wl,//'` -+ arg= -+ save_ifs="$IFS"; IFS=',' -+ for flag in $args; do -+ IFS="$save_ifs" -+ case $flag in -+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") -+ flag="\"$flag\"" -+ ;; -+ esac -+ arg="$arg $wl$flag" -+ compiler_flags="$compiler_flags $wl$flag" -+ linker_flags="$linker_flags $flag" -+ done -+ IFS="$save_ifs" -+ arg=`$echo "X$arg" | $Xsed -e "s/^ //"` -+ ;; -+ -+ -Xcompiler) -+ prev=xcompiler -+ continue -+ ;; -+ -+ -Xlinker) -+ prev=xlinker -+ continue -+ ;; -+ -+ -Kthread | -mthreads | -mt | -pthread | -pthreads | -threads | -qthreaded | -kthread ) -+ compiler_flags="$compiler_flags $arg" -+ continue -+ ;; -+ - # Some other compiler flag. - -* | +*) - # Unknown arguments in both finalize_command and compile_command need - # to be aesthetically quoted because they are evaled later. - arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` -- case "$arg" in -- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) -+ case $arg in -+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") - arg="\"$arg\"" - ;; - esac - ;; - -- *.o | *.obj | *.a | *.lib) -- # A standard object. -- objs="$objs $arg" -- ;; -- -- *.lo) -- # A library object. -+ *.lo | *.$objext) -+ # A library or standard object. - if test "$prev" = dlfiles; then -- dlfiles="$dlfiles $arg" -- if test "$build_libtool_libs" = yes && test "$dlopen" = yes; then -+ # This file was specified with -dlopen. -+ if test "$build_libtool_libs" = yes && test "$dlopen_support" = yes; then -+ dlfiles="$dlfiles $arg" - prev= - continue - else -@@ -1188,357 +1249,917 @@ - # Preload the old-style object. - dlprefiles="$dlprefiles "`$echo "X$arg" | $Xsed -e "$lo2o"` - prev= -+ else -+ case $arg in -+ *.lo) libobjs="$libobjs $arg" ;; -+ *) objs="$objs $arg" ;; -+ esac - fi -- libobjs="$libobjs $arg" -+ ;; -+ -+ *.$libext) -+ # An archive. -+ deplibs="$deplibs $arg" -+ old_deplibs="$old_deplibs $arg" -+ continue - ;; - - *.la) - # A libtool-controlled library. - -- dlname= -- libdir= -- library_names= -- old_library= -- -- # Check to see that this really is a libtool archive. -- if (sed -e '2q' $arg | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : -+ if test "$prev" = dlfiles; then -+ # This library was specified with -dlopen. -+ dlfiles="$dlfiles $arg" -+ prev= -+ elif test "$prev" = dlprefiles; then -+ # The library was specified with -dlpreopen. -+ dlprefiles="$dlprefiles $arg" -+ prev= - else -- $echo "$modename: \`$arg' is not a valid libtool archive" 1>&2 -- exit 1 -+ deplibs="$deplibs $arg" - fi -+ continue -+ ;; - -- # If the library was installed with an old release of libtool, -- # it will not redefine variable installed. -- installed=yes -- -- # Read the .la file -- # If there is no directory component, then add one. -- case "$arg" in -- */* | *\\*) . $arg ;; -- *) . ./$arg ;; -+ # Some other compiler argument. -+ *) -+ # Unknown arguments in both finalize_command and compile_command need -+ # to be aesthetically quoted because they are evaled later. -+ arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` -+ case $arg in -+ *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") -+ arg="\"$arg\"" -+ ;; - esac -+ ;; -+ esac # arg - -- # Get the name of the library we link against. -- linklib= -- for l in $old_library $library_names; do -- linklib="$l" -- done -- -- if test -z "$linklib"; then -- $echo "$modename: cannot find name of link library for \`$arg'" 1>&2 -- exit 1 -- fi -- -- # Find the relevant object directory and library name. -- name=`$echo "X$arg" | $Xsed -e 's%^.*/%%' -e 's/\.la$//' -e 's/^lib//'` -+ # Now actually substitute the argument into the commands. -+ if test -n "$arg"; then -+ compile_command="$compile_command $arg" -+ finalize_command="$finalize_command $arg" -+ fi -+ done # argument parsing loop - -- if test "X$installed" = Xyes; then -- dir="$libdir" -- else -- dir=`$echo "X$arg" | $Xsed -e 's%/[^/]*$%%'` -- if test "X$dir" = "X$arg"; then -- dir="$objdir" -- else -- dir="$dir/$objdir" -- fi -- fi -+ if test -n "$prev"; then -+ $echo "$modename: the \`$prevarg' option requires an argument" 1>&2 -+ $echo "$help" 1>&2 -+ exit 1 -+ fi - -- if test -n "$dependency_libs"; then -- # Extract -R and -L from dependency_libs -- temp_deplibs= -- for deplib in $dependency_libs; do -- case "$deplib" in -- -R*) temp_xrpath=`$echo "X$deplib" | $Xsed -e 's/^-R//'` -- case " $rpath $xrpath " in -- *" $temp_xrpath "*) ;; -- *) xrpath="$xrpath $temp_xrpath";; -- esac;; -- -L*) case "$compile_command $temp_deplibs " in -- *" $deplib "*) ;; -- *) temp_deplibs="$temp_deplibs $deplib";; -- esac -- temp_dir=`$echo "X$deplib" | $Xsed -e 's/^-L//'` -- case " $lib_search_path " in -- *" $temp_dir "*) ;; -- *) lib_search_path="$lib_search_path $temp_dir";; -- esac -- ;; -- *) temp_deplibs="$temp_deplibs $deplib";; -- esac -- done -- dependency_libs="$temp_deplibs" -- fi -+ if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then -+ eval arg=\"$export_dynamic_flag_spec\" -+ compile_command="$compile_command $arg" -+ finalize_command="$finalize_command $arg" -+ fi - -- if test -z "$libdir"; then -- # It is a libtool convenience library, so add in its objects. -- convenience="$convenience $dir/$old_library" -- old_convenience="$old_convenience $dir/$old_library" -- deplibs="$deplibs$dependency_libs" -- compile_command="$compile_command $dir/$old_library$dependency_libs" -- finalize_command="$finalize_command $dir/$old_library$dependency_libs" -- continue -- fi -+ # calculate the name of the file, without its directory -+ outputname=`$echo "X$output" | $Xsed -e 's%^.*/%%'` -+ libobjs_save="$libobjs" - -- # This library was specified with -dlopen. -- if test "$prev" = dlfiles; then -- dlfiles="$dlfiles $arg" -- if test -z "$dlname" || test "$dlopen" != yes || test "$build_libtool_libs" = no; then -- # If there is no dlname, no dlopen support or we're linking statically, -- # we need to preload. -- prev=dlprefiles -- else -- # We should not create a dependency on this library, but we -- # may need any libraries it requires. -- compile_command="$compile_command$dependency_libs" -- finalize_command="$finalize_command$dependency_libs" -- prev= -- continue -- fi -- fi -+ if test -n "$shlibpath_var"; then -+ # get the directories listed in $shlibpath_var -+ eval shlib_search_path=\`\$echo \"X\${$shlibpath_var}\" \| \$Xsed -e \'s/:/ /g\'\` -+ else -+ shlib_search_path= -+ fi -+ eval sys_lib_search_path=\"$sys_lib_search_path_spec\" -+ eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\" - -- # The library was specified with -dlpreopen. -- if test "$prev" = dlprefiles; then -- # Prefer using a static library (so that no silly _DYNAMIC symbols -- # are required to link). -- if test -n "$old_library"; then -- dlprefiles="$dlprefiles $dir/$old_library" -- else -- dlprefiles="$dlprefiles $dir/$linklib" -- fi -- prev= -- fi -+ output_objdir=`$echo "X$output" | $Xsed -e 's%/[^/]*$%%'` -+ if test "X$output_objdir" = "X$output"; then -+ output_objdir="$objdir" -+ else -+ output_objdir="$output_objdir/$objdir" -+ fi -+ # Create the object directory. -+ if test ! -d $output_objdir; then -+ $show "$mkdir $output_objdir" -+ $run $mkdir $output_objdir -+ status=$? -+ if test $status -ne 0 && test ! -d $output_objdir; then -+ exit $status -+ fi -+ fi - -- if test -n "$library_names" && -- { test "$prefer_static_libs" = no || test -z "$old_library"; }; then -- link_against_libtool_libs="$link_against_libtool_libs $arg" -- if test -n "$shlibpath_var"; then -- # Make sure the rpath contains only unique directories. -- case "$temp_rpath " in -- *" $dir "*) ;; -- *) temp_rpath="$temp_rpath $dir" ;; -- esac -- fi -+ # Determine the type of output -+ case $output in -+ "") -+ $echo "$modename: you must specify an output file" 1>&2 -+ $echo "$help" 1>&2 -+ exit 1 -+ ;; -+ *.$libext) linkmode=oldlib ;; -+ *.lo | *.$objext) linkmode=obj ;; -+ *.la) linkmode=lib ;; -+ *) linkmode=prog ;; # Anything else should be a program. -+ esac - -- # We need an absolute path. -- case "$dir" in -- [\\/] | [A-Za-z]:[\\/]*) absdir="$dir" ;; -- *) -- absdir=`cd "$dir" && pwd` -- if test -z "$absdir"; then -- $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2 -- $echo "$modename: passing it literally to the linker, although it might fail" 1>&2 -- absdir="$dir" -- fi -- ;; -- esac -- -- # This is the magic to use -rpath. -- # Skip directories that are in the system default run-time -- # search path, unless they have been requested with -R. -- case " $sys_lib_dlsearch_path " in -- *" $absdir "*) ;; -+ specialdeplibs= -+ libs= -+ # Find all interdependent deplibs by searching for libraries -+ # that are linked more than once (e.g. -la -lb -la) -+ for deplib in $deplibs; do -+ if test "X$duplicate_deps" = "Xyes" ; then -+ case "$libs " in -+ *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; -+ esac -+ fi -+ libs="$libs $deplib" -+ done -+ deplibs= -+ newdependency_libs= -+ newlib_search_path= -+ need_relink=no # whether we're linking any uninstalled libtool libraries -+ notinst_deplibs= # not-installed libtool libraries -+ notinst_path= # paths that contain not-installed libtool libraries -+ case $linkmode in -+ lib) -+ passes="conv link" -+ for file in $dlfiles $dlprefiles; do -+ case $file in -+ *.la) ;; - *) -- case "$compile_rpath " in -- *" $absdir "*) ;; -- *) compile_rpath="$compile_rpath $absdir" -- esac -+ $echo "$modename: libraries can \`-dlopen' only libtool libraries: $file" 1>&2 -+ exit 1 - ;; - esac -- -- case " $sys_lib_dlsearch_path " in -- *" $libdir "*) ;; -- *) -- case "$finalize_rpath " in -- *" $libdir "*) ;; -- *) finalize_rpath="$finalize_rpath $libdir" -- esac -- ;; -- esac -- -- lib_linked=yes -- case "$hardcode_action" in -- immediate | unsupported) -- if test "$hardcode_direct" = no; then -- compile_command="$compile_command $dir/$linklib" -- deplibs="$deplibs $dir/$linklib" -- case "$host" in -- *-*-cygwin* | *-*-mingw* | *-*-os2*) -- dllsearchdir=`cd "$dir" && pwd || echo "$dir"` -- if test -n "$dllsearchpath"; then -- dllsearchpath="$dllsearchpath:$dllsearchdir" -- else -- dllsearchpath="$dllsearchdir" -- fi -- ;; -- esac -- elif test "$hardcode_minus_L" = no; then -- case "$host" in -- *-*-sunos*) -- compile_shlibpath="$compile_shlibpath$dir:" -- ;; -- esac -- case "$compile_command " in -- *" -L$dir "*) ;; -- *) compile_command="$compile_command -L$dir";; -- esac -- compile_command="$compile_command -l$name" -- deplibs="$deplibs -L$dir -l$name" -- elif test "$hardcode_shlibpath_var" = no; then -- case ":$compile_shlibpath:" in -- *":$dir:"*) ;; -- *) compile_shlibpath="$compile_shlibpath$dir:";; -- esac -- compile_command="$compile_command -l$name" -- deplibs="$deplibs -l$name" -+ done -+ ;; -+ prog) -+ compile_deplibs= -+ finalize_deplibs= -+ alldeplibs=no -+ newdlfiles= -+ newdlprefiles= -+ passes="conv scan dlopen dlpreopen link" -+ ;; -+ *) passes="conv" -+ ;; -+ esac -+ for pass in $passes; do -+ if test $linkmode = prog; then -+ # Determine which files to process -+ case $pass in -+ dlopen) -+ libs="$dlfiles" -+ save_deplibs="$deplibs" # Collect dlpreopened libraries -+ deplibs= -+ ;; -+ dlpreopen) libs="$dlprefiles" ;; -+ link) libs="$deplibs %DEPLIBS% $dependency_libs" ;; -+ esac -+ fi -+ for deplib in $libs; do -+ lib= -+ found=no -+ case $deplib in -+ -l*) -+ if test $linkmode = oldlib && test $linkmode = obj; then -+ $echo "$modename: warning: \`-l' is ignored for archives/objects: $deplib" 1>&2 -+ continue -+ fi -+ if test $pass = conv; then -+ deplibs="$deplib $deplibs" -+ continue -+ fi -+ name=`$echo "X$deplib" | $Xsed -e 's/^-l//'` -+ for searchdir in $newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path; do -+ # Search the libtool library -+ lib="$searchdir/lib${name}.la" -+ if test -f "$lib"; then -+ found=yes -+ break -+ fi -+ done -+ if test "$found" != yes; then -+ # deplib doesn't seem to be a libtool library -+ if test "$linkmode,$pass" = "prog,link"; then -+ compile_deplibs="$deplib $compile_deplibs" -+ finalize_deplibs="$deplib $finalize_deplibs" - else -- lib_linked=no -+ deplibs="$deplib $deplibs" -+ test $linkmode = lib && newdependency_libs="$deplib $newdependency_libs" - fi -+ continue -+ fi -+ ;; # -l -+ -L*) -+ case $linkmode in -+ lib) -+ deplibs="$deplib $deplibs" -+ test $pass = conv && continue -+ newdependency_libs="$deplib $newdependency_libs" -+ newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'` - ;; -- -- relink) -- if test "$hardcode_direct" = yes; then -- compile_command="$compile_command $absdir/$linklib" -- deplibs="$deplibs $absdir/$linklib" -- elif test "$hardcode_minus_L" = yes; then -- case "$compile_command " in -- *" -L$absdir "*) ;; -- *) compile_command="$compile_command -L$absdir";; -- esac -- compile_command="$compile_command -l$name" -- deplibs="$deplibs -L$absdir -l$name" -- elif test "$hardcode_shlibpath_var" = yes; then -- case ":$compile_shlibpath:" in -- *":$absdir:"*) ;; -- *) compile_shlibpath="$compile_shlibpath$absdir:";; -- esac -- compile_command="$compile_command -l$name" -- deplibs="$deplibs -l$name" -+ prog) -+ if test $pass = conv; then -+ deplibs="$deplib $deplibs" -+ continue -+ fi -+ if test $pass = scan; then -+ deplibs="$deplib $deplibs" -+ newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'` - else -- lib_linked=no -+ compile_deplibs="$deplib $compile_deplibs" -+ finalize_deplibs="$deplib $finalize_deplibs" - fi - ;; -- - *) -- lib_linked=no -+ $echo "$modename: warning: \`-L' is ignored for archives/objects: $deplib" 1>&2 - ;; -- esac -+ esac # linkmode -+ continue -+ ;; # -L -+ -R*) -+ if test $pass = link; then -+ dir=`$echo "X$deplib" | $Xsed -e 's/^-R//'` -+ # Make sure the xrpath contains only unique directories. -+ case "$xrpath " in -+ *" $dir "*) ;; -+ *) xrpath="$xrpath $dir" ;; -+ esac -+ fi -+ deplibs="$deplib $deplibs" -+ continue -+ ;; -+ *.la) lib="$deplib" ;; -+ *.$libext) -+ if test $pass = conv; then -+ deplibs="$deplib $deplibs" -+ continue -+ fi -+ case $linkmode in -+ lib) -+ if test "$deplibs_check_method" != pass_all; then -+ echo -+ echo "*** Warning: Trying to link with static lib archive $deplib." -+ echo "*** I have the capability to make that library automatically link in when" -+ echo "*** you link to this library. But I can only do this if you have a" -+ echo "*** shared version of the library, which you do not appear to have" -+ echo "*** because the file extensions .$libext of this argument makes me believe" -+ echo "*** that it is just a static archive that I should not used here." -+ else -+ echo -+ echo "*** Warning: Linking the shared library $output against the" -+ echo "*** static library $deplib is not portable!" -+ deplibs="$deplib $deplibs" -+ fi -+ continue -+ ;; -+ prog) -+ if test $pass != link; then -+ deplibs="$deplib $deplibs" -+ else -+ compile_deplibs="$deplib $compile_deplibs" -+ finalize_deplibs="$deplib $finalize_deplibs" -+ fi -+ continue -+ ;; -+ esac # linkmode -+ ;; # *.$libext -+ *.lo | *.$objext) -+ if test $pass = dlpreopen || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then -+ # If there is no dlopen support or we're linking statically, -+ # we need to preload. -+ newdlprefiles="$newdlprefiles $deplib" -+ compile_deplibs="$deplib $compile_deplibs" -+ finalize_deplibs="$deplib $finalize_deplibs" -+ else -+ newdlfiles="$newdlfiles $deplib" -+ fi -+ continue -+ ;; -+ %DEPLIBS%) -+ alldeplibs=yes -+ continue -+ ;; -+ esac # case $deplib -+ if test $found = yes || test -f "$lib"; then : -+ else -+ $echo "$modename: cannot find the library \`$lib'" 1>&2 -+ exit 1 -+ fi -+ -+ # Check to see that this really is a libtool archive. -+ if (${SED} -e '2q' $lib | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : -+ else -+ $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 -+ exit 1 -+ fi -+ -+ ladir=`$echo "X$lib" | $Xsed -e 's%/[^/]*$%%'` -+ test "X$ladir" = "X$lib" && ladir="." - -- if test "$lib_linked" != yes; then -- $echo "$modename: configuration error: unsupported hardcode properties" -+ dlname= -+ dlopen= -+ dlpreopen= -+ libdir= -+ library_names= -+ old_library= -+ # If the library was installed with an old release of libtool, -+ # it will not redefine variable installed. -+ installed=yes -+ -+ # Read the .la file -+ case $lib in -+ */* | *\\*) . $lib ;; -+ *) . ./$lib ;; -+ esac -+ -+ if test "$linkmode,$pass" = "lib,link" || -+ test "$linkmode,$pass" = "prog,scan" || -+ { test $linkmode = oldlib && test $linkmode = obj; }; then -+ # Add dl[pre]opened files of deplib -+ test -n "$dlopen" && dlfiles="$dlfiles $dlopen" -+ test -n "$dlpreopen" && dlprefiles="$dlprefiles $dlpreopen" -+ fi -+ -+ if test $pass = conv; then -+ # Only check for convenience libraries -+ deplibs="$lib $deplibs" -+ if test -z "$libdir"; then -+ if test -z "$old_library"; then -+ $echo "$modename: cannot find name of link library for \`$lib'" 1>&2 -+ exit 1 -+ fi -+ # It is a libtool convenience library, so add in its objects. -+ convenience="$convenience $ladir/$objdir/$old_library" -+ old_convenience="$old_convenience $ladir/$objdir/$old_library" -+ tmp_libs= -+ for deplib in $dependency_libs; do -+ deplibs="$deplib $deplibs" -+ if test "X$duplicate_deps" = "Xyes" ; then -+ case "$tmp_libs " in -+ *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; -+ esac -+ fi -+ tmp_libs="$tmp_libs $deplib" -+ done -+ elif test $linkmode != prog && test $linkmode != lib; then -+ $echo "$modename: \`$lib' is not a convenience library" 1>&2 - exit 1 - fi -+ continue -+ fi # $pass = conv - -- # Finalize command for both is simple: just hardcode it. -- if test "$hardcode_direct" = yes; then -- finalize_command="$finalize_command $libdir/$linklib" -- elif test "$hardcode_minus_L" = yes; then -- case "$finalize_command " in -- *" -L$libdir "*) ;; -- *) finalize_command="$finalize_command -L$libdir";; -- esac -- finalize_command="$finalize_command -l$name" -- elif test "$hardcode_shlibpath_var" = yes; then -- case ":$finalize_shlibpath:" in -- *":$libdir:"*) ;; -- *) finalize_shlibpath="$finalize_shlibpath$libdir:";; -- esac -- finalize_command="$finalize_command -l$name" -+ # Get the name of the library we link against. -+ linklib= -+ for l in $old_library $library_names; do -+ linklib="$l" -+ done -+ if test -z "$linklib"; then -+ $echo "$modename: cannot find name of link library for \`$lib'" 1>&2 -+ exit 1 -+ fi -+ -+ # This library was specified with -dlopen. -+ if test $pass = dlopen; then -+ if test -z "$libdir"; then -+ $echo "$modename: cannot -dlopen a convenience library: \`$lib'" 1>&2 -+ exit 1 -+ fi -+ if test -z "$dlname" || test "$dlopen_support" != yes || test "$build_libtool_libs" = no; then -+ # If there is no dlname, no dlopen support or we're linking -+ # statically, we need to preload. -+ dlprefiles="$dlprefiles $lib" - else -- # We cannot seem to hardcode it, guess we'll fake it. -- case "$finalize_command " in -- *" -L$dir "*) ;; -- *) finalize_command="$finalize_command -L$libdir";; -- esac -- finalize_command="$finalize_command -l$name" -+ newdlfiles="$newdlfiles $lib" -+ fi -+ continue -+ fi # $pass = dlopen -+ -+ # We need an absolute path. -+ case $ladir in -+ [\\/]* | [A-Za-z]:[\\/]*) abs_ladir="$ladir" ;; -+ *) -+ abs_ladir=`cd "$ladir" && pwd` -+ if test -z "$abs_ladir"; then -+ $echo "$modename: warning: cannot determine absolute directory name of \`$ladir'" 1>&2 -+ $echo "$modename: passing it literally to the linker, although it might fail" 1>&2 -+ abs_ladir="$ladir" -+ fi -+ ;; -+ esac -+ laname=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` -+ -+ # Find the relevant object directory and library name. -+ if test "X$installed" = Xyes; then -+ if test ! -f "$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then -+ $echo "$modename: warning: library \`$lib' was moved." 1>&2 -+ dir="$ladir" -+ absdir="$abs_ladir" -+ libdir="$abs_ladir" -+ else -+ dir="$libdir" -+ absdir="$libdir" - fi - else -- # Transform directly to old archives if we don't build new libraries. -- if test -n "$pic_flag" && test -z "$old_library"; then -- $echo "$modename: cannot find static library for \`$arg'" 1>&2 -+ dir="$ladir/$objdir" -+ absdir="$abs_ladir/$objdir" -+ # Remove this search path later -+ notinst_path="$notinst_path $abs_ladir" -+ fi # $installed = yes -+ name=`$echo "X$laname" | $Xsed -e 's/\.la$//' -e 's/^lib//'` -+ -+ # This library was specified with -dlpreopen. -+ if test $pass = dlpreopen; then -+ if test -z "$libdir"; then -+ $echo "$modename: cannot -dlpreopen a convenience library: \`$lib'" 1>&2 - exit 1 - fi -+ # Prefer using a static library (so that no silly _DYNAMIC symbols -+ # are required to link). -+ if test -n "$old_library"; then -+ newdlprefiles="$newdlprefiles $dir/$old_library" -+ # Otherwise, use the dlname, so that lt_dlopen finds it. -+ elif test -n "$dlname"; then -+ newdlprefiles="$newdlprefiles $dir/$dlname" -+ else -+ newdlprefiles="$newdlprefiles $dir/$linklib" -+ fi -+ fi # $pass = dlpreopen - -- # Here we assume that one of hardcode_direct or hardcode_minus_L -- # is not unsupported. This is valid on all known static and -- # shared platforms. -- if test "$hardcode_direct" != unsupported; then -- test -n "$old_library" && linklib="$old_library" -- compile_command="$compile_command $dir/$linklib" -- finalize_command="$finalize_command $dir/$linklib" -+ if test -z "$libdir"; then -+ # Link the convenience library -+ if test $linkmode = lib; then -+ deplibs="$dir/$old_library $deplibs" -+ elif test "$linkmode,$pass" = "prog,link"; then -+ compile_deplibs="$dir/$old_library $compile_deplibs" -+ finalize_deplibs="$dir/$old_library $finalize_deplibs" - else -- case "$compile_command " in -- *" -L$dir "*) ;; -- *) compile_command="$compile_command -L$dir";; -+ deplibs="$lib $deplibs" -+ fi -+ continue -+ fi -+ -+ if test $linkmode = prog && test $pass != link; then -+ newlib_search_path="$newlib_search_path $ladir" -+ deplibs="$lib $deplibs" -+ -+ linkalldeplibs=no -+ if test "$link_all_deplibs" != no || test -z "$library_names" || -+ test "$build_libtool_libs" = no; then -+ linkalldeplibs=yes -+ fi -+ -+ tmp_libs= -+ for deplib in $dependency_libs; do -+ case $deplib in -+ -L*) newlib_search_path="$newlib_search_path "`$echo "X$deplib" | $Xsed -e 's/^-L//'`;; ### testsuite: skip nested quoting test -+ esac -+ # Need to link against all dependency_libs? -+ if test $linkalldeplibs = yes; then -+ deplibs="$deplib $deplibs" -+ else -+ # Need to hardcode shared library paths -+ # or/and link against static libraries -+ newdependency_libs="$deplib $newdependency_libs" -+ fi -+ if test "X$duplicate_deps" = "Xyes" ; then -+ case "$tmp_libs " in -+ *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; -+ esac -+ fi -+ tmp_libs="$tmp_libs $deplib" -+ done # for deplib -+ continue -+ fi # $linkmode = prog... -+ -+ link_static=no # Whether the deplib will be linked statically -+ if test -n "$library_names" && -+ { test "$prefer_static_libs" = no || test -z "$old_library"; }; then -+ # Link against this shared library -+ -+ if test "$linkmode,$pass" = "prog,link" || -+ { test $linkmode = lib && test $hardcode_into_libs = yes; }; then -+ # Hardcode the library path. -+ # Skip directories that are in the system default run-time -+ # search path. -+ case " $sys_lib_dlsearch_path " in -+ *" $absdir "*) ;; -+ *) -+ case "$compile_rpath " in -+ *" $absdir "*) ;; -+ *) compile_rpath="$compile_rpath $absdir" -+ esac -+ ;; - esac -- compile_command="$compile_command -l$name" -- case "$finalize_command " in -- *" -L$dir "*) ;; -- *) finalize_command="$finalize_command -L$dir";; -+ case " $sys_lib_dlsearch_path " in -+ *" $libdir "*) ;; -+ *) -+ case "$finalize_rpath " in -+ *" $libdir "*) ;; -+ *) finalize_rpath="$finalize_rpath $libdir" -+ esac -+ ;; - esac -- finalize_command="$finalize_command -l$name" -+ if test $linkmode = prog; then -+ # We need to hardcode the library path -+ if test -n "$shlibpath_var"; then -+ # Make sure the rpath contains only unique directories. -+ case "$temp_rpath " in -+ *" $dir "*) ;; -+ *" $absdir "*) ;; -+ *) temp_rpath="$temp_rpath $dir" ;; -+ esac -+ fi -+ fi -+ fi # $linkmode,$pass = prog,link... -+ -+ if test "$alldeplibs" = yes && -+ { test "$deplibs_check_method" = pass_all || -+ { test "$build_libtool_libs" = yes && -+ test -n "$library_names"; }; }; then -+ # We only need to search for static libraries -+ continue - fi -- fi - -- # Add in any libraries that this one depends upon. -- compile_command="$compile_command$dependency_libs" -- finalize_command="$finalize_command$dependency_libs" -- continue -- ;; -+ if test "$installed" = no; then -+ notinst_deplibs="$notinst_deplibs $lib" -+ need_relink=yes -+ fi -+ -+ if test -n "$old_archive_from_expsyms_cmds"; then -+ # figure out the soname -+ set dummy $library_names -+ realname="$2" -+ shift; shift -+ libname=`eval \\$echo \"$libname_spec\"` -+ # use dlname if we got it. it's perfectly good, no? -+ if test -n "$dlname"; then -+ soname="$dlname" -+ elif test -n "$soname_spec"; then -+ # bleh windows -+ case $host in -+ *cygwin*) -+ major=`expr $current - $age` -+ versuffix="-$major" -+ ;; -+ esac -+ eval soname=\"$soname_spec\" -+ else -+ soname="$realname" -+ fi - -- # Some other compiler argument. -- *) -- # Unknown arguments in both finalize_command and compile_command need -- # to be aesthetically quoted because they are evaled later. -- arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` -- case "$arg" in -- *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) -- arg="\"$arg\"" -- ;; -- esac -- ;; -- esac -+ # Make a new name for the extract_expsyms_cmds to use -+ soroot="$soname" -+ soname=`echo $soroot | ${SED} -e 's/^.*\///'` -+ newlib="libimp-`echo $soname | ${SED} 's/^lib//;s/\.dll$//'`.a" - -- # Now actually substitute the argument into the commands. -- if test -n "$arg"; then -- compile_command="$compile_command $arg" -- finalize_command="$finalize_command $arg" -- fi -- done -+ # If the library has no export list, then create one now -+ if test -f "$output_objdir/$soname-def"; then : -+ else -+ $show "extracting exported symbol list from \`$soname'" -+ save_ifs="$IFS"; IFS='~' -+ eval cmds=\"$extract_expsyms_cmds\" -+ for cmd in $cmds; do -+ IFS="$save_ifs" -+ $show "$cmd" -+ $run eval "$cmd" || exit $? -+ done -+ IFS="$save_ifs" -+ fi - -- if test -n "$prev"; then -- $echo "$modename: the \`$prevarg' option requires an argument" 1>&2 -- $echo "$help" 1>&2 -- exit 1 -- fi -+ # Create $newlib -+ if test -f "$output_objdir/$newlib"; then :; else -+ $show "generating import library for \`$soname'" -+ save_ifs="$IFS"; IFS='~' -+ eval cmds=\"$old_archive_from_expsyms_cmds\" -+ for cmd in $cmds; do -+ IFS="$save_ifs" -+ $show "$cmd" -+ $run eval "$cmd" || exit $? -+ done -+ IFS="$save_ifs" -+ fi -+ # make sure the library variables are pointing to the new library -+ dir=$output_objdir -+ linklib=$newlib -+ fi # test -n $old_archive_from_expsyms_cmds -+ -+ if test $linkmode = prog || test "$mode" != relink; then -+ add_shlibpath= -+ add_dir= -+ add= -+ lib_linked=yes -+ case $hardcode_action in -+ immediate | unsupported) -+ if test "$hardcode_direct" = no; then -+ add="$dir/$linklib" -+ elif test "$hardcode_minus_L" = no; then -+ case $host in -+ *-*-sunos*) add_shlibpath="$dir" ;; -+ esac -+ add_dir="-L$dir" -+ add="-l$name" -+ elif test "$hardcode_shlibpath_var" = no; then -+ add_shlibpath="$dir" -+ add="-l$name" -+ else -+ lib_linked=no -+ fi -+ ;; -+ relink) -+ if test "$hardcode_direct" = yes; then -+ add="$dir/$linklib" -+ elif test "$hardcode_minus_L" = yes; then -+ add_dir="-L$dir" -+ # Try looking first in the location we're being installed to. -+ if test -n "$inst_prefix_dir"; then -+ case "$libdir" in -+ [\/]*) -+ add_dir="$add_dir -L$inst_prefix_dir$libdir" -+ ;; -+ esac -+ fi -+ add="-l$name" -+ elif test "$hardcode_shlibpath_var" = yes; then -+ add_shlibpath="$dir" -+ add="-l$name" -+ else -+ lib_linked=no -+ fi -+ ;; -+ *) lib_linked=no ;; -+ esac - -- if test "$export_dynamic" = yes && test -n "$export_dynamic_flag_spec"; then -- eval arg=\"$export_dynamic_flag_spec\" -- compile_command="$compile_command $arg" -- finalize_command="$finalize_command $arg" -- fi -+ if test "$lib_linked" != yes; then -+ $echo "$modename: configuration error: unsupported hardcode properties" -+ exit 1 -+ fi - -- oldlibs= -- # calculate the name of the file, without its directory -- outputname=`$echo "X$output" | $Xsed -e 's%^.*/%%'` -- libobjs_save="$libobjs" -+ if test -n "$add_shlibpath"; then -+ case :$compile_shlibpath: in -+ *":$add_shlibpath:"*) ;; -+ *) compile_shlibpath="$compile_shlibpath$add_shlibpath:" ;; -+ esac -+ fi -+ if test $linkmode = prog; then -+ test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs" -+ test -n "$add" && compile_deplibs="$add $compile_deplibs" -+ else -+ test -n "$add_dir" && deplibs="$add_dir $deplibs" -+ test -n "$add" && deplibs="$add $deplibs" -+ if test "$hardcode_direct" != yes && \ -+ test "$hardcode_minus_L" != yes && \ -+ test "$hardcode_shlibpath_var" = yes; then -+ case :$finalize_shlibpath: in -+ *":$libdir:"*) ;; -+ *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;; -+ esac -+ fi -+ fi -+ fi - -- case "$output" in -- "") -- $echo "$modename: you must specify an output file" 1>&2 -- $echo "$help" 1>&2 -- exit 1 -- ;; -+ if test $linkmode = prog || test "$mode" = relink; then -+ add_shlibpath= -+ add_dir= -+ add= -+ # Finalize command for both is simple: just hardcode it. -+ if test "$hardcode_direct" = yes; then -+ add="$libdir/$linklib" -+ elif test "$hardcode_minus_L" = yes; then -+ add_dir="-L$libdir" -+ add="-l$name" -+ elif test "$hardcode_shlibpath_var" = yes; then -+ case :$finalize_shlibpath: in -+ *":$libdir:"*) ;; -+ *) finalize_shlibpath="$finalize_shlibpath$libdir:" ;; -+ esac -+ add="-l$name" -+ else -+ # We cannot seem to hardcode it, guess we'll fake it. -+ add_dir="-L$libdir" -+ # Try looking first in the location we're being installed to. -+ if test -n "$inst_prefix_dir"; then -+ case "$libdir" in -+ [\/]*) -+ add_dir="$add_dir -L$inst_prefix_dir$libdir" -+ ;; -+ esac -+ fi -+ add="-l$name" -+ fi - -- *.a | *.lib) -- if test -n "$link_against_libtool_libs"; then -- $echo "$modename: error: cannot link libtool libraries into archives" 1>&2 -- exit 1 -+ if test $linkmode = prog; then -+ test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs" -+ test -n "$add" && finalize_deplibs="$add $finalize_deplibs" -+ else -+ test -n "$add_dir" && deplibs="$add_dir $deplibs" -+ test -n "$add" && deplibs="$add $deplibs" -+ fi -+ fi -+ elif test $linkmode = prog; then -+ if test "$alldeplibs" = yes && -+ { test "$deplibs_check_method" = pass_all || -+ { test "$build_libtool_libs" = yes && -+ test -n "$library_names"; }; }; then -+ # We only need to search for static libraries -+ continue -+ fi -+ -+ # Try to link the static library -+ # Here we assume that one of hardcode_direct or hardcode_minus_L -+ # is not unsupported. This is valid on all known static and -+ # shared platforms. -+ if test "$hardcode_direct" != unsupported; then -+ test -n "$old_library" && linklib="$old_library" -+ compile_deplibs="$dir/$linklib $compile_deplibs" -+ finalize_deplibs="$dir/$linklib $finalize_deplibs" -+ else -+ compile_deplibs="-l$name -L$dir $compile_deplibs" -+ finalize_deplibs="-l$name -L$dir $finalize_deplibs" -+ fi -+ elif test "$build_libtool_libs" = yes; then -+ # Not a shared library -+ if test "$deplibs_check_method" != pass_all; then -+ # We're trying link a shared library against a static one -+ # but the system doesn't support it. -+ -+ # Just print a warning and add the library to dependency_libs so -+ # that the program can be linked against the static library. -+ echo -+ echo "*** Warning: This system can not link to static lib archive $lib." -+ echo "*** I have the capability to make that library automatically link in when" -+ echo "*** you link to this library. But I can only do this if you have a" -+ echo "*** shared version of the library, which you do not appear to have." -+ if test "$module" = yes; then -+ echo "*** But as you try to build a module library, libtool will still create " -+ echo "*** a static module, that should work as long as the dlopening application" -+ echo "*** is linked with the -dlopen flag to resolve symbols at runtime." -+ if test -z "$global_symbol_pipe"; then -+ echo -+ echo "*** However, this would only work if libtool was able to extract symbol" -+ echo "*** lists from a program, using \`nm' or equivalent, but libtool could" -+ echo "*** not find such a program. So, this module is probably useless." -+ echo "*** \`nm' from GNU binutils and a full rebuild may help." -+ fi -+ if test "$build_old_libs" = no; then -+ build_libtool_libs=module -+ build_old_libs=yes -+ else -+ build_libtool_libs=no -+ fi -+ fi -+ else -+ convenience="$convenience $dir/$old_library" -+ old_convenience="$old_convenience $dir/$old_library" -+ deplibs="$dir/$old_library $deplibs" -+ link_static=yes -+ fi -+ fi # link shared/static library? -+ -+ if test $linkmode = lib; then -+ if test -n "$dependency_libs" && -+ { test $hardcode_into_libs != yes || test $build_old_libs = yes || -+ test $link_static = yes; }; then -+ # Extract -R from dependency_libs -+ temp_deplibs= -+ for libdir in $dependency_libs; do -+ case $libdir in -+ -R*) temp_xrpath=`$echo "X$libdir" | $Xsed -e 's/^-R//'` -+ case " $xrpath " in -+ *" $temp_xrpath "*) ;; -+ *) xrpath="$xrpath $temp_xrpath";; -+ esac;; -+ *) temp_deplibs="$temp_deplibs $libdir";; -+ esac -+ done -+ dependency_libs="$temp_deplibs" -+ fi -+ -+ newlib_search_path="$newlib_search_path $absdir" -+ # Link against this library -+ test "$link_static" = no && newdependency_libs="$abs_ladir/$laname $newdependency_libs" -+ # ... and its dependency_libs -+ tmp_libs= -+ for deplib in $dependency_libs; do -+ newdependency_libs="$deplib $newdependency_libs" -+ if test "X$duplicate_deps" = "Xyes" ; then -+ case "$tmp_libs " in -+ *" $deplib "*) specialdeplibs="$specialdeplibs $deplib" ;; -+ esac -+ fi -+ tmp_libs="$tmp_libs $deplib" -+ done -+ -+ if test $link_all_deplibs != no; then -+ # Add the search paths of all dependency libraries -+ for deplib in $dependency_libs; do -+ case $deplib in -+ -L*) path="$deplib" ;; -+ *.la) -+ dir=`$echo "X$deplib" | $Xsed -e 's%/[^/]*$%%'` -+ test "X$dir" = "X$deplib" && dir="." -+ # We need an absolute path. -+ case $dir in -+ [\\/]* | [A-Za-z]:[\\/]*) absdir="$dir" ;; -+ *) -+ absdir=`cd "$dir" && pwd` -+ if test -z "$absdir"; then -+ $echo "$modename: warning: cannot determine absolute directory name of \`$dir'" 1>&2 -+ absdir="$dir" -+ fi -+ ;; -+ esac -+ if grep "^installed=no" $deplib > /dev/null; then -+ path="-L$absdir/$objdir" -+ else -+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` -+ if test -z "$libdir"; then -+ $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2 -+ exit 1 -+ fi -+ if test "$absdir" != "$libdir"; then -+ $echo "$modename: warning: \`$deplib' seems to be moved" 1>&2 -+ fi -+ path="-L$absdir" -+ fi -+ ;; -+ *) continue ;; -+ esac -+ case " $deplibs " in -+ *" $path "*) ;; -+ *) deplibs="$deplibs $path" ;; -+ esac -+ done -+ fi # link_all_deplibs != no -+ fi # linkmode = lib -+ done # for deplib in $libs -+ if test $pass = dlpreopen; then -+ # Link the dlpreopened libraries before other libraries -+ for deplib in $save_deplibs; do -+ deplibs="$deplib $deplibs" -+ done - fi -+ if test $pass != dlopen; then -+ test $pass != scan && dependency_libs="$newdependency_libs" -+ if test $pass != conv; then -+ # Make sure lib_search_path contains only unique directories. -+ lib_search_path= -+ for dir in $newlib_search_path; do -+ case "$lib_search_path " in -+ *" $dir "*) ;; -+ *) lib_search_path="$lib_search_path $dir" ;; -+ esac -+ done -+ newlib_search_path= -+ fi - -- if test -n "$deplibs"; then -- $echo "$modename: warning: \`-l' and \`-L' are ignored for archives" 1>&2 -+ if test "$linkmode,$pass" != "prog,link"; then -+ vars="deplibs" -+ else -+ vars="compile_deplibs finalize_deplibs" -+ fi -+ for var in $vars dependency_libs; do -+ # Add libraries to $var in reverse order -+ eval tmp_libs=\"\$$var\" -+ new_libs= -+ for deplib in $tmp_libs; do -+ case $deplib in -+ -L*) new_libs="$deplib $new_libs" ;; -+ *) -+ case " $specialdeplibs " in -+ *" $deplib "*) new_libs="$deplib $new_libs" ;; -+ *) -+ case " $new_libs " in -+ *" $deplib "*) ;; -+ *) new_libs="$deplib $new_libs" ;; -+ esac -+ ;; -+ esac -+ ;; -+ esac -+ done -+ tmp_libs= -+ for deplib in $new_libs; do -+ case $deplib in -+ -L*) -+ case " $tmp_libs " in -+ *" $deplib "*) ;; -+ *) tmp_libs="$tmp_libs $deplib" ;; -+ esac -+ ;; -+ *) tmp_libs="$tmp_libs $deplib" ;; -+ esac -+ done -+ eval $var=\"$tmp_libs\" -+ done # for var - fi -+ if test "$pass" = "conv" && -+ { test "$linkmode" = "lib" || test "$linkmode" = "prog"; }; then -+ libs="$deplibs" # reset libs -+ deplibs= -+ fi -+ done # for pass -+ if test $linkmode = prog; then -+ dlfiles="$newdlfiles" -+ dlprefiles="$newdlprefiles" -+ fi - -+ case $linkmode in -+ oldlib) - if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then - $echo "$modename: warning: \`-dlopen' is ignored for archives" 1>&2 - fi -@@ -1566,11 +2187,12 @@ - # Now set the variables for building old libraries. - build_libtool_libs=no - oldlibs="$output" -+ objs="$objs$old_deplibs" - ;; - -- *.la) -+ lib) - # Make sure we only generate libraries of the form `libNAME.la'. -- case "$outputname" in -+ case $outputname in - lib*) - name=`$echo "X$outputname" | $Xsed -e 's/\.la$//' -e 's/^lib//'` - eval libname=\"$libname_spec\" -@@ -1591,26 +2213,20 @@ - ;; - esac - -- output_objdir=`$echo "X$output" | $Xsed -e 's%/[^/]*$%%'` -- if test "X$output_objdir" = "X$output"; then -- output_objdir="$objdir" -- else -- output_objdir="$output_objdir/$objdir" -- fi -- - if test -n "$objs"; then -- $echo "$modename: cannot build libtool library \`$output' from non-libtool objects:$objs" 2>&1 -- exit 1 -- fi -- -- # How the heck are we supposed to write a wrapper for a shared library? -- if test -n "$link_against_libtool_libs"; then -- $echo "$modename: error: cannot link shared libraries into libtool libraries" 1>&2 -- exit 1 -+ if test "$deplibs_check_method" != pass_all; then -+ $echo "$modename: cannot build libtool library \`$output' from non-libtool objects on this host:$objs" 2>&1 -+ exit 1 -+ else -+ echo -+ echo "*** Warning: Linking the shared library $output against the non-libtool" -+ echo "*** objects $objs is not portable!" -+ libobjs="$libobjs $objs" -+ fi - fi - -- if test -n "$dlfiles$dlprefiles" || test "$dlself" != no; then -- $echo "$modename: warning: \`-dlopen' is ignored for libtool libraries" 1>&2 -+ if test "$dlself" != no; then -+ $echo "$modename: warning: \`-dlopen self' is ignored for libtool libraries" 1>&2 - fi - - set dummy $rpath -@@ -1628,7 +2244,6 @@ - build_libtool_libs=convenience - build_old_libs=yes - fi -- dependency_libs="$deplibs" - - if test -n "$vinfo"; then - $echo "$modename: warning: \`-version-info' is ignored for convenience libraries" 1>&2 -@@ -1640,7 +2255,7 @@ - else - - # Parse the version information argument. -- IFS="${IFS= }"; save_ifs="$IFS"; IFS=':' -+ save_ifs="$IFS"; IFS=':' - set dummy $vinfo 0 0 0 - IFS="$save_ifs" - -@@ -1655,8 +2270,8 @@ - age="$4" - - # Check that each of the things are valid numbers. -- case "$current" in -- 0 | [1-9] | [1-9][0-9]*) ;; -+ case $current in -+ 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;; - *) - $echo "$modename: CURRENT \`$current' is not a nonnegative integer" 1>&2 - $echo "$modename: \`$vinfo' is not valid version information" 1>&2 -@@ -1664,8 +2279,8 @@ - ;; - esac - -- case "$revision" in -- 0 | [1-9] | [1-9][0-9]*) ;; -+ case $revision in -+ 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;; - *) - $echo "$modename: REVISION \`$revision' is not a nonnegative integer" 1>&2 - $echo "$modename: \`$vinfo' is not valid version information" 1>&2 -@@ -1673,8 +2288,8 @@ - ;; - esac - -- case "$age" in -- 0 | [1-9] | [1-9][0-9]*) ;; -+ case $age in -+ 0 | [1-9] | [1-9][0-9] | [1-9][0-9][0-9]) ;; - *) - $echo "$modename: AGE \`$age' is not a nonnegative integer" 1>&2 - $echo "$modename: \`$vinfo' is not valid version information" 1>&2 -@@ -1692,21 +2307,49 @@ - major= - versuffix= - verstring= -- case "$version_type" in -+ case $version_type in - none) ;; - -- irix) -+ darwin) -+ # Like Linux, but with the current version available in -+ # verstring for coding it into the library header -+ major=.`expr $current - $age` -+ versuffix="$major.$age.$revision" -+ # Darwin ld doesn't like 0 for these options... -+ minor_current=`expr $current + 1` -+ verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" -+ ;; -+ -+ freebsd-aout) -+ major=".$current" -+ versuffix=".$current.$revision"; -+ ;; -+ -+ freebsd-elf) -+ major=".$current" -+ versuffix=".$current"; -+ ;; -+ -+ irix | nonstopux) - major=`expr $current - $age + 1` -- versuffix="$major.$revision" -- verstring="sgi$major.$revision" -+ -+ case $version_type in -+ nonstopux) verstring_prefix=nonstopux ;; -+ *) verstring_prefix=sgi ;; -+ esac -+ verstring="$verstring_prefix$major.$revision" - - # Add in all the interfaces that we are compatible with. - loop=$revision - while test $loop != 0; do - iface=`expr $revision - $loop` - loop=`expr $loop - 1` -- verstring="sgi$major.$iface:$verstring" -+ verstring="$verstring_prefix$major.$iface:$verstring" - done -+ -+ # Before this point, $major must not contain `.'. -+ major=.$major -+ versuffix="$major.$revision" - ;; - - linux) -@@ -1715,7 +2358,7 @@ - ;; - - osf) -- major=`expr $current - $age` -+ major=.`expr $current - $age` - versuffix=".$current.$age.$revision" - verstring="$current.$age.$revision" - -@@ -1736,21 +2379,11 @@ - versuffix=".$current.$revision" - ;; - -- freebsd-aout) -- major=".$current" -- versuffix=".$current.$revision"; -- ;; -- -- freebsd-elf) -- major=".$current" -- versuffix=".$current"; -- ;; -- - windows) -- # Like Linux, but with '-' rather than '.', since we only -- # want one extension on Windows 95. -+ # Use '-' rather than '.', since we only want one -+ # extension on DOS 8.3 filesystems. - major=`expr $current - $age` -- versuffix="-$major-$age-$revision" -+ versuffix="-$major" - ;; - - *) -@@ -1764,6 +2397,16 @@ - if test -z "$vinfo" && test -n "$release"; then - major= - verstring="0.0" -+ case $version_type in -+ darwin) -+ # we can't check for "0.0" in archive_cmds due to quoting -+ # problems, so we reset it completely -+ verstring="" -+ ;; -+ *) -+ verstring="0.0" -+ ;; -+ esac - if test "$need_version" = no; then - versuffix= - else -@@ -1777,7 +2420,7 @@ - versuffix= - verstring="" - fi -- -+ - # Check to see if the archive will have undefined symbols. - if test "$allow_undefined" = yes; then - if test "$allow_undefined_flag" = unsupported; then -@@ -1785,34 +2428,16 @@ - build_libtool_libs=no - build_old_libs=yes - fi -- else -- # Don't allow undefined symbols. -- allow_undefined_flag="$no_undefined_flag" -- fi -- -- dependency_libs="$deplibs" -- case "$host" in -- *-*-cygwin* | *-*-mingw* | *-*-os2* | *-*-beos*) -- # these systems don't actually have a c library (as such)! -- ;; -- *) -- # Add libc to deplibs on all other systems. -- deplibs="$deplibs -lc" -- ;; -- esac -+ else -+ # Don't allow undefined symbols. -+ allow_undefined_flag="$no_undefined_flag" -+ fi - fi - -- # Create the output directory, or remove our outputs if we need to. -- if test -d $output_objdir; then -+ if test "$mode" != relink; then -+ # Remove our outputs. - $show "${rm}r $output_objdir/$outputname $output_objdir/$libname.* $output_objdir/${libname}${release}.*" - $run ${rm}r $output_objdir/$outputname $output_objdir/$libname.* $output_objdir/${libname}${release}.* -- else -- $show "$mkdir $output_objdir" -- $run $mkdir $output_objdir -- status=$? -- if test $status -ne 0 && test ! -d $output_objdir; then -- exit $status -- fi - fi - - # Now set the variables for building old libraries. -@@ -1823,7 +2448,73 @@ - oldobjs="$objs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e "$lo2o" | $NL2SP` - fi - -+ # Eliminate all temporary directories. -+ for path in $notinst_path; do -+ lib_search_path=`echo "$lib_search_path " | ${SED} -e 's% $path % %g'` -+ deplibs=`echo "$deplibs " | ${SED} -e 's% -L$path % %g'` -+ dependency_libs=`echo "$dependency_libs " | ${SED} -e 's% -L$path % %g'` -+ done -+ -+ if test -n "$xrpath"; then -+ # If the user specified any rpath flags, then add them. -+ temp_xrpath= -+ for libdir in $xrpath; do -+ temp_xrpath="$temp_xrpath -R$libdir" -+ case "$finalize_rpath " in -+ *" $libdir "*) ;; -+ *) finalize_rpath="$finalize_rpath $libdir" ;; -+ esac -+ done -+ if test $hardcode_into_libs != yes || test $build_old_libs = yes; then -+ dependency_libs="$temp_xrpath $dependency_libs" -+ fi -+ fi -+ -+ # Make sure dlfiles contains only unique files that won't be dlpreopened -+ old_dlfiles="$dlfiles" -+ dlfiles= -+ for lib in $old_dlfiles; do -+ case " $dlprefiles $dlfiles " in -+ *" $lib "*) ;; -+ *) dlfiles="$dlfiles $lib" ;; -+ esac -+ done -+ -+ # Make sure dlprefiles contains only unique files -+ old_dlprefiles="$dlprefiles" -+ dlprefiles= -+ for lib in $old_dlprefiles; do -+ case "$dlprefiles " in -+ *" $lib "*) ;; -+ *) dlprefiles="$dlprefiles $lib" ;; -+ esac -+ done -+ - if test "$build_libtool_libs" = yes; then -+ if test -n "$rpath"; then -+ case $host in -+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos*) -+ # these systems don't actually have a c library (as such)! -+ ;; -+ *-*-rhapsody* | *-*-darwin1.[012]) -+ # Rhapsody C library is in the System framework -+ deplibs="$deplibs -framework System" -+ ;; -+ *-*-netbsd*) -+ # Don't link with libc until the a.out ld.so is fixed. -+ ;; -+ *-*-openbsd* | *-*-freebsd*) -+ # Do not include libc due to us having libc/libc_r. -+ ;; -+ *) -+ # Add libc to deplibs on all other systems if necessary. -+ if test $build_libtool_need_lc = "yes"; then -+ deplibs="$deplibs -lc" -+ fi -+ ;; -+ esac -+ fi -+ - # Transform deplibs into only deplibs that can be linked in shared. - name_save=$name - libname_save=$libname -@@ -1838,7 +2529,7 @@ - major="" - newdeplibs= - droppeddeps=no -- case "$deplibs_check_method" in -+ case $deplibs_check_method in - pass_all) - # Don't check for shared/static. Everything works. - # This might be a little naive. We might want to check -@@ -1863,7 +2554,7 @@ - for i in $deplibs; do - name="`expr $i : '-l\(.*\)'`" - # If $name is empty we are operating on a -L argument. -- if test "$name" != "" ; then -+ if test -n "$name" && test "$name" != "0"; then - libname=`eval \\$echo \"$libname_spec\"` - deplib_matches=`eval \\$echo \"$library_names_spec\"` - set dummy $deplib_matches -@@ -1873,22 +2564,24 @@ - else - droppeddeps=yes - echo -- echo "*** Warning: This library needs some functionality provided by $i." -+ echo "*** Warning: dynamic linker does not accept needed library $i." - echo "*** I have the capability to make that library automatically link in when" - echo "*** you link to this library. But I can only do this if you have a" -- echo "*** shared version of the library, which you do not appear to have." -+ echo "*** shared version of the library, which I believe you do not have" -+ echo "*** because a test_compile did reveal that the linker did not use it for" -+ echo "*** its dynamic dependency list that programs get resolved with at runtime." - fi - else - newdeplibs="$newdeplibs $i" - fi - done - else -- # Error occured in the first compile. Let's try to salvage the situation: -- # Compile a seperate program for each library. -+ # Error occured in the first compile. Let's try to salvage -+ # the situation: Compile a separate program for each library. - for i in $deplibs; do - name="`expr $i : '-l\(.*\)'`" - # If $name is empty we are operating on a -L argument. -- if test "$name" != "" ; then -+ if test -n "$name" && test "$name" != "0"; then - $rm conftest - $CC -o conftest conftest.c $i - # Did it work? -@@ -1903,10 +2596,12 @@ - else - droppeddeps=yes - echo -- echo "*** Warning: This library needs some functionality provided by $i." -+ echo "*** Warning: dynamic linker does not accept needed library $i." - echo "*** I have the capability to make that library automatically link in when" - echo "*** you link to this library. But I can only do this if you have a" -- echo "*** shared version of the library, which you do not appear to have." -+ echo "*** shared version of the library, which you do not appear to have" -+ echo "*** because a test_compile did reveal that the linker did not use this one" -+ echo "*** as a dynamic dependency that programs can get resolved with at runtime." - fi - else - droppeddeps=yes -@@ -1924,19 +2619,19 @@ - ;; - file_magic*) - set dummy $deplibs_check_method -- file_magic_regex="`expr \"$deplibs_check_method\" : \"$2 \(.*\)\"`" -+ file_magic_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"` - for a_deplib in $deplibs; do - name="`expr $a_deplib : '-l\(.*\)'`" - # If $name is empty we are operating on a -L argument. -- if test "$name" != "" ; then -+ if test -n "$name" && test "$name" != "0"; then - libname=`eval \\$echo \"$libname_spec\"` -- for i in $lib_search_path; do -+ for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do - potential_libs=`ls $i/$libname[.-]* 2>/dev/null` - for potent_lib in $potential_libs; do - # Follow soft links. - if ls -lLd "$potent_lib" 2>/dev/null \ - | grep " -> " >/dev/null; then -- continue -+ continue - fi - # The statement above tries to avoid entering an - # endless loop below, in case of cyclic links. -@@ -1945,14 +2640,14 @@ - # but so what? - potlib="$potent_lib" - while test -h "$potlib" 2>/dev/null; do -- potliblink=`ls -ld $potlib | sed 's/.* -> //'` -- case "$potliblink" in -+ potliblink=`ls -ld $potlib | ${SED} 's/.* -> //'` -+ case $potliblink in - [\\/]* | [A-Za-z]:[\\/]*) potlib="$potliblink";; - *) potlib=`$echo "X$potlib" | $Xsed -e 's,[^/]*$,,'`"$potliblink";; - esac - done - if eval $file_magic_cmd \"\$potlib\" 2>/dev/null \ -- | sed 10q \ -+ | ${SED} 10q \ - | egrep "$file_magic_regex" > /dev/null; then - newdeplibs="$newdeplibs $a_deplib" - a_deplib="" -@@ -1963,10 +2658,59 @@ - if test -n "$a_deplib" ; then - droppeddeps=yes - echo -- echo "*** Warning: This library needs some functionality provided by $a_deplib." -+ echo "*** Warning: linker path does not have real file for library $a_deplib." -+ echo "*** I have the capability to make that library automatically link in when" -+ echo "*** you link to this library. But I can only do this if you have a" -+ echo "*** shared version of the library, which you do not appear to have" -+ echo "*** because I did check the linker path looking for a file starting" -+ if test -z "$potlib" ; then -+ echo "*** with $libname but no candidates were found. (...for file magic test)" -+ else -+ echo "*** with $libname and none of the candidates passed a file format test" -+ echo "*** using a file magic. Last file checked: $potlib" -+ fi -+ fi -+ else -+ # Add a -L argument. -+ newdeplibs="$newdeplibs $a_deplib" -+ fi -+ done # Gone through all deplibs. -+ ;; -+ match_pattern*) -+ set dummy $deplibs_check_method -+ match_pattern_regex=`expr "$deplibs_check_method" : "$2 \(.*\)"` -+ for a_deplib in $deplibs; do -+ name="`expr $a_deplib : '-l\(.*\)'`" -+ # If $name is empty we are operating on a -L argument. -+ if test -n "$name" && test "$name" != "0"; then -+ libname=`eval \\$echo \"$libname_spec\"` -+ for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do -+ potential_libs=`ls $i/$libname[.-]* 2>/dev/null` -+ for potent_lib in $potential_libs; do -+ potlib="$potent_lib" # see symlink-check below in file_magic test -+ if eval echo \"$potent_lib\" 2>/dev/null \ -+ | ${SED} 10q \ -+ | egrep "$match_pattern_regex" > /dev/null; then -+ newdeplibs="$newdeplibs $a_deplib" -+ a_deplib="" -+ break 2 -+ fi -+ done -+ done -+ if test -n "$a_deplib" ; then -+ droppeddeps=yes -+ echo -+ echo "*** Warning: linker path does not have real file for library $a_deplib." - echo "*** I have the capability to make that library automatically link in when" - echo "*** you link to this library. But I can only do this if you have a" -- echo "*** shared version of the library, which you do not appear to have." -+ echo "*** shared version of the library, which you do not appear to have" -+ echo "*** because I did check the linker path looking for a file starting" -+ if test -z "$potlib" ; then -+ echo "*** with $libname but no candidates were found. (...for regex pattern test)" -+ else -+ echo "*** with $libname and none of the candidates passed a file format test" -+ echo "*** using a regex pattern. Last file checked: $potlib" -+ fi - fi - else - # Add a -L argument. -@@ -1996,6 +2740,13 @@ - libname=$libname_save - name=$name_save - -+ case $host in -+ *-*-rhapsody* | *-*-darwin1.[012]) -+ # On Rhapsody replace the C library is the System framework -+ newdeplibs=`$echo "X $newdeplibs" | $Xsed -e 's/ -lc / -framework System /'` -+ ;; -+ esac -+ - if test "$droppeddeps" = yes; then - if test "$module" = yes; then - echo -@@ -2021,6 +2772,21 @@ - echo "*** The inter-library dependencies that have been dropped here will be" - echo "*** automatically added whenever a program is linked with this library" - echo "*** or is declared to -dlopen it." -+ -+ if test $allow_undefined = no; then -+ echo -+ echo "*** Since this library must not contain undefined symbols," -+ echo "*** because either the platform does not support them or" -+ echo "*** it was explicitly requested with -no-undefined," -+ echo "*** libtool will only create a static version of it." -+ if test "$build_old_libs" = no; then -+ oldlibs="$output_objdir/$libname.$libext" -+ build_libtool_libs=module -+ build_old_libs=yes -+ else -+ build_libtool_libs=no -+ fi -+ fi - fi - fi - # Done checking deplibs! -@@ -2031,9 +2797,64 @@ - library_names= - old_library= - dlname= -- -+ - # Test again, we may have decided not to build it any more - if test "$build_libtool_libs" = yes; then -+ if test $hardcode_into_libs = yes; then -+ # Hardcode the library paths -+ hardcode_libdirs= -+ dep_rpath= -+ rpath="$finalize_rpath" -+ test "$mode" != relink && rpath="$compile_rpath$rpath" -+ for libdir in $rpath; do -+ if test -n "$hardcode_libdir_flag_spec"; then -+ if test -n "$hardcode_libdir_separator"; then -+ if test -z "$hardcode_libdirs"; then -+ hardcode_libdirs="$libdir" -+ else -+ # Just accumulate the unique libdirs. -+ case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in -+ *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) -+ ;; -+ *) -+ hardcode_libdirs="$hardcode_libdirs$hardcode_libdir_separator$libdir" -+ ;; -+ esac -+ fi -+ else -+ eval flag=\"$hardcode_libdir_flag_spec\" -+ dep_rpath="$dep_rpath $flag" -+ fi -+ elif test -n "$runpath_var"; then -+ case "$perm_rpath " in -+ *" $libdir "*) ;; -+ *) perm_rpath="$perm_rpath $libdir" ;; -+ esac -+ fi -+ done -+ # Substitute the hardcoded libdirs into the rpath. -+ if test -n "$hardcode_libdir_separator" && -+ test -n "$hardcode_libdirs"; then -+ libdir="$hardcode_libdirs" -+ eval dep_rpath=\"$hardcode_libdir_flag_spec\" -+ fi -+ if test -n "$runpath_var" && test -n "$perm_rpath"; then -+ # We should set the runpath_var. -+ rpath= -+ for dir in $perm_rpath; do -+ rpath="$rpath$dir:" -+ done -+ eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var" -+ fi -+ test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs" -+ fi -+ -+ shlibpath="$finalize_shlibpath" -+ test "$mode" != relink && shlibpath="$compile_shlibpath$shlibpath" -+ if test -n "$shlibpath"; then -+ eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var" -+ fi -+ - # Get the real and link names of the library. - eval library_names=\"$library_names_spec\" - set dummy $library_names -@@ -2045,6 +2866,7 @@ - else - soname="$realname" - fi -+ test -z "$dlname" && dlname=$soname - - lib="$output_objdir/$realname" - for link -@@ -2079,7 +2901,7 @@ - export_symbols="$output_objdir/$libname.exp" - $run $rm $export_symbols - eval cmds=\"$export_symbols_cmds\" -- IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' -+ save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" -@@ -2116,7 +2938,7 @@ - - for xlib in $convenience; do - # Extract the objects. -- case "$xlib" in -+ case $xlib in - [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; - *) xabs=`pwd`"/$xlib" ;; - esac -@@ -2141,16 +2963,32 @@ - - if test "$thread_safe" = yes && test -n "$thread_safe_flag_spec"; then - eval flag=\"$thread_safe_flag_spec\" -- linkopts="$linkopts $flag" -+ linker_flags="$linker_flags $flag" -+ fi -+ -+ # Make a backup of the uninstalled library when relinking -+ if test "$mode" = relink; then -+ $run eval '(cd $output_objdir && $rm ${realname}U && $mv $realname ${realname}U)' || exit $? - fi - - # Do each of the archive commands. - if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then - eval cmds=\"$archive_expsym_cmds\" - else -+ save_deplibs="$deplibs" -+ for conv in $convenience; do -+ tmp_deplibs= -+ for test_deplib in $deplibs; do -+ if test "$test_deplib" != "$conv"; then -+ tmp_deplibs="$tmp_deplibs $test_deplib" -+ fi -+ done -+ deplibs="$tmp_deplibs" -+ done - eval cmds=\"$archive_cmds\" -+ deplibs="$save_deplibs" - fi -- IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' -+ save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" -@@ -2158,6 +2996,12 @@ - done - IFS="$save_ifs" - -+ # Restore the uninstalled library and exit -+ if test "$mode" = relink; then -+ $run eval '(cd $output_objdir && $rm ${realname}T && $mv $realname ${realname}T && $mv "$realname"U $realname)' || exit $? -+ exit 0 -+ fi -+ - # Create links to the real library. - for linkname in $linknames; do - if test "$realname" != "$linkname"; then -@@ -2174,12 +3018,7 @@ - fi - ;; - -- *.lo | *.o | *.obj) -- if test -n "$link_against_libtool_libs"; then -- $echo "$modename: error: cannot link libtool libraries into objects" 1>&2 -- exit 1 -- fi -- -+ obj) - if test -n "$deplibs"; then - $echo "$modename: warning: \`-l' and \`-L' are ignored for objects" 1>&2 - fi -@@ -2204,9 +3043,9 @@ - $echo "$modename: warning: \`-release' is ignored for objects" 1>&2 - fi - -- case "$output" in -+ case $output in - *.lo) -- if test -n "$objs"; then -+ if test -n "$objs$old_deplibs"; then - $echo "$modename: cannot build library object \`$output' from non-libtool objects" 1>&2 - exit 1 - fi -@@ -2230,7 +3069,7 @@ - gentop= - # reload_cmds runs $LD directly, so let us get rid of - # -Wl from whole_archive_flag_spec -- wl= -+ wl= - - if test -n "$convenience"; then - if test -n "$whole_archive_flag_spec"; then -@@ -2249,7 +3088,7 @@ - - for xlib in $convenience; do - # Extract the objects. -- case "$xlib" in -+ case $xlib in - [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; - *) xabs=`pwd`"/$xlib" ;; - esac -@@ -2273,11 +3112,11 @@ - fi - - # Create the old-style object. -- reload_objs="$objs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs" -+ reload_objs="$objs$old_deplibs "`$echo "X$libobjs" | $SP2NL | $Xsed -e '/\.'${libext}$'/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP`" $reload_conv_objs" ### testsuite: skip nested quoting test - - output="$obj" - eval cmds=\"$reload_cmds\" -- IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' -+ save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" -@@ -2308,12 +3147,12 @@ - exit 0 - fi - -- if test -n "$pic_flag"; then -+ if test -n "$pic_flag" || test "$pic_mode" != default; then - # Only do commands if we really have different PIC objects. - reload_objs="$libobjs $reload_conv_objs" - output="$libobj" - eval cmds=\"$reload_cmds\" -- IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' -+ save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" -@@ -2344,8 +3183,10 @@ - exit 0 - ;; - -- # Anything else should be a program. -- *) -+ prog) -+ case $host in -+ *cygwin*) output=`echo $output | ${SED} -e 's,.exe$,,;s,$,.exe,'` ;; -+ esac - if test -n "$vinfo"; then - $echo "$modename: warning: \`-version-info' is ignored for programs" 1>&2 - fi -@@ -2355,20 +3196,34 @@ - fi - - if test "$preload" = yes; then -- if test "$dlopen" = unknown && test "$dlopen_self" = unknown && -+ if test "$dlopen_support" = unknown && test "$dlopen_self" = unknown && - test "$dlopen_self_static" = unknown; then - $echo "$modename: warning: \`AC_LIBTOOL_DLOPEN' not used. Assuming no dlopen support." -- fi -+ fi - fi -- -+ -+ case $host in -+ *-*-rhapsody* | *-*-darwin1.[012]) -+ # On Rhapsody replace the C library is the System framework -+ compile_deplibs=`$echo "X $compile_deplibs" | $Xsed -e 's/ -lc / -framework System /'` -+ finalize_deplibs=`$echo "X $finalize_deplibs" | $Xsed -e 's/ -lc / -framework System /'` -+ case $host in -+ *darwin*) -+ # Don't allow lazy linking, it breaks C++ global constructors -+ compile_command="$compile_command ${wl}-bind_at_load" -+ finalize_command="$finalize_command ${wl}-bind_at_load" -+ ;; -+ esac -+ ;; -+ esac -+ -+ compile_command="$compile_command $compile_deplibs" -+ finalize_command="$finalize_command $finalize_deplibs" -+ - if test -n "$rpath$xrpath"; then - # If the user specified any rpath flags, then add them. - for libdir in $rpath $xrpath; do - # This is the magic to use -rpath. -- case "$compile_rpath " in -- *" $libdir "*) ;; -- *) compile_rpath="$compile_rpath $libdir" ;; -- esac - case "$finalize_rpath " in - *" $libdir "*) ;; - *) finalize_rpath="$finalize_rpath $libdir" ;; -@@ -2386,7 +3241,7 @@ - hardcode_libdirs="$libdir" - else - # Just accumulate the unique libdirs. -- case "$hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator" in -+ case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in - *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) - ;; - *) -@@ -2404,6 +3259,14 @@ - *) perm_rpath="$perm_rpath $libdir" ;; - esac - fi -+ case $host in -+ *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2*) -+ case :$dllsearchpath: in -+ *":$libdir:"*) ;; -+ *) dllsearchpath="$dllsearchpath:$libdir";; -+ esac -+ ;; -+ esac - done - # Substitute the hardcoded libdirs into the rpath. - if test -n "$hardcode_libdir_separator" && -@@ -2422,7 +3285,7 @@ - hardcode_libdirs="$libdir" - else - # Just accumulate the unique libdirs. -- case "$hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator" in -+ case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in - *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) - ;; - *) -@@ -2449,23 +3312,6 @@ - fi - finalize_rpath="$rpath" - -- output_objdir=`$echo "X$output" | $Xsed -e 's%/[^/]*$%%'` -- if test "X$output_objdir" = "X$output"; then -- output_objdir="$objdir" -- else -- output_objdir="$output_objdir/$objdir" -- fi -- -- # Create the binary in the object directory, then wrap it. -- if test ! -d $output_objdir; then -- $show "$mkdir $output_objdir" -- $run $mkdir $output_objdir -- status=$? -- if test $status -ne 0 && test ! -d $output_objdir; then -- exit $status -- fi -- fi -- - if test -n "$libobjs" && test "$build_old_libs" = yes; then - # Transform all the library objects into standard objects. - compile_command=`$echo "X$compile_command" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` -@@ -2482,7 +3328,7 @@ - fi - - if test -n "$dlsyms"; then -- case "$dlsyms" in -+ case $dlsyms in - "") ;; - *.c) - # Discover the nlist of each of the dlfiles. -@@ -2514,7 +3360,7 @@ - test -z "$run" && $echo ': @PROGRAM@ ' > "$nlist" - - # Add our own program objects to the symbol list. -- progfiles=`$echo "X$objs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` -+ progfiles=`$echo "X$objs$old_deplibs" | $SP2NL | $Xsed -e "$lo2o" | $NL2SP` - for arg in $progfiles; do - $show "extracting global C symbols from \`$arg'" - $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'" -@@ -2524,7 +3370,7 @@ - $run eval 'egrep -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T' - $run eval '$mv "$nlist"T "$nlist"' - fi -- -+ - if test -n "$export_symbols_regex"; then - $run eval 'egrep -e "$export_symbols_regex" "$nlist" > "$nlist"T' - $run eval '$mv "$nlist"T "$nlist"' -@@ -2534,9 +3380,9 @@ - if test -z "$export_symbols"; then - export_symbols="$output_objdir/$output.exp" - $run $rm $export_symbols -- $run eval "sed -n -e '/^: @PROGRAM@$/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' -+ $run eval "${SED} -n -e '/^: @PROGRAM@$/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' - else -- $run eval "sed -e 's/\([][.*^$]\)/\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$output.exp"' -+ $run eval "${SED} -e 's/\([][.*^$]\)/\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$output.exp"' - $run eval 'grep -f "$output_objdir/$output.exp" < "$nlist" > "$nlist"T' - $run eval 'mv "$nlist"T "$nlist"' - fi -@@ -2544,7 +3390,7 @@ - - for arg in $dlprefiles; do - $show "extracting global C symbols from \`$arg'" -- name=`echo "$arg" | sed -e 's%^.*/%%'` -+ name=`echo "$arg" | ${SED} -e 's%^.*/%%'` - $run eval 'echo ": $name " >> "$nlist"' - $run eval "$NM $arg | $global_symbol_pipe >> '$nlist'" - done -@@ -2559,7 +3405,13 @@ - fi - - # Try sorting and uniquifying the output. -- if grep -v "^: " < "$nlist" | sort +2 | uniq > "$nlist"S; then -+ if grep -v "^: " < "$nlist" | -+ if sort -k 3 /dev/null 2>&1; then -+ sort -k 3 -+ else -+ sort +2 -+ fi | -+ uniq > "$nlist"S; then - : - else - grep -v "^: " < "$nlist" > "$nlist"S -@@ -2576,27 +3428,25 @@ - #undef lt_preloaded_symbols - - #if defined (__STDC__) && __STDC__ --# define lt_ptr_t void * -+# define lt_ptr void * - #else --# define lt_ptr_t char * -+# define lt_ptr char * - # define const - #endif - - /* The mapping between symbol names and symbols. */ - const struct { - const char *name; -- lt_ptr_t address; -+ lt_ptr address; - } - lt_preloaded_symbols[] = - {\ - " - -- sed -n -e 's/^: \([^ ]*\) $/ {\"\1\", (lt_ptr_t) 0},/p' \ -- -e 's/^. \([^ ]*\) \([^ ]*\)$/ {"\2", (lt_ptr_t) \&\2},/p' \ -- < "$nlist" >> "$output_objdir/$dlsyms" -+ eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$dlsyms" - - $echo >> "$output_objdir/$dlsyms" "\ -- {0, (lt_ptr_t) 0} -+ {0, (lt_ptr) 0} - }; - - /* This works around a problem in FreeBSD linker */ -@@ -2613,13 +3463,13 @@ - fi - - pic_flag_for_symtable= -- case "$host" in -+ case $host in - # compiling the symbol table file with pic_flag works around - # a FreeBSD bug that causes programs to crash when -lm is - # linked before any other PIC object. But we must not use - # pic_flag when linking with -static. The problem exists in - # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1. -- *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*) -+ *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*) - case "$compile_command " in - *" -static "*) ;; - *) pic_flag_for_symtable=" $pic_flag -DPIC -DFREEBSD_WORKAROUND";; -@@ -2658,7 +3508,7 @@ - finalize_command=`$echo "X$finalize_command" | $Xsed -e "s% @SYMFILE@%%"` - fi - -- if test -z "$link_against_libtool_libs" || test "$build_libtool_libs" != yes; then -+ if test $need_relink = no || test "$build_libtool_libs" != yes; then - # Replace the output file specification. - compile_command=`$echo "X$compile_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'` - link_command="$compile_command$compile_rpath" -@@ -2667,7 +3517,7 @@ - $show "$link_command" - $run eval "$link_command" - status=$? -- -+ - # Delete the generated files. - if test -n "$dlsyms"; then - $show "$rm $output_objdir/${outputname}S.${objext}" -@@ -2681,7 +3531,7 @@ - # We should set the shlibpath_var - rpath= - for dir in $temp_rpath; do -- case "$dir" in -+ case $dir in - [\\/]* | [A-Za-z]:[\\/]*) - # Absolute path. - rpath="$rpath$dir:" -@@ -2723,11 +3573,24 @@ - fi - fi - -+ if test "$no_install" = yes; then -+ # We don't need to create a wrapper script. -+ link_command="$compile_var$compile_command$compile_rpath" -+ # Replace the output file specification. -+ link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output"'%g'` -+ # Delete the old output file. -+ $run $rm $output -+ # Link the executable and exit -+ $show "$link_command" -+ $run eval "$link_command" || exit $? -+ exit 0 -+ fi -+ - if test "$hardcode_action" = relink; then - # Fast installation is not supported - link_command="$compile_var$compile_command$compile_rpath" - relink_command="$finalize_var$finalize_command$finalize_rpath" -- -+ - $echo "$modename: warning: this platform does not like uninstalled shared libraries" 1>&2 - $echo "$modename: \`$output' will be relinked during installation" 1>&2 - else -@@ -2747,7 +3610,7 @@ - - # Replace the output file specification. - link_command=`$echo "X$link_command" | $Xsed -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'` -- -+ - # Delete the old output files. - $run $rm $output $output_objdir/$outputname $output_objdir/lt-$outputname - -@@ -2759,12 +3622,24 @@ - - # Quote the relink command for shipping. - if test -n "$relink_command"; then -+ # Preserve any variables that may affect compiler behavior -+ for var in $variables_saved_for_relink; do -+ if eval test -z \"\${$var+set}\"; then -+ relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command" -+ elif eval var_value=\$$var; test -z "$var_value"; then -+ relink_command="$var=; export $var; $relink_command" -+ else -+ var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"` -+ relink_command="$var=\"$var_value\"; export $var; $relink_command" -+ fi -+ done -+ relink_command="(cd `pwd`; $relink_command)" - relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"` - fi - - # Quote $echo for shipping. - if test "X$echo" = "X$SHELL $0 --fallback-echo"; then -- case "$0" in -+ case $0 in - [\\/]* | [A-Za-z]:[\\/]*) qecho="$SHELL $0 --fallback-echo";; - *) qecho="$SHELL `pwd`/$0 --fallback-echo";; - esac -@@ -2778,7 +3653,12 @@ - # win32 will think the script is a binary if it has - # a .exe suffix, so we strip it off here. - case $output in -- *.exe) output=`echo $output|sed 's,.exe$,,'` ;; -+ *.exe) output=`echo $output|${SED} 's,.exe$,,'` ;; -+ esac -+ # test for cygwin because mv fails w/o .exe extensions -+ case $host in -+ *cygwin*) exeext=.exe ;; -+ *) exeext= ;; - esac - $rm $output - trap "$rm $output; exit 1" 1 2 15 -@@ -2797,7 +3677,7 @@ - - # Sed substitution that helps us do robust quoting. It backslashifies - # metacharacters that are still active within double-quoted strings. --Xsed='sed -e 1s/^X//' -+Xsed="${SED}"' -e 1s/^X//' - sed_quote_subst='$sed_quote_subst' - - # The HP-UX ksh and POSIX shell print the target directory to stdout -@@ -2809,7 +3689,7 @@ - # This environment variable determines our operation mode. - if test \"\$libtool_install_magic\" = \"$magic\"; then - # install mode needs the following variable: -- link_against_libtool_libs='$link_against_libtool_libs' -+ notinst_deplibs='$notinst_deplibs' - else - # When we are sourced in execute mode, \$file and \$echo are already set. - if test \"\$libtool_execute_magic\" != \"$magic\"; then -@@ -2835,20 +3715,20 @@ - test \"x\$thisdir\" = \"x\$file\" && thisdir=. - - # Follow symbolic links until we get to the real thisdir. -- file=\`ls -ld \"\$file\" | sed -n 's/.*-> //p'\` -+ file=\`ls -ld \"\$file\" | ${SED} -n 's/.*-> //p'\` - while test -n \"\$file\"; do - destdir=\`\$echo \"X\$file\" | \$Xsed -e 's%/[^/]*\$%%'\` - - # If there was a directory component, then change thisdir. - if test \"x\$destdir\" != \"x\$file\"; then - case \"\$destdir\" in -- [\\/]* | [A-Za-z]:[\\/]*) thisdir=\"\$destdir\" ;; -+ [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;; - *) thisdir=\"\$thisdir/\$destdir\" ;; - esac - fi - - file=\`\$echo \"X\$file\" | \$Xsed -e 's%^.*/%%'\` -- file=\`ls -ld \"\$thisdir/\$file\" | sed -n 's/.*-> //p'\` -+ file=\`ls -ld \"\$thisdir/\$file\" | ${SED} -n 's/.*-> //p'\` - done - - # Try to get the absolute directory name. -@@ -2858,11 +3738,11 @@ - - if test "$fast_install" = yes; then - echo >> $output "\ -- program=lt-'$outputname' -+ program=lt-'$outputname'$exeext - progdir=\"\$thisdir/$objdir\" -- -+ - if test ! -f \"\$progdir/\$program\" || \\ -- { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | sed 1q\`; \\ -+ { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | ${SED} 1q\`; \\ - test \"X\$file\" != \"X\$progdir/\$program\"; }; then - - file=\"\$\$-\$program\" -@@ -2877,8 +3757,9 @@ - - # relink executable if necessary - if test -n \"\$relink_command\"; then -- if (cd \"\$thisdir\" && eval \$relink_command); then : -+ if relink_command_output=\`eval \$relink_command 2>&1\`; then : - else -+ $echo \"\$relink_command_output\" >&2 - $rm \"\$progdir/\$file\" - exit 1 - fi -@@ -2907,7 +3788,7 @@ - $shlibpath_var=\"$temp_rpath\$$shlibpath_var\" - - # Some systems cannot cope with colon-terminated $shlibpath_var -- # The second colon is a workaround for a bug in BeOS R4 sed -+ # The second colon is a workaround for a bug in BeOS R4 ${SED} - $shlibpath_var=\`\$echo \"X\$$shlibpath_var\" | \$Xsed -e 's/::*\$//'\` - - export $shlibpath_var -@@ -2927,13 +3808,21 @@ - # Run the actual program with our arguments. - " - case $host in -- *-*-cygwin* | *-*-mingw | *-*-os2*) -- # win32 systems need to use the prog path for dll -- # lookup to work -+ # win32 systems need to use the prog path for dll -+ # lookup to work -+ *-*-cygwin* | *-*-pw32*) -+ $echo >> $output "\ -+ exec \$progdir/\$program \${1+\"\$@\"} -+" -+ ;; -+ -+ # Backslashes separate directories on plain windows -+ *-*-mingw | *-*-os2*) - $echo >> $output "\ - exec \$progdir\\\\\$program \${1+\"\$@\"} - " - ;; -+ - *) - $echo >> $output "\ - # Export the path to the program. -@@ -2975,7 +3864,7 @@ - oldobjs="$libobjs_save" - build_libtool_libs=no - else -- oldobjs="$objs "`$echo "X$libobjs_save" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP` -+ oldobjs="$objs$old_deplibs "`$echo "X$libobjs_save" | $SP2NL | $Xsed -e '/\.'${libext}'$/d' -e '/\.lib$/d' -e "$lo2o" | $NL2SP` - fi - addlibs="$old_convenience" - fi -@@ -2991,11 +3880,11 @@ - exit $status - fi - generated="$generated $gentop" -- -+ - # Add in members from convenience archives. - for xlib in $addlibs; do - # Extract the objects. -- case "$xlib" in -+ case $xlib in - [\\/]* | [A-Za-z]:[\\/]*) xabs="$xlib" ;; - *) xabs=`pwd`"/$xlib" ;; - esac -@@ -3041,7 +3930,7 @@ - - eval cmds=\"$old_archive_cmds\" - fi -- IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' -+ save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" -@@ -3056,19 +3945,26 @@ - fi - - # Now create the libtool archive. -- case "$output" in -+ case $output in - *.la) - old_library= - test "$build_old_libs" = yes && old_library="$libname.$libext" - $show "creating $output" - -- if test -n "$xrpath"; then -- temp_xrpath= -- for libdir in $xrpath; do -- temp_xrpath="$temp_xrpath -R$libdir" -- done -- dependency_libs="$temp_xrpath $dependency_libs" -- fi -+ # Preserve any variables that may affect compiler behavior -+ for var in $variables_saved_for_relink; do -+ if eval test -z \"\${$var+set}\"; then -+ relink_command="{ test -z \"\${$var+set}\" || unset $var || { $var=; export $var; }; }; $relink_command" -+ elif eval var_value=\$$var; test -z "$var_value"; then -+ relink_command="$var=; export $var; $relink_command" -+ else -+ var_value=`$echo "X$var_value" | $Xsed -e "$sed_quote_subst"` -+ relink_command="$var=\"$var_value\"; export $var; $relink_command" -+ fi -+ done -+ # Quote the link command for shipping. -+ relink_command="(cd `pwd`; $SHELL $0 --mode=relink $libtool_args @inst_prefix_dir@)" -+ relink_command=`$echo "X$relink_command" | $Xsed -e "$sed_quote_subst"` - - # Only create the output if not a dry run. - if test -z "$run"; then -@@ -3078,8 +3974,52 @@ - break - fi - output="$output_objdir/$outputname"i -+ # Replace all uninstalled libtool libraries with the installed ones -+ newdependency_libs= -+ for deplib in $dependency_libs; do -+ case $deplib in -+ *.la) -+ name=`$echo "X$deplib" | $Xsed -e 's%^.*/%%'` -+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` -+ if test -z "$libdir"; then -+ $echo "$modename: \`$deplib' is not a valid libtool archive" 1>&2 -+ exit 1 -+ fi -+ newdependency_libs="$newdependency_libs $libdir/$name" -+ ;; -+ *) newdependency_libs="$newdependency_libs $deplib" ;; -+ esac -+ done -+ dependency_libs="$newdependency_libs" -+ newdlfiles= -+ for lib in $dlfiles; do -+ name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` -+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib` -+ if test -z "$libdir"; then -+ $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 -+ exit 1 -+ fi -+ newdlfiles="$newdlfiles $libdir/$name" -+ done -+ dlfiles="$newdlfiles" -+ newdlprefiles= -+ for lib in $dlprefiles; do -+ name=`$echo "X$lib" | $Xsed -e 's%^.*/%%'` -+ eval libdir=`${SED} -n -e 's/^libdir=\(.*\)$/\1/p' $lib` -+ if test -z "$libdir"; then -+ $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 -+ exit 1 -+ fi -+ newdlprefiles="$newdlprefiles $libdir/$name" -+ done -+ dlprefiles="$newdlprefiles" - fi - $rm $output -+ # place dlname in correct position for cygwin -+ tdlname=$dlname -+ case $host,$output,$installed,$module,$dlname in -+ *cygwin*,*lai,yes,no,*.dll) tdlname=../bin/$dlname ;; -+ esac - $echo > $output "\ - # $outputname - a libtool library file - # Generated by $PROGRAM - GNU $PACKAGE $VERSION$TIMESTAMP -@@ -3088,7 +4028,7 @@ - # It is necessary for linking the library. - - # The name that we can dlopen(3). --dlname='$dlname' -+dlname='$tdlname' - - # Names of this library. - library_names='$library_names' -@@ -3107,16 +4047,23 @@ - # Is this an already installed library? - installed=$installed - -+# Files to dlopen/dlpreopen -+dlopen='$dlfiles' -+dlpreopen='$dlprefiles' -+ - # Directory that this library needs to be installed in: --libdir='$install_libdir'\ --" -+libdir='$install_libdir'" -+ if test "$installed" = no && test $need_relink = yes; then -+ $echo >> $output "\ -+relink_command=\"$relink_command\"" -+ fi - done - fi - - # Do a symbolic link so that the libtool archive can be found in - # LD_LIBRARY_PATH before the program is installed. - $show "(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)" -- $run eval "(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)" || exit $? -+ $run eval '(cd $output_objdir && $rm $outputname && $LN_S ../$outputname $outputname)' || exit $? - ;; - esac - exit 0 -@@ -3128,10 +4075,12 @@ - - # There may be an optional sh(1) argument at the beginning of - # install_prog (especially on Windows NT). -- if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh; then -+ if test "$nonopt" = "$SHELL" || test "$nonopt" = /bin/sh || -+ # Allow the use of GNU shtool's install command. -+ $echo "X$nonopt" | $Xsed | grep shtool > /dev/null; then - # Aesthetically quote it. - arg=`$echo "X$nonopt" | $Xsed -e "$sed_quote_subst"` -- case "$arg" in -+ case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) - arg="\"$arg\"" - ;; -@@ -3147,7 +4096,7 @@ - # The real first argument should be the name of the installation program. - # Aesthetically quote it. - arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` -- case "$arg" in -+ case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) - arg="\"$arg\"" - ;; -@@ -3170,7 +4119,7 @@ - continue - fi - -- case "$arg" in -+ case $arg in - -d) isdir=yes ;; - -f) prev="-f" ;; - -g) prev="-g" ;; -@@ -3195,7 +4144,7 @@ - - # Aesthetically quote the argument. - arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` -- case "$arg" in -+ case $arg in - *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*) - arg="\"$arg\"" - ;; -@@ -3246,11 +4195,11 @@ - exit 1 - fi - fi -- case "$destdir" in -+ case $destdir in - [\\/]* | [A-Za-z]:[\\/]*) ;; - *) - for file in $files; do -- case "$file" in -+ case $file in - *.lo) ;; - *) - $echo "$modename: \`$destdir' must be an absolute directory name" 1>&2 -@@ -3272,15 +4221,15 @@ - for file in $files; do - - # Do each installation. -- case "$file" in -- *.a | *.lib) -+ case $file in -+ *.$libext) - # Do the static libraries later. - staticlibs="$staticlibs $file" - ;; - - *.la) - # Check to see that this really is a libtool archive. -- if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : -+ if (${SED} -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : - else - $echo "$modename: \`$file' is not a valid libtool archive" 1>&2 - $echo "$help" 1>&2 -@@ -3289,8 +4238,9 @@ - - library_names= - old_library= -+ relink_command= - # If there is no directory component, then add one. -- case "$file" in -+ case $file in - */* | *\\*) . $file ;; - *) . ./$file ;; - esac -@@ -3309,10 +4259,38 @@ - esac - fi - -- dir="`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`/" -+ dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`/ - test "X$dir" = "X$file/" && dir= - dir="$dir$objdir" - -+ if test -n "$relink_command"; then -+ # Determine the prefix the user has applied to our future dir. -+ inst_prefix_dir=`$echo "$destdir" | sed "s%$libdir\$%%"` -+ -+ # Don't allow the user to place us outside of our expected -+ # location b/c this prevents finding dependent libraries that -+ # are installed to the same prefix. -+ if test "$inst_prefix_dir" = "$destdir"; then -+ $echo "$modename: error: cannot install \`$file' to a directory not ending in $libdir" 1>&2 -+ exit 1 -+ fi -+ -+ if test -n "$inst_prefix_dir"; then -+ # Stick the inst_prefix_dir data into the link command. -+ relink_command=`$echo "$relink_command" | sed "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"` -+ else -+ relink_command=`$echo "$relink_command" | sed "s%@inst_prefix_dir@%%"` -+ fi -+ -+ $echo "$modename: warning: relinking \`$file'" 1>&2 -+ $show "$relink_command" -+ if $run eval "$relink_command"; then : -+ else -+ $echo "$modename: error: relink \`$file' with the above command before installing it" 1>&2 -+ exit 1 -+ fi -+ fi -+ - # See the names of the shared library. - set dummy $library_names - if test -n "$2"; then -@@ -3320,9 +4298,16 @@ - shift - shift - -+ srcname="$realname" -+ test -n "$relink_command" && srcname="$realname"T -+ - # Install the shared library and build the symlinks. -- $show "$install_prog $dir/$realname $destdir/$realname" -- $run eval "$install_prog $dir/$realname $destdir/$realname" || exit $? -+ $show "$install_prog $dir/$srcname $destdir/$realname" -+ $run eval "$install_prog $dir/$srcname $destdir/$realname" || exit $? -+ if test -n "$stripme" && test -n "$striplib"; then -+ $show "$striplib $destdir/$realname" -+ $run eval "$striplib $destdir/$realname" || exit $? -+ fi - - if test $# -gt 0; then - # Delete the old symlinks, and create new ones. -@@ -3338,7 +4323,7 @@ - # Do each command in the postinstall commands. - lib="$destdir/$realname" - eval cmds=\"$postinstall_cmds\" -- IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' -+ save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" -@@ -3369,11 +4354,11 @@ - fi - - # Deduce the name of the destination old-style object file. -- case "$destfile" in -+ case $destfile in - *.lo) - staticdest=`$echo "X$destfile" | $Xsed -e "$lo2o"` - ;; -- *.o | *.obj) -+ *.$objext) - staticdest="$destfile" - destfile= - ;; -@@ -3411,40 +4396,55 @@ - fi - - # Do a test to see if this is really a libtool program. -- if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then -- link_against_libtool_libs= -+ case $host in -+ *cygwin*|*mingw*) -+ wrapper=`echo $file | ${SED} -e 's,.exe$,,'` -+ ;; -+ *) -+ wrapper=$file -+ ;; -+ esac -+ if (${SED} -e '4q' $wrapper | egrep "^# Generated by .*$PACKAGE")>/dev/null 2>&1; then -+ notinst_deplibs= - relink_command= - - # If there is no directory component, then add one. -- case "$file" in -- */* | *\\*) . $file ;; -- *) . ./$file ;; -+ case $file in -+ */* | *\\*) . $wrapper ;; -+ *) . ./$wrapper ;; - esac - - # Check the variables that should have been set. -- if test -z "$link_against_libtool_libs"; then -- $echo "$modename: invalid libtool wrapper script \`$file'" 1>&2 -+ if test -z "$notinst_deplibs"; then -+ $echo "$modename: invalid libtool wrapper script \`$wrapper'" 1>&2 - exit 1 - fi - - finalize=yes -- for lib in $link_against_libtool_libs; do -+ for lib in $notinst_deplibs; do - # Check to see that each library is installed. - libdir= - if test -f "$lib"; then - # If there is no directory component, then add one. -- case "$lib" in -+ case $lib in - */* | *\\*) . $lib ;; - *) . ./$lib ;; - esac - fi -- libfile="$libdir/`$echo "X$lib" | $Xsed -e 's%^.*/%%g'`" -+ libfile="$libdir/"`$echo "X$lib" | $Xsed -e 's%^.*/%%g'` ### testsuite: skip nested quoting test - if test -n "$libdir" && test ! -f "$libfile"; then - $echo "$modename: warning: \`$lib' has not been installed in \`$libdir'" 1>&2 - finalize=no - fi - done - -+ relink_command= -+ # If there is no directory component, then add one. -+ case $file in -+ */* | *\\*) . $wrapper ;; -+ *) . ./$wrapper ;; -+ esac -+ - outputname= - if test "$fast_install" = no && test -n "$relink_command"; then - if test "$finalize" = yes && test -z "$run"; then -@@ -3456,6 +4456,7 @@ - $echo "$modename: error: cannot create temporary directory \`$tmpdir'" 1>&2 - continue - fi -+ file=`$echo "X$file" | $Xsed -e 's%^.*/%%'` - outputname="$tmpdir/$file" - # Replace the output file specification. - relink_command=`$echo "X$relink_command" | $Xsed -e 's%@OUTPUT@%'"$outputname"'%g'` -@@ -3477,6 +4478,23 @@ - fi - fi - -+ # remove .exe since cygwin /usr/bin/install will append another -+ # one anyways -+ case $install_prog,$host in -+ /usr/bin/install*,*cygwin*) -+ case $file:$destfile in -+ *.exe:*.exe) -+ # this is ok -+ ;; -+ *.exe:*) -+ destfile=$destfile.exe -+ ;; -+ *:*.exe) -+ destfile=`echo $destfile | ${SED} -e 's,.exe$,,'` -+ ;; -+ esac -+ ;; -+ esac - $show "$install_prog$stripme $file $destfile" - $run eval "$install_prog\$stripme \$file \$destfile" || exit $? - test -n "$outputname" && ${rm}r "$tmpdir" -@@ -3493,9 +4511,14 @@ - $show "$install_prog $file $oldlib" - $run eval "$install_prog \$file \$oldlib" || exit $? - -+ if test -n "$stripme" && test -n "$striplib"; then -+ $show "$old_striplib $oldlib" -+ $run eval "$old_striplib $oldlib" || exit $? -+ fi -+ - # Do each command in the postinstall commands. - eval cmds=\"$old_postinstall_cmds\" -- IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' -+ save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" -@@ -3511,11 +4534,10 @@ - if test -n "$current_libdirs"; then - # Maybe just do a dry run. - test -n "$run" && current_libdirs=" -n$current_libdirs" -- exec $SHELL $0 --finish$current_libdirs -- exit 1 -+ exec_cmd='$SHELL $0 --finish$current_libdirs' -+ else -+ exit 0 - fi -- -- exit 0 - ;; - - # libtool finish mode -@@ -3534,7 +4556,7 @@ - if test -n "$finish_cmds"; then - # Do each command in the finish commands. - eval cmds=\"$finish_cmds\" -- IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' -+ save_ifs="$IFS"; IFS='~' - for cmd in $cmds; do - IFS="$save_ifs" - $show "$cmd" -@@ -3553,7 +4575,7 @@ - fi - - # Exit here if they wanted silent mode. -- test "$show" = : && exit 0 -+ test "$show" = ":" && exit 0 - - echo "----------------------------------------------------------------------" - echo "Libraries have been installed in:" -@@ -3563,7 +4585,7 @@ - echo - echo "If you ever happen to want to link against installed libraries" - echo "in a given directory, LIBDIR, you must either use libtool, and" -- echo "specify the full pathname of the library, or use \`-LLIBDIR'" -+ echo "specify the full pathname of the library, or use the \`-LLIBDIR'" - echo "flag during linking and do at least one of the following:" - if test -n "$shlibpath_var"; then - echo " - add LIBDIR to the \`$shlibpath_var' environment variable" -@@ -3613,10 +4635,10 @@ - fi - - dir= -- case "$file" in -+ case $file in - *.la) - # Check to see that this really is a libtool archive. -- if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : -+ if (${SED} -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then : - else - $echo "$modename: \`$lib' is not a valid libtool archive" 1>&2 - $echo "$help" 1>&2 -@@ -3628,7 +4650,7 @@ - library_names= - - # If there is no directory component, then add one. -- case "$file" in -+ case $file in - */* | *\\*) . $file ;; - *) . ./$file ;; - esac -@@ -3683,13 +4705,13 @@ - args= - for file - do -- case "$file" in -+ case $file in - -*) ;; - *) - # Do a test to see if this is really a libtool program. -- if (sed -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then -+ if (${SED} -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then - # If there is no directory component, then add one. -- case "$file" in -+ case $file in - */* | *\\*) . $file ;; - *) . ./$file ;; - esac -@@ -3706,8 +4728,8 @@ - - if test -z "$run"; then - if test -n "$shlibpath_var"; then -- # Export the shlibpath_var. -- eval "export $shlibpath_var" -+ # Export the shlibpath_var. -+ eval "export $shlibpath_var" - fi - - # Restore saved enviroment variables -@@ -3718,31 +4740,35 @@ - LANG="$save_LANG"; export LANG - fi - -- # Now actually exec the command. -- eval "exec \$cmd$args" -- -- $echo "$modename: cannot exec \$cmd$args" -- exit 1 -+ # Now prepare to actually exec the command. -+ exec_cmd="\$cmd$args" - else - # Display what would be done. - if test -n "$shlibpath_var"; then -- eval "\$echo \"\$shlibpath_var=\$$shlibpath_var\"" -- $echo "export $shlibpath_var" -+ eval "\$echo \"\$shlibpath_var=\$$shlibpath_var\"" -+ $echo "export $shlibpath_var" - fi - $echo "$cmd$args" - exit 0 - fi - ;; - -- # libtool uninstall mode -- uninstall) -- modename="$modename: uninstall" -+ # libtool clean and uninstall mode -+ clean | uninstall) -+ modename="$modename: $mode" - rm="$nonopt" - files= -+ rmforce= -+ exit_status=0 -+ -+ # This variable tells wrapper scripts just to set variables rather -+ # than running their programs. -+ libtool_install_magic="$magic" - - for arg - do -- case "$arg" in -+ case $arg in -+ -f) rm="$rm $arg"; rmforce=yes ;; - -*) rm="$rm $arg" ;; - *) files="$files $arg" ;; - esac -@@ -3754,53 +4780,86 @@ - exit 1 - fi - -+ rmdirs= -+ - for file in $files; do - dir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'` -- test "X$dir" = "X$file" && dir=. -+ if test "X$dir" = "X$file"; then -+ dir=. -+ objdir="$objdir" -+ else -+ objdir="$dir/$objdir" -+ fi - name=`$echo "X$file" | $Xsed -e 's%^.*/%%'` -+ test $mode = uninstall && objdir="$dir" -+ -+ # Remember objdir for removal later, being careful to avoid duplicates -+ if test $mode = clean; then -+ case " $rmdirs " in -+ *" $objdir "*) ;; -+ *) rmdirs="$rmdirs $objdir" ;; -+ esac -+ fi -+ -+ # Don't error if the file doesn't exist and rm -f was used. -+ if (test -L "$file") >/dev/null 2>&1 \ -+ || (test -h "$file") >/dev/null 2>&1 \ -+ || test -f "$file"; then -+ : -+ elif test -d "$file"; then -+ exit_status=1 -+ continue -+ elif test "$rmforce" = yes; then -+ continue -+ fi - - rmfiles="$file" - -- case "$name" in -+ case $name in - *.la) - # Possibly a libtool archive, so verify it. -- if (sed -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then -+ if (${SED} -e '2q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then - . $dir/$name - - # Delete the libtool libraries and symlinks. - for n in $library_names; do -- rmfiles="$rmfiles $dir/$n" -+ rmfiles="$rmfiles $objdir/$n" - done -- test -n "$old_library" && rmfiles="$rmfiles $dir/$old_library" -+ test -n "$old_library" && rmfiles="$rmfiles $objdir/$old_library" -+ test $mode = clean && rmfiles="$rmfiles $objdir/$name $objdir/${name}i" - -- $show "$rm $rmfiles" -- $run $rm $rmfiles -- -- if test -n "$library_names"; then -- # Do each command in the postuninstall commands. -- eval cmds=\"$postuninstall_cmds\" -- IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' -- for cmd in $cmds; do -+ if test $mode = uninstall; then -+ if test -n "$library_names"; then -+ # Do each command in the postuninstall commands. -+ eval cmds=\"$postuninstall_cmds\" -+ save_ifs="$IFS"; IFS='~' -+ for cmd in $cmds; do -+ IFS="$save_ifs" -+ $show "$cmd" -+ $run eval "$cmd" -+ if test $? != 0 && test "$rmforce" != yes; then -+ exit_status=1 -+ fi -+ done - IFS="$save_ifs" -- $show "$cmd" -- $run eval "$cmd" -- done -- IFS="$save_ifs" -- fi -+ fi - -- if test -n "$old_library"; then -- # Do each command in the old_postuninstall commands. -- eval cmds=\"$old_postuninstall_cmds\" -- IFS="${IFS= }"; save_ifs="$IFS"; IFS='~' -- for cmd in $cmds; do -+ if test -n "$old_library"; then -+ # Do each command in the old_postuninstall commands. -+ eval cmds=\"$old_postuninstall_cmds\" -+ save_ifs="$IFS"; IFS='~' -+ for cmd in $cmds; do -+ IFS="$save_ifs" -+ $show "$cmd" -+ $run eval "$cmd" -+ if test $? != 0 && test "$rmforce" != yes; then -+ exit_status=1 -+ fi -+ done - IFS="$save_ifs" -- $show "$cmd" -- $run eval "$cmd" -- done -- IFS="$save_ifs" -+ fi -+ # FIXME: should reinstall the best remaining shared library. - fi -- -- # FIXME: should reinstall the best remaining shared library. - fi - ;; - -@@ -3809,17 +4868,35 @@ - oldobj=`$echo "X$name" | $Xsed -e "$lo2o"` - rmfiles="$rmfiles $dir/$oldobj" - fi -- $show "$rm $rmfiles" -- $run $rm $rmfiles - ;; - - *) -- $show "$rm $rmfiles" -- $run $rm $rmfiles -+ # Do a test to see if this is a libtool program. -+ if test $mode = clean && -+ (${SED} -e '4q' $file | egrep "^# Generated by .*$PACKAGE") >/dev/null 2>&1; then -+ relink_command= -+ . $dir/$file -+ -+ rmfiles="$rmfiles $objdir/$name $objdir/${name}S.${objext}" -+ if test "$fast_install" = yes && test -n "$relink_command"; then -+ rmfiles="$rmfiles $objdir/lt-$name" -+ fi -+ fi - ;; - esac -+ $show "$rm $rmfiles" -+ $run $rm $rmfiles || exit_status=1 - done -- exit 0 -+ -+ # Try to remove the ${objdir}s in the directories where we deleted files -+ for dir in $rmdirs; do -+ if test -d "$dir"; then -+ $show "rmdir $dir" -+ $run rmdir $dir >/dev/null 2>&1 -+ fi -+ done -+ -+ exit $exit_status - ;; - - "") -@@ -3829,13 +4906,20 @@ - ;; - esac - -- $echo "$modename: invalid operation mode \`$mode'" 1>&2 -- $echo "$generic_help" 1>&2 -- exit 1 -+ if test -z "$exec_cmd"; then -+ $echo "$modename: invalid operation mode \`$mode'" 1>&2 -+ $echo "$generic_help" 1>&2 -+ exit 1 -+ fi - fi # test -z "$show_help" - -+if test -n "$exec_cmd"; then -+ eval exec $exec_cmd -+ exit 1 -+fi -+ - # We need to display help for each of the modes. --case "$mode" in -+case $mode in - "") $echo \ - "Usage: $modename [OPTION]... [MODE-ARG]... - -@@ -3854,6 +4938,7 @@ - - MODE must be one of the following: - -+ clean remove files from the build directory - compile compile a source file into a libtool object - execute automatically set library path, then run a program - finish complete the installation of libtool libraries -@@ -3866,6 +4951,20 @@ - exit 0 - ;; - -+clean) -+ $echo \ -+"Usage: $modename [OPTION]... --mode=clean RM [RM-OPTION]... FILE... -+ -+Remove files from the build directory. -+ -+RM is the name of the program to use to delete files associated with each FILE -+(typically \`/bin/rm'). RM-OPTIONS are options (such as \`-f') to be passed -+to RM. -+ -+If FILE is a libtool library, object or program, all the files associated -+with it are deleted. Otherwise, only FILE itself is deleted using RM." -+ ;; -+ - compile) - $echo \ - "Usage: $modename [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE -@@ -3875,6 +4974,8 @@ - This mode accepts the following additional options: - - -o OUTPUT-FILE set the output file name to OUTPUT-FILE -+ -prefer-pic try to building PIC objects only -+ -prefer-non-pic try to building non-PIC objects only - -static always build a \`.o' file suitable for static linking - - COMPILE-COMMAND is a command to be used in creating a \`standard' object file -@@ -3954,6 +5055,8 @@ - -LLIBDIR search LIBDIR for required installed libraries - -lNAME OUTPUT-FILE requires the installed library libNAME - -module build a library that can dlopened -+ -no-fast-install disable the fast-install mode -+ -no-install link a not-installable executable - -no-undefined declare that a library does not refer to external symbols - -o OUTPUT-FILE create OUTPUT-FILE from the specified objects - -release RELEASE specify package release information ---- recode-3.6.orig/aclocal.m4 -+++ recode-3.6/aclocal.m4 -@@ -1,6 +1,6 @@ --dnl aclocal.m4 generated automatically by aclocal 1.4 -+dnl aclocal.m4 generated automatically by aclocal 1.4-p6 - --dnl Copyright (C) 1994, 1995-8, 1999 Free Software Foundation, Inc. -+dnl Copyright (C) 1994, 1995-8, 1999, 2001 Free Software Foundation, Inc. - dnl This file is free software; the Free Software Foundation - dnl gives unlimited permission to copy and/or distribute it, - dnl with or without modifications, as long as this notice is preserved. -@@ -10,81 +10,73 @@ - dnl even the implied warranty of MERCHANTABILITY or FITNESS FOR A - dnl PARTICULAR PURPOSE. - -+# libtool.m4 - Configure libtool for the host system. -*-Shell-script-*- - --# serial 40 AC_PROG_LIBTOOL --AC_DEFUN(AC_PROG_LIBTOOL, --[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl -- --# Save cache, so that ltconfig can load it --AC_CACHE_SAVE -+# serial 46 AC_PROG_LIBTOOL -+# Debian $Rev: 50 $ - --# Actually configure libtool. ac_aux_dir is where install-sh is found. --CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \ --LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ --LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" \ --DLLTOOL="$DLLTOOL" AS="$AS" OBJDUMP="$OBJDUMP" \ --${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \ --$libtool_flags --no-verify $ac_aux_dir/ltmain.sh $lt_target \ --|| AC_MSG_ERROR([libtool configure failed]) -- --# Reload cache, that may have been modified by ltconfig --AC_CACHE_LOAD -+AC_DEFUN([AC_PROG_LIBTOOL], -+[AC_REQUIRE([AC_LIBTOOL_SETUP])dnl - - # This can be used to rebuild libtool when needed --LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh" -+LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh" - - # Always use our own libtool. - LIBTOOL='$(SHELL) $(top_builddir)/libtool' - AC_SUBST(LIBTOOL)dnl - --# Redirect the config.log output again, so that the ltconfig log is not --# clobbered by the next message. --exec 5>>./config.log -+# Prevent multiple expansion -+define([AC_PROG_LIBTOOL], []) - ]) - --AC_DEFUN(AC_LIBTOOL_SETUP, -+AC_DEFUN([AC_LIBTOOL_SETUP], - [AC_PREREQ(2.13)dnl - AC_REQUIRE([AC_ENABLE_SHARED])dnl - AC_REQUIRE([AC_ENABLE_STATIC])dnl - AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl - AC_REQUIRE([AC_CANONICAL_HOST])dnl - AC_REQUIRE([AC_CANONICAL_BUILD])dnl --AC_REQUIRE([AC_PROG_RANLIB])dnl - AC_REQUIRE([AC_PROG_CC])dnl - AC_REQUIRE([AC_PROG_LD])dnl -+AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl - AC_REQUIRE([AC_PROG_NM])dnl -+AC_REQUIRE([LT_AC_PROG_SED])dnl -+ - AC_REQUIRE([AC_PROG_LN_S])dnl -+AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl -+AC_REQUIRE([AC_OBJEXT])dnl -+AC_REQUIRE([AC_EXEEXT])dnl - dnl - --case "$target" in --NONE) lt_target="$host" ;; --*) lt_target="$target" ;; -+_LT_AC_PROG_ECHO_BACKSLASH -+# Only perform the check for file, if the check method requires it -+case $deplibs_check_method in -+file_magic*) -+ if test "$file_magic_cmd" = '$MAGIC_CMD'; then -+ AC_PATH_MAGIC -+ fi -+ ;; - esac - --# Check for any special flags to pass to ltconfig. --libtool_flags="--cache-file=$cache_file" --test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared" --test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static" --test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install" --test "$ac_cv_prog_gcc" = yes && libtool_flags="$libtool_flags --with-gcc" --test "$ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld" --ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN], --[libtool_flags="$libtool_flags --enable-dlopen"]) -+AC_CHECK_TOOL(RANLIB, ranlib, :) -+AC_CHECK_TOOL(STRIP, strip, :) -+ -+ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN], enable_dlopen=yes, enable_dlopen=no) - ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], --[libtool_flags="$libtool_flags --enable-win32-dll"]) -+enable_win32_dll=yes, enable_win32_dll=no) -+ - AC_ARG_ENABLE(libtool-lock, - [ --disable-libtool-lock avoid locking (might break parallel builds)]) --test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock" --test x"$silent" = xyes && libtool_flags="$libtool_flags --silent" -+test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes - - # Some flags need to be propagated to the compiler or linker for good - # libtool support. --case "$lt_target" in -+case $host in - *-*-irix6*) - # Find out which ABI we are using. - echo '[#]line __oline__ "configure"' > conftest.$ac_ext - if AC_TRY_EVAL(ac_compile); then -- case "`/usr/bin/file conftest.o`" in -+ case `/usr/bin/file conftest.$ac_objext` in - *32-bit*) - LD="${LD-ld} -32" - ;; -@@ -104,41 +96,2884 @@ - SAVE_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -belf" - AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, -- [AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])]) -+ [AC_LANG_SAVE -+ AC_LANG_C -+ AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) -+ AC_LANG_RESTORE]) - if test x"$lt_cv_cc_needs_belf" != x"yes"; then - # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf - CFLAGS="$SAVE_CFLAGS" - fi - ;; - --ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], --[*-*-cygwin* | *-*-mingw*) -- AC_CHECK_TOOL(DLLTOOL, dlltool, false) -- AC_CHECK_TOOL(AS, as, false) -- AC_CHECK_TOOL(OBJDUMP, objdump, false) -- ;; --]) --esac --]) -+ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], -+[*-*-cygwin* | *-*-mingw* | *-*-pw32*) -+ AC_CHECK_TOOL(DLLTOOL, dlltool, false) -+ AC_CHECK_TOOL(AS, as, false) -+ AC_CHECK_TOOL(OBJDUMP, objdump, false) -+ -+ # recent cygwin and mingw systems supply a stub DllMain which the user -+ # can override, but on older systems we have to supply one -+ AC_CACHE_CHECK([if libtool should supply DllMain function], lt_cv_need_dllmain, -+ [AC_TRY_LINK([], -+ [extern int __attribute__((__stdcall__)) DllMain(void*, int, void*); -+ DllMain (0, 0, 0);], -+ [lt_cv_need_dllmain=no],[lt_cv_need_dllmain=yes])]) -+ -+ case $host/$CC in -+ *-*-cygwin*/gcc*-mno-cygwin*|*-*-mingw*) -+ # old mingw systems require "-dll" to link a DLL, while more recent ones -+ # require "-mdll" -+ SAVE_CFLAGS="$CFLAGS" -+ CFLAGS="$CFLAGS -mdll" -+ AC_CACHE_CHECK([how to link DLLs], lt_cv_cc_dll_switch, -+ [AC_TRY_LINK([], [], [lt_cv_cc_dll_switch=-mdll],[lt_cv_cc_dll_switch=-dll])]) -+ CFLAGS="$SAVE_CFLAGS" ;; -+ *-*-cygwin* | *-*-pw32*) -+ # cygwin systems need to pass --dll to the linker, and not link -+ # crt.o which will require a WinMain@16 definition. -+ lt_cv_cc_dll_switch="-Wl,--dll -nostartfiles" ;; -+ esac -+ ;; -+ ]) -+esac -+ -+_LT_AC_LTCONFIG_HACK -+ -+]) -+ -+# AC_LIBTOOL_HEADER_ASSERT -+# ------------------------ -+AC_DEFUN([AC_LIBTOOL_HEADER_ASSERT], -+[AC_CACHE_CHECK([whether $CC supports assert without backlinking], -+ [lt_cv_func_assert_works], -+ [case $host in -+ *-*-solaris*) -+ if test "$GCC" = yes && test "$with_gnu_ld" != yes; then -+ case `$CC --version 2>/dev/null` in -+ [[12]].*) lt_cv_func_assert_works=no ;; -+ *) lt_cv_func_assert_works=yes ;; -+ esac -+ fi -+ ;; -+ esac]) -+ -+if test "x$lt_cv_func_assert_works" = xyes; then -+ AC_CHECK_HEADERS(assert.h) -+fi -+])# AC_LIBTOOL_HEADER_ASSERT -+ -+# _LT_AC_CHECK_DLFCN -+# -------------------- -+AC_DEFUN([_LT_AC_CHECK_DLFCN], -+[AC_CHECK_HEADERS(dlfcn.h) -+])# _LT_AC_CHECK_DLFCN -+ -+# AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE -+# --------------------------------- -+AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], -+[AC_REQUIRE([AC_CANONICAL_HOST]) -+AC_REQUIRE([AC_PROG_NM]) -+AC_REQUIRE([AC_OBJEXT]) -+# Check for command to grab the raw symbol name followed by C symbol from nm. -+AC_MSG_CHECKING([command to parse $NM output]) -+AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe], [dnl -+ -+# These are sane defaults that work on at least a few old systems. -+# [They come from Ultrix. What could be older than Ultrix?!! ;)] -+ -+# Character class describing NM global symbol codes. -+symcode='[[BCDEGRST]]' -+ -+# Regexp to match symbols that can be accessed directly from C. -+sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)' -+ -+# Transform the above into a raw symbol and a C symbol. -+symxfrm='\1 \2\3 \3' -+ -+# Transform an extracted symbol line into a proper C declaration -+lt_cv_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'" -+ -+# Transform an extracted symbol line into symbol name and symbol address -+lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" -+ -+# Define system-specific variables. -+case $host_os in -+aix*) -+ symcode='[[BCDT]]' -+ ;; -+cygwin* | mingw* | pw32*) -+ symcode='[[ABCDGISTW]]' -+ ;; -+hpux*) # Its linker distinguishes data from code symbols -+ lt_cv_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" -+ lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" -+ ;; -+irix* | nonstopux*) -+ symcode='[[BCDEGRST]]' -+ ;; -+osf*) -+ symcode='[[BCDEGQRST]]' -+ ;; -+solaris* | sysv5*) -+ symcode='[[BDT]]' -+ ;; -+sysv4) -+ symcode='[[DFNSTU]]' -+ ;; -+esac -+ -+# Handle CRLF in mingw tool chain -+opt_cr= -+case $host_os in -+mingw*) -+ opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp -+ ;; -+esac -+ -+# If we're using GNU nm, then use its standard symbol codes. -+if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then -+ symcode='[[ABCDGISTW]]' -+fi -+ -+# Try without a prefix undercore, then with it. -+for ac_symprfx in "" "_"; do -+ -+ # Write the raw and C identifiers. -+lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'" -+ -+ # Check to see that the pipe works correctly. -+ pipe_works=no -+ rm -f conftest* -+ cat > conftest.$ac_ext < $nlist) && test -s "$nlist"; then -+ # Try sorting and uniquifying the output. -+ if sort "$nlist" | uniq > "$nlist"T; then -+ mv -f "$nlist"T "$nlist" -+ else -+ rm -f "$nlist"T -+ fi -+ -+ # Make sure that we snagged all the symbols we need. -+ if egrep ' nm_test_var$' "$nlist" >/dev/null; then -+ if egrep ' nm_test_func$' "$nlist" >/dev/null; then -+ cat < conftest.$ac_ext -+#ifdef __cplusplus -+extern "C" { -+#endif -+ -+EOF -+ # Now generate the symbol file. -+ eval "$lt_cv_global_symbol_to_cdecl"' < "$nlist" >> conftest.$ac_ext' -+ -+ cat <> conftest.$ac_ext -+#if defined (__STDC__) && __STDC__ -+# define lt_ptr void * -+#else -+# define lt_ptr char * -+# define const -+#endif -+ -+/* The mapping between symbol names and symbols. */ -+const struct { -+ const char *name; -+ lt_ptr address; -+} -+lt_preloaded_symbols[[]] = -+{ -+EOF -+ sed "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (lt_ptr) \&\2},/" < "$nlist" >> conftest.$ac_ext -+ cat <<\EOF >> conftest.$ac_ext -+ {0, (lt_ptr) 0} -+}; -+ -+#ifdef __cplusplus -+} -+#endif -+EOF -+ # Now try linking the two files. -+ mv conftest.$ac_objext conftstm.$ac_objext -+ save_LIBS="$LIBS" -+ save_CFLAGS="$CFLAGS" -+ LIBS="conftstm.$ac_objext" -+ CFLAGS="$CFLAGS$no_builtin_flag" -+ if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then -+ pipe_works=yes -+ fi -+ LIBS="$save_LIBS" -+ CFLAGS="$save_CFLAGS" -+ else -+ echo "cannot find nm_test_func in $nlist" >&AC_FD_CC -+ fi -+ else -+ echo "cannot find nm_test_var in $nlist" >&AC_FD_CC -+ fi -+ else -+ echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AC_FD_CC -+ fi -+ else -+ echo "$progname: failed program was:" >&AC_FD_CC -+ cat conftest.$ac_ext >&5 -+ fi -+ rm -f conftest* conftst* -+ -+ # Do not use the global_symbol_pipe unless it works. -+ if test "$pipe_works" = yes; then -+ break -+ else -+ lt_cv_sys_global_symbol_pipe= -+ fi -+done -+]) -+global_symbol_pipe="$lt_cv_sys_global_symbol_pipe" -+if test -z "$lt_cv_sys_global_symbol_pipe"; then -+ global_symbol_to_cdecl= -+ global_symbol_to_c_name_address= -+else -+ global_symbol_to_cdecl="$lt_cv_global_symbol_to_cdecl" -+ global_symbol_to_c_name_address="$lt_cv_global_symbol_to_c_name_address" -+fi -+if test -z "$global_symbol_pipe$global_symbol_to_cdec$global_symbol_to_c_name_address"; -+then -+ AC_MSG_RESULT(failed) -+else -+ AC_MSG_RESULT(ok) -+fi -+]) # AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE -+ -+# _LT_AC_LIBTOOL_SYS_PATH_SEPARATOR -+# --------------------------------- -+AC_DEFUN([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR], -+[# Find the correct PATH separator. Usually this is `:', but -+# DJGPP uses `;' like DOS. -+if test "X${PATH_SEPARATOR+set}" != Xset; then -+ UNAME=${UNAME-`uname 2>/dev/null`} -+ case X$UNAME in -+ *-DOS) lt_cv_sys_path_separator=';' ;; -+ *) lt_cv_sys_path_separator=':' ;; -+ esac -+ PATH_SEPARATOR=$lt_cv_sys_path_separator -+fi -+])# _LT_AC_LIBTOOL_SYS_PATH_SEPARATOR -+ -+# _LT_AC_PROG_ECHO_BACKSLASH -+# -------------------------- -+# Add some code to the start of the generated configure script which -+# will find an echo command which doesn't interpret backslashes. -+AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH], -+[ifdef([AC_DIVERSION_NOTICE], [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)], -+ [AC_DIVERT_PUSH(NOTICE)]) -+_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR -+ -+# Check that we are running under the correct shell. -+SHELL=${CONFIG_SHELL-/bin/sh} -+ -+case X$ECHO in -+X*--fallback-echo) -+ # Remove one level of quotation (which was required for Make). -+ ECHO=`echo "$ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','` -+ ;; -+esac -+ -+echo=${ECHO-echo} -+if test "X[$]1" = X--no-reexec; then -+ # Discard the --no-reexec flag, and continue. -+ shift -+elif test "X[$]1" = X--fallback-echo; then -+ # Avoid inline document here, it may be left over -+ : -+elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then -+ # Yippee, $echo works! -+ : -+else -+ # Restart under the correct shell. -+ exec $SHELL "[$]0" --no-reexec ${1+"[$]@"} -+fi -+ -+if test "X[$]1" = X--fallback-echo; then -+ # used as fallback echo -+ shift -+ cat </dev/null && -+ echo_test_string="`eval $cmd`" && -+ (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null -+ then -+ break -+ fi -+ done -+fi -+ -+if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && -+ echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && -+ test "X$echo_testing_string" = "X$echo_test_string"; then -+ : -+else -+ # The Solaris, AIX, and Digital Unix default echo programs unquote -+ # backslashes. This makes it impossible to quote backslashes using -+ # echo "$something" | sed 's/\\/\\\\/g' -+ # -+ # So, first we look for a working echo in the user's PATH. -+ -+ IFS="${IFS= }"; save_ifs="$IFS"; IFS=$PATH_SEPARATOR -+ for dir in $PATH /usr/ucb; do -+ if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && -+ test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && -+ echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` && -+ test "X$echo_testing_string" = "X$echo_test_string"; then -+ echo="$dir/echo" -+ break -+ fi -+ done -+ IFS="$save_ifs" -+ -+ if test "X$echo" = Xecho; then -+ # We didn't find a better echo, so look for alternatives. -+ if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' && -+ echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` && -+ test "X$echo_testing_string" = "X$echo_test_string"; then -+ # This shell has a builtin print -r that does the trick. -+ echo='print -r' -+ elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) && -+ test "X$CONFIG_SHELL" != X/bin/ksh; then -+ # If we have ksh, try running configure again with it. -+ ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} -+ export ORIGINAL_CONFIG_SHELL -+ CONFIG_SHELL=/bin/ksh -+ export CONFIG_SHELL -+ exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"} -+ else -+ # Try using printf. -+ echo='printf %s\n' -+ if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && -+ echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && -+ test "X$echo_testing_string" = "X$echo_test_string"; then -+ # Cool, printf works -+ : -+ elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && -+ test "X$echo_testing_string" = 'X\t' && -+ echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && -+ test "X$echo_testing_string" = "X$echo_test_string"; then -+ CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL -+ export CONFIG_SHELL -+ SHELL="$CONFIG_SHELL" -+ export SHELL -+ echo="$CONFIG_SHELL [$]0 --fallback-echo" -+ elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && -+ test "X$echo_testing_string" = 'X\t' && -+ echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && -+ test "X$echo_testing_string" = "X$echo_test_string"; then -+ echo="$CONFIG_SHELL [$]0 --fallback-echo" -+ else -+ # maybe with a smaller string... -+ prev=: -+ -+ for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do -+ if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null -+ then -+ break -+ fi -+ prev="$cmd" -+ done -+ -+ if test "$prev" != 'sed 50q "[$]0"'; then -+ echo_test_string=`eval $prev` -+ export echo_test_string -+ exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"} -+ else -+ # Oops. We lost completely, so just stick with echo. -+ echo=echo -+ fi -+ fi -+ fi -+ fi -+fi -+fi -+ -+# Copy echo and quote the copy suitably for passing to libtool from -+# the Makefile, instead of quoting the original, which is used later. -+ECHO=$echo -+if test "X$ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then -+ ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo" -+fi -+ -+AC_SUBST(ECHO) -+AC_DIVERT_POP -+])# _LT_AC_PROG_ECHO_BACKSLASH -+ -+# _LT_AC_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE, -+# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING) -+# ------------------------------------------------------------------ -+AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF], -+[if test "$cross_compiling" = yes; then : -+ [$4] -+else -+ AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl -+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 -+ lt_status=$lt_dlunknown -+ cat > conftest.$ac_ext < -+#endif -+ -+#include -+ -+#ifdef RTLD_GLOBAL -+# define LT_DLGLOBAL RTLD_GLOBAL -+#else -+# ifdef DL_GLOBAL -+# define LT_DLGLOBAL DL_GLOBAL -+# else -+# define LT_DLGLOBAL 0 -+# endif -+#endif -+ -+/* We may have to define LT_DLLAZY_OR_NOW in the command line if we -+ find out it does not work in some platform. */ -+#ifndef LT_DLLAZY_OR_NOW -+# ifdef RTLD_LAZY -+# define LT_DLLAZY_OR_NOW RTLD_LAZY -+# else -+# ifdef DL_LAZY -+# define LT_DLLAZY_OR_NOW DL_LAZY -+# else -+# ifdef RTLD_NOW -+# define LT_DLLAZY_OR_NOW RTLD_NOW -+# else -+# ifdef DL_NOW -+# define LT_DLLAZY_OR_NOW DL_NOW -+# else -+# define LT_DLLAZY_OR_NOW 0 -+# endif -+# endif -+# endif -+# endif -+#endif -+ -+#ifdef __cplusplus -+extern "C" void exit (int); -+#endif -+ -+void fnord() { int i=42;} -+int main () -+{ -+ void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); -+ int status = $lt_dlunknown; -+ -+ if (self) -+ { -+ if (dlsym (self,"fnord")) status = $lt_dlno_uscore; -+ else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; -+ /* dlclose (self); */ -+ } -+ -+ exit (status); -+}] -+EOF -+ if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then -+ (./conftest; exit; ) 2>/dev/null -+ lt_status=$? -+ case x$lt_status in -+ x$lt_dlno_uscore) $1 ;; -+ x$lt_dlneed_uscore) $2 ;; -+ x$lt_unknown|x*) $3 ;; -+ esac -+ else : -+ # compilation failed -+ $3 -+ fi -+fi -+rm -fr conftest* -+])# _LT_AC_TRY_DLOPEN_SELF -+ -+# AC_LIBTOOL_DLOPEN_SELF -+# ------------------- -+AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], -+[if test "x$enable_dlopen" != xyes; then -+ enable_dlopen=unknown -+ enable_dlopen_self=unknown -+ enable_dlopen_self_static=unknown -+else -+ lt_cv_dlopen=no -+ lt_cv_dlopen_libs= -+ -+ case $host_os in -+ beos*) -+ lt_cv_dlopen="load_add_on" -+ lt_cv_dlopen_libs= -+ lt_cv_dlopen_self=yes -+ ;; -+ -+ cygwin* | mingw* | pw32*) -+ lt_cv_dlopen="LoadLibrary" -+ lt_cv_dlopen_libs= -+ ;; -+ -+ *) -+ AC_CHECK_FUNC([shl_load], -+ [lt_cv_dlopen="shl_load"], -+ [AC_CHECK_LIB([dld], [shl_load], -+ [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"], -+ [AC_CHECK_FUNC([dlopen], -+ [lt_cv_dlopen="dlopen"], -+ [AC_CHECK_LIB([dl], [dlopen], -+ [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"], -+ [AC_CHECK_LIB([svld], [dlopen], -+ [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"], -+ [AC_CHECK_LIB([dld], [dld_link], -+ [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"]) -+ ]) -+ ]) -+ ]) -+ ]) -+ ]) -+ ;; -+ esac -+ -+ if test "x$lt_cv_dlopen" != xno; then -+ enable_dlopen=yes -+ else -+ enable_dlopen=no -+ fi -+ -+ case $lt_cv_dlopen in -+ dlopen) -+ save_CPPFLAGS="$CPPFLAGS" -+ AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl -+ test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" -+ -+ save_LDFLAGS="$LDFLAGS" -+ eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" -+ -+ save_LIBS="$LIBS" -+ LIBS="$lt_cv_dlopen_libs $LIBS" -+ -+ AC_CACHE_CHECK([whether a program can dlopen itself], -+ lt_cv_dlopen_self, [dnl -+ _LT_AC_TRY_DLOPEN_SELF( -+ lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes, -+ lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross) -+ ]) -+ -+ if test "x$lt_cv_dlopen_self" = xyes; then -+ LDFLAGS="$LDFLAGS $link_static_flag" -+ AC_CACHE_CHECK([whether a statically linked program can dlopen itself], -+ lt_cv_dlopen_self_static, [dnl -+ _LT_AC_TRY_DLOPEN_SELF( -+ lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes, -+ lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross) -+ ]) -+ fi -+ -+ CPPFLAGS="$save_CPPFLAGS" -+ LDFLAGS="$save_LDFLAGS" -+ LIBS="$save_LIBS" -+ ;; -+ esac -+ -+ case $lt_cv_dlopen_self in -+ yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; -+ *) enable_dlopen_self=unknown ;; -+ esac -+ -+ case $lt_cv_dlopen_self_static in -+ yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; -+ *) enable_dlopen_self_static=unknown ;; -+ esac -+fi -+])# AC_LIBTOOL_DLOPEN_SELF -+ -+AC_DEFUN([_LT_AC_LTCONFIG_HACK], -+[AC_REQUIRE([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])dnl -+# Sed substitution that helps us do robust quoting. It backslashifies -+# metacharacters that are still active within double-quoted strings. -+Xsed='sed -e s/^X//' -+sed_quote_subst='s/\([[\\"\\`$\\\\]]\)/\\\1/g' -+ -+# Same as above, but do not quote variable references. -+double_quote_subst='s/\([[\\"\\`\\\\]]\)/\\\1/g' -+ -+# Sed substitution to delay expansion of an escaped shell variable in a -+# double_quote_subst'ed string. -+delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' -+ -+# Constants: -+rm="rm -f" -+ -+# Global variables: -+default_ofile=libtool -+can_build_shared=yes -+ -+# All known linkers require a `.a' archive for static linking (except M$VC, -+# which needs '.lib'). -+libext=a -+ltmain="$ac_aux_dir/ltmain.sh" -+ofile="$default_ofile" -+with_gnu_ld="$lt_cv_prog_gnu_ld" -+need_locks="$enable_libtool_lock" -+ -+old_CC="$CC" -+old_CFLAGS="$CFLAGS" -+ -+# Set sane defaults for various variables -+test -z "$AR" && AR=ar -+test -z "$AR_FLAGS" && AR_FLAGS=cru -+test -z "$AS" && AS=as -+test -z "$CC" && CC=cc -+test -z "$DLLTOOL" && DLLTOOL=dlltool -+test -z "$LD" && LD=ld -+test -z "$LN_S" && LN_S="ln -s" -+test -z "$MAGIC_CMD" && MAGIC_CMD=file -+test -z "$NM" && NM=nm -+test -z "$OBJDUMP" && OBJDUMP=objdump -+test -z "$RANLIB" && RANLIB=: -+test -z "$STRIP" && STRIP=: -+test -z "$ac_objext" && ac_objext=o -+ -+if test x"$host" != x"$build"; then -+ ac_tool_prefix=${host_alias}- -+else -+ ac_tool_prefix= -+fi -+ -+# Transform linux* to *-*-linux-gnu*, to support old configure scripts. -+case $host_os in -+linux-gnu*) ;; -+linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'` -+esac -+ -+case $host_os in -+aix3*) -+ # AIX sometimes has problems with the GCC collect2 program. For some -+ # reason, if we set the COLLECT_NAMES environment variable, the problems -+ # vanish in a puff of smoke. -+ if test "X${COLLECT_NAMES+set}" != Xset; then -+ COLLECT_NAMES= -+ export COLLECT_NAMES -+ fi -+ ;; -+esac -+ -+# Determine commands to create old-style static archives. -+old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs' -+old_postinstall_cmds='chmod 644 $oldlib' -+old_postuninstall_cmds= -+ -+if test -n "$RANLIB"; then -+ case $host_os in -+ openbsd*) -+ old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds" -+ ;; -+ *) -+ old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds" -+ ;; -+ esac -+ old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib" -+fi -+ -+# Allow CC to be a program name with arguments. -+set dummy $CC -+compiler="[$]2" -+ -+AC_MSG_CHECKING([for objdir]) -+rm -f .libs 2>/dev/null -+mkdir .libs 2>/dev/null -+if test -d .libs; then -+ objdir=.libs -+else -+ # MS-DOS does not allow filenames that begin with a dot. -+ objdir=_libs -+fi -+rmdir .libs 2>/dev/null -+AC_MSG_RESULT($objdir) -+ -+ -+AC_ARG_WITH(pic, -+[ --with-pic try to use only PIC/non-PIC objects [default=use both]], -+pic_mode="$withval", pic_mode=default) -+test -z "$pic_mode" && pic_mode=default -+ -+# We assume here that the value for lt_cv_prog_cc_pic will not be cached -+# in isolation, and that seeing it set (from the cache) indicates that -+# the associated values are set (in the cache) correctly too. -+AC_MSG_CHECKING([for $compiler option to produce PIC]) -+AC_CACHE_VAL(lt_cv_prog_cc_pic, -+[ lt_cv_prog_cc_pic= -+ lt_cv_prog_cc_shlib= -+ lt_cv_prog_cc_wl= -+ lt_cv_prog_cc_static= -+ lt_cv_prog_cc_no_builtin= -+ lt_cv_prog_cc_can_build_shared=$can_build_shared -+ -+ if test "$GCC" = yes; then -+ lt_cv_prog_cc_wl='-Wl,' -+ lt_cv_prog_cc_static='-static' -+ -+ case $host_os in -+ aix*) -+ # Below there is a dirty hack to force normal static linking with -ldl -+ # The problem is because libdl dynamically linked with both libc and -+ # libC (AIX C++ library), which obviously doesn't included in libraries -+ # list by gcc. This cause undefined symbols with -static flags. -+ # This hack allows C programs to be linked with "-static -ldl", but -+ # not sure about C++ programs. -+ lt_cv_prog_cc_static="$lt_cv_prog_cc_static ${lt_cv_prog_cc_wl}-lC" -+ ;; -+ amigaos*) -+ # FIXME: we need at least 68020 code to build shared libraries, but -+ # adding the `-m68020' flag to GCC prevents building anything better, -+ # like `-m68040'. -+ lt_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4' -+ ;; -+ beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) -+ # PIC is the default for these OSes. -+ ;; -+ darwin* | rhapsody*) -+ # PIC is the default on this platform -+ # Common symbols not allowed in MH_DYLIB files -+ lt_cv_prog_cc_pic='-fno-common' -+ ;; -+ cygwin* | mingw* | pw32* | os2*) -+ # This hack is so that the source file can tell whether it is being -+ # built for inclusion in a dll (and should export symbols for example). -+ lt_cv_prog_cc_pic='-DDLL_EXPORT' -+ ;; -+ sysv4*MP*) -+ if test -d /usr/nec; then -+ lt_cv_prog_cc_pic=-Kconform_pic -+ fi -+ ;; -+ *) -+ lt_cv_prog_cc_pic='-fPIC' -+ ;; -+ esac -+ else -+ # PORTME Check for PIC flags for the system compiler. -+ case $host_os in -+ aix3* | aix4* | aix5*) -+ lt_cv_prog_cc_wl='-Wl,' -+ # All AIX code is PIC. -+ if test "$host_cpu" = ia64; then -+ # AIX 5 now supports IA64 processor -+ lt_cv_prog_cc_static='-Bstatic' -+ else -+ lt_cv_prog_cc_static='-bnso -bI:/lib/syscalls.exp' -+ fi -+ ;; -+ -+ hpux9* | hpux10* | hpux11*) -+ # Is there a better lt_cv_prog_cc_static that works with the bundled CC? -+ lt_cv_prog_cc_wl='-Wl,' -+ lt_cv_prog_cc_static="${lt_cv_prog_cc_wl}-a ${lt_cv_prog_cc_wl}archive" -+ lt_cv_prog_cc_pic='+Z' -+ ;; -+ -+ irix5* | irix6* | nonstopux*) -+ lt_cv_prog_cc_wl='-Wl,' -+ lt_cv_prog_cc_static='-non_shared' -+ # PIC (with -KPIC) is the default. -+ ;; -+ -+ cygwin* | mingw* | pw32* | os2*) -+ # This hack is so that the source file can tell whether it is being -+ # built for inclusion in a dll (and should export symbols for example). -+ lt_cv_prog_cc_pic='-DDLL_EXPORT' -+ ;; -+ -+ newsos6) -+ lt_cv_prog_cc_pic='-KPIC' -+ lt_cv_prog_cc_static='-Bstatic' -+ ;; -+ -+ osf3* | osf4* | osf5*) -+ # All OSF/1 code is PIC. -+ lt_cv_prog_cc_wl='-Wl,' -+ lt_cv_prog_cc_static='-non_shared' -+ ;; -+ -+ sco3.2v5*) -+ lt_cv_prog_cc_pic='-Kpic' -+ lt_cv_prog_cc_static='-dn' -+ lt_cv_prog_cc_shlib='-belf' -+ ;; -+ -+ solaris*) -+ lt_cv_prog_cc_pic='-KPIC' -+ lt_cv_prog_cc_static='-Bstatic' -+ lt_cv_prog_cc_wl='-Wl,' -+ ;; -+ -+ sunos4*) -+ lt_cv_prog_cc_pic='-PIC' -+ lt_cv_prog_cc_static='-Bstatic' -+ lt_cv_prog_cc_wl='-Qoption ld ' -+ ;; -+ -+ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) -+ lt_cv_prog_cc_pic='-KPIC' -+ lt_cv_prog_cc_static='-Bstatic' -+ lt_cv_prog_cc_wl='-Wl,' -+ ;; -+ -+ uts4*) -+ lt_cv_prog_cc_pic='-pic' -+ lt_cv_prog_cc_static='-Bstatic' -+ ;; -+ -+ sysv4*MP*) -+ if test -d /usr/nec ;then -+ lt_cv_prog_cc_pic='-Kconform_pic' -+ lt_cv_prog_cc_static='-Bstatic' -+ fi -+ ;; -+ -+ *) -+ lt_cv_prog_cc_can_build_shared=no -+ ;; -+ esac -+ fi -+]) -+if test -z "$lt_cv_prog_cc_pic"; then -+ AC_MSG_RESULT([none]) -+else -+ AC_MSG_RESULT([$lt_cv_prog_cc_pic]) -+ -+ # Check to make sure the pic_flag actually works. -+ AC_MSG_CHECKING([if $compiler PIC flag $lt_cv_prog_cc_pic works]) -+ AC_CACHE_VAL(lt_cv_prog_cc_pic_works, [dnl -+ save_CFLAGS="$CFLAGS" -+ CFLAGS="$CFLAGS $lt_cv_prog_cc_pic -DPIC" -+ AC_TRY_COMPILE([], [], [dnl -+ case $host_os in -+ hpux9* | hpux10* | hpux11*) -+ # On HP-UX, both CC and GCC only warn that PIC is supported... then -+ # they create non-PIC objects. So, if there were any warnings, we -+ # assume that PIC is not supported. -+ if test -s conftest.err; then -+ lt_cv_prog_cc_pic_works=no -+ else -+ lt_cv_prog_cc_pic_works=yes -+ fi -+ ;; -+ *) -+ lt_cv_prog_cc_pic_works=yes -+ ;; -+ esac -+ ], [dnl -+ lt_cv_prog_cc_pic_works=no -+ ]) -+ CFLAGS="$save_CFLAGS" -+ ]) -+ -+ if test "X$lt_cv_prog_cc_pic_works" = Xno; then -+ lt_cv_prog_cc_pic= -+ lt_cv_prog_cc_can_build_shared=no -+ else -+ lt_cv_prog_cc_pic=" $lt_cv_prog_cc_pic" -+ fi -+ -+ AC_MSG_RESULT([$lt_cv_prog_cc_pic_works]) -+fi -+ -+# Check for any special shared library compilation flags. -+if test -n "$lt_cv_prog_cc_shlib"; then -+ AC_MSG_WARN([\`$CC' requires \`$lt_cv_prog_cc_shlib' to build shared libraries]) -+ if echo "$old_CC $old_CFLAGS " | egrep -e "[[ ]]$lt_cv_prog_cc_shlib[[ ]]" >/dev/null; then : -+ else -+ AC_MSG_WARN([add \`$lt_cv_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure]) -+ lt_cv_prog_cc_can_build_shared=no -+ fi -+fi -+ -+AC_MSG_CHECKING([if $compiler static flag $lt_cv_prog_cc_static works]) -+AC_CACHE_VAL([lt_cv_prog_cc_static_works], [dnl -+ lt_cv_prog_cc_static_works=no -+ save_LDFLAGS="$LDFLAGS" -+ LDFLAGS="$LDFLAGS $lt_cv_prog_cc_static" -+ AC_TRY_LINK([], [], [lt_cv_prog_cc_static_works=yes]) -+ LDFLAGS="$save_LDFLAGS" -+]) -+ -+# Belt *and* braces to stop my trousers falling down: -+test "X$lt_cv_prog_cc_static_works" = Xno && lt_cv_prog_cc_static= -+AC_MSG_RESULT([$lt_cv_prog_cc_static_works]) -+ -+pic_flag="$lt_cv_prog_cc_pic" -+special_shlib_compile_flags="$lt_cv_prog_cc_shlib" -+wl="$lt_cv_prog_cc_wl" -+link_static_flag="$lt_cv_prog_cc_static" -+no_builtin_flag="$lt_cv_prog_cc_no_builtin" -+can_build_shared="$lt_cv_prog_cc_can_build_shared" -+ -+ -+# Check to see if options -o and -c are simultaneously supported by compiler -+AC_MSG_CHECKING([if $compiler supports -c -o file.$ac_objext]) -+AC_CACHE_VAL([lt_cv_compiler_c_o], [ -+$rm -r conftest 2>/dev/null -+mkdir conftest -+cd conftest -+echo "int some_variable = 0;" > conftest.$ac_ext -+mkdir out -+# According to Tom Tromey, Ian Lance Taylor reported there are C compilers -+# that will create temporary files in the current directory regardless of -+# the output directory. Thus, making CWD read-only will cause this test -+# to fail, enabling locking or at least warning the user not to do parallel -+# builds. -+chmod -w . -+save_CFLAGS="$CFLAGS" -+CFLAGS="$CFLAGS -o out/conftest2.$ac_objext" -+compiler_c_o=no -+if { (eval echo configure:__oline__: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then -+ # The compiler can only warn and ignore the option if not recognized -+ # So say no if there are warnings -+ if test -s out/conftest.err; then -+ lt_cv_compiler_c_o=no -+ else -+ lt_cv_compiler_c_o=yes -+ fi -+else -+ # Append any errors to the config.log. -+ cat out/conftest.err 1>&AC_FD_CC -+ lt_cv_compiler_c_o=no -+fi -+CFLAGS="$save_CFLAGS" -+chmod u+w . -+$rm conftest* out/* -+rmdir out -+cd .. -+rmdir conftest -+$rm -r conftest 2>/dev/null -+]) -+compiler_c_o=$lt_cv_compiler_c_o -+AC_MSG_RESULT([$compiler_c_o]) -+ -+if test x"$compiler_c_o" = x"yes"; then -+ # Check to see if we can write to a .lo -+ AC_MSG_CHECKING([if $compiler supports -c -o file.lo]) -+ AC_CACHE_VAL([lt_cv_compiler_o_lo], [ -+ lt_cv_compiler_o_lo=no -+ save_CFLAGS="$CFLAGS" -+ CFLAGS="$CFLAGS -c -o conftest.lo" -+ save_objext="$ac_objext" -+ ac_objext=lo -+ AC_TRY_COMPILE([], [int some_variable = 0;], [dnl -+ # The compiler can only warn and ignore the option if not recognized -+ # So say no if there are warnings -+ if test -s conftest.err; then -+ lt_cv_compiler_o_lo=no -+ else -+ lt_cv_compiler_o_lo=yes -+ fi -+ ]) -+ ac_objext="$save_objext" -+ CFLAGS="$save_CFLAGS" -+ ]) -+ compiler_o_lo=$lt_cv_compiler_o_lo -+ AC_MSG_RESULT([$compiler_o_lo]) -+else -+ compiler_o_lo=no -+fi -+ -+# Check to see if we can do hard links to lock some files if needed -+hard_links="nottested" -+if test "$compiler_c_o" = no && test "$need_locks" != no; then -+ # do not overwrite the value of need_locks provided by the user -+ AC_MSG_CHECKING([if we can lock with hard links]) -+ hard_links=yes -+ $rm conftest* -+ ln conftest.a conftest.b 2>/dev/null && hard_links=no -+ touch conftest.a -+ ln conftest.a conftest.b 2>&5 || hard_links=no -+ ln conftest.a conftest.b 2>/dev/null && hard_links=no -+ AC_MSG_RESULT([$hard_links]) -+ if test "$hard_links" = no; then -+ AC_MSG_WARN([\`$CC' does not support \`-c -o', so \`make -j' may be unsafe]) -+ need_locks=warn -+ fi -+else -+ need_locks=no -+fi -+ -+if test "$GCC" = yes; then -+ # Check to see if options -fno-rtti -fno-exceptions are supported by compiler -+ AC_MSG_CHECKING([if $compiler supports -fno-rtti -fno-exceptions]) -+ echo "int some_variable = 0;" > conftest.$ac_ext -+ save_CFLAGS="$CFLAGS" -+ CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.$ac_ext" -+ compiler_rtti_exceptions=no -+ AC_TRY_COMPILE([], [int some_variable = 0;], [dnl -+ # The compiler can only warn and ignore the option if not recognized -+ # So say no if there are warnings -+ if test -s conftest.err; then -+ compiler_rtti_exceptions=no -+ else -+ compiler_rtti_exceptions=yes -+ fi -+ ]) -+ CFLAGS="$save_CFLAGS" -+ AC_MSG_RESULT([$compiler_rtti_exceptions]) -+ -+ if test "$compiler_rtti_exceptions" = "yes"; then -+ no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions' -+ else -+ no_builtin_flag=' -fno-builtin' -+ fi -+fi -+ -+# See if the linker supports building shared libraries. -+AC_MSG_CHECKING([whether the linker ($LD) supports shared libraries]) -+ -+allow_undefined_flag= -+no_undefined_flag= -+need_lib_prefix=unknown -+need_version=unknown -+# when you set need_version to no, make sure it does not cause -set_version -+# flags to be left without arguments -+archive_cmds= -+archive_expsym_cmds= -+old_archive_from_new_cmds= -+old_archive_from_expsyms_cmds= -+export_dynamic_flag_spec= -+whole_archive_flag_spec= -+thread_safe_flag_spec= -+hardcode_into_libs=no -+hardcode_libdir_flag_spec= -+hardcode_libdir_separator= -+hardcode_direct=no -+hardcode_minus_L=no -+hardcode_shlibpath_var=unsupported -+runpath_var= -+link_all_deplibs=unknown -+always_export_symbols=no -+export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols' -+# include_expsyms should be a list of space-separated symbols to be *always* -+# included in the symbol list -+include_expsyms= -+# exclude_expsyms can be an egrep regular expression of symbols to exclude -+# it will be wrapped by ` (' and `)$', so one must not match beginning or -+# end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', -+# as well as any symbol that contains `d'. -+exclude_expsyms="_GLOBAL_OFFSET_TABLE_" -+# Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out -+# platforms (ab)use it in PIC code, but their linkers get confused if -+# the symbol is explicitly referenced. Since portable code cannot -+# rely on this symbol name, it's probably fine to never include it in -+# preloaded symbol tables. -+extract_expsyms_cmds= -+ -+case $host_os in -+cygwin* | mingw* | pw32*) -+ # FIXME: the MSVC++ port hasn't been tested in a loooong time -+ # When not using gcc, we currently assume that we are using -+ # Microsoft Visual C++. -+ if test "$GCC" != yes; then -+ with_gnu_ld=no -+ fi -+ ;; -+openbsd*) -+ with_gnu_ld=no -+ ;; -+esac -+ -+ld_shlibs=yes -+if test "$with_gnu_ld" = yes; then -+ # If archive_cmds runs LD, not CC, wlarc should be empty -+ wlarc='${wl}' -+ -+ # See if GNU ld supports shared libraries. -+ case $host_os in -+ aix3* | aix4* | aix5*) -+ # On AIX, the GNU linker is very broken -+ # Note:Check GNU linker on AIX 5-IA64 when/if it becomes available. -+ ld_shlibs=no -+ cat <&2 -+ -+*** Warning: the GNU linker, at least up to release 2.9.1, is reported -+*** to be unable to reliably create shared libraries on AIX. -+*** Therefore, libtool is disabling shared libraries support. If you -+*** really care for shared libraries, you may want to modify your PATH -+*** so that a non-GNU linker is found, and then restart. -+ -+EOF -+ ;; -+ -+ amigaos*) -+ archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_minus_L=yes -+ -+ # Samuel A. Falvo II reports -+ # that the semantics of dynamic libraries on AmigaOS, at least up -+ # to version 4, is to share data among multiple programs linked -+ # with the same dynamic library. Since this doesn't match the -+ # behavior of shared libraries on other platforms, we can use -+ # them. -+ ld_shlibs=no -+ ;; -+ -+ beos*) -+ if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then -+ allow_undefined_flag=unsupported -+ # Joseph Beckenbach says some releases of gcc -+ # support --undefined. This deserves some investigation. FIXME -+ archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' -+ else -+ ld_shlibs=no -+ fi -+ ;; -+ -+ cygwin* | mingw* | pw32*) -+ # hardcode_libdir_flag_spec is actually meaningless, as there is -+ # no search path for DLLs. -+ hardcode_libdir_flag_spec='-L$libdir' -+ allow_undefined_flag=unsupported -+ always_export_symbols=yes -+ -+ extract_expsyms_cmds='test -f $output_objdir/impgen.c || \ -+ sed -e "/^# \/\* impgen\.c starts here \*\//,/^# \/\* impgen.c ends here \*\// { s/^# //;s/^# *$//; p; }" -e d < $''0 > $output_objdir/impgen.c~ -+ test -f $output_objdir/impgen.exe || (cd $output_objdir && \ -+ if test "x$HOST_CC" != "x" ; then $HOST_CC -o impgen impgen.c ; \ -+ else $CC -o impgen impgen.c ; fi)~ -+ $output_objdir/impgen $dir/$soroot > $output_objdir/$soname-def' -+ -+ old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib' -+ -+ # cygwin and mingw dlls have different entry points and sets of symbols -+ # to exclude. -+ # FIXME: what about values for MSVC? -+ dll_entry=__cygwin_dll_entry@12 -+ dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12~ -+ case $host_os in -+ mingw*) -+ # mingw values -+ dll_entry=_DllMainCRTStartup@12 -+ dll_exclude_symbols=DllMain@12,DllMainCRTStartup@12,DllEntryPoint@12~ -+ ;; -+ esac -+ -+ # mingw and cygwin differ, and it's simplest to just exclude the union -+ # of the two symbol sets. -+ dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12,DllMainCRTStartup@12,DllEntryPoint@12 -+ -+ # recent cygwin and mingw systems supply a stub DllMain which the user -+ # can override, but on older systems we have to supply one (in ltdll.c) -+ if test "x$lt_cv_need_dllmain" = "xyes"; then -+ ltdll_obj='$output_objdir/$soname-ltdll.'"$ac_objext " -+ ltdll_cmds='test -f $output_objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $''0 > $output_objdir/$soname-ltdll.c~ -+ test -f $output_objdir/$soname-ltdll.$ac_objext || (cd $output_objdir && $CC -c $soname-ltdll.c)~' -+ else -+ ltdll_obj= -+ ltdll_cmds= -+ fi -+ -+ # Extract the symbol export list from an `--export-all' def file, -+ # then regenerate the def file from the symbol export list, so that -+ # the compiled dll only exports the symbol export list. -+ # Be careful not to strip the DATA tag left be newer dlltools. -+ export_symbols_cmds="$ltdll_cmds"' -+ $DLLTOOL --export-all --exclude-symbols '$dll_exclude_symbols' --output-def $output_objdir/$soname-def '$ltdll_obj'$libobjs $convenience~ -+ sed -e "1,/EXPORTS/d" -e "s/ @ [[0-9]]*//" -e "s/ *;.*$//" < $output_objdir/$soname-def > $export_symbols' -+ -+ # If the export-symbols file already is a .def file (1st line -+ # is EXPORTS), use it as is. -+ # If DATA tags from a recent dlltool are present, honour them! -+ archive_expsym_cmds='if test "x`sed 1q $export_symbols`" = xEXPORTS; then -+ cp $export_symbols $output_objdir/$soname-def; -+ else -+ echo EXPORTS > $output_objdir/$soname-def; -+ _lt_hint=1; -+ cat $export_symbols | while read symbol; do -+ set dummy \$symbol; -+ case \[$]# in -+ 2) echo " \[$]2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;; -+ 4) echo " \[$]2 \[$]3 \[$]4 ; " >> $output_objdir/$soname-def; _lt_hint=`expr \$_lt_hint - 1`;; -+ *) echo " \[$]2 @ \$_lt_hint \[$]3 ; " >> $output_objdir/$soname-def;; -+ esac; -+ _lt_hint=`expr 1 + \$_lt_hint`; -+ done; -+ fi~ -+ '"$ltdll_cmds"' -+ $CC -Wl,--base-file,$output_objdir/$soname-base '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~ -+ $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp~ -+ $CC -Wl,--base-file,$output_objdir/$soname-base $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~ -+ $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp --output-lib $output_objdir/$libname.dll.a~ -+ $CC $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags' -+ ;; -+ -+ netbsd*) -+ if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then -+ archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' -+ wlarc= -+ else -+ archive_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' -+ archive_expsym_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' -+ fi -+ ;; -+ -+ solaris* | sysv5*) -+ if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then -+ ld_shlibs=no -+ cat <&2 -+ -+*** Warning: The releases 2.8.* of the GNU linker cannot reliably -+*** create shared libraries on Solaris systems. Therefore, libtool -+*** is disabling shared libraries support. We urge you to upgrade GNU -+*** binutils to release 2.9.1 or newer. Another option is to modify -+*** your PATH or compiler configuration so that the native linker is -+*** used, and then restart. -+ -+EOF -+ elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then -+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' -+ archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' -+ else -+ ld_shlibs=no -+ fi -+ ;; -+ -+ sunos4*) -+ archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' -+ wlarc= -+ hardcode_direct=yes -+ hardcode_shlibpath_var=no -+ ;; -+ -+ *) -+ if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then -+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' -+ archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' -+ else -+ ld_shlibs=no -+ fi -+ ;; -+ esac -+ -+ if test "$ld_shlibs" = yes; then -+ runpath_var=LD_RUN_PATH -+ hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir' -+ export_dynamic_flag_spec='${wl}--export-dynamic' -+ case $host_os in -+ cygwin* | mingw* | pw32*) -+ # dlltool doesn't understand --whole-archive et. al. -+ whole_archive_flag_spec= -+ ;; -+ *) -+ # ancient GNU ld didn't support --whole-archive et. al. -+ if $LD --help 2>&1 | egrep 'no-whole-archive' > /dev/null; then -+ whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' -+ else -+ whole_archive_flag_spec= -+ fi -+ ;; -+ esac -+ fi -+else -+ # PORTME fill in a description of your system's linker (not GNU ld) -+ case $host_os in -+ aix3*) -+ allow_undefined_flag=unsupported -+ always_export_symbols=yes -+ archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' -+ # Note: this linker hardcodes the directories in LIBPATH if there -+ # are no directories specified by -L. -+ hardcode_minus_L=yes -+ if test "$GCC" = yes && test -z "$link_static_flag"; then -+ # Neither direct hardcoding nor static linking is supported with a -+ # broken collect2. -+ hardcode_direct=unsupported -+ fi -+ ;; -+ -+ aix4* | aix5*) -+ if test "$host_cpu" = ia64; then -+ # On IA64, the linker does run time linking by default, so we don't -+ # have to do anything special. -+ aix_use_runtimelinking=no -+ exp_sym_flag='-Bexport' -+ no_entry_flag="" -+ else -+ aix_use_runtimelinking=no -+ -+ # Test if we are trying to use run time linking or normal -+ # AIX style linking. If -brtl is somewhere in LDFLAGS, we -+ # need to do runtime linking. -+ case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*) -+ for ld_flag in $LDFLAGS; do -+ case $ld_flag in -+ *-brtl*) -+ aix_use_runtimelinking=yes -+ break -+ ;; -+ esac -+ done -+ esac -+ -+ exp_sym_flag='-bexport' -+ no_entry_flag='-bnoentry' -+ fi -+ -+ # When large executables or shared objects are built, AIX ld can -+ # have problems creating the table of contents. If linking a library -+ # or program results in "error TOC overflow" add -mminimal-toc to -+ # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not -+ # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. -+ -+ hardcode_direct=yes -+ archive_cmds='' -+ hardcode_libdir_separator=':' -+ if test "$GCC" = yes; then -+ case $host_os in aix4.[[012]]|aix4.[[012]].*) -+ collect2name=`${CC} -print-prog-name=collect2` -+ if test -f "$collect2name" && \ -+ strings "$collect2name" | grep resolve_lib_name >/dev/null -+ then -+ # We have reworked collect2 -+ hardcode_direct=yes -+ else -+ # We have old collect2 -+ hardcode_direct=unsupported -+ # It fails to find uninstalled libraries when the uninstalled -+ # path is not listed in the libpath. Setting hardcode_minus_L -+ # to unsupported forces relinking -+ hardcode_minus_L=yes -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_libdir_separator= -+ fi -+ esac -+ -+ shared_flag='-shared' -+ else -+ # not using gcc -+ if test "$host_cpu" = ia64; then -+ shared_flag='${wl}-G' -+ else -+ if test "$aix_use_runtimelinking" = yes; then -+ shared_flag='${wl}-G' -+ else -+ shared_flag='${wl}-bM:SRE' -+ fi -+ fi -+ fi -+ -+ # It seems that -bexpall can do strange things, so it is better to -+ # generate a list of symbols to export. -+ always_export_symbols=yes -+ if test "$aix_use_runtimelinking" = yes; then -+ # Warning - without using the other runtime loading flags (-brtl), -+ # -berok will link without error, but may produce a broken library. -+ allow_undefined_flag='-berok' -+ hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib' -+ archive_expsym_cmds="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag" -+ else -+ if test "$host_cpu" = ia64; then -+ hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib' -+ allow_undefined_flag="-z nodefs" -+ archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname ${wl}-h$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" -+ else -+ hardcode_libdir_flag_spec='${wl}-bnolibpath ${wl}-blibpath:$libdir:/usr/lib:/lib' -+ # Warning - without using the other run time loading flags, -+ # -berok will link without error, but may produce a broken library. -+ allow_undefined_flag='${wl}-berok' -+ # This is a bit strange, but is similar to how AIX traditionally builds -+ # it's shared libraries. -+ archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"' ~$AR -crlo $output_objdir/$libname$release.a $output_objdir/$soname' -+ fi -+ fi -+ ;; -+ -+ amigaos*) -+ archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_minus_L=yes -+ # see comment about different semantics on the GNU ld section -+ ld_shlibs=no -+ ;; -+ -+ cygwin* | mingw* | pw32*) -+ # When not using gcc, we currently assume that we are using -+ # Microsoft Visual C++. -+ # hardcode_libdir_flag_spec is actually meaningless, as there is -+ # no search path for DLLs. -+ hardcode_libdir_flag_spec=' ' -+ allow_undefined_flag=unsupported -+ # Tell ltmain to make .lib files, not .a files. -+ libext=lib -+ # FIXME: Setting linknames here is a bad hack. -+ archive_cmds='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | sed -e '\''s/ -lc$//'\''` -link -dll~linknames=' -+ # The linker will automatically build a .lib file if we build a DLL. -+ old_archive_from_new_cmds='true' -+ # FIXME: Should let the user specify the lib program. -+ old_archive_cmds='lib /OUT:$oldlib$oldobjs$old_deplibs' -+ fix_srcfile_path='`cygpath -w "$srcfile"`' -+ ;; -+ -+ darwin* | rhapsody*) -+ case "$host_os" in -+ rhapsody* | darwin1.[[012]]) -+ allow_undefined_flag='-undefined suppress' -+ ;; -+ *) # Darwin 1.3 on -+ allow_undefined_flag='-flat_namespace -undefined suppress' -+ ;; -+ esac -+ # FIXME: Relying on posixy $() will cause problems for -+ # cross-compilation, but unfortunately the echo tests do not -+ # yet detect zsh echo's removal of \ escapes. Also zsh mangles -+ # `"' quotes if we put them in here... so don't! -+ archive_cmds='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs && $CC $(test .$module = .yes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib ${lib}-master.o $deplibs$linker_flags $(test .$module != .yes && echo -install_name $rpath/$soname $verstring)' -+ # We need to add '_' to the symbols in $export_symbols first -+ #archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols' -+ hardcode_direct=yes -+ hardcode_shlibpath_var=no -+ whole_archive_flag_spec='-all_load $convenience' -+ ;; -+ -+ freebsd1*) -+ ld_shlibs=no -+ ;; -+ -+ # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor -+ # support. Future versions do this automatically, but an explicit c++rt0.o -+ # does not break anything, and helps significantly (at the cost of a little -+ # extra space). -+ freebsd2.2*) -+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' -+ hardcode_libdir_flag_spec='-R$libdir' -+ hardcode_direct=yes -+ hardcode_shlibpath_var=no -+ ;; -+ -+ # Unfortunately, older versions of FreeBSD 2 do not have this feature. -+ freebsd2*) -+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_direct=yes -+ hardcode_minus_L=yes -+ hardcode_shlibpath_var=no -+ ;; -+ -+ # FreeBSD 3 and greater uses gcc -shared to do shared libraries. -+ freebsd*) -+ archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' -+ hardcode_libdir_flag_spec='-R$libdir' -+ hardcode_direct=yes -+ hardcode_shlibpath_var=no -+ ;; -+ -+ hpux9* | hpux10* | hpux11*) -+ case $host_os in -+ hpux9*) archive_cmds='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' ;; -+ *) archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' ;; -+ esac -+ hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' -+ hardcode_libdir_separator=: -+ hardcode_direct=yes -+ hardcode_minus_L=yes # Not in the search PATH, but as the default -+ # location of the library. -+ export_dynamic_flag_spec='${wl}-E' -+ ;; -+ -+ irix5* | irix6* | nonstopux*) -+ if test "$GCC" = yes; then -+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' -+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' -+ else -+ archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' -+ hardcode_libdir_flag_spec='-rpath $libdir' -+ fi -+ hardcode_libdir_separator=: -+ link_all_deplibs=yes -+ ;; -+ -+ netbsd*) -+ if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then -+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out -+ else -+ archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF -+ fi -+ hardcode_libdir_flag_spec='-R$libdir' -+ hardcode_direct=yes -+ hardcode_shlibpath_var=no -+ ;; -+ -+ newsos6) -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_direct=yes -+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' -+ hardcode_libdir_separator=: -+ hardcode_shlibpath_var=no -+ ;; -+ -+ openbsd*) -+ hardcode_direct=yes -+ hardcode_shlibpath_var=no -+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then -+ archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' -+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir' -+ export_dynamic_flag_spec='${wl}-E' -+ else -+ case "$host_os" in -+ openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*) -+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_libdir_flag_spec='-R$libdir' -+ ;; -+ *) -+ archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' -+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir' -+ ;; -+ esac -+ fi -+ ;; -+ -+ os2*) -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_minus_L=yes -+ allow_undefined_flag=unsupported -+ archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' -+ old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' -+ ;; -+ -+ osf3*) -+ if test "$GCC" = yes; then -+ allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' -+ archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' -+ else -+ allow_undefined_flag=' -expect_unresolved \*' -+ archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' -+ fi -+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' -+ hardcode_libdir_separator=: -+ ;; -+ -+ osf4* | osf5*) # as osf3* with the addition of -msym flag -+ if test "$GCC" = yes; then -+ allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' -+ archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' -+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' -+ else -+ allow_undefined_flag=' -expect_unresolved \*' -+ archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' -+ archive_expsym_cmds='for i in `cat $export_symbols`; do printf "-exported_symbol " >> $lib.exp; echo "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~ -+ $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp' -+ -+ #Both c and cxx compiler support -rpath directly -+ hardcode_libdir_flag_spec='-rpath $libdir' -+ fi -+ hardcode_libdir_separator=: -+ ;; -+ -+ sco3.2v5*) -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_shlibpath_var=no -+ runpath_var=LD_RUN_PATH -+ hardcode_runpath_var=yes -+ export_dynamic_flag_spec='${wl}-Bexport' -+ ;; -+ -+ solaris*) -+ # gcc --version < 3.0 without binutils cannot create self contained -+ # shared libraries reliably, requiring libgcc.a to resolve some of -+ # the object symbols generated in some cases. Libraries that use -+ # assert need libgcc.a to resolve __eprintf, for example. Linking -+ # a copy of libgcc.a into every shared library to guarantee resolving -+ # such symbols causes other problems: According to Tim Van Holder -+ # , C++ libraries end up with a separate -+ # (to the application) exception stack for one thing. -+ no_undefined_flag=' -z defs' -+ if test "$GCC" = yes; then -+ case `$CC --version 2>/dev/null` in -+ [[12]].*) -+ cat <&2 -+ -+*** Warning: Releases of GCC earlier than version 3.0 cannot reliably -+*** create self contained shared libraries on Solaris systems, without -+*** introducing a dependency on libgcc.a. Therefore, libtool is disabling -+*** -no-undefined support, which will at least allow you to build shared -+*** libraries. However, you may find that when you link such libraries -+*** into an application without using GCC, you have to manually add -+*** \`gcc --print-libgcc-file-name\` to the link command. We urge you to -+*** upgrade to a newer version of GCC. Another option is to rebuild your -+*** current GCC to use the GNU linker from GNU binutils 2.9.1 or newer. -+ -+EOF -+ no_undefined_flag= -+ ;; -+ esac -+ fi -+ # $CC -shared without GNU ld will not create a library from C++ -+ # object files and a static libstdc++, better avoid it by now -+ archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ -+ $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' -+ hardcode_libdir_flag_spec='-R$libdir' -+ hardcode_shlibpath_var=no -+ case $host_os in -+ solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; -+ *) # Supported since Solaris 2.6 (maybe 2.5.1?) -+ whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;; -+ esac -+ link_all_deplibs=yes -+ ;; -+ -+ sunos4*) -+ if test "x$host_vendor" = xsequent; then -+ # Use $CC to link under sequent, because it throws in some extra .o -+ # files that make .init and .fini sections work. -+ archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' -+ else -+ archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' -+ fi -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_direct=yes -+ hardcode_minus_L=yes -+ hardcode_shlibpath_var=no -+ ;; -+ -+ sysv4) -+ case $host_vendor in -+ sni) -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_direct=yes # is this really true??? -+ ;; -+ siemens) -+ ## LD is ld it makes a PLAMLIB -+ ## CC just makes a GrossModule. -+ archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' -+ reload_cmds='$CC -r -o $output$reload_objs' -+ hardcode_direct=no -+ ;; -+ motorola) -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_direct=no #Motorola manual says yes, but my tests say they lie -+ ;; -+ esac -+ runpath_var='LD_RUN_PATH' -+ hardcode_shlibpath_var=no -+ ;; -+ -+ sysv4.3*) -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_shlibpath_var=no -+ export_dynamic_flag_spec='-Bexport' -+ ;; -+ -+ sysv5*) -+ no_undefined_flag=' -z text' -+ # $CC -shared without GNU ld will not create a library from C++ -+ # object files and a static libstdc++, better avoid it by now -+ archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ -+ $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' -+ hardcode_libdir_flag_spec= -+ hardcode_shlibpath_var=no -+ runpath_var='LD_RUN_PATH' -+ ;; -+ -+ uts4*) -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_shlibpath_var=no -+ ;; -+ -+ dgux*) -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_shlibpath_var=no -+ ;; -+ -+ sysv4*MP*) -+ if test -d /usr/nec; then -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_shlibpath_var=no -+ runpath_var=LD_RUN_PATH -+ hardcode_runpath_var=yes -+ ld_shlibs=yes -+ fi -+ ;; -+ -+ sysv4.2uw2*) -+ archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_direct=yes -+ hardcode_minus_L=no -+ hardcode_shlibpath_var=no -+ hardcode_runpath_var=yes -+ runpath_var=LD_RUN_PATH -+ ;; -+ -+ sysv5uw7* | unixware7*) -+ no_undefined_flag='${wl}-z ${wl}text' -+ if test "$GCC" = yes; then -+ archive_cmds='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' -+ else -+ archive_cmds='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' -+ fi -+ runpath_var='LD_RUN_PATH' -+ hardcode_shlibpath_var=no -+ ;; -+ -+ *) -+ ld_shlibs=no -+ ;; -+ esac -+fi -+AC_MSG_RESULT([$ld_shlibs]) -+test "$ld_shlibs" = no && can_build_shared=no -+ -+# Check hardcoding attributes. -+AC_MSG_CHECKING([how to hardcode library paths into programs]) -+hardcode_action= -+if test -n "$hardcode_libdir_flag_spec" || \ -+ test -n "$runpath_var"; then -+ -+ # We can hardcode non-existant directories. -+ if test "$hardcode_direct" != no && -+ # If the only mechanism to avoid hardcoding is shlibpath_var, we -+ # have to relink, otherwise we might link with an installed library -+ # when we should be linking with a yet-to-be-installed one -+ ## test "$hardcode_shlibpath_var" != no && -+ test "$hardcode_minus_L" != no; then -+ # Linking always hardcodes the temporary library directory. -+ hardcode_action=relink -+ else -+ # We can link without hardcoding, and we can hardcode nonexisting dirs. -+ hardcode_action=immediate -+ fi -+else -+ # We cannot hardcode anything, or else we can only hardcode existing -+ # directories. -+ hardcode_action=unsupported -+fi -+AC_MSG_RESULT([$hardcode_action]) -+ -+striplib= -+old_striplib= -+AC_MSG_CHECKING([whether stripping libraries is possible]) -+if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then -+ test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" -+ test -z "$striplib" && striplib="$STRIP --strip-unneeded" -+ AC_MSG_RESULT([yes]) -+else -+ AC_MSG_RESULT([no]) -+fi -+ -+reload_cmds='$LD$reload_flag -o $output$reload_objs' -+test -z "$deplibs_check_method" && deplibs_check_method=unknown -+ -+# PORTME Fill in your ld.so characteristics -+AC_MSG_CHECKING([dynamic linker characteristics]) -+library_names_spec= -+libname_spec='lib$name' -+soname_spec= -+postinstall_cmds= -+postuninstall_cmds= -+finish_cmds= -+finish_eval= -+shlibpath_var= -+shlibpath_overrides_runpath=unknown -+version_type=none -+dynamic_linker="$host_os ld.so" -+sys_lib_dlsearch_path_spec="/lib /usr/lib" -+sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" -+ -+case $host_os in -+aix3*) -+ version_type=linux -+ library_names_spec='${libname}${release}.so$versuffix $libname.a' -+ shlibpath_var=LIBPATH -+ -+ # AIX has no versioning support, so we append a major version to the name. -+ soname_spec='${libname}${release}.so$major' -+ ;; -+ -+aix4* | aix5*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ hardcode_into_libs=yes -+ if test "$host_cpu" = ia64; then -+ # AIX 5 supports IA64 -+ library_names_spec='${libname}${release}.so$major ${libname}${release}.so$versuffix $libname.so' -+ shlibpath_var=LD_LIBRARY_PATH -+ else -+ # With GCC up to 2.95.x, collect2 would create an import file -+ # for dependence libraries. The import file would start with -+ # the line `#! .'. This would cause the generated library to -+ # depend on `.', always an invalid library. This was fixed in -+ # development snapshots of GCC prior to 3.0. -+ case $host_os in -+ aix4 | aix4.[[01]] | aix4.[[01]].*) -+ if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' -+ echo ' yes ' -+ echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then -+ : -+ else -+ can_build_shared=no -+ fi -+ ;; -+ esac -+ # AIX (on Power*) has no versioning support, so currently we can -+ # not hardcode correct soname into executable. Probably we can -+ # add versioning support to collect2, so additional links can -+ # be useful in future. -+ if test "$aix_use_runtimelinking" = yes; then -+ # If using run time linking (on AIX 4.2 or later) use lib.so -+ # instead of lib.a to let people know that these are not -+ # typical AIX shared libraries. -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ else -+ # We preserve .a as extension for shared libraries through AIX4.2 -+ # and later when we are not doing run time linking. -+ library_names_spec='${libname}${release}.a $libname.a' -+ soname_spec='${libname}${release}.so$major' -+ fi -+ shlibpath_var=LIBPATH -+ fi -+ hardcode_into_libs=yes -+ ;; -+ -+amigaos*) -+ library_names_spec='$libname.ixlibrary $libname.a' -+ # Create ${libname}_ixlibrary.a entries in /sys/libs. -+ finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done' -+ ;; -+ -+beos*) -+ library_names_spec='${libname}.so' -+ dynamic_linker="$host_os ld.so" -+ shlibpath_var=LIBRARY_PATH -+ ;; -+ -+bsdi4*) -+ version_type=linux -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" -+ sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" -+ export_dynamic_flag_spec=-rdynamic -+ # the default ld.so.conf also contains /usr/contrib/lib and -+ # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow -+ # libtool to hard-code these into programs -+ ;; -+ -+cygwin* | mingw* | pw32*) -+ version_type=windows -+ need_version=no -+ need_lib_prefix=no -+ case $GCC,$host_os in -+ yes,cygwin*) -+ library_names_spec='$libname.dll.a' -+ soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll' -+ postinstall_cmds='dlpath=`bash 2>&1 -c '\''. $dir/${file}i;echo \$dlname'\''`~ -+ dldir=$destdir/`dirname \$dlpath`~ -+ test -d \$dldir || mkdir -p \$dldir~ -+ $install_prog .libs/$dlname \$dldir/$dlname' -+ postuninstall_cmds='dldll=`bash 2>&1 -c '\''. $file; echo \$dlname'\''`~ -+ dlpath=$dir/\$dldll~ -+ $rm \$dlpath' -+ ;; -+ yes,mingw*) -+ library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll' -+ sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g" -e "s,=/,/,g"` -+ ;; -+ yes,pw32*) -+ library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll' -+ ;; -+ *) -+ library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll $libname.lib' -+ ;; -+ esac -+ dynamic_linker='Win32 ld.exe' -+ # FIXME: first we should search . and the directory the executable is in -+ shlibpath_var=PATH -+ ;; -+ -+darwin* | rhapsody*) -+ dynamic_linker="$host_os dyld" -+ version_type=darwin -+ need_lib_prefix=no -+ need_version=no -+ # FIXME: Relying on posixy $() will cause problems for -+ # cross-compilation, but unfortunately the echo tests do not -+ # yet detect zsh echo's removal of \ escapes. -+ library_names_spec='${libname}${release}${versuffix}.$(test .$module = .yes && echo so || echo dylib) ${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib) ${libname}.$(test .$module = .yes && echo so || echo dylib)' -+ soname_spec='${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib)' -+ shlibpath_overrides_runpath=yes -+ shlibpath_var=DYLD_LIBRARY_PATH -+ ;; -+ -+freebsd1*) -+ dynamic_linker=no -+ ;; -+ -+kfreebsd*-gnu*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=no -+ hardcode_into_libs=yes -+ dynamic_linker='GNU/FreeBSD ld.so' -+ ;; -+ -+freebsd*) -+ objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` -+ version_type=freebsd-$objformat -+ case $version_type in -+ freebsd-elf*) -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so' -+ need_version=no -+ need_lib_prefix=no -+ ;; -+ freebsd-*) -+ library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix' -+ need_version=yes -+ ;; -+ esac -+ shlibpath_var=LD_LIBRARY_PATH -+ case $host_os in -+ freebsd2*) -+ shlibpath_overrides_runpath=yes -+ ;; -+ *) -+ shlibpath_overrides_runpath=no -+ hardcode_into_libs=yes -+ ;; -+ esac -+ ;; -+ -+gnu*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so${major} ${libname}.so' -+ soname_spec='${libname}${release}.so$major' -+ shlibpath_var=LD_LIBRARY_PATH -+ hardcode_into_libs=yes -+ ;; -+ -+hpux9* | hpux10* | hpux11*) -+ # Give a soname corresponding to the major version so that dld.sl refuses to -+ # link against other versions. -+ dynamic_linker="$host_os dld.sl" -+ version_type=sunos -+ need_lib_prefix=no -+ need_version=no -+ shlibpath_var=SHLIB_PATH -+ shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH -+ library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl' -+ soname_spec='${libname}${release}.sl$major' -+ # HP-UX runs *really* slowly unless shared libraries are mode 555. -+ postinstall_cmds='chmod 555 $lib' -+ ;; -+ -+irix5* | irix6* | nonstopux*) -+ case $host_os in -+ nonstopux*) version_type=nonstopux ;; -+ *) version_type=irix ;; -+ esac -+ need_lib_prefix=no -+ need_version=no -+ soname_spec='${libname}${release}.so$major' -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so' -+ case $host_os in -+ irix5* | nonstopux*) -+ libsuff= shlibsuff= -+ ;; -+ *) -+ case $LD in # libtool.m4 will add one of these switches to LD -+ *-32|*"-32 ") libsuff= shlibsuff= libmagic=32-bit;; -+ *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 libmagic=N32;; -+ *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;; -+ *) libsuff= shlibsuff= libmagic=never-match;; -+ esac -+ ;; -+ esac -+ shlibpath_var=LD_LIBRARY${shlibsuff}_PATH -+ shlibpath_overrides_runpath=no -+ sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" -+ sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" -+ ;; -+ -+# No shared lib support for Linux oldld, aout, or coff. -+linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*) -+ dynamic_linker=no -+ ;; -+ -+# This must be Linux ELF. -+linux-gnu*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=no -+ # This implies no fast_install, which is unacceptable. -+ # Some rework will be needed to allow for fast_install -+ # before this can be enabled. -+ hardcode_into_libs=yes -+ -+ # We used to test for /lib/ld.so.1 and disable shared libraries on -+ # powerpc, because MkLinux only supported shared libraries with the -+ # GNU dynamic linker. Since this was broken with cross compilers, -+ # most powerpc-linux boxes support dynamic linking these days and -+ # people can always --disable-shared, the test was removed, and we -+ # assume the GNU/Linux dynamic linker is in use. -+ dynamic_linker='GNU/Linux ld.so' -+ ;; -+ -+netbsd*) -+ version_type=sunos -+ need_lib_prefix=no -+ need_version=no -+ if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then -+ library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' -+ dynamic_linker='NetBSD (a.out) ld.so' -+ else -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so' -+ soname_spec='${libname}${release}.so$major' -+ dynamic_linker='NetBSD ld.elf_so' -+ fi -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=yes -+ hardcode_into_libs=yes -+ ;; -+ -+newsos6) -+ version_type=linux -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=yes -+ ;; -+ -+openbsd*) -+ version_type=sunos -+ need_lib_prefix=no -+ need_version=no -+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then -+ case "$host_os" in -+ openbsd2.[[89]] | openbsd2.[[89]].*) -+ shlibpath_overrides_runpath=no -+ ;; -+ *) -+ shlibpath_overrides_runpath=yes -+ ;; -+ esac -+ else -+ shlibpath_overrides_runpath=yes -+ fi -+ library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ ;; -+ -+os2*) -+ libname_spec='$name' -+ need_lib_prefix=no -+ library_names_spec='$libname.dll $libname.a' -+ dynamic_linker='OS/2 ld.exe' -+ shlibpath_var=LIBPATH -+ ;; -+ -+osf3* | osf4* | osf5*) -+ version_type=osf -+ need_version=no -+ need_lib_prefix=no -+ soname_spec='${libname}${release}.so$major' -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ shlibpath_var=LD_LIBRARY_PATH -+ sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" -+ sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" -+ hardcode_into_libs=yes -+ ;; -+ -+sco3.2v5*) -+ version_type=osf -+ soname_spec='${libname}${release}.so$major' -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ shlibpath_var=LD_LIBRARY_PATH -+ ;; -+ -+solaris*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=yes -+ hardcode_into_libs=yes -+ # ldd complains unless libraries are executable -+ postinstall_cmds='chmod +x $lib' -+ ;; -+ -+sunos4*) -+ version_type=sunos -+ library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' -+ finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=yes -+ if test "$with_gnu_ld" = yes; then -+ need_lib_prefix=no -+ fi -+ need_version=yes -+ ;; -+ -+sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) -+ version_type=linux -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ shlibpath_var=LD_LIBRARY_PATH -+ case $host_vendor in -+ sni) -+ shlibpath_overrides_runpath=no -+ need_lib_prefix=no -+ export_dynamic_flag_spec='${wl}-Blargedynsym' -+ runpath_var=LD_RUN_PATH -+ ;; -+ siemens) -+ need_lib_prefix=no -+ ;; -+ motorola) -+ need_lib_prefix=no -+ need_version=no -+ shlibpath_overrides_runpath=no -+ sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' -+ ;; -+ esac -+ ;; -+ -+uts4*) -+ version_type=linux -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ shlibpath_var=LD_LIBRARY_PATH -+ ;; -+ -+dgux*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ shlibpath_var=LD_LIBRARY_PATH -+ ;; -+ -+sysv4*MP*) -+ if test -d /usr/nec ;then -+ version_type=linux -+ library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so' -+ soname_spec='$libname.so.$major' -+ shlibpath_var=LD_LIBRARY_PATH -+ fi -+ ;; -+ -+*) -+ dynamic_linker=no -+ ;; -+esac -+AC_MSG_RESULT([$dynamic_linker]) -+test "$dynamic_linker" = no && can_build_shared=no -+ -+# Report the final consequences. -+AC_MSG_CHECKING([if libtool supports shared libraries]) -+AC_MSG_RESULT([$can_build_shared]) -+ -+AC_MSG_CHECKING([whether to build shared libraries]) -+test "$can_build_shared" = "no" && enable_shared=no -+ -+# On AIX, shared libraries and static libraries use the same namespace, and -+# are all built from PIC. -+case "$host_os" in -+aix3*) -+ test "$enable_shared" = yes && enable_static=no -+ if test -n "$RANLIB"; then -+ archive_cmds="$archive_cmds~\$RANLIB \$lib" -+ postinstall_cmds='$RANLIB $lib' -+ fi -+ ;; -+ -+aix4*) -+ if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then -+ test "$enable_shared" = yes && enable_static=no -+ fi -+ ;; -+esac -+AC_MSG_RESULT([$enable_shared]) -+ -+AC_MSG_CHECKING([whether to build static libraries]) -+# Make sure either enable_shared or enable_static is yes. -+test "$enable_shared" = yes || enable_static=yes -+AC_MSG_RESULT([$enable_static]) -+ -+if test "$hardcode_action" = relink; then -+ # Fast installation is not supported -+ enable_fast_install=no -+elif test "$shlibpath_overrides_runpath" = yes || -+ test "$enable_shared" = no; then -+ # Fast installation is not necessary -+ enable_fast_install=needless -+fi -+ -+variables_saved_for_relink="PATH $shlibpath_var $runpath_var" -+if test "$GCC" = yes; then -+ variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" -+fi -+ -+AC_LIBTOOL_DLOPEN_SELF -+ -+if test "$enable_shared" = yes && test "$GCC" = yes; then -+ case $archive_cmds in -+ *'~'*) -+ # FIXME: we may have to deal with multi-command sequences. -+ ;; -+ '$CC '*) -+ # Test whether the compiler implicitly links with -lc since on some -+ # systems, -lgcc has to come before -lc. If gcc already passes -lc -+ # to ld, don't add -lc before -lgcc. -+ AC_MSG_CHECKING([whether -lc should be explicitly linked in]) -+ AC_CACHE_VAL([lt_cv_archive_cmds_need_lc], -+ [$rm conftest* -+ echo 'static int dummy;' > conftest.$ac_ext -+ -+ if AC_TRY_EVAL(ac_compile); then -+ soname=conftest -+ lib=conftest -+ libobjs=conftest.$ac_objext -+ deplibs= -+ wl=$lt_cv_prog_cc_wl -+ compiler_flags=-v -+ linker_flags=-v -+ verstring= -+ output_objdir=. -+ libname=conftest -+ save_allow_undefined_flag=$allow_undefined_flag -+ allow_undefined_flag= -+ if AC_TRY_EVAL(archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1) -+ then -+ lt_cv_archive_cmds_need_lc=no -+ else -+ lt_cv_archive_cmds_need_lc=yes -+ fi -+ allow_undefined_flag=$save_allow_undefined_flag -+ else -+ cat conftest.err 1>&5 -+ fi]) -+ AC_MSG_RESULT([$lt_cv_archive_cmds_need_lc]) -+ ;; -+ esac -+fi -+need_lc=${lt_cv_archive_cmds_need_lc-yes} -+ -+# The second clause should only fire when bootstrapping the -+# libtool distribution, otherwise you forgot to ship ltmain.sh -+# with your package, and you will get complaints that there are -+# no rules to generate ltmain.sh. -+if test -f "$ltmain"; then -+ : -+else -+ # If there is no Makefile yet, we rely on a make rule to execute -+ # `config.status --recheck' to rerun these tests and create the -+ # libtool script then. -+ test -f Makefile && make "$ltmain" -+fi -+ -+if test -f "$ltmain"; then -+ trap "$rm \"${ofile}T\"; exit 1" 1 2 15 -+ $rm -f "${ofile}T" -+ -+ echo creating $ofile -+ -+ # Now quote all the things that may contain metacharacters while being -+ # careful not to overquote the AC_SUBSTed values. We take copies of the -+ # variables and quote the copies for generation of the libtool script. -+ for var in echo old_CC old_CFLAGS SED \ -+ AR AR_FLAGS CC LD LN_S NM SHELL \ -+ reload_flag reload_cmds wl \ -+ pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \ -+ thread_safe_flag_spec whole_archive_flag_spec libname_spec \ -+ library_names_spec soname_spec \ -+ RANLIB old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \ -+ old_postuninstall_cmds archive_cmds archive_expsym_cmds postinstall_cmds \ -+ postuninstall_cmds extract_expsyms_cmds old_archive_from_expsyms_cmds \ -+ old_striplib striplib file_magic_cmd export_symbols_cmds \ -+ deplibs_check_method allow_undefined_flag no_undefined_flag \ -+ finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \ -+ global_symbol_to_c_name_address \ -+ hardcode_libdir_flag_spec hardcode_libdir_separator \ -+ sys_lib_search_path_spec sys_lib_dlsearch_path_spec \ -+ compiler_c_o compiler_o_lo need_locks exclude_expsyms include_expsyms; do -+ -+ case $var in -+ reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \ -+ old_postinstall_cmds | old_postuninstall_cmds | \ -+ export_symbols_cmds | archive_cmds | archive_expsym_cmds | \ -+ extract_expsyms_cmds | old_archive_from_expsyms_cmds | \ -+ postinstall_cmds | postuninstall_cmds | \ -+ finish_cmds | sys_lib_search_path_spec | sys_lib_dlsearch_path_spec) -+ # Double-quote double-evaled strings. -+ eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" -+ ;; -+ *) -+ eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\"" -+ ;; -+ esac -+ done -+ -+ cat <<__EOF__ > "${ofile}T" -+#! $SHELL -+ -+# `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. -+# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP) -+# NOTE: Changes made to this file will be lost: look at ltmain.sh. -+# -+# Copyright (C) 1996-2000 Free Software Foundation, Inc. -+# Originally by Gordon Matzigkeit , 1996 -+# -+# This program is free software; you can redistribute it and/or modify -+# it under the terms of the GNU General Public License as published by -+# the Free Software Foundation; either version 2 of the License, or -+# (at your option) any later version. -+# -+# This program is distributed in the hope that it will be useful, but -+# WITHOUT ANY WARRANTY; without even the implied warranty of -+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+# General Public License for more details. -+# -+# You should have received a copy of the GNU General Public License -+# along with this program; if not, write to the Free Software -+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -+# -+# As a special exception to the GNU General Public License, if you -+# distribute this file as part of a program that contains a -+# configuration script generated by Autoconf, you may include it under -+# the same distribution terms that you use for the rest of that program. -+ -+# A sed that does not truncate output. -+SED=$lt_SED -+ -+# Sed that helps us avoid accidentally triggering echo(1) options like -n. -+Xsed="${SED} -e s/^X//" -+ -+# The HP-UX ksh and POSIX shell print the target directory to stdout -+# if CDPATH is set. -+if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi -+ -+# ### BEGIN LIBTOOL CONFIG -+ -+# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: -+ -+# Shell to use when invoking shell scripts. -+SHELL=$lt_SHELL -+ -+# Whether or not to build shared libraries. -+build_libtool_libs=$enable_shared -+ -+# Whether or not to build static libraries. -+build_old_libs=$enable_static -+ -+# Whether or not to add -lc for building shared libraries. -+build_libtool_need_lc=$need_lc -+ -+# Whether or not to optimize for fast installation. -+fast_install=$enable_fast_install -+ -+# The host system. -+host_alias=$host_alias -+host=$host -+ -+# An echo program that does not interpret backslashes. -+echo=$lt_echo -+ -+# The archiver. -+AR=$lt_AR -+AR_FLAGS=$lt_AR_FLAGS -+ -+# The default C compiler. -+CC=$lt_CC -+ -+# Is the compiler the GNU C compiler? -+with_gcc=$GCC -+ -+# The linker used to build libraries. -+LD=$lt_LD -+ -+# Whether we need hard or soft links. -+LN_S=$lt_LN_S -+ -+# A BSD-compatible nm program. -+NM=$lt_NM -+ -+# A symbol stripping program -+STRIP="$STRIP" -+ -+# Used to examine libraries when file_magic_cmd begins "file" -+MAGIC_CMD=$MAGIC_CMD -+ -+# Used on cygwin: DLL creation program. -+DLLTOOL="$DLLTOOL" -+ -+# Used on cygwin: object dumper. -+OBJDUMP="$OBJDUMP" -+ -+# Used on cygwin: assembler. -+AS="$AS" -+ -+# The name of the directory that contains temporary libtool files. -+objdir=$objdir -+ -+# How to create reloadable object files. -+reload_flag=$lt_reload_flag -+reload_cmds=$lt_reload_cmds -+ -+# How to pass a linker flag through the compiler. -+wl=$lt_wl -+ -+# Object file suffix (normally "o"). -+objext="$ac_objext" -+ -+# Old archive suffix (normally "a"). -+libext="$libext" -+ -+# Executable file suffix (normally ""). -+exeext="$exeext" -+ -+# Additional compiler flags for building library objects. -+pic_flag=$lt_pic_flag -+pic_mode=$pic_mode -+ -+# Does compiler simultaneously support -c and -o options? -+compiler_c_o=$lt_compiler_c_o -+ -+# Can we write directly to a .lo ? -+compiler_o_lo=$lt_compiler_o_lo -+ -+# Must we lock files when doing compilation ? -+need_locks=$lt_need_locks -+ -+# Do we need the lib prefix for modules? -+need_lib_prefix=$need_lib_prefix -+ -+# Do we need a version for libraries? -+need_version=$need_version -+ -+# Whether dlopen is supported. -+dlopen_support=$enable_dlopen -+ -+# Whether dlopen of programs is supported. -+dlopen_self=$enable_dlopen_self -+ -+# Whether dlopen of statically linked programs is supported. -+dlopen_self_static=$enable_dlopen_self_static -+ -+# Compiler flag to prevent dynamic linking. -+link_static_flag=$lt_link_static_flag -+ -+# Compiler flag to turn off builtin functions. -+no_builtin_flag=$lt_no_builtin_flag -+ -+# Compiler flag to allow reflexive dlopens. -+export_dynamic_flag_spec=$lt_export_dynamic_flag_spec -+ -+# Compiler flag to generate shared objects directly from archives. -+whole_archive_flag_spec=$lt_whole_archive_flag_spec -+ -+# Compiler flag to generate thread-safe objects. -+thread_safe_flag_spec=$lt_thread_safe_flag_spec -+ -+# Library versioning type. -+version_type=$version_type -+ -+# Format of library name prefix. -+libname_spec=$lt_libname_spec -+ -+# List of archive names. First name is the real one, the rest are links. -+# The last name is the one that the linker finds with -lNAME. -+library_names_spec=$lt_library_names_spec -+ -+# The coded name of the library, if different from the real name. -+soname_spec=$lt_soname_spec -+ -+# Commands used to build and install an old-style archive. -+RANLIB=$lt_RANLIB -+old_archive_cmds=$lt_old_archive_cmds -+old_postinstall_cmds=$lt_old_postinstall_cmds -+old_postuninstall_cmds=$lt_old_postuninstall_cmds -+ -+# Create an old-style archive from a shared archive. -+old_archive_from_new_cmds=$lt_old_archive_from_new_cmds -+ -+# Create a temporary old-style archive to link instead of a shared archive. -+old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds -+ -+# Commands used to build and install a shared archive. -+archive_cmds=$lt_archive_cmds -+archive_expsym_cmds=$lt_archive_expsym_cmds -+postinstall_cmds=$lt_postinstall_cmds -+postuninstall_cmds=$lt_postuninstall_cmds -+ -+# Commands to strip libraries. -+old_striplib=$lt_old_striplib -+striplib=$lt_striplib -+ -+# Method to check whether dependent libraries are shared objects. -+deplibs_check_method=$lt_deplibs_check_method -+ -+# Command to use when deplibs_check_method == file_magic. -+file_magic_cmd=$lt_file_magic_cmd -+ -+# Flag that allows shared libraries with undefined symbols to be built. -+allow_undefined_flag=$lt_allow_undefined_flag -+ -+# Flag that forces no undefined symbols. -+no_undefined_flag=$lt_no_undefined_flag -+ -+# Commands used to finish a libtool library installation in a directory. -+finish_cmds=$lt_finish_cmds -+ -+# Same as above, but a single script fragment to be evaled but not shown. -+finish_eval=$lt_finish_eval -+ -+# Take the output of nm and produce a listing of raw symbols and C names. -+global_symbol_pipe=$lt_global_symbol_pipe -+ -+# Transform the output of nm in a proper C declaration -+global_symbol_to_cdecl=$lt_global_symbol_to_cdecl -+ -+# Transform the output of nm in a C name address pair -+global_symbol_to_c_name_address=$lt_global_symbol_to_c_name_address -+ -+# This is the shared library runtime path variable. -+runpath_var=$runpath_var -+ -+# This is the shared library path variable. -+shlibpath_var=$shlibpath_var -+ -+# Is shlibpath searched before the hard-coded library search path? -+shlibpath_overrides_runpath=$shlibpath_overrides_runpath -+ -+# How to hardcode a shared library path into an executable. -+hardcode_action=$hardcode_action -+ -+# Whether we should hardcode library paths into libraries. -+hardcode_into_libs=$hardcode_into_libs -+ -+# Flag to hardcode \$libdir into a binary during linking. -+# This must work even if \$libdir does not exist. -+hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec -+ -+# Whether we need a single -rpath flag with a separated argument. -+hardcode_libdir_separator=$lt_hardcode_libdir_separator -+ -+# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the -+# resulting binary. -+hardcode_direct=$hardcode_direct -+ -+# Set to yes if using the -LDIR flag during linking hardcodes DIR into the -+# resulting binary. -+hardcode_minus_L=$hardcode_minus_L -+ -+# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into -+# the resulting binary. -+hardcode_shlibpath_var=$hardcode_shlibpath_var -+ -+# Variables whose values should be saved in libtool wrapper scripts and -+# restored at relink time. -+variables_saved_for_relink="$variables_saved_for_relink" -+ -+# Whether libtool must link a program against all its dependency libraries. -+link_all_deplibs=$link_all_deplibs -+ -+# Compile-time system search path for libraries -+sys_lib_search_path_spec=$lt_sys_lib_search_path_spec -+ -+# Run-time system search path for libraries -+sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec -+ -+# Fix the shell variable \$srcfile for the compiler. -+fix_srcfile_path="$fix_srcfile_path" -+ -+# Set to yes if exported symbols are required. -+always_export_symbols=$always_export_symbols -+ -+# The commands to list exported symbols. -+export_symbols_cmds=$lt_export_symbols_cmds -+ -+# The commands to extract the exported symbol list from a shared archive. -+extract_expsyms_cmds=$lt_extract_expsyms_cmds -+ -+# Symbols that should not be listed in the preloaded symbols. -+exclude_expsyms=$lt_exclude_expsyms -+ -+# Symbols that must always be exported. -+include_expsyms=$lt_include_expsyms -+ -+# ### END LIBTOOL CONFIG -+ -+__EOF__ -+ -+ case $host_os in -+ aix3*) -+ cat <<\EOF >> "${ofile}T" -+ -+# AIX sometimes has problems with the GCC collect2 program. For some -+# reason, if we set the COLLECT_NAMES environment variable, the problems -+# vanish in a puff of smoke. -+if test "X${COLLECT_NAMES+set}" != Xset; then -+ COLLECT_NAMES= -+ export COLLECT_NAMES -+fi -+EOF -+ ;; -+ esac -+ -+ case $host_os in -+ cygwin* | mingw* | pw32* | os2*) -+ cat <<'EOF' >> "${ofile}T" -+ # This is a source program that is used to create dlls on Windows -+ # Don't remove nor modify the starting and closing comments -+# /* ltdll.c starts here */ -+# #define WIN32_LEAN_AND_MEAN -+# #include -+# #undef WIN32_LEAN_AND_MEAN -+# #include -+# -+# #ifndef __CYGWIN__ -+# # ifdef __CYGWIN32__ -+# # define __CYGWIN__ __CYGWIN32__ -+# # endif -+# #endif -+# -+# #ifdef __cplusplus -+# extern "C" { -+# #endif -+# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved); -+# #ifdef __cplusplus -+# } -+# #endif -+# -+# #ifdef __CYGWIN__ -+# #include -+# DECLARE_CYGWIN_DLL( DllMain ); -+# #endif -+# HINSTANCE __hDllInstance_base; -+# -+# BOOL APIENTRY -+# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved) -+# { -+# __hDllInstance_base = hInst; -+# return TRUE; -+# } -+# /* ltdll.c ends here */ -+ # This is a source program that is used to create import libraries -+ # on Windows for dlls which lack them. Don't remove nor modify the -+ # starting and closing comments -+# /* impgen.c starts here */ -+# /* Copyright (C) 1999-2000 Free Software Foundation, Inc. -+# -+# This file is part of GNU libtool. -+# -+# This program is free software; you can redistribute it and/or modify -+# it under the terms of the GNU General Public License as published by -+# the Free Software Foundation; either version 2 of the License, or -+# (at your option) any later version. -+# -+# This program is distributed in the hope that it will be useful, -+# but WITHOUT ANY WARRANTY; without even the implied warranty of -+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+# GNU General Public License for more details. -+# -+# You should have received a copy of the GNU General Public License -+# along with this program; if not, write to the Free Software -+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -+# */ -+# -+# #include /* for printf() */ -+# #include /* for open(), lseek(), read() */ -+# #include /* for O_RDONLY, O_BINARY */ -+# #include /* for strdup() */ -+# -+# /* O_BINARY isn't required (or even defined sometimes) under Unix */ -+# #ifndef O_BINARY -+# #define O_BINARY 0 -+# #endif -+# -+# static unsigned int -+# pe_get16 (fd, offset) -+# int fd; -+# int offset; -+# { -+# unsigned char b[2]; -+# lseek (fd, offset, SEEK_SET); -+# read (fd, b, 2); -+# return b[0] + (b[1]<<8); -+# } -+# -+# static unsigned int -+# pe_get32 (fd, offset) -+# int fd; -+# int offset; -+# { -+# unsigned char b[4]; -+# lseek (fd, offset, SEEK_SET); -+# read (fd, b, 4); -+# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24); -+# } -+# -+# static unsigned int -+# pe_as32 (ptr) -+# void *ptr; -+# { -+# unsigned char *b = ptr; -+# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24); -+# } -+# -+# int -+# main (argc, argv) -+# int argc; -+# char *argv[]; -+# { -+# int dll; -+# unsigned long pe_header_offset, opthdr_ofs, num_entries, i; -+# unsigned long export_rva, export_size, nsections, secptr, expptr; -+# unsigned long name_rvas, nexp; -+# unsigned char *expdata, *erva; -+# char *filename, *dll_name; -+# -+# filename = argv[1]; -+# -+# dll = open(filename, O_RDONLY|O_BINARY); -+# if (dll < 1) -+# return 1; -+# -+# dll_name = filename; -+# -+# for (i=0; filename[i]; i++) -+# if (filename[i] == '/' || filename[i] == '\\' || filename[i] == ':') -+# dll_name = filename + i +1; -+# -+# pe_header_offset = pe_get32 (dll, 0x3c); -+# opthdr_ofs = pe_header_offset + 4 + 20; -+# num_entries = pe_get32 (dll, opthdr_ofs + 92); -+# -+# if (num_entries < 1) /* no exports */ -+# return 1; -+# -+# export_rva = pe_get32 (dll, opthdr_ofs + 96); -+# export_size = pe_get32 (dll, opthdr_ofs + 100); -+# nsections = pe_get16 (dll, pe_header_offset + 4 +2); -+# secptr = (pe_header_offset + 4 + 20 + -+# pe_get16 (dll, pe_header_offset + 4 + 16)); -+# -+# expptr = 0; -+# for (i = 0; i < nsections; i++) -+# { -+# char sname[8]; -+# unsigned long secptr1 = secptr + 40 * i; -+# unsigned long vaddr = pe_get32 (dll, secptr1 + 12); -+# unsigned long vsize = pe_get32 (dll, secptr1 + 16); -+# unsigned long fptr = pe_get32 (dll, secptr1 + 20); -+# lseek(dll, secptr1, SEEK_SET); -+# read(dll, sname, 8); -+# if (vaddr <= export_rva && vaddr+vsize > export_rva) -+# { -+# expptr = fptr + (export_rva - vaddr); -+# if (export_rva + export_size > vaddr + vsize) -+# export_size = vsize - (export_rva - vaddr); -+# break; -+# } -+# } -+# -+# expdata = (unsigned char*)malloc(export_size); -+# lseek (dll, expptr, SEEK_SET); -+# read (dll, expdata, export_size); -+# erva = expdata - export_rva; -+# -+# nexp = pe_as32 (expdata+24); -+# name_rvas = pe_as32 (expdata+32); -+# -+# printf ("EXPORTS\n"); -+# for (i = 0; i> "${ofile}T" || (rm -f "${ofile}T"; exit 1) -+ -+ mv -f "${ofile}T" "$ofile" || \ -+ (rm -f "$ofile" && cp "${ofile}T" "$ofile" && rm -f "${ofile}T") -+ chmod +x "$ofile" -+fi -+ -+])# _LT_AC_LTCONFIG_HACK - - # AC_LIBTOOL_DLOPEN - enable checks for dlopen support --AC_DEFUN(AC_LIBTOOL_DLOPEN, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])]) -+AC_DEFUN([AC_LIBTOOL_DLOPEN], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])]) - - # AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's --AC_DEFUN(AC_LIBTOOL_WIN32_DLL, [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])]) -+AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])]) - - # AC_ENABLE_SHARED - implement the --enable-shared flag - # Usage: AC_ENABLE_SHARED[(DEFAULT)] - # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to - # `yes'. --AC_DEFUN(AC_ENABLE_SHARED, [dnl --define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl -+AC_DEFUN([AC_ENABLE_SHARED], -+[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl - AC_ARG_ENABLE(shared, - changequote(<<, >>)dnl - << --enable-shared[=PKGS] build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT], - changequote([, ])dnl - [p=${PACKAGE-default} --case "$enableval" in -+case $enableval in - yes) enable_shared=yes ;; - no) enable_shared=no ;; - *) -@@ -157,21 +2992,22 @@ - ]) - - # AC_DISABLE_SHARED - set the default shared flag to --disable-shared --AC_DEFUN(AC_DISABLE_SHARED, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -+AC_DEFUN([AC_DISABLE_SHARED], -+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl - AC_ENABLE_SHARED(no)]) - - # AC_ENABLE_STATIC - implement the --enable-static flag - # Usage: AC_ENABLE_STATIC[(DEFAULT)] - # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to - # `yes'. --AC_DEFUN(AC_ENABLE_STATIC, [dnl --define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl -+AC_DEFUN([AC_ENABLE_STATIC], -+[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl - AC_ARG_ENABLE(static, - changequote(<<, >>)dnl - << --enable-static[=PKGS] build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT], - changequote([, ])dnl - [p=${PACKAGE-default} --case "$enableval" in -+case $enableval in - yes) enable_static=yes ;; - no) enable_static=no ;; - *) -@@ -190,7 +3026,8 @@ - ]) - - # AC_DISABLE_STATIC - set the default static flag to --disable-static --AC_DEFUN(AC_DISABLE_STATIC, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -+AC_DEFUN([AC_DISABLE_STATIC], -+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl - AC_ENABLE_STATIC(no)]) - - -@@ -198,14 +3035,14 @@ - # Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)] - # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to - # `yes'. --AC_DEFUN(AC_ENABLE_FAST_INSTALL, [dnl --define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl -+AC_DEFUN([AC_ENABLE_FAST_INSTALL], -+[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl - AC_ARG_ENABLE(fast-install, - changequote(<<, >>)dnl - << --enable-fast-install[=PKGS] optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT], - changequote([, ])dnl - [p=${PACKAGE-default} --case "$enableval" in -+case $enableval in - yes) enable_fast_install=yes ;; - no) enable_fast_install=no ;; - *) -@@ -223,29 +3060,120 @@ - enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl - ]) - --# AC_ENABLE_FAST_INSTALL - set the default to --disable-fast-install --AC_DEFUN(AC_DISABLE_FAST_INSTALL, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -+# AC_DISABLE_FAST_INSTALL - set the default to --disable-fast-install -+AC_DEFUN([AC_DISABLE_FAST_INSTALL], -+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl - AC_ENABLE_FAST_INSTALL(no)]) - -+# AC_LIBTOOL_PICMODE - implement the --with-pic flag -+# Usage: AC_LIBTOOL_PICMODE[(MODE)] -+# Where MODE is either `yes' or `no'. If omitted, it defaults to -+# `both'. -+AC_DEFUN([AC_LIBTOOL_PICMODE], -+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -+pic_mode=ifelse($#,1,$1,default)]) -+ -+ -+# AC_PATH_TOOL_PREFIX - find a file program which can recognise shared library -+AC_DEFUN([AC_PATH_TOOL_PREFIX], -+[AC_MSG_CHECKING([for $1]) -+AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, -+[case $MAGIC_CMD in -+ /*) -+ lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. -+ ;; -+ ?:/*) -+ lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path. -+ ;; -+ *) -+ ac_save_MAGIC_CMD="$MAGIC_CMD" -+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" -+dnl $ac_dummy forces splitting on constant user-supplied paths. -+dnl POSIX.2 word splitting is done only on the output of word expansions, -+dnl not every word. This closes a longstanding sh security hole. -+ ac_dummy="ifelse([$2], , $PATH, [$2])" -+ for ac_dir in $ac_dummy; do -+ test -z "$ac_dir" && ac_dir=. -+ if test -f $ac_dir/$1; then -+ lt_cv_path_MAGIC_CMD="$ac_dir/$1" -+ if test -n "$file_magic_test_file"; then -+ case $deplibs_check_method in -+ "file_magic "*) -+ file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" -+ MAGIC_CMD="$lt_cv_path_MAGIC_CMD" -+ if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | -+ egrep "$file_magic_regex" > /dev/null; then -+ : -+ else -+ cat <&2 -+ -+*** Warning: the command libtool uses to detect shared libraries, -+*** $file_magic_cmd, produces output that libtool cannot recognize. -+*** The result is that libtool may fail to recognize shared libraries -+*** as such. This will affect the creation of libtool libraries that -+*** depend on shared libraries, but programs linked with such libtool -+*** libraries will work regardless of this problem. Nevertheless, you -+*** may want to report the problem to your system manager and/or to -+*** bug-libtool@gnu.org -+ -+EOF -+ fi ;; -+ esac -+ fi -+ break -+ fi -+ done -+ IFS="$ac_save_ifs" -+ MAGIC_CMD="$ac_save_MAGIC_CMD" -+ ;; -+esac]) -+MAGIC_CMD="$lt_cv_path_MAGIC_CMD" -+if test -n "$MAGIC_CMD"; then -+ AC_MSG_RESULT($MAGIC_CMD) -+else -+ AC_MSG_RESULT(no) -+fi -+]) -+ -+ -+# AC_PATH_MAGIC - find a file program which can recognise a shared library -+AC_DEFUN([AC_PATH_MAGIC], -+[AC_REQUIRE([AC_CHECK_TOOL_PREFIX])dnl -+AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin:$PATH) -+if test -z "$lt_cv_path_MAGIC_CMD"; then -+ if test -n "$ac_tool_prefix"; then -+ AC_PATH_TOOL_PREFIX(file, /usr/bin:$PATH) -+ else -+ MAGIC_CMD=: -+ fi -+fi -+]) -+ -+ - # AC_PROG_LD - find the path to the GNU or non-GNU linker --AC_DEFUN(AC_PROG_LD, -+AC_DEFUN([AC_PROG_LD], - [AC_ARG_WITH(gnu-ld, - [ --with-gnu-ld assume the C compiler uses GNU ld [default=no]], - test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no) - AC_REQUIRE([AC_PROG_CC])dnl - AC_REQUIRE([AC_CANONICAL_HOST])dnl - AC_REQUIRE([AC_CANONICAL_BUILD])dnl -+AC_REQUIRE([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR])dnl - ac_prog=ld --if test "$ac_cv_prog_gcc" = yes; then -+if test "$GCC" = yes; then - # Check if gcc -print-prog-name=ld gives a path. - AC_MSG_CHECKING([for ld used by GCC]) -- ac_prog=`($CC -print-prog-name=ld) 2>&5` -- case "$ac_prog" in -+ case $host in -+ *-*-mingw*) -+ # gcc leaves a trailing carriage return which upsets mingw -+ ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; -+ *) -+ ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; -+ esac -+ case $ac_prog in - # Accept absolute paths. --changequote(,)dnl -- [\\/]* | [A-Za-z]:[\\/]*) -- re_direlt='/[^/][^/]*/\.\./' --changequote([,])dnl -+ [[\\/]]* | [[A-Za-z]]:[[\\/]]*) -+ re_direlt='/[[^/]][[^/]]*/\.\./' - # Canonicalize the path of ld - ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` - while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do -@@ -267,17 +3195,17 @@ - else - AC_MSG_CHECKING([for non-GNU ld]) - fi --AC_CACHE_VAL(ac_cv_path_LD, -+AC_CACHE_VAL(lt_cv_path_LD, - [if test -z "$LD"; then -- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" -+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH; do - test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then -- ac_cv_path_LD="$ac_dir/$ac_prog" -+ lt_cv_path_LD="$ac_dir/$ac_prog" - # Check to see if the program is GNU ld. I'd rather use --version, - # but apparently some GNU ld's only accept -v. - # Break only if it was the GNU/non-GNU ld that we prefer. -- if "$ac_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then -+ if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then - test "$with_gnu_ld" != no && break - else - test "$with_gnu_ld" != yes && break -@@ -286,9 +3214,9 @@ - done - IFS="$ac_save_ifs" - else -- ac_cv_path_LD="$LD" # Let the user override the test with a path. -+ lt_cv_path_LD="$LD" # Let the user override the test with a path. - fi]) --LD="$ac_cv_path_LD" -+LD="$lt_cv_path_LD" - if test -n "$LD"; then - AC_MSG_RESULT($LD) - else -@@ -298,56 +3226,255 @@ - AC_PROG_LD_GNU - ]) - --AC_DEFUN(AC_PROG_LD_GNU, --[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], ac_cv_prog_gnu_ld, -+# AC_PROG_LD_GNU - -+AC_DEFUN([AC_PROG_LD_GNU], -+[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld, - [# I'd rather use --version here, but apparently some GNU ld's only accept -v. - if $LD -v 2>&1 &5; then -- ac_cv_prog_gnu_ld=yes -+ lt_cv_prog_gnu_ld=yes - else -- ac_cv_prog_gnu_ld=no -+ lt_cv_prog_gnu_ld=no - fi]) -+with_gnu_ld=$lt_cv_prog_gnu_ld -+]) -+ -+# AC_PROG_LD_RELOAD_FLAG - find reload flag for linker -+# -- PORTME Some linkers may need a different reload flag. -+AC_DEFUN([AC_PROG_LD_RELOAD_FLAG], -+[AC_CACHE_CHECK([for $LD option to reload object files], lt_cv_ld_reload_flag, -+[lt_cv_ld_reload_flag='-r']) -+reload_flag=$lt_cv_ld_reload_flag -+test -n "$reload_flag" && reload_flag=" $reload_flag" -+]) -+ -+# AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies -+# -- PORTME fill in with the dynamic library characteristics -+AC_DEFUN([AC_DEPLIBS_CHECK_METHOD], -+[AC_CACHE_CHECK([how to recognise dependent libraries], -+lt_cv_deplibs_check_method, -+[lt_cv_file_magic_cmd='$MAGIC_CMD' -+lt_cv_file_magic_test_file= -+lt_cv_deplibs_check_method='unknown' -+# Need to set the preceding variable on all platforms that support -+# interlibrary dependencies. -+# 'none' -- dependencies not supported. -+# `unknown' -- same as none, but documents that we really don't know. -+# 'pass_all' -- all dependencies passed with no checks. -+# 'test_compile' -- check by making test program. -+# 'file_magic [[regex]]' -- check by looking for files in library path -+# which responds to the $file_magic_cmd with a given egrep regex. -+# If you have `file' or equivalent on your system and you're not sure -+# whether `pass_all' will *always* work, you probably want this one. -+ -+case $host_os in -+aix4* | aix5*) -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ -+beos*) -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ -+bsdi4*) -+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)' -+ lt_cv_file_magic_cmd='/usr/bin/file -L' -+ lt_cv_file_magic_test_file=/shlib/libc.so -+ ;; -+ -+cygwin* | mingw* | pw32*) -+ lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' -+ lt_cv_file_magic_cmd='$OBJDUMP -f' -+ ;; -+ -+darwin* | rhapsody*) -+ lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library' -+ lt_cv_file_magic_cmd='/usr/bin/file -L' -+ case "$host_os" in -+ rhapsody* | darwin1.[[012]]) -+ lt_cv_file_magic_test_file=`echo /System/Library/Frameworks/System.framework/Versions/*/System | head -1` -+ ;; -+ *) # Darwin 1.3 on -+ lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib' -+ ;; -+ esac -+ ;; -+ -+freebsd*) -+ if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then -+ case $host_cpu in -+ i*86 ) -+ # Not sure whether the presence of OpenBSD here was a mistake. -+ # Let's accept both of them until this is cleared up. -+ lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[[3-9]]86 (compact )?demand paged shared library' -+ lt_cv_file_magic_cmd=/usr/bin/file -+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` -+ ;; -+ esac -+ else -+ lt_cv_deplibs_check_method=pass_all -+ fi -+ ;; -+ -+gnu*) -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ -+hpux10.20*|hpux11*) -+ lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library' -+ lt_cv_file_magic_cmd=/usr/bin/file -+ lt_cv_file_magic_test_file=/usr/lib/libc.sl -+ ;; -+ -+irix5* | irix6* | nonstopux*) -+ case $host_os in -+ irix5* | nonstopux*) -+ # this will be overridden with pass_all, but let us keep it just in case -+ lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1" -+ ;; -+ *) -+ case $LD in -+ *-32|*"-32 ") libmagic=32-bit;; -+ *-n32|*"-n32 ") libmagic=N32;; -+ *-64|*"-64 ") libmagic=64-bit;; -+ *) libmagic=never-match;; -+ esac -+ # this will be overridden with pass_all, but let us keep it just in case -+ lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[[1234]] dynamic lib MIPS - version 1" -+ ;; -+ esac -+ lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*` -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ -+# This must be Linux ELF. -+linux-gnu*) -+ case $host_cpu in -+ alpha* | hppa* | i*86 | mips | mipsel | powerpc* | sparc* | ia64* | arm* | m68k) -+ lt_cv_deplibs_check_method=pass_all ;; -+ *) -+ # glibc up to 2.1.1 does not perform some relocations on ARM -+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' ;; -+ esac -+ lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` -+ ;; -+ -+netbsd*) -+ if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then -+ lt_cv_deplibs_check_method='match_pattern /lib[[^/\.]]+\.so\.[[0-9]]+\.[[0-9]]+$' -+ else -+ lt_cv_deplibs_check_method='match_pattern /lib[[^/\.]]+\.so$' -+ fi -+ ;; -+ -+newos6*) -+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)' -+ lt_cv_file_magic_cmd=/usr/bin/file -+ lt_cv_file_magic_test_file=/usr/lib/libnls.so -+ ;; -+ -+openbsd*) -+ lt_cv_file_magic_cmd=/usr/bin/file -+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` -+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then -+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB shared object' -+ else -+ lt_cv_deplibs_check_method='file_magic OpenBSD.* shared library' -+ fi -+ ;; -+ -+osf3* | osf4* | osf5*) -+ # this will be overridden with pass_all, but let us keep it just in case -+ lt_cv_deplibs_check_method='file_magic COFF format alpha shared library' -+ lt_cv_file_magic_test_file=/shlib/libc.so -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ -+sco3.2v5*) -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ -+solaris*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=/lib/libc.so -+ ;; -+ -+sysv5uw[[78]]* | sysv4*uw2*) -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ -+sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) -+ case $host_vendor in -+ motorola) -+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]' -+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` -+ ;; -+ ncr) -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ sequent) -+ lt_cv_file_magic_cmd='/bin/file' -+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' -+ ;; -+ sni) -+ lt_cv_file_magic_cmd='/bin/file' -+ lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib" -+ lt_cv_file_magic_test_file=/lib/libc.so -+ ;; -+ siemens) -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ esac -+ ;; -+esac -+]) -+file_magic_cmd=$lt_cv_file_magic_cmd -+deplibs_check_method=$lt_cv_deplibs_check_method - ]) - -+ - # AC_PROG_NM - find the path to a BSD-compatible name lister --AC_DEFUN(AC_PROG_NM, --[AC_MSG_CHECKING([for BSD-compatible nm]) --AC_CACHE_VAL(ac_cv_path_NM, -+AC_DEFUN([AC_PROG_NM], -+[AC_REQUIRE([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR])dnl -+AC_MSG_CHECKING([for BSD-compatible nm]) -+AC_CACHE_VAL(lt_cv_path_NM, - [if test -n "$NM"; then - # Let the user override the test. -- ac_cv_path_NM="$NM" -+ lt_cv_path_NM="$NM" - else -- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" -+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do - test -z "$ac_dir" && ac_dir=. -- if test -f $ac_dir/nm || test -f $ac_dir/nm$ac_exeext ; then -+ tmp_nm=$ac_dir/${ac_tool_prefix}nm -+ if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then - # Check to see if the nm accepts a BSD-compat flag. - # Adding the `sed 1q' prevents false positives on HP-UX, which says: - # nm: unknown option "B" ignored -- if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then -- ac_cv_path_NM="$ac_dir/nm -B" -+ # Tru64's nm complains that /dev/null is an invalid object file -+ if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then -+ lt_cv_path_NM="$tmp_nm -B" - break -- elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then -- ac_cv_path_NM="$ac_dir/nm -p" -+ elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then -+ lt_cv_path_NM="$tmp_nm -p" - break - else -- ac_cv_path_NM=${ac_cv_path_NM="$ac_dir/nm"} # keep the first match, but -+ lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but - continue # so that we can try to find one that supports BSD flags - fi - fi - done - IFS="$ac_save_ifs" -- test -z "$ac_cv_path_NM" && ac_cv_path_NM=nm -+ test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm - fi]) --NM="$ac_cv_path_NM" -+NM="$lt_cv_path_NM" - AC_MSG_RESULT([$NM]) - ]) - - # AC_CHECK_LIBM - check for math library --AC_DEFUN(AC_CHECK_LIBM, -+AC_DEFUN([AC_CHECK_LIBM], - [AC_REQUIRE([AC_CANONICAL_HOST])dnl - LIBM= --case "$lt_target" in --*-*-beos* | *-*-cygwin*) -+case $host in -+*-*-beos* | *-*-cygwin* | *-*-pw32*) - # These system don't have libm - ;; - *-ncr-sysv4.3*) -@@ -361,33 +3488,41 @@ - ]) - - # AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for --# the libltdl convenience library, adds --enable-ltdl-convenience to --# the configure arguments. Note that LIBLTDL is not AC_SUBSTed, nor --# is AC_CONFIG_SUBDIRS called. If DIR is not provided, it is assumed --# to be `${top_builddir}/libltdl'. Make sure you start DIR with --# '${top_builddir}/' (note the single quotes!) if your package is not --# flat, and, if you're not using automake, define top_builddir as --# appropriate in the Makefiles. --AC_DEFUN(AC_LIBLTDL_CONVENIENCE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -- case "$enable_ltdl_convenience" in -+# the libltdl convenience library and LTDLINCL to the include flags for -+# the libltdl header and adds --enable-ltdl-convenience to the -+# configure arguments. Note that LIBLTDL and LTDLINCL are not -+# AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If DIR is not -+# provided, it is assumed to be `libltdl'. LIBLTDL will be prefixed -+# with '${top_builddir}/' and LTDLINCL will be prefixed with -+# '${top_srcdir}/' (note the single quotes!). If your package is not -+# flat and you're not using automake, define top_builddir and -+# top_srcdir appropriately in the Makefiles. -+AC_DEFUN([AC_LIBLTDL_CONVENIENCE], -+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -+ case $enable_ltdl_convenience in - no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;; - "") enable_ltdl_convenience=yes - ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;; - esac -- LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdlc.la -- INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl']) -+ LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la -+ LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) -+ # For backwards non-gettext consistent compatibility... -+ INCLTDL="$LTDLINCL" - ]) - - # AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for --# the libltdl installable library, and adds --enable-ltdl-install to --# the configure arguments. Note that LIBLTDL is not AC_SUBSTed, nor --# is AC_CONFIG_SUBDIRS called. If DIR is not provided, it is assumed --# to be `${top_builddir}/libltdl'. Make sure you start DIR with --# '${top_builddir}/' (note the single quotes!) if your package is not --# flat, and, if you're not using automake, define top_builddir as --# appropriate in the Makefiles. -+# the libltdl installable library and LTDLINCL to the include flags for -+# the libltdl header and adds --enable-ltdl-install to the configure -+# arguments. Note that LIBLTDL and LTDLINCL are not AC_SUBSTed, nor is -+# AC_CONFIG_SUBDIRS called. If DIR is not provided and an installed -+# libltdl is not found, it is assumed to be `libltdl'. LIBLTDL will -+# be prefixed with '${top_builddir}/' and LTDLINCL will be prefixed -+# with '${top_srcdir}/' (note the single quotes!). If your package is -+# not flat and you're not using automake, define top_builddir and -+# top_srcdir appropriately in the Makefiles. - # In the future, this macro may have to be called after AC_PROG_LIBTOOL. --AC_DEFUN(AC_LIBLTDL_INSTALLABLE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -+AC_DEFUN([AC_LIBLTDL_INSTALLABLE], -+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl - AC_CHECK_LIB(ltdl, main, - [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no], - [if test x"$enable_ltdl_install" = xno; then -@@ -398,30 +3533,940 @@ - ]) - if test x"$enable_ltdl_install" = x"yes"; then - ac_configure_args="$ac_configure_args --enable-ltdl-install" -- LIBLTDL=ifelse($#,1,$1,['${top_builddir}/libltdl'])/libltdl.la -- INCLTDL=ifelse($#,1,-I$1,['-I${top_builddir}/libltdl']) -+ LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la -+ LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) - else - ac_configure_args="$ac_configure_args --enable-ltdl-install=no" - LIBLTDL="-lltdl" -- INCLTDL= -+ LTDLINCL= -+ fi -+ # For backwards non-gettext consistent compatibility... -+ INCLTDL="$LTDLINCL" -+]) -+ -+# old names -+AC_DEFUN([AM_PROG_LIBTOOL], [AC_PROG_LIBTOOL]) -+AC_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) -+AC_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) -+AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) -+AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) -+AC_DEFUN([AM_PROG_LD], [AC_PROG_LD]) -+AC_DEFUN([AM_PROG_NM], [AC_PROG_NM]) -+ -+# This is just to silence aclocal about the macro not being used -+ifelse([AC_DISABLE_FAST_INSTALL]) -+ -+# NOTE: This macro has been submitted for inclusion into # -+# GNU Autoconf as AC_PROG_SED. When it is available in # -+# a released version of Autoconf we should remove this # -+# macro and use it instead. # -+# LT_AC_PROG_SED -+# -------------- -+# Check for a fully-functional sed program, that truncates -+# as few characters as possible. Prefer GNU sed if found. -+AC_DEFUN([LT_AC_PROG_SED], -+[AC_MSG_CHECKING([for a sed that does not truncate output]) -+AC_CACHE_VAL(lt_cv_path_SED, -+[# Loop through the user's path and test for sed and gsed. -+# Then use that list of sed's as ones to test for truncation. -+as_executable_p="test -f" -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_prog in sed gsed; do -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then -+ _sed_list="$_sed_list $as_dir/$ac_prog$ac_exec_ext" -+ fi -+ done -+ done -+done -+ -+ # Create a temporary directory, and hook for its removal unless debugging. -+$debug || -+{ -+ trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 -+ trap '{ (exit 1); exit 1; }' 1 2 13 15 -+} -+ -+# Create a (secure) tmp directory for tmp files. -+: ${TMPDIR=/tmp} -+{ -+ tmp=`(umask 077 && mktemp -d -q "$TMPDIR/sedXXXXXX") 2>/dev/null` && -+ test -n "$tmp" && test -d "$tmp" -+} || -+{ -+ tmp=$TMPDIR/sed$$-$RANDOM -+ (umask 077 && mkdir $tmp) -+} || -+{ -+ echo "$me: cannot create a temporary directory in $TMPDIR" >&2 -+ { (exit 1); exit 1; } -+} -+ _max=0 -+ _count=0 -+ # Add /usr/xpg4/bin/sed as it is typically found on Solaris -+ # along with /bin/sed that truncates output. -+ for _sed in $_sed_list /usr/xpg4/bin/sed; do -+ test ! -f ${_sed} && break -+ cat /dev/null > "$tmp/sed.in" -+ _count=0 -+ echo ${ECHO_N-$ac_n} "0123456789${ECHO_C-$ac_c}" >"$tmp/sed.in" -+ # Check for GNU sed and select it if it is found. -+ if "${_sed}" --version 2>&1 < /dev/null | egrep '(GNU)' > /dev/null; then -+ lt_cv_path_SED=${_sed} -+ break -+ fi -+ while true; do -+ cat "$tmp/sed.in" "$tmp/sed.in" >"$tmp/sed.tmp" -+ mv "$tmp/sed.tmp" "$tmp/sed.in" -+ cp "$tmp/sed.in" "$tmp/sed.nl" -+ echo >>"$tmp/sed.nl" -+ ${_sed} -e 's/a$//' < "$tmp/sed.nl" >"$tmp/sed.out" || break -+ cmp -s "$tmp/sed.out" "$tmp/sed.nl" || break -+ # 40000 chars as input seems more than enough -+ test $_count -gt 10 && break -+ _count=`expr $_count + 1` -+ if test $_count -gt $_max; then -+ _max=$_count -+ lt_cv_path_SED=$_sed -+ fi -+ done -+ done -+ rm -rf "$tmp" -+]) -+if test "X$SED" != "X"; then -+ lt_cv_path_SED=$SED -+else -+ SED=$lt_cv_path_SED -+fi -+AC_MSG_RESULT([$SED]) -+]) -+ -+# lib-prefix.m4 serial 3 (gettext-0.12.2) -+dnl Copyright (C) 2001-2003 Free Software Foundation, Inc. -+dnl This file is free software, distributed under the terms of the GNU -+dnl General Public License. As a special exception to the GNU General -+dnl Public License, this file may be distributed as part of a program -+dnl that contains a configuration script generated by Autoconf, under -+dnl the same distribution terms as the rest of that program. -+ -+dnl From Bruno Haible. -+ -+dnl AC_LIB_ARG_WITH is synonymous to AC_ARG_WITH in autoconf-2.13, and -+dnl similar to AC_ARG_WITH in autoconf 2.52...2.57 except that is doesn't -+dnl require excessive bracketing. -+ifdef([AC_HELP_STRING], -+[AC_DEFUN([AC_LIB_ARG_WITH], [AC_ARG_WITH([$1],[[$2]],[$3],[$4])])], -+[AC_DEFUN([AC_][LIB_ARG_WITH], [AC_ARG_WITH([$1],[$2],[$3],[$4])])]) -+ -+dnl AC_LIB_PREFIX adds to the CPPFLAGS and LDFLAGS the flags that are needed -+dnl to access previously installed libraries. The basic assumption is that -+dnl a user will want packages to use other packages he previously installed -+dnl with the same --prefix option. -+dnl This macro is not needed if only AC_LIB_LINKFLAGS is used to locate -+dnl libraries, but is otherwise very convenient. -+AC_DEFUN([AC_LIB_PREFIX], -+[ -+ AC_BEFORE([$0], [AC_LIB_LINKFLAGS]) -+ AC_REQUIRE([AC_PROG_CC]) -+ AC_REQUIRE([AC_CANONICAL_HOST]) -+ AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) -+ dnl By default, look in $includedir and $libdir. -+ use_additional=yes -+ AC_LIB_WITH_FINAL_PREFIX([ -+ eval additional_includedir=\"$includedir\" -+ eval additional_libdir=\"$libdir\" -+ ]) -+ AC_LIB_ARG_WITH([lib-prefix], -+[ --with-lib-prefix[=DIR] search for libraries in DIR/include and DIR/lib -+ --without-lib-prefix don't search for libraries in includedir and libdir], -+[ -+ if test "X$withval" = "Xno"; then -+ use_additional=no -+ else -+ if test "X$withval" = "X"; then -+ AC_LIB_WITH_FINAL_PREFIX([ -+ eval additional_includedir=\"$includedir\" -+ eval additional_libdir=\"$libdir\" -+ ]) -+ else -+ additional_includedir="$withval/include" -+ additional_libdir="$withval/lib" -+ fi -+ fi -+]) -+ if test $use_additional = yes; then -+ dnl Potentially add $additional_includedir to $CPPFLAGS. -+ dnl But don't add it -+ dnl 1. if it's the standard /usr/include, -+ dnl 2. if it's already present in $CPPFLAGS, -+ dnl 3. if it's /usr/local/include and we are using GCC on Linux, -+ dnl 4. if it doesn't exist as a directory. -+ if test "X$additional_includedir" != "X/usr/include"; then -+ haveit= -+ for x in $CPPFLAGS; do -+ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) -+ if test "X$x" = "X-I$additional_includedir"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ if test "X$additional_includedir" = "X/usr/local/include"; then -+ if test -n "$GCC"; then -+ case $host_os in -+ linux*) haveit=yes;; -+ esac -+ fi -+ fi -+ if test -z "$haveit"; then -+ if test -d "$additional_includedir"; then -+ dnl Really add $additional_includedir to $CPPFLAGS. -+ CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }-I$additional_includedir" -+ fi -+ fi -+ fi -+ fi -+ dnl Potentially add $additional_libdir to $LDFLAGS. -+ dnl But don't add it -+ dnl 1. if it's the standard /usr/lib, -+ dnl 2. if it's already present in $LDFLAGS, -+ dnl 3. if it's /usr/local/lib and we are using GCC on Linux, -+ dnl 4. if it doesn't exist as a directory. -+ if test "X$additional_libdir" != "X/usr/lib"; then -+ haveit= -+ for x in $LDFLAGS; do -+ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) -+ if test "X$x" = "X-L$additional_libdir"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ if test "X$additional_libdir" = "X/usr/local/lib"; then -+ if test -n "$GCC"; then -+ case $host_os in -+ linux*) haveit=yes;; -+ esac -+ fi -+ fi -+ if test -z "$haveit"; then -+ if test -d "$additional_libdir"; then -+ dnl Really add $additional_libdir to $LDFLAGS. -+ LDFLAGS="${LDFLAGS}${LDFLAGS:+ }-L$additional_libdir" -+ fi -+ fi -+ fi -+ fi -+ fi -+]) -+ -+dnl AC_LIB_PREPARE_PREFIX creates variables acl_final_prefix, -+dnl acl_final_exec_prefix, containing the values to which $prefix and -+dnl $exec_prefix will expand at the end of the configure script. -+AC_DEFUN([AC_LIB_PREPARE_PREFIX], -+[ -+ dnl Unfortunately, prefix and exec_prefix get only finally determined -+ dnl at the end of configure. -+ if test "X$prefix" = "XNONE"; then -+ acl_final_prefix="$ac_default_prefix" -+ else -+ acl_final_prefix="$prefix" -+ fi -+ if test "X$exec_prefix" = "XNONE"; then -+ acl_final_exec_prefix='${prefix}' -+ else -+ acl_final_exec_prefix="$exec_prefix" -+ fi -+ acl_save_prefix="$prefix" -+ prefix="$acl_final_prefix" -+ eval acl_final_exec_prefix=\"$acl_final_exec_prefix\" -+ prefix="$acl_save_prefix" -+]) -+ -+dnl AC_LIB_WITH_FINAL_PREFIX([statement]) evaluates statement, with the -+dnl variables prefix and exec_prefix bound to the values they will have -+dnl at the end of the configure script. -+AC_DEFUN([AC_LIB_WITH_FINAL_PREFIX], -+[ -+ acl_save_prefix="$prefix" -+ prefix="$acl_final_prefix" -+ acl_save_exec_prefix="$exec_prefix" -+ exec_prefix="$acl_final_exec_prefix" -+ $1 -+ exec_prefix="$acl_save_exec_prefix" -+ prefix="$acl_save_prefix" -+]) -+ -+# lib-link.m4 serial 4 (gettext-0.12) -+dnl Copyright (C) 2001-2003 Free Software Foundation, Inc. -+dnl This file is free software, distributed under the terms of the GNU -+dnl General Public License. As a special exception to the GNU General -+dnl Public License, this file may be distributed as part of a program -+dnl that contains a configuration script generated by Autoconf, under -+dnl the same distribution terms as the rest of that program. -+ -+dnl From Bruno Haible. -+ -+dnl AC_LIB_LINKFLAGS(name [, dependencies]) searches for libname and -+dnl the libraries corresponding to explicit and implicit dependencies. -+dnl Sets and AC_SUBSTs the LIB${NAME} and LTLIB${NAME} variables and -+dnl augments the CPPFLAGS variable. -+AC_DEFUN([AC_LIB_LINKFLAGS], -+[ -+ AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) -+ AC_REQUIRE([AC_LIB_RPATH]) -+ define([Name],[translit([$1],[./-], [___])]) -+ define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-], -+ [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])]) -+ AC_CACHE_CHECK([how to link with lib[]$1], [ac_cv_lib[]Name[]_libs], [ -+ AC_LIB_LINKFLAGS_BODY([$1], [$2]) -+ ac_cv_lib[]Name[]_libs="$LIB[]NAME" -+ ac_cv_lib[]Name[]_ltlibs="$LTLIB[]NAME" -+ ac_cv_lib[]Name[]_cppflags="$INC[]NAME" -+ ]) -+ LIB[]NAME="$ac_cv_lib[]Name[]_libs" -+ LTLIB[]NAME="$ac_cv_lib[]Name[]_ltlibs" -+ INC[]NAME="$ac_cv_lib[]Name[]_cppflags" -+ AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME) -+ AC_SUBST([LIB]NAME) -+ AC_SUBST([LTLIB]NAME) -+ dnl Also set HAVE_LIB[]NAME so that AC_LIB_HAVE_LINKFLAGS can reuse the -+ dnl results of this search when this library appears as a dependency. -+ HAVE_LIB[]NAME=yes -+ undefine([Name]) -+ undefine([NAME]) -+]) -+ -+dnl AC_LIB_HAVE_LINKFLAGS(name, dependencies, includes, testcode) -+dnl searches for libname and the libraries corresponding to explicit and -+dnl implicit dependencies, together with the specified include files and -+dnl the ability to compile and link the specified testcode. If found, it -+dnl sets and AC_SUBSTs HAVE_LIB${NAME}=yes and the LIB${NAME} and -+dnl LTLIB${NAME} variables and augments the CPPFLAGS variable, and -+dnl #defines HAVE_LIB${NAME} to 1. Otherwise, it sets and AC_SUBSTs -+dnl HAVE_LIB${NAME}=no and LIB${NAME} and LTLIB${NAME} to empty. -+AC_DEFUN([AC_LIB_HAVE_LINKFLAGS], -+[ -+ AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) -+ AC_REQUIRE([AC_LIB_RPATH]) -+ define([Name],[translit([$1],[./-], [___])]) -+ define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-], -+ [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])]) -+ -+ dnl Search for lib[]Name and define LIB[]NAME, LTLIB[]NAME and INC[]NAME -+ dnl accordingly. -+ AC_LIB_LINKFLAGS_BODY([$1], [$2]) -+ -+ dnl Add $INC[]NAME to CPPFLAGS before performing the following checks, -+ dnl because if the user has installed lib[]Name and not disabled its use -+ dnl via --without-lib[]Name-prefix, he wants to use it. -+ ac_save_CPPFLAGS="$CPPFLAGS" -+ AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME) -+ -+ AC_CACHE_CHECK([for lib[]$1], [ac_cv_lib[]Name], [ -+ ac_save_LIBS="$LIBS" -+ LIBS="$LIBS $LIB[]NAME" -+ AC_TRY_LINK([$3], [$4], [ac_cv_lib[]Name=yes], [ac_cv_lib[]Name=no]) -+ LIBS="$ac_save_LIBS" -+ ]) -+ if test "$ac_cv_lib[]Name" = yes; then -+ HAVE_LIB[]NAME=yes -+ AC_DEFINE([HAVE_LIB]NAME, 1, [Define if you have the $1 library.]) -+ AC_MSG_CHECKING([how to link with lib[]$1]) -+ AC_MSG_RESULT([$LIB[]NAME]) -+ else -+ HAVE_LIB[]NAME=no -+ dnl If $LIB[]NAME didn't lead to a usable library, we don't need -+ dnl $INC[]NAME either. -+ CPPFLAGS="$ac_save_CPPFLAGS" -+ LIB[]NAME= -+ LTLIB[]NAME= -+ fi -+ AC_SUBST([HAVE_LIB]NAME) -+ AC_SUBST([LIB]NAME) -+ AC_SUBST([LTLIB]NAME) -+ undefine([Name]) -+ undefine([NAME]) -+]) -+ -+dnl Determine the platform dependent parameters needed to use rpath: -+dnl libext, shlibext, hardcode_libdir_flag_spec, hardcode_libdir_separator, -+dnl hardcode_direct, hardcode_minus_L. -+AC_DEFUN([AC_LIB_RPATH], -+[ -+ AC_REQUIRE([AC_PROG_CC]) dnl we use $CC, $GCC, $LDFLAGS -+ AC_REQUIRE([AC_LIB_PROG_LD]) dnl we use $LD, $with_gnu_ld -+ AC_REQUIRE([AC_CANONICAL_HOST]) dnl we use $host -+ AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT]) dnl we use $ac_aux_dir -+ AC_CACHE_CHECK([for shared library run path origin], acl_cv_rpath, [ -+ CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \ -+ ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh -+ . ./conftest.sh -+ rm -f ./conftest.sh -+ acl_cv_rpath=done -+ ]) -+ wl="$acl_cv_wl" -+ libext="$acl_cv_libext" -+ shlibext="$acl_cv_shlibext" -+ hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec" -+ hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator" -+ hardcode_direct="$acl_cv_hardcode_direct" -+ hardcode_minus_L="$acl_cv_hardcode_minus_L" -+ dnl Determine whether the user wants rpath handling at all. -+ AC_ARG_ENABLE(rpath, -+ [ --disable-rpath do not hardcode runtime library paths], -+ :, enable_rpath=yes) -+]) -+ -+dnl AC_LIB_LINKFLAGS_BODY(name [, dependencies]) searches for libname and -+dnl the libraries corresponding to explicit and implicit dependencies. -+dnl Sets the LIB${NAME}, LTLIB${NAME} and INC${NAME} variables. -+AC_DEFUN([AC_LIB_LINKFLAGS_BODY], -+[ -+ define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-], -+ [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])]) -+ dnl By default, look in $includedir and $libdir. -+ use_additional=yes -+ AC_LIB_WITH_FINAL_PREFIX([ -+ eval additional_includedir=\"$includedir\" -+ eval additional_libdir=\"$libdir\" -+ ]) -+ AC_LIB_ARG_WITH([lib$1-prefix], -+[ --with-lib$1-prefix[=DIR] search for lib$1 in DIR/include and DIR/lib -+ --without-lib$1-prefix don't search for lib$1 in includedir and libdir], -+[ -+ if test "X$withval" = "Xno"; then -+ use_additional=no -+ else -+ if test "X$withval" = "X"; then -+ AC_LIB_WITH_FINAL_PREFIX([ -+ eval additional_includedir=\"$includedir\" -+ eval additional_libdir=\"$libdir\" -+ ]) -+ else -+ additional_includedir="$withval/include" -+ additional_libdir="$withval/lib" -+ fi -+ fi -+]) -+ dnl Search the library and its dependencies in $additional_libdir and -+ dnl $LDFLAGS. Using breadth-first-seach. -+ LIB[]NAME= -+ LTLIB[]NAME= -+ INC[]NAME= -+ rpathdirs= -+ ltrpathdirs= -+ names_already_handled= -+ names_next_round='$1 $2' -+ while test -n "$names_next_round"; do -+ names_this_round="$names_next_round" -+ names_next_round= -+ for name in $names_this_round; do -+ already_handled= -+ for n in $names_already_handled; do -+ if test "$n" = "$name"; then -+ already_handled=yes -+ break -+ fi -+ done -+ if test -z "$already_handled"; then -+ names_already_handled="$names_already_handled $name" -+ dnl See if it was already located by an earlier AC_LIB_LINKFLAGS -+ dnl or AC_LIB_HAVE_LINKFLAGS call. -+ uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'` -+ eval value=\"\$HAVE_LIB$uppername\" -+ if test -n "$value"; then -+ if test "$value" = yes; then -+ eval value=\"\$LIB$uppername\" -+ test -z "$value" || LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$value" -+ eval value=\"\$LTLIB$uppername\" -+ test -z "$value" || LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$value" -+ else -+ dnl An earlier call to AC_LIB_HAVE_LINKFLAGS has determined -+ dnl that this library doesn't exist. So just drop it. -+ : -+ fi -+ else -+ dnl Search the library lib$name in $additional_libdir and $LDFLAGS -+ dnl and the already constructed $LIBNAME/$LTLIBNAME. -+ found_dir= -+ found_la= -+ found_so= -+ found_a= -+ if test $use_additional = yes; then -+ if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then -+ found_dir="$additional_libdir" -+ found_so="$additional_libdir/lib$name.$shlibext" -+ if test -f "$additional_libdir/lib$name.la"; then -+ found_la="$additional_libdir/lib$name.la" -+ fi -+ else -+ if test -f "$additional_libdir/lib$name.$libext"; then -+ found_dir="$additional_libdir" -+ found_a="$additional_libdir/lib$name.$libext" -+ if test -f "$additional_libdir/lib$name.la"; then -+ found_la="$additional_libdir/lib$name.la" -+ fi -+ fi -+ fi -+ fi -+ if test "X$found_dir" = "X"; then -+ for x in $LDFLAGS $LTLIB[]NAME; do -+ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) -+ case "$x" in -+ -L*) -+ dir=`echo "X$x" | sed -e 's/^X-L//'` -+ if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then -+ found_dir="$dir" -+ found_so="$dir/lib$name.$shlibext" -+ if test -f "$dir/lib$name.la"; then -+ found_la="$dir/lib$name.la" -+ fi -+ else -+ if test -f "$dir/lib$name.$libext"; then -+ found_dir="$dir" -+ found_a="$dir/lib$name.$libext" -+ if test -f "$dir/lib$name.la"; then -+ found_la="$dir/lib$name.la" -+ fi -+ fi -+ fi -+ ;; -+ esac -+ if test "X$found_dir" != "X"; then -+ break -+ fi -+ done -+ fi -+ if test "X$found_dir" != "X"; then -+ dnl Found the library. -+ LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$found_dir -l$name" -+ if test "X$found_so" != "X"; then -+ dnl Linking with a shared library. We attempt to hardcode its -+ dnl directory into the executable's runpath, unless it's the -+ dnl standard /usr/lib. -+ if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then -+ dnl No hardcoding is needed. -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" -+ else -+ dnl Use an explicit option to hardcode DIR into the resulting -+ dnl binary. -+ dnl Potentially add DIR to ltrpathdirs. -+ dnl The ltrpathdirs will be appended to $LTLIBNAME at the end. -+ haveit= -+ for x in $ltrpathdirs; do -+ if test "X$x" = "X$found_dir"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ ltrpathdirs="$ltrpathdirs $found_dir" -+ fi -+ dnl The hardcoding into $LIBNAME is system dependent. -+ if test "$hardcode_direct" = yes; then -+ dnl Using DIR/libNAME.so during linking hardcodes DIR into the -+ dnl resulting binary. -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" -+ else -+ if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then -+ dnl Use an explicit option to hardcode DIR into the resulting -+ dnl binary. -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" -+ dnl Potentially add DIR to rpathdirs. -+ dnl The rpathdirs will be appended to $LIBNAME at the end. -+ haveit= -+ for x in $rpathdirs; do -+ if test "X$x" = "X$found_dir"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ rpathdirs="$rpathdirs $found_dir" -+ fi -+ else -+ dnl Rely on "-L$found_dir". -+ dnl But don't add it if it's already contained in the LDFLAGS -+ dnl or the already constructed $LIBNAME -+ haveit= -+ for x in $LDFLAGS $LIB[]NAME; do -+ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) -+ if test "X$x" = "X-L$found_dir"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir" -+ fi -+ if test "$hardcode_minus_L" != no; then -+ dnl FIXME: Not sure whether we should use -+ dnl "-L$found_dir -l$name" or "-L$found_dir $found_so" -+ dnl here. -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" -+ else -+ dnl We cannot use $hardcode_runpath_var and LD_RUN_PATH -+ dnl here, because this doesn't fit in flags passed to the -+ dnl compiler. So give up. No hardcoding. This affects only -+ dnl very old systems. -+ dnl FIXME: Not sure whether we should use -+ dnl "-L$found_dir -l$name" or "-L$found_dir $found_so" -+ dnl here. -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name" -+ fi -+ fi -+ fi -+ fi -+ else -+ if test "X$found_a" != "X"; then -+ dnl Linking with a static library. -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_a" -+ else -+ dnl We shouldn't come here, but anyway it's good to have a -+ dnl fallback. -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir -l$name" -+ fi -+ fi -+ dnl Assume the include files are nearby. -+ additional_includedir= -+ case "$found_dir" in -+ */lib | */lib/) -+ basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'` -+ additional_includedir="$basedir/include" -+ ;; -+ esac -+ if test "X$additional_includedir" != "X"; then -+ dnl Potentially add $additional_includedir to $INCNAME. -+ dnl But don't add it -+ dnl 1. if it's the standard /usr/include, -+ dnl 2. if it's /usr/local/include and we are using GCC on Linux, -+ dnl 3. if it's already present in $CPPFLAGS or the already -+ dnl constructed $INCNAME, -+ dnl 4. if it doesn't exist as a directory. -+ if test "X$additional_includedir" != "X/usr/include"; then -+ haveit= -+ if test "X$additional_includedir" = "X/usr/local/include"; then -+ if test -n "$GCC"; then -+ case $host_os in -+ linux*) haveit=yes;; -+ esac -+ fi -+ fi -+ if test -z "$haveit"; then -+ for x in $CPPFLAGS $INC[]NAME; do -+ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) -+ if test "X$x" = "X-I$additional_includedir"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ if test -d "$additional_includedir"; then -+ dnl Really add $additional_includedir to $INCNAME. -+ INC[]NAME="${INC[]NAME}${INC[]NAME:+ }-I$additional_includedir" -+ fi -+ fi -+ fi -+ fi -+ fi -+ dnl Look for dependencies. -+ if test -n "$found_la"; then -+ dnl Read the .la file. It defines the variables -+ dnl dlname, library_names, old_library, dependency_libs, current, -+ dnl age, revision, installed, dlopen, dlpreopen, libdir. -+ save_libdir="$libdir" -+ case "$found_la" in -+ */* | *\\*) . "$found_la" ;; -+ *) . "./$found_la" ;; -+ esac -+ libdir="$save_libdir" -+ dnl We use only dependency_libs. -+ for dep in $dependency_libs; do -+ case "$dep" in -+ -L*) -+ additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` -+ dnl Potentially add $additional_libdir to $LIBNAME and $LTLIBNAME. -+ dnl But don't add it -+ dnl 1. if it's the standard /usr/lib, -+ dnl 2. if it's /usr/local/lib and we are using GCC on Linux, -+ dnl 3. if it's already present in $LDFLAGS or the already -+ dnl constructed $LIBNAME, -+ dnl 4. if it doesn't exist as a directory. -+ if test "X$additional_libdir" != "X/usr/lib"; then -+ haveit= -+ if test "X$additional_libdir" = "X/usr/local/lib"; then -+ if test -n "$GCC"; then -+ case $host_os in -+ linux*) haveit=yes;; -+ esac -+ fi -+ fi -+ if test -z "$haveit"; then -+ haveit= -+ for x in $LDFLAGS $LIB[]NAME; do -+ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) -+ if test "X$x" = "X-L$additional_libdir"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ if test -d "$additional_libdir"; then -+ dnl Really add $additional_libdir to $LIBNAME. -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$additional_libdir" -+ fi -+ fi -+ haveit= -+ for x in $LDFLAGS $LTLIB[]NAME; do -+ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) -+ if test "X$x" = "X-L$additional_libdir"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ if test -d "$additional_libdir"; then -+ dnl Really add $additional_libdir to $LTLIBNAME. -+ LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$additional_libdir" -+ fi -+ fi -+ fi -+ fi -+ ;; -+ -R*) -+ dir=`echo "X$dep" | sed -e 's/^X-R//'` -+ if test "$enable_rpath" != no; then -+ dnl Potentially add DIR to rpathdirs. -+ dnl The rpathdirs will be appended to $LIBNAME at the end. -+ haveit= -+ for x in $rpathdirs; do -+ if test "X$x" = "X$dir"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ rpathdirs="$rpathdirs $dir" -+ fi -+ dnl Potentially add DIR to ltrpathdirs. -+ dnl The ltrpathdirs will be appended to $LTLIBNAME at the end. -+ haveit= -+ for x in $ltrpathdirs; do -+ if test "X$x" = "X$dir"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ ltrpathdirs="$ltrpathdirs $dir" -+ fi -+ fi -+ ;; -+ -l*) -+ dnl Handle this in the next round. -+ names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'` -+ ;; -+ *.la) -+ dnl Handle this in the next round. Throw away the .la's -+ dnl directory; it is already contained in a preceding -L -+ dnl option. -+ names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` -+ ;; -+ *) -+ dnl Most likely an immediate library name. -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$dep" -+ LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$dep" -+ ;; -+ esac -+ done -+ fi -+ else -+ dnl Didn't find the library; assume it is in the system directories -+ dnl known to the linker and runtime loader. (All the system -+ dnl directories known to the linker should also be known to the -+ dnl runtime loader, otherwise the system is severely misconfigured.) -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name" -+ LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-l$name" -+ fi -+ fi -+ fi -+ done -+ done -+ if test "X$rpathdirs" != "X"; then -+ if test -n "$hardcode_libdir_separator"; then -+ dnl Weird platform: only the last -rpath option counts, the user must -+ dnl pass all path elements in one option. We can arrange that for a -+ dnl single library, but not when more than one $LIBNAMEs are used. -+ alldirs= -+ for found_dir in $rpathdirs; do -+ alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir" -+ done -+ dnl Note: hardcode_libdir_flag_spec uses $libdir and $wl. -+ acl_save_libdir="$libdir" -+ libdir="$alldirs" -+ eval flag=\"$hardcode_libdir_flag_spec\" -+ libdir="$acl_save_libdir" -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag" -+ else -+ dnl The -rpath options are cumulative. -+ for found_dir in $rpathdirs; do -+ acl_save_libdir="$libdir" -+ libdir="$found_dir" -+ eval flag=\"$hardcode_libdir_flag_spec\" -+ libdir="$acl_save_libdir" -+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag" -+ done -+ fi -+ fi -+ if test "X$ltrpathdirs" != "X"; then -+ dnl When using libtool, the option that works for both libraries and -+ dnl executables is -R. The -R options are cumulative. -+ for found_dir in $ltrpathdirs; do -+ LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-R$found_dir" -+ done -+ fi -+]) -+ -+dnl AC_LIB_APPENDTOVAR(VAR, CONTENTS) appends the elements of CONTENTS to VAR, -+dnl unless already present in VAR. -+dnl Works only for CPPFLAGS, not for LIB* variables because that sometimes -+dnl contains two or three consecutive elements that belong together. -+AC_DEFUN([AC_LIB_APPENDTOVAR], -+[ -+ for element in [$2]; do -+ haveit= -+ for x in $[$1]; do -+ AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) -+ if test "X$x" = "X$element"; then -+ haveit=yes -+ break -+ fi -+ done -+ if test -z "$haveit"; then -+ [$1]="${[$1]}${[$1]:+ }$element" -+ fi -+ done -+]) -+ -+# lib-ld.m4 serial 2 (gettext-0.12) -+dnl Copyright (C) 1996-2003 Free Software Foundation, Inc. -+dnl This file is free software, distributed under the terms of the GNU -+dnl General Public License. As a special exception to the GNU General -+dnl Public License, this file may be distributed as part of a program -+dnl that contains a configuration script generated by Autoconf, under -+dnl the same distribution terms as the rest of that program. -+ -+dnl Subroutines of libtool.m4, -+dnl with replacements s/AC_/AC_LIB/ and s/lt_cv/acl_cv/ to avoid collision -+dnl with libtool.m4. -+ -+dnl From libtool-1.4. Sets the variable with_gnu_ld to yes or no. -+AC_DEFUN([AC_LIB_PROG_LD_GNU], -+[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], acl_cv_prog_gnu_ld, -+[# I'd rather use --version here, but apparently some GNU ld's only accept -v. -+if $LD -v 2>&1 &5; then -+ acl_cv_prog_gnu_ld=yes -+else -+ acl_cv_prog_gnu_ld=no -+fi]) -+with_gnu_ld=$acl_cv_prog_gnu_ld -+]) -+ -+dnl From libtool-1.4. Sets the variable LD. -+AC_DEFUN([AC_LIB_PROG_LD], -+[AC_ARG_WITH(gnu-ld, -+[ --with-gnu-ld assume the C compiler uses GNU ld [default=no]], -+test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no) -+AC_REQUIRE([AC_PROG_CC])dnl -+AC_REQUIRE([AC_CANONICAL_HOST])dnl -+# Prepare PATH_SEPARATOR. -+# The user is always right. -+if test "${PATH_SEPARATOR+set}" != set; then -+ echo "#! /bin/sh" >conf$$.sh -+ echo "exit 0" >>conf$$.sh -+ chmod +x conf$$.sh -+ if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then -+ PATH_SEPARATOR=';' -+ else -+ PATH_SEPARATOR=: - fi -+ rm -f conf$$.sh -+fi -+ac_prog=ld -+if test "$GCC" = yes; then -+ # Check if gcc -print-prog-name=ld gives a path. -+ AC_MSG_CHECKING([for ld used by GCC]) -+ case $host in -+ *-*-mingw*) -+ # gcc leaves a trailing carriage return which upsets mingw -+ ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; -+ *) -+ ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; -+ esac -+ case $ac_prog in -+ # Accept absolute paths. -+ [[\\/]* | [A-Za-z]:[\\/]*)] -+ [re_direlt='/[^/][^/]*/\.\./'] -+ # Canonicalize the path of ld -+ ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` -+ while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do -+ ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` -+ done -+ test -z "$LD" && LD="$ac_prog" -+ ;; -+ "") -+ # If it fails, then pretend we aren't using GCC. -+ ac_prog=ld -+ ;; -+ *) -+ # If it is relative, then search for the first ld in PATH. -+ with_gnu_ld=unknown -+ ;; -+ esac -+elif test "$with_gnu_ld" = yes; then -+ AC_MSG_CHECKING([for GNU ld]) -+else -+ AC_MSG_CHECKING([for non-GNU ld]) -+fi -+AC_CACHE_VAL(acl_cv_path_LD, -+[if test -z "$LD"; then -+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" -+ for ac_dir in $PATH; do -+ test -z "$ac_dir" && ac_dir=. -+ if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then -+ acl_cv_path_LD="$ac_dir/$ac_prog" -+ # Check to see if the program is GNU ld. I'd rather use --version, -+ # but apparently some GNU ld's only accept -v. -+ # Break only if it was the GNU/non-GNU ld that we prefer. -+ if "$acl_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then -+ test "$with_gnu_ld" != no && break -+ else -+ test "$with_gnu_ld" != yes && break -+ fi -+ fi -+ done -+ IFS="$ac_save_ifs" -+else -+ acl_cv_path_LD="$LD" # Let the user override the test with a path. -+fi]) -+LD="$acl_cv_path_LD" -+if test -n "$LD"; then -+ AC_MSG_RESULT($LD) -+else -+ AC_MSG_RESULT(no) -+fi -+test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) -+AC_LIB_PROG_LD_GNU - ]) - --dnl old names --AC_DEFUN(AM_PROG_LIBTOOL, [indir([AC_PROG_LIBTOOL])])dnl --AC_DEFUN(AM_ENABLE_SHARED, [indir([AC_ENABLE_SHARED], $@)])dnl --AC_DEFUN(AM_ENABLE_STATIC, [indir([AC_ENABLE_STATIC], $@)])dnl --AC_DEFUN(AM_DISABLE_SHARED, [indir([AC_DISABLE_SHARED], $@)])dnl --AC_DEFUN(AM_DISABLE_STATIC, [indir([AC_DISABLE_STATIC], $@)])dnl --AC_DEFUN(AM_PROG_LD, [indir([AC_PROG_LD])])dnl --AC_DEFUN(AM_PROG_NM, [indir([AC_PROG_NM])])dnl -- --dnl This is just to silence aclocal about the macro not being used --ifelse([AC_DISABLE_FAST_INSTALL])dnl -- - # Like AC_CONFIG_HEADER, but automatically create stamp file. - --AC_DEFUN(AM_CONFIG_HEADER, -+AC_DEFUN([AM_CONFIG_HEADER], - [AC_PREREQ([2.12]) - AC_CONFIG_HEADER([$1]) - dnl When config.status generates a header, we must update the stamp-h file. -@@ -451,8 +4496,9 @@ - dnl Usage: - dnl AM_INIT_AUTOMAKE(package,version, [no-define]) - --AC_DEFUN(AM_INIT_AUTOMAKE, --[AC_REQUIRE([AC_PROG_INSTALL]) -+AC_DEFUN([AM_INIT_AUTOMAKE], -+[AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl -+AC_REQUIRE([AC_PROG_INSTALL]) - PACKAGE=[$1] - AC_SUBST(PACKAGE) - VERSION=[$2] -@@ -468,18 +4514,47 @@ - AC_REQUIRE([AC_ARG_PROGRAM]) - dnl FIXME This is truly gross. - missing_dir=`cd $ac_aux_dir && pwd` --AM_MISSING_PROG(ACLOCAL, aclocal, $missing_dir) -+AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version}, $missing_dir) - AM_MISSING_PROG(AUTOCONF, autoconf, $missing_dir) --AM_MISSING_PROG(AUTOMAKE, automake, $missing_dir) -+AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version}, $missing_dir) - AM_MISSING_PROG(AUTOHEADER, autoheader, $missing_dir) - AM_MISSING_PROG(MAKEINFO, makeinfo, $missing_dir) - AC_REQUIRE([AC_PROG_MAKE_SET])]) - -+# Copyright 2002 Free Software Foundation, Inc. -+ -+# This program is free software; you can redistribute it and/or modify -+# it under the terms of the GNU General Public License as published by -+# the Free Software Foundation; either version 2, or (at your option) -+# any later version. -+ -+# This program is distributed in the hope that it will be useful, -+# but WITHOUT ANY WARRANTY; without even the implied warranty of -+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+# GNU General Public License for more details. -+ -+# You should have received a copy of the GNU General Public License -+# along with this program; if not, write to the Free Software -+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA -+ -+# AM_AUTOMAKE_VERSION(VERSION) -+# ---------------------------- -+# Automake X.Y traces this macro to ensure aclocal.m4 has been -+# generated from the m4 files accompanying Automake X.Y. -+AC_DEFUN([AM_AUTOMAKE_VERSION],[am__api_version="1.4"]) -+ -+# AM_SET_CURRENT_AUTOMAKE_VERSION -+# ------------------------------- -+# Call AM_AUTOMAKE_VERSION so it can be traced. -+# This function is AC_REQUIREd by AC_INIT_AUTOMAKE. -+AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], -+ [AM_AUTOMAKE_VERSION([1.4-p6])]) -+ - # - # Check to make sure that the build environment is sane. - # - --AC_DEFUN(AM_SANITY_CHECK, -+AC_DEFUN([AM_SANITY_CHECK], - [AC_MSG_CHECKING([whether build environment is sane]) - # Just in case - sleep 1 -@@ -520,7 +4595,7 @@ - - dnl AM_MISSING_PROG(NAME, PROGRAM, DIRECTORY) - dnl The program must properly implement --version. --AC_DEFUN(AM_MISSING_PROG, -+AC_DEFUN([AM_MISSING_PROG], - [AC_MSG_CHECKING(for working $2) - # Run test in a subshell; some versions of sh will print an error if - # an executable is not found, even if stderr is redirected. -@@ -572,10 +4647,37 @@ - AC_SUBST(ECHO_C)dnl - ]) - -+# isc-posix.m4 serial 2 (gettext-0.11.2) -+dnl Copyright (C) 1995-2002 Free Software Foundation, Inc. -+dnl This file is free software, distributed under the terms of the GNU -+dnl General Public License. As a special exception to the GNU General -+dnl Public License, this file may be distributed as part of a program -+dnl that contains a configuration script generated by Autoconf, under -+dnl the same distribution terms as the rest of that program. -+ -+# This file is not needed with autoconf-2.53 and newer. Remove it in 2005. -+ -+# This test replaces the one in autoconf. -+# Currently this macro should have the same name as the autoconf macro -+# because gettext's gettext.m4 (distributed in the automake package) -+# still uses it. Otherwise, the use in gettext.m4 makes autoheader -+# give these diagnostics: -+# configure.in:556: AC_TRY_COMPILE was called before AC_ISC_POSIX -+# configure.in:556: AC_TRY_RUN was called before AC_ISC_POSIX -+ -+undefine([AC_ISC_POSIX]) -+ -+AC_DEFUN([AC_ISC_POSIX], -+ [ -+ dnl This test replaces the obsolescent AC_ISC_POSIX kludge. -+ AC_CHECK_LIB(cposix, strerror, [LIBS="$LIBS -lcposix"]) -+ ] -+) -+ - - # serial 1 - --AC_DEFUN(AM_C_PROTOTYPES, -+AC_DEFUN([AM_C_PROTOTYPES], - [AC_REQUIRE([AM_PROG_CC_STDC]) - AC_REQUIRE([AC_PROG_CPP]) - AC_MSG_CHECKING([for function prototypes]) -@@ -612,7 +4714,7 @@ - # program @code{ansi2knr}, which comes with Ghostscript. - # @end defmac - --AC_DEFUN(AM_PROG_CC_STDC, -+AC_DEFUN([AM_PROG_CC_STDC], - [AC_REQUIRE([AC_PROG_CC]) - AC_BEFORE([$0], [AC_C_INLINE]) - AC_BEFORE([$0], [AC_C_CONST]) -@@ -862,7 +4964,7 @@ - - # serial 1 - --AC_DEFUN(AM_WITH_DMALLOC, -+AC_DEFUN([AM_WITH_DMALLOC], - [AC_MSG_CHECKING(if malloc debugging is wanted) - AC_ARG_WITH(dmalloc, - [ --with-dmalloc use dmalloc, as in -@@ -1011,18 +5113,1138 @@ - fi - fi]) - --# Define a conditional. -+# gettext.m4 serial 20 (gettext-0.12) -+dnl Copyright (C) 1995-2003 Free Software Foundation, Inc. -+dnl This file is free software, distributed under the terms of the GNU -+dnl General Public License. As a special exception to the GNU General -+dnl Public License, this file may be distributed as part of a program -+dnl that contains a configuration script generated by Autoconf, under -+dnl the same distribution terms as the rest of that program. -+dnl -+dnl This file can can be used in projects which are not available under -+dnl the GNU General Public License or the GNU Library General Public -+dnl License but which still want to provide support for the GNU gettext -+dnl functionality. -+dnl Please note that the actual code of the GNU gettext library is covered -+dnl by the GNU Library General Public License, and the rest of the GNU -+dnl gettext package package is covered by the GNU General Public License. -+dnl They are *not* in the public domain. -+ -+dnl Authors: -+dnl Ulrich Drepper , 1995-2000. -+dnl Bruno Haible , 2000-2003. -+ -+dnl Macro to add for using GNU gettext. -+ -+dnl Usage: AM_GNU_GETTEXT([INTLSYMBOL], [NEEDSYMBOL], [INTLDIR]). -+dnl INTLSYMBOL can be one of 'external', 'no-libtool', 'use-libtool'. The -+dnl default (if it is not specified or empty) is 'no-libtool'. -+dnl INTLSYMBOL should be 'external' for packages with no intl directory, -+dnl and 'no-libtool' or 'use-libtool' for packages with an intl directory. -+dnl If INTLSYMBOL is 'use-libtool', then a libtool library -+dnl $(top_builddir)/intl/libintl.la will be created (shared and/or static, -+dnl depending on --{enable,disable}-{shared,static} and on the presence of -+dnl AM-DISABLE-SHARED). If INTLSYMBOL is 'no-libtool', a static library -+dnl $(top_builddir)/intl/libintl.a will be created. -+dnl If NEEDSYMBOL is specified and is 'need-ngettext', then GNU gettext -+dnl implementations (in libc or libintl) without the ngettext() function -+dnl will be ignored. If NEEDSYMBOL is specified and is -+dnl 'need-formatstring-macros', then GNU gettext implementations that don't -+dnl support the ISO C 99 formatstring macros will be ignored. -+dnl INTLDIR is used to find the intl libraries. If empty, -+dnl the value `$(top_builddir)/intl/' is used. -+dnl -+dnl The result of the configuration is one of three cases: -+dnl 1) GNU gettext, as included in the intl subdirectory, will be compiled -+dnl and used. -+dnl Catalog format: GNU --> install in $(datadir) -+dnl Catalog extension: .mo after installation, .gmo in source tree -+dnl 2) GNU gettext has been found in the system's C library. -+dnl Catalog format: GNU --> install in $(datadir) -+dnl Catalog extension: .mo after installation, .gmo in source tree -+dnl 3) No internationalization, always use English msgid. -+dnl Catalog format: none -+dnl Catalog extension: none -+dnl If INTLSYMBOL is 'external', only cases 2 and 3 can occur. -+dnl The use of .gmo is historical (it was needed to avoid overwriting the -+dnl GNU format catalogs when building on a platform with an X/Open gettext), -+dnl but we keep it in order not to force irrelevant filename changes on the -+dnl maintainers. -+dnl -+AC_DEFUN([AM_GNU_GETTEXT], -+[ -+ dnl Argument checking. -+ ifelse([$1], [], , [ifelse([$1], [external], , [ifelse([$1], [no-libtool], , [ifelse([$1], [use-libtool], , -+ [errprint([ERROR: invalid first argument to AM_GNU_GETTEXT -+])])])])]) -+ ifelse([$2], [], , [ifelse([$2], [need-ngettext], , [ifelse([$2], [need-formatstring-macros], , -+ [errprint([ERROR: invalid second argument to AM_GNU_GETTEXT -+])])])]) -+ define(gt_included_intl, ifelse([$1], [external], [no], [yes])) -+ define(gt_libtool_suffix_prefix, ifelse([$1], [use-libtool], [l], [])) -+ -+ AC_REQUIRE([AM_PO_SUBDIRS])dnl -+ ifelse(gt_included_intl, yes, [ -+ AC_REQUIRE([AM_INTL_SUBDIR])dnl -+ ]) - --AC_DEFUN(AM_CONDITIONAL, --[AC_SUBST($1_TRUE) --AC_SUBST($1_FALSE) --if $2; then -- $1_TRUE= -- $1_FALSE='#' -+ dnl Prerequisites of AC_LIB_LINKFLAGS_BODY. -+ AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) -+ AC_REQUIRE([AC_LIB_RPATH]) -+ -+ dnl Sometimes libintl requires libiconv, so first search for libiconv. -+ dnl Ideally we would do this search only after the -+ dnl if test "$USE_NLS" = "yes"; then -+ dnl if test "$gt_cv_func_gnugettext_libc" != "yes"; then -+ dnl tests. But if configure.in invokes AM_ICONV after AM_GNU_GETTEXT -+ dnl the configure script would need to contain the same shell code -+ dnl again, outside any 'if'. There are two solutions: -+ dnl - Invoke AM_ICONV_LINKFLAGS_BODY here, outside any 'if'. -+ dnl - Control the expansions in more detail using AC_PROVIDE_IFELSE. -+ dnl Since AC_PROVIDE_IFELSE is only in autoconf >= 2.52 and not -+ dnl documented, we avoid it. -+ ifelse(gt_included_intl, yes, , [ -+ AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY]) -+ ]) -+ -+ dnl Set USE_NLS. -+ AM_NLS -+ -+ ifelse(gt_included_intl, yes, [ -+ BUILD_INCLUDED_LIBINTL=no -+ USE_INCLUDED_LIBINTL=no -+ ]) -+ LIBINTL= -+ LTLIBINTL= -+ POSUB= -+ -+ dnl If we use NLS figure out what method -+ if test "$USE_NLS" = "yes"; then -+ gt_use_preinstalled_gnugettext=no -+ ifelse(gt_included_intl, yes, [ -+ AC_MSG_CHECKING([whether included gettext is requested]) -+ AC_ARG_WITH(included-gettext, -+ [ --with-included-gettext use the GNU gettext library included here], -+ nls_cv_force_use_gnu_gettext=$withval, -+ nls_cv_force_use_gnu_gettext=no) -+ AC_MSG_RESULT($nls_cv_force_use_gnu_gettext) -+ -+ nls_cv_use_gnu_gettext="$nls_cv_force_use_gnu_gettext" -+ if test "$nls_cv_force_use_gnu_gettext" != "yes"; then -+ ]) -+ dnl User does not insist on using GNU NLS library. Figure out what -+ dnl to use. If GNU gettext is available we use this. Else we have -+ dnl to fall back to GNU NLS library. -+ -+ dnl Add a version number to the cache macros. -+ define([gt_api_version], ifelse([$2], [need-formatstring-macros], 3, ifelse([$2], [need-ngettext], 2, 1))) -+ define([gt_cv_func_gnugettext_libc], [gt_cv_func_gnugettext]gt_api_version[_libc]) -+ define([gt_cv_func_gnugettext_libintl], [gt_cv_func_gnugettext]gt_api_version[_libintl]) -+ -+ AC_CACHE_CHECK([for GNU gettext in libc], gt_cv_func_gnugettext_libc, -+ [AC_TRY_LINK([#include -+]ifelse([$2], [need-formatstring-macros], -+[#ifndef __GNU_GETTEXT_SUPPORTED_REVISION -+#define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1) -+#endif -+changequote(,)dnl -+typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1]; -+changequote([,])dnl -+], [])[extern int _nl_msg_cat_cntr; -+extern int *_nl_domain_bindings;], -+ [bindtextdomain ("", ""); -+return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_domain_bindings], -+ gt_cv_func_gnugettext_libc=yes, -+ gt_cv_func_gnugettext_libc=no)]) -+ -+ if test "$gt_cv_func_gnugettext_libc" != "yes"; then -+ dnl Sometimes libintl requires libiconv, so first search for libiconv. -+ ifelse(gt_included_intl, yes, , [ -+ AM_ICONV_LINK -+ ]) -+ dnl Search for libintl and define LIBINTL, LTLIBINTL and INCINTL -+ dnl accordingly. Don't use AC_LIB_LINKFLAGS_BODY([intl],[iconv]) -+ dnl because that would add "-liconv" to LIBINTL and LTLIBINTL -+ dnl even if libiconv doesn't exist. -+ AC_LIB_LINKFLAGS_BODY([intl]) -+ AC_CACHE_CHECK([for GNU gettext in libintl], -+ gt_cv_func_gnugettext_libintl, -+ [gt_save_CPPFLAGS="$CPPFLAGS" -+ CPPFLAGS="$CPPFLAGS $INCINTL" -+ gt_save_LIBS="$LIBS" -+ LIBS="$LIBS $LIBINTL" -+ dnl Now see whether libintl exists and does not depend on libiconv. -+ AC_TRY_LINK([#include -+]ifelse([$2], [need-formatstring-macros], -+[#ifndef __GNU_GETTEXT_SUPPORTED_REVISION -+#define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1) -+#endif -+changequote(,)dnl -+typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1]; -+changequote([,])dnl -+], [])[extern int _nl_msg_cat_cntr; -+extern -+#ifdef __cplusplus -+"C" -+#endif -+const char *_nl_expand_alias ();], -+ [bindtextdomain ("", ""); -+return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_expand_alias (0)], -+ gt_cv_func_gnugettext_libintl=yes, -+ gt_cv_func_gnugettext_libintl=no) -+ dnl Now see whether libintl exists and depends on libiconv. -+ if test "$gt_cv_func_gnugettext_libintl" != yes && test -n "$LIBICONV"; then -+ LIBS="$LIBS $LIBICONV" -+ AC_TRY_LINK([#include -+]ifelse([$2], [need-formatstring-macros], -+[#ifndef __GNU_GETTEXT_SUPPORTED_REVISION -+#define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1) -+#endif -+changequote(,)dnl -+typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1]; -+changequote([,])dnl -+], [])[extern int _nl_msg_cat_cntr; -+extern -+#ifdef __cplusplus -+"C" -+#endif -+const char *_nl_expand_alias ();], -+ [bindtextdomain ("", ""); -+return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_expand_alias (0)], -+ [LIBINTL="$LIBINTL $LIBICONV" -+ LTLIBINTL="$LTLIBINTL $LTLIBICONV" -+ gt_cv_func_gnugettext_libintl=yes -+ ]) -+ fi -+ CPPFLAGS="$gt_save_CPPFLAGS" -+ LIBS="$gt_save_LIBS"]) -+ fi -+ -+ dnl If an already present or preinstalled GNU gettext() is found, -+ dnl use it. But if this macro is used in GNU gettext, and GNU -+ dnl gettext is already preinstalled in libintl, we update this -+ dnl libintl. (Cf. the install rule in intl/Makefile.in.) -+ if test "$gt_cv_func_gnugettext_libc" = "yes" \ -+ || { test "$gt_cv_func_gnugettext_libintl" = "yes" \ -+ && test "$PACKAGE" != gettext-runtime \ -+ && test "$PACKAGE" != gettext-tools; }; then -+ gt_use_preinstalled_gnugettext=yes -+ else -+ dnl Reset the values set by searching for libintl. -+ LIBINTL= -+ LTLIBINTL= -+ INCINTL= -+ fi -+ -+ ifelse(gt_included_intl, yes, [ -+ if test "$gt_use_preinstalled_gnugettext" != "yes"; then -+ dnl GNU gettext is not found in the C library. -+ dnl Fall back on included GNU gettext library. -+ nls_cv_use_gnu_gettext=yes -+ fi -+ fi -+ -+ if test "$nls_cv_use_gnu_gettext" = "yes"; then -+ dnl Mark actions used to generate GNU NLS library. -+ BUILD_INCLUDED_LIBINTL=yes -+ USE_INCLUDED_LIBINTL=yes -+ LIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.[]gt_libtool_suffix_prefix[]a $LIBICONV" -+ LTLIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.[]gt_libtool_suffix_prefix[]a $LTLIBICONV" -+ LIBS=`echo " $LIBS " | sed -e 's/ -lintl / /' -e 's/^ //' -e 's/ $//'` -+ fi -+ -+ if test "$gt_use_preinstalled_gnugettext" = "yes" \ -+ || test "$nls_cv_use_gnu_gettext" = "yes"; then -+ dnl Mark actions to use GNU gettext tools. -+ CATOBJEXT=.gmo -+ fi -+ ]) -+ -+ if test "$gt_use_preinstalled_gnugettext" = "yes" \ -+ || test "$nls_cv_use_gnu_gettext" = "yes"; then -+ AC_DEFINE(ENABLE_NLS, 1, -+ [Define to 1 if translation of program messages to the user's native language -+ is requested.]) -+ else -+ USE_NLS=no -+ fi -+ fi -+ -+ AC_MSG_CHECKING([whether to use NLS]) -+ AC_MSG_RESULT([$USE_NLS]) -+ if test "$USE_NLS" = "yes"; then -+ AC_MSG_CHECKING([where the gettext function comes from]) -+ if test "$gt_use_preinstalled_gnugettext" = "yes"; then -+ if test "$gt_cv_func_gnugettext_libintl" = "yes"; then -+ gt_source="external libintl" -+ else -+ gt_source="libc" -+ fi -+ else -+ gt_source="included intl directory" -+ fi -+ AC_MSG_RESULT([$gt_source]) -+ fi -+ -+ if test "$USE_NLS" = "yes"; then -+ -+ if test "$gt_use_preinstalled_gnugettext" = "yes"; then -+ if test "$gt_cv_func_gnugettext_libintl" = "yes"; then -+ AC_MSG_CHECKING([how to link with libintl]) -+ AC_MSG_RESULT([$LIBINTL]) -+ AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCINTL]) -+ fi -+ -+ dnl For backward compatibility. Some packages may be using this. -+ AC_DEFINE(HAVE_GETTEXT, 1, -+ [Define if the GNU gettext() function is already present or preinstalled.]) -+ AC_DEFINE(HAVE_DCGETTEXT, 1, -+ [Define if the GNU dcgettext() function is already present or preinstalled.]) -+ fi -+ -+ dnl We need to process the po/ directory. -+ POSUB=po -+ fi -+ -+ ifelse(gt_included_intl, yes, [ -+ dnl If this is used in GNU gettext we have to set BUILD_INCLUDED_LIBINTL -+ dnl to 'yes' because some of the testsuite requires it. -+ if test "$PACKAGE" = gettext-runtime || test "$PACKAGE" = gettext-tools; then -+ BUILD_INCLUDED_LIBINTL=yes -+ fi -+ -+ dnl Make all variables we use known to autoconf. -+ AC_SUBST(BUILD_INCLUDED_LIBINTL) -+ AC_SUBST(USE_INCLUDED_LIBINTL) -+ AC_SUBST(CATOBJEXT) -+ -+ dnl For backward compatibility. Some configure.ins may be using this. -+ nls_cv_header_intl= -+ nls_cv_header_libgt= -+ -+ dnl For backward compatibility. Some Makefiles may be using this. -+ DATADIRNAME=share -+ AC_SUBST(DATADIRNAME) -+ -+ dnl For backward compatibility. Some Makefiles may be using this. -+ INSTOBJEXT=.mo -+ AC_SUBST(INSTOBJEXT) -+ -+ dnl For backward compatibility. Some Makefiles may be using this. -+ GENCAT=gencat -+ AC_SUBST(GENCAT) -+ -+ dnl For backward compatibility. Some Makefiles may be using this. -+ if test "$USE_INCLUDED_LIBINTL" = yes; then -+ INTLOBJS="\$(GETTOBJS)" -+ fi -+ AC_SUBST(INTLOBJS) -+ -+ dnl Enable libtool support if the surrounding package wishes it. -+ INTL_LIBTOOL_SUFFIX_PREFIX=gt_libtool_suffix_prefix -+ AC_SUBST(INTL_LIBTOOL_SUFFIX_PREFIX) -+ ]) -+ -+ dnl For backward compatibility. Some Makefiles may be using this. -+ INTLLIBS="$LIBINTL" -+ AC_SUBST(INTLLIBS) -+ -+ dnl Make all documented variables known to autoconf. -+ AC_SUBST(LIBINTL) -+ AC_SUBST(LTLIBINTL) -+ AC_SUBST(POSUB) -+]) -+ -+ -+dnl Checks for all prerequisites of the intl subdirectory, -+dnl except for INTL_LIBTOOL_SUFFIX_PREFIX (and possibly LIBTOOL), INTLOBJS, -+dnl USE_INCLUDED_LIBINTL, BUILD_INCLUDED_LIBINTL. -+AC_DEFUN([AM_INTL_SUBDIR], -+[ -+ AC_REQUIRE([AC_PROG_INSTALL])dnl -+ AC_REQUIRE([AM_MKINSTALLDIRS])dnl -+ AC_REQUIRE([AC_PROG_CC])dnl -+ AC_REQUIRE([AC_CANONICAL_HOST])dnl -+ AC_REQUIRE([AC_PROG_RANLIB])dnl -+ AC_REQUIRE([AC_ISC_POSIX])dnl -+ AC_REQUIRE([AC_HEADER_STDC])dnl -+ AC_REQUIRE([AC_C_CONST])dnl -+ AC_REQUIRE([AC_C_INLINE])dnl -+ AC_REQUIRE([AC_TYPE_OFF_T])dnl -+ AC_REQUIRE([AC_TYPE_SIZE_T])dnl -+ AC_REQUIRE([AC_FUNC_ALLOCA])dnl -+ AC_REQUIRE([AC_FUNC_MMAP])dnl -+ AC_REQUIRE([jm_GLIBC21])dnl -+ AC_REQUIRE([gt_INTDIV0])dnl -+ AC_REQUIRE([jm_AC_TYPE_UINTMAX_T])dnl -+ AC_REQUIRE([gt_HEADER_INTTYPES_H])dnl -+ AC_REQUIRE([gt_INTTYPES_PRI])dnl -+ -+ AC_CHECK_HEADERS([argz.h limits.h locale.h nl_types.h malloc.h stddef.h \ -+stdlib.h string.h unistd.h sys/param.h]) -+ AC_CHECK_FUNCS([feof_unlocked fgets_unlocked getc_unlocked getcwd getegid \ -+geteuid getgid getuid mempcpy munmap putenv setenv setlocale stpcpy \ -+strcasecmp strdup strtoul tsearch __argz_count __argz_stringify __argz_next \ -+__fsetlocking]) -+ -+ AM_ICONV -+ AM_LANGINFO_CODESET -+ if test $ac_cv_header_locale_h = yes; then -+ AM_LC_MESSAGES -+ fi -+ -+ dnl intl/plural.c is generated from intl/plural.y. It requires bison, -+ dnl because plural.y uses bison specific features. It requires at least -+ dnl bison-1.26 because earlier versions generate a plural.c that doesn't -+ dnl compile. -+ dnl bison is only needed for the maintainer (who touches plural.y). But in -+ dnl order to avoid separate Makefiles or --enable-maintainer-mode, we put -+ dnl the rule in general Makefile. Now, some people carelessly touch the -+ dnl files or have a broken "make" program, hence the plural.c rule will -+ dnl sometimes fire. To avoid an error, defines BISON to ":" if it is not -+ dnl present or too old. -+ AC_CHECK_PROGS([INTLBISON], [bison]) -+ if test -z "$INTLBISON"; then -+ ac_verc_fail=yes -+ else -+ dnl Found it, now check the version. -+ AC_MSG_CHECKING([version of bison]) -+changequote(<<,>>)dnl -+ ac_prog_version=`$INTLBISON --version 2>&1 | sed -n 's/^.*GNU Bison.* \([0-9]*\.[0-9.]*\).*$/\1/p'` -+ case $ac_prog_version in -+ '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; -+ 1.2[6-9]* | 1.[3-9][0-9]* | [2-9].*) -+changequote([,])dnl -+ ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; -+ *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; -+ esac -+ AC_MSG_RESULT([$ac_prog_version]) -+ fi -+ if test $ac_verc_fail = yes; then -+ INTLBISON=: -+ fi -+]) -+ -+ -+dnl Usage: AM_GNU_GETTEXT_VERSION([gettext-version]) -+AC_DEFUN([AM_GNU_GETTEXT_VERSION], []) -+ -+# po.m4 serial 1 (gettext-0.12) -+dnl Copyright (C) 1995-2003 Free Software Foundation, Inc. -+dnl This file is free software, distributed under the terms of the GNU -+dnl General Public License. As a special exception to the GNU General -+dnl Public License, this file may be distributed as part of a program -+dnl that contains a configuration script generated by Autoconf, under -+dnl the same distribution terms as the rest of that program. -+dnl -+dnl This file can can be used in projects which are not available under -+dnl the GNU General Public License or the GNU Library General Public -+dnl License but which still want to provide support for the GNU gettext -+dnl functionality. -+dnl Please note that the actual code of the GNU gettext library is covered -+dnl by the GNU Library General Public License, and the rest of the GNU -+dnl gettext package package is covered by the GNU General Public License. -+dnl They are *not* in the public domain. -+ -+dnl Authors: -+dnl Ulrich Drepper , 1995-2000. -+dnl Bruno Haible , 2000-2003. -+ -+dnl Checks for all prerequisites of the po subdirectory. -+AC_DEFUN([AM_PO_SUBDIRS], -+[ -+ AC_REQUIRE([AC_PROG_MAKE_SET])dnl -+ AC_REQUIRE([AC_PROG_INSTALL])dnl -+ AC_REQUIRE([AM_MKINSTALLDIRS])dnl -+ AC_REQUIRE([AM_NLS])dnl -+ -+ dnl Perform the following tests also if --disable-nls has been given, -+ dnl because they are needed for "make dist" to work. -+ -+ dnl Search for GNU msgfmt in the PATH. -+ dnl The first test excludes Solaris msgfmt and early GNU msgfmt versions. -+ dnl The second test excludes FreeBSD msgfmt. -+ AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt, -+ [$ac_dir/$ac_word --statistics /dev/null >/dev/null 2>&1 && -+ (if $ac_dir/$ac_word --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi)], -+ :) -+ AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) -+ -+ dnl Search for GNU xgettext 0.12 or newer in the PATH. -+ dnl The first test excludes Solaris xgettext and early GNU xgettext versions. -+ dnl The second test excludes FreeBSD xgettext. -+ AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext, -+ [$ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >/dev/null 2>&1 && -+ (if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi)], -+ :) -+ dnl Remove leftover from FreeBSD xgettext call. -+ rm -f messages.po -+ -+ dnl Search for GNU msgmerge 0.11 or newer in the PATH. -+ AM_PATH_PROG_WITH_TEST(MSGMERGE, msgmerge, -+ [$ac_dir/$ac_word --update -q /dev/null /dev/null >/dev/null 2>&1], :) -+ -+ dnl This could go away some day; the PATH_PROG_WITH_TEST already does it. -+ dnl Test whether we really found GNU msgfmt. -+ if test "$GMSGFMT" != ":"; then -+ dnl If it is no GNU msgfmt we define it as : so that the -+ dnl Makefiles still can work. -+ if $GMSGFMT --statistics /dev/null >/dev/null 2>&1 && -+ (if $GMSGFMT --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then -+ : ; -+ else -+ GMSGFMT=`echo "$GMSGFMT" | sed -e 's,^.*/,,'` -+ AC_MSG_RESULT( -+ [found $GMSGFMT program is not GNU msgfmt; ignore it]) -+ GMSGFMT=":" -+ fi -+ fi -+ -+ dnl This could go away some day; the PATH_PROG_WITH_TEST already does it. -+ dnl Test whether we really found GNU xgettext. -+ if test "$XGETTEXT" != ":"; then -+ dnl If it is no GNU xgettext we define it as : so that the -+ dnl Makefiles still can work. -+ if $XGETTEXT --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >/dev/null 2>&1 && -+ (if $XGETTEXT --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then -+ : ; -+ else -+ AC_MSG_RESULT( -+ [found xgettext program is not GNU xgettext; ignore it]) -+ XGETTEXT=":" -+ fi -+ dnl Remove leftover from FreeBSD xgettext call. -+ rm -f messages.po -+ fi -+ -+ AC_OUTPUT_COMMANDS([ -+ for ac_file in $CONFIG_FILES; do -+ # Support "outfile[:infile[:infile...]]" -+ case "$ac_file" in -+ *:*) ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; -+ esac -+ # PO directories have a Makefile.in generated from Makefile.in.in. -+ case "$ac_file" in */Makefile.in) -+ # Adjust a relative srcdir. -+ ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'` -+ ac_dir_suffix="/`echo "$ac_dir"|sed 's%^\./%%'`" -+ ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'` -+ # In autoconf-2.13 it is called $ac_given_srcdir. -+ # In autoconf-2.50 it is called $srcdir. -+ test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir" -+ case "$ac_given_srcdir" in -+ .) top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;; -+ /*) top_srcdir="$ac_given_srcdir" ;; -+ *) top_srcdir="$ac_dots$ac_given_srcdir" ;; -+ esac -+ if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then -+ rm -f "$ac_dir/POTFILES" -+ test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES" -+ cat "$ac_given_srcdir/$ac_dir/POTFILES.in" | sed -e "/^#/d" -e "/^[ ]*\$/d" -e "s,.*, $top_srcdir/& \\\\," | sed -e "\$s/\(.*\) \\\\/\1/" > "$ac_dir/POTFILES" -+ POMAKEFILEDEPS="POTFILES.in" -+ # ALL_LINGUAS, POFILES, GMOFILES, UPDATEPOFILES, DUMMYPOFILES depend -+ # on $ac_dir but don't depend on user-specified configuration -+ # parameters. -+ if test -f "$ac_given_srcdir/$ac_dir/LINGUAS"; then -+ # The LINGUAS file contains the set of available languages. -+ if test -n "$OBSOLETE_ALL_LINGUAS"; then -+ test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete" -+ fi -+ ALL_LINGUAS_=`sed -e "/^#/d" "$ac_given_srcdir/$ac_dir/LINGUAS"` -+ # Hide the ALL_LINGUAS assigment from automake. -+ eval 'ALL_LINGUAS''=$ALL_LINGUAS_' -+ POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS" -+ else -+ # The set of available languages was given in configure.in. -+ eval 'ALL_LINGUAS''=$OBSOLETE_ALL_LINGUAS' -+ fi -+ case "$ac_given_srcdir" in -+ .) srcdirpre= ;; -+ *) srcdirpre='$(srcdir)/' ;; -+ esac -+ POFILES= -+ GMOFILES= -+ UPDATEPOFILES= -+ DUMMYPOFILES= -+ for lang in $ALL_LINGUAS; do -+ POFILES="$POFILES $srcdirpre$lang.po" -+ GMOFILES="$GMOFILES $srcdirpre$lang.gmo" -+ UPDATEPOFILES="$UPDATEPOFILES $lang.po-update" -+ DUMMYPOFILES="$DUMMYPOFILES $lang.nop" -+ done -+ # CATALOGS depends on both $ac_dir and the user's LINGUAS -+ # environment variable. -+ INST_LINGUAS= -+ if test -n "$ALL_LINGUAS"; then -+ for presentlang in $ALL_LINGUAS; do -+ useit=no -+ if test "%UNSET%" != "$LINGUAS"; then -+ desiredlanguages="$LINGUAS" -+ else -+ desiredlanguages="$ALL_LINGUAS" -+ fi -+ for desiredlang in $desiredlanguages; do -+ # Use the presentlang catalog if desiredlang is -+ # a. equal to presentlang, or -+ # b. a variant of presentlang (because in this case, -+ # presentlang can be used as a fallback for messages -+ # which are not translated in the desiredlang catalog). -+ case "$desiredlang" in -+ "$presentlang"*) useit=yes;; -+ esac -+ done -+ if test $useit = yes; then -+ INST_LINGUAS="$INST_LINGUAS $presentlang" -+ fi -+ done -+ fi -+ CATALOGS= -+ if test -n "$INST_LINGUAS"; then -+ for lang in $INST_LINGUAS; do -+ CATALOGS="$CATALOGS $lang.gmo" -+ done -+ fi -+ test -n "$as_me" && echo "$as_me: creating $ac_dir/Makefile" || echo "creating $ac_dir/Makefile" -+ sed -e "/^POTFILES =/r $ac_dir/POTFILES" -e "/^# Makevars/r $ac_given_srcdir/$ac_dir/Makevars" -e "s|@POFILES@|$POFILES|g" -e "s|@GMOFILES@|$GMOFILES|g" -e "s|@UPDATEPOFILES@|$UPDATEPOFILES|g" -e "s|@DUMMYPOFILES@|$DUMMYPOFILES|g" -e "s|@CATALOGS@|$CATALOGS|g" -e "s|@POMAKEFILEDEPS@|$POMAKEFILEDEPS|g" "$ac_dir/Makefile.in" > "$ac_dir/Makefile" -+ for f in "$ac_given_srcdir/$ac_dir"/Rules-*; do -+ if test -f "$f"; then -+ case "$f" in -+ *.orig | *.bak | *~) ;; -+ *) cat "$f" >> "$ac_dir/Makefile" ;; -+ esac -+ fi -+ done -+ fi -+ ;; -+ esac -+ done], -+ [# Capture the value of obsolete ALL_LINGUAS because we need it to compute -+ # POFILES, GMOFILES, UPDATEPOFILES, DUMMYPOFILES, CATALOGS. But hide it -+ # from automake. -+ eval 'OBSOLETE_ALL_LINGUAS''="$ALL_LINGUAS"' -+ # Capture the value of LINGUAS because we need it to compute CATALOGS. -+ LINGUAS="${LINGUAS-%UNSET%}" -+ ]) -+]) -+ -+# nls.m4 serial 1 (gettext-0.12) -+dnl Copyright (C) 1995-2003 Free Software Foundation, Inc. -+dnl This file is free software, distributed under the terms of the GNU -+dnl General Public License. As a special exception to the GNU General -+dnl Public License, this file may be distributed as part of a program -+dnl that contains a configuration script generated by Autoconf, under -+dnl the same distribution terms as the rest of that program. -+dnl -+dnl This file can can be used in projects which are not available under -+dnl the GNU General Public License or the GNU Library General Public -+dnl License but which still want to provide support for the GNU gettext -+dnl functionality. -+dnl Please note that the actual code of the GNU gettext library is covered -+dnl by the GNU Library General Public License, and the rest of the GNU -+dnl gettext package package is covered by the GNU General Public License. -+dnl They are *not* in the public domain. -+ -+dnl Authors: -+dnl Ulrich Drepper , 1995-2000. -+dnl Bruno Haible , 2000-2003. -+ -+AC_DEFUN([AM_NLS], -+[ -+ AC_MSG_CHECKING([whether NLS is requested]) -+ dnl Default is enabled NLS -+ AC_ARG_ENABLE(nls, -+ [ --disable-nls do not use Native Language Support], -+ USE_NLS=$enableval, USE_NLS=yes) -+ AC_MSG_RESULT($USE_NLS) -+ AC_SUBST(USE_NLS) -+]) -+ -+AC_DEFUN([AM_MKINSTALLDIRS], -+[ -+ dnl If the AC_CONFIG_AUX_DIR macro for autoconf is used we possibly -+ dnl find the mkinstalldirs script in another subdir but $(top_srcdir). -+ dnl Try to locate it. -+ MKINSTALLDIRS= -+ if test -n "$ac_aux_dir"; then -+ case "$ac_aux_dir" in -+ /*) MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs" ;; -+ *) MKINSTALLDIRS="\$(top_builddir)/$ac_aux_dir/mkinstalldirs" ;; -+ esac -+ fi -+ if test -z "$MKINSTALLDIRS"; then -+ MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs" -+ fi -+ AC_SUBST(MKINSTALLDIRS) -+]) -+ -+# progtest.m4 serial 3 (gettext-0.12) -+dnl Copyright (C) 1996-2003 Free Software Foundation, Inc. -+dnl This file is free software, distributed under the terms of the GNU -+dnl General Public License. As a special exception to the GNU General -+dnl Public License, this file may be distributed as part of a program -+dnl that contains a configuration script generated by Autoconf, under -+dnl the same distribution terms as the rest of that program. -+dnl -+dnl This file can can be used in projects which are not available under -+dnl the GNU General Public License or the GNU Library General Public -+dnl License but which still want to provide support for the GNU gettext -+dnl functionality. -+dnl Please note that the actual code of the GNU gettext library is covered -+dnl by the GNU Library General Public License, and the rest of the GNU -+dnl gettext package package is covered by the GNU General Public License. -+dnl They are *not* in the public domain. -+ -+dnl Authors: -+dnl Ulrich Drepper , 1996. -+ -+# Search path for a program which passes the given test. -+ -+dnl AM_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR, -+dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]]) -+AC_DEFUN([AM_PATH_PROG_WITH_TEST], -+[ -+# Prepare PATH_SEPARATOR. -+# The user is always right. -+if test "${PATH_SEPARATOR+set}" != set; then -+ echo "#! /bin/sh" >conf$$.sh -+ echo "exit 0" >>conf$$.sh -+ chmod +x conf$$.sh -+ if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then -+ PATH_SEPARATOR=';' -+ else -+ PATH_SEPARATOR=: -+ fi -+ rm -f conf$$.sh -+fi -+ -+# Find out how to test for executable files. Don't use a zero-byte file, -+# as systems may use methods other than mode bits to determine executability. -+cat >conf$$.file <<_ASEOF -+#! /bin/sh -+exit 0 -+_ASEOF -+chmod +x conf$$.file -+if test -x conf$$.file >/dev/null 2>&1; then -+ ac_executable_p="test -x" - else -- $1_TRUE='#' -- $1_FALSE= --fi]) -+ ac_executable_p="test -f" -+fi -+rm -f conf$$.file -+ -+# Extract the first word of "$2", so it can be a program name with args. -+set dummy $2; ac_word=[$]2 -+AC_MSG_CHECKING([for $ac_word]) -+AC_CACHE_VAL(ac_cv_path_$1, -+[case "[$]$1" in -+ [[\\/]]* | ?:[[\\/]]*) -+ ac_cv_path_$1="[$]$1" # Let the user override the test with a path. -+ ;; -+ *) -+ ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR -+ for ac_dir in ifelse([$5], , $PATH, [$5]); do -+ IFS="$ac_save_IFS" -+ test -z "$ac_dir" && ac_dir=. -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then -+ if [$3]; then -+ ac_cv_path_$1="$ac_dir/$ac_word$ac_exec_ext" -+ break 2 -+ fi -+ fi -+ done -+ done -+ IFS="$ac_save_IFS" -+dnl If no 4th arg is given, leave the cache variable unset, -+dnl so AC_PATH_PROGS will keep looking. -+ifelse([$4], , , [ test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4" -+])dnl -+ ;; -+esac])dnl -+$1="$ac_cv_path_$1" -+if test ifelse([$4], , [-n "[$]$1"], ["[$]$1" != "$4"]); then -+ AC_MSG_RESULT([$]$1) -+else -+ AC_MSG_RESULT(no) -+fi -+AC_SUBST($1)dnl -+]) -+ -+# iconv.m4 serial AM4 (gettext-0.11.3) -+dnl Copyright (C) 2000-2002 Free Software Foundation, Inc. -+dnl This file is free software, distributed under the terms of the GNU -+dnl General Public License. As a special exception to the GNU General -+dnl Public License, this file may be distributed as part of a program -+dnl that contains a configuration script generated by Autoconf, under -+dnl the same distribution terms as the rest of that program. -+ -+dnl From Bruno Haible. -+ -+AC_DEFUN([AM_ICONV_LINKFLAGS_BODY], -+[ -+ dnl Prerequisites of AC_LIB_LINKFLAGS_BODY. -+ AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) -+ AC_REQUIRE([AC_LIB_RPATH]) -+ -+ dnl Search for libiconv and define LIBICONV, LTLIBICONV and INCICONV -+ dnl accordingly. -+ AC_LIB_LINKFLAGS_BODY([iconv]) -+]) -+ -+AC_DEFUN([AM_ICONV_LINK], -+[ -+ dnl Some systems have iconv in libc, some have it in libiconv (OSF/1 and -+ dnl those with the standalone portable GNU libiconv installed). -+ -+ dnl Search for libiconv and define LIBICONV, LTLIBICONV and INCICONV -+ dnl accordingly. -+ AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY]) -+ -+ dnl Add $INCICONV to CPPFLAGS before performing the following checks, -+ dnl because if the user has installed libiconv and not disabled its use -+ dnl via --without-libiconv-prefix, he wants to use it. The first -+ dnl AC_TRY_LINK will then fail, the second AC_TRY_LINK will succeed. -+ am_save_CPPFLAGS="$CPPFLAGS" -+ AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCICONV]) -+ -+ AC_CACHE_CHECK(for iconv, am_cv_func_iconv, [ -+ am_cv_func_iconv="no, consider installing GNU libiconv" -+ am_cv_lib_iconv=no -+ AC_TRY_LINK([#include -+#include ], -+ [iconv_t cd = iconv_open("",""); -+ iconv(cd,NULL,NULL,NULL,NULL); -+ iconv_close(cd);], -+ am_cv_func_iconv=yes) -+ if test "$am_cv_func_iconv" != yes; then -+ am_save_LIBS="$LIBS" -+ LIBS="$LIBS $LIBICONV" -+ AC_TRY_LINK([#include -+#include ], -+ [iconv_t cd = iconv_open("",""); -+ iconv(cd,NULL,NULL,NULL,NULL); -+ iconv_close(cd);], -+ am_cv_lib_iconv=yes -+ am_cv_func_iconv=yes) -+ LIBS="$am_save_LIBS" -+ fi -+ ]) -+ if test "$am_cv_func_iconv" = yes; then -+ AC_DEFINE(HAVE_ICONV, 1, [Define if you have the iconv() function.]) -+ fi -+ if test "$am_cv_lib_iconv" = yes; then -+ AC_MSG_CHECKING([how to link with libiconv]) -+ AC_MSG_RESULT([$LIBICONV]) -+ else -+ dnl If $LIBICONV didn't lead to a usable library, we don't need $INCICONV -+ dnl either. -+ CPPFLAGS="$am_save_CPPFLAGS" -+ LIBICONV= -+ LTLIBICONV= -+ fi -+ AC_SUBST(LIBICONV) -+ AC_SUBST(LTLIBICONV) -+]) -+ -+AC_DEFUN([AM_ICONV], -+[ -+ AM_ICONV_LINK -+ if test "$am_cv_func_iconv" = yes; then -+ AC_MSG_CHECKING([for iconv declaration]) -+ AC_CACHE_VAL(am_cv_proto_iconv, [ -+ AC_TRY_COMPILE([ -+#include -+#include -+extern -+#ifdef __cplusplus -+"C" -+#endif -+#if defined(__STDC__) || defined(__cplusplus) -+size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft); -+#else -+size_t iconv(); -+#endif -+], [], am_cv_proto_iconv_arg1="", am_cv_proto_iconv_arg1="const") -+ am_cv_proto_iconv="extern size_t iconv (iconv_t cd, $am_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);"]) -+ am_cv_proto_iconv=`echo "[$]am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'` -+ AC_MSG_RESULT([$]{ac_t:- -+ }[$]am_cv_proto_iconv) -+ AC_DEFINE_UNQUOTED(ICONV_CONST, $am_cv_proto_iconv_arg1, -+ [Define as const if the declaration of iconv() needs const.]) -+ fi -+]) -+ -+# intdiv0.m4 serial 1 (gettext-0.11.3) -+dnl Copyright (C) 2002 Free Software Foundation, Inc. -+dnl This file is free software, distributed under the terms of the GNU -+dnl General Public License. As a special exception to the GNU General -+dnl Public License, this file may be distributed as part of a program -+dnl that contains a configuration script generated by Autoconf, under -+dnl the same distribution terms as the rest of that program. -+ -+dnl From Bruno Haible. -+ -+AC_DEFUN([gt_INTDIV0], -+[ -+ AC_REQUIRE([AC_PROG_CC])dnl -+ AC_REQUIRE([AC_CANONICAL_HOST])dnl -+ -+ AC_CACHE_CHECK([whether integer division by zero raises SIGFPE], -+ gt_cv_int_divbyzero_sigfpe, -+ [ -+ AC_TRY_RUN([ -+#include -+#include -+ -+static void -+#ifdef __cplusplus -+sigfpe_handler (int sig) -+#else -+sigfpe_handler (sig) int sig; -+#endif -+{ -+ /* Exit with code 0 if SIGFPE, with code 1 if any other signal. */ -+ exit (sig != SIGFPE); -+} -+ -+int x = 1; -+int y = 0; -+int z; -+int nan; -+ -+int main () -+{ -+ signal (SIGFPE, sigfpe_handler); -+/* IRIX and AIX (when "xlc -qcheck" is used) yield signal SIGTRAP. */ -+#if (defined (__sgi) || defined (_AIX)) && defined (SIGTRAP) -+ signal (SIGTRAP, sigfpe_handler); -+#endif -+/* Linux/SPARC yields signal SIGILL. */ -+#if defined (__sparc__) && defined (__linux__) -+ signal (SIGILL, sigfpe_handler); -+#endif -+ -+ z = x / y; -+ nan = y / y; -+ exit (1); -+} -+], gt_cv_int_divbyzero_sigfpe=yes, gt_cv_int_divbyzero_sigfpe=no, -+ [ -+ # Guess based on the CPU. -+ case "$host_cpu" in -+ alpha* | i[34567]86 | m68k | s390*) -+ gt_cv_int_divbyzero_sigfpe="guessing yes";; -+ *) -+ gt_cv_int_divbyzero_sigfpe="guessing no";; -+ esac -+ ]) -+ ]) -+ case "$gt_cv_int_divbyzero_sigfpe" in -+ *yes) value=1;; -+ *) value=0;; -+ esac -+ AC_DEFINE_UNQUOTED(INTDIV0_RAISES_SIGFPE, $value, -+ [Define if integer division by zero raises signal SIGFPE.]) -+]) -+ -+# uintmax_t.m4 serial 7 (gettext-0.12) -+dnl Copyright (C) 1997-2003 Free Software Foundation, Inc. -+dnl This file is free software, distributed under the terms of the GNU -+dnl General Public License. As a special exception to the GNU General -+dnl Public License, this file may be distributed as part of a program -+dnl that contains a configuration script generated by Autoconf, under -+dnl the same distribution terms as the rest of that program. -+ -+dnl From Paul Eggert. -+ -+AC_PREREQ(2.13) -+ -+# Define uintmax_t to 'unsigned long' or 'unsigned long long' -+# if it is not already defined in or . -+ -+AC_DEFUN([jm_AC_TYPE_UINTMAX_T], -+[ -+ AC_REQUIRE([jm_AC_HEADER_INTTYPES_H]) -+ AC_REQUIRE([jm_AC_HEADER_STDINT_H]) -+ if test $jm_ac_cv_header_inttypes_h = no && test $jm_ac_cv_header_stdint_h = no; then -+ AC_REQUIRE([jm_AC_TYPE_UNSIGNED_LONG_LONG]) -+ test $ac_cv_type_unsigned_long_long = yes \ -+ && ac_type='unsigned long long' \ -+ || ac_type='unsigned long' -+ AC_DEFINE_UNQUOTED(uintmax_t, $ac_type, -+ [Define to unsigned long or unsigned long long -+ if and don't define.]) -+ else -+ AC_DEFINE(HAVE_UINTMAX_T, 1, -+ [Define if you have the 'uintmax_t' type in or .]) -+ fi -+]) -+ -+# inttypes_h.m4 serial 5 (gettext-0.12) -+dnl Copyright (C) 1997-2003 Free Software Foundation, Inc. -+dnl This file is free software, distributed under the terms of the GNU -+dnl General Public License. As a special exception to the GNU General -+dnl Public License, this file may be distributed as part of a program -+dnl that contains a configuration script generated by Autoconf, under -+dnl the same distribution terms as the rest of that program. -+ -+dnl From Paul Eggert. -+ -+# Define HAVE_INTTYPES_H_WITH_UINTMAX if exists, -+# doesn't clash with , and declares uintmax_t. -+ -+AC_DEFUN([jm_AC_HEADER_INTTYPES_H], -+[ -+ AC_CACHE_CHECK([for inttypes.h], jm_ac_cv_header_inttypes_h, -+ [AC_TRY_COMPILE( -+ [#include -+#include ], -+ [uintmax_t i = (uintmax_t) -1;], -+ jm_ac_cv_header_inttypes_h=yes, -+ jm_ac_cv_header_inttypes_h=no)]) -+ if test $jm_ac_cv_header_inttypes_h = yes; then -+ AC_DEFINE_UNQUOTED(HAVE_INTTYPES_H_WITH_UINTMAX, 1, -+ [Define if exists, doesn't clash with , -+ and declares uintmax_t. ]) -+ fi -+]) -+ -+# stdint_h.m4 serial 3 (gettext-0.12) -+dnl Copyright (C) 1997-2003 Free Software Foundation, Inc. -+dnl This file is free software, distributed under the terms of the GNU -+dnl General Public License. As a special exception to the GNU General -+dnl Public License, this file may be distributed as part of a program -+dnl that contains a configuration script generated by Autoconf, under -+dnl the same distribution terms as the rest of that program. -+ -+dnl From Paul Eggert. -+ -+# Define HAVE_STDINT_H_WITH_UINTMAX if exists, -+# doesn't clash with , and declares uintmax_t. -+ -+AC_DEFUN([jm_AC_HEADER_STDINT_H], -+[ -+ AC_CACHE_CHECK([for stdint.h], jm_ac_cv_header_stdint_h, -+ [AC_TRY_COMPILE( -+ [#include -+#include ], -+ [uintmax_t i = (uintmax_t) -1;], -+ jm_ac_cv_header_stdint_h=yes, -+ jm_ac_cv_header_stdint_h=no)]) -+ if test $jm_ac_cv_header_stdint_h = yes; then -+ AC_DEFINE_UNQUOTED(HAVE_STDINT_H_WITH_UINTMAX, 1, -+ [Define if exists, doesn't clash with , -+ and declares uintmax_t. ]) -+ fi -+]) -+ -+# ulonglong.m4 serial 2 (fileutils-4.0.32, gettext-0.10.40) -+dnl Copyright (C) 1999-2002 Free Software Foundation, Inc. -+dnl This file is free software, distributed under the terms of the GNU -+dnl General Public License. As a special exception to the GNU General -+dnl Public License, this file may be distributed as part of a program -+dnl that contains a configuration script generated by Autoconf, under -+dnl the same distribution terms as the rest of that program. -+ -+dnl From Paul Eggert. -+ -+AC_DEFUN([jm_AC_TYPE_UNSIGNED_LONG_LONG], -+[ -+ AC_CACHE_CHECK([for unsigned long long], ac_cv_type_unsigned_long_long, -+ [AC_TRY_LINK([unsigned long long ull = 1; int i = 63;], -+ [unsigned long long ullmax = (unsigned long long) -1; -+ return ull << i | ull >> i | ullmax / ull | ullmax % ull;], -+ ac_cv_type_unsigned_long_long=yes, -+ ac_cv_type_unsigned_long_long=no)]) -+ if test $ac_cv_type_unsigned_long_long = yes; then -+ AC_DEFINE(HAVE_UNSIGNED_LONG_LONG, 1, -+ [Define if you have the unsigned long long type.]) -+ fi -+]) -+ -+# inttypes.m4 serial 1 (gettext-0.11.4) -+dnl Copyright (C) 1997-2002 Free Software Foundation, Inc. -+dnl This file is free software, distributed under the terms of the GNU -+dnl General Public License. As a special exception to the GNU General -+dnl Public License, this file may be distributed as part of a program -+dnl that contains a configuration script generated by Autoconf, under -+dnl the same distribution terms as the rest of that program. -+ -+dnl From Paul Eggert. -+ -+# Define HAVE_INTTYPES_H if exists and doesn't clash with -+# . -+ -+AC_DEFUN([gt_HEADER_INTTYPES_H], -+[ -+ AC_CACHE_CHECK([for inttypes.h], gt_cv_header_inttypes_h, -+ [ -+ AC_TRY_COMPILE( -+ [#include -+#include ], -+ [], gt_cv_header_inttypes_h=yes, gt_cv_header_inttypes_h=no) -+ ]) -+ if test $gt_cv_header_inttypes_h = yes; then -+ AC_DEFINE_UNQUOTED(HAVE_INTTYPES_H, 1, -+ [Define if exists and doesn't clash with .]) -+ fi -+]) -+ -+# inttypes-pri.m4 serial 1 (gettext-0.11.4) -+dnl Copyright (C) 1997-2002 Free Software Foundation, Inc. -+dnl This file is free software, distributed under the terms of the GNU -+dnl General Public License. As a special exception to the GNU General -+dnl Public License, this file may be distributed as part of a program -+dnl that contains a configuration script generated by Autoconf, under -+dnl the same distribution terms as the rest of that program. -+ -+dnl From Bruno Haible. -+ -+# Define PRI_MACROS_BROKEN if exists and defines the PRI* -+# macros to non-string values. This is the case on AIX 4.3.3. -+ -+AC_DEFUN([gt_INTTYPES_PRI], -+[ -+ AC_REQUIRE([gt_HEADER_INTTYPES_H]) -+ if test $gt_cv_header_inttypes_h = yes; then -+ AC_CACHE_CHECK([whether the inttypes.h PRIxNN macros are broken], -+ gt_cv_inttypes_pri_broken, -+ [ -+ AC_TRY_COMPILE([#include -+#ifdef PRId32 -+char *p = PRId32; -+#endif -+], [], gt_cv_inttypes_pri_broken=no, gt_cv_inttypes_pri_broken=yes) -+ ]) -+ fi -+ if test "$gt_cv_inttypes_pri_broken" = yes; then -+ AC_DEFINE_UNQUOTED(PRI_MACROS_BROKEN, 1, -+ [Define if exists and defines unusable PRI* macros.]) -+ fi -+]) -+ -+# codeset.m4 serial AM1 (gettext-0.10.40) -+dnl Copyright (C) 2000-2002 Free Software Foundation, Inc. -+dnl This file is free software, distributed under the terms of the GNU -+dnl General Public License. As a special exception to the GNU General -+dnl Public License, this file may be distributed as part of a program -+dnl that contains a configuration script generated by Autoconf, under -+dnl the same distribution terms as the rest of that program. -+ -+dnl From Bruno Haible. -+ -+AC_DEFUN([AM_LANGINFO_CODESET], -+[ -+ AC_CACHE_CHECK([for nl_langinfo and CODESET], am_cv_langinfo_codeset, -+ [AC_TRY_LINK([#include ], -+ [char* cs = nl_langinfo(CODESET);], -+ am_cv_langinfo_codeset=yes, -+ am_cv_langinfo_codeset=no) -+ ]) -+ if test $am_cv_langinfo_codeset = yes; then -+ AC_DEFINE(HAVE_LANGINFO_CODESET, 1, -+ [Define if you have and nl_langinfo(CODESET).]) -+ fi -+]) - - # Check whether LC_MESSAGES is available in . - # Ulrich Drepper , 1995. -@@ -1047,3 +6269,16 @@ - fi - fi]) - -+# Define a conditional. -+ -+AC_DEFUN([AM_CONDITIONAL], -+[AC_SUBST($1_TRUE) -+AC_SUBST($1_FALSE) -+if $2; then -+ $1_TRUE= -+ $1_FALSE='#' -+else -+ $1_TRUE='#' -+ $1_FALSE= -+fi]) -+ ---- recode-3.6.orig/configure.in -+++ recode-3.6/configure.in -@@ -7,7 +7,7 @@ - AM_CONFIG_HEADER(config.h) - AM_INIT_AUTOMAKE(recode, 3.6) - AT_CONFIG(../src) --ALL_LINGUAS="da de el es fr gl it nl pl pt sl sv" -+ALL_LINGUAS="be ca da de el eo es fr ga gl he id it nl pl pt pt_BR ro sl sv tr vi zh_CN" - - AC_PROG_CC - AC_AIX ---- recode-3.6.orig/configure -+++ recode-3.6/configure -@@ -19,9 +19,170 @@ - --enable-fast-install[=PKGS] optimize for fast installation [default=yes]" - ac_help="$ac_help - --with-gnu-ld assume the C compiler uses GNU ld [default=no]" -+ -+# Find the correct PATH separator. Usually this is `:', but -+# DJGPP uses `;' like DOS. -+if test "X${PATH_SEPARATOR+set}" != Xset; then -+ UNAME=${UNAME-`uname 2>/dev/null`} -+ case X$UNAME in -+ *-DOS) lt_cv_sys_path_separator=';' ;; -+ *) lt_cv_sys_path_separator=':' ;; -+ esac -+ PATH_SEPARATOR=$lt_cv_sys_path_separator -+fi -+ -+ -+# Check that we are running under the correct shell. -+SHELL=${CONFIG_SHELL-/bin/sh} -+ -+case X$ECHO in -+X*--fallback-echo) -+ # Remove one level of quotation (which was required for Make). -+ ECHO=`echo "$ECHO" | sed 's,\\\\\$\\$0,'$0','` -+ ;; -+esac -+ -+echo=${ECHO-echo} -+if test "X$1" = X--no-reexec; then -+ # Discard the --no-reexec flag, and continue. -+ shift -+elif test "X$1" = X--fallback-echo; then -+ # Avoid inline document here, it may be left over -+ : -+elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then -+ # Yippee, $echo works! -+ : -+else -+ # Restart under the correct shell. -+ exec $SHELL "$0" --no-reexec ${1+"$@"} -+fi -+ -+if test "X$1" = X--fallback-echo; then -+ # used as fallback echo -+ shift -+ cat </dev/null && -+ echo_test_string="`eval $cmd`" && -+ (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null -+ then -+ break -+ fi -+ done -+fi -+ -+if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && -+ echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && -+ test "X$echo_testing_string" = "X$echo_test_string"; then -+ : -+else -+ # The Solaris, AIX, and Digital Unix default echo programs unquote -+ # backslashes. This makes it impossible to quote backslashes using -+ # echo "$something" | sed 's/\\/\\\\/g' -+ # -+ # So, first we look for a working echo in the user's PATH. -+ -+ IFS="${IFS= }"; save_ifs="$IFS"; IFS=$PATH_SEPARATOR -+ for dir in $PATH /usr/ucb; do -+ if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && -+ test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && -+ echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` && -+ test "X$echo_testing_string" = "X$echo_test_string"; then -+ echo="$dir/echo" -+ break -+ fi -+ done -+ IFS="$save_ifs" -+ -+ if test "X$echo" = Xecho; then -+ # We didn't find a better echo, so look for alternatives. -+ if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' && -+ echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` && -+ test "X$echo_testing_string" = "X$echo_test_string"; then -+ # This shell has a builtin print -r that does the trick. -+ echo='print -r' -+ elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) && -+ test "X$CONFIG_SHELL" != X/bin/ksh; then -+ # If we have ksh, try running configure again with it. -+ ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} -+ export ORIGINAL_CONFIG_SHELL -+ CONFIG_SHELL=/bin/ksh -+ export CONFIG_SHELL -+ exec $CONFIG_SHELL "$0" --no-reexec ${1+"$@"} -+ else -+ # Try using printf. -+ echo='printf %s\n' -+ if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && -+ echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && -+ test "X$echo_testing_string" = "X$echo_test_string"; then -+ # Cool, printf works -+ : -+ elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` && -+ test "X$echo_testing_string" = 'X\t' && -+ echo_testing_string=`($ORIGINAL_CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` && -+ test "X$echo_testing_string" = "X$echo_test_string"; then -+ CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL -+ export CONFIG_SHELL -+ SHELL="$CONFIG_SHELL" -+ export SHELL -+ echo="$CONFIG_SHELL $0 --fallback-echo" -+ elif echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo '\t') 2>/dev/null` && -+ test "X$echo_testing_string" = 'X\t' && -+ echo_testing_string=`($CONFIG_SHELL "$0" --fallback-echo "$echo_test_string") 2>/dev/null` && -+ test "X$echo_testing_string" = "X$echo_test_string"; then -+ echo="$CONFIG_SHELL $0 --fallback-echo" -+ else -+ # maybe with a smaller string... -+ prev=: -+ -+ for cmd in 'echo test' 'sed 2q "$0"' 'sed 10q "$0"' 'sed 20q "$0"' 'sed 50q "$0"'; do -+ if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null -+ then -+ break -+ fi -+ prev="$cmd" -+ done -+ -+ if test "$prev" != 'sed 50q "$0"'; then -+ echo_test_string=`eval $prev` -+ export echo_test_string -+ exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "$0" ${1+"$@"} -+ else -+ # Oops. We lost completely, so just stick with echo. -+ echo=echo -+ fi -+ fi -+ fi -+ fi -+fi -+fi -+ -+# Copy echo and quote the copy suitably for passing to libtool from -+# the Makefile, instead of quoting the original, which is used later. -+ECHO=$echo -+if test "X$ECHO" = "X$CONFIG_SHELL $0 --fallback-echo"; then -+ ECHO="$CONFIG_SHELL \\\$\$0 --fallback-echo" -+fi -+ -+ - ac_help="$ac_help - --disable-libtool-lock avoid locking (might break parallel builds)" - ac_help="$ac_help -+ --with-pic try to use only PIC/non-PIC objects [default=use both]" -+ac_help="$ac_help - --with-dmalloc use dmalloc, as in - ftp://ftp.letters.com/src/dmalloc/dmalloc.tar.gz" - ac_help="$ac_help -@@ -563,6 +724,7 @@ - ac_config_sub=$ac_aux_dir/config.sub - ac_configure=$ac_aux_dir/configure # This should be Cygnus configure. - -+am__api_version="1.4" - # Find a good install program. We prefer a C program (faster), - # so one script is as good as another. But avoid the broken or - # incompatible versions: -@@ -575,7 +737,7 @@ - # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" - # ./install, which can be erroneously created by make from ./install.sh. - echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6 --echo "configure:579: checking for a BSD compatible install" >&5 -+echo "configure:741: checking for a BSD compatible install" >&5 - if test -z "$INSTALL"; then - if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -@@ -628,7 +790,7 @@ - test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' - - echo $ac_n "checking whether build environment is sane""... $ac_c" 1>&6 --echo "configure:632: checking whether build environment is sane" >&5 -+echo "configure:794: checking whether build environment is sane" >&5 - # Just in case - sleep 1 - echo timestamp > conftestfile -@@ -685,7 +847,7 @@ - test "$program_transform_name" = "" && program_transform_name="s,x,x," - - echo $ac_n "checking whether ${MAKE-make} sets \${MAKE}""... $ac_c" 1>&6 --echo "configure:689: checking whether ${MAKE-make} sets \${MAKE}" >&5 -+echo "configure:851: checking whether ${MAKE-make} sets \${MAKE}" >&5 - set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y%./+-%__p_%'` - if eval "test \"`echo '$''{'ac_cv_prog_make_${ac_make}_set'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -@@ -730,21 +892,21 @@ - - - missing_dir=`cd $ac_aux_dir && pwd` --echo $ac_n "checking for working aclocal""... $ac_c" 1>&6 --echo "configure:735: checking for working aclocal" >&5 -+echo $ac_n "checking for working aclocal-${am__api_version}""... $ac_c" 1>&6 -+echo "configure:897: checking for working aclocal-${am__api_version}" >&5 - # Run test in a subshell; some versions of sh will print an error if - # an executable is not found, even if stderr is redirected. - # Redirect stdin to placate older versions of autoconf. Sigh. --if (aclocal --version) < /dev/null > /dev/null 2>&1; then -- ACLOCAL=aclocal -+if (aclocal-${am__api_version} --version) < /dev/null > /dev/null 2>&1; then -+ ACLOCAL=aclocal-${am__api_version} - echo "$ac_t""found" 1>&6 - else -- ACLOCAL="$missing_dir/missing aclocal" -+ ACLOCAL="$missing_dir/missing aclocal-${am__api_version}" - echo "$ac_t""missing" 1>&6 - fi - - echo $ac_n "checking for working autoconf""... $ac_c" 1>&6 --echo "configure:748: checking for working autoconf" >&5 -+echo "configure:910: checking for working autoconf" >&5 - # Run test in a subshell; some versions of sh will print an error if - # an executable is not found, even if stderr is redirected. - # Redirect stdin to placate older versions of autoconf. Sigh. -@@ -756,21 +918,21 @@ - echo "$ac_t""missing" 1>&6 - fi - --echo $ac_n "checking for working automake""... $ac_c" 1>&6 --echo "configure:761: checking for working automake" >&5 -+echo $ac_n "checking for working automake-${am__api_version}""... $ac_c" 1>&6 -+echo "configure:923: checking for working automake-${am__api_version}" >&5 - # Run test in a subshell; some versions of sh will print an error if - # an executable is not found, even if stderr is redirected. - # Redirect stdin to placate older versions of autoconf. Sigh. --if (automake --version) < /dev/null > /dev/null 2>&1; then -- AUTOMAKE=automake -+if (automake-${am__api_version} --version) < /dev/null > /dev/null 2>&1; then -+ AUTOMAKE=automake-${am__api_version} - echo "$ac_t""found" 1>&6 - else -- AUTOMAKE="$missing_dir/missing automake" -+ AUTOMAKE="$missing_dir/missing automake-${am__api_version}" - echo "$ac_t""missing" 1>&6 - fi - - echo $ac_n "checking for working autoheader""... $ac_c" 1>&6 --echo "configure:774: checking for working autoheader" >&5 -+echo "configure:936: checking for working autoheader" >&5 - # Run test in a subshell; some versions of sh will print an error if - # an executable is not found, even if stderr is redirected. - # Redirect stdin to placate older versions of autoconf. Sigh. -@@ -783,7 +945,7 @@ - fi - - echo $ac_n "checking for working makeinfo""... $ac_c" 1>&6 --echo "configure:787: checking for working makeinfo" >&5 -+echo "configure:949: checking for working makeinfo" >&5 - # Run test in a subshell; some versions of sh will print an error if - # an executable is not found, even if stderr is redirected. - # Redirect stdin to placate older versions of autoconf. Sigh. -@@ -799,7 +961,7 @@ - AT_TESTPATH=../src - - echo $ac_n "checking how to suppress newlines using echo""... $ac_c" 1>&6 --echo "configure:803: checking how to suppress newlines using echo" >&5 -+echo "configure:965: checking how to suppress newlines using echo" >&5 - if eval "test \"`echo '$''{'fp_cv_prog_echo_nonl'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else -@@ -825,12 +987,12 @@ - esac - - --ALL_LINGUAS="da de el es fr gl it nl pl pt sl sv" -+ALL_LINGUAS="be ca da de el eo es fr ga gl he id it nl pl pt pt_BR ro sl sv tr vi zh_CN" - - # Extract the first word of "gcc", so it can be a program name with args. - set dummy gcc; ac_word=$2 - echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 --echo "configure:834: checking for $ac_word" >&5 -+echo "configure:996: checking for $ac_word" >&5 - if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else -@@ -860,7 +1022,7 @@ - # Extract the first word of "cc", so it can be a program name with args. - set dummy cc; ac_word=$2 - echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 --echo "configure:864: checking for $ac_word" >&5 -+echo "configure:1026: checking for $ac_word" >&5 - if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else -@@ -911,7 +1073,7 @@ - # Extract the first word of "cl", so it can be a program name with args. - set dummy cl; ac_word=$2 - echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 --echo "configure:915: checking for $ac_word" >&5 -+echo "configure:1077: checking for $ac_word" >&5 - if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else -@@ -943,7 +1105,7 @@ - fi - - echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6 --echo "configure:947: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 -+echo "configure:1109: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 - - ac_ext=c - # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. -@@ -954,12 +1116,12 @@ - - cat > conftest.$ac_ext << EOF - --#line 958 "configure" -+#line 1120 "configure" - #include "confdefs.h" - - main(){return(0);} - EOF --if { (eval echo configure:963: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -+if { (eval echo configure:1125: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - ac_cv_prog_cc_works=yes - # If we can't run a trivial program, we are probably using a cross compiler. - if (./conftest; exit) 2>/dev/null; then -@@ -985,12 +1147,12 @@ - { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; } - fi - echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 --echo "configure:989: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 -+echo "configure:1151: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 - echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6 - cross_compiling=$ac_cv_prog_cc_cross - - echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 --echo "configure:994: checking whether we are using GNU C" >&5 -+echo "configure:1156: checking whether we are using GNU C" >&5 - if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else -@@ -999,7 +1161,7 @@ - yes; - #endif - EOF --if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1003: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then -+if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:1165: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then - ac_cv_prog_gcc=yes - else - ac_cv_prog_gcc=no -@@ -1018,7 +1180,7 @@ - ac_save_CFLAGS="$CFLAGS" - CFLAGS= - echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 --echo "configure:1022: checking whether ${CC-cc} accepts -g" >&5 -+echo "configure:1184: checking whether ${CC-cc} accepts -g" >&5 - if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else -@@ -1050,7 +1212,7 @@ - fi - - echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6 --echo "configure:1054: checking how to run the C preprocessor" >&5 -+echo "configure:1216: checking how to run the C preprocessor" >&5 - # On Suns, sometimes $CPP names a directory. - if test -n "$CPP" && test -d "$CPP"; then - CPP= -@@ -1065,13 +1227,13 @@ - # On the NeXT, cc -E runs the code through the compiler's parser, - # not just through cpp. - cat > conftest.$ac_ext < - Syntax Error - EOF - ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" --{ (eval echo configure:1075: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -+{ (eval echo configure:1237: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } - ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` - if test -z "$ac_err"; then - : -@@ -1082,13 +1244,13 @@ - rm -rf conftest* - CPP="${CC-cc} -E -traditional-cpp" - cat > conftest.$ac_ext < - Syntax Error - EOF - ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" --{ (eval echo configure:1092: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -+{ (eval echo configure:1254: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } - ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` - if test -z "$ac_err"; then - : -@@ -1099,13 +1261,13 @@ - rm -rf conftest* - CPP="${CC-cc} -nologo -E" - cat > conftest.$ac_ext < - Syntax Error - EOF - ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" --{ (eval echo configure:1109: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -+{ (eval echo configure:1271: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } - ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` - if test -z "$ac_err"; then - : -@@ -1130,9 +1292,9 @@ - echo "$ac_t""$CPP" 1>&6 - - echo $ac_n "checking for AIX""... $ac_c" 1>&6 --echo "configure:1134: checking for AIX" >&5 -+echo "configure:1296: checking for AIX" >&5 - cat > conftest.$ac_ext <&6 --echo "configure:1159: checking for minix/config.h" >&5 -+echo "configure:1321: checking for minix/config.h" >&5 - if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext < - EOF - ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" --{ (eval echo configure:1169: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -+{ (eval echo configure:1331: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } - ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` - if test -z "$ac_err"; then - rm -rf conftest* -@@ -1202,11 +1364,84 @@ - - fi - -+# Find the correct PATH separator. Usually this is `:', but -+# DJGPP uses `;' like DOS. -+if test "X${PATH_SEPARATOR+set}" != Xset; then -+ UNAME=${UNAME-`uname 2>/dev/null`} -+ case X$UNAME in -+ *-DOS) lt_cv_sys_path_separator=';' ;; -+ *) lt_cv_sys_path_separator=':' ;; -+ esac -+ PATH_SEPARATOR=$lt_cv_sys_path_separator -+fi -+ -+echo $ac_n "checking for Cygwin environment""... $ac_c" 1>&6 -+echo "configure:1380: checking for Cygwin environment" >&5 -+if eval "test \"`echo '$''{'ac_cv_cygwin'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then -+ rm -rf conftest* -+ ac_cv_cygwin=yes -+else -+ echo "configure: failed program was:" >&5 -+ cat conftest.$ac_ext >&5 -+ rm -rf conftest* -+ ac_cv_cygwin=no -+fi -+rm -f conftest* -+rm -f conftest* -+fi -+ -+echo "$ac_t""$ac_cv_cygwin" 1>&6 -+CYGWIN= -+test "$ac_cv_cygwin" = yes && CYGWIN=yes -+echo $ac_n "checking for mingw32 environment""... $ac_c" 1>&6 -+echo "configure:1413: checking for mingw32 environment" >&5 -+if eval "test \"`echo '$''{'ac_cv_mingw32'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then -+ rm -rf conftest* -+ ac_cv_mingw32=yes -+else -+ echo "configure: failed program was:" >&5 -+ cat conftest.$ac_ext >&5 -+ rm -rf conftest* -+ ac_cv_mingw32=no -+fi -+rm -f conftest* -+rm -f conftest* -+fi -+ -+echo "$ac_t""$ac_cv_mingw32" 1>&6 -+MINGW32= -+test "$ac_cv_mingw32" = yes && MINGW32=yes - # Check whether --enable-shared or --disable-shared was given. - if test "${enable_shared+set}" = set; then - enableval="$enable_shared" - p=${PACKAGE-default} --case "$enableval" in -+case $enableval in - yes) enable_shared=yes ;; - no) enable_shared=no ;; - *) -@@ -1229,7 +1464,7 @@ - if test "${enable_static+set}" = set; then - enableval="$enable_static" - p=${PACKAGE-default} --case "$enableval" in -+case $enableval in - yes) enable_static=yes ;; - no) enable_static=no ;; - *) -@@ -1252,7 +1487,7 @@ - if test "${enable_fast_install+set}" = set; then - enableval="$enable_fast_install" - p=${PACKAGE-default} --case "$enableval" in -+case $enableval in - yes) enable_fast_install=yes ;; - no) enable_fast_install=no ;; - *) -@@ -1278,7 +1513,7 @@ - fi - - echo $ac_n "checking host system type""... $ac_c" 1>&6 --echo "configure:1282: checking host system type" >&5 -+echo "configure:1517: checking host system type" >&5 - - host_alias=$host - case "$host_alias" in -@@ -1299,7 +1534,7 @@ - echo "$ac_t""$host" 1>&6 - - echo $ac_n "checking build system type""... $ac_c" 1>&6 --echo "configure:1303: checking build system type" >&5 -+echo "configure:1538: checking build system type" >&5 - - build_alias=$build - case "$build_alias" in -@@ -1316,36 +1551,6 @@ - build_os=`echo $build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` - echo "$ac_t""$build" 1>&6 - --# Extract the first word of "ranlib", so it can be a program name with args. --set dummy ranlib; ac_word=$2 --echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 --echo "configure:1323: checking for $ac_word" >&5 --if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then -- echo $ac_n "(cached) $ac_c" 1>&6 --else -- if test -n "$RANLIB"; then -- ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. --else -- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" -- ac_dummy="$PATH" -- for ac_dir in $ac_dummy; do -- test -z "$ac_dir" && ac_dir=. -- if test -f $ac_dir/$ac_word; then -- ac_cv_prog_RANLIB="ranlib" -- break -- fi -- done -- IFS="$ac_save_ifs" -- test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB=":" --fi --fi --RANLIB="$ac_cv_prog_RANLIB" --if test -n "$RANLIB"; then -- echo "$ac_t""$RANLIB" 1>&6 --else -- echo "$ac_t""no" 1>&6 --fi -- - # Check whether --with-gnu-ld or --without-gnu-ld was given. - if test "${with_gnu_ld+set}" = set; then - withval="$with_gnu_ld" -@@ -1355,12 +1560,18 @@ - fi - - ac_prog=ld --if test "$ac_cv_prog_gcc" = yes; then -+if test "$GCC" = yes; then - # Check if gcc -print-prog-name=ld gives a path. - echo $ac_n "checking for ld used by GCC""... $ac_c" 1>&6 --echo "configure:1362: checking for ld used by GCC" >&5 -- ac_prog=`($CC -print-prog-name=ld) 2>&5` -- case "$ac_prog" in -+echo "configure:1567: checking for ld used by GCC" >&5 -+ case $host in -+ *-*-mingw*) -+ # gcc leaves a trailing carriage return which upsets mingw -+ ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; -+ *) -+ ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; -+ esac -+ case $ac_prog in - # Accept absolute paths. - [\\/]* | [A-Za-z]:[\\/]*) - re_direlt='/[^/][^/]*/\.\./' -@@ -1382,24 +1593,24 @@ - esac - elif test "$with_gnu_ld" = yes; then - echo $ac_n "checking for GNU ld""... $ac_c" 1>&6 --echo "configure:1386: checking for GNU ld" >&5 -+echo "configure:1597: checking for GNU ld" >&5 - else - echo $ac_n "checking for non-GNU ld""... $ac_c" 1>&6 --echo "configure:1389: checking for non-GNU ld" >&5 -+echo "configure:1600: checking for non-GNU ld" >&5 - fi --if eval "test \"`echo '$''{'ac_cv_path_LD'+set}'`\" = set"; then -+if eval "test \"`echo '$''{'lt_cv_path_LD'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - if test -z "$LD"; then -- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" -+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH; do - test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then -- ac_cv_path_LD="$ac_dir/$ac_prog" -+ lt_cv_path_LD="$ac_dir/$ac_prog" - # Check to see if the program is GNU ld. I'd rather use --version, - # but apparently some GNU ld's only accept -v. - # Break only if it was the GNU/non-GNU ld that we prefer. -- if "$ac_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then -+ if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then - test "$with_gnu_ld" != no && break - else - test "$with_gnu_ld" != yes && break -@@ -1408,281 +1619,3938 @@ - done - IFS="$ac_save_ifs" - else -- ac_cv_path_LD="$LD" # Let the user override the test with a path. -+ lt_cv_path_LD="$LD" # Let the user override the test with a path. -+fi -+fi -+ -+LD="$lt_cv_path_LD" -+if test -n "$LD"; then -+ echo "$ac_t""$LD" 1>&6 -+else -+ echo "$ac_t""no" 1>&6 -+fi -+test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; } -+echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6 -+echo "configure:1635: checking if the linker ($LD) is GNU ld" >&5 -+if eval "test \"`echo '$''{'lt_cv_prog_gnu_ld'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ # I'd rather use --version here, but apparently some GNU ld's only accept -v. -+if $LD -v 2>&1 &5; then -+ lt_cv_prog_gnu_ld=yes -+else -+ lt_cv_prog_gnu_ld=no -+fi -+fi -+ -+echo "$ac_t""$lt_cv_prog_gnu_ld" 1>&6 -+with_gnu_ld=$lt_cv_prog_gnu_ld -+ -+ -+echo $ac_n "checking for $LD option to reload object files""... $ac_c" 1>&6 -+echo "configure:1652: checking for $LD option to reload object files" >&5 -+if eval "test \"`echo '$''{'lt_cv_ld_reload_flag'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ lt_cv_ld_reload_flag='-r' -+fi -+ -+echo "$ac_t""$lt_cv_ld_reload_flag" 1>&6 -+reload_flag=$lt_cv_ld_reload_flag -+test -n "$reload_flag" && reload_flag=" $reload_flag" -+ -+echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6 -+echo "configure:1664: checking for BSD-compatible nm" >&5 -+if eval "test \"`echo '$''{'lt_cv_path_NM'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ if test -n "$NM"; then -+ # Let the user override the test. -+ lt_cv_path_NM="$NM" -+else -+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR -+ for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do -+ test -z "$ac_dir" && ac_dir=. -+ tmp_nm=$ac_dir/${ac_tool_prefix}nm -+ if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then -+ # Check to see if the nm accepts a BSD-compat flag. -+ # Adding the `sed 1q' prevents false positives on HP-UX, which says: -+ # nm: unknown option "B" ignored -+ # Tru64's nm complains that /dev/null is an invalid object file -+ if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then -+ lt_cv_path_NM="$tmp_nm -B" -+ break -+ elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then -+ lt_cv_path_NM="$tmp_nm -p" -+ break -+ else -+ lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but -+ continue # so that we can try to find one that supports BSD flags -+ fi -+ fi -+ done -+ IFS="$ac_save_ifs" -+ test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm -+fi -+fi -+ -+NM="$lt_cv_path_NM" -+echo "$ac_t""$NM" 1>&6 -+ -+echo $ac_n "checking for a sed that does not truncate output""... $ac_c" 1>&6 -+echo "configure:1702: checking for a sed that does not truncate output" >&5 -+if eval "test \"`echo '$''{'lt_cv_path_SED'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ # Loop through the user's path and test for sed and gsed. -+# Then use that list of sed's as ones to test for truncation. -+as_executable_p="test -f" -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_prog in sed gsed; do -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then -+ _sed_list="$_sed_list $as_dir/$ac_prog$ac_exec_ext" -+ fi -+ done -+ done -+done -+ -+ # Create a temporary directory, and hook for its removal unless debugging. -+$debug || -+{ -+ trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 -+ trap '{ (exit 1); exit 1; }' 1 2 13 15 -+} -+ -+# Create a (secure) tmp directory for tmp files. -+: ${TMPDIR=/tmp} -+{ -+ tmp=`(umask 077 && mktemp -d -q "$TMPDIR/sedXXXXXX") 2>/dev/null` && -+ test -n "$tmp" && test -d "$tmp" -+} || -+{ -+ tmp=$TMPDIR/sed$$-$RANDOM -+ (umask 077 && mkdir $tmp) -+} || -+{ -+ echo "$me: cannot create a temporary directory in $TMPDIR" >&2 -+ { (exit 1); exit 1; } -+} -+ _max=0 -+ _count=0 -+ # Add /usr/xpg4/bin/sed as it is typically found on Solaris -+ # along with /bin/sed that truncates output. -+ for _sed in $_sed_list /usr/xpg4/bin/sed; do -+ test ! -f ${_sed} && break -+ cat /dev/null > "$tmp/sed.in" -+ _count=0 -+ echo ${ECHO_N-$ac_n} "0123456789${ECHO_C-$ac_c}" >"$tmp/sed.in" -+ # Check for GNU sed and select it if it is found. -+ if "${_sed}" --version 2>&1 < /dev/null | egrep '(GNU)' > /dev/null; then -+ lt_cv_path_SED=${_sed} -+ break -+ fi -+ while true; do -+ cat "$tmp/sed.in" "$tmp/sed.in" >"$tmp/sed.tmp" -+ mv "$tmp/sed.tmp" "$tmp/sed.in" -+ cp "$tmp/sed.in" "$tmp/sed.nl" -+ echo >>"$tmp/sed.nl" -+ ${_sed} -e 's/a$//' < "$tmp/sed.nl" >"$tmp/sed.out" || break -+ cmp -s "$tmp/sed.out" "$tmp/sed.nl" || break -+ # 40000 chars as input seems more than enough -+ test $_count -gt 10 && break -+ _count=`expr $_count + 1` -+ if test $_count -gt $_max; then -+ _max=$_count -+ lt_cv_path_SED=$_sed -+ fi -+ done -+ done -+ rm -rf "$tmp" -+ -+fi -+ -+if test "X$SED" != "X"; then -+ lt_cv_path_SED=$SED -+else -+ SED=$lt_cv_path_SED -+fi -+echo "$ac_t""$SED" 1>&6 -+ -+echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6 -+echo "configure:1786: checking whether ln -s works" >&5 -+if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ rm -f conftestdata -+if ln -s X conftestdata 2>/dev/null -+then -+ rm -f conftestdata -+ ac_cv_prog_LN_S="ln -s" -+else -+ ac_cv_prog_LN_S=ln - fi - fi -+LN_S="$ac_cv_prog_LN_S" -+if test "$ac_cv_prog_LN_S" = "ln -s"; then -+ echo "$ac_t""yes" 1>&6 -+else -+ echo "$ac_t""no" 1>&6 -+fi -+ -+echo $ac_n "checking how to recognise dependent libraries""... $ac_c" 1>&6 -+echo "configure:1807: checking how to recognise dependent libraries" >&5 -+if eval "test \"`echo '$''{'lt_cv_deplibs_check_method'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ lt_cv_file_magic_cmd='$MAGIC_CMD' -+lt_cv_file_magic_test_file= -+lt_cv_deplibs_check_method='unknown' -+# Need to set the preceding variable on all platforms that support -+# interlibrary dependencies. -+# 'none' -- dependencies not supported. -+# `unknown' -- same as none, but documents that we really don't know. -+# 'pass_all' -- all dependencies passed with no checks. -+# 'test_compile' -- check by making test program. -+# 'file_magic [[regex]]' -- check by looking for files in library path -+# which responds to the $file_magic_cmd with a given egrep regex. -+# If you have `file' or equivalent on your system and you're not sure -+# whether `pass_all' will *always* work, you probably want this one. -+ -+case $host_os in -+aix4* | aix5*) -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ -+beos*) -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ -+bsdi4*) -+ lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)' -+ lt_cv_file_magic_cmd='/usr/bin/file -L' -+ lt_cv_file_magic_test_file=/shlib/libc.so -+ ;; -+ -+cygwin* | mingw* | pw32*) -+ lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' -+ lt_cv_file_magic_cmd='$OBJDUMP -f' -+ ;; -+ -+darwin* | rhapsody*) -+ lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library' -+ lt_cv_file_magic_cmd='/usr/bin/file -L' -+ case "$host_os" in -+ rhapsody* | darwin1.[012]) -+ lt_cv_file_magic_test_file=`echo /System/Library/Frameworks/System.framework/Versions/*/System | head -1` -+ ;; -+ *) # Darwin 1.3 on -+ lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib' -+ ;; -+ esac -+ ;; -+ -+freebsd*) -+ if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then -+ case $host_cpu in -+ i*86 ) -+ # Not sure whether the presence of OpenBSD here was a mistake. -+ # Let's accept both of them until this is cleared up. -+ lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[3-9]86 (compact )?demand paged shared library' -+ lt_cv_file_magic_cmd=/usr/bin/file -+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` -+ ;; -+ esac -+ else -+ lt_cv_deplibs_check_method=pass_all -+ fi -+ ;; -+ -+gnu*) -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ -+hpux10.20*|hpux11*) -+ lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9].[0-9]) shared library' -+ lt_cv_file_magic_cmd=/usr/bin/file -+ lt_cv_file_magic_test_file=/usr/lib/libc.sl -+ ;; -+ -+irix5* | irix6* | nonstopux*) -+ case $host_os in -+ irix5* | nonstopux*) -+ # this will be overridden with pass_all, but let us keep it just in case -+ lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1" -+ ;; -+ *) -+ case $LD in -+ *-32|*"-32 ") libmagic=32-bit;; -+ *-n32|*"-n32 ") libmagic=N32;; -+ *-64|*"-64 ") libmagic=64-bit;; -+ *) libmagic=never-match;; -+ esac -+ # this will be overridden with pass_all, but let us keep it just in case -+ lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[1234] dynamic lib MIPS - version 1" -+ ;; -+ esac -+ lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*` -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ -+# This must be Linux ELF. -+linux-gnu*) -+ case $host_cpu in -+ alpha* | hppa* | i*86 | mips | mipsel | powerpc* | sparc* | ia64* | arm* | m68k) -+ lt_cv_deplibs_check_method=pass_all ;; -+ *) -+ # glibc up to 2.1.1 does not perform some relocations on ARM -+ lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' ;; -+ esac -+ lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` -+ ;; -+ -+netbsd*) -+ if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then -+ lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so\.[0-9]+\.[0-9]+$' -+ else -+ lt_cv_deplibs_check_method='match_pattern /lib[^/\.]+\.so$' -+ fi -+ ;; -+ -+newos6*) -+ lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)' -+ lt_cv_file_magic_cmd=/usr/bin/file -+ lt_cv_file_magic_test_file=/usr/lib/libnls.so -+ ;; -+ -+openbsd*) -+ lt_cv_file_magic_cmd=/usr/bin/file -+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` -+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then -+ lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB shared object' -+ else -+ lt_cv_deplibs_check_method='file_magic OpenBSD.* shared library' -+ fi -+ ;; -+ -+osf3* | osf4* | osf5*) -+ # this will be overridden with pass_all, but let us keep it just in case -+ lt_cv_deplibs_check_method='file_magic COFF format alpha shared library' -+ lt_cv_file_magic_test_file=/shlib/libc.so -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ -+sco3.2v5*) -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ -+solaris*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=/lib/libc.so -+ ;; -+ -+sysv5uw[78]* | sysv4*uw2*) -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ -+sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) -+ case $host_vendor in -+ motorola) -+ lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]' -+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` -+ ;; -+ ncr) -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ sequent) -+ lt_cv_file_magic_cmd='/bin/file' -+ lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' -+ ;; -+ sni) -+ lt_cv_file_magic_cmd='/bin/file' -+ lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib" -+ lt_cv_file_magic_test_file=/lib/libc.so -+ ;; -+ siemens) -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ esac -+ ;; -+esac -+ -+fi -+ -+echo "$ac_t""$lt_cv_deplibs_check_method" 1>&6 -+file_magic_cmd=$lt_cv_file_magic_cmd -+deplibs_check_method=$lt_cv_deplibs_check_method -+ -+echo $ac_n "checking for object suffix""... $ac_c" 1>&6 -+echo "configure:1993: checking for object suffix" >&5 -+if eval "test \"`echo '$''{'ac_cv_objext'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ rm -f conftest* -+echo 'int i = 1;' > conftest.$ac_ext -+if { (eval echo configure:1999: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then -+ for ac_file in conftest.*; do -+ case $ac_file in -+ *.c) ;; -+ *) ac_cv_objext=`echo $ac_file | sed -e s/conftest.//` ;; -+ esac -+ done -+else -+ { echo "configure: error: installation or configuration problem; compiler does not work" 1>&2; exit 1; } -+fi -+rm -f conftest* -+fi -+ -+echo "$ac_t""$ac_cv_objext" 1>&6 -+OBJEXT=$ac_cv_objext -+ac_objext=$ac_cv_objext -+ -+ -+ -+echo $ac_n "checking for executable suffix""... $ac_c" 1>&6 -+echo "configure:2019: checking for executable suffix" >&5 -+if eval "test \"`echo '$''{'ac_cv_exeext'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ if test "$CYGWIN" = yes || test "$MINGW32" = yes; then -+ ac_cv_exeext=.exe -+else -+ rm -f conftest* -+ echo 'int main () { return 0; }' > conftest.$ac_ext -+ ac_cv_exeext= -+ if { (eval echo configure:2029: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; }; then -+ for file in conftest.*; do -+ case $file in -+ *.$ac_ext | *.c | *.o | *.obj) ;; -+ *) ac_cv_exeext=`echo $file | sed -e s/conftest//` ;; -+ esac -+ done -+ else -+ { echo "configure: error: installation or configuration problem: compiler cannot create executables." 1>&2; exit 1; } -+ fi -+ rm -f conftest* -+ test x"${ac_cv_exeext}" = x && ac_cv_exeext=no -+fi -+fi -+ -+EXEEXT="" -+test x"${ac_cv_exeext}" != xno && EXEEXT=${ac_cv_exeext} -+echo "$ac_t""${ac_cv_exeext}" 1>&6 -+ac_exeext=$EXEEXT -+ -+if test $host != $build; then -+ ac_tool_prefix=${host_alias}- -+else -+ ac_tool_prefix= -+fi -+ -+ -+ -+ -+# Check for command to grab the raw symbol name followed by C symbol from nm. -+echo $ac_n "checking command to parse $NM output""... $ac_c" 1>&6 -+echo "configure:2060: checking command to parse $NM output" >&5 -+if eval "test \"`echo '$''{'lt_cv_sys_global_symbol_pipe'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ -+# These are sane defaults that work on at least a few old systems. -+# [They come from Ultrix. What could be older than Ultrix?!! ;)] -+ -+# Character class describing NM global symbol codes. -+symcode='[BCDEGRST]' -+ -+# Regexp to match symbols that can be accessed directly from C. -+sympat='\([_A-Za-z][_A-Za-z0-9]*\)' -+ -+# Transform the above into a raw symbol and a C symbol. -+symxfrm='\1 \2\3 \3' -+ -+# Transform an extracted symbol line into a proper C declaration -+lt_cv_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'" -+ -+# Transform an extracted symbol line into symbol name and symbol address -+lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([^ ]*\) \([^ ]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" -+ -+# Define system-specific variables. -+case $host_os in -+aix*) -+ symcode='[BCDT]' -+ ;; -+cygwin* | mingw* | pw32*) -+ symcode='[ABCDGISTW]' -+ ;; -+hpux*) # Its linker distinguishes data from code symbols -+ lt_cv_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" -+ lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([^ ]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([^ ]*\) \([^ ]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" -+ ;; -+irix* | nonstopux*) -+ symcode='[BCDEGRST]' -+ ;; -+osf*) -+ symcode='[BCDEGQRST]' -+ ;; -+solaris* | sysv5*) -+ symcode='[BDT]' -+ ;; -+sysv4) -+ symcode='[DFNSTU]' -+ ;; -+esac -+ -+# Handle CRLF in mingw tool chain -+opt_cr= -+case $host_os in -+mingw*) -+ opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp -+ ;; -+esac -+ -+# If we're using GNU nm, then use its standard symbol codes. -+if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then -+ symcode='[ABCDGISTW]' -+fi -+ -+# Try without a prefix undercore, then with it. -+for ac_symprfx in "" "_"; do -+ -+ # Write the raw and C identifiers. -+lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'" -+ -+ # Check to see that the pipe works correctly. -+ pipe_works=no -+ rm -f conftest* -+ cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then -+ # Now try to grab the symbols. -+ nlist=conftest.nm -+ if { (eval echo configure:2146: \"$NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist\") 1>&5; (eval $NM conftest.$ac_objext \| $lt_cv_sys_global_symbol_pipe \> $nlist) 2>&5; } && test -s "$nlist"; then -+ # Try sorting and uniquifying the output. -+ if sort "$nlist" | uniq > "$nlist"T; then -+ mv -f "$nlist"T "$nlist" -+ else -+ rm -f "$nlist"T -+ fi -+ -+ # Make sure that we snagged all the symbols we need. -+ if egrep ' nm_test_var$' "$nlist" >/dev/null; then -+ if egrep ' nm_test_func$' "$nlist" >/dev/null; then -+ cat < conftest.$ac_ext -+#ifdef __cplusplus -+extern "C" { -+#endif -+ -+EOF -+ # Now generate the symbol file. -+ eval "$lt_cv_global_symbol_to_cdecl"' < "$nlist" >> conftest.$ac_ext' -+ -+ cat <> conftest.$ac_ext -+#if defined (__STDC__) && __STDC__ -+# define lt_ptr void * -+#else -+# define lt_ptr char * -+# define const -+#endif -+ -+/* The mapping between symbol names and symbols. */ -+const struct { -+ const char *name; -+ lt_ptr address; -+} -+lt_preloaded_symbols[] = -+{ -+EOF -+ sed "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (lt_ptr) \&\2},/" < "$nlist" >> conftest.$ac_ext -+ cat <<\EOF >> conftest.$ac_ext -+ {0, (lt_ptr) 0} -+}; -+ -+#ifdef __cplusplus -+} -+#endif -+EOF -+ # Now try linking the two files. -+ mv conftest.$ac_objext conftstm.$ac_objext -+ save_LIBS="$LIBS" -+ save_CFLAGS="$CFLAGS" -+ LIBS="conftstm.$ac_objext" -+ CFLAGS="$CFLAGS$no_builtin_flag" -+ if { (eval echo configure:2197: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest$ac_exeext; then -+ pipe_works=yes -+ fi -+ LIBS="$save_LIBS" -+ CFLAGS="$save_CFLAGS" -+ else -+ echo "cannot find nm_test_func in $nlist" >&5 -+ fi -+ else -+ echo "cannot find nm_test_var in $nlist" >&5 -+ fi -+ else -+ echo "cannot run $lt_cv_sys_global_symbol_pipe" >&5 -+ fi -+ else -+ echo "$progname: failed program was:" >&5 -+ cat conftest.$ac_ext >&5 -+ fi -+ rm -f conftest* conftst* -+ -+ # Do not use the global_symbol_pipe unless it works. -+ if test "$pipe_works" = yes; then -+ break -+ else -+ lt_cv_sys_global_symbol_pipe= -+ fi -+done -+ -+fi -+ -+global_symbol_pipe="$lt_cv_sys_global_symbol_pipe" -+if test -z "$lt_cv_sys_global_symbol_pipe"; then -+ global_symbol_to_cdecl= -+ global_symbol_to_c_name_address= -+else -+ global_symbol_to_cdecl="$lt_cv_global_symbol_to_cdecl" -+ global_symbol_to_c_name_address="$lt_cv_global_symbol_to_c_name_address" -+fi -+if test -z "$global_symbol_pipe$global_symbol_to_cdec$global_symbol_to_c_name_address"; -+then -+ echo "$ac_t""failed" 1>&6 -+else -+ echo "$ac_t""ok" 1>&6 -+fi -+ -+for ac_hdr in dlfcn.h -+do -+ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` -+echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -+echo "configure:2246: checking for $ac_hdr" >&5 -+if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ cat > conftest.$ac_ext < -+EOF -+ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -+{ (eval echo configure:2256: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -+ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` -+if test -z "$ac_err"; then -+ rm -rf conftest* -+ eval "ac_cv_header_$ac_safe=yes" -+else -+ echo "$ac_err" >&5 -+ echo "configure: failed program was:" >&5 -+ cat conftest.$ac_ext >&5 -+ rm -rf conftest* -+ eval "ac_cv_header_$ac_safe=no" -+fi -+rm -f conftest* -+fi -+if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then -+ echo "$ac_t""yes" 1>&6 -+ ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'` -+ cat >> confdefs.h <&6 -+fi -+done -+ -+ -+ -+ -+ -+ -+# Only perform the check for file, if the check method requires it -+case $deplibs_check_method in -+file_magic*) -+ if test "$file_magic_cmd" = '$MAGIC_CMD'; then -+ echo $ac_n "checking for ${ac_tool_prefix}file""... $ac_c" 1>&6 -+echo "configure:2292: checking for ${ac_tool_prefix}file" >&5 -+if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ case $MAGIC_CMD in -+ /*) -+ lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. -+ ;; -+ ?:/*) -+ lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path. -+ ;; -+ *) -+ ac_save_MAGIC_CMD="$MAGIC_CMD" -+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" -+ ac_dummy="/usr/bin:$PATH" -+ for ac_dir in $ac_dummy; do -+ test -z "$ac_dir" && ac_dir=. -+ if test -f $ac_dir/${ac_tool_prefix}file; then -+ lt_cv_path_MAGIC_CMD="$ac_dir/${ac_tool_prefix}file" -+ if test -n "$file_magic_test_file"; then -+ case $deplibs_check_method in -+ "file_magic "*) -+ file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" -+ MAGIC_CMD="$lt_cv_path_MAGIC_CMD" -+ if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | -+ egrep "$file_magic_regex" > /dev/null; then -+ : -+ else -+ cat <&2 -+ -+*** Warning: the command libtool uses to detect shared libraries, -+*** $file_magic_cmd, produces output that libtool cannot recognize. -+*** The result is that libtool may fail to recognize shared libraries -+*** as such. This will affect the creation of libtool libraries that -+*** depend on shared libraries, but programs linked with such libtool -+*** libraries will work regardless of this problem. Nevertheless, you -+*** may want to report the problem to your system manager and/or to -+*** bug-libtool@gnu.org -+ -+EOF -+ fi ;; -+ esac -+ fi -+ break -+ fi -+ done -+ IFS="$ac_save_ifs" -+ MAGIC_CMD="$ac_save_MAGIC_CMD" -+ ;; -+esac -+fi -+ -+MAGIC_CMD="$lt_cv_path_MAGIC_CMD" -+if test -n "$MAGIC_CMD"; then -+ echo "$ac_t""$MAGIC_CMD" 1>&6 -+else -+ echo "$ac_t""no" 1>&6 -+fi -+ -+if test -z "$lt_cv_path_MAGIC_CMD"; then -+ if test -n "$ac_tool_prefix"; then -+ echo $ac_n "checking for file""... $ac_c" 1>&6 -+echo "configure:2354: checking for file" >&5 -+if eval "test \"`echo '$''{'lt_cv_path_MAGIC_CMD'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ case $MAGIC_CMD in -+ /*) -+ lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. -+ ;; -+ ?:/*) -+ lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path. -+ ;; -+ *) -+ ac_save_MAGIC_CMD="$MAGIC_CMD" -+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" -+ ac_dummy="/usr/bin:$PATH" -+ for ac_dir in $ac_dummy; do -+ test -z "$ac_dir" && ac_dir=. -+ if test -f $ac_dir/file; then -+ lt_cv_path_MAGIC_CMD="$ac_dir/file" -+ if test -n "$file_magic_test_file"; then -+ case $deplibs_check_method in -+ "file_magic "*) -+ file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" -+ MAGIC_CMD="$lt_cv_path_MAGIC_CMD" -+ if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | -+ egrep "$file_magic_regex" > /dev/null; then -+ : -+ else -+ cat <&2 -+ -+*** Warning: the command libtool uses to detect shared libraries, -+*** $file_magic_cmd, produces output that libtool cannot recognize. -+*** The result is that libtool may fail to recognize shared libraries -+*** as such. This will affect the creation of libtool libraries that -+*** depend on shared libraries, but programs linked with such libtool -+*** libraries will work regardless of this problem. Nevertheless, you -+*** may want to report the problem to your system manager and/or to -+*** bug-libtool@gnu.org -+ -+EOF -+ fi ;; -+ esac -+ fi -+ break -+ fi -+ done -+ IFS="$ac_save_ifs" -+ MAGIC_CMD="$ac_save_MAGIC_CMD" -+ ;; -+esac -+fi -+ -+MAGIC_CMD="$lt_cv_path_MAGIC_CMD" -+if test -n "$MAGIC_CMD"; then -+ echo "$ac_t""$MAGIC_CMD" 1>&6 -+else -+ echo "$ac_t""no" 1>&6 -+fi -+ -+ else -+ MAGIC_CMD=: -+ fi -+fi -+ -+ fi -+ ;; -+esac -+ -+# Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. -+set dummy ${ac_tool_prefix}ranlib; ac_word=$2 -+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -+echo "configure:2425: checking for $ac_word" >&5 -+if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ if test -n "$RANLIB"; then -+ ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. -+else -+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" -+ ac_dummy="$PATH" -+ for ac_dir in $ac_dummy; do -+ test -z "$ac_dir" && ac_dir=. -+ if test -f $ac_dir/$ac_word; then -+ ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" -+ break -+ fi -+ done -+ IFS="$ac_save_ifs" -+fi -+fi -+RANLIB="$ac_cv_prog_RANLIB" -+if test -n "$RANLIB"; then -+ echo "$ac_t""$RANLIB" 1>&6 -+else -+ echo "$ac_t""no" 1>&6 -+fi -+ -+ -+if test -z "$ac_cv_prog_RANLIB"; then -+if test -n "$ac_tool_prefix"; then -+ # Extract the first word of "ranlib", so it can be a program name with args. -+set dummy ranlib; ac_word=$2 -+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -+echo "configure:2457: checking for $ac_word" >&5 -+if eval "test \"`echo '$''{'ac_cv_prog_RANLIB'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ if test -n "$RANLIB"; then -+ ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. -+else -+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" -+ ac_dummy="$PATH" -+ for ac_dir in $ac_dummy; do -+ test -z "$ac_dir" && ac_dir=. -+ if test -f $ac_dir/$ac_word; then -+ ac_cv_prog_RANLIB="ranlib" -+ break -+ fi -+ done -+ IFS="$ac_save_ifs" -+ test -z "$ac_cv_prog_RANLIB" && ac_cv_prog_RANLIB=":" -+fi -+fi -+RANLIB="$ac_cv_prog_RANLIB" -+if test -n "$RANLIB"; then -+ echo "$ac_t""$RANLIB" 1>&6 -+else -+ echo "$ac_t""no" 1>&6 -+fi -+ -+else -+ RANLIB=":" -+fi -+fi -+ -+# Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. -+set dummy ${ac_tool_prefix}strip; ac_word=$2 -+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -+echo "configure:2492: checking for $ac_word" >&5 -+if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ if test -n "$STRIP"; then -+ ac_cv_prog_STRIP="$STRIP" # Let the user override the test. -+else -+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" -+ ac_dummy="$PATH" -+ for ac_dir in $ac_dummy; do -+ test -z "$ac_dir" && ac_dir=. -+ if test -f $ac_dir/$ac_word; then -+ ac_cv_prog_STRIP="${ac_tool_prefix}strip" -+ break -+ fi -+ done -+ IFS="$ac_save_ifs" -+fi -+fi -+STRIP="$ac_cv_prog_STRIP" -+if test -n "$STRIP"; then -+ echo "$ac_t""$STRIP" 1>&6 -+else -+ echo "$ac_t""no" 1>&6 -+fi -+ -+ -+if test -z "$ac_cv_prog_STRIP"; then -+if test -n "$ac_tool_prefix"; then -+ # Extract the first word of "strip", so it can be a program name with args. -+set dummy strip; ac_word=$2 -+echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -+echo "configure:2524: checking for $ac_word" >&5 -+if eval "test \"`echo '$''{'ac_cv_prog_STRIP'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ if test -n "$STRIP"; then -+ ac_cv_prog_STRIP="$STRIP" # Let the user override the test. -+else -+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" -+ ac_dummy="$PATH" -+ for ac_dir in $ac_dummy; do -+ test -z "$ac_dir" && ac_dir=. -+ if test -f $ac_dir/$ac_word; then -+ ac_cv_prog_STRIP="strip" -+ break -+ fi -+ done -+ IFS="$ac_save_ifs" -+ test -z "$ac_cv_prog_STRIP" && ac_cv_prog_STRIP=":" -+fi -+fi -+STRIP="$ac_cv_prog_STRIP" -+if test -n "$STRIP"; then -+ echo "$ac_t""$STRIP" 1>&6 -+else -+ echo "$ac_t""no" 1>&6 -+fi -+ -+else -+ STRIP=":" -+fi -+fi -+ -+ -+enable_dlopen=no -+enable_win32_dll=no -+ -+# Check whether --enable-libtool-lock or --disable-libtool-lock was given. -+if test "${enable_libtool_lock+set}" = set; then -+ enableval="$enable_libtool_lock" -+ : -+fi -+ -+test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes -+ -+# Some flags need to be propagated to the compiler or linker for good -+# libtool support. -+case $host in -+*-*-irix6*) -+ # Find out which ABI we are using. -+ echo '#line 2573 "configure"' > conftest.$ac_ext -+ if { (eval echo configure:2574: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then -+ case `/usr/bin/file conftest.$ac_objext` in -+ *32-bit*) -+ LD="${LD-ld} -32" -+ ;; -+ *N32*) -+ LD="${LD-ld} -n32" -+ ;; -+ *64-bit*) -+ LD="${LD-ld} -64" -+ ;; -+ esac -+ fi -+ rm -rf conftest* -+ ;; -+ -+*-*-sco3.2v5*) -+ # On SCO OpenServer 5, we need -belf to get full-featured binaries. -+ SAVE_CFLAGS="$CFLAGS" -+ CFLAGS="$CFLAGS -belf" -+ echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6 -+echo "configure:2595: checking whether the C compiler needs -belf" >&5 -+if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ -+ ac_ext=c -+# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. -+ac_cpp='$CPP $CPPFLAGS' -+ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' -+ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' -+cross_compiling=$ac_cv_prog_cc_cross -+ -+ cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -+ rm -rf conftest* -+ lt_cv_cc_needs_belf=yes -+else -+ echo "configure: failed program was:" >&5 -+ cat conftest.$ac_ext >&5 -+ rm -rf conftest* -+ lt_cv_cc_needs_belf=no -+fi -+rm -f conftest* -+ ac_ext=c -+# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. -+ac_cpp='$CPP $CPPFLAGS' -+ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5' -+ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' -+cross_compiling=$ac_cv_prog_cc_cross -+ -+fi -+ -+echo "$ac_t""$lt_cv_cc_needs_belf" 1>&6 -+ if test x"$lt_cv_cc_needs_belf" != x"yes"; then -+ # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf -+ CFLAGS="$SAVE_CFLAGS" -+ fi -+ ;; -+ -+ -+esac -+ -+# Sed substitution that helps us do robust quoting. It backslashifies -+# metacharacters that are still active within double-quoted strings. -+Xsed='sed -e s/^X//' -+sed_quote_subst='s/\([\\"\\`$\\\\]\)/\\\1/g' -+ -+# Same as above, but do not quote variable references. -+double_quote_subst='s/\([\\"\\`\\\\]\)/\\\1/g' -+ -+# Sed substitution to delay expansion of an escaped shell variable in a -+# double_quote_subst'ed string. -+delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' -+ -+# Constants: -+rm="rm -f" -+ -+# Global variables: -+default_ofile=libtool -+can_build_shared=yes -+ -+# All known linkers require a `.a' archive for static linking (except M$VC, -+# which needs '.lib'). -+libext=a -+ltmain="$ac_aux_dir/ltmain.sh" -+ofile="$default_ofile" -+with_gnu_ld="$lt_cv_prog_gnu_ld" -+need_locks="$enable_libtool_lock" -+ -+old_CC="$CC" -+old_CFLAGS="$CFLAGS" -+ -+# Set sane defaults for various variables -+test -z "$AR" && AR=ar -+test -z "$AR_FLAGS" && AR_FLAGS=cru -+test -z "$AS" && AS=as -+test -z "$CC" && CC=cc -+test -z "$DLLTOOL" && DLLTOOL=dlltool -+test -z "$LD" && LD=ld -+test -z "$LN_S" && LN_S="ln -s" -+test -z "$MAGIC_CMD" && MAGIC_CMD=file -+test -z "$NM" && NM=nm -+test -z "$OBJDUMP" && OBJDUMP=objdump -+test -z "$RANLIB" && RANLIB=: -+test -z "$STRIP" && STRIP=: -+test -z "$ac_objext" && ac_objext=o -+ -+if test x"$host" != x"$build"; then -+ ac_tool_prefix=${host_alias}- -+else -+ ac_tool_prefix= -+fi -+ -+# Transform linux* to *-*-linux-gnu*, to support old configure scripts. -+case $host_os in -+linux-gnu*) ;; -+linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'` -+esac -+ -+case $host_os in -+aix3*) -+ # AIX sometimes has problems with the GCC collect2 program. For some -+ # reason, if we set the COLLECT_NAMES environment variable, the problems -+ # vanish in a puff of smoke. -+ if test "X${COLLECT_NAMES+set}" != Xset; then -+ COLLECT_NAMES= -+ export COLLECT_NAMES -+ fi -+ ;; -+esac -+ -+# Determine commands to create old-style static archives. -+old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs' -+old_postinstall_cmds='chmod 644 $oldlib' -+old_postuninstall_cmds= -+ -+if test -n "$RANLIB"; then -+ case $host_os in -+ openbsd*) -+ old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds" -+ ;; -+ *) -+ old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds" -+ ;; -+ esac -+ old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib" -+fi -+ -+# Allow CC to be a program name with arguments. -+set dummy $CC -+compiler="$2" -+ -+echo $ac_n "checking for objdir""... $ac_c" 1>&6 -+echo "configure:2735: checking for objdir" >&5 -+rm -f .libs 2>/dev/null -+mkdir .libs 2>/dev/null -+if test -d .libs; then -+ objdir=.libs -+else -+ # MS-DOS does not allow filenames that begin with a dot. -+ objdir=_libs -+fi -+rmdir .libs 2>/dev/null -+echo "$ac_t""$objdir" 1>&6 -+ -+ -+# Check whether --with-pic or --without-pic was given. -+if test "${with_pic+set}" = set; then -+ withval="$with_pic" -+ pic_mode="$withval" -+else -+ pic_mode=default -+fi -+ -+test -z "$pic_mode" && pic_mode=default -+ -+# We assume here that the value for lt_cv_prog_cc_pic will not be cached -+# in isolation, and that seeing it set (from the cache) indicates that -+# the associated values are set (in the cache) correctly too. -+echo $ac_n "checking for $compiler option to produce PIC""... $ac_c" 1>&6 -+echo "configure:2762: checking for $compiler option to produce PIC" >&5 -+if eval "test \"`echo '$''{'lt_cv_prog_cc_pic'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ lt_cv_prog_cc_pic= -+ lt_cv_prog_cc_shlib= -+ lt_cv_prog_cc_wl= -+ lt_cv_prog_cc_static= -+ lt_cv_prog_cc_no_builtin= -+ lt_cv_prog_cc_can_build_shared=$can_build_shared -+ -+ if test "$GCC" = yes; then -+ lt_cv_prog_cc_wl='-Wl,' -+ lt_cv_prog_cc_static='-static' -+ -+ case $host_os in -+ aix*) -+ # Below there is a dirty hack to force normal static linking with -ldl -+ # The problem is because libdl dynamically linked with both libc and -+ # libC (AIX C++ library), which obviously doesn't included in libraries -+ # list by gcc. This cause undefined symbols with -static flags. -+ # This hack allows C programs to be linked with "-static -ldl", but -+ # not sure about C++ programs. -+ lt_cv_prog_cc_static="$lt_cv_prog_cc_static ${lt_cv_prog_cc_wl}-lC" -+ ;; -+ amigaos*) -+ # FIXME: we need at least 68020 code to build shared libraries, but -+ # adding the `-m68020' flag to GCC prevents building anything better, -+ # like `-m68040'. -+ lt_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4' -+ ;; -+ beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) -+ # PIC is the default for these OSes. -+ ;; -+ darwin* | rhapsody*) -+ # PIC is the default on this platform -+ # Common symbols not allowed in MH_DYLIB files -+ lt_cv_prog_cc_pic='-fno-common' -+ ;; -+ cygwin* | mingw* | pw32* | os2*) -+ # This hack is so that the source file can tell whether it is being -+ # built for inclusion in a dll (and should export symbols for example). -+ lt_cv_prog_cc_pic='-DDLL_EXPORT' -+ ;; -+ sysv4*MP*) -+ if test -d /usr/nec; then -+ lt_cv_prog_cc_pic=-Kconform_pic -+ fi -+ ;; -+ *) -+ lt_cv_prog_cc_pic='-fPIC' -+ ;; -+ esac -+ else -+ # PORTME Check for PIC flags for the system compiler. -+ case $host_os in -+ aix3* | aix4* | aix5*) -+ lt_cv_prog_cc_wl='-Wl,' -+ # All AIX code is PIC. -+ if test "$host_cpu" = ia64; then -+ # AIX 5 now supports IA64 processor -+ lt_cv_prog_cc_static='-Bstatic' -+ else -+ lt_cv_prog_cc_static='-bnso -bI:/lib/syscalls.exp' -+ fi -+ ;; -+ -+ hpux9* | hpux10* | hpux11*) -+ # Is there a better lt_cv_prog_cc_static that works with the bundled CC? -+ lt_cv_prog_cc_wl='-Wl,' -+ lt_cv_prog_cc_static="${lt_cv_prog_cc_wl}-a ${lt_cv_prog_cc_wl}archive" -+ lt_cv_prog_cc_pic='+Z' -+ ;; -+ -+ irix5* | irix6* | nonstopux*) -+ lt_cv_prog_cc_wl='-Wl,' -+ lt_cv_prog_cc_static='-non_shared' -+ # PIC (with -KPIC) is the default. -+ ;; -+ -+ cygwin* | mingw* | pw32* | os2*) -+ # This hack is so that the source file can tell whether it is being -+ # built for inclusion in a dll (and should export symbols for example). -+ lt_cv_prog_cc_pic='-DDLL_EXPORT' -+ ;; -+ -+ newsos6) -+ lt_cv_prog_cc_pic='-KPIC' -+ lt_cv_prog_cc_static='-Bstatic' -+ ;; -+ -+ osf3* | osf4* | osf5*) -+ # All OSF/1 code is PIC. -+ lt_cv_prog_cc_wl='-Wl,' -+ lt_cv_prog_cc_static='-non_shared' -+ ;; -+ -+ sco3.2v5*) -+ lt_cv_prog_cc_pic='-Kpic' -+ lt_cv_prog_cc_static='-dn' -+ lt_cv_prog_cc_shlib='-belf' -+ ;; -+ -+ solaris*) -+ lt_cv_prog_cc_pic='-KPIC' -+ lt_cv_prog_cc_static='-Bstatic' -+ lt_cv_prog_cc_wl='-Wl,' -+ ;; -+ -+ sunos4*) -+ lt_cv_prog_cc_pic='-PIC' -+ lt_cv_prog_cc_static='-Bstatic' -+ lt_cv_prog_cc_wl='-Qoption ld ' -+ ;; -+ -+ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) -+ lt_cv_prog_cc_pic='-KPIC' -+ lt_cv_prog_cc_static='-Bstatic' -+ lt_cv_prog_cc_wl='-Wl,' -+ ;; -+ -+ uts4*) -+ lt_cv_prog_cc_pic='-pic' -+ lt_cv_prog_cc_static='-Bstatic' -+ ;; -+ -+ sysv4*MP*) -+ if test -d /usr/nec ;then -+ lt_cv_prog_cc_pic='-Kconform_pic' -+ lt_cv_prog_cc_static='-Bstatic' -+ fi -+ ;; -+ -+ *) -+ lt_cv_prog_cc_can_build_shared=no -+ ;; -+ esac -+ fi -+ -+fi -+ -+if test -z "$lt_cv_prog_cc_pic"; then -+ echo "$ac_t""none" 1>&6 -+else -+ echo "$ac_t""$lt_cv_prog_cc_pic" 1>&6 -+ -+ # Check to make sure the pic_flag actually works. -+ echo $ac_n "checking if $compiler PIC flag $lt_cv_prog_cc_pic works""... $ac_c" 1>&6 -+echo "configure:2910: checking if $compiler PIC flag $lt_cv_prog_cc_pic works" >&5 -+ if eval "test \"`echo '$''{'lt_cv_prog_cc_pic_works'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ save_CFLAGS="$CFLAGS" -+ CFLAGS="$CFLAGS $lt_cv_prog_cc_pic -DPIC" -+ cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then -+ rm -rf conftest* -+ case $host_os in -+ hpux9* | hpux10* | hpux11*) -+ # On HP-UX, both CC and GCC only warn that PIC is supported... then -+ # they create non-PIC objects. So, if there were any warnings, we -+ # assume that PIC is not supported. -+ if test -s conftest.err; then -+ lt_cv_prog_cc_pic_works=no -+ else -+ lt_cv_prog_cc_pic_works=yes -+ fi -+ ;; -+ *) -+ lt_cv_prog_cc_pic_works=yes -+ ;; -+ esac -+ -+else -+ echo "configure: failed program was:" >&5 -+ cat conftest.$ac_ext >&5 -+ rm -rf conftest* -+ lt_cv_prog_cc_pic_works=no -+ -+fi -+rm -f conftest* -+ CFLAGS="$save_CFLAGS" -+ -+fi -+ -+ -+ if test "X$lt_cv_prog_cc_pic_works" = Xno; then -+ lt_cv_prog_cc_pic= -+ lt_cv_prog_cc_can_build_shared=no -+ else -+ lt_cv_prog_cc_pic=" $lt_cv_prog_cc_pic" -+ fi -+ -+ echo "$ac_t""$lt_cv_prog_cc_pic_works" 1>&6 -+fi -+ -+# Check for any special shared library compilation flags. -+if test -n "$lt_cv_prog_cc_shlib"; then -+ echo "configure: warning: \`$CC' requires \`$lt_cv_prog_cc_shlib' to build shared libraries" 1>&2 -+ if echo "$old_CC $old_CFLAGS " | egrep -e "[ ]$lt_cv_prog_cc_shlib[ ]" >/dev/null; then : -+ else -+ echo "configure: warning: add \`$lt_cv_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure" 1>&2 -+ lt_cv_prog_cc_can_build_shared=no -+ fi -+fi -+ -+echo $ac_n "checking if $compiler static flag $lt_cv_prog_cc_static works""... $ac_c" 1>&6 -+echo "configure:2976: checking if $compiler static flag $lt_cv_prog_cc_static works" >&5 -+if eval "test \"`echo '$''{'lt_cv_prog_cc_static_works'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ lt_cv_prog_cc_static_works=no -+ save_LDFLAGS="$LDFLAGS" -+ LDFLAGS="$LDFLAGS $lt_cv_prog_cc_static" -+ cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -+ rm -rf conftest* -+ lt_cv_prog_cc_static_works=yes -+else -+ echo "configure: failed program was:" >&5 -+ cat conftest.$ac_ext >&5 -+fi -+rm -f conftest* -+ LDFLAGS="$save_LDFLAGS" -+ -+fi -+ -+ -+# Belt *and* braces to stop my trousers falling down: -+test "X$lt_cv_prog_cc_static_works" = Xno && lt_cv_prog_cc_static= -+echo "$ac_t""$lt_cv_prog_cc_static_works" 1>&6 -+ -+pic_flag="$lt_cv_prog_cc_pic" -+special_shlib_compile_flags="$lt_cv_prog_cc_shlib" -+wl="$lt_cv_prog_cc_wl" -+link_static_flag="$lt_cv_prog_cc_static" -+no_builtin_flag="$lt_cv_prog_cc_no_builtin" -+can_build_shared="$lt_cv_prog_cc_can_build_shared" -+ -+ -+# Check to see if options -o and -c are simultaneously supported by compiler -+echo $ac_n "checking if $compiler supports -c -o file.$ac_objext""... $ac_c" 1>&6 -+echo "configure:3018: checking if $compiler supports -c -o file.$ac_objext" >&5 -+if eval "test \"`echo '$''{'lt_cv_compiler_c_o'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ -+$rm -r conftest 2>/dev/null -+mkdir conftest -+cd conftest -+echo "int some_variable = 0;" > conftest.$ac_ext -+mkdir out -+# According to Tom Tromey, Ian Lance Taylor reported there are C compilers -+# that will create temporary files in the current directory regardless of -+# the output directory. Thus, making CWD read-only will cause this test -+# to fail, enabling locking or at least warning the user not to do parallel -+# builds. -+chmod -w . -+save_CFLAGS="$CFLAGS" -+CFLAGS="$CFLAGS -o out/conftest2.$ac_objext" -+compiler_c_o=no -+if { (eval echo configure:3037: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then -+ # The compiler can only warn and ignore the option if not recognized -+ # So say no if there are warnings -+ if test -s out/conftest.err; then -+ lt_cv_compiler_c_o=no -+ else -+ lt_cv_compiler_c_o=yes -+ fi -+else -+ # Append any errors to the config.log. -+ cat out/conftest.err 1>&5 -+ lt_cv_compiler_c_o=no -+fi -+CFLAGS="$save_CFLAGS" -+chmod u+w . -+$rm conftest* out/* -+rmdir out -+cd .. -+rmdir conftest -+$rm -r conftest 2>/dev/null -+ -+fi -+ -+compiler_c_o=$lt_cv_compiler_c_o -+echo "$ac_t""$compiler_c_o" 1>&6 -+ -+if test x"$compiler_c_o" = x"yes"; then -+ # Check to see if we can write to a .lo -+ echo $ac_n "checking if $compiler supports -c -o file.lo""... $ac_c" 1>&6 -+echo "configure:3066: checking if $compiler supports -c -o file.lo" >&5 -+ if eval "test \"`echo '$''{'lt_cv_compiler_o_lo'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ -+ lt_cv_compiler_o_lo=no -+ save_CFLAGS="$CFLAGS" -+ CFLAGS="$CFLAGS -c -o conftest.lo" -+ save_objext="$ac_objext" -+ ac_objext=lo -+ cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then -+ rm -rf conftest* -+ # The compiler can only warn and ignore the option if not recognized -+ # So say no if there are warnings -+ if test -s conftest.err; then -+ lt_cv_compiler_o_lo=no -+ else -+ lt_cv_compiler_o_lo=yes -+ fi -+ -+else -+ echo "configure: failed program was:" >&5 -+ cat conftest.$ac_ext >&5 -+fi -+rm -f conftest* -+ ac_objext="$save_objext" -+ CFLAGS="$save_CFLAGS" -+ -+fi -+ -+ compiler_o_lo=$lt_cv_compiler_o_lo -+ echo "$ac_t""$compiler_o_lo" 1>&6 -+else -+ compiler_o_lo=no -+fi -+ -+# Check to see if we can do hard links to lock some files if needed -+hard_links="nottested" -+if test "$compiler_c_o" = no && test "$need_locks" != no; then -+ # do not overwrite the value of need_locks provided by the user -+ echo $ac_n "checking if we can lock with hard links""... $ac_c" 1>&6 -+echo "configure:3115: checking if we can lock with hard links" >&5 -+ hard_links=yes -+ $rm conftest* -+ ln conftest.a conftest.b 2>/dev/null && hard_links=no -+ touch conftest.a -+ ln conftest.a conftest.b 2>&5 || hard_links=no -+ ln conftest.a conftest.b 2>/dev/null && hard_links=no -+ echo "$ac_t""$hard_links" 1>&6 -+ if test "$hard_links" = no; then -+ echo "configure: warning: \`$CC' does not support \`-c -o', so \`make -j' may be unsafe" 1>&2 -+ need_locks=warn -+ fi -+else -+ need_locks=no -+fi -+ -+if test "$GCC" = yes; then -+ # Check to see if options -fno-rtti -fno-exceptions are supported by compiler -+ echo $ac_n "checking if $compiler supports -fno-rtti -fno-exceptions""... $ac_c" 1>&6 -+echo "configure:3134: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 -+ echo "int some_variable = 0;" > conftest.$ac_ext -+ save_CFLAGS="$CFLAGS" -+ CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.$ac_ext" -+ compiler_rtti_exceptions=no -+ cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then -+ rm -rf conftest* -+ # The compiler can only warn and ignore the option if not recognized -+ # So say no if there are warnings -+ if test -s conftest.err; then -+ compiler_rtti_exceptions=no -+ else -+ compiler_rtti_exceptions=yes -+ fi -+ -+else -+ echo "configure: failed program was:" >&5 -+ cat conftest.$ac_ext >&5 -+fi -+rm -f conftest* -+ CFLAGS="$save_CFLAGS" -+ echo "$ac_t""$compiler_rtti_exceptions" 1>&6 -+ -+ if test "$compiler_rtti_exceptions" = "yes"; then -+ no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions' -+ else -+ no_builtin_flag=' -fno-builtin' -+ fi -+fi -+ -+# See if the linker supports building shared libraries. -+echo $ac_n "checking whether the linker ($LD) supports shared libraries""... $ac_c" 1>&6 -+echo "configure:3174: checking whether the linker ($LD) supports shared libraries" >&5 -+ -+allow_undefined_flag= -+no_undefined_flag= -+need_lib_prefix=unknown -+need_version=unknown -+# when you set need_version to no, make sure it does not cause -set_version -+# flags to be left without arguments -+archive_cmds= -+archive_expsym_cmds= -+old_archive_from_new_cmds= -+old_archive_from_expsyms_cmds= -+export_dynamic_flag_spec= -+whole_archive_flag_spec= -+thread_safe_flag_spec= -+hardcode_into_libs=no -+hardcode_libdir_flag_spec= -+hardcode_libdir_separator= -+hardcode_direct=no -+hardcode_minus_L=no -+hardcode_shlibpath_var=unsupported -+runpath_var= -+link_all_deplibs=unknown -+always_export_symbols=no -+export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols' -+# include_expsyms should be a list of space-separated symbols to be *always* -+# included in the symbol list -+include_expsyms= -+# exclude_expsyms can be an egrep regular expression of symbols to exclude -+# it will be wrapped by ` (' and `)$', so one must not match beginning or -+# end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', -+# as well as any symbol that contains `d'. -+exclude_expsyms="_GLOBAL_OFFSET_TABLE_" -+# Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out -+# platforms (ab)use it in PIC code, but their linkers get confused if -+# the symbol is explicitly referenced. Since portable code cannot -+# rely on this symbol name, it's probably fine to never include it in -+# preloaded symbol tables. -+extract_expsyms_cmds= -+ -+case $host_os in -+cygwin* | mingw* | pw32*) -+ # FIXME: the MSVC++ port hasn't been tested in a loooong time -+ # When not using gcc, we currently assume that we are using -+ # Microsoft Visual C++. -+ if test "$GCC" != yes; then -+ with_gnu_ld=no -+ fi -+ ;; -+openbsd*) -+ with_gnu_ld=no -+ ;; -+esac -+ -+ld_shlibs=yes -+if test "$with_gnu_ld" = yes; then -+ # If archive_cmds runs LD, not CC, wlarc should be empty -+ wlarc='${wl}' -+ -+ # See if GNU ld supports shared libraries. -+ case $host_os in -+ aix3* | aix4* | aix5*) -+ # On AIX, the GNU linker is very broken -+ # Note:Check GNU linker on AIX 5-IA64 when/if it becomes available. -+ ld_shlibs=no -+ cat <&2 -+ -+*** Warning: the GNU linker, at least up to release 2.9.1, is reported -+*** to be unable to reliably create shared libraries on AIX. -+*** Therefore, libtool is disabling shared libraries support. If you -+*** really care for shared libraries, you may want to modify your PATH -+*** so that a non-GNU linker is found, and then restart. -+ -+EOF -+ ;; -+ -+ amigaos*) -+ archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_minus_L=yes -+ -+ # Samuel A. Falvo II reports -+ # that the semantics of dynamic libraries on AmigaOS, at least up -+ # to version 4, is to share data among multiple programs linked -+ # with the same dynamic library. Since this doesn't match the -+ # behavior of shared libraries on other platforms, we can use -+ # them. -+ ld_shlibs=no -+ ;; -+ -+ beos*) -+ if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then -+ allow_undefined_flag=unsupported -+ # Joseph Beckenbach says some releases of gcc -+ # support --undefined. This deserves some investigation. FIXME -+ archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' -+ else -+ ld_shlibs=no -+ fi -+ ;; -+ -+ cygwin* | mingw* | pw32*) -+ # hardcode_libdir_flag_spec is actually meaningless, as there is -+ # no search path for DLLs. -+ hardcode_libdir_flag_spec='-L$libdir' -+ allow_undefined_flag=unsupported -+ always_export_symbols=yes -+ -+ extract_expsyms_cmds='test -f $output_objdir/impgen.c || \ -+ sed -e "/^# \/\* impgen\.c starts here \*\//,/^# \/\* impgen.c ends here \*\// { s/^# //;s/^# *$//; p; }" -e d < $''0 > $output_objdir/impgen.c~ -+ test -f $output_objdir/impgen.exe || (cd $output_objdir && \ -+ if test "x$HOST_CC" != "x" ; then $HOST_CC -o impgen impgen.c ; \ -+ else $CC -o impgen impgen.c ; fi)~ -+ $output_objdir/impgen $dir/$soroot > $output_objdir/$soname-def' -+ -+ old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib' -+ -+ # cygwin and mingw dlls have different entry points and sets of symbols -+ # to exclude. -+ # FIXME: what about values for MSVC? -+ dll_entry=__cygwin_dll_entry@12 -+ dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12~ -+ case $host_os in -+ mingw*) -+ # mingw values -+ dll_entry=_DllMainCRTStartup@12 -+ dll_exclude_symbols=DllMain@12,DllMainCRTStartup@12,DllEntryPoint@12~ -+ ;; -+ esac -+ -+ # mingw and cygwin differ, and it's simplest to just exclude the union -+ # of the two symbol sets. -+ dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12,DllMainCRTStartup@12,DllEntryPoint@12 -+ -+ # recent cygwin and mingw systems supply a stub DllMain which the user -+ # can override, but on older systems we have to supply one (in ltdll.c) -+ if test "x$lt_cv_need_dllmain" = "xyes"; then -+ ltdll_obj='$output_objdir/$soname-ltdll.'"$ac_objext " -+ ltdll_cmds='test -f $output_objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $''0 > $output_objdir/$soname-ltdll.c~ -+ test -f $output_objdir/$soname-ltdll.$ac_objext || (cd $output_objdir && $CC -c $soname-ltdll.c)~' -+ else -+ ltdll_obj= -+ ltdll_cmds= -+ fi -+ -+ # Extract the symbol export list from an `--export-all' def file, -+ # then regenerate the def file from the symbol export list, so that -+ # the compiled dll only exports the symbol export list. -+ # Be careful not to strip the DATA tag left be newer dlltools. -+ export_symbols_cmds="$ltdll_cmds"' -+ $DLLTOOL --export-all --exclude-symbols '$dll_exclude_symbols' --output-def $output_objdir/$soname-def '$ltdll_obj'$libobjs $convenience~ -+ sed -e "1,/EXPORTS/d" -e "s/ @ [0-9]*//" -e "s/ *;.*$//" < $output_objdir/$soname-def > $export_symbols' -+ -+ # If the export-symbols file already is a .def file (1st line -+ # is EXPORTS), use it as is. -+ # If DATA tags from a recent dlltool are present, honour them! -+ archive_expsym_cmds='if test "x`sed 1q $export_symbols`" = xEXPORTS; then -+ cp $export_symbols $output_objdir/$soname-def; -+ else -+ echo EXPORTS > $output_objdir/$soname-def; -+ _lt_hint=1; -+ cat $export_symbols | while read symbol; do -+ set dummy \$symbol; -+ case \$# in -+ 2) echo " \$2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;; -+ 4) echo " \$2 \$3 \$4 ; " >> $output_objdir/$soname-def; _lt_hint=`expr \$_lt_hint - 1`;; -+ *) echo " \$2 @ \$_lt_hint \$3 ; " >> $output_objdir/$soname-def;; -+ esac; -+ _lt_hint=`expr 1 + \$_lt_hint`; -+ done; -+ fi~ -+ '"$ltdll_cmds"' -+ $CC -Wl,--base-file,$output_objdir/$soname-base '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~ -+ $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp~ -+ $CC -Wl,--base-file,$output_objdir/$soname-base $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~ -+ $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp --output-lib $output_objdir/$libname.dll.a~ -+ $CC $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags' -+ ;; -+ -+ netbsd*) -+ if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then -+ archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' -+ wlarc= -+ else -+ archive_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' -+ archive_expsym_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' -+ fi -+ ;; -+ -+ solaris* | sysv5*) -+ if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then -+ ld_shlibs=no -+ cat <&2 -+ -+*** Warning: The releases 2.8.* of the GNU linker cannot reliably -+*** create shared libraries on Solaris systems. Therefore, libtool -+*** is disabling shared libraries support. We urge you to upgrade GNU -+*** binutils to release 2.9.1 or newer. Another option is to modify -+*** your PATH or compiler configuration so that the native linker is -+*** used, and then restart. -+ -+EOF -+ elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then -+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' -+ archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' -+ else -+ ld_shlibs=no -+ fi -+ ;; -+ -+ sunos4*) -+ archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' -+ wlarc= -+ hardcode_direct=yes -+ hardcode_shlibpath_var=no -+ ;; -+ -+ *) -+ if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then -+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' -+ archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' -+ else -+ ld_shlibs=no -+ fi -+ ;; -+ esac -+ -+ if test "$ld_shlibs" = yes; then -+ runpath_var=LD_RUN_PATH -+ hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir' -+ export_dynamic_flag_spec='${wl}--export-dynamic' -+ case $host_os in -+ cygwin* | mingw* | pw32*) -+ # dlltool doesn't understand --whole-archive et. al. -+ whole_archive_flag_spec= -+ ;; -+ *) -+ # ancient GNU ld didn't support --whole-archive et. al. -+ if $LD --help 2>&1 | egrep 'no-whole-archive' > /dev/null; then -+ whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' -+ else -+ whole_archive_flag_spec= -+ fi -+ ;; -+ esac -+ fi -+else -+ # PORTME fill in a description of your system's linker (not GNU ld) -+ case $host_os in -+ aix3*) -+ allow_undefined_flag=unsupported -+ always_export_symbols=yes -+ archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' -+ # Note: this linker hardcodes the directories in LIBPATH if there -+ # are no directories specified by -L. -+ hardcode_minus_L=yes -+ if test "$GCC" = yes && test -z "$link_static_flag"; then -+ # Neither direct hardcoding nor static linking is supported with a -+ # broken collect2. -+ hardcode_direct=unsupported -+ fi -+ ;; -+ -+ aix4* | aix5*) -+ if test "$host_cpu" = ia64; then -+ # On IA64, the linker does run time linking by default, so we don't -+ # have to do anything special. -+ aix_use_runtimelinking=no -+ exp_sym_flag='-Bexport' -+ no_entry_flag="" -+ else -+ aix_use_runtimelinking=no -+ -+ # Test if we are trying to use run time linking or normal -+ # AIX style linking. If -brtl is somewhere in LDFLAGS, we -+ # need to do runtime linking. -+ case $host_os in aix4.[23]|aix4.[23].*|aix5*) -+ for ld_flag in $LDFLAGS; do -+ case $ld_flag in -+ *-brtl*) -+ aix_use_runtimelinking=yes -+ break -+ ;; -+ esac -+ done -+ esac -+ -+ exp_sym_flag='-bexport' -+ no_entry_flag='-bnoentry' -+ fi -+ -+ # When large executables or shared objects are built, AIX ld can -+ # have problems creating the table of contents. If linking a library -+ # or program results in "error TOC overflow" add -mminimal-toc to -+ # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not -+ # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. -+ -+ hardcode_direct=yes -+ archive_cmds='' -+ hardcode_libdir_separator=':' -+ if test "$GCC" = yes; then -+ case $host_os in aix4.[012]|aix4.[012].*) -+ collect2name=`${CC} -print-prog-name=collect2` -+ if test -f "$collect2name" && \ -+ strings "$collect2name" | grep resolve_lib_name >/dev/null -+ then -+ # We have reworked collect2 -+ hardcode_direct=yes -+ else -+ # We have old collect2 -+ hardcode_direct=unsupported -+ # It fails to find uninstalled libraries when the uninstalled -+ # path is not listed in the libpath. Setting hardcode_minus_L -+ # to unsupported forces relinking -+ hardcode_minus_L=yes -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_libdir_separator= -+ fi -+ esac -+ -+ shared_flag='-shared' -+ else -+ # not using gcc -+ if test "$host_cpu" = ia64; then -+ shared_flag='${wl}-G' -+ else -+ if test "$aix_use_runtimelinking" = yes; then -+ shared_flag='${wl}-G' -+ else -+ shared_flag='${wl}-bM:SRE' -+ fi -+ fi -+ fi -+ -+ # It seems that -bexpall can do strange things, so it is better to -+ # generate a list of symbols to export. -+ always_export_symbols=yes -+ if test "$aix_use_runtimelinking" = yes; then -+ # Warning - without using the other runtime loading flags (-brtl), -+ # -berok will link without error, but may produce a broken library. -+ allow_undefined_flag='-berok' -+ hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib' -+ archive_expsym_cmds="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag" -+ else -+ if test "$host_cpu" = ia64; then -+ hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib' -+ allow_undefined_flag="-z nodefs" -+ archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname ${wl}-h$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" -+ else -+ hardcode_libdir_flag_spec='${wl}-bnolibpath ${wl}-blibpath:$libdir:/usr/lib:/lib' -+ # Warning - without using the other run time loading flags, -+ # -berok will link without error, but may produce a broken library. -+ allow_undefined_flag='${wl}-berok' -+ # This is a bit strange, but is similar to how AIX traditionally builds -+ # it's shared libraries. -+ archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"' ~$AR -crlo $output_objdir/$libname$release.a $output_objdir/$soname' -+ fi -+ fi -+ ;; -+ -+ amigaos*) -+ archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_minus_L=yes -+ # see comment about different semantics on the GNU ld section -+ ld_shlibs=no -+ ;; -+ -+ cygwin* | mingw* | pw32*) -+ # When not using gcc, we currently assume that we are using -+ # Microsoft Visual C++. -+ # hardcode_libdir_flag_spec is actually meaningless, as there is -+ # no search path for DLLs. -+ hardcode_libdir_flag_spec=' ' -+ allow_undefined_flag=unsupported -+ # Tell ltmain to make .lib files, not .a files. -+ libext=lib -+ # FIXME: Setting linknames here is a bad hack. -+ archive_cmds='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | sed -e '\''s/ -lc$//'\''` -link -dll~linknames=' -+ # The linker will automatically build a .lib file if we build a DLL. -+ old_archive_from_new_cmds='true' -+ # FIXME: Should let the user specify the lib program. -+ old_archive_cmds='lib /OUT:$oldlib$oldobjs$old_deplibs' -+ fix_srcfile_path='`cygpath -w "$srcfile"`' -+ ;; -+ -+ darwin* | rhapsody*) -+ case "$host_os" in -+ rhapsody* | darwin1.[012]) -+ allow_undefined_flag='-undefined suppress' -+ ;; -+ *) # Darwin 1.3 on -+ allow_undefined_flag='-flat_namespace -undefined suppress' -+ ;; -+ esac -+ # FIXME: Relying on posixy $() will cause problems for -+ # cross-compilation, but unfortunately the echo tests do not -+ # yet detect zsh echo's removal of \ escapes. Also zsh mangles -+ # `"' quotes if we put them in here... so don't! -+ archive_cmds='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs && $CC $(test .$module = .yes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib ${lib}-master.o $deplibs$linker_flags $(test .$module != .yes && echo -install_name $rpath/$soname $verstring)' -+ # We need to add '_' to the symbols in $export_symbols first -+ #archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols' -+ hardcode_direct=yes -+ hardcode_shlibpath_var=no -+ whole_archive_flag_spec='-all_load $convenience' -+ ;; -+ -+ freebsd1*) -+ ld_shlibs=no -+ ;; -+ -+ # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor -+ # support. Future versions do this automatically, but an explicit c++rt0.o -+ # does not break anything, and helps significantly (at the cost of a little -+ # extra space). -+ freebsd2.2*) -+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' -+ hardcode_libdir_flag_spec='-R$libdir' -+ hardcode_direct=yes -+ hardcode_shlibpath_var=no -+ ;; -+ -+ # Unfortunately, older versions of FreeBSD 2 do not have this feature. -+ freebsd2*) -+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_direct=yes -+ hardcode_minus_L=yes -+ hardcode_shlibpath_var=no -+ ;; -+ -+ # FreeBSD 3 and greater uses gcc -shared to do shared libraries. -+ freebsd*) -+ archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' -+ hardcode_libdir_flag_spec='-R$libdir' -+ hardcode_direct=yes -+ hardcode_shlibpath_var=no -+ ;; -+ -+ hpux9* | hpux10* | hpux11*) -+ case $host_os in -+ hpux9*) archive_cmds='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' ;; -+ *) archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' ;; -+ esac -+ hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' -+ hardcode_libdir_separator=: -+ hardcode_direct=yes -+ hardcode_minus_L=yes # Not in the search PATH, but as the default -+ # location of the library. -+ export_dynamic_flag_spec='${wl}-E' -+ ;; -+ -+ irix5* | irix6* | nonstopux*) -+ if test "$GCC" = yes; then -+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' -+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' -+ else -+ archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' -+ hardcode_libdir_flag_spec='-rpath $libdir' -+ fi -+ hardcode_libdir_separator=: -+ link_all_deplibs=yes -+ ;; -+ -+ netbsd*) -+ if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then -+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out -+ else -+ archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF -+ fi -+ hardcode_libdir_flag_spec='-R$libdir' -+ hardcode_direct=yes -+ hardcode_shlibpath_var=no -+ ;; -+ -+ newsos6) -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_direct=yes -+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' -+ hardcode_libdir_separator=: -+ hardcode_shlibpath_var=no -+ ;; -+ -+ openbsd*) -+ hardcode_direct=yes -+ hardcode_shlibpath_var=no -+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then -+ archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' -+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir' -+ export_dynamic_flag_spec='${wl}-E' -+ else -+ case "$host_os" in -+ openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*) -+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_libdir_flag_spec='-R$libdir' -+ ;; -+ *) -+ archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' -+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir' -+ ;; -+ esac -+ fi -+ ;; -+ -+ os2*) -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_minus_L=yes -+ allow_undefined_flag=unsupported -+ archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' -+ old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' -+ ;; -+ -+ osf3*) -+ if test "$GCC" = yes; then -+ allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' -+ archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' -+ else -+ allow_undefined_flag=' -expect_unresolved \*' -+ archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' -+ fi -+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' -+ hardcode_libdir_separator=: -+ ;; -+ -+ osf4* | osf5*) # as osf3* with the addition of -msym flag -+ if test "$GCC" = yes; then -+ allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' -+ archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' -+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' -+ else -+ allow_undefined_flag=' -expect_unresolved \*' -+ archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' -+ archive_expsym_cmds='for i in `cat $export_symbols`; do printf "-exported_symbol " >> $lib.exp; echo "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~ -+ $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp' -+ -+ #Both c and cxx compiler support -rpath directly -+ hardcode_libdir_flag_spec='-rpath $libdir' -+ fi -+ hardcode_libdir_separator=: -+ ;; -+ -+ sco3.2v5*) -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_shlibpath_var=no -+ runpath_var=LD_RUN_PATH -+ hardcode_runpath_var=yes -+ export_dynamic_flag_spec='${wl}-Bexport' -+ ;; -+ -+ solaris*) -+ # gcc --version < 3.0 without binutils cannot create self contained -+ # shared libraries reliably, requiring libgcc.a to resolve some of -+ # the object symbols generated in some cases. Libraries that use -+ # assert need libgcc.a to resolve __eprintf, for example. Linking -+ # a copy of libgcc.a into every shared library to guarantee resolving -+ # such symbols causes other problems: According to Tim Van Holder -+ # , C++ libraries end up with a separate -+ # (to the application) exception stack for one thing. -+ no_undefined_flag=' -z defs' -+ if test "$GCC" = yes; then -+ case `$CC --version 2>/dev/null` in -+ [12].*) -+ cat <&2 -+ -+*** Warning: Releases of GCC earlier than version 3.0 cannot reliably -+*** create self contained shared libraries on Solaris systems, without -+*** introducing a dependency on libgcc.a. Therefore, libtool is disabling -+*** -no-undefined support, which will at least allow you to build shared -+*** libraries. However, you may find that when you link such libraries -+*** into an application without using GCC, you have to manually add -+*** \`gcc --print-libgcc-file-name\` to the link command. We urge you to -+*** upgrade to a newer version of GCC. Another option is to rebuild your -+*** current GCC to use the GNU linker from GNU binutils 2.9.1 or newer. -+ -+EOF -+ no_undefined_flag= -+ ;; -+ esac -+ fi -+ # $CC -shared without GNU ld will not create a library from C++ -+ # object files and a static libstdc++, better avoid it by now -+ archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ -+ $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' -+ hardcode_libdir_flag_spec='-R$libdir' -+ hardcode_shlibpath_var=no -+ case $host_os in -+ solaris2.[0-5] | solaris2.[0-5].*) ;; -+ *) # Supported since Solaris 2.6 (maybe 2.5.1?) -+ whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;; -+ esac -+ link_all_deplibs=yes -+ ;; -+ -+ sunos4*) -+ if test "x$host_vendor" = xsequent; then -+ # Use $CC to link under sequent, because it throws in some extra .o -+ # files that make .init and .fini sections work. -+ archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' -+ else -+ archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' -+ fi -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_direct=yes -+ hardcode_minus_L=yes -+ hardcode_shlibpath_var=no -+ ;; -+ -+ sysv4) -+ case $host_vendor in -+ sni) -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_direct=yes # is this really true??? -+ ;; -+ siemens) -+ ## LD is ld it makes a PLAMLIB -+ ## CC just makes a GrossModule. -+ archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' -+ reload_cmds='$CC -r -o $output$reload_objs' -+ hardcode_direct=no -+ ;; -+ motorola) -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_direct=no #Motorola manual says yes, but my tests say they lie -+ ;; -+ esac -+ runpath_var='LD_RUN_PATH' -+ hardcode_shlibpath_var=no -+ ;; -+ -+ sysv4.3*) -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_shlibpath_var=no -+ export_dynamic_flag_spec='-Bexport' -+ ;; -+ -+ sysv5*) -+ no_undefined_flag=' -z text' -+ # $CC -shared without GNU ld will not create a library from C++ -+ # object files and a static libstdc++, better avoid it by now -+ archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ -+ $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' -+ hardcode_libdir_flag_spec= -+ hardcode_shlibpath_var=no -+ runpath_var='LD_RUN_PATH' -+ ;; -+ -+ uts4*) -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_shlibpath_var=no -+ ;; -+ -+ dgux*) -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_shlibpath_var=no -+ ;; -+ -+ sysv4*MP*) -+ if test -d /usr/nec; then -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_shlibpath_var=no -+ runpath_var=LD_RUN_PATH -+ hardcode_runpath_var=yes -+ ld_shlibs=yes -+ fi -+ ;; -+ -+ sysv4.2uw2*) -+ archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_direct=yes -+ hardcode_minus_L=no -+ hardcode_shlibpath_var=no -+ hardcode_runpath_var=yes -+ runpath_var=LD_RUN_PATH -+ ;; -+ -+ sysv5uw7* | unixware7*) -+ no_undefined_flag='${wl}-z ${wl}text' -+ if test "$GCC" = yes; then -+ archive_cmds='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' -+ else -+ archive_cmds='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' -+ fi -+ runpath_var='LD_RUN_PATH' -+ hardcode_shlibpath_var=no -+ ;; -+ -+ *) -+ ld_shlibs=no -+ ;; -+ esac -+fi -+echo "$ac_t""$ld_shlibs" 1>&6 -+test "$ld_shlibs" = no && can_build_shared=no -+ -+# Check hardcoding attributes. -+echo $ac_n "checking how to hardcode library paths into programs""... $ac_c" 1>&6 -+echo "configure:3873: checking how to hardcode library paths into programs" >&5 -+hardcode_action= -+if test -n "$hardcode_libdir_flag_spec" || \ -+ test -n "$runpath_var"; then -+ -+ # We can hardcode non-existant directories. -+ if test "$hardcode_direct" != no && -+ # If the only mechanism to avoid hardcoding is shlibpath_var, we -+ # have to relink, otherwise we might link with an installed library -+ # when we should be linking with a yet-to-be-installed one -+ ## test "$hardcode_shlibpath_var" != no && -+ test "$hardcode_minus_L" != no; then -+ # Linking always hardcodes the temporary library directory. -+ hardcode_action=relink -+ else -+ # We can link without hardcoding, and we can hardcode nonexisting dirs. -+ hardcode_action=immediate -+ fi -+else -+ # We cannot hardcode anything, or else we can only hardcode existing -+ # directories. -+ hardcode_action=unsupported -+fi -+echo "$ac_t""$hardcode_action" 1>&6 -+ -+striplib= -+old_striplib= -+echo $ac_n "checking whether stripping libraries is possible""... $ac_c" 1>&6 -+echo "configure:3901: checking whether stripping libraries is possible" >&5 -+if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then -+ test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" -+ test -z "$striplib" && striplib="$STRIP --strip-unneeded" -+ echo "$ac_t""yes" 1>&6 -+else -+ echo "$ac_t""no" 1>&6 -+fi -+ -+reload_cmds='$LD$reload_flag -o $output$reload_objs' -+test -z "$deplibs_check_method" && deplibs_check_method=unknown -+ -+# PORTME Fill in your ld.so characteristics -+echo $ac_n "checking dynamic linker characteristics""... $ac_c" 1>&6 -+echo "configure:3915: checking dynamic linker characteristics" >&5 -+library_names_spec= -+libname_spec='lib$name' -+soname_spec= -+postinstall_cmds= -+postuninstall_cmds= -+finish_cmds= -+finish_eval= -+shlibpath_var= -+shlibpath_overrides_runpath=unknown -+version_type=none -+dynamic_linker="$host_os ld.so" -+sys_lib_dlsearch_path_spec="/lib /usr/lib" -+sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" -+ -+case $host_os in -+aix3*) -+ version_type=linux -+ library_names_spec='${libname}${release}.so$versuffix $libname.a' -+ shlibpath_var=LIBPATH -+ -+ # AIX has no versioning support, so we append a major version to the name. -+ soname_spec='${libname}${release}.so$major' -+ ;; -+ -+aix4* | aix5*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ hardcode_into_libs=yes -+ if test "$host_cpu" = ia64; then -+ # AIX 5 supports IA64 -+ library_names_spec='${libname}${release}.so$major ${libname}${release}.so$versuffix $libname.so' -+ shlibpath_var=LD_LIBRARY_PATH -+ else -+ # With GCC up to 2.95.x, collect2 would create an import file -+ # for dependence libraries. The import file would start with -+ # the line `#! .'. This would cause the generated library to -+ # depend on `.', always an invalid library. This was fixed in -+ # development snapshots of GCC prior to 3.0. -+ case $host_os in -+ aix4 | aix4.[01] | aix4.[01].*) -+ if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' -+ echo ' yes ' -+ echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then -+ : -+ else -+ can_build_shared=no -+ fi -+ ;; -+ esac -+ # AIX (on Power*) has no versioning support, so currently we can -+ # not hardcode correct soname into executable. Probably we can -+ # add versioning support to collect2, so additional links can -+ # be useful in future. -+ if test "$aix_use_runtimelinking" = yes; then -+ # If using run time linking (on AIX 4.2 or later) use lib.so -+ # instead of lib.a to let people know that these are not -+ # typical AIX shared libraries. -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ else -+ # We preserve .a as extension for shared libraries through AIX4.2 -+ # and later when we are not doing run time linking. -+ library_names_spec='${libname}${release}.a $libname.a' -+ soname_spec='${libname}${release}.so$major' -+ fi -+ shlibpath_var=LIBPATH -+ fi -+ hardcode_into_libs=yes -+ ;; -+ -+amigaos*) -+ library_names_spec='$libname.ixlibrary $libname.a' -+ # Create ${libname}_ixlibrary.a entries in /sys/libs. -+ finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done' -+ ;; -+ -+beos*) -+ library_names_spec='${libname}.so' -+ dynamic_linker="$host_os ld.so" -+ shlibpath_var=LIBRARY_PATH -+ ;; -+ -+bsdi4*) -+ version_type=linux -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" -+ sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" -+ export_dynamic_flag_spec=-rdynamic -+ # the default ld.so.conf also contains /usr/contrib/lib and -+ # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow -+ # libtool to hard-code these into programs -+ ;; -+ -+cygwin* | mingw* | pw32*) -+ version_type=windows -+ need_version=no -+ need_lib_prefix=no -+ case $GCC,$host_os in -+ yes,cygwin*) -+ library_names_spec='$libname.dll.a' -+ soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll' -+ postinstall_cmds='dlpath=`bash 2>&1 -c '\''. $dir/${file}i;echo \$dlname'\''`~ -+ dldir=$destdir/`dirname \$dlpath`~ -+ test -d \$dldir || mkdir -p \$dldir~ -+ $install_prog .libs/$dlname \$dldir/$dlname' -+ postuninstall_cmds='dldll=`bash 2>&1 -c '\''. $file; echo \$dlname'\''`~ -+ dlpath=$dir/\$dldll~ -+ $rm \$dlpath' -+ ;; -+ yes,mingw*) -+ library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll' -+ sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g" -e "s,=/,/,g"` -+ ;; -+ yes,pw32*) -+ library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/./-/g'`${versuffix}.dll' -+ ;; -+ *) -+ library_names_spec='${libname}`echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll $libname.lib' -+ ;; -+ esac -+ dynamic_linker='Win32 ld.exe' -+ # FIXME: first we should search . and the directory the executable is in -+ shlibpath_var=PATH -+ ;; -+ -+darwin* | rhapsody*) -+ dynamic_linker="$host_os dyld" -+ version_type=darwin -+ need_lib_prefix=no -+ need_version=no -+ # FIXME: Relying on posixy $() will cause problems for -+ # cross-compilation, but unfortunately the echo tests do not -+ # yet detect zsh echo's removal of \ escapes. -+ library_names_spec='${libname}${release}${versuffix}.$(test .$module = .yes && echo so || echo dylib) ${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib) ${libname}.$(test .$module = .yes && echo so || echo dylib)' -+ soname_spec='${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib)' -+ shlibpath_overrides_runpath=yes -+ shlibpath_var=DYLD_LIBRARY_PATH -+ ;; -+ -+freebsd1*) -+ dynamic_linker=no -+ ;; -+ -+kfreebsd*-gnu*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=no -+ hardcode_into_libs=yes -+ dynamic_linker='GNU/FreeBSD ld.so' -+ ;; -+ -+freebsd*) -+ objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` -+ version_type=freebsd-$objformat -+ case $version_type in -+ freebsd-elf*) -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so' -+ need_version=no -+ need_lib_prefix=no -+ ;; -+ freebsd-*) -+ library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix' -+ need_version=yes -+ ;; -+ esac -+ shlibpath_var=LD_LIBRARY_PATH -+ case $host_os in -+ freebsd2*) -+ shlibpath_overrides_runpath=yes -+ ;; -+ *) -+ shlibpath_overrides_runpath=no -+ hardcode_into_libs=yes -+ ;; -+ esac -+ ;; -+ -+gnu*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so${major} ${libname}.so' -+ soname_spec='${libname}${release}.so$major' -+ shlibpath_var=LD_LIBRARY_PATH -+ hardcode_into_libs=yes -+ ;; -+ -+hpux9* | hpux10* | hpux11*) -+ # Give a soname corresponding to the major version so that dld.sl refuses to -+ # link against other versions. -+ dynamic_linker="$host_os dld.sl" -+ version_type=sunos -+ need_lib_prefix=no -+ need_version=no -+ shlibpath_var=SHLIB_PATH -+ shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH -+ library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl' -+ soname_spec='${libname}${release}.sl$major' -+ # HP-UX runs *really* slowly unless shared libraries are mode 555. -+ postinstall_cmds='chmod 555 $lib' -+ ;; -+ -+irix5* | irix6* | nonstopux*) -+ case $host_os in -+ nonstopux*) version_type=nonstopux ;; -+ *) version_type=irix ;; -+ esac -+ need_lib_prefix=no -+ need_version=no -+ soname_spec='${libname}${release}.so$major' -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so' -+ case $host_os in -+ irix5* | nonstopux*) -+ libsuff= shlibsuff= -+ ;; -+ *) -+ case $LD in # libtool.m4 will add one of these switches to LD -+ *-32|*"-32 ") libsuff= shlibsuff= libmagic=32-bit;; -+ *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 libmagic=N32;; -+ *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;; -+ *) libsuff= shlibsuff= libmagic=never-match;; -+ esac -+ ;; -+ esac -+ shlibpath_var=LD_LIBRARY${shlibsuff}_PATH -+ shlibpath_overrides_runpath=no -+ sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" -+ sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" -+ ;; -+ -+# No shared lib support for Linux oldld, aout, or coff. -+linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*) -+ dynamic_linker=no -+ ;; -+ -+# This must be Linux ELF. -+linux-gnu*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=no -+ # This implies no fast_install, which is unacceptable. -+ # Some rework will be needed to allow for fast_install -+ # before this can be enabled. -+ hardcode_into_libs=yes -+ -+ # We used to test for /lib/ld.so.1 and disable shared libraries on -+ # powerpc, because MkLinux only supported shared libraries with the -+ # GNU dynamic linker. Since this was broken with cross compilers, -+ # most powerpc-linux boxes support dynamic linking these days and -+ # people can always --disable-shared, the test was removed, and we -+ # assume the GNU/Linux dynamic linker is in use. -+ dynamic_linker='GNU/Linux ld.so' -+ ;; -+ -+netbsd*) -+ version_type=sunos -+ need_lib_prefix=no -+ need_version=no -+ if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then -+ library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' -+ dynamic_linker='NetBSD (a.out) ld.so' -+ else -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so' -+ soname_spec='${libname}${release}.so$major' -+ dynamic_linker='NetBSD ld.elf_so' -+ fi -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=yes -+ hardcode_into_libs=yes -+ ;; -+ -+newsos6) -+ version_type=linux -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=yes -+ ;; -+ -+openbsd*) -+ version_type=sunos -+ need_lib_prefix=no -+ need_version=no -+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then -+ case "$host_os" in -+ openbsd2.[89] | openbsd2.[89].*) -+ shlibpath_overrides_runpath=no -+ ;; -+ *) -+ shlibpath_overrides_runpath=yes -+ ;; -+ esac -+ else -+ shlibpath_overrides_runpath=yes -+ fi -+ library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ ;; -+ -+os2*) -+ libname_spec='$name' -+ need_lib_prefix=no -+ library_names_spec='$libname.dll $libname.a' -+ dynamic_linker='OS/2 ld.exe' -+ shlibpath_var=LIBPATH -+ ;; -+ -+osf3* | osf4* | osf5*) -+ version_type=osf -+ need_version=no -+ need_lib_prefix=no -+ soname_spec='${libname}${release}.so$major' -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ shlibpath_var=LD_LIBRARY_PATH -+ sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" -+ sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" -+ hardcode_into_libs=yes -+ ;; -+ -+sco3.2v5*) -+ version_type=osf -+ soname_spec='${libname}${release}.so$major' -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ shlibpath_var=LD_LIBRARY_PATH -+ ;; -+ -+solaris*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=yes -+ hardcode_into_libs=yes -+ # ldd complains unless libraries are executable -+ postinstall_cmds='chmod +x $lib' -+ ;; -+ -+sunos4*) -+ version_type=sunos -+ library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' -+ finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=yes -+ if test "$with_gnu_ld" = yes; then -+ need_lib_prefix=no -+ fi -+ need_version=yes -+ ;; -+ -+sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) -+ version_type=linux -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ shlibpath_var=LD_LIBRARY_PATH -+ case $host_vendor in -+ sni) -+ shlibpath_overrides_runpath=no -+ need_lib_prefix=no -+ export_dynamic_flag_spec='${wl}-Blargedynsym' -+ runpath_var=LD_RUN_PATH -+ ;; -+ siemens) -+ need_lib_prefix=no -+ ;; -+ motorola) -+ need_lib_prefix=no -+ need_version=no -+ shlibpath_overrides_runpath=no -+ sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' -+ ;; -+ esac -+ ;; -+ -+uts4*) -+ version_type=linux -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ shlibpath_var=LD_LIBRARY_PATH -+ ;; -+ -+dgux*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ shlibpath_var=LD_LIBRARY_PATH -+ ;; -+ -+sysv4*MP*) -+ if test -d /usr/nec ;then -+ version_type=linux -+ library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so' -+ soname_spec='$libname.so.$major' -+ shlibpath_var=LD_LIBRARY_PATH -+ fi -+ ;; -+ -+*) -+ dynamic_linker=no -+ ;; -+esac -+echo "$ac_t""$dynamic_linker" 1>&6 -+test "$dynamic_linker" = no && can_build_shared=no -+ -+# Report the final consequences. -+echo $ac_n "checking if libtool supports shared libraries""... $ac_c" 1>&6 -+echo "configure:4339: checking if libtool supports shared libraries" >&5 -+echo "$ac_t""$can_build_shared" 1>&6 -+ -+echo $ac_n "checking whether to build shared libraries""... $ac_c" 1>&6 -+echo "configure:4343: checking whether to build shared libraries" >&5 -+test "$can_build_shared" = "no" && enable_shared=no -+ -+# On AIX, shared libraries and static libraries use the same namespace, and -+# are all built from PIC. -+case "$host_os" in -+aix3*) -+ test "$enable_shared" = yes && enable_static=no -+ if test -n "$RANLIB"; then -+ archive_cmds="$archive_cmds~\$RANLIB \$lib" -+ postinstall_cmds='$RANLIB $lib' -+ fi -+ ;; -+ -+aix4*) -+ if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then -+ test "$enable_shared" = yes && enable_static=no -+ fi -+ ;; -+esac -+echo "$ac_t""$enable_shared" 1>&6 -+ -+echo $ac_n "checking whether to build static libraries""... $ac_c" 1>&6 -+echo "configure:4366: checking whether to build static libraries" >&5 -+# Make sure either enable_shared or enable_static is yes. -+test "$enable_shared" = yes || enable_static=yes -+echo "$ac_t""$enable_static" 1>&6 -+ -+if test "$hardcode_action" = relink; then -+ # Fast installation is not supported -+ enable_fast_install=no -+elif test "$shlibpath_overrides_runpath" = yes || -+ test "$enable_shared" = no; then -+ # Fast installation is not necessary -+ enable_fast_install=needless -+fi -+ -+variables_saved_for_relink="PATH $shlibpath_var $runpath_var" -+if test "$GCC" = yes; then -+ variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" -+fi -+ -+if test "x$enable_dlopen" != xyes; then -+ enable_dlopen=unknown -+ enable_dlopen_self=unknown -+ enable_dlopen_self_static=unknown -+else -+ lt_cv_dlopen=no -+ lt_cv_dlopen_libs= -+ -+ case $host_os in -+ beos*) -+ lt_cv_dlopen="load_add_on" -+ lt_cv_dlopen_libs= -+ lt_cv_dlopen_self=yes -+ ;; -+ -+ cygwin* | mingw* | pw32*) -+ lt_cv_dlopen="LoadLibrary" -+ lt_cv_dlopen_libs= -+ ;; -+ -+ *) -+ echo $ac_n "checking for shl_load""... $ac_c" 1>&6 -+echo "configure:4407: checking for shl_load" >&5 -+if eval "test \"`echo '$''{'ac_cv_func_shl_load'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ cat > conftest.$ac_ext < -+/* Override any gcc2 internal prototype to avoid an error. */ -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char shl_load(); -+ -+int main() { -+ -+/* The GNU C library defines this for functions which it implements -+ to always fail with ENOSYS. Some functions are actually named -+ something starting with __ and the normal name is an alias. */ -+#if defined (__stub_shl_load) || defined (__stub___shl_load) -+choke me -+#else -+shl_load(); -+#endif -+ -+; return 0; } -+EOF -+if { (eval echo configure:4435: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -+ rm -rf conftest* -+ eval "ac_cv_func_shl_load=yes" -+else -+ echo "configure: failed program was:" >&5 -+ cat conftest.$ac_ext >&5 -+ rm -rf conftest* -+ eval "ac_cv_func_shl_load=no" -+fi -+rm -f conftest* -+fi -+ -+if eval "test \"`echo '$ac_cv_func_'shl_load`\" = yes"; then -+ echo "$ac_t""yes" 1>&6 -+ lt_cv_dlopen="shl_load" -+else -+ echo "$ac_t""no" 1>&6 -+echo $ac_n "checking for shl_load in -ldld""... $ac_c" 1>&6 -+echo "configure:4453: checking for shl_load in -ldld" >&5 -+ac_lib_var=`echo dld'_'shl_load | sed 'y%./+-%__p_%'` -+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ ac_save_LIBS="$LIBS" -+LIBS="-ldld $LIBS" -+cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -+ rm -rf conftest* -+ eval "ac_cv_lib_$ac_lib_var=yes" -+else -+ echo "configure: failed program was:" >&5 -+ cat conftest.$ac_ext >&5 -+ rm -rf conftest* -+ eval "ac_cv_lib_$ac_lib_var=no" -+fi -+rm -f conftest* -+LIBS="$ac_save_LIBS" -+ -+fi -+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then -+ echo "$ac_t""yes" 1>&6 -+ lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld" -+else -+ echo "$ac_t""no" 1>&6 -+echo $ac_n "checking for dlopen""... $ac_c" 1>&6 -+echo "configure:4491: checking for dlopen" >&5 -+if eval "test \"`echo '$''{'ac_cv_func_dlopen'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ cat > conftest.$ac_ext < -+/* Override any gcc2 internal prototype to avoid an error. */ -+/* We use char because int might match the return type of a gcc2 -+ builtin and then its argument prototype would still apply. */ -+char dlopen(); -+ -+int main() { -+ -+/* The GNU C library defines this for functions which it implements -+ to always fail with ENOSYS. Some functions are actually named -+ something starting with __ and the normal name is an alias. */ -+#if defined (__stub_dlopen) || defined (__stub___dlopen) -+choke me -+#else -+dlopen(); -+#endif -+ -+; return 0; } -+EOF -+if { (eval echo configure:4519: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -+ rm -rf conftest* -+ eval "ac_cv_func_dlopen=yes" -+else -+ echo "configure: failed program was:" >&5 -+ cat conftest.$ac_ext >&5 -+ rm -rf conftest* -+ eval "ac_cv_func_dlopen=no" -+fi -+rm -f conftest* -+fi -+ -+if eval "test \"`echo '$ac_cv_func_'dlopen`\" = yes"; then -+ echo "$ac_t""yes" 1>&6 -+ lt_cv_dlopen="dlopen" -+else -+ echo "$ac_t""no" 1>&6 -+echo $ac_n "checking for dlopen in -ldl""... $ac_c" 1>&6 -+echo "configure:4537: checking for dlopen in -ldl" >&5 -+ac_lib_var=`echo dl'_'dlopen | sed 'y%./+-%__p_%'` -+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ ac_save_LIBS="$LIBS" -+LIBS="-ldl $LIBS" -+cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -+ rm -rf conftest* -+ eval "ac_cv_lib_$ac_lib_var=yes" -+else -+ echo "configure: failed program was:" >&5 -+ cat conftest.$ac_ext >&5 -+ rm -rf conftest* -+ eval "ac_cv_lib_$ac_lib_var=no" -+fi -+rm -f conftest* -+LIBS="$ac_save_LIBS" -+ -+fi -+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then -+ echo "$ac_t""yes" 1>&6 -+ lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl" -+else -+ echo "$ac_t""no" 1>&6 -+echo $ac_n "checking for dlopen in -lsvld""... $ac_c" 1>&6 -+echo "configure:4575: checking for dlopen in -lsvld" >&5 -+ac_lib_var=`echo svld'_'dlopen | sed 'y%./+-%__p_%'` -+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ ac_save_LIBS="$LIBS" -+LIBS="-lsvld $LIBS" -+cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -+ rm -rf conftest* -+ eval "ac_cv_lib_$ac_lib_var=yes" -+else -+ echo "configure: failed program was:" >&5 -+ cat conftest.$ac_ext >&5 -+ rm -rf conftest* -+ eval "ac_cv_lib_$ac_lib_var=no" -+fi -+rm -f conftest* -+LIBS="$ac_save_LIBS" -+ -+fi -+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then -+ echo "$ac_t""yes" 1>&6 -+ lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld" -+else -+ echo "$ac_t""no" 1>&6 -+echo $ac_n "checking for dld_link in -ldld""... $ac_c" 1>&6 -+echo "configure:4613: checking for dld_link in -ldld" >&5 -+ac_lib_var=`echo dld'_'dld_link | sed 'y%./+-%__p_%'` -+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ ac_save_LIBS="$LIBS" -+LIBS="-ldld $LIBS" -+cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -+ rm -rf conftest* -+ eval "ac_cv_lib_$ac_lib_var=yes" -+else -+ echo "configure: failed program was:" >&5 -+ cat conftest.$ac_ext >&5 -+ rm -rf conftest* -+ eval "ac_cv_lib_$ac_lib_var=no" -+fi -+rm -f conftest* -+LIBS="$ac_save_LIBS" -+ -+fi -+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then -+ echo "$ac_t""yes" 1>&6 -+ lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld" -+else -+ echo "$ac_t""no" 1>&6 -+fi -+ -+ -+fi -+ -+ -+fi -+ -+ -+fi -+ -+ -+fi -+ -+ -+fi -+ -+ ;; -+ esac -+ -+ if test "x$lt_cv_dlopen" != xno; then -+ enable_dlopen=yes -+ else -+ enable_dlopen=no -+ fi -+ -+ case $lt_cv_dlopen in -+ dlopen) -+ save_CPPFLAGS="$CPPFLAGS" -+ test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" -+ -+ save_LDFLAGS="$LDFLAGS" -+ eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" -+ -+ save_LIBS="$LIBS" -+ LIBS="$lt_cv_dlopen_libs $LIBS" -+ -+ echo $ac_n "checking whether a program can dlopen itself""... $ac_c" 1>&6 -+echo "configure:4688: checking whether a program can dlopen itself" >&5 -+if eval "test \"`echo '$''{'lt_cv_dlopen_self'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ if test "$cross_compiling" = yes; then : -+ lt_cv_dlopen_self=cross -+else -+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 -+ lt_status=$lt_dlunknown -+ cat > conftest.$ac_ext < -+#endif -+ -+#include -+ -+#ifdef RTLD_GLOBAL -+# define LT_DLGLOBAL RTLD_GLOBAL -+#else -+# ifdef DL_GLOBAL -+# define LT_DLGLOBAL DL_GLOBAL -+# else -+# define LT_DLGLOBAL 0 -+# endif -+#endif -+ -+/* We may have to define LT_DLLAZY_OR_NOW in the command line if we -+ find out it does not work in some platform. */ -+#ifndef LT_DLLAZY_OR_NOW -+# ifdef RTLD_LAZY -+# define LT_DLLAZY_OR_NOW RTLD_LAZY -+# else -+# ifdef DL_LAZY -+# define LT_DLLAZY_OR_NOW DL_LAZY -+# else -+# ifdef RTLD_NOW -+# define LT_DLLAZY_OR_NOW RTLD_NOW -+# else -+# ifdef DL_NOW -+# define LT_DLLAZY_OR_NOW DL_NOW -+# else -+# define LT_DLLAZY_OR_NOW 0 -+# endif -+# endif -+# endif -+# endif -+#endif -+ -+#ifdef __cplusplus -+extern "C" void exit (int); -+#endif -+ -+void fnord() { int i=42;} -+int main () -+{ -+ void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); -+ int status = $lt_dlunknown; -+ -+ if (self) -+ { -+ if (dlsym (self,"fnord")) status = $lt_dlno_uscore; -+ else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; -+ /* dlclose (self); */ -+ } -+ -+ exit (status); -+} -+EOF -+ if { (eval echo configure:4759: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} 2>/dev/null; then -+ (./conftest; exit; ) 2>/dev/null -+ lt_status=$? -+ case x$lt_status in -+ x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;; -+ x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;; -+ x$lt_unknown|x*) lt_cv_dlopen_self=no ;; -+ esac -+ else : -+ # compilation failed -+ lt_cv_dlopen_self=no -+ fi -+fi -+rm -fr conftest* -+ -+ -+fi -+ -+echo "$ac_t""$lt_cv_dlopen_self" 1>&6 -+ -+ if test "x$lt_cv_dlopen_self" = xyes; then -+ LDFLAGS="$LDFLAGS $link_static_flag" -+ echo $ac_n "checking whether a statically linked program can dlopen itself""... $ac_c" 1>&6 -+echo "configure:4782: checking whether a statically linked program can dlopen itself" >&5 -+if eval "test \"`echo '$''{'lt_cv_dlopen_self_static'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ if test "$cross_compiling" = yes; then : -+ lt_cv_dlopen_self_static=cross -+else -+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 -+ lt_status=$lt_dlunknown -+ cat > conftest.$ac_ext < -+#endif -+ -+#include -+ -+#ifdef RTLD_GLOBAL -+# define LT_DLGLOBAL RTLD_GLOBAL -+#else -+# ifdef DL_GLOBAL -+# define LT_DLGLOBAL DL_GLOBAL -+# else -+# define LT_DLGLOBAL 0 -+# endif -+#endif -+ -+/* We may have to define LT_DLLAZY_OR_NOW in the command line if we -+ find out it does not work in some platform. */ -+#ifndef LT_DLLAZY_OR_NOW -+# ifdef RTLD_LAZY -+# define LT_DLLAZY_OR_NOW RTLD_LAZY -+# else -+# ifdef DL_LAZY -+# define LT_DLLAZY_OR_NOW DL_LAZY -+# else -+# ifdef RTLD_NOW -+# define LT_DLLAZY_OR_NOW RTLD_NOW -+# else -+# ifdef DL_NOW -+# define LT_DLLAZY_OR_NOW DL_NOW -+# else -+# define LT_DLLAZY_OR_NOW 0 -+# endif -+# endif -+# endif -+# endif -+#endif -+ -+#ifdef __cplusplus -+extern "C" void exit (int); -+#endif -+ -+void fnord() { int i=42;} -+int main () -+{ -+ void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); -+ int status = $lt_dlunknown; -+ -+ if (self) -+ { -+ if (dlsym (self,"fnord")) status = $lt_dlno_uscore; -+ else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; -+ /* dlclose (self); */ -+ } -+ -+ exit (status); -+} -+EOF -+ if { (eval echo configure:4853: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} 2>/dev/null; then -+ (./conftest; exit; ) 2>/dev/null -+ lt_status=$? -+ case x$lt_status in -+ x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;; -+ x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;; -+ x$lt_unknown|x*) lt_cv_dlopen_self_static=no ;; -+ esac -+ else : -+ # compilation failed -+ lt_cv_dlopen_self_static=no -+ fi -+fi -+rm -fr conftest* -+ -+ -+fi -+ -+echo "$ac_t""$lt_cv_dlopen_self_static" 1>&6 -+ fi -+ -+ CPPFLAGS="$save_CPPFLAGS" -+ LDFLAGS="$save_LDFLAGS" -+ LIBS="$save_LIBS" -+ ;; -+ esac -+ -+ case $lt_cv_dlopen_self in -+ yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; -+ *) enable_dlopen_self=unknown ;; -+ esac -+ -+ case $lt_cv_dlopen_self_static in -+ yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; -+ *) enable_dlopen_self_static=unknown ;; -+ esac -+fi -+ -+ -+if test "$enable_shared" = yes && test "$GCC" = yes; then -+ case $archive_cmds in -+ *'~'*) -+ # FIXME: we may have to deal with multi-command sequences. -+ ;; -+ '$CC '*) -+ # Test whether the compiler implicitly links with -lc since on some -+ # systems, -lgcc has to come before -lc. If gcc already passes -lc -+ # to ld, don't add -lc before -lgcc. -+ echo $ac_n "checking whether -lc should be explicitly linked in""... $ac_c" 1>&6 -+echo "configure:4902: checking whether -lc should be explicitly linked in" >&5 -+ if eval "test \"`echo '$''{'lt_cv_archive_cmds_need_lc'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ $rm conftest* -+ echo 'static int dummy;' > conftest.$ac_ext -+ -+ if { (eval echo configure:4909: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then -+ soname=conftest -+ lib=conftest -+ libobjs=conftest.$ac_objext -+ deplibs= -+ wl=$lt_cv_prog_cc_wl -+ compiler_flags=-v -+ linker_flags=-v -+ verstring= -+ output_objdir=. -+ libname=conftest -+ save_allow_undefined_flag=$allow_undefined_flag -+ allow_undefined_flag= -+ if { (eval echo configure:4922: \"$archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1\") 1>&5; (eval $archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1) 2>&5; } -+ then -+ lt_cv_archive_cmds_need_lc=no -+ else -+ lt_cv_archive_cmds_need_lc=yes -+ fi -+ allow_undefined_flag=$save_allow_undefined_flag -+ else -+ cat conftest.err 1>&5 -+ fi -+fi -+ -+ echo "$ac_t""$lt_cv_archive_cmds_need_lc" 1>&6 -+ ;; -+ esac -+fi -+need_lc=${lt_cv_archive_cmds_need_lc-yes} -+ -+# The second clause should only fire when bootstrapping the -+# libtool distribution, otherwise you forgot to ship ltmain.sh -+# with your package, and you will get complaints that there are -+# no rules to generate ltmain.sh. -+if test -f "$ltmain"; then -+ : -+else -+ # If there is no Makefile yet, we rely on a make rule to execute -+ # `config.status --recheck' to rerun these tests and create the -+ # libtool script then. -+ test -f Makefile && make "$ltmain" -+fi -+ -+if test -f "$ltmain"; then -+ trap "$rm \"${ofile}T\"; exit 1" 1 2 15 -+ $rm -f "${ofile}T" -+ -+ echo creating $ofile -+ -+ # Now quote all the things that may contain metacharacters while being -+ # careful not to overquote the AC_SUBSTed values. We take copies of the -+ # variables and quote the copies for generation of the libtool script. -+ for var in echo old_CC old_CFLAGS SED \ -+ AR AR_FLAGS CC LD LN_S NM SHELL \ -+ reload_flag reload_cmds wl \ -+ pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \ -+ thread_safe_flag_spec whole_archive_flag_spec libname_spec \ -+ library_names_spec soname_spec \ -+ RANLIB old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \ -+ old_postuninstall_cmds archive_cmds archive_expsym_cmds postinstall_cmds \ -+ postuninstall_cmds extract_expsyms_cmds old_archive_from_expsyms_cmds \ -+ old_striplib striplib file_magic_cmd export_symbols_cmds \ -+ deplibs_check_method allow_undefined_flag no_undefined_flag \ -+ finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \ -+ global_symbol_to_c_name_address \ -+ hardcode_libdir_flag_spec hardcode_libdir_separator \ -+ sys_lib_search_path_spec sys_lib_dlsearch_path_spec \ -+ compiler_c_o compiler_o_lo need_locks exclude_expsyms include_expsyms; do -+ -+ case $var in -+ reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \ -+ old_postinstall_cmds | old_postuninstall_cmds | \ -+ export_symbols_cmds | archive_cmds | archive_expsym_cmds | \ -+ extract_expsyms_cmds | old_archive_from_expsyms_cmds | \ -+ postinstall_cmds | postuninstall_cmds | \ -+ finish_cmds | sys_lib_search_path_spec | sys_lib_dlsearch_path_spec) -+ # Double-quote double-evaled strings. -+ eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" -+ ;; -+ *) -+ eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\"" -+ ;; -+ esac -+ done -+ -+ cat <<__EOF__ > "${ofile}T" -+#! $SHELL -+ -+# `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. -+# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP) -+# NOTE: Changes made to this file will be lost: look at ltmain.sh. -+# -+# Copyright (C) 1996-2000 Free Software Foundation, Inc. -+# Originally by Gordon Matzigkeit , 1996 -+# -+# This program is free software; you can redistribute it and/or modify -+# it under the terms of the GNU General Public License as published by -+# the Free Software Foundation; either version 2 of the License, or -+# (at your option) any later version. -+# -+# This program is distributed in the hope that it will be useful, but -+# WITHOUT ANY WARRANTY; without even the implied warranty of -+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+# General Public License for more details. -+# -+# You should have received a copy of the GNU General Public License -+# along with this program; if not, write to the Free Software -+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -+# -+# As a special exception to the GNU General Public License, if you -+# distribute this file as part of a program that contains a -+# configuration script generated by Autoconf, you may include it under -+# the same distribution terms that you use for the rest of that program. -+ -+# A sed that does not truncate output. -+SED=$lt_SED -+ -+# Sed that helps us avoid accidentally triggering echo(1) options like -n. -+Xsed="${SED} -e s/^X//" -+ -+# The HP-UX ksh and POSIX shell print the target directory to stdout -+# if CDPATH is set. -+if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi -+ -+# ### BEGIN LIBTOOL CONFIG -+ -+# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: -+ -+# Shell to use when invoking shell scripts. -+SHELL=$lt_SHELL -+ -+# Whether or not to build shared libraries. -+build_libtool_libs=$enable_shared -+ -+# Whether or not to build static libraries. -+build_old_libs=$enable_static -+ -+# Whether or not to add -lc for building shared libraries. -+build_libtool_need_lc=$need_lc -+ -+# Whether or not to optimize for fast installation. -+fast_install=$enable_fast_install -+ -+# The host system. -+host_alias=$host_alias -+host=$host -+ -+# An echo program that does not interpret backslashes. -+echo=$lt_echo -+ -+# The archiver. -+AR=$lt_AR -+AR_FLAGS=$lt_AR_FLAGS -+ -+# The default C compiler. -+CC=$lt_CC -+ -+# Is the compiler the GNU C compiler? -+with_gcc=$GCC -+ -+# The linker used to build libraries. -+LD=$lt_LD -+ -+# Whether we need hard or soft links. -+LN_S=$lt_LN_S -+ -+# A BSD-compatible nm program. -+NM=$lt_NM -+ -+# A symbol stripping program -+STRIP="$STRIP" -+ -+# Used to examine libraries when file_magic_cmd begins "file" -+MAGIC_CMD=$MAGIC_CMD -+ -+# Used on cygwin: DLL creation program. -+DLLTOOL="$DLLTOOL" -+ -+# Used on cygwin: object dumper. -+OBJDUMP="$OBJDUMP" -+ -+# Used on cygwin: assembler. -+AS="$AS" -+ -+# The name of the directory that contains temporary libtool files. -+objdir=$objdir -+ -+# How to create reloadable object files. -+reload_flag=$lt_reload_flag -+reload_cmds=$lt_reload_cmds -+ -+# How to pass a linker flag through the compiler. -+wl=$lt_wl -+ -+# Object file suffix (normally "o"). -+objext="$ac_objext" -+ -+# Old archive suffix (normally "a"). -+libext="$libext" -+ -+# Executable file suffix (normally ""). -+exeext="$exeext" -+ -+# Additional compiler flags for building library objects. -+pic_flag=$lt_pic_flag -+pic_mode=$pic_mode -+ -+# Does compiler simultaneously support -c and -o options? -+compiler_c_o=$lt_compiler_c_o -+ -+# Can we write directly to a .lo ? -+compiler_o_lo=$lt_compiler_o_lo -+ -+# Must we lock files when doing compilation ? -+need_locks=$lt_need_locks -+ -+# Do we need the lib prefix for modules? -+need_lib_prefix=$need_lib_prefix - --LD="$ac_cv_path_LD" --if test -n "$LD"; then -- echo "$ac_t""$LD" 1>&6 --else -- echo "$ac_t""no" 1>&6 --fi --test -z "$LD" && { echo "configure: error: no acceptable ld found in \$PATH" 1>&2; exit 1; } --echo $ac_n "checking if the linker ($LD) is GNU ld""... $ac_c" 1>&6 --echo "configure:1424: checking if the linker ($LD) is GNU ld" >&5 --if eval "test \"`echo '$''{'ac_cv_prog_gnu_ld'+set}'`\" = set"; then -- echo $ac_n "(cached) $ac_c" 1>&6 --else -- # I'd rather use --version here, but apparently some GNU ld's only accept -v. --if $LD -v 2>&1 &5; then -- ac_cv_prog_gnu_ld=yes --else -- ac_cv_prog_gnu_ld=no --fi --fi -+# Do we need a version for libraries? -+need_version=$need_version - --echo "$ac_t""$ac_cv_prog_gnu_ld" 1>&6 -+# Whether dlopen is supported. -+dlopen_support=$enable_dlopen - -+# Whether dlopen of programs is supported. -+dlopen_self=$enable_dlopen_self - --echo $ac_n "checking for BSD-compatible nm""... $ac_c" 1>&6 --echo "configure:1440: checking for BSD-compatible nm" >&5 --if eval "test \"`echo '$''{'ac_cv_path_NM'+set}'`\" = set"; then -- echo $ac_n "(cached) $ac_c" 1>&6 --else -- if test -n "$NM"; then -- # Let the user override the test. -- ac_cv_path_NM="$NM" --else -- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" -- for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do -- test -z "$ac_dir" && ac_dir=. -- if test -f $ac_dir/nm || test -f $ac_dir/nm$ac_exeext ; then -- # Check to see if the nm accepts a BSD-compat flag. -- # Adding the `sed 1q' prevents false positives on HP-UX, which says: -- # nm: unknown option "B" ignored -- if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then -- ac_cv_path_NM="$ac_dir/nm -B" -- break -- elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then -- ac_cv_path_NM="$ac_dir/nm -p" -- break -- else -- ac_cv_path_NM=${ac_cv_path_NM="$ac_dir/nm"} # keep the first match, but -- continue # so that we can try to find one that supports BSD flags -- fi -- fi -- done -- IFS="$ac_save_ifs" -- test -z "$ac_cv_path_NM" && ac_cv_path_NM=nm --fi --fi -+# Whether dlopen of statically linked programs is supported. -+dlopen_self_static=$enable_dlopen_self_static - --NM="$ac_cv_path_NM" --echo "$ac_t""$NM" 1>&6 -+# Compiler flag to prevent dynamic linking. -+link_static_flag=$lt_link_static_flag - --echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6 --echo "configure:1476: checking whether ln -s works" >&5 --if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then -- echo $ac_n "(cached) $ac_c" 1>&6 --else -- rm -f conftestdata --if ln -s X conftestdata 2>/dev/null --then -- rm -f conftestdata -- ac_cv_prog_LN_S="ln -s" --else -- ac_cv_prog_LN_S=ln --fi --fi --LN_S="$ac_cv_prog_LN_S" --if test "$ac_cv_prog_LN_S" = "ln -s"; then -- echo "$ac_t""yes" 1>&6 --else -- echo "$ac_t""no" 1>&6 --fi -+# Compiler flag to turn off builtin functions. -+no_builtin_flag=$lt_no_builtin_flag - -+# Compiler flag to allow reflexive dlopens. -+export_dynamic_flag_spec=$lt_export_dynamic_flag_spec - --case "$target" in --NONE) lt_target="$host" ;; --*) lt_target="$target" ;; --esac -+# Compiler flag to generate shared objects directly from archives. -+whole_archive_flag_spec=$lt_whole_archive_flag_spec - --# Check for any special flags to pass to ltconfig. --libtool_flags="--cache-file=$cache_file" --test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared" --test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static" --test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install" --test "$ac_cv_prog_gcc" = yes && libtool_flags="$libtool_flags --with-gcc" --test "$ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld" -+# Compiler flag to generate thread-safe objects. -+thread_safe_flag_spec=$lt_thread_safe_flag_spec - -+# Library versioning type. -+version_type=$version_type - --# Check whether --enable-libtool-lock or --disable-libtool-lock was given. --if test "${enable_libtool_lock+set}" = set; then -- enableval="$enable_libtool_lock" -- : --fi -+# Format of library name prefix. -+libname_spec=$lt_libname_spec - --test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock" --test x"$silent" = xyes && libtool_flags="$libtool_flags --silent" -+# List of archive names. First name is the real one, the rest are links. -+# The last name is the one that the linker finds with -lNAME. -+library_names_spec=$lt_library_names_spec - --# Some flags need to be propagated to the compiler or linker for good --# libtool support. --case "$lt_target" in --*-*-irix6*) -- # Find out which ABI we are using. -- echo '#line 1525 "configure"' > conftest.$ac_ext -- if { (eval echo configure:1526: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then -- case "`/usr/bin/file conftest.o`" in -- *32-bit*) -- LD="${LD-ld} -32" -- ;; -- *N32*) -- LD="${LD-ld} -n32" -- ;; -- *64-bit*) -- LD="${LD-ld} -64" -- ;; -- esac -- fi -- rm -rf conftest* -- ;; -+# The coded name of the library, if different from the real name. -+soname_spec=$lt_soname_spec - --*-*-sco3.2v5*) -- # On SCO OpenServer 5, we need -belf to get full-featured binaries. -- SAVE_CFLAGS="$CFLAGS" -- CFLAGS="$CFLAGS -belf" -- echo $ac_n "checking whether the C compiler needs -belf""... $ac_c" 1>&6 --echo "configure:1547: checking whether the C compiler needs -belf" >&5 --if eval "test \"`echo '$''{'lt_cv_cc_needs_belf'+set}'`\" = set"; then -- echo $ac_n "(cached) $ac_c" 1>&6 --else -- cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -- rm -rf conftest* -- lt_cv_cc_needs_belf=yes --else -- echo "configure: failed program was:" >&5 -- cat conftest.$ac_ext >&5 -- rm -rf conftest* -- lt_cv_cc_needs_belf=no --fi --rm -f conftest* --fi -+# Create a temporary old-style archive to link instead of a shared archive. -+old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds - --echo "$ac_t""$lt_cv_cc_needs_belf" 1>&6 -- if test x"$lt_cv_cc_needs_belf" != x"yes"; then -- # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf -- CFLAGS="$SAVE_CFLAGS" -- fi -- ;; -+# Commands used to build and install a shared archive. -+archive_cmds=$lt_archive_cmds -+archive_expsym_cmds=$lt_archive_expsym_cmds -+postinstall_cmds=$lt_postinstall_cmds -+postuninstall_cmds=$lt_postuninstall_cmds - -+# Commands to strip libraries. -+old_striplib=$lt_old_striplib -+striplib=$lt_striplib - --esac -+# Method to check whether dependent libraries are shared objects. -+deplibs_check_method=$lt_deplibs_check_method - -+# Command to use when deplibs_check_method == file_magic. -+file_magic_cmd=$lt_file_magic_cmd - --# Save cache, so that ltconfig can load it --cat > confcache <<\EOF --# This file is a shell script that caches the results of configure --# tests run on this system so they can be shared between configure --# scripts and configure runs. It is not useful on other systems. --# If it contains results you don't want to keep, you may remove or edit it. -+# Flag that allows shared libraries with undefined symbols to be built. -+allow_undefined_flag=$lt_allow_undefined_flag -+ -+# Flag that forces no undefined symbols. -+no_undefined_flag=$lt_no_undefined_flag -+ -+# Commands used to finish a libtool library installation in a directory. -+finish_cmds=$lt_finish_cmds -+ -+# Same as above, but a single script fragment to be evaled but not shown. -+finish_eval=$lt_finish_eval -+ -+# Take the output of nm and produce a listing of raw symbols and C names. -+global_symbol_pipe=$lt_global_symbol_pipe -+ -+# Transform the output of nm in a proper C declaration -+global_symbol_to_cdecl=$lt_global_symbol_to_cdecl -+ -+# Transform the output of nm in a C name address pair -+global_symbol_to_c_name_address=$lt_global_symbol_to_c_name_address -+ -+# This is the shared library runtime path variable. -+runpath_var=$runpath_var -+ -+# This is the shared library path variable. -+shlibpath_var=$shlibpath_var -+ -+# Is shlibpath searched before the hard-coded library search path? -+shlibpath_overrides_runpath=$shlibpath_overrides_runpath -+ -+# How to hardcode a shared library path into an executable. -+hardcode_action=$hardcode_action -+ -+# Whether we should hardcode library paths into libraries. -+hardcode_into_libs=$hardcode_into_libs -+ -+# Flag to hardcode \$libdir into a binary during linking. -+# This must work even if \$libdir does not exist. -+hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec -+ -+# Whether we need a single -rpath flag with a separated argument. -+hardcode_libdir_separator=$lt_hardcode_libdir_separator -+ -+# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the -+# resulting binary. -+hardcode_direct=$hardcode_direct -+ -+# Set to yes if using the -LDIR flag during linking hardcodes DIR into the -+# resulting binary. -+hardcode_minus_L=$hardcode_minus_L -+ -+# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into -+# the resulting binary. -+hardcode_shlibpath_var=$hardcode_shlibpath_var -+ -+# Variables whose values should be saved in libtool wrapper scripts and -+# restored at relink time. -+variables_saved_for_relink="$variables_saved_for_relink" -+ -+# Whether libtool must link a program against all its dependency libraries. -+link_all_deplibs=$link_all_deplibs -+ -+# Compile-time system search path for libraries -+sys_lib_search_path_spec=$lt_sys_lib_search_path_spec -+ -+# Run-time system search path for libraries -+sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec -+ -+# Fix the shell variable \$srcfile for the compiler. -+fix_srcfile_path="$fix_srcfile_path" -+ -+# Set to yes if exported symbols are required. -+always_export_symbols=$always_export_symbols -+ -+# The commands to list exported symbols. -+export_symbols_cmds=$lt_export_symbols_cmds -+ -+# The commands to extract the exported symbol list from a shared archive. -+extract_expsyms_cmds=$lt_extract_expsyms_cmds -+ -+# Symbols that should not be listed in the preloaded symbols. -+exclude_expsyms=$lt_exclude_expsyms -+ -+# Symbols that must always be exported. -+include_expsyms=$lt_include_expsyms -+ -+# ### END LIBTOOL CONFIG -+ -+__EOF__ -+ -+ case $host_os in -+ aix3*) -+ cat <<\EOF >> "${ofile}T" -+ -+# AIX sometimes has problems with the GCC collect2 program. For some -+# reason, if we set the COLLECT_NAMES environment variable, the problems -+# vanish in a puff of smoke. -+if test "X${COLLECT_NAMES+set}" != Xset; then -+ COLLECT_NAMES= -+ export COLLECT_NAMES -+fi -+EOF -+ ;; -+ esac -+ -+ case $host_os in -+ cygwin* | mingw* | pw32* | os2*) -+ cat <<'EOF' >> "${ofile}T" -+ # This is a source program that is used to create dlls on Windows -+ # Don't remove nor modify the starting and closing comments -+# /* ltdll.c starts here */ -+# #define WIN32_LEAN_AND_MEAN -+# #include -+# #undef WIN32_LEAN_AND_MEAN -+# #include - # --# By default, configure uses ./config.cache as the cache file, --# creating it if it does not exist already. You can give configure --# the --cache-file=FILE option to use a different cache file; that is --# what configure does when it calls configure scripts in --# subdirectories, so they share the cache. --# Giving --cache-file=/dev/null disables caching, for debugging configure. --# config.status only pays attention to the cache file if you give it the --# --recheck option to rerun configure. -+# #ifndef __CYGWIN__ -+# # ifdef __CYGWIN32__ -+# # define __CYGWIN__ __CYGWIN32__ -+# # endif -+# #endif -+# -+# #ifdef __cplusplus -+# extern "C" { -+# #endif -+# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved); -+# #ifdef __cplusplus -+# } -+# #endif -+# -+# #ifdef __CYGWIN__ -+# #include -+# DECLARE_CYGWIN_DLL( DllMain ); -+# #endif -+# HINSTANCE __hDllInstance_base; -+# -+# BOOL APIENTRY -+# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved) -+# { -+# __hDllInstance_base = hInst; -+# return TRUE; -+# } -+# /* ltdll.c ends here */ -+ # This is a source program that is used to create import libraries -+ # on Windows for dlls which lack them. Don't remove nor modify the -+ # starting and closing comments -+# /* impgen.c starts here */ -+# /* Copyright (C) 1999-2000 Free Software Foundation, Inc. -+# -+# This file is part of GNU libtool. - # -+# This program is free software; you can redistribute it and/or modify -+# it under the terms of the GNU General Public License as published by -+# the Free Software Foundation; either version 2 of the License, or -+# (at your option) any later version. -+# -+# This program is distributed in the hope that it will be useful, -+# but WITHOUT ANY WARRANTY; without even the implied warranty of -+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+# GNU General Public License for more details. -+# -+# You should have received a copy of the GNU General Public License -+# along with this program; if not, write to the Free Software -+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -+# */ -+# -+# #include /* for printf() */ -+# #include /* for open(), lseek(), read() */ -+# #include /* for O_RDONLY, O_BINARY */ -+# #include /* for strdup() */ -+# -+# /* O_BINARY isn't required (or even defined sometimes) under Unix */ -+# #ifndef O_BINARY -+# #define O_BINARY 0 -+# #endif -+# -+# static unsigned int -+# pe_get16 (fd, offset) -+# int fd; -+# int offset; -+# { -+# unsigned char b[2]; -+# lseek (fd, offset, SEEK_SET); -+# read (fd, b, 2); -+# return b[0] + (b[1]<<8); -+# } -+# -+# static unsigned int -+# pe_get32 (fd, offset) -+# int fd; -+# int offset; -+# { -+# unsigned char b[4]; -+# lseek (fd, offset, SEEK_SET); -+# read (fd, b, 4); -+# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24); -+# } -+# -+# static unsigned int -+# pe_as32 (ptr) -+# void *ptr; -+# { -+# unsigned char *b = ptr; -+# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24); -+# } -+# -+# int -+# main (argc, argv) -+# int argc; -+# char *argv[]; -+# { -+# int dll; -+# unsigned long pe_header_offset, opthdr_ofs, num_entries, i; -+# unsigned long export_rva, export_size, nsections, secptr, expptr; -+# unsigned long name_rvas, nexp; -+# unsigned char *expdata, *erva; -+# char *filename, *dll_name; -+# -+# filename = argv[1]; -+# -+# dll = open(filename, O_RDONLY|O_BINARY); -+# if (dll < 1) -+# return 1; -+# -+# dll_name = filename; -+# -+# for (i=0; filename[i]; i++) -+# if (filename[i] == '/' || filename[i] == '\\' || filename[i] == ':') -+# dll_name = filename + i +1; -+# -+# pe_header_offset = pe_get32 (dll, 0x3c); -+# opthdr_ofs = pe_header_offset + 4 + 20; -+# num_entries = pe_get32 (dll, opthdr_ofs + 92); -+# -+# if (num_entries < 1) /* no exports */ -+# return 1; -+# -+# export_rva = pe_get32 (dll, opthdr_ofs + 96); -+# export_size = pe_get32 (dll, opthdr_ofs + 100); -+# nsections = pe_get16 (dll, pe_header_offset + 4 +2); -+# secptr = (pe_header_offset + 4 + 20 + -+# pe_get16 (dll, pe_header_offset + 4 + 16)); -+# -+# expptr = 0; -+# for (i = 0; i < nsections; i++) -+# { -+# char sname[8]; -+# unsigned long secptr1 = secptr + 40 * i; -+# unsigned long vaddr = pe_get32 (dll, secptr1 + 12); -+# unsigned long vsize = pe_get32 (dll, secptr1 + 16); -+# unsigned long fptr = pe_get32 (dll, secptr1 + 20); -+# lseek(dll, secptr1, SEEK_SET); -+# read(dll, sname, 8); -+# if (vaddr <= export_rva && vaddr+vsize > export_rva) -+# { -+# expptr = fptr + (export_rva - vaddr); -+# if (export_rva + export_size > vaddr + vsize) -+# export_size = vsize - (export_rva - vaddr); -+# break; -+# } -+# } -+# -+# expdata = (unsigned char*)malloc(export_size); -+# lseek (dll, expptr, SEEK_SET); -+# read (dll, expdata, export_size); -+# erva = expdata - export_rva; -+# -+# nexp = pe_as32 (expdata+24); -+# name_rvas = pe_as32 (expdata+32); -+# -+# printf ("EXPORTS\n"); -+# for (i = 0; i&1 | -- case `(ac_space=' '; set | grep ac_space) 2>&1` in -- *ac_space=\ *) -- # `set' does not quote correctly, so add quotes (double-quote substitution -- # turns \\\\ into \\, and sed turns \\ into \). -- sed -n \ -- -e "s/'/'\\\\''/g" \ -- -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p" -- ;; -- *) -- # `set' quotes correctly as required by POSIX, so do not add quotes. -- sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p' - ;; -- esac >> confcache --if cmp -s $cache_file confcache; then -- : --else -- if test -w $cache_file; then -- echo "updating cache $cache_file" -- cat confcache > $cache_file -- else -- echo "not updating unwritable cache $cache_file" -- fi -+ esac -+ -+ # We use sed instead of cat because bash on DJGPP gets confused if -+ # if finds mixed CR/LF and LF-only lines. Since sed operates in -+ # text mode, it properly converts lines to CR/LF. This bash problem -+ # is reportedly fixed, but why not run on old versions too? -+ sed '$q' "$ltmain" >> "${ofile}T" || (rm -f "${ofile}T"; exit 1) -+ -+ mv -f "${ofile}T" "$ofile" || \ -+ (rm -f "$ofile" && cp "${ofile}T" "$ofile" && rm -f "${ofile}T") -+ chmod +x "$ofile" - fi --rm -f confcache - - --# Actually configure libtool. ac_aux_dir is where install-sh is found. --CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \ --LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ --LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" \ --DLLTOOL="$DLLTOOL" AS="$AS" OBJDUMP="$OBJDUMP" \ --${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig --no-reexec \ --$libtool_flags --no-verify $ac_aux_dir/ltmain.sh $lt_target \ --|| { echo "configure: error: libtool configure failed" 1>&2; exit 1; } - --# Reload cache, that may have been modified by ltconfig --if test -r "$cache_file"; then -- echo "loading cache $cache_file" -- . $cache_file --else -- echo "creating cache $cache_file" -- > $cache_file --fi - - - # This can be used to rebuild libtool when needed --LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh" -+LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh" - - # Always use our own libtool. - LIBTOOL='$(SHELL) $(top_builddir)/libtool' - --# Redirect the config.log output again, so that the ltconfig log is not --# clobbered by the next message. --exec 5>>./config.log -+# Prevent multiple expansion - - --echo $ac_n "checking for POSIXized ISC""... $ac_c" 1>&6 --echo "configure:1662: checking for POSIXized ISC" >&5 --if test -d /etc/conf/kconfig.d && -- grep _POSIX_VERSION /usr/include/sys/unistd.h >/dev/null 2>&1 --then -- echo "$ac_t""yes" 1>&6 -- ISC=yes # If later tests want to check for ISC. -- cat >> confdefs.h <<\EOF --#define _POSIX_SOURCE 1 -+ -+ -+ echo $ac_n "checking for strerror in -lcposix""... $ac_c" 1>&6 -+echo "configure:5509: checking for strerror in -lcposix" >&5 -+ac_lib_var=`echo cposix'_'strerror | sed 'y%./+-%__p_%'` -+if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then -+ echo $ac_n "(cached) $ac_c" 1>&6 -+else -+ ac_save_LIBS="$LIBS" -+LIBS="-lcposix $LIBS" -+cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -+ rm -rf conftest* -+ eval "ac_cv_lib_$ac_lib_var=yes" -+else -+ echo "configure: failed program was:" >&5 -+ cat conftest.$ac_ext >&5 -+ rm -rf conftest* -+ eval "ac_cv_lib_$ac_lib_var=no" -+fi -+rm -f conftest* -+LIBS="$ac_save_LIBS" - -- if test "$GCC" = yes; then -- CC="$CC -posix" -- else -- CC="$CC -Xp" -- fi -+fi -+if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then -+ echo "$ac_t""yes" 1>&6 -+ LIBS="$LIBS -lcposix" - else - echo "$ac_t""no" 1>&6 -- ISC= - fi - -+ -+ - - - - echo $ac_n "checking for ${CC-cc} option to accept ANSI C""... $ac_c" 1>&6 --echo "configure:1686: checking for ${CC-cc} option to accept ANSI C" >&5 -+echo "configure:5554: checking for ${CC-cc} option to accept ANSI C" >&5 - if eval "test \"`echo '$''{'am_cv_prog_cc_stdc'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else -@@ -1698,7 +5566,7 @@ - do - CC="$ac_save_CC $ac_arg" - cat > conftest.$ac_ext < - #include -@@ -1735,7 +5603,7 @@ - - ; return 0; } - EOF --if { (eval echo configure:1739: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then -+if { (eval echo configure:5607: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then - rm -rf conftest* - am_cv_prog_cc_stdc="$ac_arg"; break - else -@@ -1761,7 +5629,7 @@ - - - echo $ac_n "checking for function prototypes""... $ac_c" 1>&6 --echo "configure:1765: checking for function prototypes" >&5 -+echo "configure:5633: checking for function prototypes" >&5 - if test "$am_cv_prog_cc_stdc" != no; then - echo "$ac_t""yes" 1>&6 - cat >> confdefs.h <<\EOF -@@ -1774,12 +5642,12 @@ - U=_ ANSI2KNR=./ansi2knr - # Ensure some checks needed by ansi2knr itself. - echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6 --echo "configure:1778: checking for ANSI C header files" >&5 -+echo "configure:5646: checking for ANSI C header files" >&5 - if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext < - #include -@@ -1787,7 +5655,7 @@ - #include - EOF - ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" --{ (eval echo configure:1791: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -+{ (eval echo configure:5659: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } - ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` - if test -z "$ac_err"; then - rm -rf conftest* -@@ -1804,7 +5672,7 @@ - if test $ac_cv_header_stdc = yes; then - # SunOS 4.x string.h does not declare mem*, contrary to ANSI. - cat > conftest.$ac_ext < - EOF -@@ -1822,7 +5690,7 @@ - if test $ac_cv_header_stdc = yes; then - # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. - cat > conftest.$ac_ext < - EOF -@@ -1843,7 +5711,7 @@ - : - else - cat > conftest.$ac_ext < - #define ISLOWER(c) ('a' <= (c) && (c) <= 'z') -@@ -1854,7 +5722,7 @@ - exit (0); } - - EOF --if { (eval echo configure:1858: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null -+if { (eval echo configure:5726: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null - then - : - else -@@ -1881,17 +5749,17 @@ - do - ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` - echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 --echo "configure:1885: checking for $ac_hdr" >&5 -+echo "configure:5753: checking for $ac_hdr" >&5 - if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext < - EOF - ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" --{ (eval echo configure:1895: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -+{ (eval echo configure:5763: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } - ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` - if test -z "$ac_err"; then - rm -rf conftest* -@@ -1920,12 +5788,12 @@ - fi - - echo $ac_n "checking for working const""... $ac_c" 1>&6 --echo "configure:1924: checking for working const" >&5 -+echo "configure:5792: checking for working const" >&5 - if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then -+if { (eval echo configure:5846: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then - rm -rf conftest* - ac_cv_c_const=yes - else -@@ -1995,21 +5863,21 @@ - fi - - echo $ac_n "checking for inline""... $ac_c" 1>&6 --echo "configure:1999: checking for inline" >&5 -+echo "configure:5867: checking for inline" >&5 - if eval "test \"`echo '$''{'ac_cv_c_inline'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - ac_cv_c_inline=no - for ac_kw in inline __inline__ __inline; do - cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then -+if { (eval echo configure:5881: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then - rm -rf conftest* - ac_cv_c_inline=$ac_kw; break - else -@@ -2039,7 +5907,7 @@ - # Extract the first word of "$ac_prog", so it can be a program name with args. - set dummy $ac_prog; ac_word=$2 - echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 --echo "configure:2043: checking for $ac_word" >&5 -+echo "configure:5911: checking for $ac_word" >&5 - if eval "test \"`echo '$''{'ac_cv_prog_LEX'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else -@@ -2076,7 +5944,7 @@ - # Extract the first word of "flex", so it can be a program name with args. - set dummy flex; ac_word=$2 - echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 --echo "configure:2080: checking for $ac_word" >&5 -+echo "configure:5948: checking for $ac_word" >&5 - if eval "test \"`echo '$''{'ac_cv_prog_LEX'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else -@@ -2110,7 +5978,7 @@ - *) ac_lib=l ;; - esac - echo $ac_n "checking for yywrap in -l$ac_lib""... $ac_c" 1>&6 --echo "configure:2114: checking for yywrap in -l$ac_lib" >&5 -+echo "configure:5982: checking for yywrap in -l$ac_lib" >&5 - ac_lib_var=`echo $ac_lib'_'yywrap | sed 'y%./+-%__p_%'` - if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -@@ -2118,7 +5986,7 @@ - ac_save_LIBS="$LIBS" - LIBS="-l$ac_lib $LIBS" - cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -+if { (eval echo configure:6001: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - eval "ac_cv_lib_$ac_lib_var=yes" - else -@@ -2152,7 +6020,7 @@ - fi - - echo $ac_n "checking lex output file root""... $ac_c" 1>&6 --echo "configure:2156: checking lex output file root" >&5 -+echo "configure:6024: checking lex output file root" >&5 - if eval "test \"`echo '$''{'ac_cv_prog_lex_root'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else -@@ -2173,7 +6041,7 @@ - LEX_OUTPUT_ROOT=$ac_cv_prog_lex_root - - echo $ac_n "checking whether yytext is a pointer""... $ac_c" 1>&6 --echo "configure:2177: checking whether yytext is a pointer" >&5 -+echo "configure:6045: checking whether yytext is a pointer" >&5 - if eval "test \"`echo '$''{'ac_cv_prog_lex_yytext_pointer'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else -@@ -2185,14 +6053,14 @@ - ac_save_LIBS="$LIBS" - LIBS="$LIBS $LEXLIB" - cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -+if { (eval echo configure:6064: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - ac_cv_prog_lex_yytext_pointer=yes - else -@@ -2216,12 +6084,12 @@ - fi - - echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6 --echo "configure:2220: checking for ANSI C header files" >&5 -+echo "configure:6088: checking for ANSI C header files" >&5 - if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext < - #include -@@ -2229,7 +6097,7 @@ - #include - EOF - ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" --{ (eval echo configure:2233: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -+{ (eval echo configure:6101: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } - ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` - if test -z "$ac_err"; then - rm -rf conftest* -@@ -2246,7 +6114,7 @@ - if test $ac_cv_header_stdc = yes; then - # SunOS 4.x string.h does not declare mem*, contrary to ANSI. - cat > conftest.$ac_ext < - EOF -@@ -2264,7 +6132,7 @@ - if test $ac_cv_header_stdc = yes; then - # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. - cat > conftest.$ac_ext < - EOF -@@ -2285,7 +6153,7 @@ - : - else - cat > conftest.$ac_ext < - #define ISLOWER(c) ('a' <= (c) && (c) <= 'z') -@@ -2296,7 +6164,7 @@ - exit (0); } - - EOF --if { (eval echo configure:2300: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null -+if { (eval echo configure:6168: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null - then - : - else -@@ -2323,17 +6191,17 @@ - do - ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` - echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 --echo "configure:2327: checking for $ac_hdr" >&5 -+echo "configure:6195: checking for $ac_hdr" >&5 - if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext < - EOF - ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" --{ (eval echo configure:2337: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -+{ (eval echo configure:6205: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } - ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` - if test -z "$ac_err"; then - rm -rf conftest* -@@ -2360,12 +6228,12 @@ - done - - echo $ac_n "checking return type of signal handlers""... $ac_c" 1>&6 --echo "configure:2364: checking return type of signal handlers" >&5 -+echo "configure:6232: checking return type of signal handlers" >&5 - if eval "test \"`echo '$''{'ac_cv_type_signal'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext < - #include -@@ -2382,7 +6250,7 @@ - int i; - ; return 0; } - EOF --if { (eval echo configure:2386: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then -+if { (eval echo configure:6254: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then - rm -rf conftest* - ac_cv_type_signal=void - else -@@ -2401,12 +6269,12 @@ - - - echo $ac_n "checking whether time.h and sys/time.h may both be included""... $ac_c" 1>&6 --echo "configure:2405: checking whether time.h and sys/time.h may both be included" >&5 -+echo "configure:6273: checking whether time.h and sys/time.h may both be included" >&5 - if eval "test \"`echo '$''{'ac_cv_header_time'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext < - #include -@@ -2415,7 +6283,7 @@ - struct tm *tp; - ; return 0; } - EOF --if { (eval echo configure:2419: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then -+if { (eval echo configure:6287: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then - rm -rf conftest* - ac_cv_header_time=yes - else -@@ -2440,17 +6308,17 @@ - do - ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` - echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 --echo "configure:2444: checking for $ac_hdr" >&5 -+echo "configure:6312: checking for $ac_hdr" >&5 - if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext < - EOF - ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" --{ (eval echo configure:2454: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -+{ (eval echo configure:6322: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } - ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` - if test -z "$ac_err"; then - rm -rf conftest* -@@ -2478,12 +6346,12 @@ - - - echo $ac_n "checking for struct utimbuf""... $ac_c" 1>&6 --echo "configure:2482: checking for struct utimbuf" >&5 -+echo "configure:6350: checking for struct utimbuf" >&5 - if eval "test \"`echo '$''{'fu_cv_sys_struct_utimbuf'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext <&5; (eval $ac_compile) 2>&5; }; then -+if { (eval echo configure:6376: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then - rm -rf conftest* - fu_cv_sys_struct_utimbuf=yes - else -@@ -2530,12 +6398,12 @@ - for ac_func in dup2 mbrtowc rename setlocale strerror strndup wcrtomb - do - echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 --echo "configure:2534: checking for $ac_func" >&5 -+echo "configure:6402: checking for $ac_func" >&5 - if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -+if { (eval echo configure:6430: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - eval "ac_cv_func_$ac_func=yes" - else -@@ -2585,12 +6453,12 @@ - for ac_func in strtol strtoul - do - echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 --echo "configure:2589: checking for $ac_func" >&5 -+echo "configure:6457: checking for $ac_func" >&5 - if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -+if { (eval echo configure:6485: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - eval "ac_cv_func_$ac_func=yes" - else -@@ -2642,19 +6510,19 @@ - # The Ultrix 4.2 mips builtin alloca declared by alloca.h only works - # for constant arguments. Useless! - echo $ac_n "checking for working alloca.h""... $ac_c" 1>&6 --echo "configure:2646: checking for working alloca.h" >&5 -+echo "configure:6514: checking for working alloca.h" >&5 - if eval "test \"`echo '$''{'ac_cv_header_alloca_h'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext < - int main() { - char *p = alloca(2 * sizeof(int)); - ; return 0; } - EOF --if { (eval echo configure:2658: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -+if { (eval echo configure:6526: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - ac_cv_header_alloca_h=yes - else -@@ -2675,12 +6543,12 @@ - fi - - echo $ac_n "checking for alloca""... $ac_c" 1>&6 --echo "configure:2679: checking for alloca" >&5 -+echo "configure:6547: checking for alloca" >&5 - if eval "test \"`echo '$''{'ac_cv_func_alloca_works'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -+if { (eval echo configure:6580: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - ac_cv_func_alloca_works=yes - else -@@ -2740,12 +6608,12 @@ - - - echo $ac_n "checking whether alloca needs Cray hooks""... $ac_c" 1>&6 --echo "configure:2744: checking whether alloca needs Cray hooks" >&5 -+echo "configure:6612: checking whether alloca needs Cray hooks" >&5 - if eval "test \"`echo '$''{'ac_cv_os_cray'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext <&6 --echo "configure:2774: checking for $ac_func" >&5 -+echo "configure:6642: checking for $ac_func" >&5 - if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -+if { (eval echo configure:6670: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - eval "ac_cv_func_$ac_func=yes" - else -@@ -2825,7 +6693,7 @@ - fi - - echo $ac_n "checking stack direction for C alloca""... $ac_c" 1>&6 --echo "configure:2829: checking stack direction for C alloca" >&5 -+echo "configure:6697: checking stack direction for C alloca" >&5 - if eval "test \"`echo '$''{'ac_cv_c_stack_direction'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else -@@ -2833,7 +6701,7 @@ - ac_cv_c_stack_direction=0 - else - cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null -+if { (eval echo configure:6724: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null - then - ac_cv_c_stack_direction=1 - else -@@ -2874,12 +6742,12 @@ - fi - - echo $ac_n "checking for vprintf""... $ac_c" 1>&6 --echo "configure:2878: checking for vprintf" >&5 -+echo "configure:6746: checking for vprintf" >&5 - if eval "test \"`echo '$''{'ac_cv_func_vprintf'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -+if { (eval echo configure:6774: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - eval "ac_cv_func_vprintf=yes" - else -@@ -2926,12 +6794,12 @@ - - if test "$ac_cv_func_vprintf" != yes; then - echo $ac_n "checking for _doprnt""... $ac_c" 1>&6 --echo "configure:2930: checking for _doprnt" >&5 -+echo "configure:6798: checking for _doprnt" >&5 - if eval "test \"`echo '$''{'ac_cv_func__doprnt'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -+if { (eval echo configure:6826: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - eval "ac_cv_func__doprnt=yes" - else -@@ -2986,7 +6854,7 @@ - - - echo $ac_n "checking for working malloc""... $ac_c" 1>&6 --echo "configure:2990: checking for working malloc" >&5 -+echo "configure:6858: checking for working malloc" >&5 - if eval "test \"`echo '$''{'jm_cv_func_working_malloc'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else -@@ -2994,7 +6862,7 @@ - jm_cv_func_working_malloc=no - else - cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null -+if { (eval echo configure:6877: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null - then - jm_cv_func_working_malloc=yes - else -@@ -3037,7 +6905,7 @@ - - - echo $ac_n "checking for working realloc""... $ac_c" 1>&6 --echo "configure:3041: checking for working realloc" >&5 -+echo "configure:6909: checking for working realloc" >&5 - if eval "test \"`echo '$''{'jm_cv_func_working_realloc'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else -@@ -3045,7 +6913,7 @@ - jm_cv_func_working_realloc=no - else - cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null -+if { (eval echo configure:6928: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null - then - jm_cv_func_working_realloc=yes - else -@@ -3090,7 +6958,7 @@ - fi - - echo $ac_n "checking host system type""... $ac_c" 1>&6 --echo "configure:3094: checking host system type" >&5 -+echo "configure:6962: checking host system type" >&5 - - host_alias=$host - case "$host_alias" in -@@ -3115,17 +6983,17 @@ - do - ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` - echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 --echo "configure:3119: checking for $ac_hdr" >&5 -+echo "configure:6987: checking for $ac_hdr" >&5 - if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext < - EOF - ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" --{ (eval echo configure:3129: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -+{ (eval echo configure:6997: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } - ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` - if test -z "$ac_err"; then - rm -rf conftest* -@@ -3154,12 +7022,12 @@ - for ac_func in nl_langinfo - do - echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 --echo "configure:3158: checking for $ac_func" >&5 -+echo "configure:7026: checking for $ac_func" >&5 - if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -+if { (eval echo configure:7054: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - eval "ac_cv_func_$ac_func=yes" - else -@@ -3208,19 +7076,19 @@ - - - echo $ac_n "checking for nl_langinfo and CODESET""... $ac_c" 1>&6 --echo "configure:3212: checking for nl_langinfo and CODESET" >&5 -+echo "configure:7080: checking for nl_langinfo and CODESET" >&5 - if eval "test \"`echo '$''{'jm_cv_langinfo_codeset'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext < - int main() { - char* cs = nl_langinfo(CODESET); - ; return 0; } - EOF --if { (eval echo configure:3224: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -+if { (eval echo configure:7092: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - jm_cv_langinfo_codeset=yes - else -@@ -3243,12 +7111,12 @@ - - - echo $ac_n "checking whether we are using the GNU C Library 2.1 or newer""... $ac_c" 1>&6 --echo "configure:3247: checking whether we are using the GNU C Library 2.1 or newer" >&5 -+echo "configure:7115: checking whether we are using the GNU C Library 2.1 or newer" >&5 - if eval "test \"`echo '$''{'ac_cv_gnu_library_2_1'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext < -@@ -3280,7 +7148,7 @@ - - - echo $ac_n "checking if malloc debugging is wanted""... $ac_c" 1>&6 --echo "configure:3284: checking if malloc debugging is wanted" >&5 -+echo "configure:7152: checking if malloc debugging is wanted" >&5 - # Check whether --with-dmalloc or --without-dmalloc was given. - if test "${with_dmalloc+set}" = set; then - withval="$with_dmalloc" -@@ -3303,7 +7171,7 @@ - - - echo $ac_n "checking whether NLS is wanted""... $ac_c" 1>&6 --echo "configure:3307: checking whether NLS is wanted" >&5 -+echo "configure:7175: checking whether NLS is wanted" >&5 - # Check whether --enable-nls or --disable-nls was given. - if test "${enable_nls+set}" = set; then - enableval="$enable_nls" -@@ -3340,12 +7208,12 @@ - for ac_func in gettext - do - echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 --echo "configure:3344: checking for $ac_func" >&5 -+echo "configure:7212: checking for $ac_func" >&5 - if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -+if { (eval echo configure:7240: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - eval "ac_cv_func_$ac_func=yes" - else -@@ -3393,7 +7261,7 @@ - done - - echo $ac_n "checking for gettext in -lintl""... $ac_c" 1>&6 --echo "configure:3397: checking for gettext in -lintl" >&5 -+echo "configure:7265: checking for gettext in -lintl" >&5 - ac_lib_var=`echo intl'_'gettext | sed 'y%./+-%__p_%'` - if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 -@@ -3401,7 +7269,7 @@ - ac_save_LIBS="$LIBS" - LIBS="-lintl $LIBS" - cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -+if { (eval echo configure:7284: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - eval "ac_cv_lib_$ac_lib_var=yes" - else -@@ -3434,7 +7302,7 @@ - - if test $ac_cv_lib_intl_gettext$ac_cv_func_gettext != nono; then - echo $ac_n "checking whether the included gettext is preferred""... $ac_c" 1>&6 --echo "configure:3438: checking whether the included gettext is preferred" >&5 -+echo "configure:7306: checking whether the included gettext is preferred" >&5 - # Check whether --with-included-gettext or --without-included-gettext was given. - if test "${with_included_gettext+set}" = set; then - withval="$with_included_gettext" -@@ -3465,17 +7333,17 @@ - do - ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` - echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 --echo "configure:3469: checking for $ac_hdr" >&5 -+echo "configure:7337: checking for $ac_hdr" >&5 - if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext < - EOF - ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" --{ (eval echo configure:3479: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -+{ (eval echo configure:7347: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } - ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` - if test -z "$ac_err"; then - rm -rf conftest* -@@ -3504,12 +7372,12 @@ - for ac_func in dcgettext gettext - do - echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 --echo "configure:3508: checking for $ac_func" >&5 -+echo "configure:7376: checking for $ac_func" >&5 - if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -+if { (eval echo configure:7404: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - eval "ac_cv_func_$ac_func=yes" - else -@@ -3562,17 +7430,17 @@ - do - ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` - echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 --echo "configure:3566: checking for $ac_hdr" >&5 -+echo "configure:7434: checking for $ac_hdr" >&5 - if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext < - EOF - ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" --{ (eval echo configure:3576: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -+{ (eval echo configure:7444: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } - ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` - if test -z "$ac_err"; then - rm -rf conftest* -@@ -3602,17 +7470,17 @@ - do - ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` - echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 --echo "configure:3606: checking for $ac_hdr" >&5 -+echo "configure:7474: checking for $ac_hdr" >&5 - if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext < - EOF - ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" --{ (eval echo configure:3616: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } -+{ (eval echo configure:7484: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } - ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` - if test -z "$ac_err"; then - rm -rf conftest* -@@ -3641,12 +7509,12 @@ - for ac_func in getpagesize - do - echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 --echo "configure:3645: checking for $ac_func" >&5 -+echo "configure:7513: checking for $ac_func" >&5 - if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -+if { (eval echo configure:7541: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - eval "ac_cv_func_$ac_func=yes" - else -@@ -3694,7 +7562,7 @@ - done - - echo $ac_n "checking for working mmap""... $ac_c" 1>&6 --echo "configure:3698: checking for working mmap" >&5 -+echo "configure:7566: checking for working mmap" >&5 - if eval "test \"`echo '$''{'ac_cv_func_mmap_fixed_mapped'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else -@@ -3702,7 +7570,7 @@ - ac_cv_func_mmap_fixed_mapped=no - else - cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null -+if { (eval echo configure:7714: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null - then - ac_cv_func_mmap_fixed_mapped=yes - else -@@ -3867,12 +7735,12 @@ - for ac_func in getcwd mempcpy munmap setlocale stpcpy strcasecmp strchr strdup __argz_count __argz_stringify __argz_next - do - echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 --echo "configure:3871: checking for $ac_func" >&5 -+echo "configure:7739: checking for $ac_func" >&5 - if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext <&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -+if { (eval echo configure:7767: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - eval "ac_cv_func_$ac_func=yes" - else -@@ -3921,19 +7789,19 @@ - - if test $ac_cv_header_locale_h = yes; then - echo $ac_n "checking for LC_MESSAGES""... $ac_c" 1>&6 --echo "configure:3925: checking for LC_MESSAGES" >&5 -+echo "configure:7793: checking for LC_MESSAGES" >&5 - if eval "test \"`echo '$''{'am_cv_val_LC_MESSAGES'+set}'`\" = set"; then - echo $ac_n "(cached) $ac_c" 1>&6 - else - cat > conftest.$ac_ext < - int main() { - return LC_MESSAGES - ; return 0; } - EOF --if { (eval echo configure:3937: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then -+if { (eval echo configure:7805: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then - rm -rf conftest* - am_cv_val_LC_MESSAGES=yes - else -@@ -3968,7 +7836,7 @@ - - - echo $ac_n "checking which translations to install""... $ac_c" 1>&6 --echo "configure:3972: checking which translations to install" >&5 -+echo "configure:7840: checking which translations to install" >&5 - if test -z "$LINGUAS"; then - ac_print="$ALL_LINGUAS" - MOFILES="$ALL_MOFILES" -@@ -4172,8 +8040,12 @@ - s%@build_cpu@%$build_cpu%g - s%@build_vendor@%$build_vendor%g - s%@build_os@%$build_os%g --s%@RANLIB@%$RANLIB%g - s%@LN_S@%$LN_S%g -+s%@OBJEXT@%$OBJEXT%g -+s%@EXEEXT@%$EXEEXT%g -+s%@ECHO@%$ECHO%g -+s%@RANLIB@%$RANLIB%g -+s%@STRIP@%$STRIP%g - s%@LIBTOOL@%$LIBTOOL%g - s%@U@%$U%g - s%@ANSI2KNR@%$ANSI2KNR%g ---- recode-3.6.orig/config.guess -+++ recode-3.6/config.guess -@@ -1,8 +1,11 @@ - #! /bin/sh - # Attempt to guess a canonical system name. --# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999 -+# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -+# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 - # Free Software Foundation, Inc. --# -+ -+timestamp='2009-06-10' -+ - # This file is free software; you can redistribute it and/or modify it - # under the terms of the GNU General Public License as published by - # the Free Software Foundation; either version 2 of the License, or -@@ -15,156 +18,294 @@ - # - # You should have received a copy of the GNU General Public License - # along with this program; if not, write to the Free Software --# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -+# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA -+# 02110-1301, USA. - # - # As a special exception to the GNU General Public License, if you - # distribute this file as part of a program that contains a - # configuration script generated by Autoconf, you may include it under - # the same distribution terms that you use for the rest of that program. - --# Written by Per Bothner . --# The master version of this file is at the FSF in /home/gd/gnu/lib. --# Please send patches to . -+ -+# Originally written by Per Bothner . -+# Please send patches to . Submit a context -+# diff and a properly formatted ChangeLog entry. - # - # This script attempts to guess a canonical system name similar to - # config.sub. If it succeeds, it prints the system name on stdout, and - # exits with 0. Otherwise, it exits with 1. - # - # The plan is that this can be called by configure scripts if you --# don't specify an explicit system type (host/target name). --# --# Only a few systems have been added to this list; please add others --# (but try to keep the structure clean). --# -+# don't specify an explicit build system type. - --# Use $HOST_CC if defined. $CC may point to a cross-compiler --if test x"$CC_FOR_BUILD" = x; then -- if test x"$HOST_CC" != x; then -- CC_FOR_BUILD="$HOST_CC" -- else -- if test x"$CC" != x; then -- CC_FOR_BUILD="$CC" -- else -- CC_FOR_BUILD=cc -- fi -- fi -+me=`echo "$0" | sed -e 's,.*/,,'` -+ -+usage="\ -+Usage: $0 [OPTION] -+ -+Output the configuration name of the system \`$me' is run on. -+ -+Operation modes: -+ -h, --help print this help, then exit -+ -t, --time-stamp print date of last modification, then exit -+ -v, --version print version number, then exit -+ -+Report bugs and patches to ." -+ -+version="\ -+GNU config.guess ($timestamp) -+ -+Originally written by Per Bothner. -+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, -+2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. -+ -+This is free software; see the source for copying conditions. There is NO -+warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." -+ -+help=" -+Try \`$me --help' for more information." -+ -+# Parse command line -+while test $# -gt 0 ; do -+ case $1 in -+ --time-stamp | --time* | -t ) -+ echo "$timestamp" ; exit ;; -+ --version | -v ) -+ echo "$version" ; exit ;; -+ --help | --h* | -h ) -+ echo "$usage"; exit ;; -+ -- ) # Stop option processing -+ shift; break ;; -+ - ) # Use stdin as input. -+ break ;; -+ -* ) -+ echo "$me: invalid option $1$help" >&2 -+ exit 1 ;; -+ * ) -+ break ;; -+ esac -+done -+ -+if test $# != 0; then -+ echo "$me: too many arguments$help" >&2 -+ exit 1 - fi - -+trap 'exit 1' 1 2 15 -+ -+# CC_FOR_BUILD -- compiler used by this script. Note that the use of a -+# compiler to aid in system detection is discouraged as it requires -+# temporary files to be created and, as you can see below, it is a -+# headache to deal with in a portable fashion. -+ -+# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still -+# use `HOST_CC' if defined, but it is deprecated. -+ -+# Portable tmp directory creation inspired by the Autoconf team. -+ -+set_cc_for_build=' -+trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; -+trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; -+: ${TMPDIR=/tmp} ; -+ { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || -+ { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || -+ { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || -+ { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; -+dummy=$tmp/dummy ; -+tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; -+case $CC_FOR_BUILD,$HOST_CC,$CC in -+ ,,) echo "int x;" > $dummy.c ; -+ for c in cc gcc c89 c99 ; do -+ if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then -+ CC_FOR_BUILD="$c"; break ; -+ fi ; -+ done ; -+ if test x"$CC_FOR_BUILD" = x ; then -+ CC_FOR_BUILD=no_compiler_found ; -+ fi -+ ;; -+ ,,*) CC_FOR_BUILD=$CC ;; -+ ,*,*) CC_FOR_BUILD=$HOST_CC ;; -+esac ; set_cc_for_build= ;' - - # This is needed to find uname on a Pyramid OSx when run in the BSD universe. --# (ghazi@noc.rutgers.edu 8/24/94.) -+# (ghazi@noc.rutgers.edu 1994-08-24) - if (test -f /.attbin/uname) >/dev/null 2>&1 ; then - PATH=$PATH:/.attbin ; export PATH - fi - - UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown - UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown --UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown -+UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown - UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown - --dummy=dummy-$$ --trap 'rm -f $dummy.c $dummy.o $dummy; exit 1' 1 2 15 -- - # Note: order is significant - the case branches are not exclusive. - - case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in -+ *:NetBSD:*:*) -+ # NetBSD (nbsd) targets should (where applicable) match one or -+ # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, -+ # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently -+ # switched to ELF, *-*-netbsd* would select the old -+ # object file format. This provides both forward -+ # compatibility and a consistent mechanism for selecting the -+ # object file format. -+ # -+ # Note: NetBSD doesn't particularly care about the vendor -+ # portion of the name. We always set it to "unknown". -+ sysctl="sysctl -n hw.machine_arch" -+ UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ -+ /usr/sbin/$sysctl 2>/dev/null || echo unknown)` -+ case "${UNAME_MACHINE_ARCH}" in -+ armeb) machine=armeb-unknown ;; -+ arm*) machine=arm-unknown ;; -+ sh3el) machine=shl-unknown ;; -+ sh3eb) machine=sh-unknown ;; -+ sh5el) machine=sh5le-unknown ;; -+ *) machine=${UNAME_MACHINE_ARCH}-unknown ;; -+ esac -+ # The Operating System including object format, if it has switched -+ # to ELF recently, or will in the future. -+ case "${UNAME_MACHINE_ARCH}" in -+ arm*|i386|m68k|ns32k|sh3*|sparc|vax) -+ eval $set_cc_for_build -+ if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ -+ | grep -q __ELF__ -+ then -+ # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). -+ # Return netbsd for either. FIX? -+ os=netbsd -+ else -+ os=netbsdelf -+ fi -+ ;; -+ *) -+ os=netbsd -+ ;; -+ esac -+ # The OS release -+ # Debian GNU/NetBSD machines have a different userland, and -+ # thus, need a distinct triplet. However, they do not need -+ # kernel version information, so it can be replaced with a -+ # suitable tag, in the style of linux-gnu. -+ case "${UNAME_VERSION}" in -+ Debian*) -+ release='-gnu' -+ ;; -+ *) -+ release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` -+ ;; -+ esac -+ # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: -+ # contains redundant information, the shorter form: -+ # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. -+ echo "${machine}-${os}${release}" -+ exit ;; -+ *:OpenBSD:*:*) -+ UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` -+ echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} -+ exit ;; -+ *:ekkoBSD:*:*) -+ echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} -+ exit ;; -+ *:SolidBSD:*:*) -+ echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} -+ exit ;; -+ macppc:MirBSD:*:*) -+ echo powerpc-unknown-mirbsd${UNAME_RELEASE} -+ exit ;; -+ *:MirBSD:*:*) -+ echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} -+ exit ;; - alpha:OSF1:*:*) -- if test $UNAME_RELEASE = "V4.0"; then -+ case $UNAME_RELEASE in -+ *4.0) - UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` -- fi -+ ;; -+ *5.*) -+ UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` -+ ;; -+ esac -+ # According to Compaq, /usr/sbin/psrinfo has been available on -+ # OSF/1 and Tru64 systems produced since 1995. I hope that -+ # covers most systems running today. This code pipes the CPU -+ # types through head -n 1, so we only detect the type of CPU 0. -+ ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` -+ case "$ALPHA_CPU_TYPE" in -+ "EV4 (21064)") -+ UNAME_MACHINE="alpha" ;; -+ "EV4.5 (21064)") -+ UNAME_MACHINE="alpha" ;; -+ "LCA4 (21066/21068)") -+ UNAME_MACHINE="alpha" ;; -+ "EV5 (21164)") -+ UNAME_MACHINE="alphaev5" ;; -+ "EV5.6 (21164A)") -+ UNAME_MACHINE="alphaev56" ;; -+ "EV5.6 (21164PC)") -+ UNAME_MACHINE="alphapca56" ;; -+ "EV5.7 (21164PC)") -+ UNAME_MACHINE="alphapca57" ;; -+ "EV6 (21264)") -+ UNAME_MACHINE="alphaev6" ;; -+ "EV6.7 (21264A)") -+ UNAME_MACHINE="alphaev67" ;; -+ "EV6.8CB (21264C)") -+ UNAME_MACHINE="alphaev68" ;; -+ "EV6.8AL (21264B)") -+ UNAME_MACHINE="alphaev68" ;; -+ "EV6.8CX (21264D)") -+ UNAME_MACHINE="alphaev68" ;; -+ "EV6.9A (21264/EV69A)") -+ UNAME_MACHINE="alphaev69" ;; -+ "EV7 (21364)") -+ UNAME_MACHINE="alphaev7" ;; -+ "EV7.9 (21364A)") -+ UNAME_MACHINE="alphaev79" ;; -+ esac -+ # A Pn.n version is a patched version. - # A Vn.n version is a released version. - # A Tn.n version is a released field test version. - # A Xn.n version is an unreleased experimental baselevel. - # 1.2 uses "1.2" for uname -r. -- cat <$dummy.s -- .globl main -- .ent main --main: -- .frame \$30,0,\$26,0 -- .prologue 0 -- .long 0x47e03d80 # implver $0 -- lda \$2,259 -- .long 0x47e20c21 # amask $2,$1 -- srl \$1,8,\$2 -- sll \$2,2,\$2 -- sll \$0,3,\$0 -- addl \$1,\$0,\$0 -- addl \$2,\$0,\$0 -- ret \$31,(\$26),1 -- .end main --EOF -- $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null -- if test "$?" = 0 ; then -- ./$dummy -- case "$?" in -- 7) -- UNAME_MACHINE="alpha" -- ;; -- 15) -- UNAME_MACHINE="alphaev5" -- ;; -- 14) -- UNAME_MACHINE="alphaev56" -- ;; -- 10) -- UNAME_MACHINE="alphapca56" -- ;; -- 16) -- UNAME_MACHINE="alphaev6" -- ;; -- esac -- fi -- rm -f $dummy.s $dummy -- echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` -- exit 0 ;; -+ echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` -+ exit ;; - Alpha\ *:Windows_NT*:*) - # How do we know it's Interix rather than the generic POSIX subsystem? - # Should we change UNAME_MACHINE based on the output of uname instead - # of the specific Alpha model? - echo alpha-pc-interix -- exit 0 ;; -+ exit ;; - 21064:Windows_NT:50:3) - echo alpha-dec-winnt3.5 -- exit 0 ;; -+ exit ;; - Amiga*:UNIX_System_V:4.0:*) -- echo m68k-cbm-sysv4 -- exit 0;; -- amiga:NetBSD:*:*) -- echo m68k-cbm-netbsd${UNAME_RELEASE} -- exit 0 ;; -- amiga:OpenBSD:*:*) -- echo m68k-unknown-openbsd${UNAME_RELEASE} -- exit 0 ;; -+ echo m68k-unknown-sysv4 -+ exit ;; - *:[Aa]miga[Oo][Ss]:*:*) - echo ${UNAME_MACHINE}-unknown-amigaos -- exit 0 ;; -- arc64:OpenBSD:*:*) -- echo mips64el-unknown-openbsd${UNAME_RELEASE} -- exit 0 ;; -- arc:OpenBSD:*:*) -- echo mipsel-unknown-openbsd${UNAME_RELEASE} -- exit 0 ;; -- hkmips:OpenBSD:*:*) -- echo mips-unknown-openbsd${UNAME_RELEASE} -- exit 0 ;; -- pmax:OpenBSD:*:*) -- echo mipsel-unknown-openbsd${UNAME_RELEASE} -- exit 0 ;; -- sgi:OpenBSD:*:*) -- echo mips-unknown-openbsd${UNAME_RELEASE} -- exit 0 ;; -- wgrisc:OpenBSD:*:*) -- echo mipsel-unknown-openbsd${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; -+ *:[Mm]orph[Oo][Ss]:*:*) -+ echo ${UNAME_MACHINE}-unknown-morphos -+ exit ;; -+ *:OS/390:*:*) -+ echo i370-ibm-openedition -+ exit ;; -+ *:z/VM:*:*) -+ echo s390-ibm-zvmoe -+ exit ;; -+ *:OS400:*:*) -+ echo powerpc-ibm-os400 -+ exit ;; - arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) - echo arm-acorn-riscix${UNAME_RELEASE} -- exit 0;; -- arm32:NetBSD:*:*) -- echo arm-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` -- exit 0 ;; -- SR2?01:HI-UX/MPP:*:*) -+ exit ;; -+ arm:riscos:*:*|arm:RISCOS:*:*) -+ echo arm-unknown-riscos -+ exit ;; -+ SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) - echo hppa1.1-hitachi-hiuxmpp -- exit 0;; -+ exit ;; - Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) - # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. - if test "`(/bin/universe) 2>/dev/null`" = att ; then -@@ -172,25 +313,48 @@ - else - echo pyramid-pyramid-bsd - fi -- exit 0 ;; -+ exit ;; - NILE*:*:*:dcosx) - echo pyramid-pyramid-svr4 -- exit 0 ;; -+ exit ;; -+ DRS?6000:unix:4.0:6*) -+ echo sparc-icl-nx6 -+ exit ;; -+ DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) -+ case `/usr/bin/uname -p` in -+ sparc) echo sparc-icl-nx7; exit ;; -+ esac ;; -+ s390x:SunOS:*:*) -+ echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` -+ exit ;; - sun4H:SunOS:5.*:*) - echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` -- exit 0 ;; -+ exit ;; - sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) - echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` -- exit 0 ;; -- i86pc:SunOS:5.*:*) -- echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` -- exit 0 ;; -+ exit ;; -+ i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) -+ eval $set_cc_for_build -+ SUN_ARCH="i386" -+ # If there is a compiler, see if it is configured for 64-bit objects. -+ # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. -+ # This test works for both compilers. -+ if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then -+ if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ -+ (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ -+ grep IS_64BIT_ARCH >/dev/null -+ then -+ SUN_ARCH="x86_64" -+ fi -+ fi -+ echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` -+ exit ;; - sun4*:SunOS:6*:*) - # According to config.sub, this is the proper way to canonicalize - # SunOS6. Hard to guess exactly what SunOS6 will be like, but - # it's likely to be more like Solaris than SunOS4. - echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` -- exit 0 ;; -+ exit ;; - sun4*:SunOS:*:*) - case "`/usr/bin/arch -k`" in - Series*|S4*) -@@ -199,12 +363,12 @@ - esac - # Japanese Language versions have a version number like `4.1.3-JL'. - echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` -- exit 0 ;; -+ exit ;; - sun3*:SunOS:*:*) - echo m68k-sun-sunos${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - sun*:*:4.2BSD:*) -- UNAME_RELEASE=`(head -1 /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` -+ UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` - test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 - case "`/bin/arch`" in - sun3) -@@ -214,19 +378,13 @@ - echo sparc-sun-sunos${UNAME_RELEASE} - ;; - esac -- exit 0 ;; -+ exit ;; - aushp:SunOS:*:*) - echo sparc-auspex-sunos${UNAME_RELEASE} -- exit 0 ;; -- atari*:NetBSD:*:*) -- echo m68k-atari-netbsd${UNAME_RELEASE} -- exit 0 ;; -- atari*:OpenBSD:*:*) -- echo m68k-unknown-openbsd${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - # The situation for MiNT is a little confusing. The machine name - # can be virtually everything (everything which is not -- # "atarist" or "atariste" at least should have a processor -+ # "atarist" or "atariste" at least should have a processor - # > m68000). The system name ranges from "MiNT" over "FreeMiNT" - # to the lowercase version "mint" (or "freemint"). Finally - # the system name "TOS" denotes a system which is actually not -@@ -234,61 +392,45 @@ - # be no problem. - atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) - echo m68k-atari-mint${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) - echo m68k-milan-mint${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) - echo m68k-hades-mint${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) - echo m68k-unknown-mint${UNAME_RELEASE} -- exit 0 ;; -- sun3*:NetBSD:*:*) -- echo m68k-sun-netbsd${UNAME_RELEASE} -- exit 0 ;; -- sun3*:OpenBSD:*:*) -- echo m68k-unknown-openbsd${UNAME_RELEASE} -- exit 0 ;; -- mac68k:NetBSD:*:*) -- echo m68k-apple-netbsd${UNAME_RELEASE} -- exit 0 ;; -- mac68k:OpenBSD:*:*) -- echo m68k-unknown-openbsd${UNAME_RELEASE} -- exit 0 ;; -- mvme68k:OpenBSD:*:*) -- echo m68k-unknown-openbsd${UNAME_RELEASE} -- exit 0 ;; -- mvme88k:OpenBSD:*:*) -- echo m88k-unknown-openbsd${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; -+ m68k:machten:*:*) -+ echo m68k-apple-machten${UNAME_RELEASE} -+ exit ;; - powerpc:machten:*:*) - echo powerpc-apple-machten${UNAME_RELEASE} -- exit 0 ;; -- macppc:NetBSD:*:*) -- echo powerpc-apple-netbsd${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - RISC*:Mach:*:*) - echo mips-dec-mach_bsd4.3 -- exit 0 ;; -+ exit ;; - RISC*:ULTRIX:*:*) - echo mips-dec-ultrix${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - VAX*:ULTRIX*:*:*) - echo vax-dec-ultrix${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - 2020:CLIX:*:* | 2430:CLIX:*:*) - echo clipper-intergraph-clix${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - mips:*:*:UMIPS | mips:*:*:RISCos) -+ eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #ifdef __cplusplus -+#include /* for printf() prototype */ - int main (int argc, char *argv[]) { - #else - int main (argc, argv) int argc; char *argv[]; { -@@ -307,61 +449,82 @@ - exit (-1); - } - EOF -- $CC_FOR_BUILD $dummy.c -o $dummy \ -- && ./$dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \ -- && rm $dummy.c $dummy && exit 0 -- rm -f $dummy.c $dummy -+ $CC_FOR_BUILD -o $dummy $dummy.c && -+ dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && -+ SYSTEM_NAME=`$dummy $dummyarg` && -+ { echo "$SYSTEM_NAME"; exit; } - echo mips-mips-riscos${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; -+ Motorola:PowerMAX_OS:*:*) -+ echo powerpc-motorola-powermax -+ exit ;; -+ Motorola:*:4.3:PL8-*) -+ echo powerpc-harris-powermax -+ exit ;; -+ Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) -+ echo powerpc-harris-powermax -+ exit ;; - Night_Hawk:Power_UNIX:*:*) - echo powerpc-harris-powerunix -- exit 0 ;; -+ exit ;; - m88k:CX/UX:7*:*) - echo m88k-harris-cxux7 -- exit 0 ;; -+ exit ;; - m88k:*:4*:R4*) - echo m88k-motorola-sysv4 -- exit 0 ;; -+ exit ;; - m88k:*:3*:R3*) - echo m88k-motorola-sysv3 -- exit 0 ;; -+ exit ;; - AViiON:dgux:*:*) - # DG/UX returns AViiON for all architectures - UNAME_PROCESSOR=`/usr/bin/uname -p` -- if [ $UNAME_PROCESSOR = mc88100 -o $UNAME_PROCESSOR = mc88110 ] ; then -- if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx \ -- -o ${TARGET_BINARY_INTERFACE}x = x ] ; then -+ if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] -+ then -+ if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ -+ [ ${TARGET_BINARY_INTERFACE}x = x ] -+ then - echo m88k-dg-dgux${UNAME_RELEASE} -- else -+ else - echo m88k-dg-dguxbcs${UNAME_RELEASE} -+ fi -+ else -+ echo i586-dg-dgux${UNAME_RELEASE} - fi -- else echo i586-dg-dgux${UNAME_RELEASE} -- fi -- exit 0 ;; -+ exit ;; - M88*:DolphinOS:*:*) # DolphinOS (SVR3) - echo m88k-dolphin-sysv3 -- exit 0 ;; -+ exit ;; - M88*:*:R3*:*) - # Delta 88k system running SVR3 - echo m88k-motorola-sysv3 -- exit 0 ;; -+ exit ;; - XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) - echo m88k-tektronix-sysv3 -- exit 0 ;; -+ exit ;; - Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) - echo m68k-tektronix-bsd -- exit 0 ;; -+ exit ;; - *:IRIX*:*:*) - echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` -- exit 0 ;; -+ exit ;; - ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. -- echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id -- exit 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX ' -- i?86:AIX:*:*) -+ echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id -+ exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' -+ i*86:AIX:*:*) - echo i386-ibm-aix -- exit 0 ;; -+ exit ;; -+ ia64:AIX:*:*) -+ if [ -x /usr/bin/oslevel ] ; then -+ IBM_REV=`/usr/bin/oslevel` -+ else -+ IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} -+ fi -+ echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} -+ exit ;; - *:AIX:2:3) - if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then -+ eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #include - -@@ -373,18 +536,21 @@ - exit(0); - } - EOF -- $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm $dummy.c $dummy && exit 0 -- rm -f $dummy.c $dummy -- echo rs6000-ibm-aix3.2.5 -+ if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` -+ then -+ echo "$SYSTEM_NAME" -+ else -+ echo rs6000-ibm-aix3.2.5 -+ fi - elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then - echo rs6000-ibm-aix3.2.4 - else - echo rs6000-ibm-aix3.2 - fi -- exit 0 ;; -- *:AIX:*:4) -- IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | head -1 | awk '{ print $1 }'` -- if /usr/sbin/lsattr -EHl ${IBM_CPU_ID} | grep POWER >/dev/null 2>&1; then -+ exit ;; -+ *:AIX:*:[456]) -+ IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` -+ if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then - IBM_ARCH=rs6000 - else - IBM_ARCH=powerpc -@@ -392,37 +558,56 @@ - if [ -x /usr/bin/oslevel ] ; then - IBM_REV=`/usr/bin/oslevel` - else -- IBM_REV=4.${UNAME_RELEASE} -+ IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} - fi - echo ${IBM_ARCH}-ibm-aix${IBM_REV} -- exit 0 ;; -+ exit ;; - *:AIX:*:*) - echo rs6000-ibm-aix -- exit 0 ;; -+ exit ;; - ibmrt:4.4BSD:*|romp-ibm:BSD:*) - echo romp-ibm-bsd4.4 -- exit 0 ;; -- ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC NetBSD and -+ exit ;; -+ ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and - echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to -- exit 0 ;; # report: romp-ibm BSD 4.3 -+ exit ;; # report: romp-ibm BSD 4.3 - *:BOSX:*:*) - echo rs6000-bull-bosx -- exit 0 ;; -+ exit ;; - DPX/2?00:B.O.S.:*:*) - echo m68k-bull-sysv3 -- exit 0 ;; -+ exit ;; - 9000/[34]??:4.3bsd:1.*:*) - echo m68k-hp-bsd -- exit 0 ;; -+ exit ;; - hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) - echo m68k-hp-bsd4.4 -- exit 0 ;; -+ exit ;; - 9000/[34678]??:HP-UX:*:*) -+ HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` - case "${UNAME_MACHINE}" in - 9000/31? ) HP_ARCH=m68000 ;; - 9000/[34]?? ) HP_ARCH=m68k ;; - 9000/[678][0-9][0-9]) -- sed 's/^ //' << EOF >$dummy.c -+ if [ -x /usr/bin/getconf ]; then -+ sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` -+ sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` -+ case "${sc_cpu_version}" in -+ 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 -+ 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 -+ 532) # CPU_PA_RISC2_0 -+ case "${sc_kernel_bits}" in -+ 32) HP_ARCH="hppa2.0n" ;; -+ 64) HP_ARCH="hppa2.0w" ;; -+ '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 -+ esac ;; -+ esac -+ fi -+ if [ "${HP_ARCH}" = "" ]; then -+ eval $set_cc_for_build -+ sed 's/^ //' << EOF >$dummy.c -+ -+ #define _HPUX_SOURCE - #include - #include - -@@ -453,13 +638,39 @@ - exit (0); - } - EOF -- ($CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null ) && HP_ARCH=`./$dummy` -- rm -f $dummy.c $dummy -+ (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` -+ test -z "$HP_ARCH" && HP_ARCH=hppa -+ fi ;; - esac -- HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` -+ if [ ${HP_ARCH} = "hppa2.0w" ] -+ then -+ eval $set_cc_for_build -+ -+ # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating -+ # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler -+ # generating 64-bit code. GNU and HP use different nomenclature: -+ # -+ # $ CC_FOR_BUILD=cc ./config.guess -+ # => hppa2.0w-hp-hpux11.23 -+ # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess -+ # => hppa64-hp-hpux11.23 -+ -+ if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | -+ grep -q __LP64__ -+ then -+ HP_ARCH="hppa2.0w" -+ else -+ HP_ARCH="hppa64" -+ fi -+ fi - echo ${HP_ARCH}-hp-hpux${HPUX_REV} -- exit 0 ;; -+ exit ;; -+ ia64:HP-UX:*:*) -+ HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` -+ echo ia64-hp-hpux${HPUX_REV} -+ exit ;; - 3050*:HI-UX:*:*) -+ eval $set_cc_for_build - sed 's/^ //' << EOF >$dummy.c - #include - int -@@ -485,410 +696,476 @@ - exit (0); - } - EOF -- $CC_FOR_BUILD $dummy.c -o $dummy && ./$dummy && rm $dummy.c $dummy && exit 0 -- rm -f $dummy.c $dummy -+ $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && -+ { echo "$SYSTEM_NAME"; exit; } - echo unknown-hitachi-hiuxwe2 -- exit 0 ;; -+ exit ;; - 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) - echo hppa1.1-hp-bsd -- exit 0 ;; -+ exit ;; - 9000/8??:4.3bsd:*:*) - echo hppa1.0-hp-bsd -- exit 0 ;; -- *9??*:MPE/iX:*:*) -+ exit ;; -+ *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) - echo hppa1.0-hp-mpeix -- exit 0 ;; -+ exit ;; - hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) - echo hppa1.1-hp-osf -- exit 0 ;; -+ exit ;; - hp8??:OSF1:*:*) - echo hppa1.0-hp-osf -- exit 0 ;; -- i?86:OSF1:*:*) -+ exit ;; -+ i*86:OSF1:*:*) - if [ -x /usr/sbin/sysversion ] ; then - echo ${UNAME_MACHINE}-unknown-osf1mk - else - echo ${UNAME_MACHINE}-unknown-osf1 - fi -- exit 0 ;; -+ exit ;; - parisc*:Lites*:*:*) - echo hppa1.1-hp-lites -- exit 0 ;; -- hppa*:OpenBSD:*:*) -- echo hppa-unknown-openbsd -- exit 0 ;; -+ exit ;; - C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) - echo c1-convex-bsd -- exit 0 ;; -+ exit ;; - C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) - if getsysinfo -f scalar_acc - then echo c32-convex-bsd - else echo c2-convex-bsd - fi -- exit 0 ;; -+ exit ;; - C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) - echo c34-convex-bsd -- exit 0 ;; -+ exit ;; - C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) - echo c38-convex-bsd -- exit 0 ;; -+ exit ;; - C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) - echo c4-convex-bsd -- exit 0 ;; -- CRAY*X-MP:*:*:*) -- echo xmp-cray-unicos -- exit 0 ;; -+ exit ;; - CRAY*Y-MP:*:*:*) -- echo ymp-cray-unicos${UNAME_RELEASE} -- exit 0 ;; -+ echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' -+ exit ;; - CRAY*[A-Z]90:*:*:*) - echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ - | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ -- -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ -- exit 0 ;; -+ -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ -+ -e 's/\.[^.]*$/.X/' -+ exit ;; - CRAY*TS:*:*:*) -- echo t90-cray-unicos${UNAME_RELEASE} -- exit 0 ;; -+ echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' -+ exit ;; - CRAY*T3E:*:*:*) -- echo alpha-cray-unicosmk${UNAME_RELEASE} -- exit 0 ;; -- CRAY-2:*:*:*) -- echo cray2-cray-unicos -- exit 0 ;; -- F300:UNIX_System_V:*:*) -+ echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' -+ exit ;; -+ CRAY*SV1:*:*:*) -+ echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' -+ exit ;; -+ *:UNICOS/mp:*:*) -+ echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' -+ exit ;; -+ F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) -+ FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` - FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` - FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` -- echo "f300-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" -- exit 0 ;; -- F301:UNIX_System_V:*:*) -- echo f301-fujitsu-uxpv`echo $UNAME_RELEASE | sed 's/ .*//'` -- exit 0 ;; -- hp3[0-9][05]:NetBSD:*:*) -- echo m68k-hp-netbsd${UNAME_RELEASE} -- exit 0 ;; -- hp300:OpenBSD:*:*) -- echo m68k-unknown-openbsd${UNAME_RELEASE} -- exit 0 ;; -- i?86:BSD/386:*:* | i?86:BSD/OS:*:*) -+ echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" -+ exit ;; -+ 5000:UNIX_System_V:4.*:*) -+ FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` -+ FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` -+ echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" -+ exit ;; -+ i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) - echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - sparc*:BSD/OS:*:*) - echo sparc-unknown-bsdi${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - *:BSD/OS:*:*) - echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - *:FreeBSD:*:*) -- if test -x /usr/bin/objformat; then -- if test "elf" = "`/usr/bin/objformat`"; then -- echo ${UNAME_MACHINE}-unknown-freebsdelf`echo ${UNAME_RELEASE}|sed -e 's/[-_].*//'` -- exit 0 -- fi -- fi -- echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` -- exit 0 ;; -- *:NetBSD:*:*) -- echo ${UNAME_MACHINE}-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` -- exit 0 ;; -- *:OpenBSD:*:*) -- echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` -- exit 0 ;; -+ case ${UNAME_MACHINE} in -+ pc98) -+ echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; -+ amd64) -+ echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; -+ *) -+ echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; -+ esac -+ exit ;; - i*:CYGWIN*:*) - echo ${UNAME_MACHINE}-pc-cygwin -- exit 0 ;; -- i*:MINGW*:*) -+ exit ;; -+ *:MINGW*:*) - echo ${UNAME_MACHINE}-pc-mingw32 -- exit 0 ;; -+ exit ;; -+ i*:windows32*:*) -+ # uname -m includes "-pc" on this system. -+ echo ${UNAME_MACHINE}-mingw32 -+ exit ;; -+ i*:PW*:*) -+ echo ${UNAME_MACHINE}-pc-pw32 -+ exit ;; -+ *:Interix*:[3456]*) -+ case ${UNAME_MACHINE} in -+ x86) -+ echo i586-pc-interix${UNAME_RELEASE} -+ exit ;; -+ EM64T | authenticamd | genuineintel) -+ echo x86_64-unknown-interix${UNAME_RELEASE} -+ exit ;; -+ IA64) -+ echo ia64-unknown-interix${UNAME_RELEASE} -+ exit ;; -+ esac ;; -+ [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) -+ echo i${UNAME_MACHINE}-pc-mks -+ exit ;; -+ 8664:Windows_NT:*) -+ echo x86_64-pc-mks -+ exit ;; - i*:Windows_NT*:* | Pentium*:Windows_NT*:*) - # How do we know it's Interix rather than the generic POSIX subsystem? - # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we - # UNAME_MACHINE based on the output of uname instead of i386? -- echo i386-pc-interix -- exit 0 ;; -+ echo i586-pc-interix -+ exit ;; - i*:UWIN*:*) - echo ${UNAME_MACHINE}-pc-uwin -- exit 0 ;; -+ exit ;; -+ amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) -+ echo x86_64-unknown-cygwin -+ exit ;; - p*:CYGWIN*:*) - echo powerpcle-unknown-cygwin -- exit 0 ;; -+ exit ;; - prep*:SunOS:5.*:*) - echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` -- exit 0 ;; -+ exit ;; - *:GNU:*:*) -+ # the GNU system - echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` -- exit 0 ;; -- *:Linux:*:*) -- # uname on the ARM produces all sorts of strangeness, and we need to -- # filter it out. -- case "$UNAME_MACHINE" in -- armv*) UNAME_MACHINE=$UNAME_MACHINE ;; -- arm* | sa110*) UNAME_MACHINE="arm" ;; -+ exit ;; -+ *:GNU/*:*:*) -+ # other systems with GNU libc and userland -+ echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu -+ exit ;; -+ i*86:Minix:*:*) -+ echo ${UNAME_MACHINE}-pc-minix -+ exit ;; -+ arm*:Linux:*:*) -+ eval $set_cc_for_build -+ if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ -+ | grep -q __ARM_EABI__ -+ then -+ echo ${UNAME_MACHINE}-unknown-linux-gnu -+ else -+ echo ${UNAME_MACHINE}-unknown-linux-gnueabi -+ fi -+ exit ;; -+ avr32*:Linux:*:*) -+ echo ${UNAME_MACHINE}-unknown-linux-gnu -+ exit ;; -+ cris:Linux:*:*) -+ echo cris-axis-linux-gnu -+ exit ;; -+ crisv32:Linux:*:*) -+ echo crisv32-axis-linux-gnu -+ exit ;; -+ frv:Linux:*:*) -+ echo frv-unknown-linux-gnu -+ exit ;; -+ ia64:Linux:*:*) -+ echo ${UNAME_MACHINE}-unknown-linux-gnu -+ exit ;; -+ m32r*:Linux:*:*) -+ echo ${UNAME_MACHINE}-unknown-linux-gnu -+ exit ;; -+ m68*:Linux:*:*) -+ echo ${UNAME_MACHINE}-unknown-linux-gnu -+ exit ;; -+ mips:Linux:*:* | mips64:Linux:*:*) -+ eval $set_cc_for_build -+ sed 's/^ //' << EOF >$dummy.c -+ #undef CPU -+ #undef ${UNAME_MACHINE} -+ #undef ${UNAME_MACHINE}el -+ #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) -+ CPU=${UNAME_MACHINE}el -+ #else -+ #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) -+ CPU=${UNAME_MACHINE} -+ #else -+ CPU= -+ #endif -+ #endif -+EOF -+ eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' -+ /^CPU/{ -+ s: ::g -+ p -+ }'`" -+ test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } -+ ;; -+ or32:Linux:*:*) -+ echo or32-unknown-linux-gnu -+ exit ;; -+ ppc:Linux:*:*) -+ echo powerpc-unknown-linux-gnu -+ exit ;; -+ ppc64:Linux:*:*) -+ echo powerpc64-unknown-linux-gnu -+ exit ;; -+ alpha:Linux:*:*) -+ case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in -+ EV5) UNAME_MACHINE=alphaev5 ;; -+ EV56) UNAME_MACHINE=alphaev56 ;; -+ PCA56) UNAME_MACHINE=alphapca56 ;; -+ PCA57) UNAME_MACHINE=alphapca56 ;; -+ EV6) UNAME_MACHINE=alphaev6 ;; -+ EV67) UNAME_MACHINE=alphaev67 ;; -+ EV68*) UNAME_MACHINE=alphaev68 ;; -+ esac -+ objdump --private-headers /bin/sh | grep -q ld.so.1 -+ if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi -+ echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} -+ exit ;; -+ padre:Linux:*:*) -+ echo sparc-unknown-linux-gnu -+ exit ;; -+ parisc:Linux:*:* | hppa:Linux:*:*) -+ # Look for CPU level -+ case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in -+ PA7*) echo hppa1.1-unknown-linux-gnu ;; -+ PA8*) echo hppa2.0-unknown-linux-gnu ;; -+ *) echo hppa-unknown-linux-gnu ;; - esac -- -+ exit ;; -+ parisc64:Linux:*:* | hppa64:Linux:*:*) -+ echo hppa64-unknown-linux-gnu -+ exit ;; -+ s390:Linux:*:* | s390x:Linux:*:*) -+ echo ${UNAME_MACHINE}-ibm-linux -+ exit ;; -+ sh64*:Linux:*:*) -+ echo ${UNAME_MACHINE}-unknown-linux-gnu -+ exit ;; -+ sh*:Linux:*:*) -+ echo ${UNAME_MACHINE}-unknown-linux-gnu -+ exit ;; -+ sparc:Linux:*:* | sparc64:Linux:*:*) -+ echo ${UNAME_MACHINE}-unknown-linux-gnu -+ exit ;; -+ vax:Linux:*:*) -+ echo ${UNAME_MACHINE}-dec-linux-gnu -+ exit ;; -+ x86_64:Linux:*:*) -+ echo x86_64-unknown-linux-gnu -+ exit ;; -+ xtensa*:Linux:*:*) -+ echo ${UNAME_MACHINE}-unknown-linux-gnu -+ exit ;; -+ i*86:Linux:*:*) - # The BFD linker knows what the default object file format is, so - # first see if it will tell us. cd to the root directory to prevent - # problems with other programs or directories called `ld' in the path. -- ld_help_string=`cd /; ld --help 2>&1` -- ld_supported_emulations=`echo $ld_help_string \ -- | sed -ne '/supported emulations:/!d -+ # Set LC_ALL=C to ensure ld outputs messages in English. -+ ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \ -+ | sed -ne '/supported targets:/!d - s/[ ][ ]*/ /g -- s/.*supported emulations: *// -+ s/.*supported targets: *// - s/ .*// - p'` -- case "$ld_supported_emulations" in -- *ia64) echo "${UNAME_MACHINE}-unknown-linux" ; exit 0 ;; -- i?86linux) echo "${UNAME_MACHINE}-pc-linux-gnuaout" ; exit 0 ;; -- i?86coff) echo "${UNAME_MACHINE}-pc-linux-gnucoff" ; exit 0 ;; -- sparclinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;; -- armlinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;; -- m68klinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;; -- elf32ppc | elf32ppclinux) -- # Determine Lib Version -- cat >$dummy.c < --#if defined(__GLIBC__) --extern char __libc_version[]; --extern char __libc_release[]; --#endif --main(argc, argv) -- int argc; -- char *argv[]; --{ --#if defined(__GLIBC__) -- printf("%s %s\n", __libc_version, __libc_release); --#else -- printf("unkown\n"); --#endif -- return 0; --} --EOF -- LIBC="" -- $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null -- if test "$?" = 0 ; then -- ./$dummy | grep 1\.99 > /dev/null -- if test "$?" = 0 ; then -- LIBC="libc1" -- fi -- fi -- rm -f $dummy.c $dummy -- echo powerpc-unknown-linux-gnu${LIBC} ; exit 0 ;; -+ case "$ld_supported_targets" in -+ elf32-i386) -+ TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" -+ ;; - esac -- -- if test "${UNAME_MACHINE}" = "alpha" ; then -- sed 's/^ //' <$dummy.s -- .globl main -- .ent main -- main: -- .frame \$30,0,\$26,0 -- .prologue 0 -- .long 0x47e03d80 # implver $0 -- lda \$2,259 -- .long 0x47e20c21 # amask $2,$1 -- srl \$1,8,\$2 -- sll \$2,2,\$2 -- sll \$0,3,\$0 -- addl \$1,\$0,\$0 -- addl \$2,\$0,\$0 -- ret \$31,(\$26),1 -- .end main --EOF -- LIBC="" -- $CC_FOR_BUILD $dummy.s -o $dummy 2>/dev/null -- if test "$?" = 0 ; then -- ./$dummy -- case "$?" in -- 7) -- UNAME_MACHINE="alpha" -- ;; -- 15) -- UNAME_MACHINE="alphaev5" -- ;; -- 14) -- UNAME_MACHINE="alphaev56" -- ;; -- 10) -- UNAME_MACHINE="alphapca56" -- ;; -- 16) -- UNAME_MACHINE="alphaev6" -- ;; -- esac -- -- objdump --private-headers $dummy | \ -- grep ld.so.1 > /dev/null -- if test "$?" = 0 ; then -- LIBC="libc1" -- fi -- fi -- rm -f $dummy.s $dummy -- echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} ; exit 0 -- elif test "${UNAME_MACHINE}" = "mips" ; then -- cat >$dummy.c </dev/null && ./$dummy "${UNAME_MACHINE}" && rm $dummy.c $dummy && exit 0 -- rm -f $dummy.c $dummy -- else -- # Either a pre-BFD a.out linker (linux-gnuoldld) -- # or one that does not give us useful --help. -- # GCC wants to distinguish between linux-gnuoldld and linux-gnuaout. -- # If ld does not provide *any* "supported emulations:" -- # that means it is gnuoldld. -- echo "$ld_help_string" | grep >/dev/null 2>&1 "supported emulations:" -- test $? != 0 && echo "${UNAME_MACHINE}-pc-linux-gnuoldld" && exit 0 -- -- case "${UNAME_MACHINE}" in -- i?86) -- VENDOR=pc; -- ;; -- *) -- VENDOR=unknown; -- ;; -- esac -- # Determine whether the default compiler is a.out or elf -- cat >$dummy.c < --#ifdef __cplusplus -- int main (int argc, char *argv[]) { --#else -- int main (argc, argv) int argc; char *argv[]; { --#endif --#ifdef __ELF__ --# ifdef __GLIBC__ --# if __GLIBC__ >= 2 -- printf ("%s-${VENDOR}-linux-gnu\n", argv[1]); --# else -- printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]); --# endif --# else -- printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]); --# endif --#else -- printf ("%s-${VENDOR}-linux-gnuaout\n", argv[1]); --#endif -- return 0; --} -+ # Determine whether the default compiler is a.out or elf -+ eval $set_cc_for_build -+ sed 's/^ //' << EOF >$dummy.c -+ #include -+ #ifdef __ELF__ -+ # ifdef __GLIBC__ -+ # if __GLIBC__ >= 2 -+ LIBC=gnu -+ # else -+ LIBC=gnulibc1 -+ # endif -+ # else -+ LIBC=gnulibc1 -+ # endif -+ #else -+ #if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__SUNPRO_C) || defined(__SUNPRO_CC) -+ LIBC=gnu -+ #else -+ LIBC=gnuaout -+ #endif -+ #endif -+ #ifdef __dietlibc__ -+ LIBC=dietlibc -+ #endif - EOF -- $CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy "${UNAME_MACHINE}" && rm $dummy.c $dummy && exit 0 -- rm -f $dummy.c $dummy -- fi ;; --# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. earlier versions --# are messed up and put the nodename in both sysname and nodename. -- i?86:DYNIX/ptx:4*:*) -+ eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' -+ /^LIBC/{ -+ s: ::g -+ p -+ }'`" -+ test x"${LIBC}" != x && { -+ echo "${UNAME_MACHINE}-pc-linux-${LIBC}" -+ exit -+ } -+ test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; } -+ ;; -+ i*86:DYNIX/ptx:4*:*) -+ # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. -+ # earlier versions are messed up and put the nodename in both -+ # sysname and nodename. - echo i386-sequent-sysv4 -- exit 0 ;; -- i?86:UNIX_SV:4.2MP:2.*) -+ exit ;; -+ i*86:UNIX_SV:4.2MP:2.*) - # Unixware is an offshoot of SVR4, but it has its own version - # number series starting with 2... - # I am not positive that other SVR4 systems won't match this, - # I just have to hope. -- rms. - # Use sysv4.2uw... so that sysv4* matches it. - echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} -- exit 0 ;; -- i?86:*:4.*:* | i?86:SYSTEM_V:4.*:*) -+ exit ;; -+ i*86:OS/2:*:*) -+ # If we were able to find `uname', then EMX Unix compatibility -+ # is probably installed. -+ echo ${UNAME_MACHINE}-pc-os2-emx -+ exit ;; -+ i*86:XTS-300:*:STOP) -+ echo ${UNAME_MACHINE}-unknown-stop -+ exit ;; -+ i*86:atheos:*:*) -+ echo ${UNAME_MACHINE}-unknown-atheos -+ exit ;; -+ i*86:syllable:*:*) -+ echo ${UNAME_MACHINE}-pc-syllable -+ exit ;; -+ i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) -+ echo i386-unknown-lynxos${UNAME_RELEASE} -+ exit ;; -+ i*86:*DOS:*:*) -+ echo ${UNAME_MACHINE}-pc-msdosdjgpp -+ exit ;; -+ i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) -+ UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` - if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then -- echo ${UNAME_MACHINE}-univel-sysv${UNAME_RELEASE} -+ echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} - else -- echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE} -+ echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} - fi -- exit 0 ;; -- i?86:*:5:7*) -- UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')` -- (/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486 -- (/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) && UNAME_MACHINE=i586 -- (/bin/uname -X|egrep '^Machine.*Pent.*II' >/dev/null) && UNAME_MACHINE=i686 -- (/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) && UNAME_MACHINE=i585 -- echo ${UNAME_MACHINE}-${UNAME_SYSTEM}${UNAME_VERSION}-sysv${UNAME_RELEASE} -- exit 0 ;; -- i?86:*:3.2:*) -+ exit ;; -+ i*86:*:5:[678]*) -+ # UnixWare 7.x, OpenUNIX and OpenServer 6. -+ case `/bin/uname -X | grep "^Machine"` in -+ *486*) UNAME_MACHINE=i486 ;; -+ *Pentium) UNAME_MACHINE=i586 ;; -+ *Pent*|*Celeron) UNAME_MACHINE=i686 ;; -+ esac -+ echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} -+ exit ;; -+ i*86:*:3.2:*) - if test -f /usr/options/cb.name; then - UNAME_REL=`sed -n 's/.*Version //p' /dev/null >/dev/null ; then -- UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')` -- (/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486 -- (/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \ -+ UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` -+ (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 -+ (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ - && UNAME_MACHINE=i586 -- (/bin/uname -X|egrep '^Machine.*Pent ?II' >/dev/null) \ -+ (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ - && UNAME_MACHINE=i686 -- (/bin/uname -X|egrep '^Machine.*Pentium Pro' >/dev/null) \ -+ (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ - && UNAME_MACHINE=i686 - echo ${UNAME_MACHINE}-pc-sco$UNAME_REL - else - echo ${UNAME_MACHINE}-pc-sysv32 - fi -- exit 0 ;; -+ exit ;; - pc:*:*:*) -+ # Left here for compatibility: - # uname -m prints for DJGPP always 'pc', but it prints nothing about -- # the processor, so we play safe by assuming i386. -- echo i386-pc-msdosdjgpp -- exit 0 ;; -+ # the processor, so we play safe by assuming i586. -+ # Note: whatever this is, it MUST be the same as what config.sub -+ # prints for the "djgpp" host, or else GDB configury will decide that -+ # this is a cross-build. -+ echo i586-pc-msdosdjgpp -+ exit ;; - Intel:Mach:3*:*) - echo i386-pc-mach3 -- exit 0 ;; -+ exit ;; - paragon:*:*:*) - echo i860-intel-osf1 -- exit 0 ;; -+ exit ;; - i860:*:4.*:*) # i860-SVR4 - if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then - echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 - else # Add other i860-SVR4 vendors below as they are discovered. - echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 - fi -- exit 0 ;; -+ exit ;; - mini*:CTIX:SYS*5:*) - # "miniframe" - echo m68010-convergent-sysv -- exit 0 ;; -- M68*:*:R3V[567]*:*) -- test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;; -- 3[34]??:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 4850:*:4.0:3.0) -+ exit ;; -+ mc68k:UNIX:SYSTEM5:3.51m) -+ echo m68k-convergent-sysv -+ exit ;; -+ M680?0:D-NIX:5.3:*) -+ echo m68k-diab-dnix -+ exit ;; -+ M68*:*:R3V[5678]*:*) -+ test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; -+ 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0) - OS_REL='' - test -r /etc/.relid \ - && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` - /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ -- && echo i486-ncr-sysv4.3${OS_REL} && exit 0 -+ && { echo i486-ncr-sysv4.3${OS_REL}; exit; } - /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ -- && echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;; -+ && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; - 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) - /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ -- && echo i486-ncr-sysv4 && exit 0 ;; -- m68*:LynxOS:2.*:*) -+ && { echo i486-ncr-sysv4; exit; } ;; -+ NCR*:*:4.2:* | MPRAS*:*:4.2:*) -+ OS_REL='.3' -+ test -r /etc/.relid \ -+ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` -+ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ -+ && { echo i486-ncr-sysv4.3${OS_REL}; exit; } -+ /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ -+ && { echo i586-ncr-sysv4.3${OS_REL}; exit; } -+ /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ -+ && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; -+ m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) - echo m68k-unknown-lynxos${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - mc68030:UNIX_System_V:4.*:*) - echo m68k-atari-sysv4 -- exit 0 ;; -- i?86:LynxOS:2.*:* | i?86:LynxOS:3.[01]*:*) -- echo i386-unknown-lynxos${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - TSUNAMI:LynxOS:2.*:*) - echo sparc-unknown-lynxos${UNAME_RELEASE} -- exit 0 ;; -- rs6000:LynxOS:2.*:* | PowerPC:LynxOS:2.*:*) -+ exit ;; -+ rs6000:LynxOS:2.*:*) - echo rs6000-unknown-lynxos${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; -+ PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) -+ echo powerpc-unknown-lynxos${UNAME_RELEASE} -+ exit ;; - SM[BE]S:UNIX_SV:*:*) - echo mips-dde-sysv${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - RM*:ReliantUNIX-*:*:*) - echo mips-sni-sysv4 -- exit 0 ;; -+ exit ;; - RM*:SINIX-*:*:*) - echo mips-sni-sysv4 -- exit 0 ;; -+ exit ;; - *:SINIX-*:*:*) - if uname -p 2>/dev/null >/dev/null ; then - UNAME_MACHINE=`(uname -p) 2>/dev/null` -@@ -896,59 +1173,170 @@ - else - echo ns32k-sni-sysv - fi -- exit 0 ;; -- PENTIUM:CPunix:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort -- # says -+ exit ;; -+ PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort -+ # says - echo i586-unisys-sysv4 -- exit 0 ;; -+ exit ;; - *:UNIX_System_V:4*:FTX*) - # From Gerald Hewes . - # How about differentiating between stratus architectures? -djm - echo hppa1.1-stratus-sysv4 -- exit 0 ;; -+ exit ;; - *:*:*:FTX*) - # From seanf@swdc.stratus.com. - echo i860-stratus-sysv4 -- exit 0 ;; -+ exit ;; -+ i*86:VOS:*:*) -+ # From Paul.Green@stratus.com. -+ echo ${UNAME_MACHINE}-stratus-vos -+ exit ;; -+ *:VOS:*:*) -+ # From Paul.Green@stratus.com. -+ echo hppa1.1-stratus-vos -+ exit ;; - mc68*:A/UX:*:*) - echo m68k-apple-aux${UNAME_RELEASE} -- exit 0 ;; -- news*:NEWS-OS:*:6*) -+ exit ;; -+ news*:NEWS-OS:6*:*) - echo mips-sony-newsos6 -- exit 0 ;; -+ exit ;; - R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) - if [ -d /usr/nec ]; then - echo mips-nec-sysv${UNAME_RELEASE} - else - echo mips-unknown-sysv${UNAME_RELEASE} - fi -- exit 0 ;; -+ exit ;; - BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. - echo powerpc-be-beos -- exit 0 ;; -+ exit ;; - BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. - echo powerpc-apple-beos -- exit 0 ;; -+ exit ;; - BePC:BeOS:*:*) # BeOS running on Intel PC compatible. - echo i586-pc-beos -- exit 0 ;; -+ exit ;; -+ BePC:Haiku:*:*) # Haiku running on Intel PC compatible. -+ echo i586-pc-haiku -+ exit ;; - SX-4:SUPER-UX:*:*) - echo sx4-nec-superux${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - SX-5:SUPER-UX:*:*) - echo sx5-nec-superux${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; -+ SX-6:SUPER-UX:*:*) -+ echo sx6-nec-superux${UNAME_RELEASE} -+ exit ;; -+ SX-7:SUPER-UX:*:*) -+ echo sx7-nec-superux${UNAME_RELEASE} -+ exit ;; -+ SX-8:SUPER-UX:*:*) -+ echo sx8-nec-superux${UNAME_RELEASE} -+ exit ;; -+ SX-8R:SUPER-UX:*:*) -+ echo sx8r-nec-superux${UNAME_RELEASE} -+ exit ;; - Power*:Rhapsody:*:*) - echo powerpc-apple-rhapsody${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; - *:Rhapsody:*:*) - echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} -- exit 0 ;; -+ exit ;; -+ *:Darwin:*:*) -+ UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown -+ case $UNAME_PROCESSOR in -+ unknown) UNAME_PROCESSOR=powerpc ;; -+ esac -+ echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} -+ exit ;; -+ *:procnto*:*:* | *:QNX:[0123456789]*:*) -+ UNAME_PROCESSOR=`uname -p` -+ if test "$UNAME_PROCESSOR" = "x86"; then -+ UNAME_PROCESSOR=i386 -+ UNAME_MACHINE=pc -+ fi -+ echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} -+ exit ;; -+ *:QNX:*:4*) -+ echo i386-pc-qnx -+ exit ;; -+ NSE-?:NONSTOP_KERNEL:*:*) -+ echo nse-tandem-nsk${UNAME_RELEASE} -+ exit ;; -+ NSR-?:NONSTOP_KERNEL:*:*) -+ echo nsr-tandem-nsk${UNAME_RELEASE} -+ exit ;; -+ *:NonStop-UX:*:*) -+ echo mips-compaq-nonstopux -+ exit ;; -+ BS2000:POSIX*:*:*) -+ echo bs2000-siemens-sysv -+ exit ;; -+ DS/*:UNIX_System_V:*:*) -+ echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} -+ exit ;; -+ *:Plan9:*:*) -+ # "uname -m" is not consistent, so use $cputype instead. 386 -+ # is converted to i386 for consistency with other x86 -+ # operating systems. -+ if test "$cputype" = "386"; then -+ UNAME_MACHINE=i386 -+ else -+ UNAME_MACHINE="$cputype" -+ fi -+ echo ${UNAME_MACHINE}-unknown-plan9 -+ exit ;; -+ *:TOPS-10:*:*) -+ echo pdp10-unknown-tops10 -+ exit ;; -+ *:TENEX:*:*) -+ echo pdp10-unknown-tenex -+ exit ;; -+ KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) -+ echo pdp10-dec-tops20 -+ exit ;; -+ XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) -+ echo pdp10-xkl-tops20 -+ exit ;; -+ *:TOPS-20:*:*) -+ echo pdp10-unknown-tops20 -+ exit ;; -+ *:ITS:*:*) -+ echo pdp10-unknown-its -+ exit ;; -+ SEI:*:*:SEIUX) -+ echo mips-sei-seiux${UNAME_RELEASE} -+ exit ;; -+ *:DragonFly:*:*) -+ echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` -+ exit ;; -+ *:*VMS:*:*) -+ UNAME_MACHINE=`(uname -p) 2>/dev/null` -+ case "${UNAME_MACHINE}" in -+ A*) echo alpha-dec-vms ; exit ;; -+ I*) echo ia64-dec-vms ; exit ;; -+ V*) echo vax-dec-vms ; exit ;; -+ esac ;; -+ *:XENIX:*:SysV) -+ echo i386-pc-xenix -+ exit ;; -+ i*86:skyos:*:*) -+ echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' -+ exit ;; -+ i*86:rdos:*:*) -+ echo ${UNAME_MACHINE}-pc-rdos -+ exit ;; -+ i*86:AROS:*:*) -+ echo ${UNAME_MACHINE}-pc-aros -+ exit ;; - esac - - #echo '(No uname command or uname output not recognized.)' 1>&2 - #echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 - -+eval $set_cc_for_build - cat >$dummy.c < -@@ -974,7 +1362,7 @@ - #endif - - #if defined (__arm) && defined (__acorn) && defined (__unix) -- printf ("arm-acorn-riscix"); exit (0); -+ printf ("arm-acorn-riscix\n"); exit (0); - #endif - - #if defined (hp300) && !defined (hpux) -@@ -1035,11 +1423,24 @@ - #endif - - #if defined (vax) --#if !defined (ultrix) -- printf ("vax-dec-bsd\n"); exit (0); --#else -- printf ("vax-dec-ultrix\n"); exit (0); --#endif -+# if !defined (ultrix) -+# include -+# if defined (BSD) -+# if BSD == 43 -+ printf ("vax-dec-bsd4.3\n"); exit (0); -+# else -+# if BSD == 199006 -+ printf ("vax-dec-bsd4.3reno\n"); exit (0); -+# else -+ printf ("vax-dec-bsd\n"); exit (0); -+# endif -+# endif -+# else -+ printf ("vax-dec-bsd\n"); exit (0); -+# endif -+# else -+ printf ("vax-dec-ultrix\n"); exit (0); -+# endif - #endif - - #if defined (alliant) && defined (i860) -@@ -1050,12 +1451,12 @@ - } - EOF - --$CC_FOR_BUILD $dummy.c -o $dummy 2>/dev/null && ./$dummy && rm $dummy.c $dummy && exit 0 --rm -f $dummy.c $dummy -+$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && -+ { echo "$SYSTEM_NAME"; exit; } - - # Apollos put the system type in the environment. - --test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit 0; } -+test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } - - # Convex versions that predate uname can use getsysinfo(1) - -@@ -1064,25 +1465,69 @@ - case `getsysinfo -f cpu_type` in - c1*) - echo c1-convex-bsd -- exit 0 ;; -+ exit ;; - c2*) - if getsysinfo -f scalar_acc - then echo c32-convex-bsd - else echo c2-convex-bsd - fi -- exit 0 ;; -+ exit ;; - c34*) - echo c34-convex-bsd -- exit 0 ;; -+ exit ;; - c38*) - echo c38-convex-bsd -- exit 0 ;; -+ exit ;; - c4*) - echo c4-convex-bsd -- exit 0 ;; -+ exit ;; - esac - fi - --#echo '(Unable to guess system type)' 1>&2 -+cat >&2 < in order to provide the needed -+information to handle your system. -+ -+config.guess timestamp = $timestamp -+ -+uname -m = `(uname -m) 2>/dev/null || echo unknown` -+uname -r = `(uname -r) 2>/dev/null || echo unknown` -+uname -s = `(uname -s) 2>/dev/null || echo unknown` -+uname -v = `(uname -v) 2>/dev/null || echo unknown` -+ -+/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` -+/bin/uname -X = `(/bin/uname -X) 2>/dev/null` -+ -+hostinfo = `(hostinfo) 2>/dev/null` -+/bin/universe = `(/bin/universe) 2>/dev/null` -+/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` -+/bin/arch = `(/bin/arch) 2>/dev/null` -+/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` -+/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` -+ -+UNAME_MACHINE = ${UNAME_MACHINE} -+UNAME_RELEASE = ${UNAME_RELEASE} -+UNAME_SYSTEM = ${UNAME_SYSTEM} -+UNAME_VERSION = ${UNAME_VERSION} -+EOF - - exit 1 -+ -+# Local variables: -+# eval: (add-hook 'write-file-hooks 'time-stamp) -+# time-stamp-start: "timestamp='" -+# time-stamp-format: "%:y-%02m-%02d" -+# time-stamp-end: "'" -+# End: ---- recode-3.6.orig/src/request.c -+++ recode-3.6/src/request.c -@@ -1073,7 +1073,7 @@ - if (task->output.cursor + 4 >= task->output.limit) - { - RECODE_OUTER outer = task->request->outer; -- size_t old_size = task->output.limit - task->output.buffer; -+ size_t old_size = task->output.cursor - task->output.buffer; - size_t new_size = task->output.cursor + 4 - task->output.buffer; - - /* FIXME: Rethink about how the error should be reported. */ ---- recode-3.6.orig/src/libiconv.c -+++ recode-3.6/src/libiconv.c -@@ -1,5 +1,5 @@ - /* Conversion of files between different charsets and surfaces. -- Copyright 1999, 2000 Free Software Foundation, Inc. -+ Copyright 1999, 2000, 2001 Free Software Foundation, Inc. - Contributed by Franois Pinard , 1999, - and Bruno Haible , 2000. - -@@ -195,12 +195,17 @@ - memcpy() doesn't do here, because the regions might overlap. - memmove() isn't worth it, because we rarely have to move more - than 12 bytes. */ -- if (input > input_buffer && input_left > 0) -+ cursor = input_buffer; -+ if (input_left > 0) - { -- cursor = input_buffer; -- do -- *cursor++ = *input++; -- while (--input_left > 0); -+ if (input > input_buffer) -+ { -+ do -+ *cursor++ = *input++; -+ while (--input_left > 0); -+ } -+ else -+ cursor += input_left; - } - } - ---- recode-3.6.orig/src/recodext.h -+++ recode-3.6/src/recodext.h -@@ -218,7 +218,7 @@ - enum recode_symbol_type type : 3; - - /* Non zero if this one should be ignored. */ -- bool ignore : 2; -+ bool ignore : 1; - }; - - struct recode_surface_list ---- recode-3.6.orig/src/task.c -+++ recode-3.6/src/task.c -@@ -1198,6 +1198,8 @@ - else - success = transform_mere_copy (subtask); - -+ task->output = subtask->output; -+ - if (subtask->input.name && *subtask->input.name) - fclose (subtask->input.file); - if (subtask->output.name && *subtask->output.name) ---- recode-3.6.orig/src/Makefile.in -+++ recode-3.6/src/Makefile.in -@@ -819,7 +819,7 @@ - $(srcdir)/recode.1: recode - @if test -r $@ && test ! -w $@; then \ - echo "WARNING: Page \`$@' read only, not updated"; \ -- elif $(PERL) $(top_srcdir)/doc/help2man --output=$@ ./recode; then \ -+ elif $(PERL) $(top_srcdir)/doc/help2man --name="converts files between character sets" --output=$@ ./recode; then \ - echo "Page \`$@' has been updated"; \ - else \ - echo "WARNING: Page \`$@' has *not* been updated."; \ ---- recode-3.6.orig/src/outer.c -+++ recode-3.6/src/outer.c -@@ -617,7 +617,14 @@ - if (outer->alias_table) - hash_free (outer->alias_table); - if (outer->argmatch_charset_array) -- free (outer->argmatch_charset_array); -+ { -+ char **cursor; -+ for (cursor = outer->argmatch_charset_array; *cursor; cursor++) -+ free (*cursor); -+ for (cursor = outer->argmatch_surface_array; *cursor; cursor++) -+ free (*cursor); -+ free (outer->argmatch_charset_array); -+ } - if (outer->one_to_same) - free ((void *) outer->one_to_same); - free (outer); ---- recode-3.6.orig/src/hash.h -+++ recode-3.6/src/hash.h -@@ -21,6 +21,11 @@ - /* Make sure USE_OBSTACK is defined to 1 if you want the allocator to use - obstacks instead of malloc, and recompile `hash.c' with same setting. */ - -+#define hash_lookup recode_hash_lookup -+#define hash_delete recode_hash_delete -+#define hash_free recode_hash_free -+#define hash_insert recode_hash_insert -+ - #ifndef PARAMS - # if PROTOTYPES || __STDC__ - # define PARAMS(Args) Args ---- recode-3.6.orig/src/names.c -+++ recode-3.6/src/names.c -@@ -101,6 +101,21 @@ - return strcmp (first->name, second->name) == 0; - } - -+static void -+alias_freer (void *param) -+{ -+ RECODE_ALIAS alias = param; -+ struct recode_surface_list *next = alias->implied_surfaces; -+ struct recode_surface_list *p; -+ while (next) -+ { -+ p = next->next; -+ free(next); -+ next = p; -+ } -+ free(alias); -+} -+ - bool - prepare_for_aliases (RECODE_OUTER outer) - { -@@ -108,7 +123,7 @@ - outer->number_of_symbols = 0; - - outer->alias_table -- = hash_initialize (800, NULL, alias_hasher, alias_comparator, free); -+ = hash_initialize (800, NULL, alias_hasher, alias_comparator, alias_freer); - if (!outer->alias_table) - return false; - ---- recode-3.6.orig/debian/shlibs -+++ recode-3.6/debian/shlibs -@@ -0,0 +1 @@ -+librecode 0 librecode0 (>= 3.6) ---- recode-3.6.orig/debian/shlibs.local -+++ recode-3.6/debian/shlibs.local -@@ -0,0 +1 @@ -+librecode 0 librecode0 (>= 3.6) ---- recode-3.6.orig/debian/watch -+++ recode-3.6/debian/watch -@@ -0,0 +1,2 @@ -+version=3 -+http://ftp.gnu.org/gnu/recode/recode-(.*).tar.gz ---- recode-3.6.orig/debian/rules -+++ recode-3.6/debian/rules -@@ -0,0 +1,139 @@ -+#!/usr/bin/make -f -+ -+package = recode -+ -+CC = gcc -+CFLAGS = -g -Wall -D_REENTRANT -+INSTALL_PROGRAM = install -+ -+STRIP = true -+ATRIP = true -+ -+ifeq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) -+ CFLAGS += -O2 -+endif -+ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS))) -+ INSTALL_PROGRAM += -s -+ STRIP=strip --strip-unneeded --remove-section=.comment --remove-section=.note -+ ATRIP=strip --strip-debug -+endif -+ -+build: -+ touch aclocal.m4 -+ touch configure -+ touch stamp-h.in -+ touch config.h.in -+ touch Makefile.in -+ touch m4/Makefile.in -+ touch doc/Makefile.in -+ touch lib/Makefile.in -+ touch libiconv/Makefile.in -+ touch i18n/Makefile.in -+ touch src/Makefile.in -+ touch tests/Makefile.in -+ touch contrib/Makefile.in -+ ./configure --prefix=/usr --without-included-gettext -+ $(MAKE) CC="$(CC)" CFLAGS="$(CFLAGS)" -+ $(MAKE) install DESTDIR=`pwd`/debian/tmp \ -+ INSTALL_PROGRAM="$(INSTALL_PROGRAM)" -+ touch build -+ -+clean: -+ rm -f build -+ rm -f i18n/*.mo -+ [ ! -f Makefile ] || $(MAKE) distclean -+ rm -f `find . -name "*~"` -+ rm -rf debian/tmp debian/files* core debian/substvars -+ cd debian && rm -rf recode librecode0 librecode-dev recode-doc -+ -+binary-indep: build -+ debian/rules recode-doc -+ -+binary-arch: build -+ debian/rules recode -+ debian/rules librecode0 -+ debian/rules librecode-dev -+ -+recode-doc: build -+ rm -rf debian/$@ -+ install -d debian/$@/DEBIAN debian/$@/usr/share/doc/$@ -+ install -d debian/$@/usr/share/doc-base -+ install -m 644 debian/$@.doc-base debian/$@/usr/share/doc-base/$@ -+ cd doc && texi2html -split_chapter $(package).texi -+ mv doc/*.html debian/$@/usr/share/doc/$@ -+ ln -s $(package)_toc.html debian/$@/usr/share/doc/$@/index.html -+ cp -p debian/copyright debian/$@/usr/share/doc/$@ -+ cp -p ChangeLog debian/$@/usr/share/doc/$@/changelog -+ cp -p debian/changelog debian/$@/usr/share/doc/$@/changelog.Debian -+ cd debian/$@/usr/share/doc/$@ && gzip -9 changelog changelog.Debian -+ dpkg-gencontrol -p$@ -Pdebian/$@ -+ cd debian/$@ && \ -+ md5sum `find * -type f ! -regex "DEBIAN/.*"` > DEBIAN/md5sums -+ chown -R root:root debian/$@ -+ chmod -R go=rX debian/$@ -+ dpkg --build debian/$@ .. -+ -+recode: build -+ rm -rf debian/$@ -+ install -d debian/$@/DEBIAN debian/$@/usr/share/doc/$@ -+ cp -a debian/tmp/usr/share/locale debian/$@/usr/share -+ cp -a debian/tmp/usr/info debian/$@/usr/share -+ cp -a debian/tmp/usr/man debian/$@/usr/share -+ cp -a debian/tmp/usr/bin debian/$@/usr -+ cp -p TODO NEWS THANKS doc/File-Latin1 debian/copyright \ -+ debian/$@/usr/share/doc/$@ -+ cp -p ChangeLog debian/$@/usr/share/doc/$@/changelog -+ cp -p debian/changelog debian/$@/usr/share/doc/$@/changelog.Debian -+ cd debian/$@/usr/share/doc/$@ && gzip -9 changelog changelog.Debian -+ gzip -9 debian/$@/usr/share/info/* -+ gzip -r9 debian/$@/usr/share/man -+ LD_LIBRARY_PATH=`pwd`/debian/tmp/usr/lib:$$LD_LIBRARY_PATH \ -+ dpkg-shlibdeps debian/tmp/usr/bin/recode -+ dpkg-gencontrol -p$(package) -Pdebian/$@ -+ cd debian/$@ && \ -+ md5sum `find * -type f ! -regex "DEBIAN/.*"` > DEBIAN/md5sums -+ chown -R root:root debian/$@ -+ chmod -R go=rX debian/$@ -+ dpkg --build debian/$@ .. -+ -+librecode0: build -+ rm -rf debian/$@ -+ install -d debian/$@/DEBIAN debian/$@/usr/share/doc/$@ -+ install -d debian/$@/usr/lib -+ cp -a debian/tmp/usr/lib/librecode.so.0* debian/$@/usr/lib -+ install -m 755 debian/$@.postinst debian/$@/DEBIAN/postinst -+ install -m 644 debian/shlibs debian/$@/DEBIAN -+ cp -p debian/copyright debian/$@/usr/share/doc/$@ -+ cp -p ChangeLog debian/$@/usr/share/doc/$@/changelog -+ cp -p debian/changelog debian/$@/usr/share/doc/$@/changelog.Debian -+ cd debian/$@/usr/share/doc/$@ && gzip -9 changelog changelog.Debian -+ $(STRIP) debian/$@/usr/lib/*.so.0.0.0 -+ chmod -x debian/$@/usr/lib/* -+ dpkg-shlibdeps debian/$@/usr/lib/librecode.so.0 -+ dpkg-gencontrol -p$@ -Pdebian/$@ -+ cd debian/$@ && \ -+ md5sum `find * -type f ! -regex "DEBIAN/.*"` > DEBIAN/md5sums -+ chown -R root:root debian/$@ -+ chmod -R go=rX debian/$@ -+ dpkg --build debian/$@ .. -+ -+librecode-dev: build -+ rm -rf debian/$@ -+ install -d debian/$@/DEBIAN debian/$@/usr/share/doc -+ install -d debian/$@/usr/lib -+ ln -s librecode0 debian/$@/usr/share/doc/$@ -+ cp -a debian/tmp/usr/lib/*.so debian/$@/usr/lib -+ cp -p debian/tmp/usr/lib/*.a debian/$@/usr/lib -+ cp -a debian/tmp/usr/include debian/$@/usr -+ $(ATRIP) debian/$@/usr/lib/*.a -+ dpkg-gencontrol -p$@ -Pdebian/$@ -+ cd debian/$@ && \ -+ md5sum `find * -type f ! -regex "DEBIAN/.*"` > DEBIAN/md5sums -+ chown -R root:root debian/$@ -+ chmod -R go=rX debian/$@ -+ dpkg --build debian/$@ .. -+ -+binary: binary-indep binary-arch -+ -+.PHONY: binary binary-arch binary-indep clean -+.PHONY: recode librecode0 librecode-dev recode-doc ---- recode-3.6.orig/debian/control -+++ recode-3.6/debian/control -@@ -0,0 +1,46 @@ -+Source: recode -+Section: text -+Priority: optional -+Maintainer: Santiago Vila -+Standards-Version: 3.8.3 -+Build-Depends: gettext -+Build-Depends-Indep: texi2html (>= 1.82) -+ -+Package: recode -+Architecture: any -+Depends: ${shlibs:Depends}, dpkg (>= 1.15.4) | install-info -+Description: Character set conversion utility -+ Free `recode' converts files between character sets and usages. When -+ exact transliterations are not possible, it may get rid of the -+ offending characters or fall back on approximations. This program -+ recognizes or produces nearly 300 different character sets and is able -+ to transliterate files between almost any pair. Most RFC 1345 -+ character sets, and all `libiconv' character sets, are supported. -+ -+Package: recode-doc -+Section: doc -+Priority: optional -+Architecture: all -+Description: Documentation for Free recode -+ This package contains the HTML documentation for Free recode. -+ -+Package: librecode0 -+Section: libs -+Priority: optional -+Architecture: any -+Depends: ${shlibs:Depends} -+Description: Shared library on which recode is based -+ This recoding library converts files between various coded character -+ sets and surface encodings. The library recognizes or produces more -+ than 300 different character sets and is able to convert files between -+ almost any pair. Most RFC 1345 character sets, and all `libiconv' -+ character sets, are supported. -+ -+Package: librecode-dev -+Section: libdevel -+Priority: optional -+Architecture: any -+Depends: ${shlibs:Depends}, librecode0 (>= 3.6) -+Description: Development package for librecode0 -+ This package contains the header files and static librecode.a -+ library needed to build applications based on librecode. ---- recode-3.6.orig/debian/librecode0.postinst -+++ recode-3.6/debian/librecode0.postinst -@@ -0,0 +1,5 @@ -+#!/bin/sh -+set -e -+if [ "$1" = "configure" ]; then -+ ldconfig -+fi ---- recode-3.6.orig/debian/recode-doc.doc-base -+++ recode-3.6/debian/recode-doc.doc-base -@@ -0,0 +1,16 @@ -+Document: recode-doc -+Title: Free recode manual -+Author: François Pinard -+Abstract: This manual documents Free recode. -+ This recoding library converts files between various coded character -+ sets and surface encodings. When this cannot be achieved exactly, it -+ may get rid of the offending characters or fall back on approximations. -+ The library recognises or produces nearly 150 different character sets -+ and is able to convert files between almost any pair. Most RFC 1345 -+ character sets are supported. The `recode' program is a handy -+ front-end to the library. -+Section: Text -+ -+Format: HTML -+Index: /usr/share/doc/recode-doc/index.html -+Files: /usr/share/doc/recode-doc/*.html ---- recode-3.6.orig/debian/copyright -+++ recode-3.6/debian/copyright -@@ -0,0 +1,38 @@ -+This is the Debian prepackaged version of Free recode, a program that -+converts files between character sets and usages. Free recode was -+written by François Pinard . -+ -+This package was first put together by Klee Dienes . -+ -+It is currently maintained by Santiago Vila , -+from sources obtained from: -+ -+http://ftp.gnu.org/gnu/recode/recode-3.6.tar.gz -+ -+The changes were fairly minimal, and consisted solely of adding -+various debian/* files to the distribution. -+ -+Copyright: -+ -+The entire recode package is Copyright (C) the Free Software Foundation, -+with the exception of ansi2knr.c, which is Copyright (C) Aladdin Enterprises. -+ -+The program is distributed under the terms of the GNU General Public License: -+ -+ This program is free software; you can redistribute it and/or modify it -+ under the terms of the GNU General Public License as published by the -+ Free Software Foundation; either version 2, or (at your option) any -+ later version. -+ -+The library is distributed under the terms of the GNU Lesser General -+Public License: -+ -+ This library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public License -+ as published by the Free Software Foundation; either version 2 of the -+ License, or (at your option) any later version. -+ -+On Debian systems, the complete text of the GNU General Public License -+can be found in `/usr/share/common-licenses/GPL', and the complete -+text of the GNU Lesser General Public License can be found in -+`/usr/share/common-licenses/LGPL'. ---- recode-3.6.orig/debian/changelog -+++ recode-3.6/debian/changelog -@@ -0,0 +1,212 @@ -+recode (3.6-17) unstable; urgency=medium -+ -+ * Do not ignore errors from make distclean. -+ * Changed debian/* files again for new texi2html behaviour. Closes: #552972. -+ -+ -- Santiago Vila Wed, 04 Nov 2009 12:36:08 +0100 -+ -+recode (3.6-16) unstable; urgency=low -+ -+ * Modified doc/Makefile.in to avoid /usr/share/info/dir.gz. -+ * Handle info files as indicated by policy 3.8.3. -+ * Fixed memory leak in librecode. Closes: #242190. -+ Thanks a lot to Gaël Le Mignot for the patch. -+ * Moved doc-base manual to "Text" section. -+ * Removed useless calls to install-docs. -+ * Updated config.guess and config.sub. -+ * Removed useless *.la files. -+ * Added watch file. -+ -+ -- Santiago Vila Sun, 30 Aug 2009 21:15:42 +0200 -+ -+recode (3.6-15) unstable; urgency=low -+ -+ * Reduced size of "ignore" element in struct recode_symbol to 1 bit. -+ Should make gcc-4.3 happy. Closes: #462004. -+ -+ -- Santiago Vila Wed, 2 Apr 2008 10:02:30 +0200 -+ -+recode (3.6-14) unstable; urgency=low -+ -+ * Should build twice in a row. Closes: #424291. -+ * Updated po files from translation project. Closes: #313925, #427366. -+ -+ -- Santiago Vila Thu, 28 Jun 2007 21:25:18 +0200 -+ -+recode (3.6-13) unstable; urgency=medium -+ -+ * Updated config.guess and config.sub. -+ * Fixed NAME section in manpage (Closes: #368634). -+ * Removed build-dependency on flex (Closes: #402023). -+ -+ -- Santiago Vila Fri, 8 Dec 2006 13:07:44 +0100 -+ -+recode (3.6-12) unstable; urgency=low -+ -+ * Updated config.guess and config.sub for GNU/kFreeBSD (Closes: #333452). -+ -+ -- Santiago Vila Wed, 12 Oct 2005 17:12:34 +0200 -+ -+recode (3.6-11) unstable; urgency=low -+ -+ * Fixed FTBFS bug caused by new texi2html behaviour (Closes: #318557). -+ * Updated URL for original source in copyright file. -+ * Changed doc-base and copyright files to UTF-8. -+ -+ -- Santiago Vila Sat, 16 Jul 2005 18:40:54 +0200 -+ -+recode (3.6-10) unstable; urgency=low -+ -+ * Removed executable bit from librecode.la to make lintian happy. -+ * Added -D_REENTRANT to CFLAGS, since there are libraries here. -+ * Rewritten debian/rules to allow parallel make. -+ -+ -- Santiago Vila Thu, 9 Oct 2003 13:18:56 +0200 -+ -+recode (3.6-9) unstable; urgency=low -+ -+ * ./configure --without-included-gettext. Messages should now be shown -+ in UTF-8 if that's the charset for the selected locale (Closes: #207736). -+ * Updated a lot of translations from the Free Translation Project -+ (those having all the messages translated). -+ * Added gettext to Build-Depends: accordingly. -+ -+ -- Santiago Vila Fri, 29 Aug 2003 19:22:24 +0200 -+ -+recode (3.6-8) unstable; urgency=low -+ -+ * Updated libtool stuff (Closes: #201945). Note: The size of the diff -+ is not an error, it's mainly the result of running libtoolize, updating -+ m4/libtool.m4 and acinclude.m4, running aclocal, and running autoconf. -+ * Removed file from Build-Depends, the new libtool should not require it. -+ * Updated/improved description for recode and librecode0 (Closes: #206875). -+ * Moved librecode-dev to Section: libdevel. -+ -+ -- Santiago Vila Thu, 28 Aug 2003 17:05:04 +0200 -+ -+recode (3.6-7) unstable; urgency=medium -+ -+ * Fixed wrong pointer re-calculation in guarantee_nul_terminator(). -+ Thanks a lot to Enrik Berkhan (Closes: #156635). -+ * Standards-Version: 3.5.7. -+ -+ -- Santiago Vila Sun, 20 Oct 2002 21:23:02 +0200 -+ -+recode (3.6-6) unstable; urgency=medium -+ -+ * Modified hash.h so that functions hash_lookup, hash_delete, hash_free and -+ hash_insert are prefixed by `recode_' to prevent collisions with php4. -+ Thanks a lot to Steve Langasek and Bruno Haible. Closes: #131080. -+ -+ -- Santiago Vila Fri, 8 Mar 2002 18:44:36 +0100 -+ -+recode (3.6-5) unstable; urgency=low -+ -+ * Fixed a librecode bug in recode_perform_task (Closes: #134899). -+ Thanks to Frederic Gobry and Enrik Berkhan. -+ -+ -- Santiago Vila Thu, 21 Feb 2002 17:37:56 +0100 -+ -+recode (3.6-4) unstable; urgency=low -+ -+ * Removed README from the doc directory, since it contains only -+ installation information (Closes: #123000). -+ * Added support for DEB_BUILD_OPTIONS. -+ -+ -- Santiago Vila Sun, 9 Dec 2001 13:04:18 +0100 -+ -+recode (3.6-3) unstable; urgency=high -+ -+ * UTF-8 should now work. Patch by Bruno Haible. -+ Closes: #94966, #113742, #114850. -+ -+ -- Santiago Vila Sat, 20 Oct 2001 20:01:38 +0200 -+ -+recode (3.6-2) unstable; urgency=low -+ -+ * Updated config.sub/config.guess for parisc (Closes: #95974). -+ * Made debian/rules to preserve LD_LIBRARY_PATH to allow the build -+ by using fakeroot (Closes: #102358). -+ * Registered HTML docs using doc-base. -+ -+ -- Santiago Vila Sun, 1 Jul 2001 13:14:16 +0200 -+ -+recode (3.6-1) unstable; urgency=low -+ -+ * New upstream release. -+ * Updated copyright and control files. -+ * Use >= for the shlibs file, just in case. -+ * Build-Depends-Indep: texi2html, not tetex-bin. -+ * Removed .comment and .note sections from shared library. -+ -+ -- Santiago Vila Sat, 10 Mar 2001 15:03:36 +0100 -+ -+recode (3.5-3) unstable; urgency=medium -+ -+ * Fixed typo in Build-Depends field (Closes: #81211). -+ -+ -- Santiago Vila Thu, 4 Jan 2001 16:18:43 +0100 -+ -+recode (3.5-2) unstable; urgency=low -+ -+ * Standards-Version: 3.1.1. -+ * Moved librecode0 to libs section. -+ * Moved librecode-dev to devel section. -+ * Build-Depends: flex, file. Build-Depends-Indep: tetex-bin. -+ -+ -- Santiago Vila Sat, 30 Dec 2000 19:00:14 +0100 -+ -+recode (3.5-1) unstable; urgency=low -+ -+ * New upstream release. -+ * recode(1) is no longer "undocumented". -+ * Created two new packages: librecode0 and librecode-dev. -+ -+ -- Santiago Vila Fri, 18 Jun 1999 10:44:55 +0200 -+ -+recode (3.4.1-11) unstable; urgency=low -+ -+ * Added HTML docs, in a separate package. -+ -+ -- Santiago Vila Tue, 13 Oct 1998 21:22:43 +0200 -+ -+recode (3.4.1-10) unstable; urgency=low -+ -+ * More detailed copyright file. -+ * Removed debstd dependency. -+ * First libc6 release. -+ * Pristine source. -+ -+ -- Santiago Vila Sun, 9 Nov 1997 18:36:26 +0100 -+ -+recode (3.4.1-9) unstable; urgency=low -+ -+ * Some minor debian/rules changes. -+ * Added MD5 sums. -+ -+ -- Santiago Vila Sun, 23 Feb 1997 17:35:41 +0100 -+ -+recode (3.4.1-8) unstable; urgency=low -+ -+ * Converted to standards 2.1.2.2. -+ * New maintainer. -+ -+ -- Santiago Vila Wed, 29 Jan 1997 00:30:45 +0100 -+ -+recode (3.4.1-3); -+ -+ * Incremented version number (upload to ftp.debian.org crashed). -+ -+ -- Klee Dienes Sat Jan 27 14:58:57 MST 1996 -+ -+recode (3.4.1-2); -+ -+ * Changed to add entry for recode into info directory. -+ -+ -- Klee Dienes Sat Jan 27 14:42:54 MST 1996 -+ -+recode (3.4.1-1); -+ -+ * Initial Release. -+ -+ -- Klee Dienes Thu Jan 25 10:07:24 MST 1996 ---- recode-3.6.orig/m4/libtool.m4 -+++ recode-3.6/m4/libtool.m4 -@@ -1,5 +1,6 @@ --## libtool.m4 - Configure libtool for the target system. -*-Shell-script-*- --## Copyright (C) 1996-1999, 2000 Free Software Foundation, Inc. -+# libtool.m4 - Configure libtool for the host system. -*-Shell-script-*- -+## Copyright 1996, 1997, 1998, 1999, 2000, 2001 -+## Free Software Foundation, Inc. - ## Originally by Gordon Matzigkeit , 1996 - ## - ## This program is free software; you can redistribute it and/or modify -@@ -21,134 +22,3028 @@ - ## configuration script generated by Autoconf, you may include it under - ## the same distribution terms that you use for the rest of that program. - --# serial 40 AC_PROG_LIBTOOL --AC_DEFUN(AC_PROG_LIBTOOL, -+# serial 46 AC_PROG_LIBTOOL -+# Debian $Rev: 50 $ -+ -+AC_DEFUN([AC_PROG_LIBTOOL], - [AC_REQUIRE([AC_LIBTOOL_SETUP])dnl - --# Save cache, so that ltconfig can load it --AC_CACHE_SAVE -+# This can be used to rebuild libtool when needed -+LIBTOOL_DEPS="$ac_aux_dir/ltmain.sh" -+ -+# Always use our own libtool. -+LIBTOOL='$(SHELL) $(top_builddir)/libtool' -+AC_SUBST(LIBTOOL)dnl -+ -+# Prevent multiple expansion -+define([AC_PROG_LIBTOOL], []) -+]) -+ -+AC_DEFUN([AC_LIBTOOL_SETUP], -+[AC_PREREQ(2.13)dnl -+AC_REQUIRE([AC_ENABLE_SHARED])dnl -+AC_REQUIRE([AC_ENABLE_STATIC])dnl -+AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl -+AC_REQUIRE([AC_CANONICAL_HOST])dnl -+AC_REQUIRE([AC_CANONICAL_BUILD])dnl -+AC_REQUIRE([AC_PROG_CC])dnl -+AC_REQUIRE([AC_PROG_LD])dnl -+AC_REQUIRE([AC_PROG_LD_RELOAD_FLAG])dnl -+AC_REQUIRE([AC_PROG_NM])dnl -+AC_REQUIRE([LT_AC_PROG_SED])dnl -+ -+AC_REQUIRE([AC_PROG_LN_S])dnl -+AC_REQUIRE([AC_DEPLIBS_CHECK_METHOD])dnl -+AC_REQUIRE([AC_OBJEXT])dnl -+AC_REQUIRE([AC_EXEEXT])dnl -+dnl -+ -+_LT_AC_PROG_ECHO_BACKSLASH -+# Only perform the check for file, if the check method requires it -+case $deplibs_check_method in -+file_magic*) -+ if test "$file_magic_cmd" = '$MAGIC_CMD'; then -+ AC_PATH_MAGIC -+ fi -+ ;; -+esac -+ -+AC_CHECK_TOOL(RANLIB, ranlib, :) -+AC_CHECK_TOOL(STRIP, strip, :) -+ -+ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN], enable_dlopen=yes, enable_dlopen=no) -+ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], -+enable_win32_dll=yes, enable_win32_dll=no) -+ -+AC_ARG_ENABLE(libtool-lock, -+ [ --disable-libtool-lock avoid locking (might break parallel builds)]) -+test "x$enable_libtool_lock" != xno && enable_libtool_lock=yes -+ -+# Some flags need to be propagated to the compiler or linker for good -+# libtool support. -+case $host in -+*-*-irix6*) -+ # Find out which ABI we are using. -+ echo '[#]line __oline__ "configure"' > conftest.$ac_ext -+ if AC_TRY_EVAL(ac_compile); then -+ case `/usr/bin/file conftest.$ac_objext` in -+ *32-bit*) -+ LD="${LD-ld} -32" -+ ;; -+ *N32*) -+ LD="${LD-ld} -n32" -+ ;; -+ *64-bit*) -+ LD="${LD-ld} -64" -+ ;; -+ esac -+ fi -+ rm -rf conftest* -+ ;; -+ -+*-*-sco3.2v5*) -+ # On SCO OpenServer 5, we need -belf to get full-featured binaries. -+ SAVE_CFLAGS="$CFLAGS" -+ CFLAGS="$CFLAGS -belf" -+ AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, -+ [AC_LANG_SAVE -+ AC_LANG_C -+ AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) -+ AC_LANG_RESTORE]) -+ if test x"$lt_cv_cc_needs_belf" != x"yes"; then -+ # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf -+ CFLAGS="$SAVE_CFLAGS" -+ fi -+ ;; -+ -+ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], -+[*-*-cygwin* | *-*-mingw* | *-*-pw32*) -+ AC_CHECK_TOOL(DLLTOOL, dlltool, false) -+ AC_CHECK_TOOL(AS, as, false) -+ AC_CHECK_TOOL(OBJDUMP, objdump, false) -+ -+ # recent cygwin and mingw systems supply a stub DllMain which the user -+ # can override, but on older systems we have to supply one -+ AC_CACHE_CHECK([if libtool should supply DllMain function], lt_cv_need_dllmain, -+ [AC_TRY_LINK([], -+ [extern int __attribute__((__stdcall__)) DllMain(void*, int, void*); -+ DllMain (0, 0, 0);], -+ [lt_cv_need_dllmain=no],[lt_cv_need_dllmain=yes])]) -+ -+ case $host/$CC in -+ *-*-cygwin*/gcc*-mno-cygwin*|*-*-mingw*) -+ # old mingw systems require "-dll" to link a DLL, while more recent ones -+ # require "-mdll" -+ SAVE_CFLAGS="$CFLAGS" -+ CFLAGS="$CFLAGS -mdll" -+ AC_CACHE_CHECK([how to link DLLs], lt_cv_cc_dll_switch, -+ [AC_TRY_LINK([], [], [lt_cv_cc_dll_switch=-mdll],[lt_cv_cc_dll_switch=-dll])]) -+ CFLAGS="$SAVE_CFLAGS" ;; -+ *-*-cygwin* | *-*-pw32*) -+ # cygwin systems need to pass --dll to the linker, and not link -+ # crt.o which will require a WinMain@16 definition. -+ lt_cv_cc_dll_switch="-Wl,--dll -nostartfiles" ;; -+ esac -+ ;; -+ ]) -+esac -+ -+_LT_AC_LTCONFIG_HACK -+ -+]) -+ -+# AC_LIBTOOL_HEADER_ASSERT -+# ------------------------ -+AC_DEFUN([AC_LIBTOOL_HEADER_ASSERT], -+[AC_CACHE_CHECK([whether $CC supports assert without backlinking], -+ [lt_cv_func_assert_works], -+ [case $host in -+ *-*-solaris*) -+ if test "$GCC" = yes && test "$with_gnu_ld" != yes; then -+ case `$CC --version 2>/dev/null` in -+ [[12]].*) lt_cv_func_assert_works=no ;; -+ *) lt_cv_func_assert_works=yes ;; -+ esac -+ fi -+ ;; -+ esac]) -+ -+if test "x$lt_cv_func_assert_works" = xyes; then -+ AC_CHECK_HEADERS(assert.h) -+fi -+])# AC_LIBTOOL_HEADER_ASSERT -+ -+# _LT_AC_CHECK_DLFCN -+# -------------------- -+AC_DEFUN([_LT_AC_CHECK_DLFCN], -+[AC_CHECK_HEADERS(dlfcn.h) -+])# _LT_AC_CHECK_DLFCN -+ -+# AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE -+# --------------------------------- -+AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], -+[AC_REQUIRE([AC_CANONICAL_HOST]) -+AC_REQUIRE([AC_PROG_NM]) -+AC_REQUIRE([AC_OBJEXT]) -+# Check for command to grab the raw symbol name followed by C symbol from nm. -+AC_MSG_CHECKING([command to parse $NM output]) -+AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe], [dnl -+ -+# These are sane defaults that work on at least a few old systems. -+# [They come from Ultrix. What could be older than Ultrix?!! ;)] -+ -+# Character class describing NM global symbol codes. -+symcode='[[BCDEGRST]]' -+ -+# Regexp to match symbols that can be accessed directly from C. -+sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)' -+ -+# Transform the above into a raw symbol and a C symbol. -+symxfrm='\1 \2\3 \3' -+ -+# Transform an extracted symbol line into a proper C declaration -+lt_cv_global_symbol_to_cdecl="sed -n -e 's/^. .* \(.*\)$/extern char \1;/p'" -+ -+# Transform an extracted symbol line into symbol name and symbol address -+lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" -+ -+# Define system-specific variables. -+case $host_os in -+aix*) -+ symcode='[[BCDT]]' -+ ;; -+cygwin* | mingw* | pw32*) -+ symcode='[[ABCDGISTW]]' -+ ;; -+hpux*) # Its linker distinguishes data from code symbols -+ lt_cv_global_symbol_to_cdecl="sed -n -e 's/^T .* \(.*\)$/extern char \1();/p' -e 's/^$symcode* .* \(.*\)$/extern char \1;/p'" -+ lt_cv_global_symbol_to_c_name_address="sed -n -e 's/^: \([[^ ]]*\) $/ {\\\"\1\\\", (lt_ptr) 0},/p' -e 's/^$symcode* \([[^ ]]*\) \([[^ ]]*\)$/ {\"\2\", (lt_ptr) \&\2},/p'" -+ ;; -+irix* | nonstopux*) -+ symcode='[[BCDEGRST]]' -+ ;; -+osf*) -+ symcode='[[BCDEGQRST]]' -+ ;; -+solaris* | sysv5*) -+ symcode='[[BDT]]' -+ ;; -+sysv4) -+ symcode='[[DFNSTU]]' -+ ;; -+esac -+ -+# Handle CRLF in mingw tool chain -+opt_cr= -+case $host_os in -+mingw*) -+ opt_cr=`echo 'x\{0,1\}' | tr x '\015'` # option cr in regexp -+ ;; -+esac -+ -+# If we're using GNU nm, then use its standard symbol codes. -+if $NM -V 2>&1 | egrep '(GNU|with BFD)' > /dev/null; then -+ symcode='[[ABCDGISTW]]' -+fi -+ -+# Try without a prefix undercore, then with it. -+for ac_symprfx in "" "_"; do -+ -+ # Write the raw and C identifiers. -+lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*\($ac_symprfx\)$sympat$opt_cr$/$symxfrm/p'" -+ -+ # Check to see that the pipe works correctly. -+ pipe_works=no -+ rm -f conftest* -+ cat > conftest.$ac_ext < $nlist) && test -s "$nlist"; then -+ # Try sorting and uniquifying the output. -+ if sort "$nlist" | uniq > "$nlist"T; then -+ mv -f "$nlist"T "$nlist" -+ else -+ rm -f "$nlist"T -+ fi -+ -+ # Make sure that we snagged all the symbols we need. -+ if egrep ' nm_test_var$' "$nlist" >/dev/null; then -+ if egrep ' nm_test_func$' "$nlist" >/dev/null; then -+ cat < conftest.$ac_ext -+#ifdef __cplusplus -+extern "C" { -+#endif -+ -+EOF -+ # Now generate the symbol file. -+ eval "$lt_cv_global_symbol_to_cdecl"' < "$nlist" >> conftest.$ac_ext' -+ -+ cat <> conftest.$ac_ext -+#if defined (__STDC__) && __STDC__ -+# define lt_ptr void * -+#else -+# define lt_ptr char * -+# define const -+#endif -+ -+/* The mapping between symbol names and symbols. */ -+const struct { -+ const char *name; -+ lt_ptr address; -+} -+lt_preloaded_symbols[[]] = -+{ -+EOF -+ sed "s/^$symcode$symcode* \(.*\) \(.*\)$/ {\"\2\", (lt_ptr) \&\2},/" < "$nlist" >> conftest.$ac_ext -+ cat <<\EOF >> conftest.$ac_ext -+ {0, (lt_ptr) 0} -+}; -+ -+#ifdef __cplusplus -+} -+#endif -+EOF -+ # Now try linking the two files. -+ mv conftest.$ac_objext conftstm.$ac_objext -+ save_LIBS="$LIBS" -+ save_CFLAGS="$CFLAGS" -+ LIBS="conftstm.$ac_objext" -+ CFLAGS="$CFLAGS$no_builtin_flag" -+ if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then -+ pipe_works=yes -+ fi -+ LIBS="$save_LIBS" -+ CFLAGS="$save_CFLAGS" -+ else -+ echo "cannot find nm_test_func in $nlist" >&AC_FD_CC -+ fi -+ else -+ echo "cannot find nm_test_var in $nlist" >&AC_FD_CC -+ fi -+ else -+ echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AC_FD_CC -+ fi -+ else -+ echo "$progname: failed program was:" >&AC_FD_CC -+ cat conftest.$ac_ext >&5 -+ fi -+ rm -f conftest* conftst* -+ -+ # Do not use the global_symbol_pipe unless it works. -+ if test "$pipe_works" = yes; then -+ break -+ else -+ lt_cv_sys_global_symbol_pipe= -+ fi -+done -+]) -+global_symbol_pipe="$lt_cv_sys_global_symbol_pipe" -+if test -z "$lt_cv_sys_global_symbol_pipe"; then -+ global_symbol_to_cdecl= -+ global_symbol_to_c_name_address= -+else -+ global_symbol_to_cdecl="$lt_cv_global_symbol_to_cdecl" -+ global_symbol_to_c_name_address="$lt_cv_global_symbol_to_c_name_address" -+fi -+if test -z "$global_symbol_pipe$global_symbol_to_cdec$global_symbol_to_c_name_address"; -+then -+ AC_MSG_RESULT(failed) -+else -+ AC_MSG_RESULT(ok) -+fi -+]) # AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE -+ -+# _LT_AC_LIBTOOL_SYS_PATH_SEPARATOR -+# --------------------------------- -+AC_DEFUN([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR], -+[# Find the correct PATH separator. Usually this is `:', but -+# DJGPP uses `;' like DOS. -+if test "X${PATH_SEPARATOR+set}" != Xset; then -+ UNAME=${UNAME-`uname 2>/dev/null`} -+ case X$UNAME in -+ *-DOS) lt_cv_sys_path_separator=';' ;; -+ *) lt_cv_sys_path_separator=':' ;; -+ esac -+ PATH_SEPARATOR=$lt_cv_sys_path_separator -+fi -+])# _LT_AC_LIBTOOL_SYS_PATH_SEPARATOR -+ -+# _LT_AC_PROG_ECHO_BACKSLASH -+# -------------------------- -+# Add some code to the start of the generated configure script which -+# will find an echo command which doesn't interpret backslashes. -+AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH], -+[ifdef([AC_DIVERSION_NOTICE], [AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)], -+ [AC_DIVERT_PUSH(NOTICE)]) -+_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR -+ -+# Check that we are running under the correct shell. -+SHELL=${CONFIG_SHELL-/bin/sh} -+ -+case X$ECHO in -+X*--fallback-echo) -+ # Remove one level of quotation (which was required for Make). -+ ECHO=`echo "$ECHO" | sed 's,\\\\\[$]\\[$]0,'[$]0','` -+ ;; -+esac -+ -+echo=${ECHO-echo} -+if test "X[$]1" = X--no-reexec; then -+ # Discard the --no-reexec flag, and continue. -+ shift -+elif test "X[$]1" = X--fallback-echo; then -+ # Avoid inline document here, it may be left over -+ : -+elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then -+ # Yippee, $echo works! -+ : -+else -+ # Restart under the correct shell. -+ exec $SHELL "[$]0" --no-reexec ${1+"[$]@"} -+fi -+ -+if test "X[$]1" = X--fallback-echo; then -+ # used as fallback echo -+ shift -+ cat </dev/null && -+ echo_test_string="`eval $cmd`" && -+ (test "X$echo_test_string" = "X$echo_test_string") 2>/dev/null -+ then -+ break -+ fi -+ done -+fi -+ -+if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && -+ echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && -+ test "X$echo_testing_string" = "X$echo_test_string"; then -+ : -+else -+ # The Solaris, AIX, and Digital Unix default echo programs unquote -+ # backslashes. This makes it impossible to quote backslashes using -+ # echo "$something" | sed 's/\\/\\\\/g' -+ # -+ # So, first we look for a working echo in the user's PATH. -+ -+ IFS="${IFS= }"; save_ifs="$IFS"; IFS=$PATH_SEPARATOR -+ for dir in $PATH /usr/ucb; do -+ if (test -f $dir/echo || test -f $dir/echo$ac_exeext) && -+ test "X`($dir/echo '\t') 2>/dev/null`" = 'X\t' && -+ echo_testing_string=`($dir/echo "$echo_test_string") 2>/dev/null` && -+ test "X$echo_testing_string" = "X$echo_test_string"; then -+ echo="$dir/echo" -+ break -+ fi -+ done -+ IFS="$save_ifs" -+ -+ if test "X$echo" = Xecho; then -+ # We didn't find a better echo, so look for alternatives. -+ if test "X`(print -r '\t') 2>/dev/null`" = 'X\t' && -+ echo_testing_string=`(print -r "$echo_test_string") 2>/dev/null` && -+ test "X$echo_testing_string" = "X$echo_test_string"; then -+ # This shell has a builtin print -r that does the trick. -+ echo='print -r' -+ elif (test -f /bin/ksh || test -f /bin/ksh$ac_exeext) && -+ test "X$CONFIG_SHELL" != X/bin/ksh; then -+ # If we have ksh, try running configure again with it. -+ ORIGINAL_CONFIG_SHELL=${CONFIG_SHELL-/bin/sh} -+ export ORIGINAL_CONFIG_SHELL -+ CONFIG_SHELL=/bin/ksh -+ export CONFIG_SHELL -+ exec $CONFIG_SHELL "[$]0" --no-reexec ${1+"[$]@"} -+ else -+ # Try using printf. -+ echo='printf %s\n' -+ if test "X`($echo '\t') 2>/dev/null`" = 'X\t' && -+ echo_testing_string=`($echo "$echo_test_string") 2>/dev/null` && -+ test "X$echo_testing_string" = "X$echo_test_string"; then -+ # Cool, printf works -+ : -+ elif echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && -+ test "X$echo_testing_string" = 'X\t' && -+ echo_testing_string=`($ORIGINAL_CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && -+ test "X$echo_testing_string" = "X$echo_test_string"; then -+ CONFIG_SHELL=$ORIGINAL_CONFIG_SHELL -+ export CONFIG_SHELL -+ SHELL="$CONFIG_SHELL" -+ export SHELL -+ echo="$CONFIG_SHELL [$]0 --fallback-echo" -+ elif echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo '\t') 2>/dev/null` && -+ test "X$echo_testing_string" = 'X\t' && -+ echo_testing_string=`($CONFIG_SHELL "[$]0" --fallback-echo "$echo_test_string") 2>/dev/null` && -+ test "X$echo_testing_string" = "X$echo_test_string"; then -+ echo="$CONFIG_SHELL [$]0 --fallback-echo" -+ else -+ # maybe with a smaller string... -+ prev=: -+ -+ for cmd in 'echo test' 'sed 2q "[$]0"' 'sed 10q "[$]0"' 'sed 20q "[$]0"' 'sed 50q "[$]0"'; do -+ if (test "X$echo_test_string" = "X`eval $cmd`") 2>/dev/null -+ then -+ break -+ fi -+ prev="$cmd" -+ done -+ -+ if test "$prev" != 'sed 50q "[$]0"'; then -+ echo_test_string=`eval $prev` -+ export echo_test_string -+ exec ${ORIGINAL_CONFIG_SHELL-${CONFIG_SHELL-/bin/sh}} "[$]0" ${1+"[$]@"} -+ else -+ # Oops. We lost completely, so just stick with echo. -+ echo=echo -+ fi -+ fi -+ fi -+ fi -+fi -+fi -+ -+# Copy echo and quote the copy suitably for passing to libtool from -+# the Makefile, instead of quoting the original, which is used later. -+ECHO=$echo -+if test "X$ECHO" = "X$CONFIG_SHELL [$]0 --fallback-echo"; then -+ ECHO="$CONFIG_SHELL \\\$\[$]0 --fallback-echo" -+fi -+ -+AC_SUBST(ECHO) -+AC_DIVERT_POP -+])# _LT_AC_PROG_ECHO_BACKSLASH -+ -+# _LT_AC_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE, -+# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING) -+# ------------------------------------------------------------------ -+AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF], -+[if test "$cross_compiling" = yes; then : -+ [$4] -+else -+ AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl -+ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 -+ lt_status=$lt_dlunknown -+ cat > conftest.$ac_ext < -+#endif -+ -+#include -+ -+#ifdef RTLD_GLOBAL -+# define LT_DLGLOBAL RTLD_GLOBAL -+#else -+# ifdef DL_GLOBAL -+# define LT_DLGLOBAL DL_GLOBAL -+# else -+# define LT_DLGLOBAL 0 -+# endif -+#endif -+ -+/* We may have to define LT_DLLAZY_OR_NOW in the command line if we -+ find out it does not work in some platform. */ -+#ifndef LT_DLLAZY_OR_NOW -+# ifdef RTLD_LAZY -+# define LT_DLLAZY_OR_NOW RTLD_LAZY -+# else -+# ifdef DL_LAZY -+# define LT_DLLAZY_OR_NOW DL_LAZY -+# else -+# ifdef RTLD_NOW -+# define LT_DLLAZY_OR_NOW RTLD_NOW -+# else -+# ifdef DL_NOW -+# define LT_DLLAZY_OR_NOW DL_NOW -+# else -+# define LT_DLLAZY_OR_NOW 0 -+# endif -+# endif -+# endif -+# endif -+#endif -+ -+#ifdef __cplusplus -+extern "C" void exit (int); -+#endif -+ -+void fnord() { int i=42;} -+int main () -+{ -+ void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); -+ int status = $lt_dlunknown; -+ -+ if (self) -+ { -+ if (dlsym (self,"fnord")) status = $lt_dlno_uscore; -+ else if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; -+ /* dlclose (self); */ -+ } -+ -+ exit (status); -+}] -+EOF -+ if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} 2>/dev/null; then -+ (./conftest; exit; ) 2>/dev/null -+ lt_status=$? -+ case x$lt_status in -+ x$lt_dlno_uscore) $1 ;; -+ x$lt_dlneed_uscore) $2 ;; -+ x$lt_unknown|x*) $3 ;; -+ esac -+ else : -+ # compilation failed -+ $3 -+ fi -+fi -+rm -fr conftest* -+])# _LT_AC_TRY_DLOPEN_SELF -+ -+# AC_LIBTOOL_DLOPEN_SELF -+# ------------------- -+AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], -+[if test "x$enable_dlopen" != xyes; then -+ enable_dlopen=unknown -+ enable_dlopen_self=unknown -+ enable_dlopen_self_static=unknown -+else -+ lt_cv_dlopen=no -+ lt_cv_dlopen_libs= -+ -+ case $host_os in -+ beos*) -+ lt_cv_dlopen="load_add_on" -+ lt_cv_dlopen_libs= -+ lt_cv_dlopen_self=yes -+ ;; -+ -+ cygwin* | mingw* | pw32*) -+ lt_cv_dlopen="LoadLibrary" -+ lt_cv_dlopen_libs= -+ ;; -+ -+ *) -+ AC_CHECK_FUNC([shl_load], -+ [lt_cv_dlopen="shl_load"], -+ [AC_CHECK_LIB([dld], [shl_load], -+ [lt_cv_dlopen="shl_load" lt_cv_dlopen_libs="-dld"], -+ [AC_CHECK_FUNC([dlopen], -+ [lt_cv_dlopen="dlopen"], -+ [AC_CHECK_LIB([dl], [dlopen], -+ [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-ldl"], -+ [AC_CHECK_LIB([svld], [dlopen], -+ [lt_cv_dlopen="dlopen" lt_cv_dlopen_libs="-lsvld"], -+ [AC_CHECK_LIB([dld], [dld_link], -+ [lt_cv_dlopen="dld_link" lt_cv_dlopen_libs="-dld"]) -+ ]) -+ ]) -+ ]) -+ ]) -+ ]) -+ ;; -+ esac -+ -+ if test "x$lt_cv_dlopen" != xno; then -+ enable_dlopen=yes -+ else -+ enable_dlopen=no -+ fi -+ -+ case $lt_cv_dlopen in -+ dlopen) -+ save_CPPFLAGS="$CPPFLAGS" -+ AC_REQUIRE([_LT_AC_CHECK_DLFCN])dnl -+ test "x$ac_cv_header_dlfcn_h" = xyes && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" -+ -+ save_LDFLAGS="$LDFLAGS" -+ eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" -+ -+ save_LIBS="$LIBS" -+ LIBS="$lt_cv_dlopen_libs $LIBS" -+ -+ AC_CACHE_CHECK([whether a program can dlopen itself], -+ lt_cv_dlopen_self, [dnl -+ _LT_AC_TRY_DLOPEN_SELF( -+ lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes, -+ lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross) -+ ]) -+ -+ if test "x$lt_cv_dlopen_self" = xyes; then -+ LDFLAGS="$LDFLAGS $link_static_flag" -+ AC_CACHE_CHECK([whether a statically linked program can dlopen itself], -+ lt_cv_dlopen_self_static, [dnl -+ _LT_AC_TRY_DLOPEN_SELF( -+ lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes, -+ lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross) -+ ]) -+ fi -+ -+ CPPFLAGS="$save_CPPFLAGS" -+ LDFLAGS="$save_LDFLAGS" -+ LIBS="$save_LIBS" -+ ;; -+ esac -+ -+ case $lt_cv_dlopen_self in -+ yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; -+ *) enable_dlopen_self=unknown ;; -+ esac -+ -+ case $lt_cv_dlopen_self_static in -+ yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; -+ *) enable_dlopen_self_static=unknown ;; -+ esac -+fi -+])# AC_LIBTOOL_DLOPEN_SELF -+ -+AC_DEFUN([_LT_AC_LTCONFIG_HACK], -+[AC_REQUIRE([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])dnl -+# Sed substitution that helps us do robust quoting. It backslashifies -+# metacharacters that are still active within double-quoted strings. -+Xsed='sed -e s/^X//' -+sed_quote_subst='s/\([[\\"\\`$\\\\]]\)/\\\1/g' -+ -+# Same as above, but do not quote variable references. -+double_quote_subst='s/\([[\\"\\`\\\\]]\)/\\\1/g' -+ -+# Sed substitution to delay expansion of an escaped shell variable in a -+# double_quote_subst'ed string. -+delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' -+ -+# Constants: -+rm="rm -f" -+ -+# Global variables: -+default_ofile=libtool -+can_build_shared=yes -+ -+# All known linkers require a `.a' archive for static linking (except M$VC, -+# which needs '.lib'). -+libext=a -+ltmain="$ac_aux_dir/ltmain.sh" -+ofile="$default_ofile" -+with_gnu_ld="$lt_cv_prog_gnu_ld" -+need_locks="$enable_libtool_lock" -+ -+old_CC="$CC" -+old_CFLAGS="$CFLAGS" -+ -+# Set sane defaults for various variables -+test -z "$AR" && AR=ar -+test -z "$AR_FLAGS" && AR_FLAGS=cru -+test -z "$AS" && AS=as -+test -z "$CC" && CC=cc -+test -z "$DLLTOOL" && DLLTOOL=dlltool -+test -z "$LD" && LD=ld -+test -z "$LN_S" && LN_S="ln -s" -+test -z "$MAGIC_CMD" && MAGIC_CMD=file -+test -z "$NM" && NM=nm -+test -z "$OBJDUMP" && OBJDUMP=objdump -+test -z "$RANLIB" && RANLIB=: -+test -z "$STRIP" && STRIP=: -+test -z "$ac_objext" && ac_objext=o -+ -+if test x"$host" != x"$build"; then -+ ac_tool_prefix=${host_alias}- -+else -+ ac_tool_prefix= -+fi -+ -+# Transform linux* to *-*-linux-gnu*, to support old configure scripts. -+case $host_os in -+linux-gnu*) ;; -+linux*) host=`echo $host | sed 's/^\(.*-.*-linux\)\(.*\)$/\1-gnu\2/'` -+esac -+ -+case $host_os in -+aix3*) -+ # AIX sometimes has problems with the GCC collect2 program. For some -+ # reason, if we set the COLLECT_NAMES environment variable, the problems -+ # vanish in a puff of smoke. -+ if test "X${COLLECT_NAMES+set}" != Xset; then -+ COLLECT_NAMES= -+ export COLLECT_NAMES -+ fi -+ ;; -+esac -+ -+# Determine commands to create old-style static archives. -+old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs$old_deplibs' -+old_postinstall_cmds='chmod 644 $oldlib' -+old_postuninstall_cmds= -+ -+if test -n "$RANLIB"; then -+ case $host_os in -+ openbsd*) -+ old_postinstall_cmds="\$RANLIB -t \$oldlib~$old_postinstall_cmds" -+ ;; -+ *) -+ old_postinstall_cmds="\$RANLIB \$oldlib~$old_postinstall_cmds" -+ ;; -+ esac -+ old_archive_cmds="$old_archive_cmds~\$RANLIB \$oldlib" -+fi -+ -+# Allow CC to be a program name with arguments. -+set dummy $CC -+compiler="[$]2" -+ -+## FIXME: this should be a separate macro -+## -+AC_MSG_CHECKING([for objdir]) -+rm -f .libs 2>/dev/null -+mkdir .libs 2>/dev/null -+if test -d .libs; then -+ objdir=.libs -+else -+ # MS-DOS does not allow filenames that begin with a dot. -+ objdir=_libs -+fi -+rmdir .libs 2>/dev/null -+AC_MSG_RESULT($objdir) -+## -+## END FIXME -+ -+ -+## FIXME: this should be a separate macro -+## -+AC_ARG_WITH(pic, -+[ --with-pic try to use only PIC/non-PIC objects [default=use both]], -+pic_mode="$withval", pic_mode=default) -+test -z "$pic_mode" && pic_mode=default -+ -+# We assume here that the value for lt_cv_prog_cc_pic will not be cached -+# in isolation, and that seeing it set (from the cache) indicates that -+# the associated values are set (in the cache) correctly too. -+AC_MSG_CHECKING([for $compiler option to produce PIC]) -+AC_CACHE_VAL(lt_cv_prog_cc_pic, -+[ lt_cv_prog_cc_pic= -+ lt_cv_prog_cc_shlib= -+ lt_cv_prog_cc_wl= -+ lt_cv_prog_cc_static= -+ lt_cv_prog_cc_no_builtin= -+ lt_cv_prog_cc_can_build_shared=$can_build_shared -+ -+ if test "$GCC" = yes; then -+ lt_cv_prog_cc_wl='-Wl,' -+ lt_cv_prog_cc_static='-static' -+ -+ case $host_os in -+ aix*) -+ # Below there is a dirty hack to force normal static linking with -ldl -+ # The problem is because libdl dynamically linked with both libc and -+ # libC (AIX C++ library), which obviously doesn't included in libraries -+ # list by gcc. This cause undefined symbols with -static flags. -+ # This hack allows C programs to be linked with "-static -ldl", but -+ # not sure about C++ programs. -+ lt_cv_prog_cc_static="$lt_cv_prog_cc_static ${lt_cv_prog_cc_wl}-lC" -+ ;; -+ amigaos*) -+ # FIXME: we need at least 68020 code to build shared libraries, but -+ # adding the `-m68020' flag to GCC prevents building anything better, -+ # like `-m68040'. -+ lt_cv_prog_cc_pic='-m68020 -resident32 -malways-restore-a4' -+ ;; -+ beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) -+ # PIC is the default for these OSes. -+ ;; -+ darwin* | rhapsody*) -+ # PIC is the default on this platform -+ # Common symbols not allowed in MH_DYLIB files -+ lt_cv_prog_cc_pic='-fno-common' -+ ;; -+ cygwin* | mingw* | pw32* | os2*) -+ # This hack is so that the source file can tell whether it is being -+ # built for inclusion in a dll (and should export symbols for example). -+ lt_cv_prog_cc_pic='-DDLL_EXPORT' -+ ;; -+ sysv4*MP*) -+ if test -d /usr/nec; then -+ lt_cv_prog_cc_pic=-Kconform_pic -+ fi -+ ;; -+ *) -+ lt_cv_prog_cc_pic='-fPIC' -+ ;; -+ esac -+ else -+ # PORTME Check for PIC flags for the system compiler. -+ case $host_os in -+ aix3* | aix4* | aix5*) -+ lt_cv_prog_cc_wl='-Wl,' -+ # All AIX code is PIC. -+ if test "$host_cpu" = ia64; then -+ # AIX 5 now supports IA64 processor -+ lt_cv_prog_cc_static='-Bstatic' -+ else -+ lt_cv_prog_cc_static='-bnso -bI:/lib/syscalls.exp' -+ fi -+ ;; -+ -+ hpux9* | hpux10* | hpux11*) -+ # Is there a better lt_cv_prog_cc_static that works with the bundled CC? -+ lt_cv_prog_cc_wl='-Wl,' -+ lt_cv_prog_cc_static="${lt_cv_prog_cc_wl}-a ${lt_cv_prog_cc_wl}archive" -+ lt_cv_prog_cc_pic='+Z' -+ ;; -+ -+ irix5* | irix6* | nonstopux*) -+ lt_cv_prog_cc_wl='-Wl,' -+ lt_cv_prog_cc_static='-non_shared' -+ # PIC (with -KPIC) is the default. -+ ;; -+ -+ cygwin* | mingw* | pw32* | os2*) -+ # This hack is so that the source file can tell whether it is being -+ # built for inclusion in a dll (and should export symbols for example). -+ lt_cv_prog_cc_pic='-DDLL_EXPORT' -+ ;; -+ -+ newsos6) -+ lt_cv_prog_cc_pic='-KPIC' -+ lt_cv_prog_cc_static='-Bstatic' -+ ;; -+ -+ osf3* | osf4* | osf5*) -+ # All OSF/1 code is PIC. -+ lt_cv_prog_cc_wl='-Wl,' -+ lt_cv_prog_cc_static='-non_shared' -+ ;; -+ -+ sco3.2v5*) -+ lt_cv_prog_cc_pic='-Kpic' -+ lt_cv_prog_cc_static='-dn' -+ lt_cv_prog_cc_shlib='-belf' -+ ;; -+ -+ solaris*) -+ lt_cv_prog_cc_pic='-KPIC' -+ lt_cv_prog_cc_static='-Bstatic' -+ lt_cv_prog_cc_wl='-Wl,' -+ ;; -+ -+ sunos4*) -+ lt_cv_prog_cc_pic='-PIC' -+ lt_cv_prog_cc_static='-Bstatic' -+ lt_cv_prog_cc_wl='-Qoption ld ' -+ ;; -+ -+ sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) -+ lt_cv_prog_cc_pic='-KPIC' -+ lt_cv_prog_cc_static='-Bstatic' -+ lt_cv_prog_cc_wl='-Wl,' -+ ;; -+ -+ uts4*) -+ lt_cv_prog_cc_pic='-pic' -+ lt_cv_prog_cc_static='-Bstatic' -+ ;; -+ -+ sysv4*MP*) -+ if test -d /usr/nec ;then -+ lt_cv_prog_cc_pic='-Kconform_pic' -+ lt_cv_prog_cc_static='-Bstatic' -+ fi -+ ;; -+ -+ *) -+ lt_cv_prog_cc_can_build_shared=no -+ ;; -+ esac -+ fi -+]) -+if test -z "$lt_cv_prog_cc_pic"; then -+ AC_MSG_RESULT([none]) -+else -+ AC_MSG_RESULT([$lt_cv_prog_cc_pic]) -+ -+ # Check to make sure the pic_flag actually works. -+ AC_MSG_CHECKING([if $compiler PIC flag $lt_cv_prog_cc_pic works]) -+ AC_CACHE_VAL(lt_cv_prog_cc_pic_works, [dnl -+ save_CFLAGS="$CFLAGS" -+ CFLAGS="$CFLAGS $lt_cv_prog_cc_pic -DPIC" -+ AC_TRY_COMPILE([], [], [dnl -+ case $host_os in -+ hpux9* | hpux10* | hpux11*) -+ # On HP-UX, both CC and GCC only warn that PIC is supported... then -+ # they create non-PIC objects. So, if there were any warnings, we -+ # assume that PIC is not supported. -+ if test -s conftest.err; then -+ lt_cv_prog_cc_pic_works=no -+ else -+ lt_cv_prog_cc_pic_works=yes -+ fi -+ ;; -+ *) -+ lt_cv_prog_cc_pic_works=yes -+ ;; -+ esac -+ ], [dnl -+ lt_cv_prog_cc_pic_works=no -+ ]) -+ CFLAGS="$save_CFLAGS" -+ ]) -+ -+ if test "X$lt_cv_prog_cc_pic_works" = Xno; then -+ lt_cv_prog_cc_pic= -+ lt_cv_prog_cc_can_build_shared=no -+ else -+ lt_cv_prog_cc_pic=" $lt_cv_prog_cc_pic" -+ fi -+ -+ AC_MSG_RESULT([$lt_cv_prog_cc_pic_works]) -+fi -+## -+## END FIXME -+ -+# Check for any special shared library compilation flags. -+if test -n "$lt_cv_prog_cc_shlib"; then -+ AC_MSG_WARN([\`$CC' requires \`$lt_cv_prog_cc_shlib' to build shared libraries]) -+ if echo "$old_CC $old_CFLAGS " | egrep -e "[[ ]]$lt_cv_prog_cc_shlib[[ ]]" >/dev/null; then : -+ else -+ AC_MSG_WARN([add \`$lt_cv_prog_cc_shlib' to the CC or CFLAGS env variable and reconfigure]) -+ lt_cv_prog_cc_can_build_shared=no -+ fi -+fi -+ -+## FIXME: this should be a separate macro -+## -+AC_MSG_CHECKING([if $compiler static flag $lt_cv_prog_cc_static works]) -+AC_CACHE_VAL([lt_cv_prog_cc_static_works], [dnl -+ lt_cv_prog_cc_static_works=no -+ save_LDFLAGS="$LDFLAGS" -+ LDFLAGS="$LDFLAGS $lt_cv_prog_cc_static" -+ AC_TRY_LINK([], [], [lt_cv_prog_cc_static_works=yes]) -+ LDFLAGS="$save_LDFLAGS" -+]) -+ -+# Belt *and* braces to stop my trousers falling down: -+test "X$lt_cv_prog_cc_static_works" = Xno && lt_cv_prog_cc_static= -+AC_MSG_RESULT([$lt_cv_prog_cc_static_works]) -+ -+pic_flag="$lt_cv_prog_cc_pic" -+special_shlib_compile_flags="$lt_cv_prog_cc_shlib" -+wl="$lt_cv_prog_cc_wl" -+link_static_flag="$lt_cv_prog_cc_static" -+no_builtin_flag="$lt_cv_prog_cc_no_builtin" -+can_build_shared="$lt_cv_prog_cc_can_build_shared" -+## -+## END FIXME -+ -+ -+## FIXME: this should be a separate macro -+## -+# Check to see if options -o and -c are simultaneously supported by compiler -+AC_MSG_CHECKING([if $compiler supports -c -o file.$ac_objext]) -+AC_CACHE_VAL([lt_cv_compiler_c_o], [ -+$rm -r conftest 2>/dev/null -+mkdir conftest -+cd conftest -+echo "int some_variable = 0;" > conftest.$ac_ext -+mkdir out -+# According to Tom Tromey, Ian Lance Taylor reported there are C compilers -+# that will create temporary files in the current directory regardless of -+# the output directory. Thus, making CWD read-only will cause this test -+# to fail, enabling locking or at least warning the user not to do parallel -+# builds. -+chmod -w . -+save_CFLAGS="$CFLAGS" -+CFLAGS="$CFLAGS -o out/conftest2.$ac_objext" -+compiler_c_o=no -+if { (eval echo configure:__oline__: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then -+ # The compiler can only warn and ignore the option if not recognized -+ # So say no if there are warnings -+ if test -s out/conftest.err; then -+ lt_cv_compiler_c_o=no -+ else -+ lt_cv_compiler_c_o=yes -+ fi -+else -+ # Append any errors to the config.log. -+ cat out/conftest.err 1>&AC_FD_CC -+ lt_cv_compiler_c_o=no -+fi -+CFLAGS="$save_CFLAGS" -+chmod u+w . -+$rm conftest* out/* -+rmdir out -+cd .. -+rmdir conftest -+$rm -r conftest 2>/dev/null -+]) -+compiler_c_o=$lt_cv_compiler_c_o -+AC_MSG_RESULT([$compiler_c_o]) -+ -+if test x"$compiler_c_o" = x"yes"; then -+ # Check to see if we can write to a .lo -+ AC_MSG_CHECKING([if $compiler supports -c -o file.lo]) -+ AC_CACHE_VAL([lt_cv_compiler_o_lo], [ -+ lt_cv_compiler_o_lo=no -+ save_CFLAGS="$CFLAGS" -+ CFLAGS="$CFLAGS -c -o conftest.lo" -+ save_objext="$ac_objext" -+ ac_objext=lo -+ AC_TRY_COMPILE([], [int some_variable = 0;], [dnl -+ # The compiler can only warn and ignore the option if not recognized -+ # So say no if there are warnings -+ if test -s conftest.err; then -+ lt_cv_compiler_o_lo=no -+ else -+ lt_cv_compiler_o_lo=yes -+ fi -+ ]) -+ ac_objext="$save_objext" -+ CFLAGS="$save_CFLAGS" -+ ]) -+ compiler_o_lo=$lt_cv_compiler_o_lo -+ AC_MSG_RESULT([$compiler_o_lo]) -+else -+ compiler_o_lo=no -+fi -+## -+## END FIXME -+ -+## FIXME: this should be a separate macro -+## -+# Check to see if we can do hard links to lock some files if needed -+hard_links="nottested" -+if test "$compiler_c_o" = no && test "$need_locks" != no; then -+ # do not overwrite the value of need_locks provided by the user -+ AC_MSG_CHECKING([if we can lock with hard links]) -+ hard_links=yes -+ $rm conftest* -+ ln conftest.a conftest.b 2>/dev/null && hard_links=no -+ touch conftest.a -+ ln conftest.a conftest.b 2>&5 || hard_links=no -+ ln conftest.a conftest.b 2>/dev/null && hard_links=no -+ AC_MSG_RESULT([$hard_links]) -+ if test "$hard_links" = no; then -+ AC_MSG_WARN([\`$CC' does not support \`-c -o', so \`make -j' may be unsafe]) -+ need_locks=warn -+ fi -+else -+ need_locks=no -+fi -+## -+## END FIXME -+ -+## FIXME: this should be a separate macro -+## -+if test "$GCC" = yes; then -+ # Check to see if options -fno-rtti -fno-exceptions are supported by compiler -+ AC_MSG_CHECKING([if $compiler supports -fno-rtti -fno-exceptions]) -+ echo "int some_variable = 0;" > conftest.$ac_ext -+ save_CFLAGS="$CFLAGS" -+ CFLAGS="$CFLAGS -fno-rtti -fno-exceptions -c conftest.$ac_ext" -+ compiler_rtti_exceptions=no -+ AC_TRY_COMPILE([], [int some_variable = 0;], [dnl -+ # The compiler can only warn and ignore the option if not recognized -+ # So say no if there are warnings -+ if test -s conftest.err; then -+ compiler_rtti_exceptions=no -+ else -+ compiler_rtti_exceptions=yes -+ fi -+ ]) -+ CFLAGS="$save_CFLAGS" -+ AC_MSG_RESULT([$compiler_rtti_exceptions]) -+ -+ if test "$compiler_rtti_exceptions" = "yes"; then -+ no_builtin_flag=' -fno-builtin -fno-rtti -fno-exceptions' -+ else -+ no_builtin_flag=' -fno-builtin' -+ fi -+fi -+## -+## END FIXME -+ -+## FIXME: this should be a separate macro -+## -+# See if the linker supports building shared libraries. -+AC_MSG_CHECKING([whether the linker ($LD) supports shared libraries]) -+ -+allow_undefined_flag= -+no_undefined_flag= -+need_lib_prefix=unknown -+need_version=unknown -+# when you set need_version to no, make sure it does not cause -set_version -+# flags to be left without arguments -+archive_cmds= -+archive_expsym_cmds= -+old_archive_from_new_cmds= -+old_archive_from_expsyms_cmds= -+export_dynamic_flag_spec= -+whole_archive_flag_spec= -+thread_safe_flag_spec= -+hardcode_into_libs=no -+hardcode_libdir_flag_spec= -+hardcode_libdir_separator= -+hardcode_direct=no -+hardcode_minus_L=no -+hardcode_shlibpath_var=unsupported -+runpath_var= -+link_all_deplibs=unknown -+always_export_symbols=no -+export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | sed '\''s/.* //'\'' | sort | uniq > $export_symbols' -+# include_expsyms should be a list of space-separated symbols to be *always* -+# included in the symbol list -+include_expsyms= -+# exclude_expsyms can be an egrep regular expression of symbols to exclude -+# it will be wrapped by ` (' and `)$', so one must not match beginning or -+# end of line. Example: `a|bc|.*d.*' will exclude the symbols `a' and `bc', -+# as well as any symbol that contains `d'. -+exclude_expsyms="_GLOBAL_OFFSET_TABLE_" -+# Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out -+# platforms (ab)use it in PIC code, but their linkers get confused if -+# the symbol is explicitly referenced. Since portable code cannot -+# rely on this symbol name, it's probably fine to never include it in -+# preloaded symbol tables. -+extract_expsyms_cmds= -+ -+case $host_os in -+cygwin* | mingw* | pw32*) -+ # FIXME: the MSVC++ port hasn't been tested in a loooong time -+ # When not using gcc, we currently assume that we are using -+ # Microsoft Visual C++. -+ if test "$GCC" != yes; then -+ with_gnu_ld=no -+ fi -+ ;; -+openbsd*) -+ with_gnu_ld=no -+ ;; -+esac -+ -+ld_shlibs=yes -+if test "$with_gnu_ld" = yes; then -+ # If archive_cmds runs LD, not CC, wlarc should be empty -+ wlarc='${wl}' -+ -+ # See if GNU ld supports shared libraries. -+ case $host_os in -+ aix3* | aix4* | aix5*) -+ # On AIX, the GNU linker is very broken -+ # Note:Check GNU linker on AIX 5-IA64 when/if it becomes available. -+ ld_shlibs=no -+ cat <&2 -+ -+*** Warning: the GNU linker, at least up to release 2.9.1, is reported -+*** to be unable to reliably create shared libraries on AIX. -+*** Therefore, libtool is disabling shared libraries support. If you -+*** really care for shared libraries, you may want to modify your PATH -+*** so that a non-GNU linker is found, and then restart. -+ -+EOF -+ ;; -+ -+ amigaos*) -+ archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_minus_L=yes -+ -+ # Samuel A. Falvo II reports -+ # that the semantics of dynamic libraries on AmigaOS, at least up -+ # to version 4, is to share data among multiple programs linked -+ # with the same dynamic library. Since this doesn't match the -+ # behavior of shared libraries on other platforms, we can use -+ # them. -+ ld_shlibs=no -+ ;; -+ -+ beos*) -+ if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then -+ allow_undefined_flag=unsupported -+ # Joseph Beckenbach says some releases of gcc -+ # support --undefined. This deserves some investigation. FIXME -+ archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' -+ else -+ ld_shlibs=no -+ fi -+ ;; -+ -+ cygwin* | mingw* | pw32*) -+ # hardcode_libdir_flag_spec is actually meaningless, as there is -+ # no search path for DLLs. -+ hardcode_libdir_flag_spec='-L$libdir' -+ allow_undefined_flag=unsupported -+ always_export_symbols=yes -+ -+ extract_expsyms_cmds='test -f $output_objdir/impgen.c || \ -+ sed -e "/^# \/\* impgen\.c starts here \*\//,/^# \/\* impgen.c ends here \*\// { s/^# //;s/^# *$//; p; }" -e d < $''0 > $output_objdir/impgen.c~ -+ test -f $output_objdir/impgen.exe || (cd $output_objdir && \ -+ if test "x$HOST_CC" != "x" ; then $HOST_CC -o impgen impgen.c ; \ -+ else $CC -o impgen impgen.c ; fi)~ -+ $output_objdir/impgen $dir/$soroot > $output_objdir/$soname-def' -+ -+ old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib' -+ -+ # cygwin and mingw dlls have different entry points and sets of symbols -+ # to exclude. -+ # FIXME: what about values for MSVC? -+ dll_entry=__cygwin_dll_entry@12 -+ dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12~ -+ case $host_os in -+ mingw*) -+ # mingw values -+ dll_entry=_DllMainCRTStartup@12 -+ dll_exclude_symbols=DllMain@12,DllMainCRTStartup@12,DllEntryPoint@12~ -+ ;; -+ esac -+ -+ # mingw and cygwin differ, and it's simplest to just exclude the union -+ # of the two symbol sets. -+ dll_exclude_symbols=DllMain@12,_cygwin_dll_entry@12,_cygwin_noncygwin_dll_entry@12,DllMainCRTStartup@12,DllEntryPoint@12 -+ -+ # recent cygwin and mingw systems supply a stub DllMain which the user -+ # can override, but on older systems we have to supply one (in ltdll.c) -+ if test "x$lt_cv_need_dllmain" = "xyes"; then -+ ltdll_obj='$output_objdir/$soname-ltdll.'"$ac_objext " -+ ltdll_cmds='test -f $output_objdir/$soname-ltdll.c || sed -e "/^# \/\* ltdll\.c starts here \*\//,/^# \/\* ltdll.c ends here \*\// { s/^# //; p; }" -e d < $''0 > $output_objdir/$soname-ltdll.c~ -+ test -f $output_objdir/$soname-ltdll.$ac_objext || (cd $output_objdir && $CC -c $soname-ltdll.c)~' -+ else -+ ltdll_obj= -+ ltdll_cmds= -+ fi -+ -+ # Extract the symbol export list from an `--export-all' def file, -+ # then regenerate the def file from the symbol export list, so that -+ # the compiled dll only exports the symbol export list. -+ # Be careful not to strip the DATA tag left be newer dlltools. -+ export_symbols_cmds="$ltdll_cmds"' -+ $DLLTOOL --export-all --exclude-symbols '$dll_exclude_symbols' --output-def $output_objdir/$soname-def '$ltdll_obj'$libobjs $convenience~ -+ sed -e "1,/EXPORTS/d" -e "s/ @ [[0-9]]*//" -e "s/ *;.*$//" < $output_objdir/$soname-def > $export_symbols' -+ -+ # If the export-symbols file already is a .def file (1st line -+ # is EXPORTS), use it as is. -+ # If DATA tags from a recent dlltool are present, honour them! -+ archive_expsym_cmds='if test "x`sed 1q $export_symbols`" = xEXPORTS; then -+ cp $export_symbols $output_objdir/$soname-def; -+ else -+ echo EXPORTS > $output_objdir/$soname-def; -+ _lt_hint=1; -+ cat $export_symbols | while read symbol; do -+ set dummy \$symbol; -+ case \[$]# in -+ 2) echo " \[$]2 @ \$_lt_hint ; " >> $output_objdir/$soname-def;; -+ 4) echo " \[$]2 \[$]3 \[$]4 ; " >> $output_objdir/$soname-def; _lt_hint=`expr \$_lt_hint - 1`;; -+ *) echo " \[$]2 @ \$_lt_hint \[$]3 ; " >> $output_objdir/$soname-def;; -+ esac; -+ _lt_hint=`expr 1 + \$_lt_hint`; -+ done; -+ fi~ -+ '"$ltdll_cmds"' -+ $CC -Wl,--base-file,$output_objdir/$soname-base '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~ -+ $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp~ -+ $CC -Wl,--base-file,$output_objdir/$soname-base $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags~ -+ $DLLTOOL --as=$AS --dllname $soname --exclude-symbols '$dll_exclude_symbols' --def $output_objdir/$soname-def --base-file $output_objdir/$soname-base --output-exp $output_objdir/$soname-exp --output-lib $output_objdir/$libname.dll.a~ -+ $CC $output_objdir/$soname-exp '$lt_cv_cc_dll_switch' -Wl,-e,'$dll_entry' -o $output_objdir/$soname '$ltdll_obj'$libobjs $deplibs $compiler_flags' -+ ;; -+ -+ netbsd*) -+ if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then -+ archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' -+ wlarc= -+ else -+ archive_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' -+ archive_expsym_cmds='$CC -shared -nodefaultlibs $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' -+ fi -+ ;; -+ -+ solaris* | sysv5*) -+ if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then -+ ld_shlibs=no -+ cat <&2 -+ -+*** Warning: The releases 2.8.* of the GNU linker cannot reliably -+*** create shared libraries on Solaris systems. Therefore, libtool -+*** is disabling shared libraries support. We urge you to upgrade GNU -+*** binutils to release 2.9.1 or newer. Another option is to modify -+*** your PATH or compiler configuration so that the native linker is -+*** used, and then restart. -+ -+EOF -+ elif $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then -+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' -+ archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' -+ else -+ ld_shlibs=no -+ fi -+ ;; -+ -+ sunos4*) -+ archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' -+ wlarc= -+ hardcode_direct=yes -+ hardcode_shlibpath_var=no -+ ;; -+ -+ *) -+ if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then -+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' -+ archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib' -+ else -+ ld_shlibs=no -+ fi -+ ;; -+ esac -+ -+ if test "$ld_shlibs" = yes; then -+ runpath_var=LD_RUN_PATH -+ hardcode_libdir_flag_spec='${wl}--rpath ${wl}$libdir' -+ export_dynamic_flag_spec='${wl}--export-dynamic' -+ case $host_os in -+ cygwin* | mingw* | pw32*) -+ # dlltool doesn't understand --whole-archive et. al. -+ whole_archive_flag_spec= -+ ;; -+ *) -+ # ancient GNU ld didn't support --whole-archive et. al. -+ if $LD --help 2>&1 | egrep 'no-whole-archive' > /dev/null; then -+ whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive' -+ else -+ whole_archive_flag_spec= -+ fi -+ ;; -+ esac -+ fi -+else -+ # PORTME fill in a description of your system's linker (not GNU ld) -+ case $host_os in -+ aix3*) -+ allow_undefined_flag=unsupported -+ always_export_symbols=yes -+ archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' -+ # Note: this linker hardcodes the directories in LIBPATH if there -+ # are no directories specified by -L. -+ hardcode_minus_L=yes -+ if test "$GCC" = yes && test -z "$link_static_flag"; then -+ # Neither direct hardcoding nor static linking is supported with a -+ # broken collect2. -+ hardcode_direct=unsupported -+ fi -+ ;; -+ -+ aix4* | aix5*) -+ if test "$host_cpu" = ia64; then -+ # On IA64, the linker does run time linking by default, so we don't -+ # have to do anything special. -+ aix_use_runtimelinking=no -+ exp_sym_flag='-Bexport' -+ no_entry_flag="" -+ else -+ aix_use_runtimelinking=no -+ -+ # Test if we are trying to use run time linking or normal -+ # AIX style linking. If -brtl is somewhere in LDFLAGS, we -+ # need to do runtime linking. -+ case $host_os in aix4.[[23]]|aix4.[[23]].*|aix5*) -+ for ld_flag in $LDFLAGS; do -+ case $ld_flag in -+ *-brtl*) -+ aix_use_runtimelinking=yes -+ break -+ ;; -+ esac -+ done -+ esac -+ -+ exp_sym_flag='-bexport' -+ no_entry_flag='-bnoentry' -+ fi -+ -+ # When large executables or shared objects are built, AIX ld can -+ # have problems creating the table of contents. If linking a library -+ # or program results in "error TOC overflow" add -mminimal-toc to -+ # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not -+ # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. -+ -+ hardcode_direct=yes -+ archive_cmds='' -+ hardcode_libdir_separator=':' -+ if test "$GCC" = yes; then -+ case $host_os in aix4.[[012]]|aix4.[[012]].*) -+ collect2name=`${CC} -print-prog-name=collect2` -+ if test -f "$collect2name" && \ -+ strings "$collect2name" | grep resolve_lib_name >/dev/null -+ then -+ # We have reworked collect2 -+ hardcode_direct=yes -+ else -+ # We have old collect2 -+ hardcode_direct=unsupported -+ # It fails to find uninstalled libraries when the uninstalled -+ # path is not listed in the libpath. Setting hardcode_minus_L -+ # to unsupported forces relinking -+ hardcode_minus_L=yes -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_libdir_separator= -+ fi -+ esac -+ -+ shared_flag='-shared' -+ else -+ # not using gcc -+ if test "$host_cpu" = ia64; then -+ shared_flag='${wl}-G' -+ else -+ if test "$aix_use_runtimelinking" = yes; then -+ shared_flag='${wl}-G' -+ else -+ shared_flag='${wl}-bM:SRE' -+ fi -+ fi -+ fi -+ -+ # It seems that -bexpall can do strange things, so it is better to -+ # generate a list of symbols to export. -+ always_export_symbols=yes -+ if test "$aix_use_runtimelinking" = yes; then -+ # Warning - without using the other runtime loading flags (-brtl), -+ # -berok will link without error, but may produce a broken library. -+ allow_undefined_flag='-berok' -+ hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:/usr/lib:/lib' -+ archive_expsym_cmds="\$CC"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags `if test "x${allow_undefined_flag}" != "x"; then echo "${wl}${allow_undefined_flag}"; else :; fi` '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols $shared_flag" -+ else -+ if test "$host_cpu" = ia64; then -+ hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib' -+ allow_undefined_flag="-z nodefs" -+ archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname ${wl}-h$soname $libobjs $deplibs $compiler_flags ${wl}${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols" -+ else -+ hardcode_libdir_flag_spec='${wl}-bnolibpath ${wl}-blibpath:$libdir:/usr/lib:/lib' -+ # Warning - without using the other run time loading flags, -+ # -berok will link without error, but may produce a broken library. -+ allow_undefined_flag='${wl}-berok' -+ # This is a bit strange, but is similar to how AIX traditionally builds -+ # it's shared libraries. -+ archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs $compiler_flags ${allow_undefined_flag} '"\${wl}$no_entry_flag \${wl}$exp_sym_flag:\$export_symbols"' ~$AR -crlo $output_objdir/$libname$release.a $output_objdir/$soname' -+ fi -+ fi -+ ;; -+ -+ amigaos*) -+ archive_cmds='$rm $output_objdir/a2ixlibrary.data~$echo "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$echo "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$echo "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$echo "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_minus_L=yes -+ # see comment about different semantics on the GNU ld section -+ ld_shlibs=no -+ ;; -+ -+ cygwin* | mingw* | pw32*) -+ # When not using gcc, we currently assume that we are using -+ # Microsoft Visual C++. -+ # hardcode_libdir_flag_spec is actually meaningless, as there is -+ # no search path for DLLs. -+ hardcode_libdir_flag_spec=' ' -+ allow_undefined_flag=unsupported -+ # Tell ltmain to make .lib files, not .a files. -+ libext=lib -+ # FIXME: Setting linknames here is a bad hack. -+ archive_cmds='$CC -o $lib $libobjs $compiler_flags `echo "$deplibs" | sed -e '\''s/ -lc$//'\''` -link -dll~linknames=' -+ # The linker will automatically build a .lib file if we build a DLL. -+ old_archive_from_new_cmds='true' -+ # FIXME: Should let the user specify the lib program. -+ old_archive_cmds='lib /OUT:$oldlib$oldobjs$old_deplibs' -+ fix_srcfile_path='`cygpath -w "$srcfile"`' -+ ;; -+ -+ darwin* | rhapsody*) -+ case "$host_os" in -+ rhapsody* | darwin1.[[012]]) -+ allow_undefined_flag='-undefined suppress' -+ ;; -+ *) # Darwin 1.3 on -+ allow_undefined_flag='-flat_namespace -undefined suppress' -+ ;; -+ esac -+ # FIXME: Relying on posixy $() will cause problems for -+ # cross-compilation, but unfortunately the echo tests do not -+ # yet detect zsh echo's removal of \ escapes. Also zsh mangles -+ # `"' quotes if we put them in here... so don't! -+ archive_cmds='$CC -r -keep_private_externs -nostdlib -o ${lib}-master.o $libobjs && $CC $(test .$module = .yes && echo -bundle || echo -dynamiclib) $allow_undefined_flag -o $lib ${lib}-master.o $deplibs$linker_flags $(test .$module != .yes && echo -install_name $rpath/$soname $verstring)' -+ # We need to add '_' to the symbols in $export_symbols first -+ #archive_expsym_cmds="$archive_cmds"' && strip -s $export_symbols' -+ hardcode_direct=yes -+ hardcode_shlibpath_var=no -+ whole_archive_flag_spec='-all_load $convenience' -+ ;; -+ -+ freebsd1*) -+ ld_shlibs=no -+ ;; -+ -+ # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor -+ # support. Future versions do this automatically, but an explicit c++rt0.o -+ # does not break anything, and helps significantly (at the cost of a little -+ # extra space). -+ freebsd2.2*) -+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' -+ hardcode_libdir_flag_spec='-R$libdir' -+ hardcode_direct=yes -+ hardcode_shlibpath_var=no -+ ;; -+ -+ # Unfortunately, older versions of FreeBSD 2 do not have this feature. -+ freebsd2*) -+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_direct=yes -+ hardcode_minus_L=yes -+ hardcode_shlibpath_var=no -+ ;; -+ -+ # FreeBSD 3 and greater uses gcc -shared to do shared libraries. -+ freebsd*) -+ archive_cmds='$CC -shared -o $lib $libobjs $deplibs $compiler_flags' -+ hardcode_libdir_flag_spec='-R$libdir' -+ hardcode_direct=yes -+ hardcode_shlibpath_var=no -+ ;; -+ -+ hpux9* | hpux10* | hpux11*) -+ case $host_os in -+ hpux9*) archive_cmds='$rm $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test $output_objdir/$soname = $lib || mv $output_objdir/$soname $lib' ;; -+ *) archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' ;; -+ esac -+ hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' -+ hardcode_libdir_separator=: -+ hardcode_direct=yes -+ hardcode_minus_L=yes # Not in the search PATH, but as the default -+ # location of the library. -+ export_dynamic_flag_spec='${wl}-E' -+ ;; -+ -+ irix5* | irix6* | nonstopux*) -+ if test "$GCC" = yes; then -+ archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' -+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' -+ else -+ archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' -+ hardcode_libdir_flag_spec='-rpath $libdir' -+ fi -+ hardcode_libdir_separator=: -+ link_all_deplibs=yes -+ ;; -+ -+ netbsd*) -+ if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then -+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out -+ else -+ archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF -+ fi -+ hardcode_libdir_flag_spec='-R$libdir' -+ hardcode_direct=yes -+ hardcode_shlibpath_var=no -+ ;; -+ -+ newsos6) -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_direct=yes -+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' -+ hardcode_libdir_separator=: -+ hardcode_shlibpath_var=no -+ ;; -+ -+ openbsd*) -+ hardcode_direct=yes -+ hardcode_shlibpath_var=no -+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then -+ archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' -+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir' -+ export_dynamic_flag_spec='${wl}-E' -+ else -+ case "$host_os" in -+ openbsd[[01]].* | openbsd2.[[0-7]] | openbsd2.[[0-7]].*) -+ archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_libdir_flag_spec='-R$libdir' -+ ;; -+ *) -+ archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' -+ hardcode_libdir_flag_spec='${wl}-rpath,$libdir' -+ ;; -+ esac -+ fi -+ ;; -+ -+ os2*) -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_minus_L=yes -+ allow_undefined_flag=unsupported -+ archive_cmds='$echo "LIBRARY $libname INITINSTANCE" > $output_objdir/$libname.def~$echo "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~$echo DATA >> $output_objdir/$libname.def~$echo " SINGLE NONSHARED" >> $output_objdir/$libname.def~$echo EXPORTS >> $output_objdir/$libname.def~emxexp $libobjs >> $output_objdir/$libname.def~$CC -Zdll -Zcrtdll -o $lib $libobjs $deplibs $compiler_flags $output_objdir/$libname.def' -+ old_archive_from_new_cmds='emximp -o $output_objdir/$libname.a $output_objdir/$libname.def' -+ ;; -+ -+ osf3*) -+ if test "$GCC" = yes; then -+ allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' -+ archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' -+ else -+ allow_undefined_flag=' -expect_unresolved \*' -+ archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' -+ fi -+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' -+ hardcode_libdir_separator=: -+ ;; -+ -+ osf4* | osf5*) # as osf3* with the addition of -msym flag -+ if test "$GCC" = yes; then -+ allow_undefined_flag=' ${wl}-expect_unresolved ${wl}\*' -+ archive_cmds='$CC -shared${allow_undefined_flag} $libobjs $deplibs $compiler_flags ${wl}-msym ${wl}-soname ${wl}$soname `test -n "$verstring" && echo ${wl}-set_version ${wl}$verstring` ${wl}-update_registry ${wl}${output_objdir}/so_locations -o $lib' -+ hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' -+ else -+ allow_undefined_flag=' -expect_unresolved \*' -+ archive_cmds='$LD -shared${allow_undefined_flag} $libobjs $deplibs $linker_flags -msym -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${output_objdir}/so_locations -o $lib' -+ archive_expsym_cmds='for i in `cat $export_symbols`; do printf "-exported_symbol " >> $lib.exp; echo "\$i" >> $lib.exp; done; echo "-hidden">> $lib.exp~ -+ $LD -shared${allow_undefined_flag} -input $lib.exp $linker_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && echo -set_version $verstring` -update_registry ${objdir}/so_locations -o $lib~$rm $lib.exp' -+ -+ #Both c and cxx compiler support -rpath directly -+ hardcode_libdir_flag_spec='-rpath $libdir' -+ fi -+ hardcode_libdir_separator=: -+ ;; -+ -+ sco3.2v5*) -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_shlibpath_var=no -+ runpath_var=LD_RUN_PATH -+ hardcode_runpath_var=yes -+ export_dynamic_flag_spec='${wl}-Bexport' -+ ;; -+ -+ solaris*) -+ # gcc --version < 3.0 without binutils cannot create self contained -+ # shared libraries reliably, requiring libgcc.a to resolve some of -+ # the object symbols generated in some cases. Libraries that use -+ # assert need libgcc.a to resolve __eprintf, for example. Linking -+ # a copy of libgcc.a into every shared library to guarantee resolving -+ # such symbols causes other problems: According to Tim Van Holder -+ # , C++ libraries end up with a separate -+ # (to the application) exception stack for one thing. -+ no_undefined_flag=' -z defs' -+ if test "$GCC" = yes; then -+ case `$CC --version 2>/dev/null` in -+ [[12]].*) -+ cat <&2 -+ -+*** Warning: Releases of GCC earlier than version 3.0 cannot reliably -+*** create self contained shared libraries on Solaris systems, without -+*** introducing a dependency on libgcc.a. Therefore, libtool is disabling -+*** -no-undefined support, which will at least allow you to build shared -+*** libraries. However, you may find that when you link such libraries -+*** into an application without using GCC, you have to manually add -+*** \`gcc --print-libgcc-file-name\` to the link command. We urge you to -+*** upgrade to a newer version of GCC. Another option is to rebuild your -+*** current GCC to use the GNU linker from GNU binutils 2.9.1 or newer. -+ -+EOF -+ no_undefined_flag= -+ ;; -+ esac -+ fi -+ # $CC -shared without GNU ld will not create a library from C++ -+ # object files and a static libstdc++, better avoid it by now -+ archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ -+ $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' -+ hardcode_libdir_flag_spec='-R$libdir' -+ hardcode_shlibpath_var=no -+ case $host_os in -+ solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; -+ *) # Supported since Solaris 2.6 (maybe 2.5.1?) -+ whole_archive_flag_spec='-z allextract$convenience -z defaultextract' ;; -+ esac -+ link_all_deplibs=yes -+ ;; -+ -+ sunos4*) -+ if test "x$host_vendor" = xsequent; then -+ # Use $CC to link under sequent, because it throws in some extra .o -+ # files that make .init and .fini sections work. -+ archive_cmds='$CC -G ${wl}-h $soname -o $lib $libobjs $deplibs $compiler_flags' -+ else -+ archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' -+ fi -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_direct=yes -+ hardcode_minus_L=yes -+ hardcode_shlibpath_var=no -+ ;; -+ -+ sysv4) -+ case $host_vendor in -+ sni) -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_direct=yes # is this really true??? -+ ;; -+ siemens) -+ ## LD is ld it makes a PLAMLIB -+ ## CC just makes a GrossModule. -+ archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' -+ reload_cmds='$CC -r -o $output$reload_objs' -+ hardcode_direct=no -+ ;; -+ motorola) -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_direct=no #Motorola manual says yes, but my tests say they lie -+ ;; -+ esac -+ runpath_var='LD_RUN_PATH' -+ hardcode_shlibpath_var=no -+ ;; -+ -+ sysv4.3*) -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_shlibpath_var=no -+ export_dynamic_flag_spec='-Bexport' -+ ;; -+ -+ sysv5*) -+ no_undefined_flag=' -z text' -+ # $CC -shared without GNU ld will not create a library from C++ -+ # object files and a static libstdc++, better avoid it by now -+ archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~ -+ $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$rm $lib.exp' -+ hardcode_libdir_flag_spec= -+ hardcode_shlibpath_var=no -+ runpath_var='LD_RUN_PATH' -+ ;; -+ -+ uts4*) -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_shlibpath_var=no -+ ;; -+ -+ dgux*) -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_libdir_flag_spec='-L$libdir' -+ hardcode_shlibpath_var=no -+ ;; -+ -+ sysv4*MP*) -+ if test -d /usr/nec; then -+ archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_shlibpath_var=no -+ runpath_var=LD_RUN_PATH -+ hardcode_runpath_var=yes -+ ld_shlibs=yes -+ fi -+ ;; -+ -+ sysv4.2uw2*) -+ archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' -+ hardcode_direct=yes -+ hardcode_minus_L=no -+ hardcode_shlibpath_var=no -+ hardcode_runpath_var=yes -+ runpath_var=LD_RUN_PATH -+ ;; -+ -+ sysv5uw7* | unixware7*) -+ no_undefined_flag='${wl}-z ${wl}text' -+ if test "$GCC" = yes; then -+ archive_cmds='$CC -shared ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' -+ else -+ archive_cmds='$CC -G ${wl}-h ${wl}$soname -o $lib $libobjs $deplibs $compiler_flags' -+ fi -+ runpath_var='LD_RUN_PATH' -+ hardcode_shlibpath_var=no -+ ;; -+ -+ *) -+ ld_shlibs=no -+ ;; -+ esac -+fi -+AC_MSG_RESULT([$ld_shlibs]) -+test "$ld_shlibs" = no && can_build_shared=no -+## -+## END FIXME -+ -+## FIXME: this should be a separate macro -+## -+# Check hardcoding attributes. -+AC_MSG_CHECKING([how to hardcode library paths into programs]) -+hardcode_action= -+if test -n "$hardcode_libdir_flag_spec" || \ -+ test -n "$runpath_var"; then -+ -+ # We can hardcode non-existant directories. -+ if test "$hardcode_direct" != no && -+ # If the only mechanism to avoid hardcoding is shlibpath_var, we -+ # have to relink, otherwise we might link with an installed library -+ # when we should be linking with a yet-to-be-installed one -+ ## test "$hardcode_shlibpath_var" != no && -+ test "$hardcode_minus_L" != no; then -+ # Linking always hardcodes the temporary library directory. -+ hardcode_action=relink -+ else -+ # We can link without hardcoding, and we can hardcode nonexisting dirs. -+ hardcode_action=immediate -+ fi -+else -+ # We cannot hardcode anything, or else we can only hardcode existing -+ # directories. -+ hardcode_action=unsupported -+fi -+AC_MSG_RESULT([$hardcode_action]) -+## -+## END FIXME -+ -+## FIXME: this should be a separate macro -+## -+striplib= -+old_striplib= -+AC_MSG_CHECKING([whether stripping libraries is possible]) -+if test -n "$STRIP" && $STRIP -V 2>&1 | grep "GNU strip" >/dev/null; then -+ test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" -+ test -z "$striplib" && striplib="$STRIP --strip-unneeded" -+ AC_MSG_RESULT([yes]) -+else -+ AC_MSG_RESULT([no]) -+fi -+## -+## END FIXME -+ -+reload_cmds='$LD$reload_flag -o $output$reload_objs' -+test -z "$deplibs_check_method" && deplibs_check_method=unknown -+ -+## FIXME: this should be a separate macro -+## -+# PORTME Fill in your ld.so characteristics -+AC_MSG_CHECKING([dynamic linker characteristics]) -+library_names_spec= -+libname_spec='lib$name' -+soname_spec= -+postinstall_cmds= -+postuninstall_cmds= -+finish_cmds= -+finish_eval= -+shlibpath_var= -+shlibpath_overrides_runpath=unknown -+version_type=none -+dynamic_linker="$host_os ld.so" -+sys_lib_dlsearch_path_spec="/lib /usr/lib" -+sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" -+ -+case $host_os in -+aix3*) -+ version_type=linux -+ library_names_spec='${libname}${release}.so$versuffix $libname.a' -+ shlibpath_var=LIBPATH -+ -+ # AIX has no versioning support, so we append a major version to the name. -+ soname_spec='${libname}${release}.so$major' -+ ;; -+ -+aix4* | aix5*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ hardcode_into_libs=yes -+ if test "$host_cpu" = ia64; then -+ # AIX 5 supports IA64 -+ library_names_spec='${libname}${release}.so$major ${libname}${release}.so$versuffix $libname.so' -+ shlibpath_var=LD_LIBRARY_PATH -+ else -+ # With GCC up to 2.95.x, collect2 would create an import file -+ # for dependence libraries. The import file would start with -+ # the line `#! .'. This would cause the generated library to -+ # depend on `.', always an invalid library. This was fixed in -+ # development snapshots of GCC prior to 3.0. -+ case $host_os in -+ aix4 | aix4.[[01]] | aix4.[[01]].*) -+ if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' -+ echo ' yes ' -+ echo '#endif'; } | ${CC} -E - | grep yes > /dev/null; then -+ : -+ else -+ can_build_shared=no -+ fi -+ ;; -+ esac -+ # AIX (on Power*) has no versioning support, so currently we can -+ # not hardcode correct soname into executable. Probably we can -+ # add versioning support to collect2, so additional links can -+ # be useful in future. -+ if test "$aix_use_runtimelinking" = yes; then -+ # If using run time linking (on AIX 4.2 or later) use lib.so -+ # instead of lib.a to let people know that these are not -+ # typical AIX shared libraries. -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ else -+ # We preserve .a as extension for shared libraries through AIX4.2 -+ # and later when we are not doing run time linking. -+ library_names_spec='${libname}${release}.a $libname.a' -+ soname_spec='${libname}${release}.so$major' -+ fi -+ shlibpath_var=LIBPATH -+ fi -+ hardcode_into_libs=yes -+ ;; -+ -+amigaos*) -+ library_names_spec='$libname.ixlibrary $libname.a' -+ # Create ${libname}_ixlibrary.a entries in /sys/libs. -+ finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`$echo "X$lib" | $Xsed -e '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; test $rm /sys/libs/${libname}_ixlibrary.a; $show "(cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a)"; (cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a) || exit 1; done' -+ ;; -+ -+beos*) -+ library_names_spec='${libname}.so' -+ dynamic_linker="$host_os ld.so" -+ shlibpath_var=LIBRARY_PATH -+ ;; -+ -+bsdi4*) -+ version_type=linux -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" -+ sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" -+ export_dynamic_flag_spec=-rdynamic -+ # the default ld.so.conf also contains /usr/contrib/lib and -+ # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow -+ # libtool to hard-code these into programs -+ ;; -+ -+cygwin* | mingw* | pw32*) -+ version_type=windows -+ need_version=no -+ need_lib_prefix=no -+ case $GCC,$host_os in -+ yes,cygwin*) -+ library_names_spec='$libname.dll.a' -+ soname_spec='`echo ${libname} | sed -e 's/^lib/cyg/'``echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll' -+ postinstall_cmds='dlpath=`bash 2>&1 -c '\''. $dir/${file}i;echo \$dlname'\''`~ -+ dldir=$destdir/`dirname \$dlpath`~ -+ test -d \$dldir || mkdir -p \$dldir~ -+ $install_prog .libs/$dlname \$dldir/$dlname' -+ postuninstall_cmds='dldll=`bash 2>&1 -c '\''. $file; echo \$dlname'\''`~ -+ dlpath=$dir/\$dldll~ -+ $rm \$dlpath' -+ ;; -+ yes,mingw*) -+ library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll' -+ sys_lib_search_path_spec=`$CC -print-search-dirs | grep "^libraries:" | sed -e "s/^libraries://" -e "s/;/ /g" -e "s,=/,/,g"` -+ ;; -+ yes,pw32*) -+ library_names_spec='`echo ${libname} | sed -e 's/^lib/pw/'``echo ${release} | sed -e 's/[.]/-/g'`${versuffix}.dll' -+ ;; -+ *) -+ library_names_spec='${libname}`echo ${release} | sed -e 's/[[.]]/-/g'`${versuffix}.dll $libname.lib' -+ ;; -+ esac -+ dynamic_linker='Win32 ld.exe' -+ # FIXME: first we should search . and the directory the executable is in -+ shlibpath_var=PATH -+ ;; -+ -+darwin* | rhapsody*) -+ dynamic_linker="$host_os dyld" -+ version_type=darwin -+ need_lib_prefix=no -+ need_version=no -+ # FIXME: Relying on posixy $() will cause problems for -+ # cross-compilation, but unfortunately the echo tests do not -+ # yet detect zsh echo's removal of \ escapes. -+ library_names_spec='${libname}${release}${versuffix}.$(test .$module = .yes && echo so || echo dylib) ${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib) ${libname}.$(test .$module = .yes && echo so || echo dylib)' -+ soname_spec='${libname}${release}${major}.$(test .$module = .yes && echo so || echo dylib)' -+ shlibpath_overrides_runpath=yes -+ shlibpath_var=DYLD_LIBRARY_PATH -+ ;; -+ -+freebsd1*) -+ dynamic_linker=no -+ ;; -+ -+kfreebsd*-gnu*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=no -+ hardcode_into_libs=yes -+ dynamic_linker='GNU/FreeBSD ld.so' -+ ;; -+ -+freebsd*) -+ objformat=`test -x /usr/bin/objformat && /usr/bin/objformat || echo aout` -+ version_type=freebsd-$objformat -+ case $version_type in -+ freebsd-elf*) -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so $libname.so' -+ need_version=no -+ need_lib_prefix=no -+ ;; -+ freebsd-*) -+ library_names_spec='${libname}${release}.so$versuffix $libname.so$versuffix' -+ need_version=yes -+ ;; -+ esac -+ shlibpath_var=LD_LIBRARY_PATH -+ case $host_os in -+ freebsd2*) -+ shlibpath_overrides_runpath=yes -+ ;; -+ *) -+ shlibpath_overrides_runpath=no -+ hardcode_into_libs=yes -+ ;; -+ esac -+ ;; -+ -+gnu*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so${major} ${libname}.so' -+ soname_spec='${libname}${release}.so$major' -+ shlibpath_var=LD_LIBRARY_PATH -+ hardcode_into_libs=yes -+ ;; -+ -+hpux9* | hpux10* | hpux11*) -+ # Give a soname corresponding to the major version so that dld.sl refuses to -+ # link against other versions. -+ dynamic_linker="$host_os dld.sl" -+ version_type=sunos -+ need_lib_prefix=no -+ need_version=no -+ shlibpath_var=SHLIB_PATH -+ shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH -+ library_names_spec='${libname}${release}.sl$versuffix ${libname}${release}.sl$major $libname.sl' -+ soname_spec='${libname}${release}.sl$major' -+ # HP-UX runs *really* slowly unless shared libraries are mode 555. -+ postinstall_cmds='chmod 555 $lib' -+ ;; -+ -+irix5* | irix6* | nonstopux*) -+ case $host_os in -+ nonstopux*) version_type=nonstopux ;; -+ *) version_type=irix ;; -+ esac -+ need_lib_prefix=no -+ need_version=no -+ soname_spec='${libname}${release}.so$major' -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so $libname.so' -+ case $host_os in -+ irix5* | nonstopux*) -+ libsuff= shlibsuff= -+ ;; -+ *) -+ case $LD in # libtool.m4 will add one of these switches to LD -+ *-32|*"-32 ") libsuff= shlibsuff= libmagic=32-bit;; -+ *-n32|*"-n32 ") libsuff=32 shlibsuff=N32 libmagic=N32;; -+ *-64|*"-64 ") libsuff=64 shlibsuff=64 libmagic=64-bit;; -+ *) libsuff= shlibsuff= libmagic=never-match;; -+ esac -+ ;; -+ esac -+ shlibpath_var=LD_LIBRARY${shlibsuff}_PATH -+ shlibpath_overrides_runpath=no -+ sys_lib_search_path_spec="/usr/lib${libsuff} /lib${libsuff} /usr/local/lib${libsuff}" -+ sys_lib_dlsearch_path_spec="/usr/lib${libsuff} /lib${libsuff}" -+ ;; -+ -+# No shared lib support for Linux oldld, aout, or coff. -+linux-gnuoldld* | linux-gnuaout* | linux-gnucoff*) -+ dynamic_linker=no -+ ;; -+ -+# This must be Linux ELF. -+linux-gnu*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=no -+ # This implies no fast_install, which is unacceptable. -+ # Some rework will be needed to allow for fast_install -+ # before this can be enabled. -+ hardcode_into_libs=yes -+ -+ # We used to test for /lib/ld.so.1 and disable shared libraries on -+ # powerpc, because MkLinux only supported shared libraries with the -+ # GNU dynamic linker. Since this was broken with cross compilers, -+ # most powerpc-linux boxes support dynamic linking these days and -+ # people can always --disable-shared, the test was removed, and we -+ # assume the GNU/Linux dynamic linker is in use. -+ dynamic_linker='GNU/Linux ld.so' -+ ;; -+ -+netbsd*) -+ version_type=sunos -+ need_lib_prefix=no -+ need_version=no -+ if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then -+ library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' -+ dynamic_linker='NetBSD (a.out) ld.so' -+ else -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major ${libname}${release}.so ${libname}.so' -+ soname_spec='${libname}${release}.so$major' -+ dynamic_linker='NetBSD ld.elf_so' -+ fi -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=yes -+ hardcode_into_libs=yes -+ ;; -+ -+newsos6) -+ version_type=linux -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=yes -+ ;; -+ -+openbsd*) -+ version_type=sunos -+ need_lib_prefix=no -+ need_version=no -+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then -+ case "$host_os" in -+ openbsd2.[[89]] | openbsd2.[[89]].*) -+ shlibpath_overrides_runpath=no -+ ;; -+ *) -+ shlibpath_overrides_runpath=yes -+ ;; -+ esac -+ else -+ shlibpath_overrides_runpath=yes -+ fi -+ library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' -+ finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ ;; -+ -+os2*) -+ libname_spec='$name' -+ need_lib_prefix=no -+ library_names_spec='$libname.dll $libname.a' -+ dynamic_linker='OS/2 ld.exe' -+ shlibpath_var=LIBPATH -+ ;; -+ -+osf3* | osf4* | osf5*) -+ version_type=osf -+ need_version=no -+ need_lib_prefix=no -+ soname_spec='${libname}${release}.so$major' -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ shlibpath_var=LD_LIBRARY_PATH -+ sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" -+ sys_lib_dlsearch_path_spec="$sys_lib_search_path_spec" -+ hardcode_into_libs=yes -+ ;; -+ -+sco3.2v5*) -+ version_type=osf -+ soname_spec='${libname}${release}.so$major' -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ shlibpath_var=LD_LIBRARY_PATH -+ ;; -+ -+solaris*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=yes -+ hardcode_into_libs=yes -+ # ldd complains unless libraries are executable -+ postinstall_cmds='chmod +x $lib' -+ ;; -+ -+sunos4*) -+ version_type=sunos -+ library_names_spec='${libname}${release}.so$versuffix ${libname}.so$versuffix' -+ finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' -+ shlibpath_var=LD_LIBRARY_PATH -+ shlibpath_overrides_runpath=yes -+ if test "$with_gnu_ld" = yes; then -+ need_lib_prefix=no -+ fi -+ need_version=yes -+ ;; -+ -+sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) -+ version_type=linux -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ shlibpath_var=LD_LIBRARY_PATH -+ case $host_vendor in -+ sni) -+ shlibpath_overrides_runpath=no -+ need_lib_prefix=no -+ export_dynamic_flag_spec='${wl}-Blargedynsym' -+ runpath_var=LD_RUN_PATH -+ ;; -+ siemens) -+ need_lib_prefix=no -+ ;; -+ motorola) -+ need_lib_prefix=no -+ need_version=no -+ shlibpath_overrides_runpath=no -+ sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' -+ ;; -+ esac -+ ;; -+ -+uts4*) -+ version_type=linux -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ shlibpath_var=LD_LIBRARY_PATH -+ ;; -+ -+dgux*) -+ version_type=linux -+ need_lib_prefix=no -+ need_version=no -+ library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so' -+ soname_spec='${libname}${release}.so$major' -+ shlibpath_var=LD_LIBRARY_PATH -+ ;; -+ -+sysv4*MP*) -+ if test -d /usr/nec ;then -+ version_type=linux -+ library_names_spec='$libname.so.$versuffix $libname.so.$major $libname.so' -+ soname_spec='$libname.so.$major' -+ shlibpath_var=LD_LIBRARY_PATH -+ fi -+ ;; -+ -+*) -+ dynamic_linker=no -+ ;; -+esac -+AC_MSG_RESULT([$dynamic_linker]) -+test "$dynamic_linker" = no && can_build_shared=no -+## -+## END FIXME -+ -+## FIXME: this should be a separate macro -+## -+# Report the final consequences. -+AC_MSG_CHECKING([if libtool supports shared libraries]) -+AC_MSG_RESULT([$can_build_shared]) -+## -+## END FIXME -+ -+## FIXME: this should be a separate macro -+## -+AC_MSG_CHECKING([whether to build shared libraries]) -+test "$can_build_shared" = "no" && enable_shared=no -+ -+# On AIX, shared libraries and static libraries use the same namespace, and -+# are all built from PIC. -+case "$host_os" in -+aix3*) -+ test "$enable_shared" = yes && enable_static=no -+ if test -n "$RANLIB"; then -+ archive_cmds="$archive_cmds~\$RANLIB \$lib" -+ postinstall_cmds='$RANLIB $lib' -+ fi -+ ;; -+ -+aix4*) -+ if test "$host_cpu" != ia64 && test "$aix_use_runtimelinking" = no ; then -+ test "$enable_shared" = yes && enable_static=no -+ fi -+ ;; -+esac -+AC_MSG_RESULT([$enable_shared]) -+## -+## END FIXME -+ -+## FIXME: this should be a separate macro -+## -+AC_MSG_CHECKING([whether to build static libraries]) -+# Make sure either enable_shared or enable_static is yes. -+test "$enable_shared" = yes || enable_static=yes -+AC_MSG_RESULT([$enable_static]) -+## -+## END FIXME -+ -+if test "$hardcode_action" = relink; then -+ # Fast installation is not supported -+ enable_fast_install=no -+elif test "$shlibpath_overrides_runpath" = yes || -+ test "$enable_shared" = no; then -+ # Fast installation is not necessary -+ enable_fast_install=needless -+fi -+ -+variables_saved_for_relink="PATH $shlibpath_var $runpath_var" -+if test "$GCC" = yes; then -+ variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" -+fi -+ -+AC_LIBTOOL_DLOPEN_SELF -+ -+## FIXME: this should be a separate macro -+## -+if test "$enable_shared" = yes && test "$GCC" = yes; then -+ case $archive_cmds in -+ *'~'*) -+ # FIXME: we may have to deal with multi-command sequences. -+ ;; -+ '$CC '*) -+ # Test whether the compiler implicitly links with -lc since on some -+ # systems, -lgcc has to come before -lc. If gcc already passes -lc -+ # to ld, don't add -lc before -lgcc. -+ AC_MSG_CHECKING([whether -lc should be explicitly linked in]) -+ AC_CACHE_VAL([lt_cv_archive_cmds_need_lc], -+ [$rm conftest* -+ echo 'static int dummy;' > conftest.$ac_ext -+ -+ if AC_TRY_EVAL(ac_compile); then -+ soname=conftest -+ lib=conftest -+ libobjs=conftest.$ac_objext -+ deplibs= -+ wl=$lt_cv_prog_cc_wl -+ compiler_flags=-v -+ linker_flags=-v -+ verstring= -+ output_objdir=. -+ libname=conftest -+ save_allow_undefined_flag=$allow_undefined_flag -+ allow_undefined_flag= -+ if AC_TRY_EVAL(archive_cmds 2\>\&1 \| grep \" -lc \" \>/dev/null 2\>\&1) -+ then -+ lt_cv_archive_cmds_need_lc=no -+ else -+ lt_cv_archive_cmds_need_lc=yes -+ fi -+ allow_undefined_flag=$save_allow_undefined_flag -+ else -+ cat conftest.err 1>&5 -+ fi]) -+ AC_MSG_RESULT([$lt_cv_archive_cmds_need_lc]) -+ ;; -+ esac -+fi -+need_lc=${lt_cv_archive_cmds_need_lc-yes} -+## -+## END FIXME -+ -+## FIXME: this should be a separate macro -+## -+# The second clause should only fire when bootstrapping the -+# libtool distribution, otherwise you forgot to ship ltmain.sh -+# with your package, and you will get complaints that there are -+# no rules to generate ltmain.sh. -+if test -f "$ltmain"; then -+ : -+else -+ # If there is no Makefile yet, we rely on a make rule to execute -+ # `config.status --recheck' to rerun these tests and create the -+ # libtool script then. -+ test -f Makefile && make "$ltmain" -+fi - --# Actually configure libtool. ac_aux_dir is where install-sh is found. --CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \ --LD="$LD" LDFLAGS="$LDFLAGS" LIBS="$LIBS" \ --LN_S="$LN_S" NM="$NM" RANLIB="$RANLIB" \ --DLLTOOL="$DLLTOOL" AS="$AS" OBJDUMP="$OBJDUMP" \ --${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig \ --$libtool_flags --no-verify $ac_aux_dir/ltmain.sh $lt_target \ --|| AC_MSG_ERROR([libtool configure failed]) -+if test -f "$ltmain"; then -+ trap "$rm \"${ofile}T\"; exit 1" 1 2 15 -+ $rm -f "${ofile}T" -+ -+ echo creating $ofile -+ -+ # Now quote all the things that may contain metacharacters while being -+ # careful not to overquote the AC_SUBSTed values. We take copies of the -+ # variables and quote the copies for generation of the libtool script. -+ for var in echo old_CC old_CFLAGS SED \ -+ AR AR_FLAGS CC LD LN_S NM SHELL \ -+ reload_flag reload_cmds wl \ -+ pic_flag link_static_flag no_builtin_flag export_dynamic_flag_spec \ -+ thread_safe_flag_spec whole_archive_flag_spec libname_spec \ -+ library_names_spec soname_spec \ -+ RANLIB old_archive_cmds old_archive_from_new_cmds old_postinstall_cmds \ -+ old_postuninstall_cmds archive_cmds archive_expsym_cmds postinstall_cmds \ -+ postuninstall_cmds extract_expsyms_cmds old_archive_from_expsyms_cmds \ -+ old_striplib striplib file_magic_cmd export_symbols_cmds \ -+ deplibs_check_method allow_undefined_flag no_undefined_flag \ -+ finish_cmds finish_eval global_symbol_pipe global_symbol_to_cdecl \ -+ global_symbol_to_c_name_address \ -+ hardcode_libdir_flag_spec hardcode_libdir_separator \ -+ sys_lib_search_path_spec sys_lib_dlsearch_path_spec \ -+ compiler_c_o compiler_o_lo need_locks exclude_expsyms include_expsyms; do -+ -+ case $var in -+ reload_cmds | old_archive_cmds | old_archive_from_new_cmds | \ -+ old_postinstall_cmds | old_postuninstall_cmds | \ -+ export_symbols_cmds | archive_cmds | archive_expsym_cmds | \ -+ extract_expsyms_cmds | old_archive_from_expsyms_cmds | \ -+ postinstall_cmds | postuninstall_cmds | \ -+ finish_cmds | sys_lib_search_path_spec | sys_lib_dlsearch_path_spec) -+ # Double-quote double-evaled strings. -+ eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$double_quote_subst\" -e \"\$sed_quote_subst\" -e \"\$delay_variable_subst\"\`\\\"" -+ ;; -+ *) -+ eval "lt_$var=\\\"\`\$echo \"X\$$var\" | \$Xsed -e \"\$sed_quote_subst\"\`\\\"" -+ ;; -+ esac -+ done - --# Reload cache, that may have been modified by ltconfig --AC_CACHE_LOAD -+ cat <<__EOF__ > "${ofile}T" -+#! $SHELL - --# This can be used to rebuild libtool when needed --LIBTOOL_DEPS="$ac_aux_dir/ltconfig $ac_aux_dir/ltmain.sh" -+# `$echo "$ofile" | sed 's%^.*/%%'` - Provide generalized library-building support services. -+# Generated automatically by $PROGRAM (GNU $PACKAGE $VERSION$TIMESTAMP) -+# NOTE: Changes made to this file will be lost: look at ltmain.sh. -+# -+# Copyright (C) 1996-2000 Free Software Foundation, Inc. -+# Originally by Gordon Matzigkeit , 1996 -+# -+# This program is free software; you can redistribute it and/or modify -+# it under the terms of the GNU General Public License as published by -+# the Free Software Foundation; either version 2 of the License, or -+# (at your option) any later version. -+# -+# This program is distributed in the hope that it will be useful, but -+# WITHOUT ANY WARRANTY; without even the implied warranty of -+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+# General Public License for more details. -+# -+# You should have received a copy of the GNU General Public License -+# along with this program; if not, write to the Free Software -+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -+# -+# As a special exception to the GNU General Public License, if you -+# distribute this file as part of a program that contains a -+# configuration script generated by Autoconf, you may include it under -+# the same distribution terms that you use for the rest of that program. - --# Always use our own libtool. --LIBTOOL='$(SHELL) $(top_builddir)/libtool' --AC_SUBST(LIBTOOL)dnl -+# A sed that does not truncate output. -+SED=$lt_SED - --# Redirect the config.log output again, so that the ltconfig log is not --# clobbered by the next message. --exec 5>>./config.log --]) -+# Sed that helps us avoid accidentally triggering echo(1) options like -n. -+Xsed="${SED} -e s/^X//" - --AC_DEFUN(AC_LIBTOOL_SETUP, --[AC_PREREQ(2.13)dnl --AC_REQUIRE([AC_ENABLE_SHARED])dnl --AC_REQUIRE([AC_ENABLE_STATIC])dnl --AC_REQUIRE([AC_ENABLE_FAST_INSTALL])dnl --AC_REQUIRE([AC_CANONICAL_HOST])dnl --AC_REQUIRE([AC_CANONICAL_BUILD])dnl --AC_REQUIRE([AC_PROG_RANLIB])dnl --AC_REQUIRE([AC_PROG_CC])dnl --AC_REQUIRE([AC_PROG_LD])dnl --AC_REQUIRE([AC_PROG_NM])dnl --AC_REQUIRE([AC_PROG_LN_S])dnl --dnl -+# The HP-UX ksh and POSIX shell print the target directory to stdout -+# if CDPATH is set. -+if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi - --case "$target" in --NONE) lt_target="$host" ;; --*) lt_target="$target" ;; --esac -+# ### BEGIN LIBTOOL CONFIG - --# Check for any special flags to pass to ltconfig. --libtool_flags="" --test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared" --test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static" --test "$enable_fast_install" = no && libtool_flags="$libtool_flags --disable-fast-install" --test "$ac_cv_prog_gcc" = yes && libtool_flags="$libtool_flags --with-gcc" --test "$ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld" --ifdef([AC_PROVIDE_AC_LIBTOOL_DLOPEN], --[libtool_flags="$libtool_flags --enable-dlopen"]) --ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], --[libtool_flags="$libtool_flags --enable-win32-dll"]) --AC_ARG_ENABLE(libtool-lock, -- [ --disable-libtool-lock avoid locking (might break parallel builds)]) --test "x$enable_libtool_lock" = xno && libtool_flags="$libtool_flags --disable-lock" --test x"$silent" = xyes && libtool_flags="$libtool_flags --silent" -+# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: - --# Some flags need to be propagated to the compiler or linker for good --# libtool support. --case "$lt_target" in --*-*-irix6*) -- # Find out which ABI we are using. -- echo '[#]line __oline__ "configure"' > conftest.$ac_ext -- if AC_TRY_EVAL(ac_compile); then -- case "`/usr/bin/file conftest.o`" in -- *32-bit*) -- LD="${LD-ld} -32" -- ;; -- *N32*) -- LD="${LD-ld} -n32" -- ;; -- *64-bit*) -- LD="${LD-ld} -64" -- ;; -- esac -- fi -- rm -rf conftest* -- ;; -+# Shell to use when invoking shell scripts. -+SHELL=$lt_SHELL - --*-*-sco3.2v5*) -- # On SCO OpenServer 5, we need -belf to get full-featured binaries. -- SAVE_CFLAGS="$CFLAGS" -- CFLAGS="$CFLAGS -belf" -- AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, -- [AC_TRY_LINK([],[],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no])]) -- if test x"$lt_cv_cc_needs_belf" != x"yes"; then -- # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf -- CFLAGS="$SAVE_CFLAGS" -- fi -- ;; -+# Whether or not to build shared libraries. -+build_libtool_libs=$enable_shared - --ifdef([AC_PROVIDE_AC_LIBTOOL_WIN32_DLL], --[*-*-cygwin* | *-*-mingw*) -- AC_CHECK_TOOL(DLLTOOL, dlltool, false) -- AC_CHECK_TOOL(AS, as, false) -- AC_CHECK_TOOL(OBJDUMP, objdump, false) -- ;; --]) --esac --]) -+# Whether or not to build static libraries. -+build_old_libs=$enable_static -+ -+# Whether or not to add -lc for building shared libraries. -+build_libtool_need_lc=$need_lc -+ -+# Whether or not to optimize for fast installation. -+fast_install=$enable_fast_install -+ -+# The host system. -+host_alias=$host_alias -+host=$host -+ -+# An echo program that does not interpret backslashes. -+echo=$lt_echo -+ -+# The archiver. -+AR=$lt_AR -+AR_FLAGS=$lt_AR_FLAGS -+ -+# The default C compiler. -+CC=$lt_CC -+ -+# Is the compiler the GNU C compiler? -+with_gcc=$GCC -+ -+# The linker used to build libraries. -+LD=$lt_LD -+ -+# Whether we need hard or soft links. -+LN_S=$lt_LN_S -+ -+# A BSD-compatible nm program. -+NM=$lt_NM -+ -+# A symbol stripping program -+STRIP="$STRIP" -+ -+# Used to examine libraries when file_magic_cmd begins "file" -+MAGIC_CMD=$MAGIC_CMD -+ -+# Used on cygwin: DLL creation program. -+DLLTOOL="$DLLTOOL" -+ -+# Used on cygwin: object dumper. -+OBJDUMP="$OBJDUMP" -+ -+# Used on cygwin: assembler. -+AS="$AS" -+ -+# The name of the directory that contains temporary libtool files. -+objdir=$objdir -+ -+# How to create reloadable object files. -+reload_flag=$lt_reload_flag -+reload_cmds=$lt_reload_cmds -+ -+# How to pass a linker flag through the compiler. -+wl=$lt_wl -+ -+# Object file suffix (normally "o"). -+objext="$ac_objext" -+ -+# Old archive suffix (normally "a"). -+libext="$libext" -+ -+# Executable file suffix (normally ""). -+exeext="$exeext" -+ -+# Additional compiler flags for building library objects. -+pic_flag=$lt_pic_flag -+pic_mode=$pic_mode -+ -+# Does compiler simultaneously support -c and -o options? -+compiler_c_o=$lt_compiler_c_o -+ -+# Can we write directly to a .lo ? -+compiler_o_lo=$lt_compiler_o_lo -+ -+# Must we lock files when doing compilation ? -+need_locks=$lt_need_locks -+ -+# Do we need the lib prefix for modules? -+need_lib_prefix=$need_lib_prefix -+ -+# Do we need a version for libraries? -+need_version=$need_version -+ -+# Whether dlopen is supported. -+dlopen_support=$enable_dlopen -+ -+# Whether dlopen of programs is supported. -+dlopen_self=$enable_dlopen_self -+ -+# Whether dlopen of statically linked programs is supported. -+dlopen_self_static=$enable_dlopen_self_static -+ -+# Compiler flag to prevent dynamic linking. -+link_static_flag=$lt_link_static_flag -+ -+# Compiler flag to turn off builtin functions. -+no_builtin_flag=$lt_no_builtin_flag -+ -+# Compiler flag to allow reflexive dlopens. -+export_dynamic_flag_spec=$lt_export_dynamic_flag_spec -+ -+# Compiler flag to generate shared objects directly from archives. -+whole_archive_flag_spec=$lt_whole_archive_flag_spec -+ -+# Compiler flag to generate thread-safe objects. -+thread_safe_flag_spec=$lt_thread_safe_flag_spec -+ -+# Library versioning type. -+version_type=$version_type -+ -+# Format of library name prefix. -+libname_spec=$lt_libname_spec -+ -+# List of archive names. First name is the real one, the rest are links. -+# The last name is the one that the linker finds with -lNAME. -+library_names_spec=$lt_library_names_spec -+ -+# The coded name of the library, if different from the real name. -+soname_spec=$lt_soname_spec -+ -+# Commands used to build and install an old-style archive. -+RANLIB=$lt_RANLIB -+old_archive_cmds=$lt_old_archive_cmds -+old_postinstall_cmds=$lt_old_postinstall_cmds -+old_postuninstall_cmds=$lt_old_postuninstall_cmds -+ -+# Create an old-style archive from a shared archive. -+old_archive_from_new_cmds=$lt_old_archive_from_new_cmds -+ -+# Create a temporary old-style archive to link instead of a shared archive. -+old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds -+ -+# Commands used to build and install a shared archive. -+archive_cmds=$lt_archive_cmds -+archive_expsym_cmds=$lt_archive_expsym_cmds -+postinstall_cmds=$lt_postinstall_cmds -+postuninstall_cmds=$lt_postuninstall_cmds -+ -+# Commands to strip libraries. -+old_striplib=$lt_old_striplib -+striplib=$lt_striplib -+ -+# Method to check whether dependent libraries are shared objects. -+deplibs_check_method=$lt_deplibs_check_method -+ -+# Command to use when deplibs_check_method == file_magic. -+file_magic_cmd=$lt_file_magic_cmd -+ -+# Flag that allows shared libraries with undefined symbols to be built. -+allow_undefined_flag=$lt_allow_undefined_flag -+ -+# Flag that forces no undefined symbols. -+no_undefined_flag=$lt_no_undefined_flag -+ -+# Commands used to finish a libtool library installation in a directory. -+finish_cmds=$lt_finish_cmds -+ -+# Same as above, but a single script fragment to be evaled but not shown. -+finish_eval=$lt_finish_eval -+ -+# Take the output of nm and produce a listing of raw symbols and C names. -+global_symbol_pipe=$lt_global_symbol_pipe -+ -+# Transform the output of nm in a proper C declaration -+global_symbol_to_cdecl=$lt_global_symbol_to_cdecl -+ -+# Transform the output of nm in a C name address pair -+global_symbol_to_c_name_address=$lt_global_symbol_to_c_name_address -+ -+# This is the shared library runtime path variable. -+runpath_var=$runpath_var -+ -+# This is the shared library path variable. -+shlibpath_var=$shlibpath_var -+ -+# Is shlibpath searched before the hard-coded library search path? -+shlibpath_overrides_runpath=$shlibpath_overrides_runpath -+ -+# How to hardcode a shared library path into an executable. -+hardcode_action=$hardcode_action -+ -+# Whether we should hardcode library paths into libraries. -+hardcode_into_libs=$hardcode_into_libs -+ -+# Flag to hardcode \$libdir into a binary during linking. -+# This must work even if \$libdir does not exist. -+hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec -+ -+# Whether we need a single -rpath flag with a separated argument. -+hardcode_libdir_separator=$lt_hardcode_libdir_separator -+ -+# Set to yes if using DIR/libNAME.so during linking hardcodes DIR into the -+# resulting binary. -+hardcode_direct=$hardcode_direct -+ -+# Set to yes if using the -LDIR flag during linking hardcodes DIR into the -+# resulting binary. -+hardcode_minus_L=$hardcode_minus_L -+ -+# Set to yes if using SHLIBPATH_VAR=DIR during linking hardcodes DIR into -+# the resulting binary. -+hardcode_shlibpath_var=$hardcode_shlibpath_var -+ -+# Variables whose values should be saved in libtool wrapper scripts and -+# restored at relink time. -+variables_saved_for_relink="$variables_saved_for_relink" -+ -+# Whether libtool must link a program against all its dependency libraries. -+link_all_deplibs=$link_all_deplibs -+ -+# Compile-time system search path for libraries -+sys_lib_search_path_spec=$lt_sys_lib_search_path_spec -+ -+# Run-time system search path for libraries -+sys_lib_dlsearch_path_spec=$lt_sys_lib_dlsearch_path_spec -+ -+# Fix the shell variable \$srcfile for the compiler. -+fix_srcfile_path="$fix_srcfile_path" -+ -+# Set to yes if exported symbols are required. -+always_export_symbols=$always_export_symbols -+ -+# The commands to list exported symbols. -+export_symbols_cmds=$lt_export_symbols_cmds -+ -+# The commands to extract the exported symbol list from a shared archive. -+extract_expsyms_cmds=$lt_extract_expsyms_cmds -+ -+# Symbols that should not be listed in the preloaded symbols. -+exclude_expsyms=$lt_exclude_expsyms -+ -+# Symbols that must always be exported. -+include_expsyms=$lt_include_expsyms -+ -+# ### END LIBTOOL CONFIG -+ -+__EOF__ -+ -+ case $host_os in -+ aix3*) -+ cat <<\EOF >> "${ofile}T" -+ -+# AIX sometimes has problems with the GCC collect2 program. For some -+# reason, if we set the COLLECT_NAMES environment variable, the problems -+# vanish in a puff of smoke. -+if test "X${COLLECT_NAMES+set}" != Xset; then -+ COLLECT_NAMES= -+ export COLLECT_NAMES -+fi -+EOF -+ ;; -+ esac -+ -+ case $host_os in -+ cygwin* | mingw* | pw32* | os2*) -+ cat <<'EOF' >> "${ofile}T" -+ # This is a source program that is used to create dlls on Windows -+ # Don't remove nor modify the starting and closing comments -+# /* ltdll.c starts here */ -+# #define WIN32_LEAN_AND_MEAN -+# #include -+# #undef WIN32_LEAN_AND_MEAN -+# #include -+# -+# #ifndef __CYGWIN__ -+# # ifdef __CYGWIN32__ -+# # define __CYGWIN__ __CYGWIN32__ -+# # endif -+# #endif -+# -+# #ifdef __cplusplus -+# extern "C" { -+# #endif -+# BOOL APIENTRY DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved); -+# #ifdef __cplusplus -+# } -+# #endif -+# -+# #ifdef __CYGWIN__ -+# #include -+# DECLARE_CYGWIN_DLL( DllMain ); -+# #endif -+# HINSTANCE __hDllInstance_base; -+# -+# BOOL APIENTRY -+# DllMain (HINSTANCE hInst, DWORD reason, LPVOID reserved) -+# { -+# __hDllInstance_base = hInst; -+# return TRUE; -+# } -+# /* ltdll.c ends here */ -+ # This is a source program that is used to create import libraries -+ # on Windows for dlls which lack them. Don't remove nor modify the -+ # starting and closing comments -+# /* impgen.c starts here */ -+# /* Copyright (C) 1999-2000 Free Software Foundation, Inc. -+# -+# This file is part of GNU libtool. -+# -+# This program is free software; you can redistribute it and/or modify -+# it under the terms of the GNU General Public License as published by -+# the Free Software Foundation; either version 2 of the License, or -+# (at your option) any later version. -+# -+# This program is distributed in the hope that it will be useful, -+# but WITHOUT ANY WARRANTY; without even the implied warranty of -+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+# GNU General Public License for more details. -+# -+# You should have received a copy of the GNU General Public License -+# along with this program; if not, write to the Free Software -+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. -+# */ -+# -+# #include /* for printf() */ -+# #include /* for open(), lseek(), read() */ -+# #include /* for O_RDONLY, O_BINARY */ -+# #include /* for strdup() */ -+# -+# /* O_BINARY isn't required (or even defined sometimes) under Unix */ -+# #ifndef O_BINARY -+# #define O_BINARY 0 -+# #endif -+# -+# static unsigned int -+# pe_get16 (fd, offset) -+# int fd; -+# int offset; -+# { -+# unsigned char b[2]; -+# lseek (fd, offset, SEEK_SET); -+# read (fd, b, 2); -+# return b[0] + (b[1]<<8); -+# } -+# -+# static unsigned int -+# pe_get32 (fd, offset) -+# int fd; -+# int offset; -+# { -+# unsigned char b[4]; -+# lseek (fd, offset, SEEK_SET); -+# read (fd, b, 4); -+# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24); -+# } -+# -+# static unsigned int -+# pe_as32 (ptr) -+# void *ptr; -+# { -+# unsigned char *b = ptr; -+# return b[0] + (b[1]<<8) + (b[2]<<16) + (b[3]<<24); -+# } -+# -+# int -+# main (argc, argv) -+# int argc; -+# char *argv[]; -+# { -+# int dll; -+# unsigned long pe_header_offset, opthdr_ofs, num_entries, i; -+# unsigned long export_rva, export_size, nsections, secptr, expptr; -+# unsigned long name_rvas, nexp; -+# unsigned char *expdata, *erva; -+# char *filename, *dll_name; -+# -+# filename = argv[1]; -+# -+# dll = open(filename, O_RDONLY|O_BINARY); -+# if (dll < 1) -+# return 1; -+# -+# dll_name = filename; -+# -+# for (i=0; filename[i]; i++) -+# if (filename[i] == '/' || filename[i] == '\\' || filename[i] == ':') -+# dll_name = filename + i +1; -+# -+# pe_header_offset = pe_get32 (dll, 0x3c); -+# opthdr_ofs = pe_header_offset + 4 + 20; -+# num_entries = pe_get32 (dll, opthdr_ofs + 92); -+# -+# if (num_entries < 1) /* no exports */ -+# return 1; -+# -+# export_rva = pe_get32 (dll, opthdr_ofs + 96); -+# export_size = pe_get32 (dll, opthdr_ofs + 100); -+# nsections = pe_get16 (dll, pe_header_offset + 4 +2); -+# secptr = (pe_header_offset + 4 + 20 + -+# pe_get16 (dll, pe_header_offset + 4 + 16)); -+# -+# expptr = 0; -+# for (i = 0; i < nsections; i++) -+# { -+# char sname[8]; -+# unsigned long secptr1 = secptr + 40 * i; -+# unsigned long vaddr = pe_get32 (dll, secptr1 + 12); -+# unsigned long vsize = pe_get32 (dll, secptr1 + 16); -+# unsigned long fptr = pe_get32 (dll, secptr1 + 20); -+# lseek(dll, secptr1, SEEK_SET); -+# read(dll, sname, 8); -+# if (vaddr <= export_rva && vaddr+vsize > export_rva) -+# { -+# expptr = fptr + (export_rva - vaddr); -+# if (export_rva + export_size > vaddr + vsize) -+# export_size = vsize - (export_rva - vaddr); -+# break; -+# } -+# } -+# -+# expdata = (unsigned char*)malloc(export_size); -+# lseek (dll, expptr, SEEK_SET); -+# read (dll, expdata, export_size); -+# erva = expdata - export_rva; -+# -+# nexp = pe_as32 (expdata+24); -+# name_rvas = pe_as32 (expdata+32); -+# -+# printf ("EXPORTS\n"); -+# for (i = 0; i> "${ofile}T" || (rm -f "${ofile}T"; exit 1) -+ -+ mv -f "${ofile}T" "$ofile" || \ -+ (rm -f "$ofile" && cp "${ofile}T" "$ofile" && rm -f "${ofile}T") -+ chmod +x "$ofile" -+fi -+## -+## END FIXME -+ -+])# _LT_AC_LTCONFIG_HACK - - # AC_LIBTOOL_DLOPEN - enable checks for dlopen support --AC_DEFUN(AC_LIBTOOL_DLOPEN, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])]) -+AC_DEFUN([AC_LIBTOOL_DLOPEN], [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])]) - - # AC_LIBTOOL_WIN32_DLL - declare package support for building win32 dll's --AC_DEFUN(AC_LIBTOOL_WIN32_DLL, [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])]) -+AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [AC_BEFORE([$0], [AC_LIBTOOL_SETUP])]) - - # AC_ENABLE_SHARED - implement the --enable-shared flag - # Usage: AC_ENABLE_SHARED[(DEFAULT)] - # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to - # `yes'. --AC_DEFUN(AC_ENABLE_SHARED, [dnl --define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl -+AC_DEFUN([AC_ENABLE_SHARED], -+[define([AC_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl - AC_ARG_ENABLE(shared, - changequote(<<, >>)dnl - << --enable-shared[=PKGS] build shared libraries [default=>>AC_ENABLE_SHARED_DEFAULT], - changequote([, ])dnl - [p=${PACKAGE-default} --case "$enableval" in -+case $enableval in - yes) enable_shared=yes ;; - no) enable_shared=no ;; - *) -@@ -167,21 +3062,22 @@ - ]) - - # AC_DISABLE_SHARED - set the default shared flag to --disable-shared --AC_DEFUN(AC_DISABLE_SHARED, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -+AC_DEFUN([AC_DISABLE_SHARED], -+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl - AC_ENABLE_SHARED(no)]) - - # AC_ENABLE_STATIC - implement the --enable-static flag - # Usage: AC_ENABLE_STATIC[(DEFAULT)] - # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to - # `yes'. --AC_DEFUN(AC_ENABLE_STATIC, [dnl --define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl -+AC_DEFUN([AC_ENABLE_STATIC], -+[define([AC_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl - AC_ARG_ENABLE(static, - changequote(<<, >>)dnl - << --enable-static[=PKGS] build static libraries [default=>>AC_ENABLE_STATIC_DEFAULT], - changequote([, ])dnl - [p=${PACKAGE-default} --case "$enableval" in -+case $enableval in - yes) enable_static=yes ;; - no) enable_static=no ;; - *) -@@ -200,7 +3096,8 @@ - ]) - - # AC_DISABLE_STATIC - set the default static flag to --disable-static --AC_DEFUN(AC_DISABLE_STATIC, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -+AC_DEFUN([AC_DISABLE_STATIC], -+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl - AC_ENABLE_STATIC(no)]) - - -@@ -208,14 +3105,14 @@ - # Usage: AC_ENABLE_FAST_INSTALL[(DEFAULT)] - # Where DEFAULT is either `yes' or `no'. If omitted, it defaults to - # `yes'. --AC_DEFUN(AC_ENABLE_FAST_INSTALL, [dnl --define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl -+AC_DEFUN([AC_ENABLE_FAST_INSTALL], -+[define([AC_ENABLE_FAST_INSTALL_DEFAULT], ifelse($1, no, no, yes))dnl - AC_ARG_ENABLE(fast-install, - changequote(<<, >>)dnl - << --enable-fast-install[=PKGS] optimize for fast installation [default=>>AC_ENABLE_FAST_INSTALL_DEFAULT], - changequote([, ])dnl - [p=${PACKAGE-default} --case "$enableval" in -+case $enableval in - yes) enable_fast_install=yes ;; - no) enable_fast_install=no ;; - *) -@@ -233,29 +3130,120 @@ - enable_fast_install=AC_ENABLE_FAST_INSTALL_DEFAULT)dnl - ]) - --# AC_ENABLE_FAST_INSTALL - set the default to --disable-fast-install --AC_DEFUN(AC_DISABLE_FAST_INSTALL, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -+# AC_DISABLE_FAST_INSTALL - set the default to --disable-fast-install -+AC_DEFUN([AC_DISABLE_FAST_INSTALL], -+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl - AC_ENABLE_FAST_INSTALL(no)]) - -+# AC_LIBTOOL_PICMODE - implement the --with-pic flag -+# Usage: AC_LIBTOOL_PICMODE[(MODE)] -+# Where MODE is either `yes' or `no'. If omitted, it defaults to -+# `both'. -+AC_DEFUN([AC_LIBTOOL_PICMODE], -+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -+pic_mode=ifelse($#,1,$1,default)]) -+ -+ -+# AC_PATH_TOOL_PREFIX - find a file program which can recognise shared library -+AC_DEFUN([AC_PATH_TOOL_PREFIX], -+[AC_MSG_CHECKING([for $1]) -+AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, -+[case $MAGIC_CMD in -+ /*) -+ lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a path. -+ ;; -+ ?:/*) -+ lt_cv_path_MAGIC_CMD="$MAGIC_CMD" # Let the user override the test with a dos path. -+ ;; -+ *) -+ ac_save_MAGIC_CMD="$MAGIC_CMD" -+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=":" -+dnl $ac_dummy forces splitting on constant user-supplied paths. -+dnl POSIX.2 word splitting is done only on the output of word expansions, -+dnl not every word. This closes a longstanding sh security hole. -+ ac_dummy="ifelse([$2], , $PATH, [$2])" -+ for ac_dir in $ac_dummy; do -+ test -z "$ac_dir" && ac_dir=. -+ if test -f $ac_dir/$1; then -+ lt_cv_path_MAGIC_CMD="$ac_dir/$1" -+ if test -n "$file_magic_test_file"; then -+ case $deplibs_check_method in -+ "file_magic "*) -+ file_magic_regex="`expr \"$deplibs_check_method\" : \"file_magic \(.*\)\"`" -+ MAGIC_CMD="$lt_cv_path_MAGIC_CMD" -+ if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | -+ egrep "$file_magic_regex" > /dev/null; then -+ : -+ else -+ cat <&2 -+ -+*** Warning: the command libtool uses to detect shared libraries, -+*** $file_magic_cmd, produces output that libtool cannot recognize. -+*** The result is that libtool may fail to recognize shared libraries -+*** as such. This will affect the creation of libtool libraries that -+*** depend on shared libraries, but programs linked with such libtool -+*** libraries will work regardless of this problem. Nevertheless, you -+*** may want to report the problem to your system manager and/or to -+*** bug-libtool@gnu.org -+ -+EOF -+ fi ;; -+ esac -+ fi -+ break -+ fi -+ done -+ IFS="$ac_save_ifs" -+ MAGIC_CMD="$ac_save_MAGIC_CMD" -+ ;; -+esac]) -+MAGIC_CMD="$lt_cv_path_MAGIC_CMD" -+if test -n "$MAGIC_CMD"; then -+ AC_MSG_RESULT($MAGIC_CMD) -+else -+ AC_MSG_RESULT(no) -+fi -+]) -+ -+ -+# AC_PATH_MAGIC - find a file program which can recognise a shared library -+AC_DEFUN([AC_PATH_MAGIC], -+[AC_REQUIRE([AC_CHECK_TOOL_PREFIX])dnl -+AC_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin:$PATH) -+if test -z "$lt_cv_path_MAGIC_CMD"; then -+ if test -n "$ac_tool_prefix"; then -+ AC_PATH_TOOL_PREFIX(file, /usr/bin:$PATH) -+ else -+ MAGIC_CMD=: -+ fi -+fi -+]) -+ -+ - # AC_PROG_LD - find the path to the GNU or non-GNU linker --AC_DEFUN(AC_PROG_LD, -+AC_DEFUN([AC_PROG_LD], - [AC_ARG_WITH(gnu-ld, - [ --with-gnu-ld assume the C compiler uses GNU ld [default=no]], - test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no) - AC_REQUIRE([AC_PROG_CC])dnl - AC_REQUIRE([AC_CANONICAL_HOST])dnl - AC_REQUIRE([AC_CANONICAL_BUILD])dnl -+AC_REQUIRE([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR])dnl - ac_prog=ld --if test "$ac_cv_prog_gcc" = yes; then -+if test "$GCC" = yes; then - # Check if gcc -print-prog-name=ld gives a path. - AC_MSG_CHECKING([for ld used by GCC]) -- ac_prog=`($CC -print-prog-name=ld) 2>&5` -- case "$ac_prog" in -+ case $host in -+ *-*-mingw*) -+ # gcc leaves a trailing carriage return which upsets mingw -+ ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; -+ *) -+ ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; -+ esac -+ case $ac_prog in - # Accept absolute paths. --changequote(,)dnl -- [\\/]* | [A-Za-z]:[\\/]*) -- re_direlt='/[^/][^/]*/\.\./' --changequote([,])dnl -+ [[\\/]]* | [[A-Za-z]]:[[\\/]]*) -+ re_direlt='/[[^/]][[^/]]*/\.\./' - # Canonicalize the path of ld - ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` - while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do -@@ -277,17 +3265,17 @@ - else - AC_MSG_CHECKING([for non-GNU ld]) - fi --AC_CACHE_VAL(ac_cv_path_LD, -+AC_CACHE_VAL(lt_cv_path_LD, - [if test -z "$LD"; then -- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" -+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH; do - test -z "$ac_dir" && ac_dir=. - if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then -- ac_cv_path_LD="$ac_dir/$ac_prog" -+ lt_cv_path_LD="$ac_dir/$ac_prog" - # Check to see if the program is GNU ld. I'd rather use --version, - # but apparently some GNU ld's only accept -v. - # Break only if it was the GNU/non-GNU ld that we prefer. -- if "$ac_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then -+ if "$lt_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then - test "$with_gnu_ld" != no && break - else - test "$with_gnu_ld" != yes && break -@@ -296,9 +3284,9 @@ - done - IFS="$ac_save_ifs" - else -- ac_cv_path_LD="$LD" # Let the user override the test with a path. -+ lt_cv_path_LD="$LD" # Let the user override the test with a path. - fi]) --LD="$ac_cv_path_LD" -+LD="$lt_cv_path_LD" - if test -n "$LD"; then - AC_MSG_RESULT($LD) - else -@@ -308,56 +3296,255 @@ - AC_PROG_LD_GNU - ]) - --AC_DEFUN(AC_PROG_LD_GNU, --[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], ac_cv_prog_gnu_ld, -+# AC_PROG_LD_GNU - -+AC_DEFUN([AC_PROG_LD_GNU], -+[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], lt_cv_prog_gnu_ld, - [# I'd rather use --version here, but apparently some GNU ld's only accept -v. - if $LD -v 2>&1 &5; then -- ac_cv_prog_gnu_ld=yes -+ lt_cv_prog_gnu_ld=yes - else -- ac_cv_prog_gnu_ld=no -+ lt_cv_prog_gnu_ld=no - fi]) -+with_gnu_ld=$lt_cv_prog_gnu_ld -+]) -+ -+# AC_PROG_LD_RELOAD_FLAG - find reload flag for linker -+# -- PORTME Some linkers may need a different reload flag. -+AC_DEFUN([AC_PROG_LD_RELOAD_FLAG], -+[AC_CACHE_CHECK([for $LD option to reload object files], lt_cv_ld_reload_flag, -+[lt_cv_ld_reload_flag='-r']) -+reload_flag=$lt_cv_ld_reload_flag -+test -n "$reload_flag" && reload_flag=" $reload_flag" -+]) -+ -+# AC_DEPLIBS_CHECK_METHOD - how to check for library dependencies -+# -- PORTME fill in with the dynamic library characteristics -+AC_DEFUN([AC_DEPLIBS_CHECK_METHOD], -+[AC_CACHE_CHECK([how to recognise dependent libraries], -+lt_cv_deplibs_check_method, -+[lt_cv_file_magic_cmd='$MAGIC_CMD' -+lt_cv_file_magic_test_file= -+lt_cv_deplibs_check_method='unknown' -+# Need to set the preceding variable on all platforms that support -+# interlibrary dependencies. -+# 'none' -- dependencies not supported. -+# `unknown' -- same as none, but documents that we really don't know. -+# 'pass_all' -- all dependencies passed with no checks. -+# 'test_compile' -- check by making test program. -+# 'file_magic [[regex]]' -- check by looking for files in library path -+# which responds to the $file_magic_cmd with a given egrep regex. -+# If you have `file' or equivalent on your system and you're not sure -+# whether `pass_all' will *always* work, you probably want this one. -+ -+case $host_os in -+aix4* | aix5*) -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ -+beos*) -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ -+bsdi4*) -+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)' -+ lt_cv_file_magic_cmd='/usr/bin/file -L' -+ lt_cv_file_magic_test_file=/shlib/libc.so -+ ;; -+ -+cygwin* | mingw* | pw32*) -+ lt_cv_deplibs_check_method='file_magic file format pei*-i386(.*architecture: i386)?' -+ lt_cv_file_magic_cmd='$OBJDUMP -f' -+ ;; -+ -+darwin* | rhapsody*) -+ lt_cv_deplibs_check_method='file_magic Mach-O dynamically linked shared library' -+ lt_cv_file_magic_cmd='/usr/bin/file -L' -+ case "$host_os" in -+ rhapsody* | darwin1.[[012]]) -+ lt_cv_file_magic_test_file=`echo /System/Library/Frameworks/System.framework/Versions/*/System | head -1` -+ ;; -+ *) # Darwin 1.3 on -+ lt_cv_file_magic_test_file='/usr/lib/libSystem.dylib' -+ ;; -+ esac -+ ;; -+ -+freebsd*) -+ if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then -+ case $host_cpu in -+ i*86 ) -+ # Not sure whether the presence of OpenBSD here was a mistake. -+ # Let's accept both of them until this is cleared up. -+ lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD)/i[[3-9]]86 (compact )?demand paged shared library' -+ lt_cv_file_magic_cmd=/usr/bin/file -+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` -+ ;; -+ esac -+ else -+ lt_cv_deplibs_check_method=pass_all -+ fi -+ ;; -+ -+gnu*) -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ -+hpux10.20*|hpux11*) -+ lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]].[[0-9]]) shared library' -+ lt_cv_file_magic_cmd=/usr/bin/file -+ lt_cv_file_magic_test_file=/usr/lib/libc.sl -+ ;; -+ -+irix5* | irix6* | nonstopux*) -+ case $host_os in -+ irix5* | nonstopux*) -+ # this will be overridden with pass_all, but let us keep it just in case -+ lt_cv_deplibs_check_method="file_magic ELF 32-bit MSB dynamic lib MIPS - version 1" -+ ;; -+ *) -+ case $LD in -+ *-32|*"-32 ") libmagic=32-bit;; -+ *-n32|*"-n32 ") libmagic=N32;; -+ *-64|*"-64 ") libmagic=64-bit;; -+ *) libmagic=never-match;; -+ esac -+ # this will be overridden with pass_all, but let us keep it just in case -+ lt_cv_deplibs_check_method="file_magic ELF ${libmagic} MSB mips-[[1234]] dynamic lib MIPS - version 1" -+ ;; -+ esac -+ lt_cv_file_magic_test_file=`echo /lib${libsuff}/libc.so*` -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ -+# This must be Linux ELF. -+linux-gnu*) -+ case $host_cpu in -+ alpha* | hppa* | i*86 | mips | mipsel | powerpc* | sparc* | ia64* | arm* | m68k) -+ lt_cv_deplibs_check_method=pass_all ;; -+ *) -+ # glibc up to 2.1.1 does not perform some relocations on ARM -+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' ;; -+ esac -+ lt_cv_file_magic_test_file=`echo /lib/libc.so* /lib/libc-*.so` -+ ;; -+ -+netbsd*) -+ if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then -+ lt_cv_deplibs_check_method='match_pattern /lib[[^/\.]]+\.so\.[[0-9]]+\.[[0-9]]+$' -+ else -+ lt_cv_deplibs_check_method='match_pattern /lib[[^/\.]]+\.so$' -+ fi -+ ;; -+ -+newos6*) -+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)' -+ lt_cv_file_magic_cmd=/usr/bin/file -+ lt_cv_file_magic_test_file=/usr/lib/libnls.so -+ ;; -+ -+openbsd*) -+ lt_cv_file_magic_cmd=/usr/bin/file -+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` -+ if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then -+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB shared object' -+ else -+ lt_cv_deplibs_check_method='file_magic OpenBSD.* shared library' -+ fi -+ ;; -+ -+osf3* | osf4* | osf5*) -+ # this will be overridden with pass_all, but let us keep it just in case -+ lt_cv_deplibs_check_method='file_magic COFF format alpha shared library' -+ lt_cv_file_magic_test_file=/shlib/libc.so -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ -+sco3.2v5*) -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ -+solaris*) -+ lt_cv_deplibs_check_method=pass_all -+ lt_cv_file_magic_test_file=/lib/libc.so -+ ;; -+ -+sysv5uw[[78]]* | sysv4*uw2*) -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ -+sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) -+ case $host_vendor in -+ motorola) -+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]' -+ lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` -+ ;; -+ ncr) -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ sequent) -+ lt_cv_file_magic_cmd='/bin/file' -+ lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' -+ ;; -+ sni) -+ lt_cv_file_magic_cmd='/bin/file' -+ lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib" -+ lt_cv_file_magic_test_file=/lib/libc.so -+ ;; -+ siemens) -+ lt_cv_deplibs_check_method=pass_all -+ ;; -+ esac -+ ;; -+esac -+]) -+file_magic_cmd=$lt_cv_file_magic_cmd -+deplibs_check_method=$lt_cv_deplibs_check_method - ]) - -+ - # AC_PROG_NM - find the path to a BSD-compatible name lister --AC_DEFUN(AC_PROG_NM, --[AC_MSG_CHECKING([for BSD-compatible nm]) --AC_CACHE_VAL(ac_cv_path_NM, -+AC_DEFUN([AC_PROG_NM], -+[AC_REQUIRE([_LT_AC_LIBTOOL_SYS_PATH_SEPARATOR])dnl -+AC_MSG_CHECKING([for BSD-compatible nm]) -+AC_CACHE_VAL(lt_cv_path_NM, - [if test -n "$NM"; then - # Let the user override the test. -- ac_cv_path_NM="$NM" -+ lt_cv_path_NM="$NM" - else -- IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" -+ IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS=$PATH_SEPARATOR - for ac_dir in $PATH /usr/ccs/bin /usr/ucb /bin; do - test -z "$ac_dir" && ac_dir=. -- if test -f $ac_dir/nm || test -f $ac_dir/nm$ac_exeext ; then -+ tmp_nm=$ac_dir/${ac_tool_prefix}nm -+ if test -f $tmp_nm || test -f $tmp_nm$ac_exeext ; then - # Check to see if the nm accepts a BSD-compat flag. - # Adding the `sed 1q' prevents false positives on HP-UX, which says: - # nm: unknown option "B" ignored -- if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then -- ac_cv_path_NM="$ac_dir/nm -B" -+ # Tru64's nm complains that /dev/null is an invalid object file -+ if ($tmp_nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep '(/dev/null|Invalid file or object type)' >/dev/null; then -+ lt_cv_path_NM="$tmp_nm -B" - break -- elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then -- ac_cv_path_NM="$ac_dir/nm -p" -+ elif ($tmp_nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then -+ lt_cv_path_NM="$tmp_nm -p" - break - else -- ac_cv_path_NM=${ac_cv_path_NM="$ac_dir/nm"} # keep the first match, but -+ lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but - continue # so that we can try to find one that supports BSD flags - fi - fi - done - IFS="$ac_save_ifs" -- test -z "$ac_cv_path_NM" && ac_cv_path_NM=nm -+ test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm - fi]) --NM="$ac_cv_path_NM" -+NM="$lt_cv_path_NM" - AC_MSG_RESULT([$NM]) - ]) - - # AC_CHECK_LIBM - check for math library --AC_DEFUN(AC_CHECK_LIBM, -+AC_DEFUN([AC_CHECK_LIBM], - [AC_REQUIRE([AC_CANONICAL_HOST])dnl - LIBM= --case "$lt_target" in --*-*-beos* | *-*-cygwin*) -+case $host in -+*-*-beos* | *-*-cygwin* | *-*-pw32*) - # These system don't have libm - ;; - *-ncr-sysv4.3*) -@@ -371,37 +3558,41 @@ - ]) - - # AC_LIBLTDL_CONVENIENCE[(dir)] - sets LIBLTDL to the link flags for --# the libltdl convenience library and INCLTDL to the include flags for -+# the libltdl convenience library and LTDLINCL to the include flags for - # the libltdl header and adds --enable-ltdl-convenience to the --# configure arguments. Note that LIBLTDL and INCLTDL are not -+# configure arguments. Note that LIBLTDL and LTDLINCL are not - # AC_SUBSTed, nor is AC_CONFIG_SUBDIRS called. If DIR is not - # provided, it is assumed to be `libltdl'. LIBLTDL will be prefixed --# with '${top_builddir}/' and INCLTDL will be prefixed with -+# with '${top_builddir}/' and LTDLINCL will be prefixed with - # '${top_srcdir}/' (note the single quotes!). If your package is not - # flat and you're not using automake, define top_builddir and - # top_srcdir appropriately in the Makefiles. --AC_DEFUN(AC_LIBLTDL_CONVENIENCE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -- case "$enable_ltdl_convenience" in -+AC_DEFUN([AC_LIBLTDL_CONVENIENCE], -+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -+ case $enable_ltdl_convenience in - no) AC_MSG_ERROR([this package needs a convenience libltdl]) ;; - "") enable_ltdl_convenience=yes - ac_configure_args="$ac_configure_args --enable-ltdl-convenience" ;; - esac - LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdlc.la -- INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) -+ LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) -+ # For backwards non-gettext consistent compatibility... -+ INCLTDL="$LTDLINCL" - ]) - - # AC_LIBLTDL_INSTALLABLE[(dir)] - sets LIBLTDL to the link flags for --# the libltdl installable library and INCLTDL to the include flags for -+# the libltdl installable library and LTDLINCL to the include flags for - # the libltdl header and adds --enable-ltdl-install to the configure --# arguments. Note that LIBLTDL and INCLTDL are not AC_SUBSTed, nor is -+# arguments. Note that LIBLTDL and LTDLINCL are not AC_SUBSTed, nor is - # AC_CONFIG_SUBDIRS called. If DIR is not provided and an installed - # libltdl is not found, it is assumed to be `libltdl'. LIBLTDL will --# be prefixed with '${top_builddir}/' and INCLTDL will be prefixed -+# be prefixed with '${top_builddir}/' and LTDLINCL will be prefixed - # with '${top_srcdir}/' (note the single quotes!). If your package is - # not flat and you're not using automake, define top_builddir and - # top_srcdir appropriately in the Makefiles. - # In the future, this macro may have to be called after AC_PROG_LIBTOOL. --AC_DEFUN(AC_LIBLTDL_INSTALLABLE, [AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl -+AC_DEFUN([AC_LIBLTDL_INSTALLABLE], -+[AC_BEFORE([$0],[AC_LIBTOOL_SETUP])dnl - AC_CHECK_LIB(ltdl, main, - [test x"$enable_ltdl_install" != xyes && enable_ltdl_install=no], - [if test x"$enable_ltdl_install" = xno; then -@@ -413,22 +3604,115 @@ - if test x"$enable_ltdl_install" = x"yes"; then - ac_configure_args="$ac_configure_args --enable-ltdl-install" - LIBLTDL='${top_builddir}/'ifelse($#,1,[$1],['libltdl'])/libltdl.la -- INCLTDL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) -+ LTDLINCL='-I${top_srcdir}/'ifelse($#,1,[$1],['libltdl']) - else - ac_configure_args="$ac_configure_args --enable-ltdl-install=no" - LIBLTDL="-lltdl" -- INCLTDL= -+ LTDLINCL= - fi -+ # For backwards non-gettext consistent compatibility... -+ INCLTDL="$LTDLINCL" - ]) - --dnl old names --AC_DEFUN(AM_PROG_LIBTOOL, [indir([AC_PROG_LIBTOOL])])dnl --AC_DEFUN(AM_ENABLE_SHARED, [indir([AC_ENABLE_SHARED], $@)])dnl --AC_DEFUN(AM_ENABLE_STATIC, [indir([AC_ENABLE_STATIC], $@)])dnl --AC_DEFUN(AM_DISABLE_SHARED, [indir([AC_DISABLE_SHARED], $@)])dnl --AC_DEFUN(AM_DISABLE_STATIC, [indir([AC_DISABLE_STATIC], $@)])dnl --AC_DEFUN(AM_PROG_LD, [indir([AC_PROG_LD])])dnl --AC_DEFUN(AM_PROG_NM, [indir([AC_PROG_NM])])dnl -+# old names -+AC_DEFUN([AM_PROG_LIBTOOL], [AC_PROG_LIBTOOL]) -+AC_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) -+AC_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) -+AC_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) -+AC_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) -+AC_DEFUN([AM_PROG_LD], [AC_PROG_LD]) -+AC_DEFUN([AM_PROG_NM], [AC_PROG_NM]) -+ -+# This is just to silence aclocal about the macro not being used -+ifelse([AC_DISABLE_FAST_INSTALL]) -+ -+############################################################ -+# NOTE: This macro has been submitted for inclusion into # -+# GNU Autoconf as AC_PROG_SED. When it is available in # -+# a released version of Autoconf we should remove this # -+# macro and use it instead. # -+############################################################ -+# LT_AC_PROG_SED -+# -------------- -+# Check for a fully-functional sed program, that truncates -+# as few characters as possible. Prefer GNU sed if found. -+AC_DEFUN([LT_AC_PROG_SED], -+[AC_MSG_CHECKING([for a sed that does not truncate output]) -+AC_CACHE_VAL(lt_cv_path_SED, -+[# Loop through the user's path and test for sed and gsed. -+# Then use that list of sed's as ones to test for truncation. -+as_executable_p="test -f" -+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR -+for as_dir in $PATH -+do -+ IFS=$as_save_IFS -+ test -z "$as_dir" && as_dir=. -+ for ac_prog in sed gsed; do -+ for ac_exec_ext in '' $ac_executable_extensions; do -+ if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then -+ _sed_list="$_sed_list $as_dir/$ac_prog$ac_exec_ext" -+ fi -+ done -+ done -+done - --dnl This is just to silence aclocal about the macro not being used --ifelse([AC_DISABLE_FAST_INSTALL])dnl -+ # Create a temporary directory, and hook for its removal unless debugging. -+$debug || -+{ -+ trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 -+ trap '{ (exit 1); exit 1; }' 1 2 13 15 -+} -+ -+# Create a (secure) tmp directory for tmp files. -+: ${TMPDIR=/tmp} -+{ -+ tmp=`(umask 077 && mktemp -d -q "$TMPDIR/sedXXXXXX") 2>/dev/null` && -+ test -n "$tmp" && test -d "$tmp" -+} || -+{ -+ tmp=$TMPDIR/sed$$-$RANDOM -+ (umask 077 && mkdir $tmp) -+} || -+{ -+ echo "$me: cannot create a temporary directory in $TMPDIR" >&2 -+ { (exit 1); exit 1; } -+} -+ _max=0 -+ _count=0 -+ # Add /usr/xpg4/bin/sed as it is typically found on Solaris -+ # along with /bin/sed that truncates output. -+ for _sed in $_sed_list /usr/xpg4/bin/sed; do -+ test ! -f ${_sed} && break -+ cat /dev/null > "$tmp/sed.in" -+ _count=0 -+ echo ${ECHO_N-$ac_n} "0123456789${ECHO_C-$ac_c}" >"$tmp/sed.in" -+ # Check for GNU sed and select it if it is found. -+ if "${_sed}" --version 2>&1 < /dev/null | egrep '(GNU)' > /dev/null; then -+ lt_cv_path_SED=${_sed} -+ break -+ fi -+ while true; do -+ cat "$tmp/sed.in" "$tmp/sed.in" >"$tmp/sed.tmp" -+ mv "$tmp/sed.tmp" "$tmp/sed.in" -+ cp "$tmp/sed.in" "$tmp/sed.nl" -+ echo >>"$tmp/sed.nl" -+ ${_sed} -e 's/a$//' < "$tmp/sed.nl" >"$tmp/sed.out" || break -+ cmp -s "$tmp/sed.out" "$tmp/sed.nl" || break -+ # 40000 chars as input seems more than enough -+ test $_count -gt 10 && break -+ _count=`expr $_count + 1` -+ if test $_count -gt $_max; then -+ _max=$_count -+ lt_cv_path_SED=$_sed -+ fi -+ done -+ done -+ rm -rf "$tmp" -+]) -+if test "X$SED" != "X"; then -+ lt_cv_path_SED=$SED -+else -+ SED=$lt_cv_path_SED -+fi -+AC_MSG_RESULT([$SED]) -+]) ---- recode-3.6.orig/i18n/el.po -+++ recode-3.6/i18n/el.po -@@ -70,9 +70,9 @@ - "along with this program; if not, write to the Free Software Foundation,\n" - "Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n" - msgstr "" --" \n" -+" \n" - "/ \n" --" GNU Free Software Foundation \n" -+" GNU Free Software Foundation \n" - " 2 ( ) .\n" - "\n" - " ,\n" -@@ -81,7 +81,7 @@ - " GNU General Public License .\n" - "\n" - " GNU\n" --" , Free Software Foundation,\n" -+" , Free Software Foundation,\n" - "Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n" - - # src/main.c:479 -@@ -92,21 +92,14 @@ - - # src/main.c:483 - #: src/main.c:237 --msgid "" --"Free `recode' converts files between various character sets and surfaces.\n" --msgstr "" --" `recode' " --" .\n" -+msgid "Free `recode' converts files between various character sets and surfaces.\n" -+msgstr " `recode' .\n" - - # src/main.c:486 - #: src/main.c:241 - #, c-format --msgid "" --"\n" --"Usage: %s [OPTION]... [ [CHARSET] | REQUEST [FILE]... ]\n" --msgstr "" --"\n" --": %s []... [ [Թ] | []...\n" -+msgid "\nUsage: %s [OPTION]... [ [CHARSET] | REQUEST [FILE]... ]\n" -+msgstr "\n: %s []... [ [Թ] | []...\n" - - # src/main.c:489 - #: src/main.c:244 -@@ -127,8 +120,7 @@ - "\n" - "Listings:\n" - " -l, --list[=FORMAT] list one or all known charsets and aliases\n" --" -k, --known=PAIRS restrict charsets according to known PAIRS " --"list\n" -+" -k, --known=PAIRS restrict charsets according to known PAIRS list\n" - " -h, --header[=[LN/]NAME] write table NAME on stdout using LN, then exit\n" - " -F, --freeze-tables write out a C module holding all tables\n" - " -T, --find-subsets report all charsets being subset of others\n" -@@ -140,8 +132,7 @@ - ":\n" - " -l, --list[=] \n" - " -k, --known= \n" --" . -h, " --"--header[=[LN/]] \n" -+" . -h, --header[=[LN/]] \n" - " LN, \n" - " -F, --freeze-tables C \n" - " -T, --find-subsets \n" -@@ -166,10 +157,8 @@ - " :\n" - " -v, --verbose \n" - " -q, --quiet, --silent - \n" --" -f, --force " --"\n" --" -t, --touch " --"\n" -+" -f, --force \n" -+" -t, --touch \n" - " \n" - " -i, --sequence=files \n" - " --sequence=memory \n" -@@ -198,17 +187,13 @@ - msgstr "" - "\n" - ":\n" --" -s, --strict , " --"\n" --" -d, --diacritics " --"HTML/LaTeX\n" -+" -s, --strict , \n" -+" -d, --diacritics HTML/LaTeX\n" - " -S, --source[=LN] \n" - " LN\n" --" -c, --colons " --"\n" -+" -c, --colons \n" - " -g, --graphics IBMPC ASCII \n" --" -x, --ignore= () " --" \n" -+" -x, --ignore= () \n" - - # src/main.c:294 - #: src/main.c:296 -@@ -226,8 +211,7 @@ - #: src/main.c:302 - #, fuzzy - msgid "" --"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the " --"locale\n" -+"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the locale\n" - "dependent encoding, determined by LC_ALL, LC_CTYPE, LANG.\n" - msgstr "" - " DEFAULT_CHARSET,\n" -@@ -237,8 +221,7 @@ - #: src/main.c:307 - msgid "" - "With -k, possible before charsets are listed for the given after CHARSET,\n" --"both being tabular charsets, with PAIRS of the form " --"`BEF1:AFT1,BEF2:AFT2,...'\n" -+"both being tabular charsets, with PAIRS of the form `BEF1:AFT1,BEF2:AFT2,...'\n" - "and BEFs and AFTs being codes are given as decimal numbers.\n" - msgstr "" - " -k, \n" -@@ -248,36 +231,26 @@ - - # src/main.c:318 - #: src/main.c:312 --msgid "" --"LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" --msgstr "" --"LN , `c', `perl' `po' ' " --"`c'.\n" -+msgid "LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" -+msgstr "LN , `c', `perl' `po' ' `c'.\n" - - # src/main.c:321 - #: src/main.c:315 - msgid "" - "\n" --"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is " --"ENCODING[..ENCODING]...\n" --"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like " --"BEFORE..AFTER,\n" -+"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is ENCODING[..ENCODING]...\n" -+"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like BEFORE..AFTER,\n" - "with BEFORE and AFTER being charsets. An omitted CHARSET implies the usual\n" --"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a " --"/\n" -+"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a /\n" - "with an empty surface name means no surfaces at all. See the manual.\n" - msgstr "" - "\n" --" [,]... " --"[...]...\n" --" [][/[]]... " --"...,\n" -+" [,]... [...]...\n" -+" [][/[]]... ...,\n" - " . \n" --" , " --"[/]...\n" --" , /\n" --" . " --".\n" -+" , [/]...\n" -+" , /\n" -+" . .\n" - - # src/main.c:556 - #: src/main.c:323 -@@ -288,20 +261,15 @@ - "FILE is specified, then act as a filter and recode stdin to stdout.\n" - msgstr "" - "\n" --" -i -p , -p , " --" -i.\n" -+" -i -p , -p , -i.\n" - " , .\n" - " , \n" - " .\n" - - # src/main.c:562 - #: src/main.c:329 --msgid "" --"\n" --"Report bugs to .\n" --msgstr "" --"\n" --" .\n" -+msgid "\nReport bugs to .\n" -+msgstr "\n .\n" - - #: src/main.c:430 - #, c-format -@@ -338,18 +306,12 @@ - #: src/main.c:621 - #, fuzzy - msgid "Written by Franc,ois Pinard .\n" --msgstr "" --"\n" --" Franc,ois Pinard .\n" -+msgstr "\n Franc,ois Pinard .\n" - - # src/main.c:622 - #: src/main.c:624 --msgid "" --"\n" --"Copyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" --msgstr "" --"\n" --"Copyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" -+msgid "\nCopyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" -+msgstr "\nCopyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" - - # src/main.c:850 - #: src/main.c:628 -@@ -357,9 +319,8 @@ - "This is free software; see the source for copying conditions. There is NO\n" - "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" - msgstr "" --" " --".\n" --" \n" -+" .\n" -+" \n" - " .\n" - - #: src/main.c:669 -@@ -426,9 +387,7 @@ - #: src/names.c:831 - #, c-format - msgid "Cannot list `%s', no names available for this charset" --msgstr "" --" `%s', " --" " -+msgstr " `%s', " - - # src/names.c:974 src/names.c:1020 - #. code counter -@@ -450,15 +409,13 @@ - #: src/outer.c:125 - #, c-format - msgid "Resurfacer set more than once for `%s'" --msgstr "" --" `%s'" -+msgstr " `%s'" - - # src/outer.c:102 - #: src/outer.c:133 - #, c-format - msgid "Unsurfacer set more than once for `%s'" --msgstr "" --" `%s'" -+msgstr " `%s'" - - # src/recode.c:117 src/recode.c:129 - #: src/recode.c:115 src/recode.c:127 -@@ -467,13 +424,13 @@ - - # src/recode.c:157 - #: src/recode.c:155 --#, c-format, ycp-format -+#, c-format - msgid "Codes %3d and %3d both recode to %3d" - msgstr " %3d %3d %3d" - - # src/recode.c:171 - #: src/recode.c:169 --#, c-format, ycp-format -+#, c-format - msgid "No character recodes to %3d" - msgstr " %3d" - -@@ -615,43 +572,39 @@ - - # src/debug.c:287 - #: src/testdump.c:298 --msgid "" --"UCS2 Mne Description\n" --"\n" --msgstr "" --"UCS2 Mne \n" --"\n" -+msgid "UCS2 Mne Description\n\n" -+msgstr "UCS2 Mne \n\n" - --# src/main.c:308 -+#~ # src/main.c:308 - #~ msgid "CHARSET has no default, define DEFAULT_CHARSET in the environment.\n" - #~ msgstr "" - #~ "O ( CHARSET) ' ,\n" - #~ " DEFAULT_CHARSET.\n" - --# src/main.c:659 -+#~ # src/main.c:659 - #~ msgid "Ambiguous sequence `%s'" - #~ msgstr " `%s'" - --# src/main.c:663 -+#~ # src/main.c:663 - #~ msgid "Unknown sequence `%s'" - #~ msgstr " `%s'" - --# src/main.c:693 src/main.c:747 -+#~ # src/main.c:693 src/main.c:747 - #~ msgid "Ambiguous language `%s'" - #~ msgstr " `%s'" - --# src/main.c:697 src/main.c:751 -+#~ # src/main.c:697 src/main.c:751 - #~ msgid "Unknown language `%s'" - #~ msgstr " `%s'" - --# src/main.c:785 -+#~ # src/main.c:785 - #~ msgid "Ambiguous format `%s'" - #~ msgstr " `%s'" - --# src/main.c:789 -+#~ # src/main.c:789 - #~ msgid "Unknown format `%s'" - #~ msgstr " `%s'" - --# src/main.c:1005 -+#~ # src/main.c:1005 - #~ msgid "Erroneous request `%s'" - #~ msgstr " `%s'" ---- recode-3.6.orig/i18n/id.po -+++ recode-3.6/i18n/id.po -@@ -0,0 +1,511 @@ -+# recode 3.6 (Indonesian) -+# Copyright (C) 2001 Free Software Foundation, Inc. -+# Tedi Heriyanto , 2002 -+# -+msgid "" -+msgstr "" -+"Project-Id-Version: recode 3.6\n" -+"POT-Creation-Date: 2001-01-02 22:35+0100\n" -+"PO-Revision-Date: 2002-10-08 14:29GMT+0700\n" -+"Last-Translator: Tedi Heriyanto \n" -+"Language-Team: Indonesian \n" -+"MIME-Version: 1.0\n" -+"Content-Type: text/plain; charset=UTF-8\n" -+"Content-Transfer-Encoding: 8bit\n" -+"X-Generator: KBabel 0.9.5\n" -+ -+#: src/main.c:142 -+msgid "No error" -+msgstr "Tidak ada kesalahan" -+ -+#: src/main.c:145 -+msgid "Non canonical input" -+msgstr "Input non kanonikal" -+ -+#: src/main.c:148 -+msgid "Ambiguous output" -+msgstr "Output ambigu" -+ -+#: src/main.c:151 -+msgid "Untranslatable input" -+msgstr "Input tak dapat diterjemahkan" -+ -+#: src/main.c:154 -+msgid "Invalid input" -+msgstr "Input tidak valid" -+ -+#: src/main.c:157 -+msgid "System detected problem" -+msgstr "Sistem mendeteksi masalah" -+ -+#: src/main.c:160 -+msgid "Misuse of recoding library" -+msgstr "Kesalahan penggunaan library recoding" -+ -+#: src/main.c:163 -+msgid "Internal recoding bug" -+msgstr "Bug recoding internal" -+ -+#: src/main.c:208 -+msgid "" -+"This program is free software; you can redistribute it and/or modify\n" -+"it under the terms of the GNU General Public License as published by\n" -+"the Free Software Foundation; either version 2, or (at your option)\n" -+"any later version.\n" -+"\n" -+"This program is distributed in the hope that it will be useful,\n" -+"but WITHOUT ANY WARRANTY; without even the implied warranty of\n" -+"MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" -+"GNU General Public License for more details.\n" -+"\n" -+"You should have received a copy of the GNU General Public License\n" -+"along with this program; if not, write to the Free Software Foundation,\n" -+"Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n" -+msgstr "" -+"This program is free software; you can redistribute it and/or modify\n" -+"it under the terms of the GNU General Public License as published by\n" -+"the Free Software Foundation; either version 2, or (at your option)\n" -+"any later version.\n" -+"\n" -+"This program is distributed in the hope that it will be useful,\n" -+"but WITHOUT ANY WARRANTY; without even the implied warranty of\n" -+"MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" -+"GNU General Public License for more details.\n" -+"\n" -+"You should have received a copy of the GNU General Public License\n" -+"along with this program; if not, write to the Free Software Foundation,\n" -+"Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n" -+ -+#: src/main.c:233 -+#, c-format -+msgid "Try `%s %s' for more information.\n" -+msgstr "Coba `%s %s' untuk informasi lengkap.\n" -+ -+#: src/main.c:237 -+msgid "Free `recode' converts files between various character sets and surfaces.\n" -+msgstr "Free `recode' mengkonversi file antar berbagai set karakter dan permukaan.\n" -+ -+#: src/main.c:241 -+#, c-format -+msgid "" -+"\n" -+"Usage: %s [OPTION]... [ [CHARSET] | REQUEST [FILE]... ]\n" -+msgstr "" -+"\n" -+"Usage: %s [OPTION]... [ [CHARSET] | REQUEST [FILE]... ]\n" -+ -+#: src/main.c:244 -+msgid "" -+"\n" -+"If a long option shows an argument as mandatory, then it is mandatory\n" -+"for the equivalent short option also. Similarly for optional arguments.\n" -+msgstr "" -+"\n" -+"Jika sebuah option long menunjukkan argumen sebagai mandatori, maka ia mandatori\n" -+"juga option short yang ekivalen. Demikian pula untuk argumen optional.\n" -+ -+#: src/main.c:250 -+msgid "" -+"\n" -+"Listings:\n" -+" -l, --list[=FORMAT] list one or all known charsets and aliases\n" -+" -k, --known=PAIRS restrict charsets according to known PAIRS list\n" -+" -h, --header[=[LN/]NAME] write table NAME on stdout using LN, then exit\n" -+" -F, --freeze-tables write out a C module holding all tables\n" -+" -T, --find-subsets report all charsets being subset of others\n" -+" -C, --copyright display Copyright and copying conditions\n" -+" --help display this help and exit\n" -+" --version output version information and exit\n" -+msgstr "" -+"\n" -+"Listings:\n" -+" -l, --list[=FORMAT] tampilkan satu atau semua charset dan alias yang dikenal\n" -+" -k, --known=PAIRS batasi charset sesuai daftar PAIRS yang dikenal\n" -+" -h, --header[=[LN/]NAME] tulis tabel NAME ke stdout menggunakan LN, kemudian keluar\n" -+" -F, --freeze-tables tulis sebuah modul C yang menyimpan semua tabel\n" -+" -T, --find-subsets laporkan semua charset yang menjadi subset yang lain\n" -+" -C, --copyright tampilkan kondisi Copyright dan copying\n" -+" --help tampilkan bantuan ini dan keluar\n" -+" --version tampilkan informasi versi dan keluar\n" -+ -+#: src/main.c:263 -+msgid "" -+"\n" -+"Operation modes:\n" -+" -v, --verbose explain sequence of steps and report progress\n" -+" -q, --quiet, --silent inhibit messages about irreversible recodings\n" -+" -f, --force force recodings even when not reversible\n" -+" -t, --touch touch the recoded files after replacement\n" -+" -i, --sequence=files use intermediate files for sequencing passes\n" -+" --sequence=memory use memory buffers for sequencing passes\n" -+msgstr "" -+"\n" -+"Mode operasi:\n" -+" -v, --verbose jelaskan urutan langkah dan laporkan kemajuan\n" -+" -q, --quiet, --silent tiadakan pesan tentang recoding yang tidak dapat dikembalikan\n" -+" -f, --force paksa recoding bahkan bila tidak dapat dikembalikan\n" -+" -t, --touch touch file ter-recoded setelah penggantian\n" -+" -i, --sequence=files gunakan file perantara untuk urutan pelewatan\n" -+" --sequence=memory gunakan buffer memori untuk urutan pelewatan\n" -+ -+#: src/main.c:275 -+msgid " -p, --sequence=pipe use pipe machinery for sequencing passes\n" -+msgstr " -p, --sequence=pipe gunakan mesin pipa untuk urutan pelewatan\n" -+ -+#: src/main.c:280 -+msgid " -p, --sequence=pipe same as -i (on this system)\n" -+msgstr " -p, --sequence=pipe sama seperti -i (pada sistem ini)\n" -+ -+#: src/main.c:285 -+msgid "" -+"\n" -+"Fine tuning:\n" -+" -s, --strict use strict mappings, even loose characters\n" -+" -d, --diacritics convert only diacritics or alike for HTML/LaTeX\n" -+" -S, --source[=LN] limit recoding to strings and comments as for LN\n" -+" -c, --colons use colons instead of double quotes for diaeresis\n" -+" -g, --graphics approximate IBMPC rulers by ASCII graphics\n" -+" -x, --ignore=CHARSET ignore CHARSET while choosing a recoding path\n" -+msgstr "" -+"\n" -+"Fine tuning:\n" -+" -s, --strict gunakan mapping yang ketat, bahkan hilangkan karakter\n" -+" -d, --diacritics konversi hanya diacritics atau yang serupa untuk HTML/LaTeX\n" -+" -S, --source[=LN] batasi recoding untuk string dan komentar sama seperti LN\n" -+" -c, --colons gunakan titik koma alih-alih kuotasi ganda untuk diaeresis\n" -+" -g, --graphics dekati penggaris IBMPC dengan grafik ASCII\n" -+" -x, --ignore=CHARSET abatikan CHARSET saat memilih jalur recoding\n" -+ -+#: src/main.c:296 -+msgid "" -+"\n" -+"Option -l with no FORMAT nor CHARSET list available charsets and surfaces.\n" -+"FORMAT is `decimal', `octal', `hexadecimal' or `full' (or one of `dohf').\n" -+msgstr "" -+"\n" -+"Option -l with no FORMAT nor CHARSET list available charsets and surfaces.\n" -+"FORMAT adalah `decimal', `octal', `hexadecimal' atau `full' (atau satu `dohf').\n" -+ -+#: src/main.c:302 -+msgid "" -+"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the locale\n" -+"dependent encoding, determined by LC_ALL, LC_CTYPE, LANG.\n" -+msgstr "" -+"Kecuali DEFAULT_CHARSET diset dalam environment, CHARSET bakunya adalah lokal\n" -+"tergantung enkoding, yang ditentukan oleh LC_ALL, LC_CTYPE, LANG.\n" -+ -+#: src/main.c:307 -+msgid "" -+"With -k, possible before charsets are listed for the given after CHARSET,\n" -+"both being tabular charsets, with PAIRS of the form `BEF1:AFT1,BEF2:AFT2,...'\n" -+"and BEFs and AFTs being codes are given as decimal numbers.\n" -+msgstr "" -+"Dengan -k, yang mungkin sebelum charset ditampilkan setelah CHARSET,\n" -+"keduanya charset tabular, dengan PAIRS dalam bentuk `BEF1:AFT1,BEF2:AFT2,...'\n" -+"dan BEF dan AFT adalah kode yang diberikan dalam bilangan desimal.\n" -+ -+#: src/main.c:312 -+msgid "LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" -+msgstr "LN adalah bahasa, mungkin berupa `c', `perl' atau `po'; `c' adalah bakunya.\n" -+ -+#: src/main.c:315 -+msgid "" -+"\n" -+"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is ENCODING[..ENCODING]...\n" -+"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like BEFORE..AFTER,\n" -+"with BEFORE and AFTER being charsets. An omitted CHARSET implies the usual\n" -+"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a /\n" -+"with an empty surface name means no surfaces at all. See the manual.\n" -+msgstr "" -+"\n" -+"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is ENCODING[..ENCODING]...\n" -+"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like BEFORE..AFTER,\n" -+"with BEFORE and AFTER being charsets. An omitted CHARSET implies the usual\n" -+"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a /\n" -+"with an empty surface name means no surfaces at all. See the manual.\n" -+ -+#: src/main.c:323 -+msgid "" -+"\n" -+"If none of -i and -p are given, presume -p if no FILE, else -i.\n" -+"Each FILE is recoded over itself, destroying the original. If no\n" -+"FILE is specified, then act as a filter and recode stdin to stdout.\n" -+msgstr "" -+"\n" -+"Jika tidak diberikan -i dan -p, asumsikan -p jika tidak ada FILE, sebaliknya -i.\n" -+"Setiap FILE direcode dengan dirinya, menghancurkan aslinya. Jika tidak dispesifikasikan\n" -+"FILE, maka berfungsi sebagai filter dan recode stdin ke stdout.\n" -+ -+#: src/main.c:329 -+msgid "" -+"\n" -+"Report bugs to .\n" -+msgstr "" -+"\n" -+"Report bugs to .\n" -+ -+#: src/main.c:430 -+#, c-format -+msgid "Sequence `%s' is ambiguous" -+msgstr "Urutan `%s' ambigu" -+ -+#: src/main.c:434 -+#, c-format -+msgid "Sequence `%s' is unknown" -+msgstr "Urutan `%s' tidak dikenal" -+ -+#: src/main.c:464 src/main.c:522 -+#, c-format -+msgid "Language `%s' is ambiguous" -+msgstr "Bahasa `%s' ambigu" -+ -+#. -1 -+#: src/main.c:468 src/main.c:526 -+#, c-format -+msgid "Language `%s' is unknown" -+msgstr "Bahasa `%s' tidak dikenal" -+ -+#: src/main.c:560 -+#, c-format -+msgid "Format `%s' is ambiguous" -+msgstr "Format `%s' ambigu" -+ -+#: src/main.c:564 -+#, c-format -+msgid "Format `%s' is unknown" -+msgstr "Format `%s' tidak dikenal" -+ -+#: src/main.c:621 -+msgid "Written by Franc,ois Pinard .\n" -+msgstr "Ditulis oleh Franc,ois Pinard .\n" -+ -+#: src/main.c:624 -+msgid "" -+"\n" -+"Copyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" -+msgstr "" -+"\n" -+"Copyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" -+ -+#: src/main.c:628 -+msgid "" -+"This is free software; see the source for copying conditions. There is NO\n" -+"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" -+msgstr "" -+"This is free software; see the source for copying conditions. There is NO\n" -+"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" -+ -+#: src/main.c:669 -+#, c-format -+msgid "Symbol `%s' is unknown" -+msgstr "Simbol `%s' tidak dikenal" -+ -+#: src/main.c:709 src/main.c:723 -+#, c-format -+msgid "Charset `%s' is unknown or ambiguous" -+msgstr "Charset `%s' tidak dikenal atau ambigu" -+ -+#: src/main.c:754 -+msgid "Required argument is missing" -+msgstr "Argumen yang dibutuhkan hilang" -+ -+#: src/main.c:797 -+#, c-format -+msgid "Syntax is deprecated, please prefer `%s'" -+msgstr "Sintaks tidak digunakan lagi, silakan pilih `%s'" -+ -+#: src/main.c:803 -+#, c-format -+msgid "Request `%s' is erroneous" -+msgstr "Permintaan `%s' salah" -+ -+#: src/main.c:903 -+#, c-format -+msgid "Recoding %s..." -+msgstr "Merecoding %s..." -+ -+#: src/main.c:913 -+msgid " done\n" -+msgstr " selesai\n" -+ -+#: src/main.c:954 -+#, c-format -+msgid " failed: %s in step `%s..%s'\n" -+msgstr " gagal: %s di langkah `%s..%s'\n" -+ -+#: src/main.c:961 -+#, c-format -+msgid "%s failed: %s in step `%s..%s'" -+msgstr "%s gagal: %s di langkah `%s..%s'" -+ -+#: src/main.c:984 -+#, c-format -+msgid "%s in step `%s..%s'" -+msgstr "%s di langkah `%s..%s'" -+ -+#: src/names.c:335 -+#, c-format -+msgid "Charset %s already exists and is not %s" -+msgstr "Charset %s sudah ada dan bukan %s" -+ -+#: src/names.c:831 -+#, c-format -+msgid "Cannot list `%s', no names available for this charset" -+msgstr "Tidak dapat medaftarkan `%s', tidak ada nama yang tersedia untuk charset ini" -+ -+#. code counter -+#. expected value for code counter -+#. insert a while line before printing -+#. Print the long table according to explode data. -+#: src/names.c:984 src/names.c:1030 -+#, c-format -+msgid "Dec Oct Hex UCS2 Mne %s\n" -+msgstr "Dec Oct Hex UCS2 Mne %s\n" -+ -+#: src/names.c:1049 -+#, c-format -+msgid "Sorry, no names available for `%s'" -+msgstr "Maaf, tidak ada tersedia untuk `%s'" -+ -+#: src/outer.c:125 -+#, c-format -+msgid "Resurfacer set more than once for `%s'" -+msgstr "Resurfacer set lebih dari satu untuk `%s'" -+ -+#: src/outer.c:133 -+#, c-format -+msgid "Unsurfacer set more than once for `%s'" -+msgstr "Unsurfacer set lebih dari satu untuk `%s'" -+ -+#: src/recode.c:115 src/recode.c:127 -+msgid "Virtual memory exhausted" -+msgstr "Memori virtual habis" -+ -+#: src/recode.c:155 -+#, c-format, ycp-format -+msgid "Codes %3d and %3d both recode to %3d" -+msgstr "Kode %3d dan %3d kedua direcode ke %3d" -+ -+#: src/recode.c:169 -+#, c-format, ycp-format -+msgid "No character recodes to %3d" -+msgstr "Tidak ada karakter recode ke %3d" -+ -+#: src/recode.c:170 -+msgid "Cannot invert given one-to-one table" -+msgstr "Tidak dapat membalik saat diberikan tabel satu-ke-satu" -+ -+#: src/recode.c:224 src/recode.c:236 -+#, c-format -+msgid "Following diagnostics for `%s' to `%s'" -+msgstr "Berikut ini diagnostik untuk `%s' ke `%s'" -+ -+#: src/recode.c:229 src/recode.c:241 -+#, c-format -+msgid "Pair no. %d: <%3d, %3d> conflicts with <%3d, %3d>" -+msgstr "Pasangan no %d: <%3d,%3d> konflik dengan <%3d, %3d>" -+ -+#: src/recode.c:272 -+msgid "Cannot complete table from set of known pairs" -+msgstr "Tidak dapat menyelesaikan tabel dari sejumlah pasangan dikenal" -+ -+#: src/recode.c:497 -+msgid "Identity recoding, not worth a table" -+msgstr "Recoding identitas, tidak perlu tabel" -+ -+#: src/recode.c:504 -+msgid "Recoding is too complex for a mere table" -+msgstr "Recoding terlalu kompleks untuk tabel" -+ -+#. Print the header of the header file. -+#: src/recode.c:536 -+#, c-format -+msgid "%sConversion table generated mechanically by Free `%s' %s" -+msgstr "%sTabel konversi dihasilkan secara mekanis dengan Free `%s' %s" -+ -+#: src/recode.c:538 -+#, c-format -+msgid "%sfor sequence %s.%s" -+msgstr "%suntuk urutan %s.%s" -+ -+#: src/recode.c:744 -+msgid "No table to print" -+msgstr "Tidak ada tabel untuk dicetak" -+ -+#: src/request.c:34 -+msgid "reversible" -+msgstr "dapat dikembalikan" -+ -+#: src/request.c:36 -+#, c-format -+msgid "%s to %s" -+msgstr "%s ke %s" -+ -+#: src/request.c:37 src/request.c:39 -+msgid "byte" -+msgstr "byte" -+ -+#: src/request.c:38 src/request.c:40 -+msgid "ucs2" -+msgstr "ucs2" -+ -+#: src/request.c:38 src/request.c:40 -+msgid "variable" -+msgstr "variabel" -+ -+#: src/request.c:111 -+msgid "*Unachievable*" -+msgstr "*Tidak dapat dicapai*" -+ -+#: src/request.c:113 -+msgid "*mere copy*" -+msgstr "*mere copy*" -+ -+#: src/request.c:246 -+msgid "Virtual memory exhausted!" -+msgstr "Memori virtual habis!" -+ -+#: src/request.c:265 -+msgid "Step initialisation failed" -+msgstr "Gagal langkah inisialisasi" -+ -+#: src/request.c:272 -+msgid "Step initialisation failed (unprocessed options)" -+msgstr "Gagal langkah inisialisasi (option tidak diproses)" -+ -+#: src/request.c:568 -+#, c-format -+msgid "Request: %s\n" -+msgstr "Permintaan: %s\n" -+ -+#: src/request.c:720 -+#, c-format -+msgid "Shrunk to: %s\n" -+msgstr "Diperkecil jadi: %s\n" -+ -+#: src/request.c:823 src/request.c:932 -+#, c-format -+msgid "Unrecognised surface name `%s'" -+msgstr "Nama surface tidak dikenal `%s'" -+ -+#: src/request.c:903 -+#, c-format -+msgid "No way to recode from `%s' to `%s'" -+msgstr "Tidak ada cara merecode dari `%s' ke `%s'" -+ -+#: src/request.c:1013 -+msgid "Expecting `..' in request" -+msgstr "Mengharapkan `..' dalam permintaan" -+ -+#: src/task.c:826 src/task.c:1002 -+#, c-format -+msgid "Child process wait status is 0x%0.2x" -+msgstr "Status tunggu proses anak adalah 0x%0.2x" -+ -+#: src/testdump.c:298 -+msgid "" -+"UCS2 Mne Description\n" -+"\n" -+msgstr "" -+"UCS2 Mne Description\n" -+"\n" ---- recode-3.6.orig/i18n/nl.po -+++ recode-3.6/i18n/nl.po -@@ -1,50 +1,54 @@ --# Dutch messages for GNU recode. --# Copyright (C) 1996 Free Software Foundation, Inc. --# Erick Branderhorst , 1996. -+# Translation of recode-3.6 to Dutch. -+# Copyright (C) 1996, 2004, 2005, 2006 Free Software Foundation, Inc. -+# This file is distributed under the same license as the recode package. -+# Erick Branderhorst , 1996 -+# Taco Witte , 2004, 2005. -+# Benno Schulenberg , 2006, 2007 - # - msgid "" - msgstr "" --"Project-Id-Version: recode 3.4.2\n" -+"Project-Id-Version: recode 3.6\n" -+"Report-Msgid-Bugs-To: \n" - "POT-Creation-Date: 2001-01-02 22:35+0100\n" --"PO-Revision-Date: 1996-10-07 10:05 MET DST\n" --"Last-Translator: Erick Branderhorst \n" --"Language-Team: Dutch \n" -+"PO-Revision-Date: 2007-06-28 19:55+0200\n" -+"Last-Translator: Benno Schulenberg \n" -+"Language-Team: Dutch \n" - "MIME-Version: 1.0\n" --"Content-Type: text/plain; charset=ISO-8859-1\n" --"Content-Transfer-Encoding: 8-bit\n" -+"Content-Type: text/plain; charset=UTF-8\n" -+"Content-Transfer-Encoding: 8bit\n" -+"X-Generator: KBabel 1.11\n" - - #: src/main.c:142 - msgid "No error" --msgstr "" -+msgstr "Geen fout" - - #: src/main.c:145 - msgid "Non canonical input" --msgstr "" -+msgstr "Niet-canonieke invoer" - - #: src/main.c:148 --#, fuzzy - msgid "Ambiguous output" --msgstr "Dubbelzinnig format `%s'" -+msgstr "Niet-eenduidige uitvoer" - - #: src/main.c:151 - msgid "Untranslatable input" --msgstr "" -+msgstr "Onvertaalbare invoer" - - #: src/main.c:154 - msgid "Invalid input" --msgstr "" -+msgstr "Ongeldige invoer" - - #: src/main.c:157 - msgid "System detected problem" --msgstr "" -+msgstr "Systeem heeft fout gevonden" - - #: src/main.c:160 - msgid "Misuse of recoding library" --msgstr "" -+msgstr "Verkeerd gebruik van hercoderings-bibliotheek" - - #: src/main.c:163 - msgid "Internal recoding bug" --msgstr "" -+msgstr "Interne fout bij hercoderen" - - #: src/main.c:208 - msgid "" -@@ -62,38 +66,38 @@ - "along with this program; if not, write to the Free Software Foundation,\n" - "Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n" - msgstr "" --"Dit programma is vrije software; het mag gedistribueerd en/of\n" --"veranderd worden onder de voorwaarden van de GNU General Public\n" --"License zoals gepubliceerd door de Free Software Foundation; versie 2,\n" --"of (als je daar voor kiest) enig latere versie.\n" --"\n" --"Dit programma is gedistribueerd in de hoop dat het bruikbaar is, maar\n" --"ZONDER ENIGE GARANTIE; zelfs zonder de geompliceerde garantie van\n" --"MERCHANTABILITY of GESCHIKTHEID VOOR EEN SPECIFIEK GEBRUIKSDOEL. Zie\n" --"de GNU General Public License voor verdere details.\n" --"\n" --"Samen met dit programma heb je een copie ontvangen van de GNU General\n" --"Public License; zo niet, schrijf dan naar de Free Software Foundation,\n" --"Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n" -+"Dit programma is vrije software; u mag het verder verspreiden en/of\n" -+"wijzigen onder de voorwaarden van de GNU General Public License zoals\n" -+"gepubliceerd door de Free Software Foundation, naar keuze ofwel onder\n" -+"versie 2 ofwel onder een nieuwere versie van die licentie.\n" -+"\n" -+"Dit programma wordt uitgegeven in de hoop dat het nuttig is,\n" -+"maar ZONDER ENIGE GARANTIE; zelfs zonder de impliciete garantie\n" -+"van VERKOOPBAARHEID of GESCHIKTHEID VOOR EEN BEPAALD DOEL.\n" -+"Zie de GNU General Public License voor meer details.\n" -+"\n" -+"Bij dit programma hoort u een kopie van de GNU General Public License\n" -+"ontvangen te hebben; is dit niet het geval, schrijf dan naar\n" -+"Free Software Foundation, Inc., 51 Franklin Street, fifth floor,\n" -+"Boston, MA 02110-1301, USA.\n" - - #: src/main.c:233 - #, c-format - msgid "Try `%s %s' for more information.\n" --msgstr "Probeer `%s %s' voor meer informatie.\n" -+msgstr "Probeer '%s %s' voor meer informatie.\n" - - #: src/main.c:237 --msgid "" --"Free `recode' converts files between various character sets and surfaces.\n" --msgstr "" -+msgid "Free `recode' converts files between various character sets and surfaces.\n" -+msgstr "'recode' converteert bestanden van en naar allerlei tekensets en oppervlakken.\n" - - #: src/main.c:241 --#, fuzzy, c-format -+#, c-format - msgid "" - "\n" - "Usage: %s [OPTION]... [ [CHARSET] | REQUEST [FILE]... ]\n" - msgstr "" - "\n" --"Gebruik: %s [OPTIE]... [KARAKTERSET]\n" -+"Gebruik: %s [OPTIE]... [ [TEKENSET] | VERZOEK [BESTAND]... ]\n" - - #: src/main.c:244 - msgid "" -@@ -101,14 +105,16 @@ - "If a long option shows an argument as mandatory, then it is mandatory\n" - "for the equivalent short option also. Similarly for optional arguments.\n" - msgstr "" -+"\n" -+"Een argument dat verplicht of optioneel is voor een lange optie, is dat\n" -+"ook voor de overeenkomstige korte optie.\n" - - #: src/main.c:250 - msgid "" - "\n" - "Listings:\n" - " -l, --list[=FORMAT] list one or all known charsets and aliases\n" --" -k, --known=PAIRS restrict charsets according to known PAIRS " --"list\n" -+" -k, --known=PAIRS restrict charsets according to known PAIRS list\n" - " -h, --header[=[LN/]NAME] write table NAME on stdout using LN, then exit\n" - " -F, --freeze-tables write out a C module holding all tables\n" - " -T, --find-subsets report all charsets being subset of others\n" -@@ -116,6 +122,19 @@ - " --help display this help and exit\n" - " --version output version information and exit\n" - msgstr "" -+"\n" -+"Opsommingen:\n" -+" -l, --list[=PRESENTATIE] alle bekende tekensets en aliassen opsommen,\n" -+" of een tekenset in tabelvorm presenteren\n" -+" -k, --known=PAREN opsomming beperken volgens deze bekende PAREN\n" -+" -h, --header[=[TL/]NAAM] tabel NAAM naar standaarduitvoer schrijven\n" -+" (in taal TL) en stoppen\n" -+" -F, --freeze-tables een C-module schrijven die alle tabellen bevat\n" -+" -T, --find-subsets alle tekensets opsommen die deelverzameling van\n" -+" anderen zijn\n" -+" -C, --copyright auteursrecht en kopieervoorwaarden tonen\n" -+" --help deze hulptekst tonen en stoppen\n" -+" --version versie-informatie tonen en stoppen\n" - - #: src/main.c:263 - msgid "" -@@ -128,20 +147,24 @@ - " -i, --sequence=files use intermediate files for sequencing passes\n" - " --sequence=memory use memory buffers for sequencing passes\n" - msgstr "" -+"\n" -+"Uitvoermodus:\n" -+" -v, --verbose tussenstappen uitleggen en voortgang tonen\n" -+" -q, --quiet, --silent niets zeggen over onomkeerbare hercoderingen\n" -+" -f, --force hercodering afdwingen, ook als deze onomkeerbaar is\n" -+" -t, --touch tijdsstempel van gehercodeerde bestanden aanpassen\n" -+" -i, --sequence=files tijdelijke bestanden gebruiken voor tussenstappen\n" -+" --sequence=memory geheugenbuffers gebruiken voor tussenstappen\n" - - #: src/main.c:275 - msgid " -p, --sequence=pipe use pipe machinery for sequencing passes\n" --msgstr "" --" -p, --sequence=pipe gebruik pipe machinery for sequencing passes " --"(FIXME)\n" -+msgstr " -p, --sequence=pipe 'pipes' gebruiken voor tussenstappen\n" - - #: src/main.c:280 --#, fuzzy - msgid " -p, --sequence=pipe same as -i (on this system)\n" --msgstr " -p, --sequence=pipe zelfde als -o (op dit systeem)\n" -+msgstr " -p, --sequence=pipe hetzelfde als -i (op dit systeem)\n" - - #: src/main.c:285 --#, fuzzy - msgid "" - "\n" - "Fine tuning:\n" -@@ -153,21 +176,16 @@ - " -x, --ignore=CHARSET ignore CHARSET while choosing a recoding path\n" - msgstr "" - "\n" --" -c, --colons gebruik punt in plaats van dubbele kwoots \n" --" voor diakritische tekens\n" --" -d, --diacritics limiteer conversie naar diakritische tekens of " --"zoals \n" --" voor LaTeX\n" --" -f, --force forceer omzetting zelfs als deze niet omkeerbaar " --"is\n" --" (LET OP: in deze versie, wordt altijd -f " --"gebruikt)\n" --" -g, --graphics benadering IBMPC lijnen met ASCII grafische " --"tekens\n" --" -h, --header[=NAAM] schrijf C code met tabel NAAM naar " --"standaarduitvoer\n" --" -i, --sequence=files gebruik tussen bestanden voor achtereenvolgende \n" --" sessies\n" -+"Fijnafstelling:\n" -+" -s, --strict strikt converteren, ook als dit tekens verliest\n" -+" -d, --diacritics alleen diakritische tekens en dergelijke converteren\n" -+" voor HTML/LaTeX\n" -+" -S, --source[=TL] hercoderen beperken tot commentaar en tekenreeksen\n" -+" als in taal TL ('c', 'perl', of 'po')\n" -+" -c, --colons voor een trema een dubbele punt in plaats van een\n" -+" dubbel aanhalingsteken gebruiken\n" -+" -g, --graphics IBMPC-lijntjes benaderen met ASCII-tekens\n" -+" -x, --ignore=TEKENSET TEKENSET negeren bij keuze van hercodeertraject\n" - - #: src/main.c:296 - msgid "" -@@ -175,39 +193,49 @@ - "Option -l with no FORMAT nor CHARSET list available charsets and surfaces.\n" - "FORMAT is `decimal', `octal', `hexadecimal' or `full' (or one of `dohf').\n" - msgstr "" -+"\n" -+"Optie -l zonder PRESENTATIE of TEKENSET somt de beschikbare tekensets en\n" -+"oppervlakken op. PRESENTATIE is 'decimal', 'octal', 'hexadecimal' of\n" -+"'full' (volledig), die afgekort mogen worden tot 'd', 'o', 'h' en 'f'.\n" - - #: src/main.c:302 - msgid "" --"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the " --"locale\n" -+"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the locale\n" - "dependent encoding, determined by LC_ALL, LC_CTYPE, LANG.\n" - msgstr "" -+"Tenzij omgevingsvariabele DEFAULT_CHARSET is ingesteld, gebruikt TEKENSET\n" -+"standaard de taalafhankelijke codering, bepaald door LC_ALL, LC_CTYPE, LANG.\n" - - #: src/main.c:307 - msgid "" - "With -k, possible before charsets are listed for the given after CHARSET,\n" --"both being tabular charsets, with PAIRS of the form " --"`BEF1:AFT1,BEF2:AFT2,...'\n" -+"both being tabular charsets, with PAIRS of the form `BEF1:AFT1,BEF2:AFT2,...'\n" - "and BEFs and AFTs being codes are given as decimal numbers.\n" - msgstr "" -+"Met optie -k worden voor de gegeven NA-tekenset de mogelijke VOOR-tekensets\n" -+"opgesomd, als tabel van PAREN in de vorm 'VOOR1:NA1,VOOR2:NA2,...', waarbij\n" -+"de VOORs en NAs als decimale getallen gegeven worden.\n" - - #: src/main.c:312 --msgid "" --"LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" --msgstr "" -+msgid "LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" -+msgstr "TL is een taal, en kan 'c', 'perl' of 'po' zijn; 'c' is standaard.\n" - - #: src/main.c:315 - msgid "" - "\n" --"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is " --"ENCODING[..ENCODING]...\n" --"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like " --"BEFORE..AFTER,\n" -+"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is ENCODING[..ENCODING]...\n" -+"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like BEFORE..AFTER,\n" - "with BEFORE and AFTER being charsets. An omitted CHARSET implies the usual\n" --"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a " --"/\n" -+"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a /\n" - "with an empty surface name means no surfaces at all. See the manual.\n" - msgstr "" -+"\n" -+"VERZOEK is DEELVERZOEK[,DEELVERZOEK]...; DEELVERZOEK is CODERING[..CODERING]...\n" -+"CODERING is [TEKENSET][/[OPPERVLAK]]...; VERZOEK ziet er vaak uit als VOOR..NA,\n" -+"waarbij VOOR en NA tekensets zijn. Een weggelaten TEKENSET impliceert de\n" -+"gebruikelijke tekenset; een weggelaten [/OPPERVLAK]... betekent de impliciete\n" -+"oppervlakken voor TEKENSET; een / met een lege oppervlaknaam betekent helemaal\n" -+"geen oppervlak. Zie ook de handleiding.\n" - - #: src/main.c:323 - msgid "" -@@ -216,200 +244,201 @@ - "Each FILE is recoded over itself, destroying the original. If no\n" - "FILE is specified, then act as a filter and recode stdin to stdout.\n" - msgstr "" -+"\n" -+"Als er geen -i of -p gegeven is, wordt -p aangenomen als er geen BESTAND\n" -+"gegeven is, anders -i. Elk BESTAND wordt over zichzelf gehercodeerd; het\n" -+"origineel wordt dus overschreven.\n" -+"Als er geen BESTAND gegeven is, functioneert 'recode' als een filter en\n" -+"wordt van standaardinvoer naar standaarduitvoer gehercodeerd.\n" - - #: src/main.c:329 --#, fuzzy - msgid "" - "\n" - "Report bugs to .\n" - msgstr "" - "\n" --"Meld fouten via .\n" -+"Rapporteer programmafouten aan ,\n" -+"en fouten in de Nederlandse vertaling aan .\n" - - #: src/main.c:430 - #, c-format - msgid "Sequence `%s' is ambiguous" --msgstr "" -+msgstr "Reeks '%s' is niet eenduidig" - - #: src/main.c:434 - #, c-format - msgid "Sequence `%s' is unknown" --msgstr "" -+msgstr "Reeks '%s' is onbekend" - - #: src/main.c:464 src/main.c:522 - #, c-format - msgid "Language `%s' is ambiguous" --msgstr "" -+msgstr "Taal '%s' is niet eenduidig" - - #. -1 - #: src/main.c:468 src/main.c:526 - #, c-format - msgid "Language `%s' is unknown" --msgstr "" -+msgstr "Taal '%s' is onbekend" - - #: src/main.c:560 - #, c-format - msgid "Format `%s' is ambiguous" --msgstr "" -+msgstr "Presentatie '%s' is niet eenduidig" - - #: src/main.c:564 - #, c-format - msgid "Format `%s' is unknown" --msgstr "" -+msgstr "Presentatie '%s' is onbekend" - - #: src/main.c:621 --#, fuzzy - msgid "Written by Franc,ois Pinard .\n" --msgstr "" --"\n" --"Geschreven door Franois Pinard .\n" -+msgstr "Geschreven door François Pinard .\n" - - #: src/main.c:624 --#, fuzzy - msgid "" - "\n" - "Copyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" - msgstr "" - "\n" --"Copyright (C) 1990, 1992, 1993, 1994, 1996 Free Software Foundation, Inc.\n" -+"Copyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" - - #: src/main.c:628 - msgid "" - "This is free software; see the source for copying conditions. There is NO\n" - "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" - msgstr "" --"Dit is vrije programmatuur; zie de broncode voor kopieer condities.\n" -+"Dit is vrije software; zie de brontekst voor de kopieervoorwaarden.\n" - "Er is GEEN garantie; zelfs niet voor VERKOOPBAARHEID of GESCHIKTHEID\n" --"VOOR EEN BEPAALDE TOEPASSING.\n" -+"VOOR EEN BEPAALD DOEL.\n" - - #: src/main.c:669 - #, c-format - msgid "Symbol `%s' is unknown" --msgstr "" -+msgstr "Symbool '%s' is onbekend" - - #: src/main.c:709 src/main.c:723 - #, c-format - msgid "Charset `%s' is unknown or ambiguous" --msgstr "" -+msgstr "Tekenset '%s' is onbekend of niet eenduidig" - - #: src/main.c:754 - msgid "Required argument is missing" --msgstr "" -+msgstr "Een vereist argument ontbreekt" - - #: src/main.c:797 - #, c-format - msgid "Syntax is deprecated, please prefer `%s'" --msgstr "" -+msgstr "Deze syntax is verouderd; gebruik liever '%s'" - - #: src/main.c:803 - #, c-format - msgid "Request `%s' is erroneous" --msgstr "" -+msgstr "Verzoek '%s' is onjuist" - - #: src/main.c:903 - #, c-format - msgid "Recoding %s..." --msgstr "Omzetten %s..." -+msgstr "Bezig met hercoderen van %s..." - - #: src/main.c:913 - msgid " done\n" --msgstr " klaar\n" -+msgstr " voltooid\n" - - #: src/main.c:954 - #, c-format - msgid " failed: %s in step `%s..%s'\n" --msgstr "" -+msgstr " mislukt: %s in stap '%s..%s'\n" - - #: src/main.c:961 - #, c-format - msgid "%s failed: %s in step `%s..%s'" --msgstr "" -+msgstr "%s mislukt: %s in stap '%s..%s'" - - #: src/main.c:984 --#, fuzzy, c-format -+#, c-format - msgid "%s in step `%s..%s'" --msgstr "%svoor reeks %s.%s" -+msgstr "%s in stap '%s..%s'" - - #: src/names.c:335 - #, c-format - msgid "Charset %s already exists and is not %s" --msgstr "Karakterset %s bestaat reeds en is niet %s" -+msgstr "Tekenset '%s' bestaat al en is niet %s" - - #: src/names.c:831 --#, fuzzy, c-format -+#, c-format - msgid "Cannot list `%s', no names available for this charset" --msgstr "" --"Kan `%s' niet tonen, geen RFC 1345 namen beschikbaar voor deze karakterset" -+msgstr "Kan '%s' niet opsommen; geen namen beschikbaar voor deze tekenset" - - #. code counter - #. expected value for code counter - #. insert a while line before printing - #. Print the long table according to explode data. - #: src/names.c:984 src/names.c:1030 --#, fuzzy, c-format -+#, c-format - msgid "Dec Oct Hex UCS2 Mne %s\n" --msgstr "dec oct hex ch %s\n" -+msgstr "Dec Oct Hex UCS2 Mne %s\n" - - #: src/names.c:1049 --#, fuzzy, c-format -+#, c-format - msgid "Sorry, no names available for `%s'" --msgstr "Sorry, geen RFC 1345 namen beschikbaar voor `%s'" -+msgstr "Sorry, geen namen beschikbaar voor '%s'" - - #: src/outer.c:125 - #, c-format - msgid "Resurfacer set more than once for `%s'" --msgstr "" -+msgstr "Her-oppervlakker meer dan eens gezet voor '%s'" - - #: src/outer.c:133 - #, c-format - msgid "Unsurfacer set more than once for `%s'" --msgstr "" -+msgstr "Ont-oppervlakker meer dan eens gezet voor '%s'" - - #: src/recode.c:115 src/recode.c:127 - msgid "Virtual memory exhausted" --msgstr "" -+msgstr "Onvoldoende virtueel geheugen" - - #: src/recode.c:155 - #, c-format, ycp-format - msgid "Codes %3d and %3d both recode to %3d" --msgstr "Code %3d en %3d beide omgezet naar %3d" -+msgstr "Codes %3d en %3d hercoderen beide naar %3d" - - #: src/recode.c:169 - #, c-format, ycp-format - msgid "No character recodes to %3d" --msgstr "Geen karakter omzetting naar %3d" -+msgstr "Geen teken hercodeert naar %3d" - - #: src/recode.c:170 - msgid "Cannot invert given one-to-one table" --msgstr "Kan een-op-een tabel niet inverteren" -+msgstr "Kan de gegeven één-op-één tabel niet omkeren" - - #: src/recode.c:224 src/recode.c:236 - #, c-format - msgid "Following diagnostics for `%s' to `%s'" --msgstr "Volg diagnostiek (FIXME) van `%s' naar `%s'" -+msgstr "Foutmeldingen voor '%s' naar '%s'" - - #: src/recode.c:229 src/recode.c:241 --#, fuzzy, c-format -+#, c-format - msgid "Pair no. %d: <%3d, %3d> conflicts with <%3d, %3d>" --msgstr "Paar nummer %d: { %3d, %3d } conflictueerd met { %3d, %3d }" -+msgstr "Paarnummer %d: <%3d, %3d> conflicteert met <%3d, %3d>" - - #: src/recode.c:272 - msgid "Cannot complete table from set of known pairs" --msgstr "Kan tabel niet compleet maken uit set van bekende paren" -+msgstr "Kan tabel niet afmaken met de verzameling bekende paren" - - #: src/recode.c:497 - msgid "Identity recoding, not worth a table" --msgstr "Codering is identiek, geen tabel waardig" -+msgstr "Identiteitshercodering; is geen tabel waard" - - #: src/recode.c:504 - msgid "Recoding is too complex for a mere table" --msgstr "Omzetting is te complex voor een mere tabel (FIXME)" -+msgstr "Hercoderen is te complex voor slechts een tabel" - - #. Print the header of the header file. - #: src/recode.c:536 --#, fuzzy, c-format -+#, c-format - msgid "%sConversion table generated mechanically by Free `%s' %s" --msgstr "%sConversietabel mechanisch gegenereerd door GNU %s %s" -+msgstr "%sConversietabel gegenereerd door '%s' %s" - - #: src/recode.c:538 - #, c-format -@@ -418,261 +447,82 @@ - - #: src/recode.c:744 - msgid "No table to print" --msgstr "Geen tabel om te tonen" -+msgstr "Geen tabel om weer te geven" - - #: src/request.c:34 - msgid "reversible" - msgstr "omkeerbaar" - - #: src/request.c:36 --#, fuzzy, c-format -+#, c-format - msgid "%s to %s" --msgstr "%svoor reeks %s.%s" -+msgstr "%s naar %s" - - #: src/request.c:37 src/request.c:39 - msgid "byte" --msgstr "" -+msgstr "byte" - - #: src/request.c:38 src/request.c:40 - msgid "ucs2" --msgstr "" -+msgstr "ucs2" - - #: src/request.c:38 src/request.c:40 --#, fuzzy - msgid "variable" --msgstr "omkeerbaar" -+msgstr "variabel" - - #: src/request.c:111 - msgid "*Unachievable*" --msgstr "*Onmogelijk*" -+msgstr "*Kan niet*" - - #: src/request.c:113 - msgid "*mere copy*" --msgstr "*gewone kopie*" -+msgstr "*simpele kopie*" - - #: src/request.c:246 - msgid "Virtual memory exhausted!" --msgstr "" -+msgstr "Onvoldoende virtueel geheugen!" - - #: src/request.c:265 - msgid "Step initialisation failed" --msgstr "" -+msgstr "Stap-initialisatie is mislukt" - - #: src/request.c:272 - msgid "Step initialisation failed (unprocessed options)" --msgstr "" -+msgstr "Stap-initialisatie is mislukt (onverwerkte opties)" - - #: src/request.c:568 - #, c-format - msgid "Request: %s\n" --msgstr "" -+msgstr "Verzoek: %s\n" - - #: src/request.c:720 - #, c-format - msgid "Shrunk to: %s\n" --msgstr "" -+msgstr "Gekrompen tot: %s\n" - - #: src/request.c:823 src/request.c:932 - #, c-format - msgid "Unrecognised surface name `%s'" --msgstr "" -+msgstr "Onbekende oppervlaknaam '%s'" - - #: src/request.c:903 --#, fuzzy, c-format -+#, c-format - msgid "No way to recode from `%s' to `%s'" --msgstr "Geen mogelijkheid voor omzetting van %s naar %s" -+msgstr "Er is geen manier om te hercoderen van '%s' naar '%s'" - - #: src/request.c:1013 - msgid "Expecting `..' in request" --msgstr "" -+msgstr "'..' werd verwacht in verzoek" - - #: src/task.c:826 src/task.c:1002 - #, c-format - msgid "Child process wait status is 0x%0.2x" --msgstr "Wacht status proces kind is 0x%0.2x" -+msgstr "Wachtstatus van dochterproces is 0x%0.2x" - - #: src/testdump.c:298 - msgid "" - "UCS2 Mne Description\n" - "\n" - msgstr "" -- --#~ msgid "Ambiguous sequence `%s'" --#~ msgstr "Dubbelzinnig `sequence' `%s'" -- --#~ msgid "Unknown sequence `%s'" --#~ msgstr "Onbekende `sequence' `%s' (FIXME)" -- --#~ msgid "Ambiguous language `%s'" --#~ msgstr "Dubbelzinnige taal `%s'" -- --#~ msgid "Unknown language `%s'" --#~ msgstr "Onbekende taal `%s'" -- --#~ msgid "Ambiguous format `%s'" --#~ msgstr "Dubbelzinnig format `%s'" -- --#~ msgid "Unknown format `%s'" --#~ msgstr "Onbekende format `%s'" -- --#~ msgid "Hash stats: %d names using %d buckets out of %d\n" --#~ msgstr "Hash stats: %d names using %d buckets out of %d (FIXME)\n" -- --#~ msgid "Currently, -s is ignored when -g is selected" --#~ msgstr "Op dit moment wordt -s genegeerd als -g is geselecteerd" -- --#~ msgid "one to one" --#~ msgstr "een op een" -- --#~ msgid "one to many" --#~ msgstr "een naar veel (FIXME)" -- --#~ msgid "many to one" --#~ msgstr "veel naar een (FIXME)" -- --#~ msgid "many to many" --#~ msgstr "veel te veel" -- --#~ msgid "MAX_CHARSETS is too small" --#~ msgstr "MAX_CHARSETS is te klein" -- --#~ msgid "Ambiguous charset or encoding `%s'" --#~ msgstr "Dubbelzinnige karakterset of codering `%s'" -- --#~ msgid "Unknown charset or encoding `%s'" --#~ msgstr "Onbekende karakterset of codering `%s'" -- --#~ msgid "Simplified to: %s\n" --#~ msgstr "Versimpeld naar: %s\n" -- --#~ msgid "Unbalanced quotes in request" --#~ msgstr "Niet overeenkomstige kwoots in vraag" -- --#~ msgid "Illegal backslash" --#~ msgstr "Ongeldige backslash" -- --#~ msgid "Internal error - strategy undecided" --#~ msgstr "Interne fout - besluiteloze strategie" -- --#~ msgid "ONE to SAME" --#~ msgstr "ONE naar SAME" -- --#~ msgid "steps: %d" --#~ msgstr "stappen: %d" -- --#~ msgid ", %d saved by merging" --#~ msgstr ", %d bewaard door samenvoegen" -- --#~ msgid " UNACHIEVABLE\n" --#~ msgstr " ONBEREIKBAAR\n" -- --#~ msgid "Cannot auto check the ignored charset" --#~ msgstr "Kan de genegeerde karakterset niet automatisch kontroleren" -- --#~ msgid "Cannot auto check on %s" --#~ msgstr "Kan %s niet automatisch kontroleren" -- --#~ msgid "" --#~ "Mandatory or optional arguments to long options are mandatory or optional\n" --#~ "for short options too.\n" --#~ "\n" --#~ " -C, --copyright display Copyright and copying conditions\n" --#~ " -a, --auto-check report about some or all recoding paths, then exit\n" --#~ " -l, --list[=FORMAT] list one or all known charsets\n" --#~ " -k, --known=PAIRS restrict charsets according to known PAIRS list\n" --#~ " --help display this help and exit\n" --#~ " --version output version information and exit\n" --#~ "\n" --#~ "FORMAT is a word among decimal, octal, hexadecimal or full (which may be\n" --#~ "abbreviated to one of `dohf'), it defaults to just the canonical name.\n" --#~ "With -k, possible before charsets are listed for the given after CHARSET,\n" --#~ "both being RFC1345 charsets, with PAIRS of the form " --#~ "`BEF1:AFT1,BEF2:AFT2,...\n" --#~ "and BEFs and AFTs being codes. All codes are given as decimal numbers.\n" --#~ msgstr "" --#~ "Verplichte of optionele argumenten bij lange opties, zijn ook\n" --#~ "verplicht of optioneel bij korte opties.\n" --#~ "\n" --#~ " -C, --copyright toon Copyright en copieer kondities\n" --#~ " -a, --auto-check bericht over sommige of alle omzettingstrajecten\n" --#~ " -l, --list[=FORMAT] toon een of alle bekende karaktersets\n" --#~ " -k, --known=PAREN beperk karaktersets volgens bekende PAREN lijst\n" --#~ " --help toon hulp-tekst en bekindig programma\n" --#~ " --version toon versie-informatie en bekindig programma\n" --#~ "\n" --#~ "FORMAT is een woord zoals decimaal, octaal, hexadecimaal of volledig\n" --#~ "(full) (wat mag worden afgekort als een van `dohf'), gewoonlijk wordt\n" --#~ "de standaardnaam gebruikt.\n" --#~ "\n" --#~ "(FIXME) With -k, possible before charsets are listed for the given\n" --#~ "after CHARSET, both being RFC1345 charsets, with PAIRS of the form\n" --#~ "`BEF1:AFT1,BEF2:AFT2,... and BEFs and AFTs being codes. All codes\n" --#~ "are given as decimal numbers.\n" -- --#~ msgid "" --#~ "Option -l with no FORMAT nor CHARSET list all charsets, also see the " --#~ "Texinfo\n" --#~ "documentation. My preferred charsets are (each user has preferences):\n" --#~ "\n" --#~ " ascii-bs ASCII (7-bit), using backspace to apply diacritics\n" --#~ " ibmpc IBM-PC 8-bit characters, with proper newlines\n" --#~ " latex LaTeX coding of foreign and diacriticized characters\n" --#~ " latin1 ISO Latin-1 8-bit extension of ASCII\n" --#~ " texte Easy French convention for transmitting email messages\n" --#~ msgstr "" --#~ "Optie -l met geen FORMAT noch CHARSET laat alle karaktersets zien, zie\n" --#~ "ook de Texinfo documentatie. Mijn preferente karaktersets zijn (elke\n" --#~ "gebruiker heeft voorkeuren):\n" --#~ "\n" --#~ " ascii-bs ASCII (7-bit), gebruik backspace to apply diacritics\n" --#~ " ibmpc IBM-PC 8-bit karakter, met juiste nieuwe regels\n" --#~ " latex LaTeX codering van vreemde en dia-kritische karrakters\n" --#~ " latin1 ISO Latin-1 8-bit uitbreiding van ASCII\n" --#~ " texte Makkelijk franse conventie voor versturen email berichten\n" -- --#~ msgid "" --#~ "\n" --#~ "Usage: %s [OPTION]... [BEFORE]:[AFTER] [FILE]...\n" --#~ msgstr "" --#~ "\n" --#~ "Gebruik: %s [OPTIE]... [VOOR]:[NA] [BESTAND]...\n" -- --#~ msgid "" --#~ " -o, --sequence=popen use popen machinery for sequencing passes\n" --#~ msgstr "" --#~ " -o, --sequence=popen gebruiken popen machinery for sequencing passes " --#~ "(FIXME)\n" -- --#~ msgid " -o, --sequence=popen same as -i (on this system)\n" --#~ msgstr " -o, --sequence=popen zelfde als -i (op dit systeem)\n" -- --#~ msgid "" --#~ " -q, --quiet, --silent inhibit messages about irreversible recodings\n" --#~ " -s, --strict use strict mappings, even loose characters\n" --#~ " -t, --touch touch the recoded files after replacement\n" --#~ " -v, --verbose explain sequence of steps and report progress\n" --#~ " -x, --ignore=CHARSET ignore CHARSET while choosing a recoding path\n" --#~ "\n" --#~ "If none of -i, -o and -p are given, presume -p if no FILE, else -i.\n" --#~ "Each FILE is recoded over itself, destroying the original. If no\n" --#~ "FILE is specified, then act as a filter and recode stdin to stdout.\n" --#~ msgstr "" --#~ " -q, --quiet, --silent laat meldingen over onomkeerbaarheid achterwege\n" --#~ " -s, --strict gebruik strikte omzetting, zelfs voor loose chars\n" --#~ " -t, --touch verander de tijd van omgezette bestanden\n" --#~ " -v, --verbose laat zien wat er gebeurt\n" --#~ " -x, --ignore=CHARSET negeer CHARSET bij kiezen van omzettingstraject\n" --#~ "\n" --#~ "Als geen van -i, -o en -p gegeven zijn, veronderstel -p als geen\n" --#~ "BESTAND, anders -i. Elk BESTAND is omgezet over zichzelf, het\n" --#~ "origineel vernietigend. Als geen BESTAND is gespecificeerd, werk dan\n" --#~ "als een filter en zet standaardinvoer om naar standaarduitvoer.\n" -- --#~ msgid "BEFORE and AFTER both default to `%s' when needed.\n" --#~ msgstr "VOOR en NA beiden `%s' indien noodzakelijk.\n" -- --#~ msgid "%s: Recoding is not reversible" --#~ msgstr "%s: Omzetting is niet omkeerbaar" -- --#~ msgid "Recoding is not reversible" --#~ msgstr "Omzetting is niet omkeerbaar" -+"UCS2 Mne Omschrijving\n" -+"\n" ---- recode-3.6.orig/i18n/zh_CN.po -+++ recode-3.6/i18n/zh_CN.po -@@ -0,0 +1,509 @@ -+# Simplified Chinese translation for recode. -+# Copyright (C) 2005 Free Software Foundation, Inc. -+# Meng Jie , 2005. -+# -+msgid "" -+msgstr "" -+"Project-Id-Version: recode 3.6\n" -+"POT-Creation-Date: 2001-01-02 22:35+0100\n" -+"PO-Revision-Date: 2005-12-03 21:43+0800\n" -+"Last-Translator: Meng Jie \n" -+"Language-Team: Chinese (simplified) \n" -+"MIME-Version: 1.0\n" -+"Content-Type: text/plain; charset=utf-8\n" -+"Content-Transfer-Encoding: 8bit\n" -+"X-Poedit-Basepath: z:\\recode-3.6\n" -+ -+#: src/main.c:142 -+msgid "No error" -+msgstr "没有错误" -+ -+#: src/main.c:145 -+msgid "Non canonical input" -+msgstr "不正规的输入" -+ -+#: src/main.c:148 -+msgid "Ambiguous output" -+msgstr "有歧义的输出" -+ -+#: src/main.c:151 -+msgid "Untranslatable input" -+msgstr "无法翻译的输入" -+ -+#: src/main.c:154 -+msgid "Invalid input" -+msgstr "无效的输入" -+ -+#: src/main.c:157 -+msgid "System detected problem" -+msgstr "系统问题" -+ -+#: src/main.c:160 -+msgid "Misuse of recoding library" -+msgstr "对重新编码库的使用不正确" -+ -+#: src/main.c:163 -+msgid "Internal recoding bug" -+msgstr "内部重新编码缺陷" -+ -+#: src/main.c:208 -+msgid "" -+"This program is free software; you can redistribute it and/or modify\n" -+"it under the terms of the GNU General Public License as published by\n" -+"the Free Software Foundation; either version 2, or (at your option)\n" -+"any later version.\n" -+"\n" -+"This program is distributed in the hope that it will be useful,\n" -+"but WITHOUT ANY WARRANTY; without even the implied warranty of\n" -+"MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" -+"GNU General Public License for more details.\n" -+"\n" -+"You should have received a copy of the GNU General Public License\n" -+"along with this program; if not, write to the Free Software Foundation,\n" -+"Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n" -+msgstr "" -+"此程序是自由软件;您可以在自由软件基金会发布的 GNU 通用公共许\n" -+"可证的条款下重新分发和(或)修改它;您可以选择使用 GPL 第二版,\n" -+"或(按照您的意愿)任何更新的版本。\n" -+"\n" -+"该程序分发的目的是为了其他人可以使用它,但是没有任何担保;也没\n" -+"有对其适销性和某一特定目的下的适用性的担保。请查阅 GNU 通用公\n" -+"共许可证来获得更多的信息。\n" -+"\n" -+"你应该已经跟本程序一起收到一份 GNU 通用公共许可证;如果没有,\n" -+"请写信至:Free Software Foundation, Inc., \n" -+"59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n" -+ -+#: src/main.c:233 -+#, c-format -+msgid "Try `%s %s' for more information.\n" -+msgstr "请尝试执行‘%s %s’以得到更多信息。\n" -+ -+#: src/main.c:237 -+msgid "Free `recode' converts files between various character sets and surfaces.\n" -+msgstr "自由的‘recode’将文件在不同的字符集和外在编码间转换。\n" -+ -+#: src/main.c:241 -+#, c-format -+msgid "" -+"\n" -+"Usage: %s [OPTION]... [ [CHARSET] | REQUEST [FILE]... ]\n" -+msgstr "" -+"\n" -+"用法:%s [选项]... [ [字符集] | 请求 [文件]...]\n" -+ -+#: src/main.c:244 -+msgid "" -+"\n" -+"If a long option shows an argument as mandatory, then it is mandatory\n" -+"for the equivalent short option also. Similarly for optional arguments.\n" -+msgstr "" -+"\n" -+"长选项必须带的参数在使用与之等价的短选项时也是必须的。可选参数亦是如此。\n" -+ -+#: src/main.c:250 -+msgid "" -+"\n" -+"Listings:\n" -+" -l, --list[=FORMAT] list one or all known charsets and aliases\n" -+" -k, --known=PAIRS restrict charsets according to known PAIRS list\n" -+" -h, --header[=[LN/]NAME] write table NAME on stdout using LN, then exit\n" -+" -F, --freeze-tables write out a C module holding all tables\n" -+" -T, --find-subsets report all charsets being subset of others\n" -+" -C, --copyright display Copyright and copying conditions\n" -+" --help display this help and exit\n" -+" --version output version information and exit\n" -+msgstr "" -+"\n" -+"列表:\n" -+" -l,--list[=格式] 列出某个或所有已知的字符集和别名\n" -+" -k,--known=映射 仅列出匹配已知“映射”列表的字符集\n" -+" -h,--header[=[语言/]表名] 在标准输出上输出符合某语言语法的转换表,然后退出\n" -+" -F,--freeze-tables 输出一个包括所有转换表的 C 模块\n" -+" -T,--find-subsets 报告所有是其他字符集子集的字符集\n" -+" -C,--copyright 显示版权信息和复制条件\n" -+" --help 显示本帮助信息后退出\n" -+" --version 输出版本信息后退出\n" -+ -+#: src/main.c:263 -+msgid "" -+"\n" -+"Operation modes:\n" -+" -v, --verbose explain sequence of steps and report progress\n" -+" -q, --quiet, --silent inhibit messages about irreversible recodings\n" -+" -f, --force force recodings even when not reversible\n" -+" -t, --touch touch the recoded files after replacement\n" -+" -i, --sequence=files use intermediate files for sequencing passes\n" -+" --sequence=memory use memory buffers for sequencing passes\n" -+msgstr "" -+"\n" -+"操作模式:\n" -+" -v,--verbose 报告转换步骤序列和过程\n" -+" -q,--quiet,--silent 不报告不可逆的重新编码\n" -+" -f,--force 强制进行不可逆的重新编码\n" -+" -t,--touch 在替换之后 touch 重新编码的文件\n" -+" -i,--sequence=files 为系列转换使用中间文件\n" -+" --sequence=memory 为系列转换使用内存缓冲区\n" -+ -+#: src/main.c:275 -+msgid " -p, --sequence=pipe use pipe machinery for sequencing passes\n" -+msgstr " -p,--sequence=pipe 为系列转换使用管道机制\n" -+ -+#: src/main.c:280 -+msgid " -p, --sequence=pipe same as -i (on this system)\n" -+msgstr " -p,--sequence=pipe 在此系统下与 -i 等效\n" -+ -+#: src/main.c:285 -+msgid "" -+"\n" -+"Fine tuning:\n" -+" -s, --strict use strict mappings, even loose characters\n" -+" -d, --diacritics convert only diacritics or alike for HTML/LaTeX\n" -+" -S, --source[=LN] limit recoding to strings and comments as for LN\n" -+" -c, --colons use colons instead of double quotes for diaeresis\n" -+" -g, --graphics approximate IBMPC rulers by ASCII graphics\n" -+" -x, --ignore=CHARSET ignore CHARSET while choosing a recoding path\n" -+msgstr "" -+"\n" -+"细节调整:\n" -+" -s,--strict 即使为可放松的字符也使用严格映射\n" -+" -d,--diacritics 只为 HTML/LaTeX 转换变音记号等\n" -+" -S,--source[=语言] 将重新编码的范围限制在某编程语言的字符串和注释中\n" -+" -c,--colons 使用冒号而不是双引号来表示分音符\n" -+" -g,--graphics 用 ASCII 符号模拟 IBMPC 标尺\n" -+" -x,--ignore=字符集 在选择重新编码途径时忽略某字符集\n" -+ -+#: src/main.c:296 -+msgid "" -+"\n" -+"Option -l with no FORMAT nor CHARSET list available charsets and surfaces.\n" -+"FORMAT is `decimal', `octal', `hexadecimal' or `full' (or one of `dohf').\n" -+msgstr "" -+"\n" -+"选项 -l 后如果没有指定“格式”或“字符集”,则列出所有可用的字符集和外在编码。\n" -+"“格式”可以为‘decimal’、‘octal’、‘hexadecimal’或‘full’(或者‘dohf’\n" -+"中的任一个字母)。\n" -+ -+#: src/main.c:302 -+msgid "" -+"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the locale\n" -+"dependent encoding, determined by LC_ALL, LC_CTYPE, LANG.\n" -+msgstr "" -+"如果没有设置 DEFAULT_CHARSET 环境变量,字符集默认为区域选项的编码,由 LC_ALL、\n" -+"LC_CTYPE、LANG 决定。\n" -+ -+#: src/main.c:307 -+msgid "" -+"With -k, possible before charsets are listed for the given after CHARSET,\n" -+"both being tabular charsets, with PAIRS of the form `BEF1:AFT1,BEF2:AFT2,...'\n" -+"and BEFs and AFTs being codes are given as decimal numbers.\n" -+msgstr "" -+"使用 -k 时,目标字符集可能对应的所有的源字符集都将列出,两者均为表格化的字符\n" -+"集,“映射”具有‘源1:目标1,源2:目标2,...’的形式,其中“源x”和“目标x”均\n" -+"须以十进制数的形式给出。\n" -+ -+#: src/main.c:312 -+msgid "LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" -+msgstr "“语言”是某种编码语言,可以为‘c’、‘perl’或‘po’,‘c’为默认值。\n" -+ -+#: src/main.c:315 -+msgid "" -+"\n" -+"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is ENCODING[..ENCODING]...\n" -+"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like BEFORE..AFTER,\n" -+"with BEFORE and AFTER being charsets. An omitted CHARSET implies the usual\n" -+"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a /\n" -+"with an empty surface name means no surfaces at all. See the manual.\n" -+msgstr "" -+"\n" -+"“请求”格式为“子请求[,子请求]...”;“子请求”格式为“编码[..编码]...”\n" -+"“编码”格式为“[字符集][/[外在编码]]...”;“请求”一般有“源..目的”的形式,\n" -+"“源”和“目的”均为字符集名。如果省略“字符集”,则表示通常的字符集;如果省略\n" -+"“[/外在编码]...”则表示“字符集”默认的外在编码;只给出“/”而在其后不给出任\n" -+"何外在编码则表示没有任何外在编码。详情请参见手册。\n" -+ -+#: src/main.c:323 -+msgid "" -+"\n" -+"If none of -i and -p are given, presume -p if no FILE, else -i.\n" -+"Each FILE is recoded over itself, destroying the original. If no\n" -+"FILE is specified, then act as a filter and recode stdin to stdout.\n" -+msgstr "" -+"\n" -+"如果没有给出 -i 或 -p,当命令行中有文件时使用 -p,否则使用 -i。\n" -+"为每个文件就地重新编码,丢弃其原始内容。如果没有在命令行中指定文件,\n" -+"则将标准输入的内容重新编码为标准输出。\n" -+ -+#: src/main.c:329 -+msgid "" -+"\n" -+"Report bugs to .\n" -+msgstr "" -+"\n" -+"请向 报告程序缺陷。\n" -+ -+#: src/main.c:430 -+#, c-format -+msgid "Sequence `%s' is ambiguous" -+msgstr "序列‘%s’意义不明确" -+ -+#: src/main.c:434 -+#, c-format -+msgid "Sequence `%s' is unknown" -+msgstr "序列‘%s’未知" -+ -+#: src/main.c:464 src/main.c:522 -+#, c-format -+msgid "Language `%s' is ambiguous" -+msgstr "语言‘%s’意义不明确" -+ -+#. -1 -+#: src/main.c:468 src/main.c:526 -+#, c-format -+msgid "Language `%s' is unknown" -+msgstr "语言‘%s’未知" -+ -+#: src/main.c:560 -+#, c-format -+msgid "Format `%s' is ambiguous" -+msgstr "格式‘%s’意义不明确" -+ -+#: src/main.c:564 -+#, c-format -+msgid "Format `%s' is unknown" -+msgstr "格式‘%s’未知" -+ -+#: src/main.c:621 -+msgid "Written by Franc,ois Pinard .\n" -+msgstr "由 Francois Pinard 编写。\n" -+ -+#: src/main.c:624 -+msgid "" -+"\n" -+"Copyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" -+msgstr "" -+"\n" -+"版权所有 (C) 1990,92,93,94,96,97,99 自由软件基金会。\n" -+ -+#: src/main.c:628 -+msgid "" -+"This is free software; see the source for copying conditions. There is NO\n" -+"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" -+msgstr "" -+"本程序是自由软件;请参看源代码的版权声明。本软件不提供任何担保;\n" -+"包括没有适销性和某一专用目的下的适用性担保。\n" -+ -+#: src/main.c:669 -+#, c-format -+msgid "Symbol `%s' is unknown" -+msgstr "符号‘%s’未知" -+ -+#: src/main.c:709 src/main.c:723 -+#, c-format -+msgid "Charset `%s' is unknown or ambiguous" -+msgstr "字符集‘%s’未知或有歧义" -+ -+#: src/main.c:754 -+msgid "Required argument is missing" -+msgstr "缺少需要的参数" -+ -+#: src/main.c:797 -+#, c-format -+msgid "Syntax is deprecated, please prefer `%s'" -+msgstr "语法已过时,请改用‘%s’" -+ -+#: src/main.c:803 -+#, c-format -+msgid "Request `%s' is erroneous" -+msgstr "请求‘%s’有错误" -+ -+#: src/main.c:903 -+#, c-format -+msgid "Recoding %s..." -+msgstr "重新编码 %s..." -+ -+#: src/main.c:913 -+msgid " done\n" -+msgstr " 完成\n" -+ -+#: src/main.c:954 -+#, c-format -+msgid " failed: %s in step `%s..%s'\n" -+msgstr " 失败:%s 在步骤‘%s..%s’中\n" -+ -+#: src/main.c:961 -+#, c-format -+msgid "%s failed: %s in step `%s..%s'" -+msgstr "%s 失败:%s 在步骤‘%s..%s’中" -+ -+#: src/main.c:984 -+#, c-format -+msgid "%s in step `%s..%s'" -+msgstr "%s 在步骤‘%s..%s’中" -+ -+#: src/names.c:335 -+#, c-format -+msgid "Charset %s already exists and is not %s" -+msgstr "字符集 %s 已存在且并非 %s" -+ -+#: src/names.c:831 -+#, c-format -+msgid "Cannot list `%s', no names available for this charset" -+msgstr "无法列出‘%s’,此字符集没有可用的字符名" -+ -+#. code counter -+#. expected value for code counter -+#. insert a while line before printing -+#. Print the long table according to explode data. -+#: src/names.c:984 src/names.c:1030 -+#, c-format -+msgid "Dec Oct Hex UCS2 Mne %s\n" -+msgstr "十 八 十六 UCS2 助记 %s\n" -+ -+#: src/names.c:1049 -+#, c-format -+msgid "Sorry, no names available for `%s'" -+msgstr "对不起,‘%s’没有可用的字符名" -+ -+#: src/outer.c:125 -+#, c-format -+msgid "Resurfacer set more than once for `%s'" -+msgstr "为‘%s’施加了多于一个的外在编码" -+ -+#: src/outer.c:133 -+#, c-format -+msgid "Unsurfacer set more than once for `%s'" -+msgstr "为‘%s’去除了多于一个的外在编码" -+ -+#: src/recode.c:115 src/recode.c:127 -+msgid "Virtual memory exhausted" -+msgstr "虚拟内存耗尽" -+ -+#: src/recode.c:155 -+#, c-format, ycp-format -+msgid "Codes %3d and %3d both recode to %3d" -+msgstr "代码 %3d 和 %3d 都将被重新编码为 %3d" -+ -+#: src/recode.c:169 -+#, c-format, ycp-format -+msgid "No character recodes to %3d" -+msgstr "没有字符集可重新编码到 %3d" -+ -+#: src/recode.c:170 -+msgid "Cannot invert given one-to-one table" -+msgstr "无法求出给定的一一对应转换表的逆" -+ -+#: src/recode.c:224 src/recode.c:236 -+#, c-format -+msgid "Following diagnostics for `%s' to `%s'" -+msgstr "‘%s’到‘%s’的诊断信息" -+ -+#: src/recode.c:229 src/recode.c:241 -+#, c-format -+msgid "Pair no. %d: <%3d, %3d> conflicts with <%3d, %3d>" -+msgstr "第 %d 号映射:<%3d,%3d> 与 <%3d,%3d> 冲突" -+ -+#: src/recode.c:272 -+msgid "Cannot complete table from set of known pairs" -+msgstr "无法从已知映射集中形成完整的转换表" -+ -+#: src/recode.c:497 -+msgid "Identity recoding, not worth a table" -+msgstr "恒等变换,不需要转换表" -+ -+#: src/recode.c:504 -+msgid "Recoding is too complex for a mere table" -+msgstr "重新编码太过复杂,无法以一张转换表表示" -+ -+#. Print the header of the header file. -+#: src/recode.c:536 -+#, c-format -+msgid "%sConversion table generated mechanically by Free `%s' %s" -+msgstr "%sConversion table generated mechanically by Free `%s' %s" -+ -+#: src/recode.c:538 -+#, c-format -+msgid "%sfor sequence %s.%s" -+msgstr "%s为转换系列 %s.%s" -+ -+#: src/recode.c:744 -+msgid "No table to print" -+msgstr "没有可以打印的转换表" -+ -+#: src/request.c:34 -+msgid "reversible" -+msgstr "可逆的" -+ -+#: src/request.c:36 -+#, c-format -+msgid "%s to %s" -+msgstr "%s 到 %s" -+ -+#: src/request.c:37 src/request.c:39 -+msgid "byte" -+msgstr "字节" -+ -+#: src/request.c:38 src/request.c:40 -+msgid "ucs2" -+msgstr "ucs2" -+ -+#: src/request.c:38 src/request.c:40 -+msgid "variable" -+msgstr "变量" -+ -+#: src/request.c:111 -+msgid "*Unachievable*" -+msgstr "*无法到达*" -+ -+#: src/request.c:113 -+msgid "*mere copy*" -+msgstr "*仅复制*" -+ -+#: src/request.c:246 -+msgid "Virtual memory exhausted!" -+msgstr "虚拟内存耗尽!" -+ -+#: src/request.c:265 -+msgid "Step initialisation failed" -+msgstr "步骤初始化失败" -+ -+#: src/request.c:272 -+msgid "Step initialisation failed (unprocessed options)" -+msgstr "步骤初始化失败(未处理的选项)" -+ -+#: src/request.c:568 -+#, c-format -+msgid "Request: %s\n" -+msgstr "请求:%s\n" -+ -+#: src/request.c:720 -+#, c-format -+msgid "Shrunk to: %s\n" -+msgstr "缩减到:%s\n" -+ -+#: src/request.c:823 src/request.c:932 -+#, c-format -+msgid "Unrecognised surface name `%s'" -+msgstr "无法识别的外在编码‘%s’" -+ -+#: src/request.c:903 -+#, c-format -+msgid "No way to recode from `%s' to `%s'" -+msgstr "没有从‘%s’重新编码至‘%s’的途径" -+ -+#: src/request.c:1013 -+msgid "Expecting `..' in request" -+msgstr "请求中要有‘..’" -+ -+#: src/task.c:826 src/task.c:1002 -+#, c-format -+msgid "Child process wait status is 0x%0.2x" -+msgstr "子进程等待状态为 0x%0.2x" -+ -+#: src/testdump.c:298 -+msgid "" -+"UCS2 Mne Description\n" -+"\n" -+msgstr "" -+"UCS2 助记 描述\n" -+"\n" ---- recode-3.6.orig/i18n/pl.po -+++ recode-3.6/i18n/pl.po -@@ -1,14 +1,15 @@ - # Polish translations for the GNU recode messages - # Copyright (C) 1996 Free Software Foundation, Inc. --# Pawe Krawczyk , 1996, 1997, 1998, 1999 -+# Pawe Krawczyk , 1996, 1997, 1998, 1999. -+# Jakub Bogusz , 2002. - # - msgid "" - msgstr "" --"Project-Id-Version: recode 3.4r\n" -+"Project-Id-Version: recode 3.6\n" - "POT-Creation-Date: 2001-01-02 22:35+0100\n" --"PO-Revision-Date: 1999-05-26 14:49+02:00\n" --"Last-Translator: Pawe Krawczyk \n" --"Language-Team: Polish \n" -+"PO-Revision-Date: 2002-10-27 12:22+0100\n" -+"Last-Translator: Jakub Bogusz \n" -+"Language-Team: Polish \n" - "MIME-Version: 1.0\n" - "Content-Type: text/plain; charset=ISO-8859-2\n" - "Content-Transfer-Encoding: 8-bit\n" -@@ -81,13 +82,12 @@ - msgstr "Polecenie `%s %s' wywietli wicej informacji.\n" - - #: src/main.c:237 --msgid "" --"Free `recode' converts files between various character sets and surfaces.\n" -+msgid "Free `recode' converts files between various character sets and surfaces.\n" - msgstr "" - "Program `recode' konwertuje pliki pomidzy rnymi zestawami znakw\n" - "i sposobami kodowania.\n" - --# REQUEST tumacz wszdzie konsekwentnie jako POLECENIE, a nie 'danie' -+# REQUEST tumacz wszdzie konsekwentnie jako POLECENIE, a nie 'danie' --pk - #: src/main.c:241 - #, c-format - msgid "" -@@ -108,13 +108,11 @@ - "obowizkowe dla krtkich wersji. Analogicznie dla argumentw opcjonalnych.\n" - - #: src/main.c:250 --#, fuzzy - msgid "" - "\n" - "Listings:\n" - " -l, --list[=FORMAT] list one or all known charsets and aliases\n" --" -k, --known=PAIRS restrict charsets according to known PAIRS " --"list\n" -+" -k, --known=PAIRS restrict charsets according to known PAIRS list\n" - " -h, --header[=[LN/]NAME] write table NAME on stdout using LN, then exit\n" - " -F, --freeze-tables write out a C module holding all tables\n" - " -T, --find-subsets report all charsets being subset of others\n" -@@ -125,7 +123,7 @@ - "\n" - "Listy:\n" - " -l, --list[=FORMAT] wywietla jeden lub wszystkie znane zestawy\n" --" znakw\n" -+" znakw i aliasy\n" - " -k, --known=PARY ogranicza list zestaww do znanych PAR\n" - " -h, --header[=[LN/]NAZWA] wywietla tablic NAZWA na standardowe wyjcie\n" - " uywajc LN i koczy prac\n" -@@ -135,8 +133,8 @@ - " innych zestaww\n" - " -C, --copyright wywietla informacje o prawach autorskich\n" - " oraz warunkach kopiowania\n" --" --version wywietla wersj programu i koczy prac\n" - " --help wywietla ten tekst pomocy i koczy prac\n" -+" --version wywietla wersj programu i koczy prac\n" - - #: src/main.c:263 - msgid "" -@@ -187,8 +185,7 @@ - " znakw\n" - " -d, --diacritics konwertuje tylko znaki diakrytyczne oraz symbole\n" - " znakw (takie jak w HTML i LaTeX)\n" --" -c, --colons uywa dwukropkw zamiast cudzysoww dla " --"oznaczenia\n" -+" -c, --colons uywa dwukropkw zamiast cudzysoww dla oznaczenia\n" - " umlautu\n" - " -g, --graphics prbuje przyblia ramki IBMPC znakami ASCII\n" - " -x, --ignore=ZESTAW ignoruje ZESTAW znakw podczas okrelania drogi\n" -@@ -206,20 +203,18 @@ - "(lub jedna z liter `dohf').\n" - - #: src/main.c:302 --#, fuzzy - msgid "" --"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the " --"locale\n" -+"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the locale\n" - "dependent encoding, determined by LC_ALL, LC_CTYPE, LANG.\n" - msgstr "" - "Jeli zmienna rodowiskowa DEFAULT_CHARSET nie jest ustawiona, domylnym\n" --"zestawem znakw jest `%s'.\n" -+"zestawem znakw jest kodowanie zalene od lokalizacji, okrelonej przez\n" -+"zmienne LC_ALL, LC_CTYPE i LANG.\n" - - #: src/main.c:307 - msgid "" - "With -k, possible before charsets are listed for the given after CHARSET,\n" --"both being tabular charsets, with PAIRS of the form " --"`BEF1:AFT1,BEF2:AFT2,...'\n" -+"both being tabular charsets, with PAIRS of the form `BEF1:AFT1,BEF2:AFT2,...'\n" - "and BEFs and AFTs being codes are given as decimal numbers.\n" - msgstr "" - "Jeli podano opcj -k, program wywietla zestawy znakw z ktrych mona\n" -@@ -228,8 +223,7 @@ - "SKD i DOKD s kodami podanymi jako liczby dziesitne.\n" - - #: src/main.c:312 --msgid "" --"LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" -+msgid "LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" - msgstr "" - "LN jest jzykiem programowania, do wyboru `c', `perl' lub `po'.\n" - "Domyln wartoci jest `c'.\n" -@@ -237,13 +231,10 @@ - #: src/main.c:315 - msgid "" - "\n" --"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is " --"ENCODING[..ENCODING]...\n" --"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like " --"BEFORE..AFTER,\n" -+"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is ENCODING[..ENCODING]...\n" -+"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like BEFORE..AFTER,\n" - "with BEFORE and AFTER being charsets. An omitted CHARSET implies the usual\n" --"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a " --"/\n" -+"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a /\n" - "with an empty surface name means no surfaces at all. See the manual.\n" - msgstr "" - "\n" -@@ -279,40 +270,37 @@ - #: src/main.c:430 - #, c-format - msgid "Sequence `%s' is ambiguous" --msgstr "" -+msgstr "Sekwencja `%s' jest niejednoznaczna" - - #: src/main.c:434 - #, c-format - msgid "Sequence `%s' is unknown" --msgstr "" -+msgstr "Sekwencja `%s' jest nieznana" - - #: src/main.c:464 src/main.c:522 - #, c-format - msgid "Language `%s' is ambiguous" --msgstr "" -+msgstr "Jzyk `%s' jest niejednoznaczny" - - #. -1 - #: src/main.c:468 src/main.c:526 - #, c-format - msgid "Language `%s' is unknown" --msgstr "" -+msgstr "Jzyk `%s' jest nieznany" - - #: src/main.c:560 - #, c-format - msgid "Format `%s' is ambiguous" --msgstr "" -+msgstr "Format `%s' jest niejednoznaczny" - - #: src/main.c:564 - #, c-format - msgid "Format `%s' is unknown" --msgstr "" -+msgstr "Format `%s' jest nieznany" - - #: src/main.c:621 --#, fuzzy - msgid "Written by Franc,ois Pinard .\n" --msgstr "" --"\n" --"Autorem jest Franc,ois Pinard .\n" -+msgstr "Autorem jest Franois Pinard .\n" - - #: src/main.c:624 - msgid "" -@@ -327,57 +315,57 @@ - "This is free software; see the source for copying conditions. There is NO\n" - "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" - msgstr "" --"Oprogramowanie darmowe; warunki jego kopiowania znajdziesz w kodzie\n" -+"Oprogramowanie darmowe; warunki jego kopiowania znajduj si w kodzie\n" - "rdowym. Nie podlega adnej gwarancji, nawet gwarancji przydatnoci\n" - "do jakiegokolwiek zastosowania lub sprzeday.\n" - - #: src/main.c:669 - #, c-format - msgid "Symbol `%s' is unknown" --msgstr "" -+msgstr "Symbol `%s' jest nieznany" - - #: src/main.c:709 src/main.c:723 - #, c-format - msgid "Charset `%s' is unknown or ambiguous" --msgstr "" -+msgstr "Zestaw znakw `%s' jest nieznany lub niejednoznaczny" - - #: src/main.c:754 - msgid "Required argument is missing" --msgstr "" -+msgstr "Brak wymaganego parametru" - - #: src/main.c:797 --#, fuzzy, c-format -+#, c-format - msgid "Syntax is deprecated, please prefer `%s'" - msgstr "Odradza si stosowanie tej skadni, prosz uywa `%s'" - - #: src/main.c:803 - #, c-format - msgid "Request `%s' is erroneous" --msgstr "" -+msgstr "Polecenie `%s' jest bdne" - - #: src/main.c:903 - #, c-format - msgid "Recoding %s..." --msgstr "Przekodowanie %s..." -+msgstr "Przekodowywanie %s..." - - #: src/main.c:913 - msgid " done\n" - msgstr " skoczone\n" - - #: src/main.c:954 --#, fuzzy, c-format -+#, c-format - msgid " failed: %s in step `%s..%s'\n" --msgstr " nie powiodo si: %s w %s..%s\n" -+msgstr " nie powiodo si: %s w `%s..%s'\n" - - #: src/main.c:961 --#, fuzzy, c-format -+#, c-format - msgid "%s failed: %s in step `%s..%s'" --msgstr "%s nie powiodo si: %s w %s..%s" -+msgstr "%s nie powiodo si: %s w `%s..%s'" - - #: src/main.c:984 --#, fuzzy, c-format -+#, c-format - msgid "%s in step `%s..%s'" --msgstr "%s w %s..%s" -+msgstr "%s w `%s..%s'" - - #: src/names.c:335 - #, c-format -@@ -531,7 +519,7 @@ - - #: src/request.c:1013 - msgid "Expecting `..' in request" --msgstr "Spodziewane `..' w poleceniu" -+msgstr "Oczekiwano `..' w poleceniu" - - #: src/task.c:826 src/task.c:1002 - #, c-format -@@ -545,236 +533,3 @@ - msgstr "" - "UCS2 Mne Description\n" - "\n" -- --#~ msgid "CHARSET has no default, define DEFAULT_CHARSET in the environment.\n" --#~ msgstr "" --#~ "ZESTAW znakw nie ma wartoci domylnej, ustaw zmienn rodowiskow\n" --#~ "DEFAULT_CHARSET.\n" -- --#~ msgid "Ambiguous sequence `%s'" --#~ msgstr "Nierozpoznana sekwencja `%s'" -- --#~ msgid "Unknown sequence `%s'" --#~ msgstr "Nieznana sekwencja `%s'" -- --#~ msgid "Ambiguous language `%s'" --#~ msgstr "Nierozpoznany jzyk `%s'" -- --#~ msgid "Unknown language `%s'" --#~ msgstr "Nieznany jzyk `%s'" -- --#~ msgid "Ambiguous format `%s'" --#~ msgstr "Nierozpoznany format `%s'" -- --#~ msgid "Unknown format `%s'" --#~ msgstr "Nieznany format `%s'" -- --#~ msgid "Erroneous request `%s'" --#~ msgstr "Bdne polecenie `%s'" -- --#~ msgid " Each input char transforms into an output string,\n" --#~ msgstr " Kady znak wejciowy jest konwertowany na acuch wyjciowy,\n" -- --#~ msgid " Each input char transforms into an output string.\n" --#~ msgstr " Kady znak wejciowy jest konwertowany na acuch wyjciowy.\n" -- --#~ msgid " Programming is needed to handle multichar input.\n" --#~ msgstr "" --#~ " Do obsugi kodw wieloznakowych potrzebna jest umiejtno " --#~ "programowania.\n" -- --#~ msgid " The recoding might not be reversible.\n" --#~ msgstr " Konwersja moe by nieodwracalna.\n" -- --#~ msgid " The recoding should be reversible.\n" --#~ msgstr " Konwersja powinna by odwracalna.\n" -- --#~ msgid " programming is needed to handle multichar input.\n" --#~ msgstr "" --#~ " do obsugi kodw wieloznakowych potrzebna jest umiejtno " --#~ "programowania.\n" -- --#~ msgid " UNACHIEVABLE\n" --#~ msgstr " NIEOSIGALNE\n" -- --#~ msgid "%s: Recoding is not reversible" --#~ msgstr "%s: Konwersja jest nieodwracalna" -- --#~ msgid ", %d saved by merging" --#~ msgstr ", %d zachowane przez zczenie" -- --#~ msgid "/* Conversion table from `%s' charset to `%s' charset.\n" --#~ msgstr "/* Tablica konwersji zestawow znakow `%s' na `%s'.\n" -- --#~ msgid "Cannot auto check on %s" --#~ msgstr "Nie mog automatycznie sprawdzi %s" -- --#~ msgid "Cannot auto check the ignored charset" --#~ msgstr "Nie mog automatycznie sprawdzi ignorowanego zestawu znakw" -- --#~ msgid "Currently, -s is ignored when -g is selected" --#~ msgstr "Opcja -s jest wyczana przez opcj -g" -- --#~ msgid "Hash stats: %d names using %d buckets out of %d\n" --#~ msgstr "Wyniki przeszukiwania: %d uywa %d spord %d zbiorw\n" -- --#~ msgid "Internal error - strategy undecided" --#~ msgstr "Bd wewntrzy - niezdecydowana strategia" -- --#~ msgid "MAX_CHARSETS is too small" --#~ msgstr "MAX_CHARSETS jest za mae" -- --#~ msgid "MAX_SEQUENCE is too small" --#~ msgstr "MAX_SEQUENCE jest za mae" -- --#~ msgid "MAX_SINGLE_STEPS is too small" --#~ msgstr "MAX_SINGLE_STEPS jest za mae" -- --#~ msgid "Mere copy for the trivial recoding\n" --#~ msgstr "Zwyka kopia do prostego przekodowania\n" -- --#~ msgid "ONE to SAME" --#~ msgstr "ONE na SAME" -- --#~ msgid "Recoding is not reversible" --#~ msgstr "Przekodowanie jest nieodwracalne" -- --#~ msgid "Simplified to: " --#~ msgstr "Uproszczone do: " -- --#~ msgid "UNACHIEVABLE recoding!\n" --#~ msgstr "NIEOSIGALNE przekodowanie!\n" -- --#~ msgid "You may not explicitly recode from RFC 1345" --#~ msgstr "Nie ma potrzebt cisego przekodowania z RFC 1345" -- --#~ msgid " -o, --sequence=popen same as -i (on this system)\n" --#~ msgstr " -o, --sequence=popen identyczne jak -i (w tym systemie)\n" -- --#~ msgid "" --#~ " -o, --sequence=popen use popen machinery for sequencing passes\n" --#~ msgstr "" --#~ " -o, --sequence=popen uycie techniki popen w przebiegach sekwencyjnych\n" -- --#~ msgid "" --#~ " -q, --quiet, --silent inhibit messages about irreversible recodings\n" --#~ " -s, --strict use strict mappings, even loose characters\n" --#~ " -t, --touch touch the recoded files after replacement\n" --#~ " -v, --verbose explain sequence of steps and report progress\n" --#~ " -x, --ignore=CHARSET ignore CHARSET while choosing a recoding path\n" --#~ "\n" --#~ "If none of -i, -o and -p are given, presume -p if no FILE, else -i.\n" --#~ "Each FILE is recoded over itself, destroying the original. If no\n" --#~ "FILE is specified, then act as a filter and recode stdin to stdout.\n" --#~ msgstr "" --#~ " -q, --quiet, --silent blokuj komunikaty o nieodwracalnych konwersjach\n" --#~ " -s, --strict uywaj cisych odwzorowa, nawet dla wtpliwych " --#~ "znakw\n" --#~ " -t, --touch uaktualnij dat przekodowanego, podstawionego " --#~ "pliku\n" --#~ " -v, --verbose pokazuj kolejne kroki i postp konwersji\n" --#~ " -x, --ignore=ZESTAW ignoruj ZESTAW znakw przy wyborze konwersji\n" --#~ "\n" --#~ "Jeli nie wybrano adnej z opcji -i, -o lub -p, i nie ma agumentu PLIK,\n" --#~ "domylnie przyjmowana jest opcja -p, w przeciwnym wypadku -i. Kady PLIK\n" --#~ "po konwersji jest zapisywany pod t sam nazw, z usuniciem oryginau.\n" --#~ "Jeli brak PLIKu, recode dziaa jak filtr i konwertuje z stdin na stdout.\n" -- --#~ msgid "BEFORE and AFTER both default to `%s' when needed.\n" --#~ msgstr "PRZED i PO w razie potrzeby s ustawiane domylnie na `%s'.\n" -- --#~ msgid "" --#~ "Mandatory or optional arguments to long options are mandatory or optional\n" --#~ "for short options too.\n" --#~ "\n" --#~ " -C, --copyright display Copyright and copying conditions\n" --#~ " -a, --auto-check report about some or all recoding paths, then exit\n" --#~ " -l, --list[=FORMAT] list one or all known charsets\n" --#~ " -k, --known=PAIRS restrict charsets according to known PAIRS list\n" --#~ " --help display this help and exit\n" --#~ " --version output version information and exit\n" --#~ "\n" --#~ "FORMAT is a word among decimal, octal, hexadecimal or full (which may be\n" --#~ "abbreviated to one of `dohf'), it defaults to just the canonical name.\n" --#~ "With -k, possible before charsets are listed for the given after CHARSET,\n" --#~ "both being RFC1345 charsets, with PAIRS of the form " --#~ "`BEF1:AFT1,BEF2:AFT2,...\n" --#~ "and BEFs and AFTs being codes. All codes are given as decimal numbers.\n" --#~ msgstr "" --#~ "Obowizkowe lub opcjonalne argumenty dugich form opcji maj tak sam\n" --#~ "posta dla krtkich form.\n" --#~ "\n" --#~ " -C, --copyright wywietl informacje licencyjne i warunki kopiowania\n" --#~ " -a, --auto-check wywietl cieki konwersji i zakocz prac\n" --#~ " -l, --list[=FORMAT] wywietl znane zestawy znakw\n" --#~ " -k, --known=PARY ogranicz zestawy znakw wg. podanych PAR\n" --#~ " --help wywietl ten tekst pomocy i zakocz prac\n" --#~ " --version wywietl wersj programu i zakocz prac\n" --#~ "\n" --#~ "FORMAT jest jednym z: decimal, octal, hexadecimal oraz full (skrty: dohf)\n" --#~ "Domylnie wywietlane s tylko nazwy kanoniczne wszystkich standardw.\n" --#~ "Dla opcj -k podaje si dla danego zestawu PO pary decymalnych kodw znakw\n" --#~ "z zestaww RFC1345, postaci: PRZED1:PO2,PRZED2:PO2,...\n" -- --#~ msgid "" --#~ "Option -l with no FORMAT nor CHARSET list all charsets, also see the " --#~ "Texinfo\n" --#~ "documentation. My preferred charsets are (each user has preferences):\n" --#~ "\n" --#~ " ascii-bs ASCII (7-bit), using backspace to apply diacritics\n" --#~ " ibmpc IBM-PC 8-bit characters, with proper newlines\n" --#~ " latex LaTeX coding of foreign and diacriticized characters\n" --#~ " latin1 ISO Latin-1 8-bit extension of ASCII\n" --#~ " texte Easy French convention for transmitting email messages\n" --#~ msgstr "" --#~ "Opcja -l bez podania FORMATu i ZESTAWu wywietla list wszystkich zestaww\n" --#~ "(szczegy w dokumentacji). Ulubione zestawy Autora to:\n" --#~ "\n" --#~ " ascii-bs ASCII (7-bitowy), znak BS uywany do dodawania ogonkw\n" --#~ " ibmpc IBM-PC 8-bitowe znaki, z odpowiednimi znakami nowej linii\n" --#~ " latex kodowanie znakw diakrytycznych w formacie LaTeXa\n" --#~ " latin1 ISO Latin-1 8-bitowe rozszerzenie ASCII\n" --#~ " texte popularny francuski standard stosowany w emailu\n" -- --#~ msgid "" --#~ "\n" --#~ " -c, --colons use colons instead of double quotes for diaeresis\n" --#~ " -d, --diacritics limit conversion to diacritics or alike for LaTeX\n" --#~ " -f, --force force recodings even if they are not reversible\n" --#~ " (BEWARE: in this version, -f is always selected)\n" --#~ " -g, --graphics approximate IBMPC rulers by ASCII graphics\n" --#~ " -h, --header[=NAME] write C code with table NAME on stdout, then exit\n" --#~ " -i, --sequence=files use intermediate files for sequencing passes\n" --#~ msgstr "" --#~ "\n" --#~ " -c, --colons uywaj dwukropkw zamiast cudzysoww\n" --#~ " -d, --diacritics ogranicz konwersj do zn. diakryt. itp. dla " --#~ "LaTeXa\n" --#~ " -f, --force wymuszaj konwersje, nawet jeli s nieodwracalne\n" --#~ " (UWAGA: w tej wersji -f zawsze obowizuje)\n" --#~ " -g, --graphics przybliaj ramki IBMPC za pomoc znakw ASCII\n" --#~ " -h, --header[=NAZWA] wypisz zestaw NAZWA w postaci kodu C na stdout\n" --#~ " -i, --sequence=pliki uywaj plikw porednich do przebiegw " --#~ "sekwencyjnych\n" -- --#~ msgid "" --#~ "\n" --#~ "Usage: %s [OPTION]... [BEFORE]:[AFTER] [FILE]...\n" --#~ msgstr "" --#~ "\n" --#~ "Skadnia: %s [OPCJA]... [PRZED]:[PO] [PLIK]...\n" -- --#~ msgid "many to many" --#~ msgstr "wiele na wiele" -- --#~ msgid "many to one" --#~ msgstr "wiele na jeden" -- --#~ msgid "one to many" --#~ msgstr "jeden na wiele" -- --#~ msgid "one to one" --#~ msgstr "jeden na jeden" -- --#~ msgid "steps: %d" --#~ msgstr "krokw: %d" ---- recode-3.6.orig/i18n/it.po -+++ recode-3.6/i18n/it.po -@@ -1,6 +1,6 @@ --# MESSAGGI IN ITALIANO PER GNU RECODE. --# Copyright (C) 1999 Free Software Foundation, Inc. --# Lorenzo Cappelletti , 1999. -+# PO FILE FOR GNU'S RECODE. -+# Copyright (C) 1999, 2000, 2001 Free Software Foundation, Inc. -+# Lorenzo Cappelletti , 1999, 2000, 2001. - # - # table -> tabella - # character set -> insieme di caratteri -@@ -10,11 +10,11 @@ - # - msgid "" - msgstr "" --"Project-Id-Version: GNU recode 3.5\n" -+"Project-Id-Version: GNU recode 3.6\n" - "POT-Creation-Date: 2001-01-02 22:35+0100\n" --"PO-Revision-Date: 1999-11-19 23:30+01:00\n" --"Last-Translator: Lorenzo Cappelletti \n" --"Language-Team: Italian \n" -+"PO-Revision-Date: 2001-07-01 09:41+02:00\n" -+"Last-Translator: Lorenzo Cappelletti \n" -+"Language-Team: Italian \n" - "MIME-Version: 1.0\n" - "Content-Type: text/plain; charset=ISO-8859-1\n" - "Content-Transfer-Encoding: 8-bit\n" -@@ -86,22 +86,16 @@ - msgid "Try `%s %s' for more information.\n" - msgstr "Usare `%s %s' per ulteriori informazioni.\n" - --# Libero `recode' non mi piace --# Cosa sono le surfaces in questo contesto? -+# I dislike "Libero `recode'" as tranlation -+# What does surface mean in this context? - #: src/main.c:237 --msgid "" --"Free `recode' converts files between various character sets and surfaces.\n" --msgstr "" --"`recode' gratuito converte file fra vari insiemi di caratteri e surface.\n" -+msgid "Free `recode' converts files between various character sets and surfaces.\n" -+msgstr "`recode' gratuito converte file fra vari insiemi di caratteri e surface.\n" - - #: src/main.c:241 - #, c-format --msgid "" --"\n" --"Usage: %s [OPTION]... [ [CHARSET] | REQUEST [FILE]... ]\n" --msgstr "" --"\n" --"Uso: %s [OPZIONI]... [ [CHARSET] | RICHIESTA [FILE]... ]\n" -+msgid "\nUsage: %s [OPTION]... [ [CHARSET] | REQUEST [FILE]... ]\n" -+msgstr "\nUso: %s [OPZIONI]... [ [CHARSET] | RICHIESTA [FILE]... ]\n" - - #: src/main.c:244 - msgid "" -@@ -115,13 +109,11 @@ - "opzionali.\n" - - #: src/main.c:250 --#, fuzzy - msgid "" - "\n" - "Listings:\n" - " -l, --list[=FORMAT] list one or all known charsets and aliases\n" --" -k, --known=PAIRS restrict charsets according to known PAIRS " --"list\n" -+" -k, --known=PAIRS restrict charsets according to known PAIRS list\n" - " -h, --header[=[LN/]NAME] write table NAME on stdout using LN, then exit\n" - " -F, --freeze-tables write out a C module holding all tables\n" - " -T, --find-subsets report all charsets being subset of others\n" -@@ -131,16 +123,14 @@ - msgstr "" - "\n" - "Elenchi:\n" --" -l, --list[=FORMATO] lista uno o tutti i charset conosciuti\n" --" -k, --known=COPPIE restringe i charset secondo le COPPIE " --"conosciute\n" -+" -l, --list[=FORMATO] lista uno o tutti i charset e alias conosciuti\n" -+" -k, --known=COPPIE restringe i charset secondo le COPPIE conosciute\n" - " -h, --header[=[LN/]NOME] scrive la tabella NOME sullo stdout usando LN,\n" --" poi esce\n" --" -F, --freeze-tables riporta un modulo C contenente tutte le " --"tabelle\n" -+" quindi esce\n" -+" -F, --freeze-tables riporta un modulo C contenente tutte le tabelle\n" - " -T, --find-subsets riporta tutti i charset sottoinsiemi di altri\n" --" -C, --copyright mostra le condizioni del Copyright e " --"riproduzione\n" -+" charset\n" -+" -C, --copyright mostra le condizioni di Copyright e riproduzione\n" - " --help mostra questo aiuto ed esce\n" - " --version informazioni sulla versione ed uscita\n" - -@@ -157,8 +147,7 @@ - msgstr "" - "\n" - "Modi operativi:\n" --" -v, --verbose spiega le sequenze dei passi e riporta i " --"progressi\n" -+" -v, --verbose spiega le sequenze dei passi e riporta i progressi\n" - " -q, --quiet, --silent inibisce i messaggi di ricodifiche inreversibili\n" - " -f, --force forza le ricodifiche anche quando non reversibili\n" - " -t, --touch touch dei file ricodificati dopo la sostituzione\n" -@@ -167,8 +156,7 @@ - - #: src/main.c:275 - msgid " -p, --sequence=pipe use pipe machinery for sequencing passes\n" --msgstr "" --" -p, --sequence=pipe usa il sistema dei pipe per i passi sequenziali\n" -+msgstr " -p, --sequence=pipe usa il sistema dei pipe per i passi sequenziali\n" - - #: src/main.c:280 - msgid " -p, --sequence=pipe same as -i (on this system)\n" -@@ -187,17 +175,12 @@ - msgstr "" - "\n" - "Regolazioni fini:\n" --" -s, --strict usa mappature strettamente conformi, anche con " --"caratteri slegati\n" --" -d, --diacritics converte solo segni diacritici o simili per " --"HTML/LaTeX\n" --" -S, --source[=LN] limita la ricodifica a stringhe e commenti come per " --"LN\n" --" -c, --colons usa i due punti al posto delle virgolette per le " --"dieresi\n" -+" -s, --strict usa mappature strettamente conformi, anche con caratteri slegati\n" -+" -d, --diacritics converte solo segni diacritici o simili per HTML/LaTeX\n" -+" -S, --source[=LN] limita la ricodifica a stringhe e commenti come per LN\n" -+" -c, --colons usa i due punti al posto delle virgolette per le dieresi\n" - " -g, --graphics approssima le regole IBMPC con grafica ASCII\n" --" -x, --ignore=CHARSET ignora CHARSET quando sceglie un percorso di " --"ricodifica\n" -+" -x, --ignore=CHARSET ignora CHARSET quando sceglie un percorso di ricodifica\n" - - #: src/main.c:296 - msgid "" -@@ -211,46 +194,33 @@ - "`esadecimale'(h) o `pieno'(f) (oppure uno tra `dohf').\n" - - #: src/main.c:302 --#, fuzzy - msgid "" --"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the " --"locale\n" -+"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the locale\n" - "dependent encoding, determined by LC_ALL, LC_CTYPE, LANG.\n" --msgstr "" --"Se DEFAULT_CHARSET non specificato nell'ambiente, il CHARSET predefinito\n" --" `%s`.\n" -+msgstr "A meno che DEFAULT_CHARSET non sia specificato nell'ambiente, il CHARSET viene predefinito secondo la codifica locale, determinata da LC_ALL, LC_TYPE, LANG.\n" - --# Non riesco assolutamente a capire la costruzione logica di questa frase -+# I am not able to understand the logical structure of this sentence. - #: src/main.c:307 - msgid "" - "With -k, possible before charsets are listed for the given after CHARSET,\n" --"both being tabular charsets, with PAIRS of the form " --"`BEF1:AFT1,BEF2:AFT2,...'\n" -+"both being tabular charsets, with PAIRS of the form `BEF1:AFT1,BEF2:AFT2,...'\n" - "and BEFs and AFTs being codes are given as decimal numbers.\n" - msgstr "" --"Con -k, possibile prima, charset vengono listati per quelli dati dopo " --"CHARSET,\n" --"entrambi essendo charset tabulari, con COPPIE nella foram " --"`BEF1:AFT1,BEF2:AFT2,...',\n" -+"Con -k, possibile prima, charset vengono listati per quelli dati dopo CHARSET,\n" -+"entrambi essendo charset tabulari, con COPPIE nella foram `BEF1:AFT1,BEF2:AFT2,...',\n" - "dove BEF e AFT sono codici forniti come numeri decimali.\n" - - #: src/main.c:312 --msgid "" --"LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" --msgstr "" --"LN qualche lingua, pu essere `c', `perl' o `po'; quella predefinita " --"`c'.\n" -+msgid "LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" -+msgstr "LN qualche lingua, pu essere `c', `perl' o `po'; quella predefinita `c'.\n" - - #: src/main.c:315 - msgid "" - "\n" --"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is " --"ENCODING[..ENCODING]...\n" --"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like " --"BEFORE..AFTER,\n" -+"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is ENCODING[..ENCODING]...\n" -+"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like BEFORE..AFTER,\n" - "with BEFORE and AFTER being charsets. An omitted CHARSET implies the usual\n" --"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a " --"/\n" -+"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a /\n" - "with an empty surface name means no surfaces at all. See the manual.\n" - msgstr "" - "\n" -@@ -269,66 +239,53 @@ - "FILE is specified, then act as a filter and recode stdin to stdout.\n" - msgstr "" - "\n" --"Se non dato -i n -p, si presume -p se FILE non presente, altrimenti " --"-i.\n" --"Ogni FILE ricodificato su se stesso, ditruggendo l'originale. Se non " --"viene\n" -+"Se non dato -i n -p, si presume -p se FILE non presente, altrimenti -i.\n" -+"Ogni FILE ricodificato su se stesso, ditruggendo l'originale. Se non viene\n" - "specificato nessun FILE, allora si comporta come un filtro ricodificando lo\n" - "stdin sullo stdout.\n" - - #: src/main.c:329 --msgid "" --"\n" --"Report bugs to .\n" --msgstr "" --"\n" --"Segnalare i bug a .\n" -+msgid "\nReport bugs to .\n" -+msgstr "\nSegnalare i bug a .\n" - - #: src/main.c:430 - #, c-format - msgid "Sequence `%s' is ambiguous" --msgstr "" -+msgstr "La sequenza `%s' ambigua" - - #: src/main.c:434 - #, c-format - msgid "Sequence `%s' is unknown" --msgstr "" -+msgstr "La sequenza `%s' sconosciuta" - - #: src/main.c:464 src/main.c:522 - #, c-format - msgid "Language `%s' is ambiguous" --msgstr "" -+msgstr "Il linguaggio `%s' ambiguo" - - #. -1 - #: src/main.c:468 src/main.c:526 - #, c-format - msgid "Language `%s' is unknown" --msgstr "" -+msgstr "Il linguaggio `%s' sconosciuto" - - #: src/main.c:560 - #, c-format - msgid "Format `%s' is ambiguous" --msgstr "" -+msgstr "Il formato `%s' ambiguo" - - #: src/main.c:564 - #, c-format - msgid "Format `%s' is unknown" --msgstr "" -+msgstr "Il formato `%s' sconosciuto" - - #: src/main.c:621 --#, fuzzy - msgid "Written by Franc,ois Pinard .\n" --msgstr "" --"\n" --"Scritto da Franc,ois Pinard .\n" -+msgstr "Scritto da Franc,ois Pinard .\n" - - #: src/main.c:624 --msgid "" --"\n" --"Copyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" --msgstr "" --"\n" --"Copyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" -+msgid "\nCopyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" -+msgstr "\nCopyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" - - #: src/main.c:628 - msgid "" -@@ -342,26 +299,26 @@ - #: src/main.c:669 - #, c-format - msgid "Symbol `%s' is unknown" --msgstr "" -+msgstr "Il simbolo `%s' sconosciuto" - - #: src/main.c:709 src/main.c:723 - #, c-format - msgid "Charset `%s' is unknown or ambiguous" --msgstr "" -+msgstr "Il charset `%s' sconosciuto o ambiguo" - - #: src/main.c:754 - msgid "Required argument is missing" --msgstr "" -+msgstr "Manca un argomento indispensabile" - - #: src/main.c:797 --#, fuzzy, c-format -+#, c-format - msgid "Syntax is deprecated, please prefer `%s'" --msgstr "Sintassi sconsigliata, si preferisca `%s'" -+msgstr "La sintassi sconsigliata, si preferisca `%s'" - - #: src/main.c:803 - #, c-format - msgid "Request `%s' is erroneous" --msgstr "" -+msgstr "La richiesta `%s' errata" - - #: src/main.c:903 - #, c-format -@@ -373,19 +330,19 @@ - msgstr " fatto\n" - - #: src/main.c:954 --#, fuzzy, c-format -+#, c-format - msgid " failed: %s in step `%s..%s'\n" --msgstr " fallito: %s in %s..%s\n" -+msgstr " fallito: %s al passo `%s..%s'\n" - - #: src/main.c:961 --#, fuzzy, c-format -+#, c-format - msgid "%s failed: %s in step `%s..%s'" --msgstr "%s fallito: %s in %s..%s" -+msgstr "%s fallito: %s al passo `%s..%s'" - - #: src/main.c:984 --#, fuzzy, c-format -+#, c-format - msgid "%s in step `%s..%s'" --msgstr "%s in %s..%s" -+msgstr "%s al passo `%s..%s'" - - #: src/names.c:335 - #, c-format -@@ -426,12 +383,12 @@ - msgstr "Memoria virtuale esaurita" - - #: src/recode.c:155 --#, c-format, ycp-format -+#, c-format - msgid "Codes %3d and %3d both recode to %3d" - msgstr "Entrambi i codici %3d e %3d si ricodificano in %3d" - - #: src/recode.c:169 --#, c-format, ycp-format -+#, c-format - msgid "No character recodes to %3d" - msgstr "Nessun carattere si ricodifica in %3d" - -@@ -453,7 +410,6 @@ - msgid "Cannot complete table from set of known pairs" - msgstr "Impossibile completare la tabella dall'insieme delle coppie conosciute" - --# Una forma migliore per identity recoding? - #: src/recode.c:497 - msgid "Identity recoding, not worth a table" - msgstr "Sto ricodificando nell'identit, tabella non significativa" -@@ -490,7 +446,7 @@ - msgid "byte" - msgstr "byte" - --# Verificare il significato della sigla -+# Chech out the meaning of the acronym - #: src/request.c:38 src/request.c:40 - msgid "ucs2" - msgstr "ucs2" -@@ -549,14 +505,11 @@ - msgstr "Lo stato di attesa del processo figlio 0x%0.2x" - - #: src/testdump.c:298 --msgid "" --"UCS2 Mne Description\n" --"\n" -+msgid "UCS2 Mne Description\n\n" - msgstr "UCS2 Mne Descrizione\n" - - #~ msgid "CHARSET has no default, define DEFAULT_CHARSET in the environment.\n" --#~ msgstr "" --#~ "Nessun CHARSET predefinito, definire DEFAULT_CHARSET nell'ambiente.\n" -+#~ msgstr "Nessun CHARSET predefinito, definire DEFAULT_CHARSET nell'ambiente.\n" - - #~ msgid "Ambiguous sequence `%s'" - #~ msgstr "Sequenza ambigua `%s'" ---- recode-3.6.orig/i18n/tr.po -+++ recode-3.6/i18n/tr.po -@@ -0,0 +1,517 @@ -+# Recode Turkish Translation -+# Copyright (C) 2002 Free Software Foundation, Inc. -+# İrfan Macit , 2002. -+# -+msgid "" -+msgstr "" -+"Project-Id-Version: recode 3.6\n" -+"POT-Creation-Date: 2001-01-02 22:35+0100\n" -+"PO-Revision-Date: 2002-06-20 11:00EET\n" -+"Last-Translator: İrfan Macit \n" -+"Language-Team: Turkish \n" -+"MIME-Version: 1.0\n" -+"Content-Type: text/plain; charset=UTF-8\n" -+"Content-Transfer-Encoding: 8bit\n" -+ -+#: src/main.c:142 -+msgid "No error" -+msgstr "Hata yok" -+ -+#: src/main.c:145 -+msgid "Non canonical input" -+msgstr "Ana biçem olmayan girdi" -+ -+#: src/main.c:148 -+msgid "Ambiguous output" -+msgstr "Belirsiz çıktı" -+ -+#: src/main.c:151 -+msgid "Untranslatable input" -+msgstr "Çevrilemeyen girdi" -+ -+#: src/main.c:154 -+msgid "Invalid input" -+msgstr "Geçersiz girdi" -+ -+#: src/main.c:157 -+msgid "System detected problem" -+msgstr "Sistem hata buldu" -+ -+#: src/main.c:160 -+msgid "Misuse of recoding library" -+msgstr "Yeniden kodlama kitaplığı hatalı kullanılmış" -+ -+#: src/main.c:163 -+msgid "Internal recoding bug" -+msgstr "İçsel yeniden kodlama hatası" -+ -+#: src/main.c:208 -+msgid "" -+"This program is free software; you can redistribute it and/or modify\n" -+"it under the terms of the GNU General Public License as published by\n" -+"the Free Software Foundation; either version 2, or (at your option)\n" -+"any later version.\n" -+"\n" -+"This program is distributed in the hope that it will be useful,\n" -+"but WITHOUT ANY WARRANTY; without even the implied warranty of\n" -+"MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" -+"GNU General Public License for more details.\n" -+"\n" -+"You should have received a copy of the GNU General Public License\n" -+"along with this program; if not, write to the Free Software Foundation,\n" -+"Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n" -+msgstr "" -+"Bu bir serbest yazılımdır; Free Software Foundation tarafından yayınlanan\n" -+"GNU Genel Kamu Lisansı'nın 2. veya (sizin tercihinize bağlı olarak) daha\n" -+"sonraki bir sürümü altında yeniden dağıtabilir ve/veya değiştirebilirsiniz\n" -+"\n" -+"Bu yazılım faydalı olacağı umularak dağıtılmaktadır, fakat\n" -+"HİÇ BİR GARANTİSİ YOKTUR; SATILABİLİRLİĞİ veya\n" -+"HERHANGİ BİR AMACA UYGUNLUĞU için dahi zımni bir garanti\n" -+"içermez. Daha fazla bilgi için GNU Genel Kamu Lisansı'na bakın.\n" -+"\n" -+"Bu yazılımla birlikte GNU Genel Kamu Lisansı'nın bir kopyası gelmiş\n" -+"olmalıdır; eğer yok ise, lütfen Free Software Foundation, Inc., 59 Temple\n" -+"Place - Suite 330, Boston, MA 02111-1307, USA/ABD adresine yazın.\n" -+ -+#: src/main.c:233 -+#, c-format -+msgid "Try `%s %s' for more information.\n" -+msgstr "Daha fazla bilgi için '%s %s'.\n" -+ -+#: src/main.c:237 -+msgid "Free `recode' converts files between various character sets and surfaces.\n" -+msgstr "Serbest `recode', dosyaları değişik karakter kümeleri ve yüzeylere dönüştürür.\n" -+ -+#: src/main.c:241 -+#, c-format -+msgid "" -+"\n" -+"Usage: %s [OPTION]... [ [CHARSET] | REQUEST [FILE]... ]\n" -+msgstr "" -+"\n" -+"Kullanım: %s [SEÇENEK]...[[KARKÜME] | İSTEK [DOSYA]... ]\n" -+ -+#: src/main.c:244 -+msgid "" -+"\n" -+"If a long option shows an argument as mandatory, then it is mandatory\n" -+"for the equivalent short option also. Similarly for optional arguments.\n" -+msgstr "" -+"\n" -+"Uzun seçenekler için zorunlu olan argümanlar kısa seçenekler için de\n" -+"zorunludur. Aynı şey bütün argümanlar için geçerlidir.\n" -+ -+#: src/main.c:250 -+msgid "" -+"\n" -+"Listings:\n" -+" -l, --list[=FORMAT] list one or all known charsets and aliases\n" -+" -k, --known=PAIRS restrict charsets according to known PAIRS list\n" -+" -h, --header[=[LN/]NAME] write table NAME on stdout using LN, then exit\n" -+" -F, --freeze-tables write out a C module holding all tables\n" -+" -T, --find-subsets report all charsets being subset of others\n" -+" -C, --copyright display Copyright and copying conditions\n" -+" --help display this help and exit\n" -+" --version output version information and exit\n" -+msgstr "" -+"\n" -+"Seçenekler:\n" -+" -l, --list[=BİÇEM] bilinen karakter kümeleri ve rumuzların birini ya da hepsini listeler\n" -+" -k, --known=ÇİFT karakter kümelerini bilinen ÇİFT listesine göre sınırlar.\n" -+" -h, --header[=[LN/]İSİM] standart çıktıya LN'i kullanarak tablonun İSMİ'ni yazar ve çıkar\n" -+" -F, --freeze-tables bütün tabloları içeren bir C modülü yazdırır\n" -+" -T, --find-subsets bir başka kümenin alt kümesi olan bütün karakter kümelerini raporlar\n" -+" -C, --copyright telif hakkı ve kopyalama koşullarını gösterir\n" -+" --help bu yardımı gösterir ve çıkar\n" -+" --version sürüm bilgisini gösterir ve çıkar\n" -+ -+#: src/main.c:263 -+msgid "" -+"\n" -+"Operation modes:\n" -+" -v, --verbose explain sequence of steps and report progress\n" -+" -q, --quiet, --silent inhibit messages about irreversible recodings\n" -+" -f, --force force recodings even when not reversible\n" -+" -t, --touch touch the recoded files after replacement\n" -+" -i, --sequence=files use intermediate files for sequencing passes\n" -+" --sequence=memory use memory buffers for sequencing passes\n" -+msgstr "" -+"\n" -+"Çalışma Kipleri:\n" -+" -v, --verbose adım sıralarını anlatır ve durum bilgisi gösterir\n" -+" -q, --quiet, --silent geri dönüşsüz yeniden kodlamalar hakkında bilgi vermez\n" -+" -f, --force geri dönüşsüz bile olsa yeniden kodlamaları yapar\n" -+" -t, --touch değişiklikten sonra yeniden kodlanmış dosyalara `touch' uygular\n" -+" -i, --sequence=files çevrimleri sıralamak için ara dosyalar kullanır\n" -+" --sequence=memory çevrimleri sıralamak için bellek yastıkları kullanır\n" -+ -+#: src/main.c:275 -+msgid " -p, --sequence=pipe use pipe machinery for sequencing passes\n" -+msgstr " -p, --sequence=pipe çevrimleri sıralamak için veriyolu (pipe) kullanır\n" -+ -+#: src/main.c:280 -+msgid " -p, --sequence=pipe same as -i (on this system)\n" -+msgstr " -p, --sequence=pipe (bu sistemde) -i ile aynı\n" -+ -+#: src/main.c:285 -+msgid "" -+"\n" -+"Fine tuning:\n" -+" -s, --strict use strict mappings, even loose characters\n" -+" -d, --diacritics convert only diacritics or alike for HTML/LaTeX\n" -+" -S, --source[=LN] limit recoding to strings and comments as for LN\n" -+" -c, --colons use colons instead of double quotes for diaeresis\n" -+" -g, --graphics approximate IBMPC rulers by ASCII graphics\n" -+" -x, --ignore=CHARSET ignore CHARSET while choosing a recoding path\n" -+msgstr "" -+"\n" -+"İnce ayar:\n" -+" -s, --strict kesin olmayan harflerde bile kesin eşlemeler kullanır\n" -+" -d, --diacritics HTML/LaTeX için yalnız aksan v.b.'yi yeniden kodlar\n" -+" -S, --source[=LN] yeniden kodlamayı dizgeler ve LN gibi açıklamalarla sınırlar\n" -+" -c, --colons ö,ü'nin iki noktası için çift tırnak yerine iki nokta üstüste kullanır\n" -+" -g, --graphics IBMPC cetvellerini ASCII grafikleriyle değiştirir\n" -+" -x, --ignore=KARKÜME yeniden kodlama seçilirken KARKÜME dikkate alınmaz\n" -+ -+#: src/main.c:296 -+msgid "" -+"\n" -+"Option -l with no FORMAT nor CHARSET list available charsets and surfaces.\n" -+"FORMAT is `decimal', `octal', `hexadecimal' or `full' (or one of `dohf').\n" -+msgstr "" -+"\n" -+"-l seçeneği, BİÇEM veya KARKÜME verilmezse mevcut karakter kümelerini listeler\n" -+"BİÇEM, `decimal' (onluk), `octal' (sekizlik), `hexadecimal' (onaltılık), \n" -+"`full' (tam) veya `dohf' seçeneklerinden birisi olabilir.\n" -+ -+#: src/main.c:302 -+msgid "" -+"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the locale\n" -+"dependent encoding, determined by LC_ALL, LC_CTYPE, LANG.\n" -+msgstr "" -+"Eğer DEFAULT_CHARSET çevre değişkeni atanmamışsa, KARKÜME yerel\n" -+"ayarlarına bağlı kodlama olarak atanır ve LC_ALL, LC_CTYPE, LANG çevre\n" -+"değişkenlerinden etkilenir.\n" -+ -+#: src/main.c:307 -+msgid "" -+"With -k, possible before charsets are listed for the given after CHARSET,\n" -+"both being tabular charsets, with PAIRS of the form `BEF1:AFT1,BEF2:AFT2,...'\n" -+"and BEFs and AFTs being codes are given as decimal numbers.\n" -+msgstr "" -+"-k seçeneği ile, dönüşecek karakter kümeleri, dönüştürülecek karakter kümeleri\n" -+"ile birlikte ÇİFT'ler halinde listelenir: `ÖNC1:SON1,ÖNC2:SON2,...'\n" -+"ÖNC ve SON karakter kümesi isimleri, ondalık sayı halinde kodlardan oluşur.\n" -+ -+#: src/main.c:312 -+msgid "LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" -+msgstr "LN bir bilgisayar dilidir, `c', `perl' veya `po' olabilir; öntanımlı: `c'\n" -+ -+#: src/main.c:315 -+msgid "" -+"\n" -+"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is ENCODING[..ENCODING]...\n" -+"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like BEFORE..AFTER,\n" -+"with BEFORE and AFTER being charsets. An omitted CHARSET implies the usual\n" -+"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a /\n" -+"with an empty surface name means no surfaces at all. See the manual.\n" -+msgstr "" -+"\n" -+"İSTEK: ALTİSTEK,[ALTİSTEK]...; ALTİSTEK ise KODLAMA[..KODLAMA]...\n" -+"KODLAMA: [KARKÜME][/YÜZEY]]...; İSTEK genelde ÖNCE..SONRA\n" -+"biçeminde olur, ÖNCE ve SONRA karakter kümeleridir. Belirtilmemiş bir\n" -+"karakter kümesi öntanımlı karakter kümesinin kullanılacağına işaret eder.\n" -+"Belirtilmemiş [/YÜZEY]..., o KARKÜME için öntanımlı yüzeyin kullanılacağına\n" -+"işaret eder. Yalnız / kullanılır ve yüzey belirtilmezse, hiç yüzey kullanılmaz.\n" -+"Lütfen el kitabını inceleyin.\n" -+ -+#: src/main.c:323 -+msgid "" -+"\n" -+"If none of -i and -p are given, presume -p if no FILE, else -i.\n" -+"Each FILE is recoded over itself, destroying the original. If no\n" -+"FILE is specified, then act as a filter and recode stdin to stdout.\n" -+msgstr "" -+"\n" -+"Eğer -i ve -p'nin hiç birisi verilmemiş ve DOSYA yok ise, -p, aksi\n" -+"halde -i varsayılır. Her DOSYA kendi üstüne yeniden kodlanır ve orjinali\n" -+"yok edilir. Eğer DOSYA verilmemişse, bir filtre görevi yapar ve standart\n" -+"girdiyi, standart çıktıya yeniden kodlar.\n" -+ -+#: src/main.c:329 -+msgid "" -+"\n" -+"Report bugs to .\n" -+msgstr "" -+"\n" -+"Yazılım hatalarını adresine,\n" -+"Çeviri hatalarını adresine yollayın.\n" -+ -+#: src/main.c:430 -+#, c-format -+msgid "Sequence `%s' is ambiguous" -+msgstr "`%s' sırası belirsiz" -+ -+#: src/main.c:434 -+#, c-format -+msgid "Sequence `%s' is unknown" -+msgstr "`%s' sırası bilinmiyor" -+ -+#: src/main.c:464 src/main.c:522 -+#, c-format -+msgid "Language `%s' is ambiguous" -+msgstr "`%s' dili belirsiz" -+ -+#. -1 -+#: src/main.c:468 src/main.c:526 -+#, c-format -+msgid "Language `%s' is unknown" -+msgstr "`%s' dili bilinmiyor" -+ -+#: src/main.c:560 -+#, c-format -+msgid "Format `%s' is ambiguous" -+msgstr "`%s' biçemi belirsiz" -+ -+#: src/main.c:564 -+#, c-format -+msgid "Format `%s' is unknown" -+msgstr "`%s' biçemi bilinmiyor" -+ -+#: src/main.c:621 -+msgid "Written by Franc,ois Pinard .\n" -+msgstr "Yazan: François Pinard .\n" -+ -+#: src/main.c:624 -+msgid "" -+"\n" -+"Copyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" -+msgstr "" -+"\n" -+"Telif Hakkı (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" -+ -+#: src/main.c:628 -+msgid "" -+"This is free software; see the source for copying conditions. There is NO\n" -+"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" -+msgstr "" -+"Bu bir serbest yazılımdır; kopyalama koşulları için kaynak koduna bakınız.\n" -+"HİÇ BİR GARANTİSİ YOKTUR; SATILABİLİRLİĞİ veya\n" -+"HERHANGİ BİR AMACA UYGUNLUĞU için dahi zımni bir garanti\n" -+"içermez.\n" -+ -+#: src/main.c:669 -+#, c-format -+msgid "Symbol `%s' is unknown" -+msgstr "`%s' sembolü bilinmiyor" -+ -+#: src/main.c:709 src/main.c:723 -+#, c-format -+msgid "Charset `%s' is unknown or ambiguous" -+msgstr "`%s' karakter kümesi bilinmiyor veya belirsiz" -+ -+#: src/main.c:754 -+msgid "Required argument is missing" -+msgstr "Zorunlu argüman eksik" -+ -+#: src/main.c:797 -+#, c-format -+msgid "Syntax is deprecated, please prefer `%s'" -+msgstr "Biçem eski, lütfen `%s'i tercih edin" -+ -+#: src/main.c:803 -+#, c-format -+msgid "Request `%s' is erroneous" -+msgstr "`%s' isteği hatalı" -+ -+#: src/main.c:903 -+#, c-format -+msgid "Recoding %s..." -+msgstr "%s yeniden kodlanıyor..." -+ -+#: src/main.c:913 -+msgid " done\n" -+msgstr " bitti\n" -+ -+#: src/main.c:954 -+#, c-format -+msgid " failed: %s in step `%s..%s'\n" -+msgstr "başarısız: `%2$s..%3$s' adımında %1$s\n" -+ -+#: src/main.c:961 -+#, c-format -+msgid "%s failed: %s in step `%s..%s'" -+msgstr "%1$s başarısız: `%3$s..%4$s' adımında %2$s" -+ -+#: src/main.c:984 -+#, c-format -+msgid "%s in step `%s..%s'" -+msgstr "`%2$s..%3$s' adımında %1$s" -+ -+#: src/names.c:335 -+#, c-format -+msgid "Charset %s already exists and is not %s" -+msgstr "%s karakter kümesi zaten mevcut ve %s değil" -+ -+#: src/names.c:831 -+#, c-format -+msgid "Cannot list `%s', no names available for this charset" -+msgstr "`%s' listelenemiyor, bu karakter kümesi için isim yok" -+ -+#. code counter -+#. expected value for code counter -+#. insert a while line before printing -+#. Print the long table according to explode data. -+#: src/names.c:984 src/names.c:1030 -+#, c-format -+msgid "Dec Oct Hex UCS2 Mne %s\n" -+msgstr "Ond Sek OnaltıUCS2 Mne %s\n" -+ -+#: src/names.c:1049 -+#, c-format -+msgid "Sorry, no names available for `%s'" -+msgstr "`%s' için hiç isim mevcut değil" -+ -+#: src/outer.c:125 -+#, c-format -+msgid "Resurfacer set more than once for `%s'" -+msgstr "`%s' için yüzeyleyici birden fazla defa atanmış" -+ -+#: src/outer.c:133 -+#, c-format -+msgid "Unsurfacer set more than once for `%s'" -+msgstr "`%s' için yüzey yokedici birden fazla defa atanmış" -+ -+#: src/recode.c:115 src/recode.c:127 -+msgid "Virtual memory exhausted" -+msgstr "Sanal bellek tükendi" -+ -+#: src/recode.c:155 -+#, c-format, ycp-format -+msgid "Codes %3d and %3d both recode to %3d" -+msgstr "%3d ve %3d kodlarının ikisi de %3d'ye yeniden kodluyor" -+ -+#: src/recode.c:169 -+#, c-format, ycp-format -+msgid "No character recodes to %3d" -+msgstr "%3d'ye yeniden kodlanan harf yok" -+ -+#: src/recode.c:170 -+msgid "Cannot invert given one-to-one table" -+msgstr "Verilen birebir eşlemeli tablo tersine çevrilemez" -+ -+#: src/recode.c:224 src/recode.c:236 -+#, c-format -+msgid "Following diagnostics for `%s' to `%s'" -+msgstr "`%s'den `%s'e durum bildirimleri inceleniyor" -+ -+#: src/recode.c:229 src/recode.c:241 -+#, c-format -+msgid "Pair no. %d: <%3d, %3d> conflicts with <%3d, %3d>" -+msgstr "%d no'lu çift <%3d, %3d>, <%3d, %3d> ile çakışıyor" -+ -+#: src/recode.c:272 -+msgid "Cannot complete table from set of known pairs" -+msgstr "Tablo bilinen çiftler kümesinden tamamlanamıyor" -+ -+#: src/recode.c:497 -+msgid "Identity recoding, not worth a table" -+msgstr "Birebir yeniden kodlama, tabloya gerek yok" -+ -+#: src/recode.c:504 -+msgid "Recoding is too complex for a mere table" -+msgstr "Yeniden kodlama bir tablo için fazla karmaşık" -+ -+#. Print the header of the header file. -+#: src/recode.c:536 -+#, c-format -+msgid "%sConversion table generated mechanically by Free `%s' %s" -+msgstr "%sDönüşüm tablosu mekanik olarak Free `%s' %s tarafından oluşturulmuştur" -+ -+#: src/recode.c:538 -+#, c-format -+msgid "%sfor sequence %s.%s" -+msgstr "%2$s.%3$s sırası için %1$s" -+ -+#: src/recode.c:744 -+msgid "No table to print" -+msgstr "Yazdırılacak tablo yok" -+ -+#: src/request.c:34 -+msgid "reversible" -+msgstr "geri dönüşümlü" -+ -+#: src/request.c:36 -+#, c-format -+msgid "%s to %s" -+msgstr "%s'den %s'e" -+ -+#: src/request.c:37 src/request.c:39 -+msgid "byte" -+msgstr "bayt" -+ -+#: src/request.c:38 src/request.c:40 -+msgid "ucs2" -+msgstr "ucs2" -+ -+#: src/request.c:38 src/request.c:40 -+msgid "variable" -+msgstr "değişken" -+ -+#: src/request.c:111 -+msgid "*Unachievable*" -+msgstr "*Ulaşılamaz*" -+ -+#: src/request.c:113 -+msgid "*mere copy*" -+msgstr "*yalnızca kopya*" -+ -+#: src/request.c:246 -+msgid "Virtual memory exhausted!" -+msgstr "Sanal bellek tükendi!" -+ -+#: src/request.c:265 -+msgid "Step initialisation failed" -+msgstr "Adım başlangıcı başarısız" -+ -+#: src/request.c:272 -+msgid "Step initialisation failed (unprocessed options)" -+msgstr "Adım başlangıcı başarısız (işlenmemiş seçenekler)" -+ -+#: src/request.c:568 -+#, c-format -+msgid "Request: %s\n" -+msgstr "İstek: %s\n" -+ -+#: src/request.c:720 -+#, c-format -+msgid "Shrunk to: %s\n" -+msgstr "%s'e küçüldü\n" -+ -+#: src/request.c:823 src/request.c:932 -+#, c-format -+msgid "Unrecognised surface name `%s'" -+msgstr "Bilinmeyen yüzey adı `%s'" -+ -+#: src/request.c:903 -+#, c-format -+msgid "No way to recode from `%s' to `%s'" -+msgstr "`%s'den `%s'e yeniden kodlamanın yolu yok" -+ -+#: src/request.c:1013 -+msgid "Expecting `..' in request" -+msgstr "İstekte `..' bekleniyordu" -+ -+#: src/task.c:826 src/task.c:1002 -+#, c-format -+msgid "Child process wait status is 0x%0.2x" -+msgstr "Ast işlem bekleme durumu: 0x%0.2x" -+ -+#: src/testdump.c:298 -+msgid "" -+"UCS2 Mne Description\n" -+"\n" -+msgstr "" -+"UCS2 Mne Açıklama\n" -+"\n" ---- recode-3.6.orig/i18n/de.po -+++ recode-3.6/i18n/de.po -@@ -1,18 +1,18 @@ - # recode. --# Copyright (C) 1995, 1996 Free Software Foundation, Inc. -+# Copyright (C) 1995, 1996, 2006 Free Software Foundation, Inc. - # Ulrich Drepper , 1995. --# Karl Eichwalder , 1996 -+# Karl Eichwalder , 1996, 2006 - # - msgid "" - msgstr "" --"Project-Id-Version: recode 3.5\n" -+"Project-Id-Version: recode 3.6\n" - "POT-Creation-Date: 2001-01-02 22:35+0100\n" --"PO-Revision-Date: 1999-09-14 22:51+01:00\n" --"Last-Translator: Daniel Naber \n" --"Language-Team: German \n" -+"PO-Revision-Date: 2006-12-09 19:25+0100\n" -+"Last-Translator: Karl Eichwalder \n" -+"Language-Team: German \n" - "MIME-Version: 1.0\n" --"Content-Type: text/plain; charset=ISO-8859-1\n" --"Content-Transfer-Encoding: 8-bit\n" -+"Content-Type: text/plain; charset=UTF-8\n" -+"Content-Transfer-Encoding: 8bit\n" - - #: src/main.c:142 - msgid "No error" -@@ -20,7 +20,7 @@ - - #: src/main.c:145 - msgid "Non canonical input" --msgstr "Keine gltige Eingabe" -+msgstr "Keine gültige Eingabe" - - #: src/main.c:148 - msgid "Ambiguous output" -@@ -28,15 +28,15 @@ - - #: src/main.c:151 - msgid "Untranslatable input" --msgstr "Nicht bersetzbare Eingabe" -+msgstr "Nicht übersetzbare Eingabe" - - #: src/main.c:154 - msgid "Invalid input" --msgstr "Ungltige Eingabe" -+msgstr "Ungültige Eingabe" - - #: src/main.c:157 - msgid "System detected problem" --msgstr "Das System ist auf ein Problem gestossen" -+msgstr "Das System ist auf ein Problem gestoßen" - - #: src/main.c:160 - msgid "Misuse of recoding library" -@@ -62,23 +62,22 @@ - "along with this program; if not, write to the Free Software Foundation,\n" - "Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n" - msgstr "" --"Der folgende Text ist eine nicht berprfte bersetzung, die zur\n" -+"Der folgende Text ist eine nicht überprüfte Übersetzung, die zur\n" - "Information dient; in rechtlichen Fragen ist immer das englische\n" - "Original ausschlaggebend.\n" - "\n" --"Dieses Program ist freie Software; Sie knnen es nach den Bedingungen\n" -+"Dieses Programm ist freie Software; Sie können es nach den Bedingungen\n" - "der von der Free Software Foundation als \"GNU General Public License\"\n" --"verffentlichten Lizenz weitergeben und/oder verndern; dabei gilt\n" --"die Version 2 oder (frei nach ihrer Wahl) jede sptere Version.\n" -+"veröffentlichten Lizenz weitergeben und/oder verändern; dabei gilt\n" -+"die Version 2 oder (frei nach ihrer Wahl) jede spätere Version.\n" - "\n" --"Dieses Programm wird in der Hoffnung verteilt, da es ntzlich ist,\n" -+"Dieses Programm wird in der Hoffnung verteilt, daß es nützlich ist,\n" - "jedoch OHNE JEGLICHE GARANTIE; sogar ohne die implizite Garantie der\n" --"MARKTFHIGKEIT oder der ERFLLUNG EINES BESTIMMTEN ZWECKES. In der\n" --"\"GNU General Public License\" knnen weitere Einzelheiten nachgelesen\n" -+"MARKTFÄHIGKEIT oder der ERFÜLLUNG EINES BESTIMMTEN ZWECKES. In der\n" -+"\"GNU General Public License\" können weitere Einzelheiten nachgelesen\n" - "werden.\n" - "\n" --"Sie sollten mit diesem Programm eine Kopie der \"GNU General Public " --"License\"\n" -+"Sie sollten mit diesem Programm eine Kopie der \"GNU General Public License\"\n" - "erhalten haben; wenn nicht, schreiben Sie an die Free Software Foundation,\n" - "Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n" - -@@ -88,10 +87,9 @@ - msgstr "`%s %s' zeigt weitere Informationen.\n" - - #: src/main.c:237 --msgid "" --"Free `recode' converts files between various character sets and surfaces.\n" -+msgid "Free `recode' converts files between various character sets and surfaces.\n" - msgstr "" --"`recode' konvertiert Dateien zwischen diversen Zeichenstzen und\n" -+"`recode' konvertiert Dateien zwischen diversen Zeichensätzen und\n" - "-formaten.\n" - - #: src/main.c:241 -@@ -110,18 +108,16 @@ - "for the equivalent short option also. Similarly for optional arguments.\n" - msgstr "" - "\n" --"Wenn eine Option ein Argument zwingend braucht, gilt das unabhngig\n" -+"Wenn eine Option ein Argument zwingend braucht, gilt das unabhängig\n" - "davon, ob die Kurz- oder Langschreibweise der Option benutzt wird.\n" --"Entsprechendes gilt fr optionale Argumente.\n" -+"Entsprechendes gilt für optionale Argumente.\n" - - #: src/main.c:250 --#, fuzzy - msgid "" - "\n" - "Listings:\n" - " -l, --list[=FORMAT] list one or all known charsets and aliases\n" --" -k, --known=PAIRS restrict charsets according to known PAIRS " --"list\n" -+" -k, --known=PAIRS restrict charsets according to known PAIRS list\n" - " -h, --header[=[LN/]NAME] write table NAME on stdout using LN, then exit\n" - " -F, --freeze-tables write out a C module holding all tables\n" - " -T, --find-subsets report all charsets being subset of others\n" -@@ -131,15 +127,12 @@ - msgstr "" - "\n" - "Auflistungen:\n" --" -l, --list[=FORMAT] Einen oder alle bekannten Zeichenstze " --"auflisten\n" --" -k, --known=PAARE Zeichenstze auf Liste bekannter PAARE " --"beschrnken\n" --" -h, --header[=[LN/]NAME] LN-Code fr Tabelle NAME ausgeben\n" -+" -l, --list[=FORMAT] Einen oder alle bekannten Zeichensätze auflisten\n" -+" -k, --known=PAARE Zeichensätze auf Liste bekannter PAARE beschränken\n" -+" -h, --header[=[LN/]NAME] LN-Code für Tabelle NAME ausgeben\n" - " -F, --freeze-tables Ein C-Modul mit allen Tabellen ausgeben\n" --" -T, --find-subsets Alle Zeichenstze ausgeben, die Untermengen " --"von\n" --" anderen Zeichenstzen sind\n" -+" -T, --find-subsets Alle Zeichensätze ausgeben, die Untermengen von\n" -+" anderen Zeichensätzen sind\n" - " -C, --copyright Copyright und Kopierbedingungen anzeigen\n" - " --help Diese Hilfe anzeigen\n" - " --version Versionsnummer ausgeben\n" -@@ -157,23 +150,18 @@ - msgstr "" - "\n" - "Funktionsmodi:\n" --" -v, --verbose Reihenfolge der Umkodierungsschritte und " --"Fortschritt\n" -+" -v, --verbose Reihenfolge der Umkodierungsschritte und Fortschritt\n" - " anzeigen\n" --" -q, --quiet, --silent Keine Meldungen ber nicht umkehrbare " --"Umkodierungen\n" --" -f, --force Umkodierung vornehmen, auch wenn sie nicht " --"umkehrbar ist\n" --" -t, --touch Nach der Umkodierung ein 'touch' auf die " --"umkodierte\n" --" Datei ausfhren\n" --" -i, --sequence=files Fr Zwischenschritte temporre Dateien anlegen\n" --" --sequence=memory Fr Zwischenschritte Speicherpuffer verwenden\n" -+" -q, --quiet, --silent Keine Meldungen über nicht umkehrbare Umkodierungen\n" -+" -f, --force Umkodierung vornehmen, auch wenn sie nicht umkehrbar ist\n" -+" -t, --touch Nach der Umkodierung ein 'touch' auf die umkodierte\n" -+" Datei ausführen\n" -+" -i, --sequence=files Für Zwischenschritte temporäre Dateien anlegen\n" -+" --sequence=memory Für Zwischenschritte Speicherpuffer verwenden\n" - - #: src/main.c:275 - msgid " -p, --sequence=pipe use pipe machinery for sequencing passes\n" --msgstr "" --" -p, --sequence=pipe benutze \"pipe\" fr Abarbeitung der Schritte\n" -+msgstr " -p, --sequence=pipe benutze \"pipe\" für Abarbeitung der Schritte\n" - - #: src/main.c:280 - msgid " -p, --sequence=pipe same as -i (on this system)\n" -@@ -192,19 +180,14 @@ - msgstr "" - "\n" - "Feineinstellungen:\n" --" -s, --strict Strikte Abbildung benutzen, auch bei " --"Zeichenverlust\n" --" -d, --diacritics Nur Akzente/Umlaute umkodieren (z.B. fr " --"HTML/LaTeX)\n" -+" -s, --strict Strikte Abbildung benutzen, auch bei Zeichenverlust\n" -+" -d, --diacritics Nur Akzente/Umlaute umkodieren (z.B. für HTML/LaTeX)\n" - " -S, --source[=LN] Bei LN nur Zeichenketten und Kommentare umkodieren\n" --" -c, --colons benutze ':' statt '\"' fr Umlaute (z.B. 'fu:r' " --"statt\n" -+" -c, --colons benutze ':' statt '\"' für Umlaute (z.B. 'fu:r' statt\n" - " ('fu\"r')\n" --" -g, --graphics 'Linienzeichen' des IBMPC-Zeichensatzes durch " --"hnliche\n" -+" -g, --graphics 'Linienzeichen' des IBMPC-Zeichensatzes durch ähnliche\n" - " ASCII-Zeichen darstellen\n" --" -x, --ignore=ZEISATZ ZEISATZ bei der Wahl der Kodierungsschritte " --"ignorieren\n" -+" -x, --ignore=ZEISATZ ZEISATZ bei der Wahl der Kodierungsschritte ignorieren\n" - - #: src/main.c:296 - msgid "" -@@ -213,36 +196,30 @@ - "FORMAT is `decimal', `octal', `hexadecimal' or `full' (or one of `dohf').\n" - msgstr "" - "\n" --"Die Option -l ohne FORMAT und ZEISATZ listet alle Zeichenstze und -formate\n" --"auf. FORMAT ist `decimal', `octal', `hexadecimal' oder `full' (knnen durch " --"den\n" --"Anfangsbuchstaben abgekrzt werden)\n" -+"Die Option -l ohne FORMAT und ZEISATZ listet alle Zeichensätze und -formate\n" -+"auf. FORMAT ist `decimal', `octal', `hexadecimal' oder `full' (können durch den\n" -+"Anfangsbuchstaben abgekürzt werden)\n" - - #: src/main.c:302 --#, fuzzy - msgid "" --"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the " --"locale\n" -+"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the locale\n" - "dependent encoding, determined by LC_ALL, LC_CTYPE, LANG.\n" - msgstr "" --"Wenn die Umgebungsvariable DEFAULT_CHARSET nicht gesetzt ist,\n" --"gilt fr ZEISATZ ist die Voreinstellung `%s'.\n" -+"Wenn die Umgebungsvariable DEFAULT_CHARSET nicht gesetzt ist, gilt für ZEISATZ\n" -+"die lokale-abhängiges Kodierung, festgelegt von LC_ALL, LC_CTYPE. LANG wird.\n" - - #: src/main.c:307 - msgid "" - "With -k, possible before charsets are listed for the given after CHARSET,\n" --"both being tabular charsets, with PAIRS of the form " --"`BEF1:AFT1,BEF2:AFT2,...'\n" -+"both being tabular charsets, with PAIRS of the form `BEF1:AFT1,BEF2:AFT2,...'\n" - "and BEFs and AFTs being codes are given as decimal numbers.\n" - msgstr "" --"Mit '-k' werden mgliche 'Vorher'-Zeichenstze fr den 'Nachher'-ZEISATZ\n" --"ausgegeben, mit PAAREn der Form 'VOR1:NACH1,VOR2:NACH2,...', wobei die VORs " --"und\n" -+"Mit '-k' werden mögliche 'Vorher'-Zeichensätze für den 'Nachher'-ZEISATZ\n" -+"ausgegeben, mit PAAREn der Form 'VOR1:NACH1,VOR2:NACH2,...', wobei die VORs und\n" - "NACHs Kodes sind. Alle Kodes werden als Dezimalzahlen angegeben.\n" - - #: src/main.c:312 --msgid "" --"LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" -+msgid "LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" - msgstr "" - "LN ist eine Programmiersprache, z.B. `c', `perl' oder `po', wobei `c' die\n" - "Voreinstellung ist.\n" -@@ -250,24 +227,18 @@ - #: src/main.c:315 - msgid "" - "\n" --"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is " --"ENCODING[..ENCODING]...\n" --"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like " --"BEFORE..AFTER,\n" -+"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is ENCODING[..ENCODING]...\n" -+"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like BEFORE..AFTER,\n" - "with BEFORE and AFTER being charsets. An omitted CHARSET implies the usual\n" --"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a " --"/\n" -+"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a /\n" - "with an empty surface name means no surfaces at all. See the manual.\n" - msgstr "" - "\n" --"ANFRAGE ist UNTERANFRAGE[,UNTERANFRAGE]...; UNTERANFRAGE ist " --"KODIERUNG[..KODIERUNG]...\n" --"KODIERUNG ist [ZEISATZ][/[SURFACE]]...; ANFRAGE ist meistens " --"VORHER..NACHHER,\n" --"wobei VORHER und NACHHER Zeichenstze sind. Ohne ZEISATZ wird der bliche\n" --"Zeichensatz benutzt; ohne [/SURFACE]... wird das fr ZEISATZ bliche Format\n" --"angenommen; ein / ohne Angabe eines Formats heisst, dass kein Format " --"angenommen\n" -+"ANFRAGE ist UNTERANFRAGE[,UNTERANFRAGE]...; UNTERANFRAGE ist KODIERUNG[..KODIERUNG]...\n" -+"KODIERUNG ist [ZEISATZ][/[SURFACE]]...; ANFRAGE ist meistens VORHER..NACHHER,\n" -+"wobei VORHER und NACHHER Zeichensätze sind. Ohne ZEISATZ wird der übliche\n" -+"Zeichensatz benutzt; ohne [/SURFACE]... wird das für ZEISATZ übliche Format\n" -+"angenommen; ein / ohne Angabe eines Formats heißt, dass kein Format angenommen\n" - "wird. Siehe Anleitung.\n" - - #: src/main.c:323 -@@ -280,7 +251,7 @@ - "\n" - "Wenn weder -i noch -p angegeben sind, wird -p angenommen wenn keine DATEI\n" - "angegeben ist, sonst -i.\n" --"Jede DATEI wird bei mit der umkodierten Datei berschrieben. Wenn keine\n" -+"Jede DATEI wird bei mit der umkodierten Datei überschrieben. Wenn keine\n" - "DATEI angegen ist wird die Standardeingabe umkodiert und auf der\n" - "Standardausgabe ausgegeben.\n" - -@@ -290,45 +261,42 @@ - "Report bugs to .\n" - msgstr "" - "\n" --"Berichte ber Programmfehler bitte an .\n" -+"Berichte über Programmfehler bitte an .\n" - - #: src/main.c:430 - #, c-format - msgid "Sequence `%s' is ambiguous" --msgstr "" -+msgstr "Abfolge »%s« ist zweideutig" - - #: src/main.c:434 - #, c-format - msgid "Sequence `%s' is unknown" --msgstr "" -+msgstr "Abfolge »%s« ist unbekannt" - - #: src/main.c:464 src/main.c:522 - #, c-format - msgid "Language `%s' is ambiguous" --msgstr "" -+msgstr "Sprache »%s« ist zweideutig" - - #. -1 - #: src/main.c:468 src/main.c:526 - #, c-format - msgid "Language `%s' is unknown" --msgstr "" -+msgstr "Sprache »%s« ist unbekannt" - - #: src/main.c:560 - #, c-format - msgid "Format `%s' is ambiguous" --msgstr "" -+msgstr "Format »%s« ist zweideutig" - - #: src/main.c:564 - #, c-format - msgid "Format `%s' is unknown" --msgstr "" -+msgstr "Format »%s« ist unbekannt" - - #: src/main.c:621 --#, fuzzy - msgid "Written by Franc,ois Pinard .\n" --msgstr "" --"\n" --"Geschrieben von Franc,ois Pinard .\n" -+msgstr "Geschrieben von François Pinard .\n" - - #: src/main.c:624 - msgid "" -@@ -344,33 +312,33 @@ - "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" - msgstr "" - "Dieses Programm ist freie Software; die genauen Nutzungsbedingungen\n" --"sind der Datei COPYING in den Quellen zu entnehmen.\n" --"Es wird keinerlei Gewhrleistung bernommen; auch nicht fr gewerbliche\n" -+"sind der Datei »COPYING« in den Quellen zu entnehmen.\n" -+"Es wird keinerlei Gewährleistung übernommen; auch nicht für gewerbliche\n" - "Nutzbarkeit oder Tauglichkeit zu einem anderen Zweck.\n" - - #: src/main.c:669 - #, c-format - msgid "Symbol `%s' is unknown" --msgstr "" -+msgstr "Symbol »%s« ist unbekannt" - - #: src/main.c:709 src/main.c:723 - #, c-format - msgid "Charset `%s' is unknown or ambiguous" --msgstr "" -+msgstr "Zeichensatz »%s« ist unbekannt oder zweideutig" - - #: src/main.c:754 - msgid "Required argument is missing" --msgstr "" -+msgstr "Erforderliches Argument fehlt" - - #: src/main.c:797 --#, fuzzy, c-format -+#, c-format - msgid "Syntax is deprecated, please prefer `%s'" --msgstr "Veraltete Syntax, bitte `%s' benutzen" -+msgstr "Veraltete Syntax, bitte »%s« bevorzugen" - - #: src/main.c:803 - #, c-format - msgid "Request `%s' is erroneous" --msgstr "" -+msgstr "Anfrage »%s« ist fehlerhaft" - - #: src/main.c:903 - #, c-format -@@ -382,19 +350,19 @@ - msgstr " fertig\n" - - #: src/main.c:954 --#, fuzzy, c-format -+#, c-format - msgid " failed: %s in step `%s..%s'\n" --msgstr " fehlgeschlagen: %s in %s..%s\n" -+msgstr " fehlgeschlagen: %s bei Schritt »%s..%s«\n" - - #: src/main.c:961 --#, fuzzy, c-format -+#, c-format - msgid "%s failed: %s in step `%s..%s'" --msgstr "%s fehlgeschlagen: %s in %s..%s" -+msgstr "%s fehlgeschlagen: %s bei Schritt »%s..%s«" - - #: src/main.c:984 --#, fuzzy, c-format -+#, c-format - msgid "%s in step `%s..%s'" --msgstr "%s bei %s..%s" -+msgstr "%s bei Schritt »%s..%s«" - - #: src/names.c:335 - #, c-format -@@ -405,8 +373,8 @@ - #, c-format - msgid "Cannot list `%s', no names available for this charset" - msgstr "" --"Kann `%s' nicht anzeigen, keine Namen fr diesen Zeichensatz\n" --" verfgbar" -+"Kann `%s' nicht anzeigen, keine Namen für diesen Zeichensatz\n" -+" verfügbar" - - #. code counter - #. expected value for code counter -@@ -420,17 +388,17 @@ - #: src/names.c:1049 - #, c-format - msgid "Sorry, no names available for `%s'" --msgstr "Tut mir leid, aber es sind fr `%s' keine Namen verfgbar" -+msgstr "Tut mir leid, aber es sind für `%s' keine Namen verfügbar" - - #: src/outer.c:125 - #, c-format - msgid "Resurfacer set more than once for `%s'" --msgstr "`Resurfacer' fr `%s' mehr als einmal gesetzt." -+msgstr "`Resurfacer' für `%s' mehr als einmal gesetzt." - - #: src/outer.c:133 - #, c-format - msgid "Unsurfacer set more than once for `%s'" --msgstr "`Unsurfacer' fr `%s' mehr als einmal gesetzt." -+msgstr "`Unsurfacer' für `%s' mehr als einmal gesetzt." - - #: src/recode.c:115 src/recode.c:127 - msgid "Virtual memory exhausted" -@@ -453,7 +421,7 @@ - #: src/recode.c:224 src/recode.c:236 - #, c-format - msgid "Following diagnostics for `%s' to `%s'" --msgstr "Folgende Diagnose fr Konvertierung von `%s' nach `%s'" -+msgstr "Folgende Diagnose für Konvertierung von `%s' nach `%s'" - - #: src/recode.c:229 src/recode.c:241 - #, c-format -@@ -462,27 +430,26 @@ - - #: src/recode.c:272 - msgid "Cannot complete table from set of known pairs" --msgstr "" --"Kann die Tabelle aus der Menge der bekannten Paare nicht vervollstndigen" -+msgstr "Kann die Tabelle aus der Menge der bekannten Paare nicht vervollständigen" - - #: src/recode.c:497 - msgid "Identity recoding, not worth a table" --msgstr "Umkodierung ohne nderung, zu trivial fr eine Tabelle" -+msgstr "Umkodierung ohne Änderung, zu trivial für eine Tabelle" - - #: src/recode.c:504 - msgid "Recoding is too complex for a mere table" --msgstr "Umkodierung ist fr eine einfache Tabelle zu kompliziert" -+msgstr "Umkodierung ist für eine einfache Tabelle zu kompliziert" - - #. Print the header of the header file. - #: src/recode.c:536 - #, c-format - msgid "%sConversion table generated mechanically by Free `%s' %s" --msgstr "%sKonvertierung automatisch generiert von GNU %s %s" -+msgstr "%sKonvertierung automatisch generiert von »GNU %s %s«" - - #: src/recode.c:538 - #, c-format - msgid "%sfor sequence %s.%s" --msgstr "%sfr Folge %s.%s" -+msgstr "%sfür Folge %s.%s" - - #: src/recode.c:744 - msgid "No table to print" -@@ -511,7 +478,7 @@ - - #: src/request.c:111 - msgid "*Unachievable*" --msgstr "*unmglich*" -+msgstr "*unmöglich*" - - #: src/request.c:113 - msgid "*mere copy*" -@@ -547,7 +514,7 @@ - #: src/request.c:903 - #, c-format - msgid "No way to recode from `%s' to `%s'" --msgstr "Keine Mglichkeit, von `%s' nach `%s' umzukodieren" -+msgstr "Keine Möglichkeit, von `%s' nach `%s' umzukodieren" - - #: src/request.c:1013 - msgid "Expecting `..' in request" -@@ -565,29 +532,3 @@ - msgstr "" - "UCS2 Mne Beschreibung\n" - "\n" -- --#~ msgid "CHARSET has no default, define DEFAULT_CHARSET in the environment.\n" --#~ msgstr "" --#~ "Fr ZEISATZ existiert keine Voreinstellung, bitte die Umgebungsvariable\n" --#~ "DEFAULT_CHARSET setzen.\n" -- --#~ msgid "Ambiguous sequence `%s'" --#~ msgstr "Mehrdeutige Folge `%s'" -- --#~ msgid "Unknown sequence `%s'" --#~ msgstr "Unbekannte Folge `%s'" -- --#~ msgid "Ambiguous language `%s'" --#~ msgstr "Mehrdeutiger Zeichensatz `%s'" -- --#~ msgid "Unknown language `%s'" --#~ msgstr "Unbekannter Zeichensatz `%s'" -- --#~ msgid "Ambiguous format `%s'" --#~ msgstr "Mehrdeutiges Format `%s'" -- --#~ msgid "Unknown format `%s'" --#~ msgstr "Unbekanntes Format `%s'" -- --#~ msgid "Erroneous request `%s'" --#~ msgstr "Fehlerhafte Anfrage `%s'" ---- recode-3.6.orig/i18n/pt_BR.po -+++ recode-3.6/i18n/pt_BR.po -@@ -0,0 +1,522 @@ -+# recode: translation to Brazilian Portuguese (pt_BR) -+# Copyright (C) 2002 Free Software Foundation, Inc. -+# Alexandre Folle de Menezes , 2002. -+# based on the translation to Portuguese (pt) by -+# Vitor Duarte , maio de 1996. -+# also based on the translation to Galician (gl) by -+# Jacobo Tarro Barreiro , 2000. -+# -+msgid "" -+msgstr "" -+"Project-Id-Version: GNU recode 3.6\n" -+"POT-Creation-Date: 2001-01-02 22:35+0100\n" -+"PO-Revision-Date: 2002-12-14 02:00-0300\n" -+"Last-Translator: Alexandre Folle de Menezes \n" -+"Language-Team: Brazilian Portuguese \n" -+"MIME-Version: 1.0\n" -+"Content-Type: text/plain; charset=ISO-8859-1\n" -+"Content-Transfer-Encoding: 8-bit\n" -+ -+#: src/main.c:142 -+msgid "No error" -+msgstr "Sem erro" -+ -+#: src/main.c:145 -+msgid "Non canonical input" -+msgstr "Entrada no-cannica" -+ -+#: src/main.c:148 -+msgid "Ambiguous output" -+msgstr "Sada ambgua" -+ -+#: src/main.c:151 -+msgid "Untranslatable input" -+msgstr "Entrada intraduzvel" -+ -+#: src/main.c:154 -+msgid "Invalid input" -+msgstr "Entrada invlida" -+ -+#: src/main.c:157 -+msgid "System detected problem" -+msgstr "O sistema detectou um problema" -+ -+#: src/main.c:160 -+msgid "Misuse of recoding library" -+msgstr "Uso incorreto da biblioteca de recodificao" -+ -+#: src/main.c:163 -+msgid "Internal recoding bug" -+msgstr "Erro interno de recodificao" -+ -+#: src/main.c:208 -+msgid "" -+"This program is free software; you can redistribute it and/or modify\n" -+"it under the terms of the GNU General Public License as published by\n" -+"the Free Software Foundation; either version 2, or (at your option)\n" -+"any later version.\n" -+"\n" -+"This program is distributed in the hope that it will be useful,\n" -+"but WITHOUT ANY WARRANTY; without even the implied warranty of\n" -+"MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" -+"GNU General Public License for more details.\n" -+"\n" -+"You should have received a copy of the GNU General Public License\n" -+"along with this program; if not, write to the Free Software Foundation,\n" -+"Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n" -+msgstr "" -+"Este programa software livre; a sua redistribuio e/ou modificao\n" -+"nos termos da Licena Geral Pblica GNU como publicada pela\n" -+"Free Software Foundation, permitida; de acordo com a verso 2 ou\n" -+"(opcionalmente) qualquer outra verso posterior.\n" -+"\n" -+"Este programa distribudo na esperana de que possa ser til, mas\n" -+"SEM QUALQUER GARANTIA; sem mesmo a garantia implcita de COMERCIABILIDADE ou\n" -+"ADEQUAO QUALQUER FINALIDADE PARTICULAR. Veja a Licena Geral Pblica GNU\n" -+"para mais detalhes.\n" -+"\n" -+"Deve ter sido recebida uma cpia da Licena Geral Pblica GNU\n" -+"junto com este programa; seno, escreva para a Free Software Foundation,\n" -+"Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n" -+ -+#: src/main.c:233 -+#, c-format -+msgid "Try `%s %s' for more information.\n" -+msgstr "Tente `%s %s' para obter mais informaes.\n" -+ -+#: src/main.c:237 -+msgid "Free `recode' converts files between various character sets and surfaces.\n" -+msgstr "O `recode' converte arquivos entre vrios conjuntos de caracteres e superfcies.\n" -+ -+#: src/main.c:241 -+#, c-format -+msgid "" -+"\n" -+"Usage: %s [OPTION]... [ [CHARSET] | REQUEST [FILE]... ]\n" -+msgstr "" -+"\n" -+"Uso: %s [OPO]... [ [CHARSET] | REQUISIO [ARQUIVO]... ]\n" -+ -+#: src/main.c:244 -+msgid "" -+"\n" -+"If a long option shows an argument as mandatory, then it is mandatory\n" -+"for the equivalent short option also. Similarly for optional arguments.\n" -+msgstr "" -+"\n" -+"Os argumentos obrigatrios para as opes longas so tambm obrigatrios\n" -+"para as opes curtas. O mesmo vale para argumentos opcionais\n" -+ -+#: src/main.c:250 -+msgid "" -+"\n" -+"Listings:\n" -+" -l, --list[=FORMAT] list one or all known charsets and aliases\n" -+" -k, --known=PAIRS restrict charsets according to known PAIRS list\n" -+" -h, --header[=[LN/]NAME] write table NAME on stdout using LN, then exit\n" -+" -F, --freeze-tables write out a C module holding all tables\n" -+" -T, --find-subsets report all charsets being subset of others\n" -+" -C, --copyright display Copyright and copying conditions\n" -+" --help display this help and exit\n" -+" --version output version information and exit\n" -+msgstr "" -+"\n" -+"Listagens:\n" -+" -l, --list[=FORMATO] lista um ou todos os conjuntos de caracteres e\n" -+" apelidos conhecidos\n" -+" -k, --known=PARES restringe os conjuntos de caracteres com a lista\n" -+" de PARES conhecidos\n" -+" -h, --header[=[LN/]NOME] escreve a tabela NOME na sada padro usando LN,\n" -+" depois sai\n" -+" -F, --freeze-tables escreve um mdulo C contendo todas as tabelas\n" -+" -T, --find-subsets reporta todos os conjuntos de carcteres que so\n" -+" subconjuntos de outros\n" -+" -C, --copyright exibe Copyright e condies de cpia\n" -+" --help exibe esta ajuda e sai\n" -+" --version mostra informaes de verso e sai\n" -+ -+#: src/main.c:263 -+msgid "" -+"\n" -+"Operation modes:\n" -+" -v, --verbose explain sequence of steps and report progress\n" -+" -q, --quiet, --silent inhibit messages about irreversible recodings\n" -+" -f, --force force recodings even when not reversible\n" -+" -t, --touch touch the recoded files after replacement\n" -+" -i, --sequence=files use intermediate files for sequencing passes\n" -+" --sequence=memory use memory buffers for sequencing passes\n" -+msgstr "" -+"\n" -+"Modos de operao:\n" -+" -v, --verbose Explica a sequncia de passos e relata o progresso\n" -+" -q, --quiet, --silent inibe mensagens sobre recodificaes irreversveis\n" -+" -f, --force fora recodificaes mesmo quando irreversveis\n" -+" -t, --touch atualiza horrio dos arquivos processados\n" -+" -i, --sequence=files usa arquivos intermedirios na seqncia de passos\n" -+" --sequence=memory usa buffers na memria na seqncia de passos\n" -+ -+#: src/main.c:275 -+msgid " -p, --sequence=pipe use pipe machinery for sequencing passes\n" -+msgstr " -p, --sequence=pipe usa redirecionamentos para seqenciar os passos\n" -+ -+#: src/main.c:280 -+msgid " -p, --sequence=pipe same as -i (on this system)\n" -+msgstr " -p, --sequence=pipe o mesmo que -i (neste sistema)\n" -+ -+#: src/main.c:285 -+msgid "" -+"\n" -+"Fine tuning:\n" -+" -s, --strict use strict mappings, even loose characters\n" -+" -d, --diacritics convert only diacritics or alike for HTML/LaTeX\n" -+" -S, --source[=LN] limit recoding to strings and comments as for LN\n" -+" -c, --colons use colons instead of double quotes for diaeresis\n" -+" -g, --graphics approximate IBMPC rulers by ASCII graphics\n" -+" -x, --ignore=CHARSET ignore CHARSET while choosing a recoding path\n" -+msgstr "" -+"\n" -+"Ajuste fino:\n" -+" -s, --strict usa mapeamentos estritos, mesmo perdendo caracteres\n" -+" -d, --diacritics converte apenas os diacrticos ou semelhantes\n" -+" para HTML/LaTeX\n" -+" -S, --source[=LN] limita a recodificao strings e comentrios, como\n" -+" para o LN\n" -+" -c, --colons usa dois pontos em vez de aspas para o trema\n" -+" -g, --graphics aproxima os grficos do IBMPC com grficos ASCII\n" -+" -x, --ignore=CHARSET ignora o CHARSET na escolha da rota de recodificao\n" -+ -+#: src/main.c:296 -+msgid "" -+"\n" -+"Option -l with no FORMAT nor CHARSET list available charsets and surfaces.\n" -+"FORMAT is `decimal', `octal', `hexadecimal' or `full' (or one of `dohf').\n" -+msgstr "" -+"\n" -+"A opo -l sem FORMATO ou CHARSET lista conjuntos de carcteres disponveis.\n" -+"FORMATO `decimal', `octal', `hexadecimal' ou `full' (ou uma letra de `dohf').\n" -+ -+#: src/main.c:302 -+msgid "" -+"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the locale\n" -+"dependent encoding, determined by LC_ALL, LC_CTYPE, LANG.\n" -+msgstr "" -+"A menos que DEFAULT_CHARSET esteja setado no ambiente, o CHARSET padro o\n" -+"local, determinado por LC_ALL, LC_CTYPE, LANG.\n" -+ -+#: src/main.c:307 -+msgid "" -+"With -k, possible before charsets are listed for the given after CHARSET,\n" -+"both being tabular charsets, with PAIRS of the form `BEF1:AFT1,BEF2:AFT2,...'\n" -+"and BEFs and AFTs being codes are given as decimal numbers.\n" -+msgstr "" -+"Com -k, so listados os conjuntos de caracteres de entrada possveis para o\n" -+"CHARSET charset fornecido, com PARES no formato `INI1:FIN1,INI2:BEF2,...'\n" -+"sendo INIs e FINs os respectivos cdigos em notao decimal.\n" -+ -+#: src/main.c:312 -+msgid "LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" -+msgstr "LN alguma linguagem, pode ser `c', `perl' ou `po'; `c' o padro.\n" -+ -+#: src/main.c:315 -+msgid "" -+"\n" -+"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is ENCODING[..ENCODING]...\n" -+"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like BEFORE..AFTER,\n" -+"with BEFORE and AFTER being charsets. An omitted CHARSET implies the usual\n" -+"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a /\n" -+"with an empty surface name means no surfaces at all. See the manual.\n" -+msgstr "" -+"\n" -+"REQUEST SUBREQUEST[,SUBREQUEST]...; SUBREQUEST ENCODING[..ENCODING]...\n" -+"ENCODING [CHARSET][/[SURFACE]]...; REQUEST geralmente BEFORE..AFTER,\n" -+"sendo BEFORE e AFTER conjuntos de caracters. Se CHARSET for omitido, \n" -+"assumido o conjunto de caracteres usual; se [/SURFACE]... for omitida, so\n" -+"assumidas as superfcies implicadas para o CHARSET; uma / com um nome vazio de\n" -+"superfcie significa nenhuma superfcie. Veja a documentao.\n" -+ -+#: src/main.c:323 -+msgid "" -+"\n" -+"If none of -i and -p are given, presume -p if no FILE, else -i.\n" -+"Each FILE is recoded over itself, destroying the original. If no\n" -+"FILE is specified, then act as a filter and recode stdin to stdout.\n" -+msgstr "" -+"\n" -+"Na ausncia de -i e -p, assumir -p se no houver ARQUIVO, ou ento -i.\n" -+"Cada ARQUIVO recodificado para ele nesmo, destruindo o original. Se no for\n" -+"indicado ARQUIVO, atua como um filtro convertendo do stdin para stdout.\n" -+ -+#: src/main.c:329 -+msgid "" -+"\n" -+"Report bugs to .\n" -+msgstr "" -+"\n" -+"Informe os erros para .\n" -+ -+#: src/main.c:430 -+#, c-format -+msgid "Sequence `%s' is ambiguous" -+msgstr "A seqencia `%s' ambgua" -+ -+#: src/main.c:434 -+#, c-format -+msgid "Sequence `%s' is unknown" -+msgstr "A seqencia `%s' desconhecida" -+ -+#: src/main.c:464 src/main.c:522 -+#, c-format -+msgid "Language `%s' is ambiguous" -+msgstr "A linguagem `%s' ambgua" -+ -+#. -1 -+#: src/main.c:468 src/main.c:526 -+#, c-format -+msgid "Language `%s' is unknown" -+msgstr "A linguagem `%s' desconhecida" -+ -+#: src/main.c:560 -+#, c-format -+msgid "Format `%s' is ambiguous" -+msgstr "O formato `%s' ambguo" -+ -+#: src/main.c:564 -+#, c-format -+msgid "Format `%s' is unknown" -+msgstr "O formato `%s' desconhecido" -+ -+#: src/main.c:621 -+msgid "Written by Franc,ois Pinard .\n" -+msgstr "Escrito por Franois Pinard .\n" -+ -+#: src/main.c:624 -+msgid "" -+"\n" -+"Copyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" -+msgstr "" -+"\n" -+"Copyright 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" -+ -+#: src/main.c:628 -+msgid "" -+"This is free software; see the source for copying conditions. There is NO\n" -+"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" -+msgstr "" -+"Este programa software livre; veja o cdigo fonte para condies de cpia.\n" -+"NO H GARANTIA; nem mesmo de COMERCIABILIDADE ou ADEQUAO A QUALQUER\n" -+"FIM PARTICULAR.\n" -+ -+#: src/main.c:669 -+#, c-format -+msgid "Symbol `%s' is unknown" -+msgstr "O smbolo `%s' desconhecido" -+ -+#: src/main.c:709 src/main.c:723 -+#, c-format -+msgid "Charset `%s' is unknown or ambiguous" -+msgstr "O conjunto de caracteres `%s' desconhecido ou ambguo" -+ -+#: src/main.c:754 -+msgid "Required argument is missing" -+msgstr "Falta argumento obrigatrio" -+ -+#: src/main.c:797 -+#, c-format -+msgid "Syntax is deprecated, please prefer `%s'" -+msgstr "Sintaxe obsoleta, por favor use `%s'" -+ -+#: src/main.c:803 -+#, c-format -+msgid "Request `%s' is erroneous" -+msgstr "Requisio `%s' est errada" -+ -+#: src/main.c:903 -+#, c-format -+msgid "Recoding %s..." -+msgstr "Recodificando %s..." -+ -+#: src/main.c:913 -+msgid " done\n" -+msgstr " feito\n" -+ -+#: src/main.c:954 -+#, c-format -+msgid " failed: %s in step `%s..%s'\n" -+msgstr " falhou: %s no passo `%s..%s'\n" -+ -+#: src/main.c:961 -+#, c-format -+msgid "%s failed: %s in step `%s..%s'" -+msgstr "%s falhou: %s no passo `%s..%s'" -+ -+#: src/main.c:984 -+#, c-format -+msgid "%s in step `%s..%s'" -+msgstr "%s no passo %s..%s" -+ -+#: src/names.c:335 -+#, c-format -+msgid "Charset %s already exists and is not %s" -+msgstr "O conjunto de caracteres %s j existe e no %s" -+ -+#: src/names.c:831 -+#, c-format -+msgid "Cannot list `%s', no names available for this charset" -+msgstr "Impossvel listar `%s', no existem nomes disponveis para este charset" -+ -+#. code counter -+#. expected value for code counter -+#. insert a while line before printing -+#. Print the long table according to explode data. -+#: src/names.c:984 src/names.c:1030 -+#, c-format -+msgid "Dec Oct Hex UCS2 Mne %s\n" -+msgstr "Dec Oct Hex UCS2 Mne %s\n" -+ -+#: src/names.c:1049 -+#, c-format -+msgid "Sorry, no names available for `%s'" -+msgstr "Desculpe, no existem nomes disponveis para `%s'" -+ -+#: src/outer.c:125 -+#, c-format -+msgid "Resurfacer set more than once for `%s'" -+msgstr "Resurfacer setado mais de uma vez para `%s'" -+ -+#: src/outer.c:133 -+#, c-format -+msgid "Unsurfacer set more than once for `%s'" -+msgstr "Unsurfacer setado mais de uma vez para `%s'" -+ -+#: src/recode.c:115 src/recode.c:127 -+msgid "Virtual memory exhausted" -+msgstr "Memria virtual esgotada" -+ -+#: src/recode.c:155 -+#, c-format, ycp-format -+msgid "Codes %3d and %3d both recode to %3d" -+msgstr "Ambos os cdigos %3d e %3d so recodificados para %3d" -+ -+#: src/recode.c:169 -+#, c-format, ycp-format -+msgid "No character recodes to %3d" -+msgstr "Nenhum caracter recodificado para %3d" -+ -+#: src/recode.c:170 -+msgid "Cannot invert given one-to-one table" -+msgstr "Impossvel inverter a tabela um-para-um fornecida" -+ -+#: src/recode.c:224 src/recode.c:236 -+#, c-format -+msgid "Following diagnostics for `%s' to `%s'" -+msgstr "Os seguintes diagnsticos aplica-se de `%s' para `%s'" -+ -+#: src/recode.c:229 src/recode.c:241 -+#, c-format -+msgid "Pair no. %d: <%3d, %3d> conflicts with <%3d, %3d>" -+msgstr "Par n %d: <%3d, %3d> em conflito com <%3d, %3d>" -+ -+#: src/recode.c:272 -+msgid "Cannot complete table from set of known pairs" -+msgstr "Impossvel completar a tabela a partir do conjunto de pares conhecidos" -+ -+#: src/recode.c:497 -+msgid "Identity recoding, not worth a table" -+msgstr "A recodificao identidade no precisa de uma tabela" -+ -+#: src/recode.c:504 -+msgid "Recoding is too complex for a mere table" -+msgstr "Recodificao muito complexa para uma mera tabela" -+ -+#. Print the header of the header file. -+#: src/recode.c:536 -+#, c-format -+msgid "%sConversion table generated mechanically by Free `%s' %s" -+msgstr "%sTabela de converso gerada automaticamente por Free `%s' %s" -+ -+#: src/recode.c:538 -+#, c-format -+msgid "%sfor sequence %s.%s" -+msgstr "%spara a sequncia %s.%s" -+ -+#: src/recode.c:744 -+msgid "No table to print" -+msgstr "Nenhuma tabela para imprimir" -+ -+#: src/request.c:34 -+msgid "reversible" -+msgstr "reversvel" -+ -+#: src/request.c:36 -+#, c-format -+msgid "%s to %s" -+msgstr "%s para %s" -+ -+#: src/request.c:37 src/request.c:39 -+msgid "byte" -+msgstr "byte" -+ -+#: src/request.c:38 src/request.c:40 -+msgid "ucs2" -+msgstr "ucs2" -+ -+#: src/request.c:38 src/request.c:40 -+msgid "variable" -+msgstr "varivel" -+ -+#: src/request.c:111 -+msgid "*Unachievable*" -+msgstr "*Impossvel*" -+ -+#: src/request.c:113 -+msgid "*mere copy*" -+msgstr "*simples cpia*" -+ -+#: src/request.c:246 -+msgid "Virtual memory exhausted!" -+msgstr "Memria virtual esgotada!" -+ -+#: src/request.c:265 -+msgid "Step initialisation failed" -+msgstr "A inicializao dos passos falhou" -+ -+#: src/request.c:272 -+msgid "Step initialisation failed (unprocessed options)" -+msgstr "A inicializao dos passos falhou (opes no foram processadas)" -+ -+#: src/request.c:568 -+#, c-format -+msgid "Request: %s\n" -+msgstr "Requisio: %s\n" -+ -+#: src/request.c:720 -+#, c-format -+msgid "Shrunk to: %s\n" -+msgstr "Encolhido para: %s\n" -+ -+#: src/request.c:823 src/request.c:932 -+#, c-format -+msgid "Unrecognised surface name `%s'" -+msgstr "Nome de superfcie `%s' no reconhecido" -+ -+#: src/request.c:903 -+#, c-format -+msgid "No way to recode from `%s' to `%s'" -+msgstr "Impossvel recodificar de `%s' para `%s'" -+ -+#: src/request.c:1013 -+msgid "Expecting `..' in request" -+msgstr "Esperado `..' na requisio" -+ -+#: src/task.c:826 src/task.c:1002 -+#, c-format -+msgid "Child process wait status is 0x%0.2x" -+msgstr "O estado de espera do processo filho 0x%0.2x" -+ -+#: src/testdump.c:298 -+msgid "" -+"UCS2 Mne Description\n" -+"\n" -+msgstr "" -+"UCS2 Mne Descrio\n" -+"\n" ---- recode-3.6.orig/i18n/sv.po -+++ recode-3.6/i18n/sv.po -@@ -1,13 +1,13 @@ - # Swedish messages for recode --# Copyright 1996, 1998 Free Software Foundation, Inc. --# Jan Djrv , 1996, 1998. --# $Revision: 1.14 $ -+# Copyright 1996, 1998, 2001 Free Software Foundation, Inc. -+# Jan Djrv , 1996, 1998, 2001. -+# Revision: 1.16 - # - msgid "" - msgstr "" --"Project-Id-Version: recode 3.5\n" -+"Project-Id-Version: recode 3.6\n" - "POT-Creation-Date: 2001-01-02 22:35+0100\n" --"PO-Revision-Date: 1999-10-16 13:42 +02:00\n" -+"PO-Revision-Date: 2001-06-12 12:54+0100\n" - "Last-Translator: Jan Djrv \n" - "Language-Team: Swedish \n" - "MIME-Version: 1.0\n" -@@ -66,8 +66,7 @@ - "informativt syfte. Fr alla juridiska tolkningar gller den engelska\n" - "originaltexten.\n" - "\n" --"Detta program r fri programvara. Du kan distribuera den och/eller " --"modifiera\n" -+"Detta program r fri programvara. Du kan distribuera den och/eller modifiera\n" - "den under villkoren i GNU General Public License, publicerad av\n" - "Free Software Foundation, antingen version 2 eller (om du s vill)\n" - "ngon senare version.\n" -@@ -78,8 +77,7 @@ - "Public License fr ytterligare information.\n" - "\n" - "Du br ha ftt en kopia av GNU General Public License\n" --"tillsammans med detta program. Om inte, skriv till Free Software " --"Foundation,\n" -+"tillsammans med detta program. Om inte, skriv till Free Software Foundation,\n" - "Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n" - - #: src/main.c:233 -@@ -88,19 +86,13 @@ - msgstr "Frsk med \"%s %s\" fr mer information\n" - - #: src/main.c:237 --msgid "" --"Free `recode' converts files between various character sets and surfaces.\n" --msgstr "" --"Fria \"recode\" konverterar filer mellan olika teckenuppsttningar och ytor\n" -+msgid "Free `recode' converts files between various character sets and surfaces.\n" -+msgstr "Fria \"recode\" konverterar filer mellan olika teckenuppsttningar och ytor.\n" - - #: src/main.c:241 - #, c-format --msgid "" --"\n" --"Usage: %s [OPTION]... [ [CHARSET] | REQUEST [FILE]... ]\n" --msgstr "" --"\n" --"Anvndning: %s [FLAGGA]... [ [TECKENUPPSTTNING] | BEGRAN [FIL]...]\n" -+msgid "\nUsage: %s [OPTION]... [ [CHARSET] | REQUEST [FILE]... ]\n" -+msgstr "\nAnvndning: %s [FLAGGA]... [ [TECKENUPPSTTNING] | BEGRAN [FIL]...]\n" - - #: src/main.c:244 - msgid "" -@@ -110,17 +102,14 @@ - msgstr "" - "\n" - "Om en lng flagga har ett obligatoriskt argument s r argumentet ven\n" --"obligatoriskt fr motsvarade korta flagga. Motsvarande fr valfria " --"argument.\n" -+"obligatoriskt fr motsvarade korta flagga. Motsvarande fr valfria argument.\n" - - #: src/main.c:250 --#, fuzzy - msgid "" - "\n" - "Listings:\n" - " -l, --list[=FORMAT] list one or all known charsets and aliases\n" --" -k, --known=PAIRS restrict charsets according to known PAIRS " --"list\n" -+" -k, --known=PAIRS restrict charsets according to known PAIRS list\n" - " -h, --header[=[LN/]NAME] write table NAME on stdout using LN, then exit\n" - " -F, --freeze-tables write out a C module holding all tables\n" - " -T, --find-subsets report all charsets being subset of others\n" -@@ -131,15 +120,13 @@ - "\n" - "Listningar:\n" - " -l, --list[=FORMAT] visa en eller alla knda teckenuppsttningar\n" --" -k, --known=PAR begrnsa teckenuppsttningar till de i PAR " --"listan\n" -+" -k, --known=PAR begrnsa teckenuppsttningar till de i PAR-listan\n" - " -h, --header[=[LN/]NAMN] skriv tabell NAMN fr LN till standard ut\n" - " och avsluta.\n" - " -F, --freeze-tables skriv ut en C modul med alla tabeller\n" - " -T, --find-subsets skriv ut teckenuppsttningar som r delmngder\n" - " av andra\n" --" -C, --copyright visa copyrightinformation och " --"kopieringsvillkor\n" -+" -C, --copyright visa copyrightinformation och kopieringsvillkor\n" - " --help visa denna hjlptext och avsluta\n" - " --version visa versionsinformation och avsluta\n" - -@@ -157,11 +144,9 @@ - "\n" - "Exekveringsalternativ:\n" - " -v, --verbose frklara delsteg och rapportera framsteg\n" --" -q, --quiet, --silent undertryck meddelanden om irreversibla " --"omkodningar\n" -+" -q, --quiet, --silent undertryck meddelanden om irreversibla omkodningar\n" - " -f, --force gr omkodning ven nr den r irreversibel\n" --" -t, --touch gr \"touch\" p filer som omkodas ver sig " --"sjlva\n" -+" -t, --touch gr \"touch\" p filer som omkodas ver sig sjlva\n" - " -i, --sequence=files anvnd temporrfiler mellan delsteg\n" - " --sequence=memory anvnd minnesbuffertar mellan delsteg\n" - -@@ -204,25 +189,22 @@ - msgstr "" - "\n" - "Flagga -l utan FORMAT och TECKENUPPSTTNING visar alla tillgngliga\n" --"teckenuppsttningar och ytor. FORMAT r \"decimal\", \"octal\", " --"\"hexadecimal\"\n" -+"teckenuppsttningar och ytor. FORMAT r \"decimal\", \"octal\", \"hexadecimal\"\n" - "eller \"full\" (eller en av \"dohf\").\n" - - #: src/main.c:302 --#, fuzzy - msgid "" --"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the " --"locale\n" -+"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the locale\n" - "dependent encoding, determined by LC_ALL, LC_CTYPE, LANG.\n" - msgstr "" - "Om miljvariabeln DEFAULT_CHARSET inte r satt blir standardvrdet fr\n" --"TECKENUPPSTTNING \"%s\"\n" -+"TECKENUPPSTTNING den lokalspecifika kodningen, som bestms av\n" -+"miljvariablerna LC_ALL, LC_CTYPE och LANG.\n" - - #: src/main.c:307 - msgid "" - "With -k, possible before charsets are listed for the given after CHARSET,\n" --"both being tabular charsets, with PAIRS of the form " --"`BEF1:AFT1,BEF2:AFT2,...'\n" -+"both being tabular charsets, with PAIRS of the form `BEF1:AFT1,BEF2:AFT2,...'\n" - "and BEFs and AFTs being codes are given as decimal numbers.\n" - msgstr "" - "Med -k, mjliga startuppsttningar visas fr den givna slutuppsttningen,\n" -@@ -231,28 +213,21 @@ - "som anges med decimala tal.\n" - - #: src/main.c:312 --msgid "" --"LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" --msgstr "" --"LN r ett sprk, det kan vara \"c\", \"perl\" eller \"po\"; \"c\" r " --"standardvrde.\n" -+msgid "LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" -+msgstr "LN r ett sprk, det kan vara \"c\", \"perl\" eller \"po\"; \"c\" r standardvrde.\n" - - #: src/main.c:315 - msgid "" - "\n" --"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is " --"ENCODING[..ENCODING]...\n" --"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like " --"BEFORE..AFTER,\n" -+"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is ENCODING[..ENCODING]...\n" -+"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like BEFORE..AFTER,\n" - "with BEFORE and AFTER being charsets. An omitted CHARSET implies the usual\n" --"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a " --"/\n" -+"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a /\n" - "with an empty surface name means no surfaces at all. See the manual.\n" - msgstr "" - "\n" - "BEGRAN r DELBEGRAN[,DELBEGRAN]..., DELBEGRAN r KODNING[..KODNING]...\n" --"KODNING r [TECKENUPPSTTNING][/[YTA]].... BEGRAN ser ofta ut som " --"START..SLUT,\n" -+"KODNING r [TECKENUPPSTTNING][/[YTA]].... BEGRAN ser ofta ut som START..SLUT,\n" - "dr START och SLUT r teckenuppsttningar. Ett utelmnat TECKENUPPSTTNING\n" - "innebr den normala teckenuppsttningen,\n" - "en utelmnad [/YTA]... innebr den normala ytan fr TECKENUPPSTTNING.\n" -@@ -272,9 +247,7 @@ - "till standard ut.\n" - - #: src/main.c:329 --msgid "" --"\n" --"Report bugs to .\n" -+msgid "\nReport bugs to .\n" - msgstr "" - "\n" - "Rapportera fel till .\n" -@@ -283,48 +256,41 @@ - #: src/main.c:430 - #, c-format - msgid "Sequence `%s' is ambiguous" --msgstr "" -+msgstr "Sekvens \"%s\" r tvetydig" - - #: src/main.c:434 - #, c-format - msgid "Sequence `%s' is unknown" --msgstr "" -+msgstr "Sekvens \"%s\" r oknd" - - #: src/main.c:464 src/main.c:522 - #, c-format - msgid "Language `%s' is ambiguous" --msgstr "" -+msgstr "Sprk \"%s\" r tvetydigt" - - #. -1 - #: src/main.c:468 src/main.c:526 - #, c-format - msgid "Language `%s' is unknown" --msgstr "" -+msgstr "Sprk \"%s\" r oknt" - - #: src/main.c:560 - #, c-format - msgid "Format `%s' is ambiguous" --msgstr "" -+msgstr "Format \"%s\" r tvetydigt" - - #: src/main.c:564 - #, c-format - msgid "Format `%s' is unknown" --msgstr "" -+msgstr "Format \"%s\" r oknt" - - #: src/main.c:621 --#, fuzzy - msgid "Written by Franc,ois Pinard .\n" --msgstr "" --"\n" --"Skriven av Franois Pinard .\n" -+msgstr "Skriven av Franois Pinard .\n" - - #: src/main.c:624 --msgid "" --"\n" --"Copyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" --msgstr "" --"\n" --"Copyright 1990, 92, 93, 94, 96, 97, 1999 Free Software Foundation, Inc.\n" -+msgid "\nCopyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" -+msgstr "\nCopyright 1990, 92, 93, 94, 96, 97, 1999 Free Software Foundation, Inc.\n" - - #: src/main.c:628 - msgid "" -@@ -338,26 +304,26 @@ - #: src/main.c:669 - #, c-format - msgid "Symbol `%s' is unknown" --msgstr "" -+msgstr "Symbol \"%s\" r oknd" - - #: src/main.c:709 src/main.c:723 - #, c-format - msgid "Charset `%s' is unknown or ambiguous" --msgstr "" -+msgstr "Teckenuppsttning \"%s\" r oknd eller tvetydig" - - #: src/main.c:754 - msgid "Required argument is missing" --msgstr "" -+msgstr "Obligatoriskt argument saknas" - - #: src/main.c:797 --#, fuzzy, c-format -+#, c-format - msgid "Syntax is deprecated, please prefer `%s'" - msgstr "Frldrad syntax, anvnd hellre \"%s\"" - - #: src/main.c:803 - #, c-format - msgid "Request `%s' is erroneous" --msgstr "" -+msgstr "Begran \"%s\" r felaktig" - - #: src/main.c:903 - #, c-format -@@ -369,19 +335,19 @@ - msgstr " klart\n" - - #: src/main.c:954 --#, fuzzy, c-format -+#, c-format - msgid " failed: %s in step `%s..%s'\n" --msgstr " misslyckades: %s i %s..%s\n" -+msgstr " misslyckades: %s i steg \"%s..%s\"\n" - - #: src/main.c:961 --#, fuzzy, c-format -+#, c-format - msgid "%s failed: %s in step `%s..%s'" --msgstr "%s misslyckades: %s i %s..%s" -+msgstr "%s misslyckades: %s i steg \"%s..%s\"" - - #: src/main.c:984 --#, fuzzy, c-format -+#, c-format - msgid "%s in step `%s..%s'" --msgstr "%s i %s..%s" -+msgstr "%s i steg \"%s..%s\"" - - #: src/names.c:335 - #, c-format -@@ -391,8 +357,7 @@ - #: src/names.c:831 - #, c-format - msgid "Cannot list `%s', no names available for this charset" --msgstr "" --"Kan inte visa \"%s\", inga namn tillgngliga fr denna teckenuppsttning" -+msgstr "Kan inte visa \"%s\", inga namn tillgngliga fr denna teckenuppsttning" - - #. code counter - #. expected value for code counter -@@ -423,12 +388,12 @@ - msgstr "Virtuellt minne slut" - - #: src/recode.c:155 --#, c-format, ycp-format -+#, c-format - msgid "Codes %3d and %3d both recode to %3d" - msgstr "Teckenkoderna %3d och %3d omkodas bda till %3d" - - #: src/recode.c:169 --#, c-format, ycp-format -+#, c-format - msgid "No character recodes to %3d" - msgstr "Inget tecken omkodas till %3d" - -@@ -504,7 +469,7 @@ - - #: src/request.c:246 - msgid "Virtual memory exhausted!" --msgstr "Virtuellt minne slut" -+msgstr "Virtuellt minne slut!" - - #: src/request.c:265 - msgid "Step initialisation failed" -@@ -527,7 +492,7 @@ - #: src/request.c:823 src/request.c:932 - #, c-format - msgid "Unrecognised surface name `%s'" --msgstr "Oknt ytnamn: \"%s\"" -+msgstr "Oknt ytnamn \"%s\"" - - #: src/request.c:903 - #, c-format -@@ -541,38 +506,8 @@ - #: src/task.c:826 src/task.c:1002 - #, c-format - msgid "Child process wait status is 0x%0.2x" --msgstr "Barnprocess slutstatus r 0x%0.2x" -+msgstr "Barnprocessens slutstatus r 0x%0.2x" - - #: src/testdump.c:298 --msgid "" --"UCS2 Mne Description\n" --"\n" --msgstr "" --"UCS2 Mne Beskrivning\n" --"\n" -- --#~ msgid "CHARSET has no default, define DEFAULT_CHARSET in the environment.\n" --#~ msgstr "" --#~ "TECKENUPPSTTNING har inget standardvrde, stt miljvariabeln " --#~ "DEFAULT_CHARSET.\n" -- --#~ msgid "Ambiguous sequence `%s'" --#~ msgstr "Tvetydig sekvens \"%s\"" -- --#~ msgid "Unknown sequence `%s'" --#~ msgstr "Oknd sekvens \"%s\"" -- --#~ msgid "Ambiguous language `%s'" --#~ msgstr "Tvetydigt sprk \"%s\"" -- --#~ msgid "Unknown language `%s'" --#~ msgstr "Oknt sprk \"%s\"" -- --#~ msgid "Ambiguous format `%s'" --#~ msgstr "Tvetydigt format \"%s\"" -- --#~ msgid "Unknown format `%s'" --#~ msgstr "Oknt format \"%s\"" -- --#~ msgid "Erroneous request `%s'" --#~ msgstr "Felaktig begran \"%s\"" -+msgid "UCS2 Mne Description\n\n" -+msgstr "UCS2 Mne Beskrivning\n\n" ---- recode-3.6.orig/i18n/fr.po -+++ recode-3.6/i18n/fr.po -@@ -1,17 +1,18 @@ - # Messages franais pour Free recode. --# Copyright 1996, 1998, 1999 Free Software Foundation, Inc. --# Franois Pinard , 1996. -+# Copyright 2004 Free Software Foundation, Inc. -+# Michel Robitaille , traduction depuis/since 1996. - # - msgid "" - msgstr "" --"Project-Id-Version: Free recode 3.5\n" -+"Project-Id-Version: Free recode 3.6\n" - "POT-Creation-Date: 2001-01-02 22:35+0100\n" --"PO-Revision-Date: 1999-08-17 14:14-04:00\n" --"Last-Translator: Franois Pinard \n" -+"PO-Revision-Date: 2004-05-10 08:00-0500\n" -+"Last-Translator: Michel Robitaille \n" - "Language-Team: French \n" - "MIME-Version: 1.0\n" - "Content-Type: text/plain; charset=ISO-8859-1\n" - "Content-Transfer-Encoding: 8-bit\n" -+"Plural-Forms: nplurals=2; plural=(n > 1);\n" - - #: src/main.c:142 - msgid "No error" -@@ -27,7 +28,7 @@ - - #: src/main.c:151 - msgid "Untranslatable input" --msgstr "Entre non traductible" -+msgstr "Entre non traduisible" - - #: src/main.c:154 - msgid "Invalid input" -@@ -78,14 +79,11 @@ - #: src/main.c:233 - #, c-format - msgid "Try `%s %s' for more information.\n" --msgstr "Pour plus d'information, essayez %s %s.\n" -+msgstr "Pour plus d'information, essayez %s %s .\n" - - #: src/main.c:237 --msgid "" --"Free `recode' converts files between various character sets and surfaces.\n" --msgstr "" --" Free recode transforme les jeux de caractres et les surfaces de " --"fichiers\n" -+msgid "Free `recode' converts files between various character sets and surfaces.\n" -+msgstr " Free recode transforme les jeux de caractres et les surfaces de fichiers\n" - - #: src/main.c:241 - #, c-format -@@ -103,20 +101,16 @@ - "for the equivalent short option also. Similarly for optional arguments.\n" - msgstr "" - "\n" --"Un paramtre obligatoire pour une option de forme longue l'est aussi pour " --"une\n" --"option de forme courte. La mme rgle s'applique un paramtre indiqu " --"comme\n" -+"Un paramtre obligatoire pour une option de forme longue l'est aussi pour une\n" -+"option de forme courte. La mme rgle s'applique un paramtre indiqu comme\n" - "tant optionnel.\n" - - #: src/main.c:250 --#, fuzzy - msgid "" - "\n" - "Listings:\n" - " -l, --list[=FORMAT] list one or all known charsets and aliases\n" --" -k, --known=PAIRS restrict charsets according to known PAIRS " --"list\n" -+" -k, --known=PAIRS restrict charsets according to known PAIRS list\n" - " -h, --header[=[LN/]NAME] write table NAME on stdout using LN, then exit\n" - " -F, --freeze-tables write out a C module holding all tables\n" - " -T, --find-subsets report all charsets being subset of others\n" -@@ -126,16 +120,11 @@ - msgstr "" - "\n" - "Listes:\n" --" -l, --list[=FORMAT] afficher un charset donn, ou fournir toute la " --"liste\n" --" -k, --known=PAIRES choisir les charsets selon quelques PAIRES " --"connues\n" --" -h, --header[=[LN/]NOM] tabuler NOM sur stdout, utilisant LN, puis " --"terminer\n" --" -F, --freeze-tables produire un module C contenant toutes les " --"tables\n" --" -T, --find-subsets lister tout charset qui est sous-ensemble d'un " --"autre\n" -+" -l, --list[=FORMAT] afficher un charset donn, ou fournir toute la liste\n" -+" -k, --known=PAIRES choisir les charsets selon quelques PAIRES connues\n" -+" -h, --header[=[LN/]NOM] tabuler NOM sur stdout, utilisant LN, puis terminer\n" -+" -F, --freeze-tables produire un module C contenant toutes les tables\n" -+" -T, --find-subsets lister tout charset qui est sous-ensemble d'un autre\n" - " -C, --copyright afficher les conditions de copie, puis terminer\n" - " --help fournir ce message d'aide, puis terminer\n" - " --version identifier la programme, puis terminer\n" -@@ -153,20 +142,16 @@ - msgstr "" - "\n" - "Modes d'opration:\n" --" -v, --verbose afficher les tapes prvues, suivre la " --"progression\n" --" -q, --quiet, --silent taire les messages sur les recodages " --"irrversibles\n" -+" -v, --verbose afficher les tapes prvues, suivre la progression\n" -+" -q, --quiet, --silent taire les messages sur les recodages irrversibles\n" - " -f, --force effectuer mme les recodages irrversibles\n" --" -t, --touch toucher les fichiers aprs leur remplacement\n" --" -i, --sequence=files fabriquer des fichiers pour ordonnancer les " --"passes\n" -+" -t, --touch toucher les fichiers aprs leur remplacement\n" -+" -i, --sequence=files fabriquer des fichiers pour ordonnancer les passes\n" - " --sequence=memory utiliser des tampons pour ordonnancer les passes\n" - - #: src/main.c:275 - msgid " -p, --sequence=pipe use pipe machinery for sequencing passes\n" --msgstr "" --" -p, --sequence=pipe utiliser pipe pour ordonnancer les passes\n" -+msgstr " -p, --sequence=pipe utiliser pipe pour ordonnancer les passes\n" - - #: src/main.c:280 - msgid " -p, --sequence=pipe same as -i (on this system)\n" -@@ -188,8 +173,8 @@ - " -s, --strict recoder strictement, perte possible de caractres\n" - " -d, --diacritics se restreindre aux diacritiques pour HTML/LaTeX\n" - " -S, --source[=LN] ne recoder que les chanes et les commentaires LN\n" --" -c, --colons utiliser : plutt que \\\" pour les trmas\n" --" -g, --graphics convertir au mieux possible les rulers IBMPC\n" -+" -c, --colons utiliser : plutt que \\\" pour les trmas\n" -+" -g, --graphics convertir au mieux possible les rulers IBMPC\n" - " -x, --ignore=CHARSET ignorer CHARSET durant le choix des tapes\n" - - #: src/main.c:296 -@@ -199,60 +184,48 @@ - "FORMAT is `decimal', `octal', `hexadecimal' or `full' (or one of `dohf').\n" - msgstr "" - "\n" --"L'option -l sans FORMAT ni CHARSET donne les charsets et surfaces " --"disponibles.\n" --"FORMAT vaut decimal, octal, hexadecimal ou full, ou encore un " --"caractre\n" --"dans dohf.\n" -+"L'option -l sans FORMAT ni CHARSET donne les charsets et surfaces disponibles.\n" -+"FORMAT vaut decimal , octal , hexadecimal ou full , ou encore un caractre\n" -+"dans dohf .\n" - - #: src/main.c:302 --#, fuzzy - msgid "" --"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the " --"locale\n" -+"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the locale\n" - "dependent encoding, determined by LC_ALL, LC_CTYPE, LANG.\n" - msgstr "" --"%s est prsum sii DEFAULT_CHARSET n'est pas dfini dans l'environnement.\n" -+" moins que DEFAULT_CHARSET ne soit initialis dans l'environnement,\n" -+"le CHARSET par dfaut est locale selon l'encodage, dtermin par LC_ALL, LC_CTYPE, LANG.\n" - - #: src/main.c:307 - msgid "" - "With -k, possible before charsets are listed for the given after CHARSET,\n" --"both being tabular charsets, with PAIRS of the form " --"`BEF1:AFT1,BEF2:AFT2,...'\n" -+"both being tabular charsets, with PAIRS of the form `BEF1:AFT1,BEF2:AFT2,...'\n" - "and BEFs and AFTs being codes are given as decimal numbers.\n" - msgstr "" - "Avec -k, les charsets antcdents possibles sont lists pour le CHARSET\n" - "consquent, tous deux tant des charsets RFC1345, restreints par les PAIRES\n" --"dites selon la syntaxe AVANT1:APRS1,AVANT2:APRS2,...; chaque code AVANT\n" -+"dites selon la syntaxe AVANT1:APRS1,AVANT2:APRS2,... ; chaque code AVANT\n" - "et APRS est exprim en dcimal.\n" - - #: src/main.c:312 --msgid "" --"LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" --msgstr "" --"LN est un langage de programmation, valant `c' (implicite), `perl' ou `po'.\n" -+msgid "LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" -+msgstr "LN est un langage de programmation, valant c (implicite), perl ou po .\n" - - #: src/main.c:315 - msgid "" - "\n" --"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is " --"ENCODING[..ENCODING]...\n" --"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like " --"BEFORE..AFTER,\n" -+"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is ENCODING[..ENCODING]...\n" -+"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like BEFORE..AFTER,\n" - "with BEFORE and AFTER being charsets. An omitted CHARSET implies the usual\n" --"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a " --"/\n" -+"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a /\n" - "with an empty surface name means no surfaces at all. See the manual.\n" - msgstr "" - "\n" --"DEMANDE est SOUS-DEMANDE[,SOUS-DEMANDE]...; SOUS-DEMANDE est " --"CODAGE[..CODAGE]...\n" --"CODAGE est [CHARSET][/[SURFACE]]...; DEMANDE ressemble souvent " --"AVANT..APRs,\n" -+"DEMANDE est SOUS-DEMANDE[,SOUS-DEMANDE]...; SOUS-DEMANDE est CODAGE[..CODAGE]...\n" -+"CODAGE est [CHARSET][/[SURFACE]]...; DEMANDE ressemble souvent AVANT..APRs,\n" - "AVANT et APRS tant des charsets. Un CHARSET omis sous-entend le charset\n" - "habituel; une [/SURFACE]... omise sous-entend les surfaces habituelles pour\n" --"CHARSET; un / sans surface indique l'absence de toute surface. Voir le " --"manuel!\n" -+"CHARSET; un / sans surface indique l'absence de toute surface. Voir le manuel!\n" - - #: src/main.c:323 - msgid "" -@@ -262,10 +235,9 @@ - "FILE is specified, then act as a filter and recode stdin to stdout.\n" - msgstr "" - "\n" --"En l'absence de -i ou -p, choisir -i avec FICHIER, sinon -p.\n" -+"En l'absence de -i ou -p , choisir -i avec FICHIER, sinon -p .\n" - "Chaque FICHIER est recod sur lui-mme, dtruisant l'original. Si aucun\n" --"FICHIER n'est donn, alors agir comme un filtre et recoder stdin sur " --"stdout.\n" -+"FICHIER n'est donn, alors agir comme un filtre et recoder stdin sur stdout.\n" - - #: src/main.c:329 - msgid "" -@@ -273,46 +245,42 @@ - "Report bugs to .\n" - msgstr "" - "\n" --"Rapporter tout disfonctionnement mailto:recode-bugs@iro.umontreal.ca;\n" --"et rapporter les problmes de francisation mailto:traduc@traduc.org.\n" -+"Rapporter toutes anomalies .\n" - - #: src/main.c:430 - #, c-format - msgid "Sequence `%s' is ambiguous" --msgstr "" -+msgstr "Squence %s est ambigu" - - #: src/main.c:434 - #, c-format - msgid "Sequence `%s' is unknown" --msgstr "" -+msgstr "Squence %s est inconnue" - - #: src/main.c:464 src/main.c:522 - #, c-format - msgid "Language `%s' is ambiguous" --msgstr "" -+msgstr "Langage %s est ambigu" - - #. -1 - #: src/main.c:468 src/main.c:526 - #, c-format - msgid "Language `%s' is unknown" --msgstr "" -+msgstr "Langage %s est inconnu" - - #: src/main.c:560 - #, c-format - msgid "Format `%s' is ambiguous" --msgstr "" -+msgstr "Format %s est ambigu" - - #: src/main.c:564 - #, c-format - msgid "Format `%s' is unknown" --msgstr "" -+msgstr "Format %s est inconnu" - - #: src/main.c:621 --#, fuzzy - msgid "Written by Franc,ois Pinard .\n" --msgstr "" --"\n" --"crit par Franois Pinard .\n" -+msgstr "crit par Franois Pinard .\n" - - #: src/main.c:624 - msgid "" -@@ -334,50 +302,50 @@ - #: src/main.c:669 - #, c-format - msgid "Symbol `%s' is unknown" --msgstr "" -+msgstr "Symbole %s est inconnu" - - #: src/main.c:709 src/main.c:723 - #, c-format - msgid "Charset `%s' is unknown or ambiguous" --msgstr "" -+msgstr "Charset %s est inconnu ou ambigu" - - #: src/main.c:754 - msgid "Required argument is missing" --msgstr "" -+msgstr "Argument requis est manquant" - - #: src/main.c:797 --#, fuzzy, c-format -+#, c-format - msgid "Syntax is deprecated, please prefer `%s'" --msgstr "Syntaxe dsute, veuillez prfrer %s" -+msgstr "Syntaxe dsute, veuillez prfrer %s " - - #: src/main.c:803 - #, c-format - msgid "Request `%s' is erroneous" --msgstr "" -+msgstr "Requte %s est errone" - - #: src/main.c:903 - #, c-format - msgid "Recoding %s..." --msgstr "Recodage de %s..." -+msgstr "Recodage de %s ..." - - #: src/main.c:913 - msgid " done\n" - msgstr " complt\n" - - #: src/main.c:954 --#, fuzzy, c-format -+#, c-format - msgid " failed: %s in step `%s..%s'\n" --msgstr " non-russi: %s dans %s..%s\n" -+msgstr " non-russi: %s dans %s..%s \n" - - #: src/main.c:961 --#, fuzzy, c-format -+#, c-format - msgid "%s failed: %s in step `%s..%s'" --msgstr "%s non-russi: %s dans %s..%s" -+msgstr "%s non-russi: %s dans %s..%s " - - #: src/main.c:984 --#, fuzzy, c-format -+#, c-format - msgid "%s in step `%s..%s'" --msgstr "%s dans %s..%s" -+msgstr "%s dans %s..%s " - - #: src/names.c:335 - #, c-format -@@ -387,7 +355,7 @@ - #: src/names.c:831 - #, c-format - msgid "Cannot list `%s', no names available for this charset" --msgstr "Incapable de lister %s: les noms n'y sont pas disponibles" -+msgstr "Incapable de lister %s : les noms n'y sont pas disponibles" - - #. code counter - #. expected value for code counter -@@ -401,17 +369,17 @@ - #: src/names.c:1049 - #, c-format - msgid "Sorry, no names available for `%s'" --msgstr "Dsol, aucun nom disponible pour %s" -+msgstr "Dsol, aucun nom disponible pour %s " - - #: src/outer.c:125 - #, c-format - msgid "Resurfacer set more than once for `%s'" --msgstr "Plus d'un re-surfaceur pour `%s'" -+msgstr "Plus d'un re-surfaceur pour %s " - - #: src/outer.c:133 - #, c-format - msgid "Unsurfacer set more than once for `%s'" --msgstr "Plus d'un d-surfaceur pour `%s'" -+msgstr "Plus d'un d-surfaceur pour %s " - - #: src/recode.c:115 src/recode.c:127 - msgid "Virtual memory exhausted" -@@ -434,7 +402,7 @@ - #: src/recode.c:224 src/recode.c:236 - #, c-format - msgid "Following diagnostics for `%s' to `%s'" --msgstr "Les diagnostics suivants s'appliquent pour %s vers %s" -+msgstr "Les diagnostics suivants s'appliquent pour %s vers %s " - - #: src/recode.c:229 src/recode.c:241 - #, c-format -@@ -457,12 +425,12 @@ - #: src/recode.c:536 - #, c-format - msgid "%sConversion table generated mechanically by Free `%s' %s" --msgstr "%sTable de conversion engendre mcaniquement par Free %s %s" -+msgstr "%sTable de conversion engendre mcaniquement par Free %s %s" - - #: src/recode.c:538 - #, c-format - msgid "%sfor sequence %s.%s" --msgstr "%spour squence %s.%s" -+msgstr "%spour squence %s .%s" - - #: src/recode.c:744 - msgid "No table to print" -@@ -531,12 +499,12 @@ - - #: src/request.c:1013 - msgid "Expecting `..' in request" --msgstr "Chane `..' attendue dans la demande" -+msgstr "Chane .. attendue dans la demande" - - #: src/task.c:826 src/task.c:1002 - #, c-format - msgid "Child process wait status is 0x%0.2x" --msgstr "Le constat wait du processus fils est 0x%0.2x" -+msgstr "L'tat du processus fils en attente est 0x%0.2x" - - #: src/testdump.c:298 - msgid "" -@@ -547,8 +515,7 @@ - "\n" - - #~ msgid "CHARSET has no default, define DEFAULT_CHARSET in the environment.\n" --#~ msgstr "" --#~ "CHARSET ne peut tre omis, dfinir DEFAULT_CHARSET dans l'environment.\n" -+#~ msgstr "CHARSET ne peut tre omis, dfinir DEFAULT_CHARSET dans l'environment.\n" - - #~ msgid "Ambiguous sequence `%s'" - #~ msgstr "La squence %s est ambigu" -@@ -611,5 +578,4 @@ - #~ msgstr "Recodage irrversible" - - #~ msgid "BEFORE and AFTER both default to `%s' when needed.\n" --#~ msgstr "" --#~ "AVANT et APRS ont implicitement la valeur canonique %s, lorsqu'absents.\n" -+#~ msgstr "AVANT et APRS ont implicitement la valeur canonique %s, lorsqu'absents.\n" ---- recode-3.6.orig/i18n/sl.po -+++ recode-3.6/i18n/sl.po -@@ -2,13 +2,13 @@ - # Copyright (C) 1996 Free Software Foundation, Inc. - # Primoz Peterlin , 1996. - # --# $Id: recode-3.5.sl.po,v 1.2 1999/12/21 16:04:38 peterlin Exp peterlin $ -+# $Id: recode-3.6.sl.po,v 1.2 2001/06/08 10:41:42 peterlin Exp $ - # - msgid "" - msgstr "" --"Project-Id-Version: recode 3.5\n" -+"Project-Id-Version: recode 3.6\n" - "POT-Creation-Date: 2001-01-02 22:35+0100\n" --"PO-Revision-Date: 1999-12-21 17:01 MET\n" -+"PO-Revision-Date: 2001-06-08 12:41+02:00\n" - "Last-Translator: Primoz Peterlin \n" - "Language-Team: Slovenian \n" - "MIME-Version: 1.0\n" -@@ -67,11 +67,9 @@ - msgstr "" - "Ta program je prosta programska oprema; lahko ga redistribuirate in/ali\n" - "spreminjate po pogojih, doloenih v ,,GNU General Public License``, izdani\n" --"pri Free Software Foundation; 2. izdaja (ali noveja, e razpolagate z " --"njo).\n" -+"pri Free Software Foundation; 2. izdaja (ali noveja, e razpolagate z njo).\n" - "\n" --"Ta program se distribuira v upanju, da je uporaben, vendar BREZ " --"KAKRNEGAKOLI\n" -+"Ta program se distribuira v upanju, da je uporaben, vendar BREZ KAKRNEGAKOLI\n" - "JAMSTVA; vkljuno z impliciranim jamstvom prodajnosti ali uporabnosti za\n" - "izbrani namen. Za podrobnosti si oglejte ,,GNU General Public License``.\n" - "\n" -@@ -85,20 +83,13 @@ - msgstr "Poskusite ,%s %s` za dodatne informacije.\n" - - #: src/main.c:237 --msgid "" --"Free `recode' converts files between various character sets and surfaces.\n" --msgstr "" --"Prosti ,recode` pretvarja datoteke med razlinimi kodnimi nabori in " --"prerkovanji.\n" -+msgid "Free `recode' converts files between various character sets and surfaces.\n" -+msgstr "Prosti ,recode` pretvarja datoteke med razlinimi kodnimi nabori in prerkovanji.\n" - - #: src/main.c:241 - #, c-format --msgid "" --"\n" --"Usage: %s [OPTION]... [ [CHARSET] | REQUEST [FILE]... ]\n" --msgstr "" --"\n" --"Uporaba: %s [IZBIRA]... [ [NABOR] | ZAHTEVA [DATOTEKA]... ]\n" -+msgid "\nUsage: %s [OPTION]... [ [CHARSET] | REQUEST [FILE]... ]\n" -+msgstr "\nUporaba: %s [IZBIRA]... [ [NABOR] | ZAHTEVA [DATOTEKA]... ]\n" - - #: src/main.c:244 - msgid "" -@@ -111,13 +102,11 @@ - "obveza tudi za kratko obliko. Podobno tudi za neobvezne argumente.\n" - - #: src/main.c:250 --#, fuzzy - msgid "" - "\n" - "Listings:\n" - " -l, --list[=FORMAT] list one or all known charsets and aliases\n" --" -k, --known=PAIRS restrict charsets according to known PAIRS " --"list\n" -+" -k, --known=PAIRS restrict charsets according to known PAIRS list\n" - " -h, --header[=[LN/]NAME] write table NAME on stdout using LN, then exit\n" - " -F, --freeze-tables write out a C module holding all tables\n" - " -T, --find-subsets report all charsets being subset of others\n" -@@ -127,14 +116,11 @@ - msgstr "" - "\n" - "Seznami:\n" --" -l, --list[=OBLIKA] izpii en ali vse kodirane nabore znakov\n" --" -k, --known=PARI izpii nabore, ki ustrezajo podanim PAROM " --"pretvorb\n" --" -h, --header[=[JEZIK/]IME] izpii pretvorno tabelo z danim IMENOM v prog. " --"JEZIKU\n" -+" -l, --list[=OBLIKA] izpii enega ali vse kodirane nabore znakov\n" -+" -k, --known=PARI izpii nabore, ki ustrezajo podanim PAROM pretvorb\n" -+" -h, --header[=[JEZIK/]IME] izpii pretvorno tabelo z danim IMENOM v prog. JEZIKU\n" - " -F, --freeze-tables izpii modul v C z vsemi pretvornimi tabelami\n" --" -T, --find-subsets poroaj o vseh naborih, ki so podmnoica " --"drugih\n" -+" -T, --find-subsets poroaj o vseh naborih, ki so podmnoica drugih\n" - " -C, --copyright izpii dovoljenje za uporabo in razirjanje\n" - " --help ta navodila\n" - " --version razliica programa\n" -@@ -152,8 +138,7 @@ - msgstr "" - "\n" - "Naini dela:\n" --" -v, --verbose med potekom razlagaj korake in komentiraj " --"napredek\n" -+" -v, --verbose med potekom razlagaj korake in komentiraj napredek\n" - " -q, --quiet, --silent brez opozoril o neobrnljivih pretvorbah\n" - " -f, --force pretvorbo izvedi, etudi ni obrnljiva\n" - " -t, --touch pretvorjena datoteka naj nosi datum pretvorbe,\n" -@@ -182,16 +167,11 @@ - msgstr "" - "\n" - "Natanneje nastavljanje:\n" --" -s, --strict uporabi strogo pretvorbo, celo na raun izgube " --"znakov\n" --" -d, --diacritics pretvori samo preglaene in podobne znake za " --"HTML/LaTeX\n" --" -S, --source[=JEZIK] omeji pretvorbe na nize in komentarje, kot v " --"JEZIKU\n" --" -c, --colons nadomesti dierezo z dvopijem, ne z dvojnim " --"narekovajem\n" --" -g, --graphics semigrafine znake s PC pribl. nadomestimo z znaki " --"ASCII\n" -+" -s, --strict uporabi strogo pretvorbo, celo na raun izgube znakov\n" -+" -d, --diacritics pretvori samo preglaene in podobne znake za HTML/LaTeX\n" -+" -S, --source[=JEZIK] omeji pretvorbe na nize in komentarje, kot v JEZIKU\n" -+" -c, --colons nadomesti dierezo z dvopijem, ne z dvojnim narekovajem\n" -+" -g, --graphics semigrafine znake s PC pribl. nadomestimo z znaki ASCII\n" - " -x, --ignore=NABOR pri pretvorbi se izogni navedenemu vmesnemu NABORU\n" - - #: src/main.c:296 -@@ -201,26 +181,22 @@ - "FORMAT is `decimal', `octal', `hexadecimal' or `full' (or one of `dohf').\n" - msgstr "" - "\n" --"Izbira -l brez podane OBLIKE ali NABORA izpie seznam vseh znanih kodnih " --"naborov\n" --"in prerkovalnih shem. OBLIKA je lahko ,decimal` (desetika), ,octal` " --"(osmika),\n" -+"Izbira -l brez podane OBLIKE ali NABORA izpie seznam vseh znanih kodnih naborov\n" -+"in prerkovalnih shem. OBLIKA je lahko ,decimal` (desetika), ,octal` (osmika),\n" - ",hexadecimal` (estnajstika) ali ,full` (polna), ali ena od rk ,dohf`.\n" - - #: src/main.c:302 --#, fuzzy - msgid "" --"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the " --"locale\n" -+"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the locale\n" - "dependent encoding, determined by LC_ALL, LC_CTYPE, LANG.\n" - msgstr "" --"e ni doloena spremenljivka DEFAULT_CHARSET, je privzeti NABOR ,%s`.\n" -+"e ni doloena spremenljivka DEFAULT_CHARSET, se privzame NABOR,\n" -+"doloen s spremenljivkami LC_ALL, LC_CTYPE ali LANG.\n" - - #: src/main.c:307 - msgid "" - "With -k, possible before charsets are listed for the given after CHARSET,\n" --"both being tabular charsets, with PAIRS of the form " --"`BEF1:AFT1,BEF2:AFT2,...'\n" -+"both being tabular charsets, with PAIRS of the form `BEF1:AFT1,BEF2:AFT2,...'\n" - "and BEFs and AFTs being codes are given as decimal numbers.\n" - msgstr "" - "Pri izbiri -k se izpiejo vsi moni startni nabori za podani ciljni nabor.\n" -@@ -229,30 +205,24 @@ - "znakov v startnem in ciljnem kodnem naboru.\n" - - #: src/main.c:312 --msgid "" --"LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" -+msgid "LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" - msgstr "JEZIK je lahko ,c`, ,perl` ali ,po`; privzeto je ,c`.\n" - - #: src/main.c:315 - msgid "" - "\n" --"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is " --"ENCODING[..ENCODING]...\n" --"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like " --"BEFORE..AFTER,\n" -+"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is ENCODING[..ENCODING]...\n" -+"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like BEFORE..AFTER,\n" - "with BEFORE and AFTER being charsets. An omitted CHARSET implies the usual\n" --"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a " --"/\n" -+"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a /\n" - "with an empty surface name means no surfaces at all. See the manual.\n" - msgstr "" - "\n" - "ZAHTEVEK ima obliko PODZAHTEVEK[,PODZAHTEVEK]...; PODZAHTEVEK ima obliko\n" - "KODIRANJE[,KODIRANJE]...; KODIRANJE ima obliko [NABOR][/[SHEMA]]. ZAHTEVEK\n" --"ima pogosto obliko PREJ..POTEM, kjer sta PREJ in POTEM kodirana nabora " --"znakov.\n" -+"ima pogosto obliko PREJ..POTEM, kjer sta PREJ in POTEM kodirana nabora znakov.\n" - "Izpueni NABOR pomeni privzetega; izpuena [/SHEMA] pomeni privzeto\n" --"prerkovalno shemo za dani NABOR. Poevnica / brez sheme pomeni brez " --"prerkovalne\n" -+"prerkovalno shemo za dani NABOR. Poevnica / brez sheme pomeni brez prerkovalne\n" - "sheme. Podrobnosti so v prironiku.\n" - - #: src/main.c:323 -@@ -265,96 +235,83 @@ - "\n" - "e nista podana niti -i niti -p, se uporabi -p, kadar ni podana DATOTEKA, \n" - "sicer pa -i. Pretvorba vsake DATOTEKE se zapie prek izvorne razliice. e\n" --"DATOTEKA ni podana, recode deluje kot filter med standardnim vhodom in " --"izhodom.\n" -+"DATOTEKA ni podana, recode deluje kot filter med standardnim vhodom in izhodom.\n" - - #: src/main.c:329 --msgid "" --"\n" --"Report bugs to .\n" --msgstr "" --"\n" --"Sporoila o napakah javite na .\n" -+msgid "\nReport bugs to .\n" -+msgstr "\nSporoila o napakah javite na .\n" - - #: src/main.c:430 - #, c-format - msgid "Sequence `%s' is ambiguous" --msgstr "" -+msgstr "Zaporedje ,%s` je dvoumno" - - #: src/main.c:434 - #, c-format - msgid "Sequence `%s' is unknown" --msgstr "" -+msgstr "Zaporedje ,%s` je neznano" - - #: src/main.c:464 src/main.c:522 - #, c-format - msgid "Language `%s' is ambiguous" --msgstr "" -+msgstr "Jezik ,%s` je dvoumen" - - #. -1 - #: src/main.c:468 src/main.c:526 - #, c-format - msgid "Language `%s' is unknown" --msgstr "" -+msgstr "Jezik ,%s` je neznan" - - #: src/main.c:560 - #, c-format - msgid "Format `%s' is ambiguous" --msgstr "" -+msgstr "Oblika ,%s` je dvoumna" - - #: src/main.c:564 - #, c-format - msgid "Format `%s' is unknown" --msgstr "" -+msgstr "Oblika ,%s` je neznana" - - #: src/main.c:621 --#, fuzzy - msgid "Written by Franc,ois Pinard .\n" --msgstr "" --"\n" --"Avtor Franc,ois Pinard .\n" -+msgstr "Avtor Franc,ois Pinard .\n" - - #: src/main.c:624 --msgid "" --"\n" --"Copyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" --msgstr "" --"\n" --"Copyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" -+msgid "\nCopyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" -+msgstr "\nCopyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" - - #: src/main.c:628 - msgid "" - "This is free software; see the source for copying conditions. There is NO\n" - "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" - msgstr "" --"To je prost program; pogoji, pod katerimi ga lahko uporabljate, " --"razmnoujete\n" -+"To je prost program; pogoji, pod katerimi ga lahko uporabljate, razmnoujete\n" - "in razirjate so navedeni v izvorni kodi. Za program ni NOBENEGA jamstva,\n" - "niti jamstev USTREZNOSTI ZA PRODAJO ali PRIMERNOSTI ZA UPORABO.\n" - - #: src/main.c:669 - #, c-format - msgid "Symbol `%s' is unknown" --msgstr "" -+msgstr "Znak ,%s` je neznan" - - #: src/main.c:709 src/main.c:723 - #, c-format - msgid "Charset `%s' is unknown or ambiguous" --msgstr "" -+msgstr "Nabor znakov ,%s` je neznan ali dvoumen" - - #: src/main.c:754 - msgid "Required argument is missing" --msgstr "" -+msgstr "Zahtevani argument manjka" - - #: src/main.c:797 --#, fuzzy, c-format -+#, c-format - msgid "Syntax is deprecated, please prefer `%s'" --msgstr "Neodobravana skladnja: prosimo, uporabljajte ,%s`" -+msgstr "Neodobravana skladnja; prosimo, uporabljajte ,%s`" - - #: src/main.c:803 - #, c-format - msgid "Request `%s' is erroneous" --msgstr "" -+msgstr "Zahteva ,%s` je napana" - - #: src/main.c:903 - #, c-format -@@ -366,19 +323,19 @@ - msgstr " opravljeno\n" - - #: src/main.c:954 --#, fuzzy, c-format -+#, c-format - msgid " failed: %s in step `%s..%s'\n" --msgstr " neuspeno: %s v %s..%s\n" -+msgstr " neuspeno: %s v koraku ,%s..%s`\n" - - #: src/main.c:961 --#, fuzzy, c-format -+#, c-format - msgid "%s failed: %s in step `%s..%s'" --msgstr "%s neuspeno: %s v %s..%s" -+msgstr "%s neuspeno: %s v koraku ,%s..%s`" - - #: src/main.c:984 --#, fuzzy, c-format -+#, c-format - msgid "%s in step `%s..%s'" --msgstr "%s v %s..%s" -+msgstr "%s v koraku ,%s..%s`" - - #: src/names.c:335 - #, c-format -@@ -419,12 +376,12 @@ - msgstr "Virtualni pomnilnik porabljen" - - #: src/recode.c:155 --#, c-format, ycp-format -+#, c-format - msgid "Codes %3d and %3d both recode to %3d" - msgstr "Kodi %3d in %3d se obe preslikata v %3d" - - #: src/recode.c:169 --#, c-format, ycp-format -+#, c-format - msgid "No character recodes to %3d" - msgstr "Noben znak se ne preslika v %3d" - -@@ -540,17 +497,11 @@ - msgstr "akalni status procesa potomca je 0x%0.2x" - - #: src/testdump.c:298 --msgid "" --"UCS2 Mne Description\n" --"\n" --msgstr "" --"UCS2 Mne Opis\n" --"\n" -+msgid "UCS2 Mne Description\n\n" -+msgstr "UCS2 Mne Opis\n\n" - - #~ msgid "CHARSET has no default, define DEFAULT_CHARSET in the environment.\n" --#~ msgstr "" --#~ "NABOR nima privzete vrednosti; doloite spremenljivko okolja " --#~ "DEFAULT_CHARSET.\n" -+#~ msgstr "NABOR nima privzete vrednosti; doloite spremenljivko okolja DEFAULT_CHARSET.\n" - - #~ msgid "Ambiguous sequence `%s'" - #~ msgstr "Dvoumno zaporedje ,%s`" -@@ -613,8 +564,7 @@ - #~ msgstr "Za zdaj je izbira -s ignorirana, kadar je izbrano -g" - - #~ msgid "Hash stats: %d names using %d buckets out of %d\n" --#~ msgstr "" --#~ "Statistika za razpritveno tabelo: %d imen porabilo %d od %d koev\n" -+#~ msgstr "Statistika za razpritveno tabelo: %d imen porabilo %d od %d koev\n" - - #~ msgid "Internal error - strategy undecided" - #~ msgstr "Interna napaka - neodloen o strategiji" -@@ -649,8 +599,7 @@ - #~ msgid " -o, --sequence=popen same as -i (on this system)\n" - #~ msgstr " -o, --sequence=popen isto kot -I (na tem sistemu)\n" - --#~ msgid "" --#~ " -o, --sequence=popen use popen machinery for sequencing passes\n" -+#~ msgid " -o, --sequence=popen use popen machinery for sequencing passes\n" - #~ msgstr " -o, --sequence=popen uporabi mehanizem ,popen'\n" - - #~ msgid "" -@@ -665,22 +614,19 @@ - #~ "FILE is specified, then act as a filter and recode stdin to stdout.\n" - #~ msgstr "" - #~ " -q, --quiet, --silent brez sporoil o neobrnljivih pretvorbah\n" --#~ " -s, --strict striktna pretvorba, tudi na kodo izgubljenih " --#~ "znakov\n" --#~ " -t, --touch konna datoteka naj nosi datum pretvorbe, ne " --#~ "nastanka\n" -+#~ " -s, --strict striktna pretvorba, tudi na kodo izgubljenih znakov\n" -+#~ " -t, --touch konna datoteka naj nosi datum pretvorbe, ne nastanka\n" - #~ " -v, --verbose z razlago poteka pretvorbe\n" - #~ " -x, --ignore=NABOR izpusti NABOR pri izbiri poti pretvorbe\n" - #~ "\n" --#~ "e ni podan -i, -o, ali -p, se privzame -p, kadar ni podana DATOTEKA, sicer " --#~ "-i.\n" -+#~ "e ni podan -i, -o, ali -p, se privzame -p, kadar ni podana DATOTEKA, sicer -i.\n" - #~ "Vsaka DATOTEKA se pretvori ez samo sebe in unii izvirnik. e DATOTEKA\n" - #~ "ni podana, deluje kot filter in pretvarja podatke z vhoda na izhod.\n" - - #~ msgid "BEFORE and AFTER both default to `%s' when needed.\n" - #~ msgstr "e nabor PREJ ali POTEM ni podan, se nadomesti z ,%s'\n" - --# POZOR -+#~ # POZOR - #~ msgid "" - #~ "Mandatory or optional arguments to long options are mandatory or optional\n" - #~ "for short options too.\n" -@@ -695,12 +641,10 @@ - #~ "FORMAT is a word among decimal, octal, hexadecimal or full (which may be\n" - #~ "abbreviated to one of `dohf'), it defaults to just the canonical name.\n" - #~ "With -k, possible before charsets are listed for the given after CHARSET,\n" --#~ "both being RFC1345 charsets, with PAIRS of the form " --#~ "`BEF1:AFT1,BEF2:AFT2,...\n" -+#~ "both being RFC1345 charsets, with PAIRS of the form `BEF1:AFT1,BEF2:AFT2,...\n" - #~ "and BEFs and AFTs being codes. All codes are given as decimal numbers.\n" - #~ msgstr "" --#~ "Argumenti, ki so obvezni za dolge oblike izbir so obvezni tudi za kratke " --#~ "oblike,\n" -+#~ "Argumenti, ki so obvezni za dolge oblike izbir so obvezni tudi za kratke oblike,\n" - #~ "in enako velja za neobvezne argumente.\n" - #~ "\n" - #~ " -C, --copyright obvestilo avtorskih pravicah\n" -@@ -710,18 +654,14 @@ - #~ " --help ta navodila\n" - #~ " --version verzija programa\n" - #~ "\n" --#~ "FORMAT izpisa je eden od naslednjih: decimal, octal, hexadecimal ali full " --#~ "(mona\n" --#~ "je okrajava na prvo rko: dohf), privzeta izbira je samo kanonino ime " --#~ "nabora.\n" -+#~ "FORMAT izpisa je eden od naslednjih: decimal, octal, hexadecimal ali full (mona\n" -+#~ "je okrajava na prvo rko: dohf), privzeta izbira je samo kanonino ime nabora.\n" - #~ "With -k, possible before charsets are listed for the given after CHARSET,\n" --#~ "both being RFC1345 charsets, with PAIRS of the form " --#~ "`BEF1:AFT1,BEF2:AFT2,...\n" -+#~ "both being RFC1345 charsets, with PAIRS of the form `BEF1:AFT1,BEF2:AFT2,...\n" - #~ "and BEFs and AFTs being codes. All codes are given as decimal numbers.\n" - - #~ msgid "" --#~ "Option -l with no FORMAT nor CHARSET list all charsets, also see the " --#~ "Texinfo\n" -+#~ "Option -l with no FORMAT nor CHARSET list all charsets, also see the Texinfo\n" - #~ "documentation. My preferred charsets are (each user has preferences):\n" - #~ "\n" - #~ " ascii-bs ASCII (7-bit), using backspace to apply diacritics\n" -@@ -730,10 +670,8 @@ - #~ " latin1 ISO Latin-1 8-bit extension of ASCII\n" - #~ " texte Easy French convention for transmitting email messages\n" - #~ msgstr "" --#~ "Izbira -l brez podanih FORMAT ali NABOR d seznam vseh naborov, oglejte si " --#~ "e\n" --#~ "dokumentacijo v Texinfo. Moji priljubljeni nabori (vsak uporabnik ima " --#~ "svoje):\n" -+#~ "Izbira -l brez podanih FORMAT ali NABOR d seznam vseh naborov, oglejte si e\n" -+#~ "dokumentacijo v Texinfo. Moji priljubljeni nabori (vsak uporabnik ima svoje):\n" - #~ "\n" - #~ " ascii-bs 7-bitni ASCII, z uporabo Backspace za tisk diakritinih znakov\n" - #~ " ibmpc 8-bitni nabor IBM-PC, zakljuek vrstice CR LF\n" -@@ -760,12 +698,8 @@ - #~ " -h, --header[=NAME] write C code with table NAME on stdout, then exit\n" - #~ " -i, --sequence=files use intermediate files for sequencing passes\n" - --#~ msgid "" --#~ "\n" --#~ "Usage: %s [OPTION]... [BEFORE]:[AFTER] [FILE]...\n" --#~ msgstr "" --#~ "\n" --#~ "Uporaba: %s [IZBIRA]... [PREJ]:[POTEM] [DATOTEKA]...\n" -+#~ msgid "\nUsage: %s [OPTION]... [BEFORE]:[AFTER] [FILE]...\n" -+#~ msgstr "\nUporaba: %s [IZBIRA]... [PREJ]:[POTEM] [DATOTEKA]...\n" - - #~ msgid "many to many" - #~ msgstr "ve v ve" ---- recode-3.6.orig/i18n/pt.po -+++ recode-3.6/i18n/pt.po -@@ -2,50 +2,50 @@ - # Copyright (C) 1996 Free Software Foundation, Inc. - # Vitor Duarte , Maio de 1996. - # Thanks to Nuno Oliveira , 1996. -+# Helder Correia , 2005. - # - msgid "" - msgstr "" --"Project-Id-Version: GNU recode 3.4.3\n" -+"Project-Id-Version: GNU recode 3.6\n" - "POT-Creation-Date: 2001-01-02 22:35+0100\n" --"PO-Revision-Date: 1996-11-25 10:00-0000\n" --"Last-Translator: Vitor Duarte \n" --"Language-Team: Portuguese \n" -+"PO-Revision-Date: 2005-11-13 15:20+0000\n" -+"Last-Translator: Helder Correia \n" -+"Language-Team: Portuguese \n" - "MIME-Version: 1.0\n" --"Content-Type: text/plain; charset=ISO-8859-1\n" --"Content-Transfer-Encoding: 8-bit\n" -+"Content-Type: text/plain; charset=UTF-8\n" -+"Content-Transfer-Encoding: 8bit\n" - - #: src/main.c:142 - msgid "No error" --msgstr "" -+msgstr "Sem erros" - - #: src/main.c:145 - msgid "Non canonical input" --msgstr "" -+msgstr "Entrada não canónica" - - #: src/main.c:148 --#, fuzzy - msgid "Ambiguous output" --msgstr "O formato %s ambiguo" -+msgstr "Saída ambígua" - - #: src/main.c:151 - msgid "Untranslatable input" --msgstr "" -+msgstr "Entrada não traduzível" - - #: src/main.c:154 - msgid "Invalid input" --msgstr "" -+msgstr "Entrada inválida" - - #: src/main.c:157 - msgid "System detected problem" --msgstr "" -+msgstr "O sistema detectou um problema" - - #: src/main.c:160 - msgid "Misuse of recoding library" --msgstr "" -+msgstr "Uso incorrecto da biblioteca de recodificação" - - #: src/main.c:163 - msgid "Internal recoding bug" --msgstr "" -+msgstr "Erro de recodificação interno" - - #: src/main.c:208 - msgid "" -@@ -63,38 +63,37 @@ - "along with this program; if not, write to the Free Software Foundation,\n" - "Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n" - msgstr "" --"Este programa free software; pode redistribuir-lo e/ou modific-lo\n" --"nos termos previstos na licena da GNU (GNU General Public License),\n" --"publicada pela Free Software Foundation; de acordo com a verso 2 ou,\n" --"se preferir, alguma mais recente.\n" --"\n" --"Este programa distribuido na esperana de que lhe seja til, mas\n" --"SEM QUALQUER GARANTIA; nem mesmo a garantia implcita de COMERCIABILIDADE\n" --"ou UTILIDADE PARA QUALQUER UTILIZAO. Para mais informaes consulte a\n" --"GNU General Public License.\n" -+"Este programa é livre; pode redistribuí-lo e/ou modificá-lo\n" -+"nos termos previstos na Licença Pública Geral GNU,\n" -+"publicada pela Free Software Foundation; de acordo com a versão 2 ou,\n" -+"se preferir, alguma versão mais recente.\n" -+"\n" -+"Este programa é distribuído na esperança que seja útil, mas\n" -+"SEM QUALQUER GARANTIA; nem mesmo a garantia implícita de COMERCIABILIDADE\n" -+"ou UTILIDADE PARA UM PROPÓSITO PARTICULAR. Para mais informações consulte a\n" -+"Licença Pública Geral GNU.\n" - "\n" --"Deve ter recebido uma cpia da licena GNU General Public License junto\n" --"com este programa; se assim no for, escreva para Free Software\n" -+"Deve ter recebido uma cópia da Licença Pública Geral GNU junttamente\n" -+"com este programa; se assim não for, escreva para Free Software\n" - "Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, EUA.\n" - - #: src/main.c:233 - #, c-format - msgid "Try `%s %s' for more information.\n" --msgstr "Para mais informao tente %s %s.\n" -+msgstr "Para mais informação, tente '%s %s'.\n" - - #: src/main.c:237 --msgid "" --"Free `recode' converts files between various character sets and surfaces.\n" --msgstr "" -+msgid "Free `recode' converts files between various character sets and surfaces.\n" -+msgstr "Free 'recode' converte ficheiros entre vários conjuntos de caracteres e superfícies.\n" - - #: src/main.c:241 --#, fuzzy, c-format -+#, c-format - msgid "" - "\n" - "Usage: %s [OPTION]... [ [CHARSET] | REQUEST [FILE]... ]\n" - msgstr "" - "\n" --"Uso: %s [OPO]... [CHARSET]\n" -+"Utilização: %s [OPÇÃO]... [ [CONJCAR] | PEDIDO [FICHEIRO]... ]\n" - - #: src/main.c:244 - msgid "" -@@ -102,14 +101,16 @@ - "If a long option shows an argument as mandatory, then it is mandatory\n" - "for the equivalent short option also. Similarly for optional arguments.\n" - msgstr "" -+"\n" -+"Se uma opção longa mostrar um argumento como mandatório, então é igualmente\n" -+"mandatório para a versão curta. Similarmente para argumentos opcionais.\n" - - #: src/main.c:250 - msgid "" - "\n" - "Listings:\n" - " -l, --list[=FORMAT] list one or all known charsets and aliases\n" --" -k, --known=PAIRS restrict charsets according to known PAIRS " --"list\n" -+" -k, --known=PAIRS restrict charsets according to known PAIRS list\n" - " -h, --header[=[LN/]NAME] write table NAME on stdout using LN, then exit\n" - " -F, --freeze-tables write out a C module holding all tables\n" - " -T, --find-subsets report all charsets being subset of others\n" -@@ -117,6 +118,16 @@ - " --help display this help and exit\n" - " --version output version information and exit\n" - msgstr "" -+"\n" -+"Listagens:\n" -+" -l, --list[=FORMATO] listar um ou todos os conj. caracteres conhecidos e pseudónimos\n" -+" -k, --known=PARES restringir conj. caracteres de acordo com lista de PARES conhecidos\n" -+" -h, --header[=[LN/]NOME] escrever NOME tabela usando LN e sair\n" -+" -F, --freeze-tables escrever um módulo C com todas as tabelas\n" -+" -T, --find-subsets reportar conj. de caracteres subconj. de outros\n" -+" -C, --copyright exibir direitos de autor e condições de cópia\n" -+" --help exibir esta ajuda e sair\n" -+" --version exibir versão e sair\n" - - #: src/main.c:263 - msgid "" -@@ -129,18 +140,24 @@ - " -i, --sequence=files use intermediate files for sequencing passes\n" - " --sequence=memory use memory buffers for sequencing passes\n" - msgstr "" -+"\n" -+"Modos de operação:\n" -+" -v, --verbose explicar sequência de passos e relatar progresso\n" -+" -q, --quiet, --silent inibir mensagens acerca de recodificações irreversíveis\n" -+" -f, --force forçar recodificações mesmo quando irreversíveis\n" -+" -t, --touch actualizar data dos ficheiros após recodificação\n" -+" -i, --sequence=files usar ficheiros intermédios para passos sequenciais\n" -+" --sequence=memory usar memória para passos sequenciais\n" - - #: src/main.c:275 - msgid " -p, --sequence=pipe use pipe machinery for sequencing passes\n" --msgstr " -p, --sequence=pipe usar pipe para sequenciar os passos\n" -+msgstr " -p, --sequence=pipe usar pipe para sequenciar os passos\n" - - #: src/main.c:280 --#, fuzzy - msgid " -p, --sequence=pipe same as -i (on this system)\n" --msgstr " -p, --sequence=pipe o mesmo que -o (neste sistema)\n" -+msgstr " -p, --sequence=pipe o mesmo que -i (neste sistema)\n" - - #: src/main.c:285 --#, fuzzy - msgid "" - "\n" - "Fine tuning:\n" -@@ -152,16 +169,13 @@ - " -x, --ignore=CHARSET ignore CHARSET while choosing a recoding path\n" - msgstr "" - "\n" --" -c, --colons usa : em vez de \" para o trema\n" --" -d, --diacritics restringir a converso aos diacrilicos do LaTeX\n" --" -f, --force efectuar mesmo as converses irreversveis\n" --" (ATENO: actualmente -f sempre assumido)\n" --" -g, --graphics aproxima as caixas do IBMPC com caracteres " --"ASCII\n" --" -h, --header[=NAME] produzir apenas, no stdout, a tabela NAME em\n" --" cdigo C\n" --" -i, --sequence=files usar ficheiros intermdios para os passos " --"sucessivos\n" -+"Afinação:\n" -+" -s, --strict usar mapeamentos severos, até perder caracteres\n" -+" -d, --diacritics converter apenas diacríticos ou afins para HTML/LaTeX\n" -+" -S, --source[=LN] limitar recodificação de expressões e comentários como para LN\n" -+" -c, --colons usar dois pontos em vez de aspas para diérese\n" -+" -g, --graphics aproximar réguas IBMPC por gráficos ASCII\n" -+" -x, --ignore=CONJCAR ignorar CONJCAR ao escolher um caminho a recodificar\n" - - #: src/main.c:296 - msgid "" -@@ -169,39 +183,47 @@ - "Option -l with no FORMAT nor CHARSET list available charsets and surfaces.\n" - "FORMAT is `decimal', `octal', `hexadecimal' or `full' (or one of `dohf').\n" - msgstr "" -+"\n" -+"A opção -l sem FORMATO nem CONJCAR lista os conjuntos de caracteres e superfícies disponíveis.\n" -+"FORMATO é 'decimal', 'octal', 'hexadecimal' ou 'full' (ou um de 'dohf').\n" - - #: src/main.c:302 - msgid "" --"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the " --"locale\n" -+"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the locale\n" - "dependent encoding, determined by LC_ALL, LC_CTYPE, LANG.\n" - msgstr "" -+"A não ser que DEFAULT_CHARSET esteja definido no ambiente, CONJCAR toma o valor\n" -+"da codificação por omissão da localização, determinado por LC_ALL, LC_CTYPE, LANG.\n" - - #: src/main.c:307 - msgid "" - "With -k, possible before charsets are listed for the given after CHARSET,\n" --"both being tabular charsets, with PAIRS of the form " --"`BEF1:AFT1,BEF2:AFT2,...'\n" -+"both being tabular charsets, with PAIRS of the form `BEF1:AFT1,BEF2:AFT2,...'\n" - "and BEFs and AFTs being codes are given as decimal numbers.\n" - msgstr "" -+"Com -k, possível antes de conj. caracteres serem listados para dados após CONJCAR,\n" -+"sendo ambos tabulares, com PARES da forma `BEF1:AFT1,BEF2:AFT2,...'\n" -+"e BEFs e AFTs sendo códigos são dados como números decimais.\n" - - #: src/main.c:312 --msgid "" --"LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" --msgstr "" -+msgid "LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" -+msgstr "LN é uma linguagem, podendo ser 'c', 'perl' ou 'po'; 'c' é predefinido.\n" - - #: src/main.c:315 - msgid "" - "\n" --"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is " --"ENCODING[..ENCODING]...\n" --"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like " --"BEFORE..AFTER,\n" -+"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is ENCODING[..ENCODING]...\n" -+"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like BEFORE..AFTER,\n" - "with BEFORE and AFTER being charsets. An omitted CHARSET implies the usual\n" --"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a " --"/\n" -+"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a /\n" - "with an empty surface name means no surfaces at all. See the manual.\n" - msgstr "" -+"\n" -+"PEDIDO é SUBPEDIDO[,SUBPEDIDO]...; SUBPEDIDO é CODIFICAÇÃO[..CODIFICAÇÃO]...\n" -+"CODIFICAÇÃO é [CONJCAR][/[SUPERFÍCIE]]...; PEDIDO pode parecer-se com ANTES..DEPOIS,\n" -+"com ANTES e DEPOIS sendo conjuntos de caracteres. Um CONJCAR omitido implica o conjunto\n" -+"habitual; um [/SURFACE]... omitido implica as superfćies para CONJCAR; um /\n" -+"com um nome de superfície vazio significa ausência de superfícies. Veja o manual manual.\n" - - #: src/main.c:323 - msgid "" -@@ -210,95 +232,93 @@ - "Each FILE is recoded over itself, destroying the original. If no\n" - "FILE is specified, then act as a filter and recode stdin to stdout.\n" - msgstr "" -+"\n" -+"Se nem -i nem -p forem dados, presume-se -p sem FICHEIRO, senão -i.\n" -+"Cada FICHEIRO é recodificado sobre si próprio, destruindo-se o original. Se\n" -+"FICHEIRO não for especificado, actue-se como um filtro e recidifique-se a entrada padrão para a saída padrão.\n" - - #: src/main.c:329 --#, fuzzy - msgid "" - "\n" - "Report bugs to .\n" - msgstr "" - "\n" --"Reporte os bugs para .\n" -+"Reporte erros para .\n" - - #: src/main.c:430 - #, c-format - msgid "Sequence `%s' is ambiguous" --msgstr "" -+msgstr "A sequência '%s' é ambígua" - - #: src/main.c:434 - #, c-format - msgid "Sequence `%s' is unknown" --msgstr "" -+msgstr "A sequência '%s' é desconhecida" - - #: src/main.c:464 src/main.c:522 - #, c-format - msgid "Language `%s' is ambiguous" --msgstr "" -+msgstr "A linguagem '%s' é ambígua" - - #. -1 - #: src/main.c:468 src/main.c:526 - #, c-format - msgid "Language `%s' is unknown" --msgstr "" -+msgstr "A linguagem '%s' é desconhecida" - - #: src/main.c:560 - #, c-format - msgid "Format `%s' is ambiguous" --msgstr "" -+msgstr "O formato '%s' é ambíguo" - - #: src/main.c:564 - #, c-format - msgid "Format `%s' is unknown" --msgstr "" -+msgstr "O formato '%s' é desconhecido" - - #: src/main.c:621 --#, fuzzy - msgid "Written by Franc,ois Pinard .\n" --msgstr "" --"\n" --"Escrito por Franc,ois Pinard .\n" -+msgstr "Escrito por François Pinard .\n" - - #: src/main.c:624 --#, fuzzy - msgid "" - "\n" - "Copyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" - msgstr "" - "\n" --"Copyright (C) 1990, 1992, 1993, 1994, 1996 Free Software Foundation, Inc.\n" -+"Copyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" - - #: src/main.c:628 - msgid "" - "This is free software; see the source for copying conditions. There is NO\n" - "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" - msgstr "" --"Este programa free software; veja o cdigo fonte para saber em que\n" --"condies o pode copiar. SEM GARANTIA; nem mesmo de COMERCIABILIDADE ou\n" --"de UTILIDADE PARA QUALQUER UTILIZAO.\n" -+"Este programa é livre; veja o código fonte para saber as condições de cópia.\n" -+"NÃO HÁ GARANTIA; nem mesmo de COMERCIABILIDADE ou de UTILIDADE PARA UM PROPÓSITO PARTICULAR.\n" - - #: src/main.c:669 - #, c-format - msgid "Symbol `%s' is unknown" --msgstr "" -+msgstr "O símbolo '%s' é desconhecido" - - #: src/main.c:709 src/main.c:723 - #, c-format - msgid "Charset `%s' is unknown or ambiguous" --msgstr "" -+msgstr "O conjunto de caracteres '%s' é desconhecido ou ambíguo" - - #: src/main.c:754 - msgid "Required argument is missing" --msgstr "" -+msgstr "Argumento requerido em falta" - - #: src/main.c:797 - #, c-format - msgid "Syntax is deprecated, please prefer `%s'" --msgstr "" -+msgstr "A sintaxe está desaprovada, por favor prefira '%s'" - - #: src/main.c:803 - #, c-format - msgid "Request `%s' is erroneous" --msgstr "" -+msgstr "O pedido '%s' é erróneo" - - #: src/main.c:903 - #, c-format -@@ -312,359 +332,181 @@ - #: src/main.c:954 - #, c-format - msgid " failed: %s in step `%s..%s'\n" --msgstr "" -+msgstr " falhou: %s no passo '%s..%s'\n" - - #: src/main.c:961 - #, c-format - msgid "%s failed: %s in step `%s..%s'" --msgstr "" -+msgstr "%s falhou: %s no passo '%s..%s'" - - #: src/main.c:984 --#, fuzzy, c-format -+#, c-format - msgid "%s in step `%s..%s'" --msgstr "%spara a sequncia %s.%s" -+msgstr "%s no passo '%s..%s'" - - #: src/names.c:335 - #, c-format - msgid "Charset %s already exists and is not %s" --msgstr "O conjunto de caracteres %s j existe e no %s" -+msgstr "O conjunto de caracteres %s j�existe e n� �%s" - - #: src/names.c:831 --#, fuzzy, c-format -+#, c-format - msgid "Cannot list `%s', no names available for this charset" --msgstr "" --" impossvel listar %s. No existem nomes no `RFC 1345' para os caracteres" -+msgstr "Não é possível listar '%s', sem nomes para este conjunto de caracteres" - - #. code counter - #. expected value for code counter - #. insert a while line before printing - #. Print the long table according to explode data. - #: src/names.c:984 src/names.c:1030 --#, fuzzy, c-format -+#, c-format - msgid "Dec Oct Hex UCS2 Mne %s\n" --msgstr "dec oct hex ch %s\n" -+msgstr "Dec Oct Hex UCS2 Mne %s\n" - - #: src/names.c:1049 --#, fuzzy, c-format -+#, c-format - msgid "Sorry, no names available for `%s'" --msgstr "Desculpe, no existem nomes `RFC 1345' para %s" -+msgstr "Desculpe, sem nomes para '%s'" - - #: src/outer.c:125 - #, c-format - msgid "Resurfacer set more than once for `%s'" --msgstr "" -+msgstr "Repolidor definido mais do que uma vez para '%s'" - - #: src/outer.c:133 - #, c-format - msgid "Unsurfacer set more than once for `%s'" --msgstr "" -+msgstr "Despolidor definido mais do que uma vez para '%s'" - - #: src/recode.c:115 src/recode.c:127 - msgid "Virtual memory exhausted" --msgstr "" -+msgstr "Memória virtual esgotada" - - #: src/recode.c:155 - #, c-format, ycp-format - msgid "Codes %3d and %3d both recode to %3d" --msgstr "Ambos os cdigos %3d e %3d so convertidos em %3d" -+msgstr "Ambos os c�igos %3d e %3d s� convertidos em %3d" - - #: src/recode.c:169 - #, c-format, ycp-format - msgid "No character recodes to %3d" --msgstr "Nenhum carcter convertido em %3d" -+msgstr "Nenhum car�ter �convertido em %3d" - - #: src/recode.c:170 - msgid "Cannot invert given one-to-one table" --msgstr "No se pode inverter a tabela de um-para-um dada" -+msgstr "N� se pode inverter a tabela de um-para-um dada" - - #: src/recode.c:224 src/recode.c:236 - #, c-format - msgid "Following diagnostics for `%s' to `%s'" --msgstr "Os diagnosticos seguintes aplicam-se de %s para %s" -+msgstr "Os diagnosticos seguintes aplicam-se de %s para %s" - - #: src/recode.c:229 src/recode.c:241 --#, fuzzy, c-format -+#, c-format - msgid "Pair no. %d: <%3d, %3d> conflicts with <%3d, %3d>" --msgstr "Par n %d: { %3d, %3d } em conflito com { %3d, %3d }" -+msgstr "Par nº %d: <%3d, %3d> em conflito com <%3d, %3d>" - - #: src/recode.c:272 - msgid "Cannot complete table from set of known pairs" --msgstr "No posso completar a tabela a partir do conjunto de pares conhecidos" -+msgstr "Não é possível completar a tabela a partir do conjunto de pares conhecidos" - - #: src/recode.c:497 - msgid "Identity recoding, not worth a table" --msgstr "A converso no necessita de tabela" -+msgstr "Recodificação identidade, tabela desnecessária" - - #: src/recode.c:504 - msgid "Recoding is too complex for a mere table" --msgstr "Converso demasiado complexa para uma simples tabela" -+msgstr "A recodificação é demasiado complexa para uma mera tabela" - - #. Print the header of the header file. - #: src/recode.c:536 --#, fuzzy, c-format -+#, c-format - msgid "%sConversion table generated mechanically by Free `%s' %s" --msgstr "%sTabela de converso gerada automaticamente por GNU %s %s" -+msgstr "%sTabela de conversão gerada mecanicamente por Free '%s' %s" - - #: src/recode.c:538 - #, c-format - msgid "%sfor sequence %s.%s" --msgstr "%spara a sequncia %s.%s" -+msgstr "%spara a sequência %s.%s" - - #: src/recode.c:744 - msgid "No table to print" --msgstr "Nenhuma tabela a imprimir" -+msgstr "Nenhuma tabela para exibir" - - #: src/request.c:34 - msgid "reversible" --msgstr "reversvel" -+msgstr "reversível" - - #: src/request.c:36 --#, fuzzy, c-format -+#, c-format - msgid "%s to %s" --msgstr "%spara a sequncia %s.%s" -+msgstr "%s para %s" - - #: src/request.c:37 src/request.c:39 - msgid "byte" --msgstr "" -+msgstr "byte" - - #: src/request.c:38 src/request.c:40 - msgid "ucs2" --msgstr "" -+msgstr "ucs2" - - #: src/request.c:38 src/request.c:40 --#, fuzzy - msgid "variable" --msgstr "reversvel" -+msgstr "variável" - - #: src/request.c:111 - msgid "*Unachievable*" --msgstr "*Impossvel*" -+msgstr "*Impossível*" - - #: src/request.c:113 - msgid "*mere copy*" --msgstr "*simples cpia*" -+msgstr "*mera cópia*" - - #: src/request.c:246 - msgid "Virtual memory exhausted!" --msgstr "" -+msgstr "Memória virtual esgotada!" - - #: src/request.c:265 - msgid "Step initialisation failed" --msgstr "" -+msgstr "A inicialização falhou" - - #: src/request.c:272 - msgid "Step initialisation failed (unprocessed options)" --msgstr "" -+msgstr "A inicialização falhou (opções não processadas)" - - #: src/request.c:568 - #, c-format - msgid "Request: %s\n" --msgstr "" -+msgstr "Pedido: %s\n" - - #: src/request.c:720 - #, c-format - msgid "Shrunk to: %s\n" --msgstr "" -+msgstr "Diminuição para: %s\n" - - #: src/request.c:823 src/request.c:932 - #, c-format - msgid "Unrecognised surface name `%s'" --msgstr "" -+msgstr "Nome de superfície '%s' não reconhecido" - - #: src/request.c:903 --#, fuzzy, c-format -+#, c-format - msgid "No way to recode from `%s' to `%s'" --msgstr " impossvel passar de %s para %s" -+msgstr "Não é possível recodificar de '%s' para '%s'" - - #: src/request.c:1013 - msgid "Expecting `..' in request" --msgstr "" -+msgstr "À espera de '..' no pedido" - - #: src/task.c:826 src/task.c:1002 - #, c-format - msgid "Child process wait status is 0x%0.2x" --msgstr "O processo filho terminou com estado 0x%0.2x" -+msgstr "O estado de espera do processo filho é 0x%0.2x" - - #: src/testdump.c:298 - msgid "" - "UCS2 Mne Description\n" - "\n" - msgstr "" -- --#~ msgid "Ambiguous sequence `%s'" --#~ msgstr "A sequncia %s ambgua" -- --#~ msgid "Unknown sequence `%s'" --#~ msgstr "Sequncia %s desconhecida" -- --#~ msgid "Ambiguous language `%s'" --#~ msgstr "Linguagem %s ambgua" -- --#~ msgid "Unknown language `%s'" --#~ msgstr "Lingua %s desconhecida" -- --#~ msgid "Ambiguous format `%s'" --#~ msgstr "O formato %s ambiguo" -- --#~ msgid "Unknown format `%s'" --#~ msgstr "Formato %s desconhecido" -- --#~ msgid "Hash stats: %d names using %d buckets out of %d\n" --#~ msgstr "Estatsticas de disperso: %d nomes, usando %d de %d posies\n" -- --#~ msgid "Currently, -s is ignored when -g is selected" --#~ msgstr "Actualmente, -s ignorado quando -g seleccionado" -- --#~ msgid "one to one" --#~ msgstr "de um para um" -- --#~ msgid "one to many" --#~ msgstr "de um para vrios" -- --#~ msgid "many to one" --#~ msgstr "de vrios para um" -- --#~ msgid "many to many" --#~ msgstr "de vrios para vrios" -- --#~ msgid "MAX_CHARSETS is too small" --#~ msgstr "MAX_CHARSETS demasiado pequeno" -- --#~ msgid "Ambiguous charset or encoding `%s'" --#~ msgstr "Caracteres ou codificao %s ambiguos" -- --#~ msgid "Unknown charset or encoding `%s'" --#~ msgstr "Conjunto de caracteres ou codificao %s desconhecido" -- --#~ msgid "Simplified to: %s\n" --#~ msgstr "Reduzido a: %s\n" -- --#~ msgid "Unbalanced quotes in request" --#~ msgstr "Plicas desemparelhadas no pedido" -- --#~ msgid "Illegal backslash" --#~ msgstr "Barra invertida ilegal" -- --#~ msgid "Internal error - strategy undecided" --#~ msgstr "Erro interno - estratgia no decidvel" -- --#~ msgid "ONE to SAME" --#~ msgstr "UM para o MESMO" -- --#~ msgid "steps: %d" --#~ msgstr "passos: %d" -- --#~ msgid ", %d saved by merging" --#~ msgstr ", %d gravado por fuso" -- --#~ msgid " UNACHIEVABLE\n" --#~ msgstr " IMPOSSVEL\n" -- --#~ msgid "Cannot auto check the ignored charset" --#~ msgstr "" --#~ "Verificao automtica do conjunto de caracteres ignorados impossvel" -- --#~ msgid "Cannot auto check on %s" --#~ msgstr "Verificao automtica em %s impossvel" -- --#~ msgid "" --#~ "Mandatory or optional arguments to long options are mandatory or optional\n" --#~ "for short options too.\n" --#~ "\n" --#~ " -C, --copyright display Copyright and copying conditions\n" --#~ " -a, --auto-check report about some or all recoding paths, then exit\n" --#~ " -l, --list[=FORMAT] list one or all known charsets\n" --#~ " -k, --known=PAIRS restrict charsets according to known PAIRS list\n" --#~ " --help display this help and exit\n" --#~ " --version output version information and exit\n" --#~ "\n" --#~ "FORMAT is a word among decimal, octal, hexadecimal or full (which may be\n" --#~ "abbreviated to one of `dohf'), it defaults to just the canonical name.\n" --#~ "With -k, possible before charsets are listed for the given after CHARSET,\n" --#~ "both being RFC1345 charsets, with PAIRS of the form " --#~ "`BEF1:AFT1,BEF2:AFT2,...\n" --#~ "and BEFs and AFTs being codes. All codes are given as decimal numbers.\n" --#~ msgstr "" --#~ "Os argumentos obrigatrios ou opcionais na forma longa das opes, tambm " --#~ "oso nas respectivas formas abreviadas.\n" --#~ "\n" --#~ " -C, --copyright afixar os direitos e condies de cpia\n" --#~ " -a, --auto-check verificar os passos para a converso e terminar\n" --#~ " -l, --list[=FORMAT] listar os conjuntos de caracteres conhecidos\n" --#~ " -k, --known=PAIRES restringir os conjuntos de caracteres com PAIRES\n" --#~ " --help afixar esta ajuda e terminar\n" --#~ " --version afixar a verso do programa e terminar\n" --#~ "\n" --#~ "FORMAT decimal, octal, hexadecimal ou full (que pode abreviar\n" --#~ "usando uma letra de `dohf'), se omitido, o nome cannico assumido.\n" --#~ "Com -k, so listados os caracteres possveis para cada CHARSET de sada,\n" --#~ "de acordo com o RFC1345, com PAIRES da forma BEF1:AFT1,BEF2:AFT2,...\n" --#~ "sendo BEFs e AFTs os respectivos cdigos em notao decimal.\n" -- --#~ msgid "" --#~ "Option -l with no FORMAT nor CHARSET list all charsets, also see the " --#~ "Texinfo\n" --#~ "documentation. My preferred charsets are (each user has preferences):\n" --#~ "\n" --#~ " ascii-bs ASCII (7-bit), using backspace to apply diacritics\n" --#~ " ibmpc IBM-PC 8-bit characters, with proper newlines\n" --#~ " latex LaTeX coding of foreign and diacriticized characters\n" --#~ " latin1 ISO Latin-1 8-bit extension of ASCII\n" --#~ " texte Easy French convention for transmitting email messages\n" --#~ msgstr "" --#~ "A opo -l sem FORMAT nem CHARSET lista todos os conjuntos de caracteres\n" --#~ "(ver manual). Alguns conjuntos de caracteres bastante comuns:\n" --#~ "\n" --#~ " ascii-bs ASCII (7-bit), usando backspace para a acentuao\n" --#~ " ibmpc IBM-PC (8-bit), com CR LF a marcar o fim das linhas\n" --#~ " latex codificao LaTeX para os caracteres acentuados e outros\n" --#~ " latin1 ISO Latin-1 8-bits (extenso do ASCII)\n" --#~ " texte convenso Easy French para mensagens email\n" -- --#~ msgid "" --#~ "\n" --#~ "Usage: %s [OPTION]... [BEFORE]:[AFTER] [FILE]...\n" --#~ msgstr "" --#~ "\n" --#~ "Uso: %s [OPO]... [BEFORE]:[AFTER] [FILE]...\n" -- --#~ msgid "" --#~ " -o, --sequence=popen use popen machinery for sequencing passes\n" --#~ msgstr " -o, --sequence=popen usar popen para sequenciar os passos\n" -- --#~ msgid " -o, --sequence=popen same as -i (on this system)\n" --#~ msgstr " -o, --sequence=popen o mesmo que -i (neste sistema)\n" -- --#~ msgid "" --#~ " -q, --quiet, --silent inhibit messages about irreversible recodings\n" --#~ " -s, --strict use strict mappings, even loose characters\n" --#~ " -t, --touch touch the recoded files after replacement\n" --#~ " -v, --verbose explain sequence of steps and report progress\n" --#~ " -x, --ignore=CHARSET ignore CHARSET while choosing a recoding path\n" --#~ "\n" --#~ "If none of -i, -o and -p are given, presume -p if no FILE, else -i.\n" --#~ "Each FILE is recoded over itself, destroying the original. If no\n" --#~ "FILE is specified, then act as a filter and recode stdin to stdout.\n" --#~ msgstr "" --#~ " -q, --quiet, --silent no afixar mensagens sobre converses " --#~ "irreversveis\n" --#~ " -s, --strict converso estrita, podendo perder alguns " --#~ "caracteres\n" --#~ " -t, --touch actualizar a hora dos ficheiros processados\n" --#~ " -v, --verbose afixar a sequncia de passos e relatar o " --#~ "progresso\n" --#~ " -x, --ignore=CHARSET ignorar CHARSET na escolha da sequncia de passos\n" --#~ "\n" --#~ "Na ausncia de -i, -o e -p, assumir -i se no der FILE, ou ento -p.\n" --#~ "Cada FILE convertido para ele nesmo, destruindo o original. Se no " --#~ "indicar\n" --#~ "qualquer FILE, actuar como um filtro convertendo do stdin para stdout.\n" -- --#~ msgid "BEFORE and AFTER both default to `%s' when needed.\n" --#~ msgstr "BEFORE e AFTER so ambos assumidos como %s quando necessrio.\n" -- --#~ msgid "%s: Recoding is not reversible" --#~ msgstr "%s: Converso irreversvel" -- --#~ msgid "Recoding is not reversible" --#~ msgstr "Converso irreversvel" -+"UCS2 Mne Descrição\n" -+"\n" ---- recode-3.6.orig/i18n/vi.po -+++ recode-3.6/i18n/vi.po -@@ -0,0 +1,512 @@ -+# Vietnamese translation for recode-3.6. -+# Copyright (C) 2005 Free Software Foundation, Inc. -+# Clytie Siddall , 2005. -+# -+msgid "" -+msgstr "" -+"Project-Id-Version: recode 3.6\n" -+"Report-Msgid-Bugs-To: \n" -+"POT-Creation-Date: 2001-01-02 22:35+0100\n" -+"PO-Revision-Date: 2005-02-20 18:44+0950\n" -+"Last-Translator: Clytie Siddall \n" -+"Language-Team: Vietnamese \n" -+"MIME-Version: 1.0\n" -+"Content-Type: text/plain; charset=utf-8\n" -+"Content-Transfer-Encoding: 8bit\n" -+ -+#: src/main.c:142 -+msgid "No error" -+msgstr "Không có lỗi" -+ -+#: src/main.c:145 -+msgid "Non canonical input" -+msgstr "Dữ liệụ gõ không đúng tiêu chuẩn" -+ -+#: src/main.c:148 -+msgid "Ambiguous output" -+msgstr "Dữ liệu xuất là mơ hồ" -+ -+#: src/main.c:151 -+msgid "Untranslatable input" -+msgstr "Dữ liệu gõ không dịch được" -+ -+#: src/main.c:154 -+msgid "Invalid input" -+msgstr "Dữ liệu gõ không hợp lệ" -+ -+#: src/main.c:157 -+msgid "System detected problem" -+msgstr "Hệ thống mới gặp lỗi" -+ -+#: src/main.c:160 -+msgid "Misuse of recoding library" -+msgstr "Không sử dụng thư viện mã hóa lại cho đúng" -+ -+#: src/main.c:163 -+msgid "Internal recoding bug" -+msgstr "Lỗi mã hóa lại nội bộ" -+ -+#: src/main.c:208 -+msgid "" -+"This program is free software; you can redistribute it and/or modify\n" -+"it under the terms of the GNU General Public License as published by\n" -+"the Free Software Foundation; either version 2, or (at your option)\n" -+"any later version.\n" -+"\n" -+"This program is distributed in the hope that it will be useful,\n" -+"but WITHOUT ANY WARRANTY; without even the implied warranty of\n" -+"MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" -+"GNU General Public License for more details.\n" -+"\n" -+"You should have received a copy of the GNU General Public License\n" -+"along with this program; if not, write to the Free Software Foundation,\n" -+"Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n" -+msgstr "" -+"Chương trình này là phần mềm tự do; bạn có thể phân phối và/hay sửa đổí\n" -+"nó với điều kiện cua Quyền Công Chung Gnu (GPL) như được xuất do\n" -+"Free Software Foundation; hoặc phiên bản 2, hoặc (tùy chọn)\n" -+"bất cứ phiên bản sau nào.\n" -+"\n" -+"Chúng tôi phân phối chương trình này vì mong nó có ích, nhưng\n" -+"không bảo đảm gì cả, không bảo đảm một cách ngụ ý\n" -+"khả năng bán hay khả năng làm việc dứt khoát. Hãy xem\n" -+"Quyền Công Chung Gnu để tim thấy chi tiết thêm.\n" -+"\n" -+"Bạn nên được nhận một bản Quyền Công Chung Gnu với\n" -+"chương trình này; nếu không thì hãy viết thư cho Free Software Foundation,\n" -+"Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA (Mỹ).\n" -+ -+#: src/main.c:233 -+#, c-format -+msgid "Try `%s %s' for more information.\n" -+msgstr "Thử lệnh `%s %s' để tìm thấy thông tin thêm.\n" -+ -+#: src/main.c:237 -+msgid "Free `recode' converts files between various character sets and surfaces.\n" -+msgstr "Chương trình `recode' (mã hóa lại) tự do thì chuyển đổi tập tin giữa nhiều bộ ký tự và mặt khác nhau.\n" -+ -+#: src/main.c:241 -+#, c-format -+msgid "" -+"\n" -+"Usage: %s [OPTION]... [ [CHARSET] | REQUEST [FILE]... ]\n" -+msgstr "" -+"\n" -+"Cách sử dụng: %s [TÙY_CHỌN]... [ [BỘ_KÝ_TỰ] | LỜI_YÊU_CẦU [TẬP_TIN]... ]\n" -+ -+#: src/main.c:244 -+msgid "" -+"\n" -+"If a long option shows an argument as mandatory, then it is mandatory\n" -+"for the equivalent short option also. Similarly for optional arguments.\n" -+msgstr "" -+"\n" -+"Nếu tùy chọn dài phải có đối số thì tùy chọn ngắn thích hợp cũng vậy.\n" -+"Đối với đối số tùy chọn thì cách giống nhau.\n" -+ -+#: src/main.c:250 -+msgid "" -+"\n" -+"Listings:\n" -+" -l, --list[=FORMAT] list one or all known charsets and aliases\n" -+" -k, --known=PAIRS restrict charsets according to known PAIRS list\n" -+" -h, --header[=[LN/]NAME] write table NAME on stdout using LN, then exit\n" -+" -F, --freeze-tables write out a C module holding all tables\n" -+" -T, --find-subsets report all charsets being subset of others\n" -+" -C, --copyright display Copyright and copying conditions\n" -+" --help display this help and exit\n" -+" --version output version information and exit\n" -+msgstr "" -+"\n" -+"Danh sách:\n" -+" -l, --list[=DẠNG] _ghi danh sach_ một hay tất cả bộ ký tự và biệt hiệu được biết\n" -+" -k, --known=CẶP hạn chế bộ ký tự theo danh sách CẶP _được biết_\n" -+" -h, --header[=[NGÔN_NGỮ/]TÊN] ghi TÊN bảng ra thiết bị xuất chuẩn bằng sử dụng ngôn ngữ ấy rồi thoát (_đầu đề_)\n" -+" -F, --freeze-tables ghi ra mô-đun C chứa tất cả _bảng_ (_làm đông đặc_)\n" -+" -T, --find-subsets thông báo tât cả bộ ký tự là _nhóm phụ_ của bộ khác (_tìm_)\n" -+" -C, --copyright hiển thị các điều kiện _bản quyền_ và sao chép\n" -+" --help hiển thị _trợ giúp_ này rồi thoát\n" -+" --version xuất thông tin _phiên bản_ rồi thoát\n" -+ -+#: src/main.c:263 -+msgid "" -+"\n" -+"Operation modes:\n" -+" -v, --verbose explain sequence of steps and report progress\n" -+" -q, --quiet, --silent inhibit messages about irreversible recodings\n" -+" -f, --force force recodings even when not reversible\n" -+" -t, --touch touch the recoded files after replacement\n" -+" -i, --sequence=files use intermediate files for sequencing passes\n" -+" --sequence=memory use memory buffers for sequencing passes\n" -+msgstr "" -+"\n" -+"Chế độ thi hành:\n" -+" -v, --verbose giải thích dãy bước và thông báo tiến trình (_chi tiết_)\n" -+" -q, --quiet, --silent thu hồi các thông điệp về việc mã hóa lại không hoàn tác (_im_)\n" -+" -f, --force _buộc_ tất cả việc mã hóa lại ngay cả khi không thể hoàn tác\n" -+" -t, --touch _sờ_ mọi tập tin được mã hóa lại sau khi thay thế\n" -+" -i, --sequence=files sử dụng _tâp tin_ trung cấp cho việc _sắp xếp_ \n" -+" --sequence=memory sử dụng bộ đệm _nhớ_ cho việc _sắp xếp_\n" -+ -+#: src/main.c:275 -+msgid " -p, --sequence=pipe use pipe machinery for sequencing passes\n" -+msgstr " -p, --sequence=pipe sử dụng thiết bị _ống_ cho việc _sắp xếp_\n" -+ -+#: src/main.c:280 -+msgid " -p, --sequence=pipe same as -i (on this system)\n" -+msgstr " -p, --sequence=pipe bằng cờ -i (trên hệ điều hành này)\n" -+ -+#: src/main.c:285 -+msgid "" -+"\n" -+"Fine tuning:\n" -+" -s, --strict use strict mappings, even loose characters\n" -+" -d, --diacritics convert only diacritics or alike for HTML/LaTeX\n" -+" -S, --source[=LN] limit recoding to strings and comments as for LN\n" -+" -c, --colons use colons instead of double quotes for diaeresis\n" -+" -g, --graphics approximate IBMPC rulers by ASCII graphics\n" -+" -x, --ignore=CHARSET ignore CHARSET while choosing a recoding path\n" -+msgstr "" -+"\n" -+"Điều hưởng tinh:\n" -+" -s, --strict sử dụng ánh xạ _chặt chẽ_, ngay cả ký tự phóng\n" -+" -d, --diacritics chuyển đổi chỉ _dấu phụ_ hay điều như nhau đối với HTML/LaTeX\n" -+" -S, --source[=NGÔN_NGỮ] hạn chế việc ma hóa lại nên chỉ xử lý chuỗi và chú thích như ngôn ngữ ấy (_nguồn_)\n" -+" -c, --colons sử dụng _dấu hai chấm_ thay thế dấu nháy kép cho dấu tách đôi\n" -+" -g, --graphics ước các thước đo IBMPC bằng _đồ họa_ ASCII\n" -+" -x, --ignore=BÔ_KÝ_TỰ _bỏ qua_ bộ ký tự ấy khi chọn đường dẫn mã hóa lại\n" -+ -+#: src/main.c:296 -+msgid "" -+"\n" -+"Option -l with no FORMAT nor CHARSET list available charsets and surfaces.\n" -+"FORMAT is `decimal', `octal', `hexadecimal' or `full' (or one of `dohf').\n" -+msgstr "" -+"\n" -+"Khi tùy chọn -l không có DẠNG hay BỘ KÝ TỰ thi ghi danh sách tất cả bộ ký tự và mặt sẵn sàng.\n" -+"DẠNG là `decimal' (thập phân), `octal' (bát phân), `hexadecimal' (thập lục phân) hay `full' (toàn) (hay một của chữ đầu `dohf').\n" -+ -+#: src/main.c:302 -+msgid "" -+"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the locale\n" -+"dependent encoding, determined by LC_ALL, LC_CTYPE, LANG.\n" -+msgstr "" -+"Nếu chưa lập BỘ_KÝ_TỰ_MẶC_ĐỊNH trong môi trường thì LC_ALL, LC_CTYPE, LANG\n" -+"quyết định biên mã phụ thuộc vào miền địa phương, là BỘ_KÝ_TỰ mặc định\n" -+ -+#: src/main.c:307 -+msgid "" -+"With -k, possible before charsets are listed for the given after CHARSET,\n" -+"both being tabular charsets, with PAIRS of the form `BEF1:AFT1,BEF2:AFT2,...'\n" -+"and BEFs and AFTs being codes are given as decimal numbers.\n" -+msgstr "" -+"Có thể sử dụng tùy chọn -k trước khi ghi danh sách bộ ký tự sau BỘ_KÝ_TỰ,\n" -+"cả hai bộ ký tự ấy có dạng bảng, có mọi đôi dạng `BEF1:AFT1,BEF2:AFT2,...'\n" -+"và cả hai BEF và AFT là mã dạng số thập phân.\n" -+ -+#: src/main.c:312 -+msgid "LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" -+msgstr "LN hay NGÔN_NGỮ là một ngôn ngữ, có thể `c', `perl' hay `po'; còn `c' là mặc định.\n" -+ -+#: src/main.c:315 -+msgid "" -+"\n" -+"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is ENCODING[..ENCODING]...\n" -+"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like BEFORE..AFTER,\n" -+"with BEFORE and AFTER being charsets. An omitted CHARSET implies the usual\n" -+"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a /\n" -+"with an empty surface name means no surfaces at all. See the manual.\n" -+msgstr "" -+"\n" -+"LỜI_YÊU_CẦU là PHỤ_LỜI_YÊU_CẦU[,PHỤ_LỜI_YÊU_CẦU]...;\n" -+"PHỤ_LỜI_YÊU_CẦU là BIÊN_MÃ [..BIÊN_MÃ]... BIÊN_MÃ là [BỘ_KÝ_TỰ][/[MẶT]]...;\n" -+"LỜI_YÊU_CẦU thường hình như TRƯỚC..SAU, mà cả hai TRƯỚC và SAU là bô ký tự.\n" -+"Khi không nhập BỘ_KÝ_TỰ nên sử dụng bộ ký tự thường; khi không nhập [/MẶT]...\n" -+"nên sử dụng những mặt ngụ ý cho BỘ_KÝ_TỰ; ký tự / có tên mặt trống có nghĩa là\n" -+"không có mặt nào. Hãy xem sổ hướng dẫn.\n" -+ -+#: src/main.c:323 -+msgid "" -+"\n" -+"If none of -i and -p are given, presume -p if no FILE, else -i.\n" -+"Each FILE is recoded over itself, destroying the original. If no\n" -+"FILE is specified, then act as a filter and recode stdin to stdout.\n" -+msgstr "" -+"\n" -+"Nếu chưa nhận -i và -p thì giả sử -p nếu không có TẬP_TIN, nếu có thì -i.\n" -+"Sẽ mã hóa lại mỗi TẬP_TIN trên mình nên xóa bỏ điều trước. Nếu chưa ghi rõ TẬP_TIN\n" -+"thì thay quyền trình lọc và mã hóa lại dữ liệu gõ chuẩn ra thiết bị xuất chuẩn.\n" -+ -+#: src/main.c:329 -+msgid "" -+"\n" -+"Report bugs to .\n" -+msgstr "" -+"\n" -+"Hãy thông báo lỗi cho .\n" -+ -+#: src/main.c:430 -+#, c-format -+msgid "Sequence `%s' is ambiguous" -+msgstr "Dãy `%s' mơ hồ" -+ -+#: src/main.c:434 -+#, c-format -+msgid "Sequence `%s' is unknown" -+msgstr "Chưa biết dãy `%s' " -+ -+#: src/main.c:464 src/main.c:522 -+#, c-format -+msgid "Language `%s' is ambiguous" -+msgstr "Ngôn ngữ `%s' mơ hồ" -+ -+#. -1 -+#: src/main.c:468 src/main.c:526 -+#, c-format -+msgid "Language `%s' is unknown" -+msgstr "Chưa biết ngôn ngữ `%s'" -+ -+#: src/main.c:560 -+#, c-format -+msgid "Format `%s' is ambiguous" -+msgstr "Dạng `%s' mơ hồ" -+ -+#: src/main.c:564 -+#, c-format -+msgid "Format `%s' is unknown" -+msgstr "Chưa biết dạng `%s' " -+ -+#: src/main.c:621 -+msgid "Written by Franc,ois Pinard .\n" -+msgstr "Tác giả: François Pinard .\n" -+ -+#: src/main.c:624 -+msgid "" -+"\n" -+"Copyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" -+msgstr "" -+"\n" -+"Bản quyền (C) năm 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" -+ -+#: src/main.c:628 -+msgid "" -+"This is free software; see the source for copying conditions. There is NO\n" -+"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" -+msgstr "" -+"Đây là phần mềm tự do; hãy xem mã nguồn để thấy điều kiện sao chép.\n" -+"Không bảo đảm gì cả, dù khả năng bán hay khả năng làm việc dứt khoát.\n" -+ -+#: src/main.c:669 -+#, c-format -+msgid "Symbol `%s' is unknown" -+msgstr "Chưa biết ký hiệu `%s' " -+ -+#: src/main.c:709 src/main.c:723 -+#, c-format -+msgid "Charset `%s' is unknown or ambiguous" -+msgstr "Bộ ký tự `%s' là chưa được biệt hoặc mơ hồ" -+ -+#: src/main.c:754 -+msgid "Required argument is missing" -+msgstr "Thiếu đốí số bắt buộc" -+ -+#: src/main.c:797 -+#, c-format -+msgid "Syntax is deprecated, please prefer `%s'" -+msgstr "Phản đối cú pháp ấy, hãy sử dụng `%s' thay thế" -+ -+#: src/main.c:803 -+#, c-format -+msgid "Request `%s' is erroneous" -+msgstr "Lời yêu cầu `%s' không đúng" -+ -+#: src/main.c:903 -+#, c-format -+msgid "Recoding %s..." -+msgstr "Đang mã hóa lại %s..." -+ -+#: src/main.c:913 -+msgid " done\n" -+msgstr " xong rồi\n" -+ -+#: src/main.c:954 -+#, c-format -+msgid " failed: %s in step `%s..%s'\n" -+msgstr " không xong được: %s trong bước `%s..%s'\n" -+ -+#: src/main.c:961 -+#, c-format -+msgid "%s failed: %s in step `%s..%s'" -+msgstr "%s không xong được: %s trong bước `%s..%s'" -+ -+#: src/main.c:984 -+#, c-format -+msgid "%s in step `%s..%s'" -+msgstr "%s trong bước `%s..%s'" -+ -+#: src/names.c:335 -+#, c-format -+msgid "Charset %s already exists and is not %s" -+msgstr "Bộ ký tự %s tồn tại rồi, không là %s" -+ -+#: src/names.c:831 -+#, c-format -+msgid "Cannot list `%s', no names available for this charset" -+msgstr "Không ghi `%s' được vì không có tên nào cho bộ ký tự này" -+ -+#. code counter -+#. expected value for code counter -+#. insert a while line before printing -+#. Print the long table according to explode data. -+#: src/names.c:984 src/names.c:1030 -+#, c-format -+msgid "Dec Oct Hex UCS2 Mne %s\n" -+msgstr "Hệ2 Hệ8 Hệ16 UCS2 Nhớ %s\n" -+ -+#: src/names.c:1049 -+#, c-format -+msgid "Sorry, no names available for `%s'" -+msgstr "Tiếc là không có tên nào cho `%s'" -+ -+#: src/outer.c:125 -+#, c-format -+msgid "Resurfacer set more than once for `%s'" -+msgstr "Đã lập việc tạo mặt lại hơn một lần cho `%s'" -+ -+#: src/outer.c:133 -+#, c-format -+msgid "Unsurfacer set more than once for `%s'" -+msgstr "Đã lập việc bỏ mặt hơn một lần cho `%s'" -+ -+#: src/recode.c:115 src/recode.c:127 -+msgid "Virtual memory exhausted" -+msgstr "Hết bộ nhớ ảo rồì" -+ -+#: src/recode.c:155 -+#, c-format, ycp-format -+msgid "Codes %3d and %3d both recode to %3d" -+msgstr "Có mã hóa lại cả hai mã %3d và %3d thành %3d" -+ -+#: src/recode.c:169 -+#, c-format, ycp-format -+msgid "No character recodes to %3d" -+msgstr "Không mã hóa lại ký tự nào thành %3d" -+ -+#: src/recode.c:170 -+msgid "Cannot invert given one-to-one table" -+msgstr "Không đảo được bảng một-đối-một đã cho" -+ -+#: src/recode.c:224 src/recode.c:236 -+#, c-format -+msgid "Following diagnostics for `%s' to `%s'" -+msgstr "Đang theo phương pháp chẩn đoán cho `%s' đến `%s'" -+ -+#: src/recode.c:229 src/recode.c:241 -+#, c-format -+msgid "Pair no. %d: <%3d, %3d> conflicts with <%3d, %3d>" -+msgstr "Số cặp %d: <%3d, %3d> xung đột với <%3d, %3d>" -+ -+#: src/recode.c:272 -+msgid "Cannot complete table from set of known pairs" -+msgstr "Không thể xong tạo bảng từ bộ cặp được biết" -+ -+#: src/recode.c:497 -+msgid "Identity recoding, not worth a table" -+msgstr "Việc mã hóa lại chỉ giống hệt, không cần bảng toàn" -+ -+#: src/recode.c:504 -+msgid "Recoding is too complex for a mere table" -+msgstr "Việc mã hóa lại quá phức tạp đối với bảng" -+ -+#. Print the header of the header file. -+#: src/recode.c:536 -+#, c-format -+msgid "%sConversion table generated mechanically by Free `%s' %s" -+msgstr "%sBảng chuyển đổi được tạo ra tự động do Free (Tự do) `%s' %s" -+ -+#: src/recode.c:538 -+#, c-format -+msgid "%sfor sequence %s.%s" -+msgstr "%sđối với dãy %s.%s" -+ -+#: src/recode.c:744 -+msgid "No table to print" -+msgstr "Không có bảng nào để in" -+ -+#: src/request.c:34 -+msgid "reversible" -+msgstr "có thể hoàn tác" -+ -+#: src/request.c:36 -+#, c-format -+msgid "%s to %s" -+msgstr "%s thành %s" -+ -+#: src/request.c:37 src/request.c:39 -+msgid "byte" -+msgstr "byte" -+ -+#: src/request.c:38 src/request.c:40 -+msgid "ucs2" -+msgstr "ucs2" -+ -+#: src/request.c:38 src/request.c:40 -+msgid "variable" -+msgstr "biến đổi" -+ -+#: src/request.c:111 -+msgid "*Unachievable*" -+msgstr "*Không xong đươc*" -+ -+#: src/request.c:113 -+msgid "*mere copy*" -+msgstr "*chỉ bản sao*" -+ -+#: src/request.c:246 -+msgid "Virtual memory exhausted!" -+msgstr "Hết bộ nhớ ảo rồi." -+ -+#: src/request.c:265 -+msgid "Step initialisation failed" -+msgstr "Không khởi động bước được" -+ -+#: src/request.c:272 -+msgid "Step initialisation failed (unprocessed options)" -+msgstr "Không khởi động bước được (chưa xử lý tùy chọn)" -+ -+#: src/request.c:568 -+#, c-format -+msgid "Request: %s\n" -+msgstr "Lời yêu cầu: %s\n" -+ -+#: src/request.c:720 -+#, c-format -+msgid "Shrunk to: %s\n" -+msgstr "Đã co lại cho: %s\n" -+ -+#: src/request.c:823 src/request.c:932 -+#, c-format -+msgid "Unrecognised surface name `%s'" -+msgstr "Chưa chấp nhận tên mặt `%s'" -+ -+#: src/request.c:903 -+#, c-format -+msgid "No way to recode from `%s' to `%s'" -+msgstr "Không có cách mã hóa lại tư `%s' sang `%s'" -+ -+#: src/request.c:1013 -+msgid "Expecting `..' in request" -+msgstr "Đang ngờ `..' trong lời yêu cầu" -+ -+#: src/task.c:826 src/task.c:1002 -+#, c-format -+msgid "Child process wait status is 0x%0.2x" -+msgstr "Trạng thái đời của xử lý con là 0x%0.2x" -+ -+#: src/testdump.c:298 -+msgid "" -+"UCS2 Mne Description\n" -+"\n" -+msgstr "" -+"UCS2 Nhớ Mô tả\n" -+"\n" ---- recode-3.6.orig/i18n/gl.po -+++ recode-3.6/i18n/gl.po -@@ -4,9 +4,9 @@ - # - msgid "" - msgstr "" --"Project-Id-Version: recode 3.5\n" -+"Project-Id-Version: recode 3.6\n" - "POT-Creation-Date: 2001-01-02 22:35+0100\n" --"PO-Revision-Date: 2000-05-06 01:44+02:00\n" -+"PO-Revision-Date: 2001-06-09 17:28+0200\n" - "Last-Translator: Jacobo Tarro Barreiro \n" - "Language-Team: Galician \n" - "MIME-Version: 1.0\n" -@@ -81,20 +81,13 @@ - msgstr "Escriba `%s %s' para obter mis informacin.\n" - - #: src/main.c:237 --msgid "" --"Free `recode' converts files between various character sets and surfaces.\n" --msgstr "" --"O `recode' libre convirte ficheiros entre varios xogos de caracteres e " --"superficies.\n" -+msgid "Free `recode' converts files between various character sets and surfaces.\n" -+msgstr "O `recode' libre convirte ficheiros entre varios xogos de caracteres e superficies.\n" - - #: src/main.c:241 - #, c-format --msgid "" --"\n" --"Usage: %s [OPTION]... [ [CHARSET] | REQUEST [FILE]... ]\n" --msgstr "" --"\n" --"Uso: %s [OPCIN]... [ [XOGO-DE-CARACTERES] | PETICIN [FICHEIRO]... ]\n" -+msgid "\nUsage: %s [OPTION]... [ [CHARSET] | REQUEST [FILE]... ]\n" -+msgstr "\nUso: %s [OPCIN]... [ [XOGO-DE-CARACTERES] | PETICIN [FICHEIRO]... ]\n" - - #: src/main.c:244 - msgid "" -@@ -104,18 +97,15 @@ - msgstr "" - "\n" - "Se unha opcin longa amosa un parmetro como obrigatorio, entn tamn \n" --"obrigatorio para a opcin curta equivalente. Do mesmo xeito para " --"parmetros\n" -+"obrigatorio para a opcin curta equivalente. Do mesmo xeito para parmetros\n" - "opcionais.\n" - - #: src/main.c:250 --#, fuzzy - msgid "" - "\n" - "Listings:\n" - " -l, --list[=FORMAT] list one or all known charsets and aliases\n" --" -k, --known=PAIRS restrict charsets according to known PAIRS " --"list\n" -+" -k, --known=PAIRS restrict charsets according to known PAIRS list\n" - " -h, --header[=[LN/]NAME] write table NAME on stdout using LN, then exit\n" - " -F, --freeze-tables write out a C module holding all tables\n" - " -T, --find-subsets report all charsets being subset of others\n" -@@ -125,15 +115,13 @@ - msgstr "" - "\n" - "Listados:\n" --" -l, --list[=FORMATO] listar un ou tdolos xogos de caracteres " --"coecidos\n" --" -k, --known=PARES restrinxi-los xogos de acordo coa lista de " --"PARES\n" -+" -l, --list[=FORMATO] listar un ou tdolos xogos de caracteres e alias\n" -+" coecidos\n" -+" -k, --known=PARES restrinxi-los xogos de acordo coa lista de PARES\n" - " coecidos\n" - " -h, --header[=[LN/]NOME] escribi-la tboa NOME na sada estndar usando\n" - " LN, e logo sair\n" --" -F, --freeze-tables escribir un mdulo en C que contn tdalas " --"tboas\n" -+" -F, --freeze-tables escribir un mdulo en C que contn tdalas tboas\n" - " -T, --find-subsets informar dos xogos que son subconxuntos doutros\n" - " -C, --copyright amosa-lo copyright e as condicins de copia\n" - " --help amosar esta axuda e sair\n" -@@ -160,14 +148,12 @@ - " reversibles\n" - " -t, --touch toca-los ficheiros recodificados despois de\n" - " cambialos\n" --" -i, --sequence=files usar ficheiros intermedios para pasos " --"secuenciais\n" -+" -i, --sequence=files usar ficheiros intermedios para pasos secuenciais\n" - " --sequence=memory usa-la memoria para pasos secuenciais\n" - - #: src/main.c:275 - msgid " -p, --sequence=pipe use pipe machinery for sequencing passes\n" --msgstr "" --" -p, --sequence=pipe usar canalizacins para pasos secuenciais\n" -+msgstr " -p, --sequence=pipe usar canalizacins para pasos secuenciais\n" - - #: src/main.c:280 - msgid " -p, --sequence=pipe same as -i (on this system)\n" -@@ -188,13 +174,10 @@ - "Axustes finos:\n" - " -s, --strict usar mapeados estrictos, incluso perder caracteres\n" - " -d, --diacritics converter s diacrticos ou similares para HTML/LaTeX\n" --" -S, --source[=LN] limita-la recodificacin a cadeas e comentarios para " --"LN\n" --" -c, --colon usar dous puntos no canto de comias dobres para " --"direse\n" -+" -S, --source[=LN] limita-la recodificacin a cadeas e comentarios para LN\n" -+" -c, --colon usar dous puntos no canto de comias dobres para direse\n" - " -g, --graphics aproxima-las lias de IBMPC con grficos ASCII\n" --" -x, --ignore=XOGO ignora-lo XOGO ao escoller unha rota de " --"recodificacin\n" -+" -x, --ignore=XOGO ignora-lo XOGO ao escoller unha rota de recodificacin\n" - - #: src/main.c:296 - msgid "" -@@ -208,20 +191,15 @@ - "letra entre `dofh'.\n" - - #: src/main.c:302 --#, fuzzy - msgid "" --"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the " --"locale\n" -+"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the locale\n" - "dependent encoding, determined by LC_ALL, LC_CTYPE, LANG.\n" --msgstr "" --"A menos que se estableza a variable DEFAULT_CHARSET, XOGO `%s' se non se " --"indica o contrario.\n" -+msgstr "A menos que se estableza a variable de ambiente DEFAULT_CHARSET, XOGO o do `locale'.\n" - - #: src/main.c:307 - msgid "" - "With -k, possible before charsets are listed for the given after CHARSET,\n" --"both being tabular charsets, with PAIRS of the form " --"`BEF1:AFT1,BEF2:AFT2,...'\n" -+"both being tabular charsets, with PAIRS of the form `BEF1:AFT1,BEF2:AFT2,...'\n" - "and BEFs and AFTs being codes are given as decimal numbers.\n" - msgstr "" - "Con -k, os posibles xogos iniciais lstanse para o XOGO final indicado,\n" -@@ -229,31 +207,25 @@ - "e os cdigos INI e FIN dndose coma nmeros decimais.\n" - - #: src/main.c:312 --msgid "" --"LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" -+msgid "LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" - msgstr "LN unha linguaxe, pode ser `c', `perl' ou `po'; `c' por defecto.\n" - - #: src/main.c:315 - msgid "" - "\n" --"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is " --"ENCODING[..ENCODING]...\n" --"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like " --"BEFORE..AFTER,\n" -+"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is ENCODING[..ENCODING]...\n" -+"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like BEFORE..AFTER,\n" - "with BEFORE and AFTER being charsets. An omitted CHARSET implies the usual\n" --"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a " --"/\n" -+"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a /\n" - "with an empty surface name means no surfaces at all. See the manual.\n" - msgstr "" - "\n" - "PETICIN SUBPETICIN[,SUBPETICIN]...; SUBPETICIN \n" - "CODIFICACIN[..CODIFICACIN]...; CODIFICACIN [XOGO][/[SUPERFICIE]]...;\n" - "PETICIN adoita parecer INICIAL..FINAL, sendo INICIAL e FINAL uns xogos de\n" --"caracteres. Se non se indica un XOGO tmase o xogo normal; se non se " --"indica\n" -+"caracteres. Se non se indica un XOGO tmase o xogo normal; se non se indica\n" - "unha [/SUPERFICIE]... tmanse as superficies implicadas en XOGO; cunha /\n" --"cun nome de superficie baleiro non se toma ningunha superficie. Lea o " --"manual.\n" -+"cun nome de superficie baleiro non se toma ningunha superficie. Lea o manual.\n" - - #: src/main.c:323 - msgid "" -@@ -263,98 +235,84 @@ - "FILE is specified, then act as a filter and recode stdin to stdout.\n" - msgstr "" - "\n" --"Se non se indica -i nin -p, suponse -p se non se indica un FICHEIRO, senn " --"-i.\n" -+"Se non se indica -i nin -p, suponse -p se non se indica un FICHEIRO, senn -i.\n" - "Cada FICHEIRO recodifcase sobre si mesmo, destrundose o orixinal. Se non\n" - "se indica un FICHEIRO, traballa coma un filtro e recodifica stdin a stdout.\n" - - #: src/main.c:329 --msgid "" --"\n" --"Report bugs to .\n" --msgstr "" --"\n" --"Informe dos erros en .\n" -+msgid "\nReport bugs to .\n" -+msgstr "\nInforme dos erros en .\n" - - #: src/main.c:430 - #, c-format - msgid "Sequence `%s' is ambiguous" --msgstr "" -+msgstr "A secuencia `%s' ambigua" - - #: src/main.c:434 - #, c-format - msgid "Sequence `%s' is unknown" --msgstr "" -+msgstr "A secuencia `%s' descoecida" - - #: src/main.c:464 src/main.c:522 - #, c-format - msgid "Language `%s' is ambiguous" --msgstr "" -+msgstr "A linguaxe `%s' ambigua" - - #. -1 - #: src/main.c:468 src/main.c:526 - #, c-format - msgid "Language `%s' is unknown" --msgstr "" -+msgstr "A linguaxe `%s' descoecida" - - #: src/main.c:560 - #, c-format - msgid "Format `%s' is ambiguous" --msgstr "" -+msgstr "O formato `%s' ambiguo" - - #: src/main.c:564 - #, c-format - msgid "Format `%s' is unknown" --msgstr "" -+msgstr "O formato `%s' descoecido" - - #: src/main.c:621 --#, fuzzy - msgid "Written by Franc,ois Pinard .\n" --msgstr "" --"\n" --"Escrito por Franois Pinard .\n" -+msgstr "Escrito por Franois Pinard .\n" - - #: src/main.c:624 --msgid "" --"\n" --"Copyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" --msgstr "" --"\n" --"Copyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" -+msgid "\nCopyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" -+msgstr "\nCopyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" - - #: src/main.c:628 - msgid "" - "This is free software; see the source for copying conditions. There is NO\n" - "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" - msgstr "" --"Isto software libre; vexa o cdigo fonte polas condicins de copia. NON " --"hai\n" --"garanta; nin sequera de COMERCIABILIDADE ou APTITUDE PARA UN FIN " --"DETERMINADO.\n" -+"Isto software libre; vexa o cdigo fonte polas condicins de copia. NON hai\n" -+"garanta; nin sequera de COMERCIABILIDADE ou APTITUDE PARA UN FIN DETERMINADO.\n" - - #: src/main.c:669 - #, c-format - msgid "Symbol `%s' is unknown" --msgstr "" -+msgstr "O smbolo `%s' descoecido" - - #: src/main.c:709 src/main.c:723 - #, c-format - msgid "Charset `%s' is unknown or ambiguous" --msgstr "" -+msgstr "Xogo de caracteres `%s' descoecido ou ambiguo" - - #: src/main.c:754 - msgid "Required argument is missing" --msgstr "" -+msgstr "Falla o argumento requirido" - - #: src/main.c:797 --#, fuzzy, c-format -+#, c-format - msgid "Syntax is deprecated, please prefer `%s'" - msgstr "Sintaxe a estinguir, prefrese `%s'" - - #: src/main.c:803 - #, c-format - msgid "Request `%s' is erroneous" --msgstr "" -+msgstr "A peticin `%s' errnea" - - #: src/main.c:903 - #, c-format -@@ -366,19 +324,19 @@ - msgstr " feito\n" - - #: src/main.c:954 --#, fuzzy, c-format -+#, c-format - msgid " failed: %s in step `%s..%s'\n" --msgstr " fallou: %s en %s..%s\n" -+msgstr " fallou: %s no paso `%s..%s'\n" - - #: src/main.c:961 --#, fuzzy, c-format -+#, c-format - msgid "%s failed: %s in step `%s..%s'" --msgstr "%s fallou: %s en %s..%s" -+msgstr "%s fallou: %s no paso `%s..%s'" - - #: src/main.c:984 --#, fuzzy, c-format -+#, c-format - msgid "%s in step `%s..%s'" --msgstr "%s en %s..%s" -+msgstr "%s no paso `%s..%s'" - - #: src/names.c:335 - #, c-format -@@ -419,12 +377,12 @@ - msgstr "Memoria virtual esgotada" - - #: src/recode.c:155 --#, c-format, ycp-format -+#, c-format - msgid "Codes %3d and %3d both recode to %3d" - msgstr "mbolos dous cdigos %3d e %3d recodifcanse a %3d" - - #: src/recode.c:169 --#, c-format, ycp-format -+#, c-format - msgid "No character recodes to %3d" - msgstr "Non hai caracteres que se recodifiquen a %3d" - -@@ -540,17 +498,11 @@ - msgstr "O estado de espera do proceso fillo 0x%0.2x" - - #: src/testdump.c:298 --msgid "" --"UCS2 Mne Description\n" --"\n" --msgstr "" --"UCS2 Mne Descripcin\n" --"\n" -+msgid "UCS2 Mne Description\n\n" -+msgstr "UCS2 Mne Descripcin\n\n" - - #~ msgid "CHARSET has no default, define DEFAULT_CHARSET in the environment.\n" --#~ msgstr "" --#~ "XOGO non ten valor por defecto, defina a variable de ambiente " --#~ "DEFAULT_CHARSET.\n" -+#~ msgstr "XOGO non ten valor por defecto, defina a variable de ambiente DEFAULT_CHARSET.\n" - - #~ msgid "Ambiguous sequence `%s'" - #~ msgstr "Secuencia `%s' ambigua" ---- recode-3.6.orig/i18n/ga.po -+++ recode-3.6/i18n/ga.po -@@ -0,0 +1,520 @@ -+# Irish translations for recode. -+# Copyright (C) 2005 Free Software Foundation, Inc. -+# Kevin Patrick Scannell , 2005. -+# -+msgid "" -+msgstr "" -+"Project-Id-Version: recode 3.6\n" -+"POT-Creation-Date: 2001-01-02 22:35+0100\n" -+"PO-Revision-Date: 2005-09-13 18:45-0500\n" -+"Last-Translator: Kevin Patrick Scannell \n" -+"Language-Team: Irish \n" -+"MIME-Version: 1.0\n" -+"Content-Type: text/plain; charset=ISO-8859-1\n" -+"Content-Transfer-Encoding: 8bit\n" -+ -+#: src/main.c:142 -+msgid "No error" -+msgstr "N raibh aon earrid" -+ -+#: src/main.c:145 -+msgid "Non canonical input" -+msgstr "Ionchur neamhchannta" -+ -+#: src/main.c:148 -+msgid "Ambiguous output" -+msgstr "Aschur dbhroch" -+ -+#: src/main.c:151 -+msgid "Untranslatable input" -+msgstr "Aschur neamh-inaistrithe" -+ -+#: src/main.c:154 -+msgid "Invalid input" -+msgstr "Ionchur neamhbhail" -+ -+#: src/main.c:157 -+msgid "System detected problem" -+msgstr "Bhraith an cras fadhb" -+ -+#: src/main.c:160 -+msgid "Misuse of recoding library" -+msgstr "M-sid den leabharlann ath-ionchdaithe" -+ -+#: src/main.c:163 -+msgid "Internal recoding bug" -+msgstr "Fabht inmhenach ath-ionchdaithe" -+ -+#: src/main.c:208 -+msgid "" -+"This program is free software; you can redistribute it and/or modify\n" -+"it under the terms of the GNU General Public License as published by\n" -+"the Free Software Foundation; either version 2, or (at your option)\n" -+"any later version.\n" -+"\n" -+"This program is distributed in the hope that it will be useful,\n" -+"but WITHOUT ANY WARRANTY; without even the implied warranty of\n" -+"MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" -+"GNU General Public License for more details.\n" -+"\n" -+"You should have received a copy of the GNU General Public License\n" -+"along with this program; if not, write to the Free Software Foundation,\n" -+"Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n" -+msgstr "" -+"Is saorbhogearra an romhchlr seo; is fidir leat a scaipeadh agus/n\n" -+"a athr de rir na gcoinnollacha den GNU General Public License mar at\n" -+"foilsithe ag an Free Software Foundation; faoi leagan 2 den cheadnas,\n" -+"n (ms mian leat) aon leagan nos dana.\n" -+"\n" -+"Scaiptear an romhchlr seo le sil go mbeidh s isiil,\n" -+"ach GAN AON BARNTA; go fi gan an barntas intuigthe de\n" -+"INDOLTACHT n FEILINACHT DO FHEIDHM AR LEITH. Fach ar an\n" -+"GNU General Public License chun nos m sonra a fhil.\n" -+"\n" -+"Ba chomhair go mbeife tar is cip den GNU General Public License a fhil in\n" -+"ineacht leis an romhchlr seo; mura bhfuair, scrobh chuig an Free Software\n" -+"Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n" -+ -+#: src/main.c:233 -+#, c-format -+msgid "Try `%s %s' for more information.\n" -+msgstr "Bain triail as `%s %s' chun tuilleadh eolais a fhil.\n" -+ -+#: src/main.c:237 -+msgid "Free `recode' converts files between various character sets and surfaces.\n" -+msgstr "Tiontaonn saorbhogearra `recode' comhaid idir tacair charachtar agus craicne agsla.\n" -+ -+#: src/main.c:241 -+#, c-format -+msgid "" -+"\n" -+"Usage: %s [OPTION]... [ [CHARSET] | REQUEST [FILE]... ]\n" -+msgstr "" -+"\n" -+"sid: %s [ROGHA]... [ [TACAR] | IARRATAS [COMHAD]... ]\n" -+ -+#: src/main.c:244 -+msgid "" -+"\n" -+"If a long option shows an argument as mandatory, then it is mandatory\n" -+"for the equivalent short option also. Similarly for optional arguments.\n" -+msgstr "" -+"\n" -+"Is riachtanach le rogha ghearr aon argint at riachtanach\n" -+"leis an rogha fhada, agus ar an ns canna leis na hargint roghnacha.\n" -+ -+#: src/main.c:250 -+msgid "" -+"\n" -+"Listings:\n" -+" -l, --list[=FORMAT] list one or all known charsets and aliases\n" -+" -k, --known=PAIRS restrict charsets according to known PAIRS list\n" -+" -h, --header[=[LN/]NAME] write table NAME on stdout using LN, then exit\n" -+" -F, --freeze-tables write out a C module holding all tables\n" -+" -T, --find-subsets report all charsets being subset of others\n" -+" -C, --copyright display Copyright and copying conditions\n" -+" --help display this help and exit\n" -+" --version output version information and exit\n" -+msgstr "" -+"\n" -+"Liost:\n" -+" -l, --list[=FORMID] taispein tacair charachtar agus ailiasanna ar eolas\n" -+" -k, --known=PIR sid tacair charachtar n liosta PIR amhin\n" -+" -h, --header[=[TN/]AINM] scrobh tbla AINM ar stdout le TN, agus scoir\n" -+" -F, --freeze-tables scrobh modl C le gach tbla ann\n" -+" -T, --find-subsets taispein gach tacar carachtar at i gceann eile\n" -+" -C, --copyright taispein Cipcheart agus coinnollacha cipela\n" -+" --help taispein an chabhair seo agus scoir\n" -+" --version taispein eolas faoin leagan agus scoir\n" -+ -+#: src/main.c:263 -+msgid "" -+"\n" -+"Operation modes:\n" -+" -v, --verbose explain sequence of steps and report progress\n" -+" -q, --quiet, --silent inhibit messages about irreversible recodings\n" -+" -f, --force force recodings even when not reversible\n" -+" -t, --touch touch the recoded files after replacement\n" -+" -i, --sequence=files use intermediate files for sequencing passes\n" -+" --sequence=memory use memory buffers for sequencing passes\n" -+msgstr "" -+"\n" -+"Mid oibrochta:\n" -+" -v, --verbose taispein na cimeanna agus dul chun cinn\n" -+" -q, --quiet, --silent n taispein teachtaireachta maidir le\n" -+" ath-ionchduithe dochlaithe\n" -+" -f, --force frsil ath-ionchd fi ms dochlaithe \n" -+" -t, --touch teagmhil na comhaid ath-ionchdaithe tar is\n" -+" iad a athshuomh\n" -+" -i, --sequence=comhaid sid comhaid idirmhenacha le linn seicheamhaithe\n" -+" --sequence=cuimhne sid maolin chuimhne le linn seicheamhaithe\n" -+ -+#: src/main.c:275 -+msgid " -p, --sequence=pipe use pipe machinery for sequencing passes\n" -+msgstr " -p, --sequence=popa sid popa le linn seicheamhaithe\n" -+ -+#: src/main.c:280 -+msgid " -p, --sequence=pipe same as -i (on this system)\n" -+msgstr " -p, --sequence=popa ar comhbhr le -i (ar an gcras seo)\n" -+ -+#: src/main.c:285 -+msgid "" -+"\n" -+"Fine tuning:\n" -+" -s, --strict use strict mappings, even loose characters\n" -+" -d, --diacritics convert only diacritics or alike for HTML/LaTeX\n" -+" -S, --source[=LN] limit recoding to strings and comments as for LN\n" -+" -c, --colons use colons instead of double quotes for diaeresis\n" -+" -g, --graphics approximate IBMPC rulers by ASCII graphics\n" -+" -x, --ignore=CHARSET ignore CHARSET while choosing a recoding path\n" -+msgstr "" -+"\n" -+"Mionchoigeart:\n" -+" -s, --strict sid dianmhapil, fi le carachtair neamhchruinn\n" -+" -d, --diacritics tiontaigh diaicritic amhin le haghaidh HTML/LaTeX\n" -+" -S, --source[=TN] ath-ionchdaigh teaghrin agus nta amhin, mar le TN\n" -+" -c, --colons sid idirstadanna in ionad \" le haghaidh dirise\n" -+" -g, --graphics neasaigh rialir IBMPC le grafaic ASCII\n" -+" -x, --ignore=TACAR n hsid TACAR agus conair ath-ionchdaithe roghn\n" -+ -+#: src/main.c:296 -+msgid "" -+"\n" -+"Option -l with no FORMAT nor CHARSET list available charsets and surfaces.\n" -+"FORMAT is `decimal', `octal', `hexadecimal' or `full' (or one of `dohf').\n" -+msgstr "" -+"\n" -+"Taispenann rogha -l (gan FORMID gan TACAR) gach tacar carachtar agus\n" -+"gach craiceann at ar fil. Is FORMID ceann de `decimal', `octal',\n" -+"`hexadecimal' n `full' (n ceann de `dohf').\n" -+ -+#: src/main.c:302 -+msgid "" -+"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the locale\n" -+"dependent encoding, determined by LC_ALL, LC_CTYPE, LANG.\n" -+msgstr "" -+"Mura bhfuil DEFAULT_CHARSET socraithe mar athrg thimpeallachta, sid an\n" -+"t-ionchd n logchaighden mar luach ramhshocraithe ar CHARSET;\n" -+"socratear an t-ionchd seo leis na hathrga LC_ALL, LC_CTYPE, agus LANG.\n" -+ -+#: src/main.c:307 -+msgid "" -+"With -k, possible before charsets are listed for the given after CHARSET,\n" -+"both being tabular charsets, with PAIRS of the form `BEF1:AFT1,BEF2:AFT2,...'\n" -+"and BEFs and AFTs being codes are given as decimal numbers.\n" -+msgstr "" -+"Le -k, taispentar gach tacar tosaithe gur fidir a sid leis\n" -+"an TACAR deiridh, gach ina tacar tblach. Is san fhoirm\n" -+"`TOS1:DEIR1,TOS2:DEIR2,...' iad na PIR, agus na cid TOS1, DEIR1,\n" -+"srl. tugtha mar uimhreacha deachlacha.\n" -+ -+#: src/main.c:312 -+msgid "LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" -+msgstr "Is teanga TN, ceann de `c', `perl' n `po'; is `c' an ramhshocr .\n" -+ -+#: src/main.c:315 -+msgid "" -+"\n" -+"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is ENCODING[..ENCODING]...\n" -+"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like BEFORE..AFTER,\n" -+"with BEFORE and AFTER being charsets. An omitted CHARSET implies the usual\n" -+"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a /\n" -+"with an empty surface name means no surfaces at all. See the manual.\n" -+msgstr "" -+"\n" -+"Is san fhoirm FOIARRATAS[,FOIARRATAS]... IARRATAS, is san fhoirm\n" -+"IONCHD[..IONCHD]... FOIARRATAS, agus is san fhoirm\n" -+"[TACARCARACHTAR][/CRAICEANN]]... IONCHD; is IARRATAS cosil le\n" -+"TOSACH..DEIREADH go minic, le TOSACH agus DEIREADH ina dtacair\n" -+"charachtar. M t TACAR ligthe ar lr, sid an gnth-thacar;\n" -+"M t [/CRAICEANN] ar lr, sid an craiceann intuigthe le TACAR;\n" -+"Mura bhfuil ach `/' ann gan chraiceann, n hsid craiceann ar chor ar bith.\n" -+"Fach ar an lmhleabhar.\n" -+ -+#: src/main.c:323 -+msgid "" -+"\n" -+"If none of -i and -p are given, presume -p if no FILE, else -i.\n" -+"Each FILE is recoded over itself, destroying the original. If no\n" -+"FILE is specified, then act as a filter and recode stdin to stdout.\n" -+msgstr "" -+"\n" -+"Mura bhfuil -i n -p ann, glac le -p mura bhfuil COMHAD ann, agus\n" -+"le -i i ngach cs eile. Ath-ionchdatear gach COMHAD anuas air fin,\n" -+"agus beidh na bunchipeanna scriosta. Mura bhfuil COMHAD sonraithe,\n" -+"oibronn recode mar scagaire, agus ath-ionchdatear stdin go stdout.\n" -+ -+#: src/main.c:329 -+msgid "" -+"\n" -+"Report bugs to .\n" -+msgstr "" -+"\n" -+"Seol tuairisc fabhtanna chuig .\n" -+ -+#: src/main.c:430 -+#, c-format -+msgid "Sequence `%s' is ambiguous" -+msgstr "T an seicheamh `%s' dbhroch" -+ -+#: src/main.c:434 -+#, c-format -+msgid "Sequence `%s' is unknown" -+msgstr "T an seicheamh `%s' anaithnid" -+ -+#: src/main.c:464 src/main.c:522 -+#, c-format -+msgid "Language `%s' is ambiguous" -+msgstr "T an teanga `%s' dbhroch" -+ -+#. -1 -+#: src/main.c:468 src/main.c:526 -+#, c-format -+msgid "Language `%s' is unknown" -+msgstr "Teanga anaithnid `%s'" -+ -+#: src/main.c:560 -+#, c-format -+msgid "Format `%s' is ambiguous" -+msgstr "Formid dhbhroch `%s'" -+ -+#: src/main.c:564 -+#, c-format -+msgid "Format `%s' is unknown" -+msgstr "Formid anaithnid `%s'" -+ -+#: src/main.c:621 -+msgid "Written by Franc,ois Pinard .\n" -+msgstr "Le Franois Pinard .\n" -+ -+#: src/main.c:624 -+msgid "" -+"\n" -+"Copyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" -+msgstr "" -+"\n" -+"Copyright 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" -+ -+#: src/main.c:628 -+msgid "" -+"This is free software; see the source for copying conditions. There is NO\n" -+"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" -+msgstr "" -+"Is saorbhogearra an romhchlr seo; fach ar an bhunchd le haghaidh\n" -+"coinnollacha cipela. Nl barnta ar bith ann; go fi nl barnta ann\n" -+"d'INDOLTACHT n FEILINACHT DO FHEIDHM AR LEITH.\n" -+ -+#: src/main.c:669 -+#, c-format -+msgid "Symbol `%s' is unknown" -+msgstr "Siombail anaithnid `%s'" -+ -+#: src/main.c:709 src/main.c:723 -+#, c-format -+msgid "Charset `%s' is unknown or ambiguous" -+msgstr "Tacar carachtar `%s' anaithnid n dbhroch" -+ -+#: src/main.c:754 -+msgid "Required argument is missing" -+msgstr "Argint riachtanach ar iarraidh" -+ -+#: src/main.c:797 -+#, c-format -+msgid "Syntax is deprecated, please prefer `%s'" -+msgstr "Comhrir i lig, sid `%s' ina hionad" -+ -+#: src/main.c:803 -+#, c-format -+msgid "Request `%s' is erroneous" -+msgstr "Iarratas lochtach `%s'" -+ -+#: src/main.c:903 -+#, c-format -+msgid "Recoding %s..." -+msgstr "%s ath-ionchd..." -+ -+#: src/main.c:913 -+msgid " done\n" -+msgstr " crochnaithe\n" -+ -+#: src/main.c:954 -+#, c-format -+msgid " failed: %s in step `%s..%s'\n" -+msgstr " teipthe: %s i gcim `%s..%s'\n" -+ -+#: src/main.c:961 -+#, c-format -+msgid "%s failed: %s in step `%s..%s'" -+msgstr "theip ar %s: %s i gcim `%s..%s'" -+ -+#: src/main.c:984 -+#, c-format -+msgid "%s in step `%s..%s'" -+msgstr "%s i gcim `%s..%s'" -+ -+#: src/names.c:335 -+#, c-format -+msgid "Charset %s already exists and is not %s" -+msgstr "T tacar carachtar %s ann cheana, agus n %s " -+ -+#: src/names.c:831 -+#, c-format -+msgid "Cannot list `%s', no names available for this charset" -+msgstr "N fidir `%s' a liost; nl aon ainm ar fil le haghaidh an tacair carachtar seo" -+ -+#. code counter -+#. expected value for code counter -+#. insert a while line before printing -+#. Print the long table according to explode data. -+#: src/names.c:984 src/names.c:1030 -+#, c-format -+msgid "Dec Oct Hex UCS2 Mne %s\n" -+msgstr "Deach Ocht Heics UCS2 Mne %s\n" -+ -+#: src/names.c:1049 -+#, c-format -+msgid "Sorry, no names available for `%s'" -+msgstr "T brn orm, nl aon ainm ar fil le haghaidh `%s'" -+ -+#: src/outer.c:125 -+#, c-format -+msgid "Resurfacer set more than once for `%s'" -+msgstr "Athchraiceannadir socraithe nos m n uair amhin le haghaidh `%s'" -+ -+#: src/outer.c:133 -+#, c-format -+msgid "Unsurfacer set more than once for `%s'" -+msgstr "Feannadir socraithe nos m n uair amhin le haghaidh `%s'" -+ -+#: src/recode.c:115 src/recode.c:127 -+msgid "Virtual memory exhausted" -+msgstr "Cuimhne fhoril dithe" -+ -+#: src/recode.c:155 -+#, c-format, ycp-format -+msgid "Codes %3d and %3d both recode to %3d" -+msgstr "Ath-ionchdaonn na cid %3d agus %3d go dt %3d" -+ -+#: src/recode.c:169 -+#, c-format, ycp-format -+msgid "No character recodes to %3d" -+msgstr "Nl aon charachtar a ath-ionchdatear go dt %3d" -+ -+#: src/recode.c:170 -+msgid "Cannot invert given one-to-one table" -+msgstr "N fidir an tbla tugtha aon-le-haon a inbhart" -+ -+#: src/recode.c:224 src/recode.c:236 -+#, c-format -+msgid "Following diagnostics for `%s' to `%s'" -+msgstr "Diagnisic le haghaidh `%s' go `%s'" -+ -+#: src/recode.c:229 src/recode.c:241 -+#, c-format -+msgid "Pair no. %d: <%3d, %3d> conflicts with <%3d, %3d>" -+msgstr "Pire uimh. %d: tagann <%3d, %3d> agus <%3d, %3d> salach ar a chile" -+ -+#: src/recode.c:272 -+msgid "Cannot complete table from set of known pairs" -+msgstr "N fidir an tbla a chur i gcrch le tacar de phir at ar eolas" -+ -+#: src/recode.c:497 -+msgid "Identity recoding, not worth a table" -+msgstr "Ath-ionchd ionannais; n fi tbla " -+ -+#: src/recode.c:504 -+msgid "Recoding is too complex for a mere table" -+msgstr "Is rchasta an t-ath-ionchd mura bhfuil ach tbla ann" -+ -+#. Print the header of the header file. -+#: src/recode.c:536 -+#, c-format -+msgid "%sConversion table generated mechanically by Free `%s' %s" -+msgstr "%sTbla tiontaithe ginte go huathoibroch ag saorbhogearr `%s' %s" -+ -+#: src/recode.c:538 -+#, c-format -+msgid "%sfor sequence %s.%s" -+msgstr "%sle haghaidh sheichimh %s.%s" -+ -+#: src/recode.c:744 -+msgid "No table to print" -+msgstr "Nl tbla ann le priontil" -+ -+#: src/request.c:34 -+msgid "reversible" -+msgstr "inchlaithe" -+ -+#: src/request.c:36 -+#, c-format -+msgid "%s to %s" -+msgstr "%s go %s" -+ -+#: src/request.c:37 src/request.c:39 -+msgid "byte" -+msgstr "beart" -+ -+#: src/request.c:38 src/request.c:40 -+msgid "ucs2" -+msgstr "ucs2" -+ -+#: src/request.c:38 src/request.c:40 -+msgid "variable" -+msgstr "athrg" -+ -+#: src/request.c:111 -+msgid "*Unachievable*" -+msgstr "*Dodhanta*" -+ -+#: src/request.c:113 -+msgid "*mere copy*" -+msgstr "*lomchip*" -+ -+#: src/request.c:246 -+msgid "Virtual memory exhausted!" -+msgstr "Cuimhne fhoril dithe!" -+ -+#: src/request.c:265 -+msgid "Step initialisation failed" -+msgstr "Theip ar ths na cime" -+ -+#: src/request.c:272 -+msgid "Step initialisation failed (unprocessed options)" -+msgstr "Theip ar ths na cime (roghanna gan phriseil)" -+ -+#: src/request.c:568 -+#, c-format -+msgid "Request: %s\n" -+msgstr "Iarratas: %s\n" -+ -+#: src/request.c:720 -+#, c-format -+msgid "Shrunk to: %s\n" -+msgstr "Crapadh go: %s\n" -+ -+#: src/request.c:823 src/request.c:932 -+#, c-format -+msgid "Unrecognised surface name `%s'" -+msgstr "Ainm anaithnid craicinn `%s'" -+ -+#: src/request.c:903 -+#, c-format -+msgid "No way to recode from `%s' to `%s'" -+msgstr "N fidir `%s' a ath-ionchd mar `%s'" -+ -+#: src/request.c:1013 -+msgid "Expecting `..' in request" -+msgstr "Bhothas ag sil le `..' san iarratas" -+ -+#: src/task.c:826 src/task.c:1002 -+#, c-format -+msgid "Child process wait status is 0x%0.2x" -+msgstr "Is 0x%0.2x stdas feithimh le haghaidh an mhacphrisis" -+ -+#: src/testdump.c:298 -+msgid "" -+"UCS2 Mne Description\n" -+"\n" -+msgstr "" -+"UCS2 Mne Cur Sos\n" -+"\n" ---- recode-3.6.orig/i18n/eo.po -+++ recode-3.6/i18n/eo.po -@@ -0,0 +1,496 @@ -+# Esperantaj mesaoj por recode. -+# Copyright (C) 2001 Free Software Foundation, Inc. -+# Edmund GRIMLEY EVANS , 2001. -+# -+msgid "" -+msgstr "" -+"Project-Id-Version: recode 3.6\n" -+"POT-Creation-Date: 2001-01-02 22:35+0100\n" -+"PO-Revision-Date: 2001-06-06 20:34+01:00\n" -+"Last-Translator: Edmund GRIMLEY EVANS \n" -+"Language-Team: Esperanto \n" -+"MIME-Version: 1.0\n" -+"Content-Type: text/plain; charset=iso-8859-3\n" -+"Content-Transfer-Encoding: 8-bit\n" -+ -+#: src/main.c:142 -+msgid "No error" -+msgstr "Neniu eraro" -+ -+#: src/main.c:145 -+msgid "Non canonical input" -+msgstr "Nekanoneca enigo" -+ -+#: src/main.c:148 -+msgid "Ambiguous output" -+msgstr "Plursenca eligo" -+ -+#: src/main.c:151 -+msgid "Untranslatable input" -+msgstr "Netradukebla enigo" -+ -+#: src/main.c:154 -+msgid "Invalid input" -+msgstr "Nevalida enigo" -+ -+#: src/main.c:157 -+msgid "System detected problem" -+msgstr "Sistemo trovis problemon" -+ -+#: src/main.c:160 -+msgid "Misuse of recoding library" -+msgstr "Misuzo de la rekodado-biblioteko" -+ -+#: src/main.c:163 -+msgid "Internal recoding bug" -+msgstr "Interna eraro dum rekodado" -+ -+#: src/main.c:208 -+msgid "" -+"This program is free software; you can redistribute it and/or modify\n" -+"it under the terms of the GNU General Public License as published by\n" -+"the Free Software Foundation; either version 2, or (at your option)\n" -+"any later version.\n" -+"\n" -+"This program is distributed in the hope that it will be useful,\n" -+"but WITHOUT ANY WARRANTY; without even the implied warranty of\n" -+"MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" -+"GNU General Public License for more details.\n" -+"\n" -+"You should have received a copy of the GNU General Public License\n" -+"along with this program; if not, write to the Free Software Foundation,\n" -+"Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n" -+msgstr "" -+"i tiu programo estas libera; vi povas pludoni kopiojn kaj modifi\n" -+"in sub la kondioj de la enerala Publika Rajtigilo de GNU,\n" -+"kiel tio estas eldonita de Free Software Foundation; a versio 2\n" -+"de la Rajtigilo, a (la via elekto) iu sekva versio.\n" -+"\n" -+"i tiu programo estas disdonita kun la espero, ke i estos utila,\n" -+"sed SEN IA AJN GARANTIO; e sen la implicita garantio de\n" -+"KOMERCA KVALITO a ADEKVATECO POR DIFINITA CELO. Vidu la\n" -+"eneralan Publikan Rajtigilon de GNU por pli da detaloj.\n" -+"\n" -+"Vi devus esti ricevinta kopion de la enerala Publika Rajtigilo de\n" -+"GNU kun i tiu programo; se ne, skribu al Free Software Foundation,\n" -+"Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, Usono.\n" -+ -+#: src/main.c:233 -+#, c-format -+msgid "Try `%s %s' for more information.\n" -+msgstr "Provu '%s %s' por pli da informoj.\n" -+ -+#: src/main.c:237 -+msgid "Free `recode' converts files between various character sets and surfaces.\n" -+msgstr "Libera 'recode' konvertas dosierojn inter diversaj signaroj kaj surfacoj.\n" -+ -+#: src/main.c:241 -+#, c-format -+msgid "\nUsage: %s [OPTION]... [ [CHARSET] | REQUEST [FILE]... ]\n" -+msgstr "\nUzado: %s [OPCIO]... [ [SIGNARO] | PETO [DOSIERO]... ]\n" -+ -+#: src/main.c:244 -+msgid "" -+"\n" -+"If a long option shows an argument as mandatory, then it is mandatory\n" -+"for the equivalent short option also. Similarly for optional arguments.\n" -+msgstr "" -+"\n" -+"Se longa opcio montras argumenton kiel devigan, tiam i estas deviga\n" -+"anka por la ekvivalenta mallonga opcio. Simile por nedevigaj argumentoj.\n" -+ -+#: src/main.c:250 -+msgid "" -+"\n" -+"Listings:\n" -+" -l, --list[=FORMAT] list one or all known charsets and aliases\n" -+" -k, --known=PAIRS restrict charsets according to known PAIRS list\n" -+" -h, --header[=[LN/]NAME] write table NAME on stdout using LN, then exit\n" -+" -F, --freeze-tables write out a C module holding all tables\n" -+" -T, --find-subsets report all charsets being subset of others\n" -+" -C, --copyright display Copyright and copying conditions\n" -+" --help display this help and exit\n" -+" --version output version information and exit\n" -+msgstr "" -+"\n" -+"Listigoj:\n" -+" -l, --list[=FORMO] Listigi unu a iujn signarojn kaj kromnomojn\n" -+" -k, --known=PAROJ Limigi signarojn la konataj PAROJ\n" -+" -h, --header[=[LN/]NOMO] Skribi tabelon NOMO al normala eligo per LN\n" -+" -F, --freeze-tables Eligi C-modulon kun iuj tabeloj\n" -+" -T, --find-subsets Raporti signarojn, kiuj estas subaroj de aliaj\n" -+" -C, --copyright Montri kopirajton kaj kopikondiojn\n" -+" --help Montri i tiun helpon kaj eliri\n" -+" --version Montri versiinformon kaj eliri\n" -+ -+#: src/main.c:263 -+msgid "" -+"\n" -+"Operation modes:\n" -+" -v, --verbose explain sequence of steps and report progress\n" -+" -q, --quiet, --silent inhibit messages about irreversible recodings\n" -+" -f, --force force recodings even when not reversible\n" -+" -t, --touch touch the recoded files after replacement\n" -+" -i, --sequence=files use intermediate files for sequencing passes\n" -+" --sequence=memory use memory buffers for sequencing passes\n" -+msgstr "" -+"\n" -+"Funkcimanieroj:\n" -+" -v, --verbose klarigi sinsekvon de paoj kaj raporti progreson\n" -+" -q, --quiet, --silent subpremi mesaojn pri neinversigeblaj rekodadoj\n" -+" -f, --force fari rekodadon, anka kiam ne inversigebla\n" -+" -t, --touch fari 'touch' al konvertitaj dosieroj\n" -+" -i, --sequence=files uzi dumtempajn dosierojn por internaj paoj\n" -+" --sequence=memory uzi bufrojn en memoro por internaj paoj\n" -+ -+#: src/main.c:275 -+msgid " -p, --sequence=pipe use pipe machinery for sequencing passes\n" -+msgstr " -p, --sequence=pipe uzi tubojn (\"pipe\") por internaj paoj\n" -+ -+#: src/main.c:280 -+msgid " -p, --sequence=pipe same as -i (on this system)\n" -+msgstr " -p, --sequence=pipe same kiel -i (en i tiu sistemo)\n" -+ -+#: src/main.c:285 -+msgid "" -+"\n" -+"Fine tuning:\n" -+" -s, --strict use strict mappings, even loose characters\n" -+" -d, --diacritics convert only diacritics or alike for HTML/LaTeX\n" -+" -S, --source[=LN] limit recoding to strings and comments as for LN\n" -+" -c, --colons use colons instead of double quotes for diaeresis\n" -+" -g, --graphics approximate IBMPC rulers by ASCII graphics\n" -+" -x, --ignore=CHARSET ignore CHARSET while choosing a recoding path\n" -+msgstr "" -+"\n" -+"Fajnaj agordoj:\n" -+" -s, --strict uzi striktajn mapojn, e e signoperdo\n" -+" -d, --diacritics konverti nur kromsignojn a simile por HTML/LaTeX\n" -+" -S, --source[=LN] limigi rekodadon al signoenoj kaj komentoj por LN\n" -+" -c, --colons uzi ':' anstata '\"' por diarezoj\n" -+" -g, --graphics prezenti IBMPC-liniilojn per askiaj bildoj\n" -+" -x, --ignore=SIGNARO ignori SIGNAROn dum elekto de rekodado-vojo\n" -+ -+#: src/main.c:296 -+msgid "" -+"\n" -+"Option -l with no FORMAT nor CHARSET list available charsets and surfaces.\n" -+"FORMAT is `decimal', `octal', `hexadecimal' or `full' (or one of `dohf').\n" -+msgstr "" -+"\n" -+"La opcio -l kun neniu FORMO a SIGNARO listigas iujn disponatajn\n" -+"signarojn kaj surfacojn. FORMO estas 'decimal', 'octal', 'hexadecimal'\n" -+"a 'full' (a unu el 'dohf').\n" -+ -+#: src/main.c:302 -+msgid "" -+"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the locale\n" -+"dependent encoding, determined by LC_ALL, LC_CTYPE, LANG.\n" -+msgstr "" -+"Se la media variablo DEFAULT_CHARSET ne estas agordita, SIGNARO implicite\n" -+"estas tiu de la lokaaro, determinita de LC_ALL, LC_CTYPE, LANG.\n" -+ -+#: src/main.c:307 -+msgid "" -+"With -k, possible before charsets are listed for the given after CHARSET,\n" -+"both being tabular charsets, with PAIRS of the form `BEF1:AFT1,BEF2:AFT2,...'\n" -+"and BEFs and AFTs being codes are given as decimal numbers.\n" -+msgstr "" -+"Kun -k, eblaj antaaj signaroj por la donita posta SIGNARO estas listigitaj,\n" -+"kun PAROJ en la formo 'ANT1:POST1,ANT2,POST2,...', kie ANT-oj kaj POST-oj\n" -+"estas kodoj donitaj kiel dekumaj nombroj.\n" -+ -+#: src/main.c:312 -+msgid "LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" -+msgstr "LN estas programlingvo, ekzemple 'c', 'perl' a 'po'; implicite estas 'c'.\n" -+ -+#: src/main.c:315 -+msgid "" -+"\n" -+"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is ENCODING[..ENCODING]...\n" -+"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like BEFORE..AFTER,\n" -+"with BEFORE and AFTER being charsets. An omitted CHARSET implies the usual\n" -+"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a /\n" -+"with an empty surface name means no surfaces at all. See the manual.\n" -+msgstr "" -+"\n" -+"PETO estas SUBPETO[,SUBPETO]...; SUBPETO estas KODO[..KODO]...\n" -+"KODO estas [SIGNARO][/[SURFACO]]...; PETO ofte aspektas kiel ANTA...POST,\n" -+"kie ANTA kaj POST estas signaroj. Ellasita SIGNARO implicas la kutiman\n" -+"signaron; ellasita [/SURFACO]... signifas la implicitan surfacon por SIGNARO;\n" -+"/ kun malplena surfaco-nomo signifas neniajn surfacojn. Vidu la manlibron.\n" -+ -+#: src/main.c:323 -+msgid "" -+"\n" -+"If none of -i and -p are given, presume -p if no FILE, else -i.\n" -+"Each FILE is recoded over itself, destroying the original. If no\n" -+"FILE is specified, then act as a filter and recode stdin to stdout.\n" -+msgstr "" -+"\n" -+"Se neniu el -i kaj -p estas donita, supozi -p, se neniu DOSIERO, alie -i.\n" -+"iu DOSIERO estas rekodita surloke, anstataante la originalon. Se neniu\n" -+"DOSIERO estas specifita, agi kiel filtrilo kaj rekodi de la normala enigo\n" -+"al la normala eligo.\n" -+ -+#: src/main.c:329 -+msgid "\nReport bugs to .\n" -+msgstr "\nRaportu cimojn al .\n" -+ -+#: src/main.c:430 -+#, c-format -+msgid "Sequence `%s' is ambiguous" -+msgstr "Sinsekvo '%s' estas plursenca" -+ -+#: src/main.c:434 -+#, c-format -+msgid "Sequence `%s' is unknown" -+msgstr "Sinsekvo '%s' estas nekonata" -+ -+#: src/main.c:464 src/main.c:522 -+#, c-format -+msgid "Language `%s' is ambiguous" -+msgstr "Lingvo '%s' estas plursenca" -+ -+#. -1 -+#: src/main.c:468 src/main.c:526 -+#, c-format -+msgid "Language `%s' is unknown" -+msgstr "Lingvo '%s' estas nekonata" -+ -+#: src/main.c:560 -+#, c-format -+msgid "Format `%s' is ambiguous" -+msgstr "Formo '%s' estas plursenca" -+ -+#: src/main.c:564 -+#, c-format -+msgid "Format `%s' is unknown" -+msgstr "Formo '%s' estas nekonata" -+ -+#: src/main.c:621 -+msgid "Written by Franc,ois Pinard .\n" -+msgstr "Verkita de Franois Pinard .\n" -+ -+#: src/main.c:624 -+msgid "\nCopyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" -+msgstr "\nKopirajto (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" -+ -+#: src/main.c:628 -+msgid "" -+"This is free software; see the source for copying conditions. There is NO\n" -+"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" -+msgstr "" -+"i tio estas libera programo; vidu la fonton por kopikondioj. Estas\n" -+"NENIA GARANTIO; e ne por KOMERCA KVALITO a ADEKVATECO POR DIFINITA CELO.\n" -+ -+#: src/main.c:669 -+#, c-format -+msgid "Symbol `%s' is unknown" -+msgstr "Simbolo '%s' estas nekonata" -+ -+#: src/main.c:709 src/main.c:723 -+#, c-format -+msgid "Charset `%s' is unknown or ambiguous" -+msgstr "Signaro '%s' estas nekonata a plursenca" -+ -+#: src/main.c:754 -+msgid "Required argument is missing" -+msgstr "Bezonata argumento mankas" -+ -+#: src/main.c:797 -+#, c-format -+msgid "Syntax is deprecated, please prefer `%s'" -+msgstr "Malrekomendata sintakso; bonvolu uzi '%s'" -+ -+#: src/main.c:803 -+#, c-format -+msgid "Request `%s' is erroneous" -+msgstr "Peto '%s' estas erara" -+ -+#: src/main.c:903 -+#, c-format -+msgid "Recoding %s..." -+msgstr "Rekodas '%s' ..." -+ -+#: src/main.c:913 -+msgid " done\n" -+msgstr " preta\n" -+ -+#: src/main.c:954 -+#, c-format -+msgid " failed: %s in step `%s..%s'\n" -+msgstr " malsukcesis: %s en pao '%s..%s'\n" -+ -+#: src/main.c:961 -+#, c-format -+msgid "%s failed: %s in step `%s..%s'" -+msgstr "%s malsukcesis: %s en pao '%s..%s'" -+ -+#: src/main.c:984 -+#, c-format -+msgid "%s in step `%s..%s'" -+msgstr "%s en pao '%s..%s'" -+ -+#: src/names.c:335 -+#, c-format -+msgid "Charset %s already exists and is not %s" -+msgstr "La signaro %s jam ekzistas kaj ne estas %s" -+ -+#: src/names.c:831 -+#, c-format -+msgid "Cannot list `%s', no names available for this charset" -+msgstr "Ne povas montri '%s'; neniuj nomoj disponataj por i tiu signaro" -+ -+#. code counter -+#. expected value for code counter -+#. insert a while line before printing -+#. Print the long table according to explode data. -+#: src/names.c:984 src/names.c:1030 -+#, c-format -+msgid "Dec Oct Hex UCS2 Mne %s\n" -+msgstr "Dec Oct Hex UCS2 Mne %s\n" -+ -+#: src/names.c:1049 -+#, c-format -+msgid "Sorry, no names available for `%s'" -+msgstr "Pardonu, sed neniaj nomoj disponataj por '%s'" -+ -+#: src/outer.c:125 -+#, c-format -+msgid "Resurfacer set more than once for `%s'" -+msgstr "Resurfacigilo agordita pli ol unufoje por '%s'" -+ -+#: src/outer.c:133 -+#, c-format -+msgid "Unsurfacer set more than once for `%s'" -+msgstr "Malsurfacigilo por '%s' agordita pli ol unufoje" -+ -+#: src/recode.c:115 src/recode.c:127 -+msgid "Virtual memory exhausted" -+msgstr "Vituala memoro elerpiis" -+ -+#: src/recode.c:155 -+#, c-format -+msgid "Codes %3d and %3d both recode to %3d" -+msgstr "La kodoj %3d kaj %3d estas amba konvertataj al %3d" -+ -+#: src/recode.c:169 -+#, c-format -+msgid "No character recodes to %3d" -+msgstr "Neniu signo estas konvertata al %3d" -+ -+#: src/recode.c:170 -+msgid "Cannot invert given one-to-one table" -+msgstr "Ne povas inversigi la donitan unusencan tabelon" -+ -+#: src/recode.c:224 src/recode.c:236 -+#, c-format -+msgid "Following diagnostics for `%s' to `%s'" -+msgstr "Jena diagnozo por konvertado de '%s' al '%s'" -+ -+#: src/recode.c:229 src/recode.c:241 -+#, c-format -+msgid "Pair no. %d: <%3d, %3d> conflicts with <%3d, %3d>" -+msgstr "Paro numero %d: <%3d, %3d> konfliktas kun <%3d, %3d>" -+ -+#: src/recode.c:272 -+msgid "Cannot complete table from set of known pairs" -+msgstr "Ne povas kompletigi tabelon el aro de konataj paroj" -+ -+#: src/recode.c:497 -+msgid "Identity recoding, not worth a table" -+msgstr "Senana rekodado ne indas je tabelo" -+ -+#: src/recode.c:504 -+msgid "Recoding is too complex for a mere table" -+msgstr "Rekodado estas tro komplika por nura tabelo" -+ -+#. Print the header of the header file. -+#: src/recode.c:536 -+#, c-format -+msgid "%sConversion table generated mechanically by Free `%s' %s" -+msgstr "%sKonvertotabelo kreita atomate de Free '%s' %s" -+ -+#: src/recode.c:538 -+#, c-format -+msgid "%sfor sequence %s.%s" -+msgstr "%spor sinsekvo %s.%s" -+ -+#: src/recode.c:744 -+msgid "No table to print" -+msgstr "Mankas tabelo por eligado" -+ -+#: src/request.c:34 -+msgid "reversible" -+msgstr "inversigebla" -+ -+#: src/request.c:36 -+#, c-format -+msgid "%s to %s" -+msgstr "%s al %s" -+ -+#: src/request.c:37 src/request.c:39 -+msgid "byte" -+msgstr "bitoko" -+ -+#: src/request.c:38 src/request.c:40 -+msgid "ucs2" -+msgstr "ucs2" -+ -+#: src/request.c:38 src/request.c:40 -+msgid "variable" -+msgstr "variablo" -+ -+#: src/request.c:111 -+msgid "*Unachievable*" -+msgstr "*neebla*" -+ -+#: src/request.c:113 -+msgid "*mere copy*" -+msgstr "*nura kopio*" -+ -+#: src/request.c:246 -+msgid "Virtual memory exhausted!" -+msgstr "Virtuala memoro estas plena!" -+ -+#: src/request.c:265 -+msgid "Step initialisation failed" -+msgstr "Komencado de pao malsukcesis" -+ -+#: src/request.c:272 -+msgid "Step initialisation failed (unprocessed options)" -+msgstr "Komencado de pao malsukcesis (netraktitaj opcioj)" -+ -+#: src/request.c:568 -+#, c-format -+msgid "Request: %s\n" -+msgstr "Peto: %s\n" -+ -+#: src/request.c:720 -+#, c-format -+msgid "Shrunk to: %s\n" -+msgstr "rumpis is: %s\n" -+ -+#: src/request.c:823 src/request.c:932 -+#, c-format -+msgid "Unrecognised surface name `%s'" -+msgstr "Nekonata nomo de surfaco '%s'" -+ -+#: src/request.c:903 -+#, c-format -+msgid "No way to recode from `%s' to `%s'" -+msgstr "Mankas eblo por konverti de '%s' al '%s'" -+ -+#: src/request.c:1013 -+msgid "Expecting `..' in request" -+msgstr "Atendas '..' en peto" -+ -+#: src/task.c:826 src/task.c:1002 -+#, c-format -+msgid "Child process wait status is 0x%0.2x" -+msgstr "Atendostatuso de ido-procezo estas 0x%0.2x" -+ -+#: src/testdump.c:298 -+msgid "UCS2 Mne Description\n\n" -+msgstr "UCS2 Mne Priskribo\n\n" ---- recode-3.6.orig/i18n/he.po -+++ recode-3.6/i18n/he.po -@@ -0,0 +1,500 @@ -+# Hebrew messages for Free recode -*- coding: hebrew-iso-8bit -*- -+# Copyright (C) 2001 Free Software Foundation, Inc. -+# Eli Zaretskii , 2001. -+# -+msgid "" -+msgstr "" -+"Project-Id-Version: Free recode 3.6\n" -+"POT-Creation-Date: 2001-01-02 22:35+0100\n" -+"PO-Revision-Date: 2001-05-27 17:06+0300\n" -+"Last-Translator: Eli Zaretskii \n" -+"Language-Team: Hebrew \n" -+"MIME-Version: 1.0\n" -+"Content-Type: text/plain; charset=ISO-8859-8\n" -+"Content-Transfer-Encoding: 8-bit\n" -+ -+#: src/main.c:142 -+msgid "No error" -+msgstr " " -+ -+#: src/main.c:145 -+msgid "Non canonical input" -+msgstr " " -+ -+#: src/main.c:148 -+msgid "Ambiguous output" -+msgstr "- " -+ -+#: src/main.c:151 -+msgid "Untranslatable input" -+msgstr " " -+ -+#: src/main.c:154 -+msgid "Invalid input" -+msgstr " " -+ -+#: src/main.c:157 -+msgid "System detected problem" -+msgstr " " -+ -+#: src/main.c:160 -+msgid "Misuse of recoding library" -+msgstr " " -+ -+#: src/main.c:163 -+msgid "Internal recoding bug" -+msgstr " " -+ -+#: src/main.c:208 -+msgid "" -+"This program is free software; you can redistribute it and/or modify\n" -+"it under the terms of the GNU General Public License as published by\n" -+"the Free Software Foundation; either version 2, or (at your option)\n" -+"any later version.\n" -+"\n" -+"This program is distributed in the hope that it will be useful,\n" -+"but WITHOUT ANY WARRANTY; without even the implied warranty of\n" -+"MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" -+"GNU General Public License for more details.\n" -+"\n" -+"You should have received a copy of the GNU General Public License\n" -+"along with this program; if not, write to the Free Software Foundation,\n" -+"Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n" -+msgstr "" -+" / ; \n" -+" \" ,GNU General Public License \n" -+" , 2 ;Free Software Foundation\n" -+" . ( )\n" -+"\n" -+" , \n" -+" - ; \n" -+" , . \n" -+" .GNU General Public License- \n" -+"\n" -+";GNU General Public License \n" -+" Free Software Foundation, Inc.- , \n" -+" .59 Temple Place - Suite 330, Boston, MA 02111-1307, USA\n" -+ -+#: src/main.c:233 -+#, c-format -+msgid "Try `%s %s' for more information.\n" -+msgstr ".`%s %s' , \n" -+ -+#: src/main.c:237 -+msgid "Free `recode' converts files between various character sets and surfaces.\n" -+msgstr " . Free `recode' \n" -+ -+#: src/main.c:241 -+#, c-format -+msgid "\nUsage: %s [OPTION]... [ [CHARSET] | REQUEST [FILE]... ]\n" -+msgstr "\n%s []... [ [ | []... ] : \n" -+ -+#: src/main.c:244 -+msgid "" -+"\n" -+"If a long option shows an argument as mandatory, then it is mandatory\n" -+"for the equivalent short option also. Similarly for optional arguments.\n" -+msgstr "" -+"\n" -+" , \n" -+" . . \n" -+ -+#: src/main.c:250 -+msgid "" -+"\n" -+"Listings:\n" -+" -l, --list[=FORMAT] list one or all known charsets and aliases\n" -+" -k, --known=PAIRS restrict charsets according to known PAIRS list\n" -+" -h, --header[=[LN/]NAME] write table NAME on stdout using LN, then exit\n" -+" -F, --freeze-tables write out a C module holding all tables\n" -+" -T, --find-subsets report all charsets being subset of others\n" -+" -C, --copyright display Copyright and copying conditions\n" -+" --help display this help and exit\n" -+" --version output version information and exit\n" -+msgstr "" -+"\n" -+" :\n" -+" -l, --list[=]\n" -+" -k, --known=\n" -+" LN NAME -h, --header[=[LN/]NAME]\n" -+" C -F, --freeze-tables\n" -+" - -T, --find-subsets\n" -+" -C, --copyright\n" -+" --help\n" -+" --version\n" -+ -+#: src/main.c:263 -+msgid "" -+"\n" -+"Operation modes:\n" -+" -v, --verbose explain sequence of steps and report progress\n" -+" -q, --quiet, --silent inhibit messages about irreversible recodings\n" -+" -f, --force force recodings even when not reversible\n" -+" -t, --touch touch the recoded files after replacement\n" -+" -i, --sequence=files use intermediate files for sequencing passes\n" -+" --sequence=memory use memory buffers for sequencing passes\n" -+msgstr "" -+"\n" -+" : \n" -+" -v, --verbose\n" -+" - -q, --quiet, --silent\n" -+" -f, --force\n" -+" -t, --touch\n" -+" -i, --sequence=files\n" -+" --sequence=memory\n" -+ -+#: src/main.c:275 -+msgid " -p, --sequence=pipe use pipe machinery for sequencing passes\n" -+msgstr " (pipe) -p, --sequence=pipe\n" -+ -+#: src/main.c:280 -+msgid " -p, --sequence=pipe same as -i (on this system)\n" -+msgstr " ( ) -i -p, --sequence=pipe\n" -+ -+#: src/main.c:285 -+msgid "" -+"\n" -+"Fine tuning:\n" -+" -s, --strict use strict mappings, even loose characters\n" -+" -d, --diacritics convert only diacritics or alike for HTML/LaTeX\n" -+" -S, --source[=LN] limit recoding to strings and comments as for LN\n" -+" -c, --colons use colons instead of double quotes for diaeresis\n" -+" -g, --graphics approximate IBMPC rulers by ASCII graphics\n" -+" -x, --ignore=CHARSET ignore CHARSET while choosing a recoding path\n" -+msgstr "" -+"\n" -+" \n" -+" , -s, --strict\n" -+" LaTeX- HTML -d, --diacritics\n" -+" LN -S, --source[=LN]\n" -+" -c, --colons\n" -+" ASCII \" IBM -g, --graphics\n" -+" CHARSET -x, --ignore=CHARSET\n" -+ -+#: src/main.c:296 -+msgid "" -+"\n" -+"Option -l with no FORMAT nor CHARSET list available charsets and surfaces.\n" -+"FORMAT is `decimal', `octal', `hexadecimal' or `full' (or one of `dohf').\n" -+msgstr "" -+"\n" -+". -l \n" -+" ) `full' `hexadecimal' ,`octal' ,`decimal' \n" -+" .(`dohf' \n" -+ -+#: src/main.c:302 -+msgid "" -+"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the locale\n" -+"dependent encoding, determined by LC_ALL, LC_CTYPE, LANG.\n" -+msgstr "" -+" , DEFAULT_CHARSET \n" -+".LANG, LC_CTYPE, LC_ALL \" \n" -+ -+#: src/main.c:307 -+msgid "" -+"With -k, possible before charsets are listed for the given after CHARSET,\n" -+"both being tabular charsets, with PAIRS of the form `BEF1:AFT1,BEF2:AFT2,...'\n" -+"and BEFs and AFTs being codes are given as decimal numbers.\n" -+msgstr "" -+" ,-k \n" -+". AFT- BEF- ,`BEF1:AFT1,BEF2:AFT2,...'- \n" -+ -+#: src/main.c:312 -+msgid "LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" -+msgstr " .`c' ;`po' ,`perl' ,`c' : LN\n" -+ -+#: src/main.c:315 -+msgid "" -+"\n" -+"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is ENCODING[..ENCODING]...\n" -+"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like BEFORE..AFTER,\n" -+"with BEFORE and AFTER being charsets. An omitted CHARSET implies the usual\n" -+"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a /\n" -+"with an empty surface name means no surfaces at all. See the manual.\n" -+msgstr "" -+"\n" -+": SUBREQUEST SUBREQUEST[,SUBREQUEST]...: (REQUEST) \n" -+" .[CHARSET][/[SURFACE]]... : () ENCODING .ENCODING[..ENCODING]...\n" -+" . AFTER- BEFORE ;BEFORE..AFTER- \"\n" -+" [/SURFACE] ; CHARSET \n" -+" / . \n" -+" . , .\n" -+ -+#: src/main.c:323 -+msgid "" -+"\n" -+"If none of -i and -p are given, presume -p if no FILE, else -i.\n" -+"Each FILE is recoded over itself, destroying the original. If no\n" -+"FILE is specified, then act as a filter and recode stdin to stdout.\n" -+msgstr "" -+"\n" -+".-i ,FILE -p ,-p -i \n" -+" . , FILE \n" -+" . : ,FILE\n" -+ -+#: src/main.c:329 -+msgid "\nReport bugs to .\n" -+msgstr "\n . (bugs) \n" -+ -+#: src/main.c:430 -+#, c-format -+msgid "Sequence `%s' is ambiguous" -+msgstr "--sequence - `%s'" -+ -+#: src/main.c:434 -+#, c-format -+msgid "Sequence `%s' is unknown" -+msgstr "--sequence `%s'" -+ -+#: src/main.c:464 src/main.c:522 -+#, c-format -+msgid "Language `%s' is ambiguous" -+msgstr " - `%s'" -+ -+#. -1 -+#: src/main.c:468 src/main.c:526 -+#, c-format -+msgid "Language `%s' is unknown" -+msgstr " `%s'" -+ -+#: src/main.c:560 -+#, c-format -+msgid "Format `%s' is ambiguous" -+msgstr " - `%s'" -+ -+#: src/main.c:564 -+#, c-format -+msgid "Format `%s' is unknown" -+msgstr " `%s'" -+ -+#: src/main.c:621 -+msgid "Written by Franc,ois Pinard .\n" -+msgstr ".Franc,ois Pinard \" \n" -+ -+#: src/main.c:624 -+msgid "\nCopyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" -+msgstr "\nFree Software Foundation- (C) 1990,92,93,94,96,97,99\n" -+ -+#: src/main.c:628 -+msgid "" -+"This is free software; see the source for copying conditions. There is NO\n" -+"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" -+msgstr "" -+" ; . , ; \n" -+" . - \n" -+ -+#: src/main.c:669 -+#, c-format -+msgid "Symbol `%s' is unknown" -+msgstr " `%s'" -+ -+#: src/main.c:709 src/main.c:723 -+#, c-format -+msgid "Charset `%s' is unknown or ambiguous" -+msgstr " - `%s'" -+ -+#: src/main.c:754 -+msgid "Required argument is missing" -+msgstr " " -+ -+#: src/main.c:797 -+#, c-format -+msgid "Syntax is deprecated, please prefer `%s'" -+msgstr "`%s' , " -+ -+#: src/main.c:803 -+#, c-format -+msgid "Request `%s' is erroneous" -+msgstr " `%s' " -+ -+#: src/main.c:903 -+#, c-format -+msgid "Recoding %s..." -+msgstr "`%s' " -+ -+# FIXME: this is lame! The method of printing "Frobbing...done" -+# does not lend itself to good translations into languages where -+# such sentences have a different structure, and should be rethought. -+#: src/main.c:913 -+msgid " done\n" -+msgstr " \n" -+ -+#: src/main.c:954 -+#, c-format -+msgid " failed: %s in step `%s..%s'\n" -+msgstr "%s : `%s..%s' \n" -+ -+#: src/main.c:961 -+#, c-format -+msgid "%s failed: %s in step `%s..%s'" -+msgstr "%s %s `%s..%s' " -+ -+#: src/main.c:984 -+#, c-format -+msgid "%s in step `%s..%s'" -+msgstr "%s :`%s..%s' " -+ -+#: src/names.c:335 -+#, c-format -+msgid "Charset %s already exists and is not %s" -+msgstr " (alias) %s %s" -+ -+#: src/names.c:831 -+#, c-format -+msgid "Cannot list `%s', no names available for this charset" -+msgstr " ,`%s' " -+ -+#. code counter -+#. expected value for code counter -+#. insert a while line before printing -+#. Print the long table according to explode data. -+#: src/names.c:984 src/names.c:1030 -+#, c-format -+msgid "Dec Oct Hex UCS2 Mne %s\n" -+msgstr "Dec Oct Hex UCS2 Mne %s\n" -+ -+#: src/names.c:1049 -+#, c-format -+msgid "Sorry, no names available for `%s'" -+msgstr " `%s' ," -+ -+#: src/outer.c:125 -+#, c-format -+msgid "Resurfacer set more than once for `%s'" -+msgstr "`%s' " -+ -+#: src/outer.c:133 -+#, c-format -+msgid "Unsurfacer set more than once for `%s'" -+msgstr "`%s' " -+ -+#: src/recode.c:115 src/recode.c:127 -+msgid "Virtual memory exhausted" -+msgstr " " -+ -+#: src/recode.c:155 -+#, c-format, ycp-format -+msgid "Codes %3d and %3d both recode to %3d" -+msgstr "%3d- %3d %3d " -+ -+#: src/recode.c:169 -+#, c-format, ycp-format -+msgid "No character recodes to %3d" -+msgstr "%3d- " -+ -+#: src/recode.c:170 -+msgid "Cannot invert given one-to-one table" -+msgstr " " -+ -+#: src/recode.c:224 src/recode.c:236 -+#, c-format -+msgid "Following diagnostics for `%s' to `%s'" -+msgstr "`%s'- `%s'- " -+ -+#: src/recode.c:229 src/recode.c:241 -+#, c-format -+msgid "Pair no. %d: <%3d, %3d> conflicts with <%3d, %3d>" -+msgstr "%d <%3d, %3d> <%3d, %3d> " -+ -+#: src/recode.c:272 -+msgid "Cannot complete table from set of known pairs" -+msgstr " " -+ -+#: src/recode.c:497 -+msgid "Identity recoding, not worth a table" -+msgstr " ,() " -+ -+#: src/recode.c:504 -+msgid "Recoding is too complex for a mere table" -+msgstr " " -+ -+# FIXME: this goes into a comment; is it really worth translating? -+#. Print the header of the header file. -+#: src/recode.c:536 -+#, c-format -+msgid "%sConversion table generated mechanically by Free `%s' %s" -+msgstr "%sFree `%s' %s \" " -+ -+#: src/recode.c:538 -+#, c-format -+msgid "%sfor sequence %s.%s" -+msgstr "%s .%s %s" -+ -+#: src/recode.c:744 -+msgid "No table to print" -+msgstr " " -+ -+#: src/request.c:34 -+msgid "reversible" -+msgstr "" -+ -+# FIXME: these assume left-to-right direction. What else can I do? -+#: src/request.c:36 -+#, c-format -+msgid "%s to %s" -+msgstr "%s -> %s" -+ -+#: src/request.c:37 src/request.c:39 -+msgid "byte" -+msgstr "byte" -+ -+#: src/request.c:38 src/request.c:40 -+msgid "ucs2" -+msgstr "ucs2" -+ -+#: src/request.c:38 src/request.c:40 -+msgid "variable" -+msgstr "variable" -+ -+#: src/request.c:111 -+msgid "*Unachievable*" -+msgstr " -*" -+ -+#: src/request.c:113 -+msgid "*mere copy*" -+msgstr "* *" -+ -+#: src/request.c:246 -+msgid "Virtual memory exhausted!" -+msgstr "! " -+ -+#: src/request.c:265 -+msgid "Step initialisation failed" -+msgstr " " -+ -+#: src/request.c:272 -+msgid "Step initialisation failed (unprocessed options)" -+msgstr "( ) " -+ -+#: src/request.c:568 -+#, c-format -+msgid "Request: %s\n" -+msgstr "%s :\n" -+ -+#: src/request.c:720 -+#, c-format -+msgid "Shrunk to: %s\n" -+msgstr "%s -: \n" -+ -+#: src/request.c:823 src/request.c:932 -+#, c-format -+msgid "Unrecognised surface name `%s'" -+msgstr " `%s'" -+ -+#: src/request.c:903 -+#, c-format -+msgid "No way to recode from `%s' to `%s'" -+msgstr "`%s'- `%s'- " -+ -+#: src/request.c:1013 -+msgid "Expecting `..' in request" -+msgstr "`..' " -+ -+#: src/task.c:826 src/task.c:1002 -+#, c-format -+msgid "Child process wait status is 0x%0.2x" -+msgstr "0x%0.2x - " -+ -+#: src/testdump.c:298 -+msgid "UCS2 Mne Description\n\n" -+msgstr "UCS2 \n\n" ---- recode-3.6.orig/i18n/da.po -+++ recode-3.6/i18n/da.po -@@ -1,12 +1,15 @@ - # Danish message catalog for GNU recode. - # Copyright (C) 1997 Free Software Foundation, Inc. - # Niels Kristian Bech Jensen , 1997-2000. -+# Keld Simonsen , 2001. -+# -+# Reviewed: 2000-09-09: byrial@image.dk - # - msgid "" - msgstr "" --"Project-Id-Version: recode 3.5\n" -+"Project-Id-Version: recode 3.6\n" - "POT-Creation-Date: 2001-01-02 22:35+0100\n" --"PO-Revision-Date: 2000-05-31 22:02+02:00\n" -+"PO-Revision-Date: 2001-09-12 11:05+02:00\n" - "Last-Translator: Niels Kristian Bech Jensen \n" - "Language-Team: Danish \n" - "MIME-Version: 1.0\n" -@@ -19,7 +22,7 @@ - - #: src/main.c:145 - msgid "Non canonical input" --msgstr "Ualmindelige inddata" -+msgstr "Unormale inddata" - - #: src/main.c:148 - msgid "Ambiguous output" -@@ -62,8 +65,7 @@ - "Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n" - msgstr "" - "Dette program er fri software; du m redistribuere det og/eller modificere\n" --"det under betingelserne givet i GNU General Public License som publiceret " --"af\n" -+"det under betingelserne givet i GNU General Public License som publiceret af\n" - "Free Software Foundation; enten version 2, eller (efter dit valg) en senere\n" - "version.\n" - "\n" -@@ -79,22 +81,16 @@ - #: src/main.c:233 - #, c-format - msgid "Try `%s %s' for more information.\n" --msgstr "Prv \"%s %s\" for mere information.\n" -+msgstr "Prv '%s %s' for mere information.\n" - - #: src/main.c:237 --msgid "" --"Free `recode' converts files between various character sets and surfaces.\n" --msgstr "" --"Fri \"recode\" konverterer filer mellem forskellige tegnst og pakninger.\n" -+msgid "Free `recode' converts files between various character sets and surfaces.\n" -+msgstr "Fri 'recode' konverterer filer mellem forskellige tegnst og indpakninger.\n" - - #: src/main.c:241 - #, c-format --msgid "" --"\n" --"Usage: %s [OPTION]... [ [CHARSET] | REQUEST [FILE]... ]\n" --msgstr "" --"\n" --"Brug: %s [TILVALG]... [ [TEGNST] | FORESPRGSEL [FIL]... ]\n" -+msgid "\nUsage: %s [OPTION]... [ [CHARSET] | REQUEST [FILE]... ]\n" -+msgstr "\nBrug: %s [TILVALG]... [ [TEGNST] | FORESPRGSEL [FIL]... ]\n" - - #: src/main.c:244 - msgid "" -@@ -108,13 +104,11 @@ - "argumenter.\n" - - #: src/main.c:250 --#, fuzzy - msgid "" - "\n" - "Listings:\n" - " -l, --list[=FORMAT] list one or all known charsets and aliases\n" --" -k, --known=PAIRS restrict charsets according to known PAIRS " --"list\n" -+" -k, --known=PAIRS restrict charsets according to known PAIRS list\n" - " -h, --header[=[LN/]NAME] write table NAME on stdout using LN, then exit\n" - " -F, --freeze-tables write out a C module holding all tables\n" - " -T, --find-subsets report all charsets being subset of others\n" -@@ -145,13 +139,12 @@ - " --sequence=memory use memory buffers for sequencing passes\n" - msgstr "" - "\n" --"Operationsmder:\n" --" -v, --verbose vis rkkeflgen af gennemlb, og rapportr " --"fremskridt\n" --" -q, --quiet, --silent udelad meddelelser om irreversible oversttelser\n" --" -f, --force gennemtving oversttelser, selv hvis de ikke er\n" -+"Virkemder:\n" -+" -v, --verbose vis rkkeflgen af gennemlb, og rapportr fremskridt\n" -+" -q, --quiet, --silent udelad meddelelser om irreversible omkodninger\n" -+" -f, --force gennemtving omkodninger, selv hvis de ikke er\n" - " reversible\n" --" -t, --touch giv den oversatte fil system-urets tid\n" -+" -t, --touch giv den omkodede fil system-urets tid\n" - " -i, --sequence=files brug midlertidige filer mellem gennemlbene\n" - " --sequence=memory brug hukommelsesbuffere mellem gennemlbene\n" - -@@ -175,16 +168,14 @@ - " -x, --ignore=CHARSET ignore CHARSET while choosing a recoding path\n" - msgstr "" - "\n" --"Fintuning:\n" -+"Finjustering:\n" - " -s, --strict brug kun njagtige tegnst selvom der mistes tegn\n" --" -d, --diacritics overst kun diakritiske/specielle tegn i " --"HTML/LaTeX\n" --" -S, --source[=SPR] begrns omodning til strenge og kommentarer som\n" -+" -d, --diacritics omkod kun diakritiske/specielle tegn i HTML/LaTeX\n" -+" -S, --source[=SPR] begrns omkodning til strenge og kommentarer som\n" - " for SPR\n" --" -c, --colons brug koloner i stedet for anfrselstegn som trema " --"()\n" --" -g, --graphics tilnrm IBMPC linie- og kassetegn med ASCII grafik\n" --" -x, --ignore=TEGNST ignorr TEGNST nr en omkodningssti vlges\n" -+" -c, --colons brug koloner i stedet for anfrselstegn som trema ()\n" -+" -g, --graphics tilnrm IBMPC linie- og kassetegn med ASCII-grafik\n" -+" -x, --ignore=TEGNST ignorr TEGNST nr en omkodningsrute vlges\n" - - #: src/main.c:296 - msgid "" -@@ -194,56 +185,47 @@ - msgstr "" - "\n" - "Tilvalg -l uden FORMAT eller TEGNST viser en liste over alle tegnst og\n" --"pakninger. FORMAT er et af ordene 'decimal', 'octal', 'hexadecimal' eller\n" -+"indpakninger. FORMAT er et af ordene 'decimal', 'octal', 'hexadecimal' eller\n" - "'full' (eller et af bogstaverne d, o, h eller f).\n" - - #: src/main.c:302 --#, fuzzy - msgid "" --"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the " --"locale\n" -+"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the locale\n" - "dependent encoding, determined by LC_ALL, LC_CTYPE, LANG.\n" --msgstr "Standard TEGNST er \"%s\", med mindre DEFAULT_CHARSET er angivet.\n" -+msgstr "" -+"Med mindre DEFAULT_CHARSET er angivet i miljet, er\n" -+"Standard TEGNST det lokaleafhngige tegnst, bestemt ud fra LC_ALL, LC_CTYPE og LANG.\n" - - #: src/main.c:307 - msgid "" - "With -k, possible before charsets are listed for the given after CHARSET,\n" --"both being tabular charsets, with PAIRS of the form " --"`BEF1:AFT1,BEF2:AFT2,...'\n" -+"both being tabular charsets, with PAIRS of the form `BEF1:AFT1,BEF2:AFT2,...'\n" - "and BEFs and AFTs being codes are given as decimal numbers.\n" - msgstr "" --"Med -k vises en liste over mulige fr tegnst for det givne efter TEGNST,\n" --"begge tabellariske tegnst, med PAR af typen " --"\"FR1:EFTER1,FR2:EFTER2,...\"\n" --"hvor FR'er og EFTER'e er tegnkoder givet efter titalssystemet.\n" -+"Med -k vises en liste over mulige fr-tegnst for det givne efter-TEGNST,\n" -+"begge tabellariske tegnst, med PAR af typen 'FR1:EFTER1,FR2:EFTER2,...'\n" -+"hvor FR'er og EFTER'e er givet som decimale tal.\n" - - #: src/main.c:312 --msgid "" --"LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" --msgstr "" --"SPR er et programmeringssprog, f.eks. \"c\", \"perl\" eller \"po\"; \"c\" er " --"standard.\n" -+msgid "LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" -+msgstr "SPR er et programmeringssprog, f.eks. 'c', 'perl' eller 'po'; 'c' er standard.\n" - - #: src/main.c:315 - msgid "" - "\n" --"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is " --"ENCODING[..ENCODING]...\n" --"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like " --"BEFORE..AFTER,\n" -+"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is ENCODING[..ENCODING]...\n" -+"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like BEFORE..AFTER,\n" - "with BEFORE and AFTER being charsets. An omitted CHARSET implies the usual\n" --"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a " --"/\n" -+"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a /\n" - "with an empty surface name means no surfaces at all. See the manual.\n" - msgstr "" - "\n" --"FORESPRGSEL er UNDERFORESPRGSEL[,UNDERFORESPRGSEL]...; UNDERFORESPRGSEL " --"er\n" --"INDKODNING[..INDKODNING]...; INDKODNING er [TEGNST][/[PAKNING]]...\n" -+"FORESPRGSEL er UNDERFORESPRGSEL[,UNDERFORESPRGSEL]...; UNDERFORESPRGSEL er\n" -+"INDPAKNING[..INDPAKNING]...; INDPAKNING er [TEGNST][/[INDPAKNING]]...\n" - "FORESPRGSEL har ofte formen FR..EFTER, hvor FR og EFTER er tegnst.\n" --"Hvis et TEGNST udelades, anvendes det normale tegnst; hvis [/PAKNING]...\n" -+"Hvis et TEGNST udelades, anvendes det normale tegnst; hvis [/INDPAKNING]...\n" - "udelades, anvendes den normale pakning af TEGNST; / uden navnet p en\n" --"pakning betyder ingen pakning. Se manualen.\n" -+"indpakning betyder ingen indpakninger. Se manualen.\n" - - #: src/main.c:323 - msgid "" -@@ -253,65 +235,52 @@ - "FILE is specified, then act as a filter and recode stdin to stdout.\n" - msgstr "" - "\n" --"Hvis ingen af -i eller -p er valgt, bruges -p hvis ingen FIL, ellers -i.\n" --"Hver FIL bliver oversat oveni sig selv og overskriver originalen. Hvis " --"ingen\n" --"FIL er valgt, er programmet et filter, der overstter fra std-ind til " --"std-ud.\n" -+"Hvis hverken -i eller -p er valgt, bruges -p hvis ingen FIL, ellers -i.\n" -+"Hver FIL bliver omkodet oven i sig selv og overskriver originalen. Hvis ingen\n" -+"FIL er valgt, er programmet et filter, der omkoder fra std-ind til std-ud.\n" - - #: src/main.c:329 --msgid "" --"\n" --"Report bugs to .\n" --msgstr "" --"\n" --"Rapportr fejl til .\n" -+msgid "\nReport bugs to .\n" -+msgstr "\nRapportr fejl til .\n" - - #: src/main.c:430 - #, c-format - msgid "Sequence `%s' is ambiguous" --msgstr "" -+msgstr "Sekvens '%s' er flertydig" - - #: src/main.c:434 - #, c-format - msgid "Sequence `%s' is unknown" --msgstr "" -+msgstr "Sekvens '%s' er ukendt" - - #: src/main.c:464 src/main.c:522 - #, c-format - msgid "Language `%s' is ambiguous" --msgstr "" -+msgstr "Sprog '%s' er flertydigt" - - #. -1 - #: src/main.c:468 src/main.c:526 - #, c-format - msgid "Language `%s' is unknown" --msgstr "" -+msgstr "Sprog '%s' er ukendt" - - #: src/main.c:560 - #, c-format - msgid "Format `%s' is ambiguous" --msgstr "" -+msgstr "Format '%s' er flertydigt" - - #: src/main.c:564 - #, c-format - msgid "Format `%s' is unknown" --msgstr "" -+msgstr "Format '%s' er ukendt" - - #: src/main.c:621 --#, fuzzy - msgid "Written by Franc,ois Pinard .\n" --msgstr "" --"\n" --"Skrevet af Franois Pinard .\n" -+msgstr "Skrevet af Franois Pinard .\n" - - #: src/main.c:624 --msgid "" --"\n" --"Copyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" --msgstr "" --"\n" --"Ophavsret (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" -+msgid "\nCopyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" -+msgstr "\nOphavsret (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" - - #: src/main.c:628 - msgid "" -@@ -319,32 +288,31 @@ - "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" - msgstr "" - "Dette er fri software; se kopieringsbetingelserne i kildeteksten. Der gives\n" --"INGEN garanti; end ikke for SALGBARHED eller ANVENDELIGHED TIL NOGET " --"FORML.\n" -+"INGEN garanti; end ikke for SALGBARHED eller ANVENDELIGHED TIL NOGET FORML.\n" - - #: src/main.c:669 - #, c-format - msgid "Symbol `%s' is unknown" --msgstr "" -+msgstr "Symbol '%s' er ukendt" - - #: src/main.c:709 src/main.c:723 - #, c-format - msgid "Charset `%s' is unknown or ambiguous" --msgstr "" -+msgstr "Tegnst '%s' er ukendt eller flertydigt" - - #: src/main.c:754 - msgid "Required argument is missing" --msgstr "" -+msgstr "Krvet argument mangler" - - #: src/main.c:797 --#, fuzzy, c-format -+#, c-format - msgid "Syntax is deprecated, please prefer `%s'" --msgstr "Forldet syntaks, brug hellere \"%s\"" -+msgstr "Forldet syntaks, brug hellere '%s'" - - #: src/main.c:803 - #, c-format - msgid "Request `%s' is erroneous" --msgstr "" -+msgstr "Foresprgsel '%s' er fejlagtig" - - #: src/main.c:903 - #, c-format -@@ -356,19 +324,19 @@ - msgstr " frdig\n" - - #: src/main.c:954 --#, fuzzy, c-format -+#, c-format - msgid " failed: %s in step `%s..%s'\n" --msgstr " fejlede: %s i %s..%s\n" -+msgstr " fejlede: %s i trin '%s..%s'\n" - - #: src/main.c:961 --#, fuzzy, c-format -+#, c-format - msgid "%s failed: %s in step `%s..%s'" --msgstr "%s fejlede: %s i %s..%s" -+msgstr "%s fejlede: %s i trin '%s..%s'" - - #: src/main.c:984 --#, fuzzy, c-format -+#, c-format - msgid "%s in step `%s..%s'" --msgstr "%s i %s..%s" -+msgstr "%s i trin '%s..%s'" - - #: src/names.c:335 - #, c-format -@@ -378,7 +346,7 @@ - #: src/names.c:831 - #, c-format - msgid "Cannot list `%s', no names available for this charset" --msgstr "Kan ikke vise \"%s\", ingen navne tilgngelige for dette tegnst" -+msgstr "Kan ikke vise '%s', ingen navne tilgngelige for dette tegnst" - - #. code counter - #. expected value for code counter -@@ -392,31 +360,31 @@ - #: src/names.c:1049 - #, c-format - msgid "Sorry, no names available for `%s'" --msgstr "Beklager, ingen navne tilgngelige for \"%s\"" -+msgstr "Beklager, ingen navne tilgngelige for '%s'" - - #: src/outer.c:125 - #, c-format - msgid "Resurfacer set more than once for `%s'" --msgstr "Genpakker indstillet flere gange for \"%s\"" -+msgstr "Genindpakker indstillet flere gange for '%s'" - - #: src/outer.c:133 - #, c-format - msgid "Unsurfacer set more than once for `%s'" --msgstr "Udpakker indstillet flere gange for \"%s\"" -+msgstr "Udpakker indstillet flere gange for '%s'" - - #: src/recode.c:115 src/recode.c:127 - msgid "Virtual memory exhausted" - msgstr "Virtuel hukommelse opbrugt" - - #: src/recode.c:155 --#, c-format, ycp-format -+#, c-format - msgid "Codes %3d and %3d both recode to %3d" --msgstr "Tegnkoderne %3d og %3d oversttes begge til %3d" -+msgstr "Tegnkoderne %3d og %3d omkodes begge til %3d" - - #: src/recode.c:169 --#, c-format, ycp-format -+#, c-format - msgid "No character recodes to %3d" --msgstr "Ingen tegn oversttes til %3d" -+msgstr "Ingen tegn omkodes til %3d" - - #: src/recode.c:170 - msgid "Cannot invert given one-to-one table" -@@ -425,7 +393,7 @@ - #: src/recode.c:224 src/recode.c:236 - #, c-format - msgid "Following diagnostics for `%s' to `%s'" --msgstr "Flgende fejl er for \"%s\" til \"%s\"" -+msgstr "Flgende fejl er for '%s' til '%s'" - - #: src/recode.c:229 src/recode.c:241 - #, c-format -@@ -434,7 +402,7 @@ - - #: src/recode.c:272 - msgid "Cannot complete table from set of known pairs" --msgstr "Kan ikke fuldende tabellen udfra mngden af kendte par" -+msgstr "Kan ikke fuldende tabellen ud fra mngden af kendte par" - - #: src/recode.c:497 - msgid "Identity recoding, not worth a table" -@@ -448,7 +416,7 @@ - #: src/recode.c:536 - #, c-format - msgid "%sConversion table generated mechanically by Free `%s' %s" --msgstr "%sOmkodningstabellen er genereret automatisk af Free \"%s\" %s" -+msgstr "%sOmkodningstabellen er genereret automatisk af Fri '%s' %s" - - #: src/recode.c:538 - #, c-format -@@ -513,16 +481,16 @@ - #: src/request.c:823 src/request.c:932 - #, c-format - msgid "Unrecognised surface name `%s'" --msgstr "Ukendt pakkenavn \"%s\"" -+msgstr "Ukendt indpakningsnavn '%s'" - - #: src/request.c:903 - #, c-format - msgid "No way to recode from `%s' to `%s'" --msgstr "Umuligt at overstte fra \"%s\" til \"%s\"" -+msgstr "Umuligt at omkode fra '%s' til '%s'" - - #: src/request.c:1013 - msgid "Expecting `..' in request" --msgstr "Forventer \"..\" i foresprgsel" -+msgstr "Forventer '..' i foresprgsel" - - #: src/task.c:826 src/task.c:1002 - #, c-format -@@ -530,33 +498,5 @@ - msgstr "Underprocessens ventestatus er 0x%0.2x" - - #: src/testdump.c:298 --msgid "" --"UCS2 Mne Description\n" --"\n" --msgstr "" --"UCS2 Mne Beskrivelse\n" --"\n" -- --#~ msgid "CHARSET has no default, define DEFAULT_CHARSET in the environment.\n" --#~ msgstr "Der findes ikke et standard TEGNST, angiv DEFAULT_CHARSET.\n" -- --#~ msgid "Ambiguous sequence `%s'" --#~ msgstr "Flertydig sekvens \"%s\"" -- --#~ msgid "Unknown sequence `%s'" --#~ msgstr "Ukendt sekvens \"%s\"" -- --#~ msgid "Ambiguous language `%s'" --#~ msgstr "Flertydigt sprog \"%s\"" -- --#~ msgid "Unknown language `%s'" --#~ msgstr "Ukendt sprog \"%s\"" -- --#~ msgid "Ambiguous format `%s'" --#~ msgstr "Flertydigt format \"%s\"" -- --#~ msgid "Unknown format `%s'" --#~ msgstr "Ukendt format \"%s\"" -- --#~ msgid "Erroneous request `%s'" --#~ msgstr "Fejlagtig foresprgsel \"%s\"" -+msgid "UCS2 Mne Description\n\n" -+msgstr "UCS2 Mnem Beskrivelse\n\n" ---- recode-3.6.orig/i18n/be.po -+++ recode-3.6/i18n/be.po -@@ -0,0 +1,522 @@ -+# SOME DESCRIPTIVE TITLE -+# Copyright (C) 2003 Free Software Foundation, Inc. -+# Hleb Valoska , 2003. -+# -+msgid "" -+msgstr "" -+"Project-Id-Version: recode 3.6\n" -+"POT-Creation-Date: 2001-01-02 22:35+0100\n" -+"PO-Revision-Date: 2003-04-06 23:16+0300\n" -+"Last-Translator: Ales Nyakhaychyk \n" -+"Language-Team: Belarusian \n" -+"MIME-Version: 1.0\n" -+"Content-Type: text/plain; charset=UTF-8\n" -+"Content-Transfer-Encoding: 8bit\n" -+"X-Generator: KBabel 0.9.6\n" -+ -+#: src/main.c:142 -+msgid "No error" -+msgstr "Без памылак" -+ -+#: src/main.c:145 -+msgid "Non canonical input" -+msgstr "Некананічнасьць на ўваходзе" -+ -+#: src/main.c:148 -+msgid "Ambiguous output" -+msgstr "Двухсэнсоўнасьць на выхадзе" -+ -+#: src/main.c:151 -+msgid "Untranslatable input" -+msgstr "Неперакладальнае на ўваходзе" -+ -+#: src/main.c:154 -+msgid "Invalid input" -+msgstr "Няправільнае на ўваходзе" -+ -+#: src/main.c:157 -+msgid "System detected problem" -+msgstr "Сыстэма выявіла праблему" -+ -+#: src/main.c:160 -+msgid "Misuse of recoding library" -+msgstr "Няправільнае ўжываньне бібліятэкі перакадаваньня" -+ -+#: src/main.c:163 -+msgid "Internal recoding bug" -+msgstr "Нутраная памылка перакадаваньня" -+ -+#: src/main.c:208 -+msgid "" -+"This program is free software; you can redistribute it and/or modify\n" -+"it under the terms of the GNU General Public License as published by\n" -+"the Free Software Foundation; either version 2, or (at your option)\n" -+"any later version.\n" -+"\n" -+"This program is distributed in the hope that it will be useful,\n" -+"but WITHOUT ANY WARRANTY; without even the implied warranty of\n" -+"MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" -+"GNU General Public License for more details.\n" -+"\n" -+"You should have received a copy of the GNU General Public License\n" -+"along with this program; if not, write to the Free Software Foundation,\n" -+"Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n" -+msgstr "" -+"Гэтая праграма зьяўляецца свабодным праграмным забесьпячэньнем, яе\n" -+"можна распаўсюджваць і/ці зьмяняць паводле ўмоваў Агульнай Публічнай\n" -+"Ліцэнзіі (GPL) GNU, надрукаванай Free Software Foundation; другой ці\n" -+"(на твой погляд) пазьнейшай вэрсіі.\n" -+"\n" -+"Гэтая праграма разпаўсюджваецца з надзеяй, што яна будзе карыснай,\n" -+"але БЕЗЬ НІЯКАЕ ГАРАНТЫІ; нават без гарантыі КАШТОЎНАСЬЦІ ці\n" -+"ПРЫДАТНАСЬЦІ ДЛЯ КАНКРЭТНАЕ МЭТЫ. Глядзі падрабязнасьці ў GNU GPL.\n" -+"\n" -+"Ты мусіш атрымаць копію Агульнай Публічнай Ліцэнзіі (GPL) GNU разам\n" -+"з гэтай праграмай, калі не, напішы на адрас Free Software Foundation,\n" -+"Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n" -+ -+#: src/main.c:233 -+#, c-format -+msgid "Try `%s %s' for more information.\n" -+msgstr "Паспрабуй `%s %s', каб атрымаць болей інфармацыі.\n" -+ -+#: src/main.c:237 -+msgid "Free `recode' converts files between various character sets and surfaces.\n" -+msgstr "Свабодная `recode' зьмяняе знаказбор ці спосаб кадаваньня файла.\n" -+ -+#: src/main.c:241 -+#, c-format -+msgid "" -+"\n" -+"Usage: %s [OPTION]... [ [CHARSET] | REQUEST [FILE]... ]\n" -+msgstr "" -+"\n" -+"Ужывай: %s [ОПЦЫІ]... [ [ЗНАКАЗБОР] | ЗАПЫТ [ФАЙЛ]... ]\n" -+ -+#: src/main.c:244 -+msgid "" -+"\n" -+"If a long option shows an argument as mandatory, then it is mandatory\n" -+"for the equivalent short option also. Similarly for optional arguments.\n" -+msgstr "" -+"\n" -+"Калі парамэтар абавязковы для доўгае опцыі, то ён абавязковы й для\n" -+"кароткае опцыі таксама. Аналягічна для неабавязковых парамэтраў.\n" -+ -+#: src/main.c:250 -+msgid "" -+"\n" -+"Listings:\n" -+" -l, --list[=FORMAT] list one or all known charsets and aliases\n" -+" -k, --known=PAIRS restrict charsets according to known PAIRS list\n" -+" -h, --header[=[LN/]NAME] write table NAME on stdout using LN, then exit\n" -+" -F, --freeze-tables write out a C module holding all tables\n" -+" -T, --find-subsets report all charsets being subset of others\n" -+" -C, --copyright display Copyright and copying conditions\n" -+" --help display this help and exit\n" -+" --version output version information and exit\n" -+msgstr "" -+"\n" -+"Адлюстраваньне:\n" -+" -l, --list[=ФАРМАТ] паказаць адзін ці ўсе вядомыя знаказборы\n" -+" -k, --known=ПАРЫ абмежаваць знаказборы адпаведна сьпісу ПАР\n" -+" -h, --header[=[МОВА/]ІМЯ] запісаць табліцу ІМЯ у stdout на МОВЕ й выйсьці\n" -+" -F, --freeze-tables запісаць модуль С, які ўтрымлівае ўсе знаказборы\n" -+" -T, --find-subsets паведаміць, якія знаказборы зьяўляюцца падмноствам \n" -+" іншых\n" -+" -C, --copyright надрукаваць зьвесткі аб аўтарскіх правох і ўмовах\n" -+" капіяваньня\n" -+" --help надрукаваць гэты экран даведкі й выйсьці\n" -+" --version надрукаваць зьвесткі аб вэрсіі праграмы й выйсьці\n" -+ -+#: src/main.c:263 -+msgid "" -+"\n" -+"Operation modes:\n" -+" -v, --verbose explain sequence of steps and report progress\n" -+" -q, --quiet, --silent inhibit messages about irreversible recodings\n" -+" -f, --force force recodings even when not reversible\n" -+" -t, --touch touch the recoded files after replacement\n" -+" -i, --sequence=files use intermediate files for sequencing passes\n" -+" --sequence=memory use memory buffers for sequencing passes\n" -+msgstr "" -+"\n" -+"Рэжымы працы:\n" -+" -v, --verbose інфармаваць пра пасьлядоўнасьць крокаў і \n" -+" зьдзейсьненую працу\n" -+" -q, --quiet, --silent не паведамляць пра незваротныя перакадаваньні\n" -+" -f, --force зьдзяйсьняць перакадаваньне нават у выпадку\n" -+" атрыманьня незваротнага выніку\n" -+" -t, --touch абнавіць час перакадаваных файлаў пасьля іх\n" -+" замены\n" -+" -i, --sequence=files ужываць часовыя файлы для працы\n" -+" --sequence=memory ужываць буфэры памяці для працы\n" -+ -+#: src/main.c:275 -+msgid " -p, --sequence=pipe use pipe machinery for sequencing passes\n" -+msgstr " -p, --sequence=pipe ужываць каналы пры апрацоўцы\n" -+ -+#: src/main.c:280 -+msgid " -p, --sequence=pipe same as -i (on this system)\n" -+msgstr " -p, --sequence=pipe аналягічнае -i (на гэтай сыстэме)\n" -+ -+#: src/main.c:285 -+msgid "" -+"\n" -+"Fine tuning:\n" -+" -s, --strict use strict mappings, even loose characters\n" -+" -d, --diacritics convert only diacritics or alike for HTML/LaTeX\n" -+" -S, --source[=LN] limit recoding to strings and comments as for LN\n" -+" -c, --colons use colons instead of double quotes for diaeresis\n" -+" -g, --graphics approximate IBMPC rulers by ASCII graphics\n" -+" -x, --ignore=CHARSET ignore CHARSET while choosing a recoding path\n" -+msgstr "" -+"\n" -+"Зьмяненьне парамэтраў працы:\n" -+" -s, --strict строгая адпаведнасьць, нават са стратай знакаў\n" -+" -d, --diacritics канвэртаваць толькі дыякрытычныя знакі, кшталту\n" -+" ўжываных у HTML ці LaTeX\n" -+" -S, --source[=МОВА] перакадоўваць толькі радкі й камэнтары МОВЫ\n" -+" -c, --colons ужываць двухкроп'е замест двухкосься ў дыякрытычных\n" -+" знаках\n" -+" -g, --graphics справаць замяніць рамкі IBMPC знакамі ASCII\n" -+" -x, --ignore=ЗНАКАЗБОР ігнараваць ЗНАКАЗБОР, абіраючы шлях кадаваньня\n" -+ -+#: src/main.c:296 -+msgid "" -+"\n" -+"Option -l with no FORMAT nor CHARSET list available charsets and surfaces.\n" -+"FORMAT is `decimal', `octal', `hexadecimal' or `full' (or one of `dohf').\n" -+msgstr "" -+"\n" -+"Опцыя -l без ФАРМАТУ ні ЗНАКАЗБОРУ паказвае вядомыя табліцы знакаў і спосабы\n" -+"кадаваньня.\n" -+"ФАРМАТ -- `decimal', `octal', `hexadecimal' ці `full' (ці адзін з `dohf').\n" -+ -+#: src/main.c:302 -+msgid "" -+"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the locale\n" -+"dependent encoding, determined by LC_ALL, LC_CTYPE, LANG.\n" -+msgstr "" -+"Калі не атачэньне ня мае усталёўкі DEFAULT_CHARSET, то ЗНАКАЗБОР адпавядае\n" -+"кадзіроўцы лякалі, якая вызначаецца з LC_ALL, LC_CTYPE, LANG.\n" -+ -+#: src/main.c:307 -+msgid "" -+"With -k, possible before charsets are listed for the given after CHARSET,\n" -+"both being tabular charsets, with PAIRS of the form `BEF1:AFT1,BEF2:AFT2,...'\n" -+"and BEFs and AFTs being codes are given as decimal numbers.\n" -+msgstr "" -+"Опцыя -k адлюстроўвае магчымыя `зыходныя' знаказборы для зададзенага\n" -+"`выніковага' ЗНАКАЗБОРУ, з ПАРАМІ перакадаваньня ў фармаце ДА1:ПА1,\n" -+"ДА2:ПА2,..., дзе ДА і ПА зьяўляюцца кодамі, зададзенымі дзесятковымі лікамі.\n" -+"І зыходныя, і выніковыя знаказборы мусяць быць таблічнымі.\n" -+ -+#: src/main.c:312 -+msgid "LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" -+msgstr "МОВА задае мову праграмаваньня, прыкладам `c', `perl' ці `po'; даўнята `c'.\n" -+ -+#: src/main.c:315 -+msgid "" -+"\n" -+"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is ENCODING[..ENCODING]...\n" -+"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like BEFORE..AFTER,\n" -+"with BEFORE and AFTER being charsets. An omitted CHARSET implies the usual\n" -+"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a /\n" -+"with an empty surface name means no surfaces at all. See the manual.\n" -+msgstr "" -+"\n" -+"ЗАПЫТ: ПАДЗАПЫТ[,ПАДЗАПЫТ]...; ПАДЗАПЫТ: КАДЗІРОЎКА[..КАДЗІРОЎКА]...;\n" -+"КАДЗІРОЎКА: [ЗНАКАЗБОР][/[СПОСАБ КАДАВАНЬНЯ]]...; ЗАПЫТ часта выглядае\n" -+"як ПЕРАД..ПАСЬЛЯ, дзе ПЕРАД і ПАСЬЛЯ -- знаказборы. Замест прапушчанага\n" -+"ЗНАКАЗБОРУ ужываецца даўняты знаказбор сыстэмы; замест прапушчанага\n" -+"СПОСАБУ ўжываецца спосаб, стандартны для ЗНАКАЗБОРА; адзін / без зададзенага\n" -+"СПОСАБУ азначае адсутнасьць СПОСАБАЎ увогуле. Глядзі кіраўніцтва.\n" -+ -+#: src/main.c:323 -+msgid "" -+"\n" -+"If none of -i and -p are given, presume -p if no FILE, else -i.\n" -+"Each FILE is recoded over itself, destroying the original. If no\n" -+"FILE is specified, then act as a filter and recode stdin to stdout.\n" -+msgstr "" -+"\n" -+"Калі ня ўжытыя ані -i, ані -p, мяркуецца -p, калі ня дадзены ФАЙЛ, ці -i у \n" -+"адваротным выпадку.\n" -+"Кожны ФАЙЛ перакадоўваецца паверх самога сябе, зьнішчаючы арыгінал. Калі ФАЙЛ\n" -+"ня дадзены, то праграма працуе фільтрам і перакадоўвае з stdin на stdout.\n" -+ -+#: src/main.c:329 -+msgid "" -+"\n" -+"Report bugs to .\n" -+msgstr "" -+"\n" -+"Паведамляй пра памылкі на адрас .\n" -+ -+#: src/main.c:430 -+#, c-format -+msgid "Sequence `%s' is ambiguous" -+msgstr "Двухсэнсоўная пасьлядоўнасьць: `%s'" -+ -+#: src/main.c:434 -+#, c-format -+msgid "Sequence `%s' is unknown" -+msgstr "Невядомая пасьлядоўнасьць: `%s'" -+ -+#: src/main.c:464 src/main.c:522 -+#, c-format -+msgid "Language `%s' is ambiguous" -+msgstr "Невядомая мова: `%s'" -+ -+#. -1 -+#: src/main.c:468 src/main.c:526 -+#, c-format -+msgid "Language `%s' is unknown" -+msgstr "Невядомая мова: `%s'" -+ -+#: src/main.c:560 -+#, c-format -+msgid "Format `%s' is ambiguous" -+msgstr "Двухсэнсоўны фармат: `%s'" -+ -+#: src/main.c:564 -+#, c-format -+msgid "Format `%s' is unknown" -+msgstr "Невядомы фармат: `%s'" -+ -+#: src/main.c:621 -+msgid "Written by Franc,ois Pinard .\n" -+msgstr "Напісаў: Franc,ois Pinard .\n" -+ -+#: src/main.c:624 -+msgid "" -+"\n" -+"Copyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" -+msgstr "" -+"\n" -+"Copyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" -+ -+#: src/main.c:628 -+msgid "" -+"This is free software; see the source for copying conditions. There is NO\n" -+"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" -+msgstr "" -+"Гэта свабоднае праграмовае забесьпячэньне; глядзі ўмовы капіяваньня ў\n" -+"зыходным кодзе. Няма НІЯКАЕ гарантыі, нават гарантыі КАШТОЎНАСЬЦІ ці\n" -+"ПРЫДАТНАСЬЦІ ДЛЯ КАНКРЭТНАЕ МЭТЫ.\n" -+ -+#: src/main.c:669 -+#, c-format -+msgid "Symbol `%s' is unknown" -+msgstr "Невядомы знак: `%s'" -+ -+#: src/main.c:709 src/main.c:723 -+#, c-format -+msgid "Charset `%s' is unknown or ambiguous" -+msgstr "Знаказбор `%s' невядомы ці двухсэнсоўны" -+ -+#: src/main.c:754 -+msgid "Required argument is missing" -+msgstr "Прапушчаны патрэбны парамэтар" -+ -+#: src/main.c:797 -+#, c-format -+msgid "Syntax is deprecated, please prefer `%s'" -+msgstr "Сынтаксыс не найлепшы, ужывай, калі ласка, `%s'" -+ -+#: src/main.c:803 -+#, c-format -+msgid "Request `%s' is erroneous" -+msgstr "Памылковы запыт: `%s'" -+ -+#: src/main.c:903 -+#, c-format -+msgid "Recoding %s..." -+msgstr "Перакадаваньне %s..." -+ -+#: src/main.c:913 -+msgid " done\n" -+msgstr " зроблена\n" -+ -+#: src/main.c:954 -+#, c-format -+msgid " failed: %s in step `%s..%s'\n" -+msgstr " няўдалае: %s у кроку `%s..%s'\n" -+ -+#: src/main.c:961 -+#, c-format -+msgid "%s failed: %s in step `%s..%s'" -+msgstr "Няўдалае %s: %s у кроку `%s..%s'" -+ -+#: src/main.c:984 -+#, c-format -+msgid "%s in step `%s..%s'" -+msgstr "%s у кроку `%s..%s'" -+ -+#: src/names.c:335 -+#, c-format -+msgid "Charset %s already exists and is not %s" -+msgstr "Знаказбор %s ужо існуе і не зьяўляецца %s" -+ -+#: src/names.c:831 -+#, c-format -+msgid "Cannot list `%s', no names available for this charset" -+msgstr "Немагчыма адлюстраваць `%s', бо няма імёнаў для гэтага знаказбора" -+ -+#. code counter -+#. expected value for code counter -+#. insert a while line before printing -+#. Print the long table according to explode data. -+#: src/names.c:984 src/names.c:1030 -+#, c-format -+msgid "Dec Oct Hex UCS2 Mne %s\n" -+msgstr "Дзес Вас Шасн UCS2 Мнэма %s\n" -+ -+#: src/names.c:1049 -+#, c-format -+msgid "Sorry, no names available for `%s'" -+msgstr "Нажаль няма імёнаў для `%s'" -+ -+#: src/outer.c:125 -+#, c-format -+msgid "Resurfacer set more than once for `%s'" -+msgstr "Працэдура закадаваньня ўжываецца часьцей, як адзін раз для `%s'" -+ -+#: src/outer.c:133 -+#, c-format -+msgid "Unsurfacer set more than once for `%s'" -+msgstr "Працэдура раскадаваньня ўжываецца часьцей, як адзін раз для `%s'" -+ -+#: src/recode.c:115 src/recode.c:127 -+msgid "Virtual memory exhausted" -+msgstr "Скончылася віртуальная памяць" -+ -+#: src/recode.c:155 -+#, c-format, ycp-format -+msgid "Codes %3d and %3d both recode to %3d" -+msgstr "Коды %3d і %3d абодва кадуюцца ў %3d" -+ -+#: src/recode.c:169 -+#, c-format, ycp-format -+msgid "No character recodes to %3d" -+msgstr "Ніводзін знак не кадуецца ў %3d" -+ -+#: src/recode.c:170 -+msgid "Cannot invert given one-to-one table" -+msgstr "Зваротнае пераўтварэньне па дадзенай табліцы `адзін-у-адзін'" -+ -+#: src/recode.c:224 src/recode.c:236 -+#, c-format -+msgid "Following diagnostics for `%s' to `%s'" -+msgstr "Дыягностыка пераўтварэньня з `%s' у `%s'" -+ -+#: src/recode.c:229 src/recode.c:241 -+#, c-format -+msgid "Pair no. %d: <%3d, %3d> conflicts with <%3d, %3d>" -+msgstr "Пара нумар %d: <%3d, %3d> канфліктуе з <%3d, %3d>" -+ -+#: src/recode.c:272 -+msgid "Cannot complete table from set of known pairs" -+msgstr "Не магу ўтварыць табліцу з мноства вядомых пар" -+ -+#: src/recode.c:497 -+msgid "Identity recoding, not worth a table" -+msgstr "Простае перакадаваньне, якому не патрэбная табліца" -+ -+#: src/recode.c:504 -+msgid "Recoding is too complex for a mere table" -+msgstr "Перакадаваньне заскладанае для простай табліцы" -+ -+#. Print the header of the header file. -+#: src/recode.c:536 -+#, c-format -+msgid "%sConversion table generated mechanically by Free `%s' %s" -+msgstr "%sТабліца перакадаваньня, аўтаматычна створаная з дапамогай GNU `%s' %s" -+ -+#: src/recode.c:538 -+#, c-format -+msgid "%sfor sequence %s.%s" -+msgstr "%sдля пасьлядоўнасьці %s.%s" -+ -+#: src/recode.c:744 -+msgid "No table to print" -+msgstr "Няма табліцы для друку" -+ -+#: src/request.c:34 -+msgid "reversible" -+msgstr "зваротная" -+ -+#: src/request.c:36 -+#, c-format -+msgid "%s to %s" -+msgstr "%s у %s" -+ -+#: src/request.c:37 src/request.c:39 -+msgid "byte" -+msgstr "байт" -+ -+#: src/request.c:38 src/request.c:40 -+msgid "ucs2" -+msgstr "ucs2" -+ -+#: src/request.c:38 src/request.c:40 -+msgid "variable" -+msgstr "пераменная" -+ -+#: src/request.c:111 -+msgid "*Unachievable*" -+msgstr "*Недасяжна*" -+ -+#: src/request.c:113 -+msgid "*mere copy*" -+msgstr "*простая копія*" -+ -+#: src/request.c:246 -+msgid "Virtual memory exhausted!" -+msgstr "Скончылася віртуальная памяць!" -+ -+#: src/request.c:265 -+msgid "Step initialisation failed" -+msgstr "Няўдалая ініцыялізацыя кроку" -+ -+#: src/request.c:272 -+msgid "Step initialisation failed (unprocessed options)" -+msgstr "Няўдалая ініцыялізацыя кроку (неапрацаваныя опцыі)" -+ -+#: src/request.c:568 -+#, c-format -+msgid "Request: %s\n" -+msgstr "Запыт: %s\n" -+ -+#: src/request.c:720 -+#, c-format -+msgid "Shrunk to: %s\n" -+msgstr "Скарочаны да: %s\n" -+ -+#: src/request.c:823 src/request.c:932 -+#, c-format -+msgid "Unrecognised surface name `%s'" -+msgstr "Невядомае імя спосабу кадаваньня `%s'" -+ -+#: src/request.c:903 -+#, c-format -+msgid "No way to recode from `%s' to `%s'" -+msgstr "Немагчыма перакадаваць з `%s' у `%s'" -+ -+#: src/request.c:1013 -+msgid "Expecting `..' in request" -+msgstr "У запыце чакалася `..'" -+ -+#: src/task.c:826 src/task.c:1002 -+#, c-format -+msgid "Child process wait status is 0x%0.2x" -+msgstr "Статус чаканьня даччынага працэсу -- 0x%0.2x" -+ -+#: src/testdump.c:298 -+msgid "" -+"UCS2 Mne Description\n" -+"\n" -+msgstr "" -+"UCS2 Мнэма Апісаньне\n" -+"\n" ---- recode-3.6.orig/i18n/ro.po -+++ recode-3.6/i18n/ro.po -@@ -0,0 +1,517 @@ -+# Mesajele n limba romn pentru pachetul recode. -+# Copyright (C) 2003 Free Software Foundation, Inc. -+# Eugen Hoanca , 2003. -+# -+msgid "" -+msgstr "" -+"Project-Id-Version: recode-3.6\n" -+"POT-Creation-Date: 2001-01-02 22:35+0100\n" -+"PO-Revision-Date: 2003-05-04 08:45+0300\n" -+"Last-Translator: Eugen Hoanca \n" -+"Language-Team: Romanian \n" -+"MIME-Version: 1.0\n" -+"Content-Type: text/plain; charset=ISO-8859-2\n" -+"Content-Transfer-Encoding: 8bit\n" -+"Plural-Forms: nplurals=2; plural=(n != 1);\n" -+ -+#: src/main.c:142 -+msgid "No error" -+msgstr "Nici o eroare" -+ -+#: src/main.c:145 -+msgid "Non canonical input" -+msgstr "Intrare(input) non canonic" -+ -+#: src/main.c:148 -+msgid "Ambiguous output" -+msgstr "Output ambiguu" -+ -+#: src/main.c:151 -+msgid "Untranslatable input" -+msgstr "Intrare(input) intraductibil" -+ -+#: src/main.c:154 -+msgid "Invalid input" -+msgstr "Input invalid" -+ -+#: src/main.c:157 -+msgid "System detected problem" -+msgstr "Sistemul a detectat o problem" -+ -+#: src/main.c:160 -+msgid "Misuse of recoding library" -+msgstr "Folosire necorespunztoare a bibliotecii de recoding" -+ -+#: src/main.c:163 -+msgid "Internal recoding bug" -+msgstr "Bug intern de recoding" -+ -+#: src/main.c:208 -+msgid "" -+"This program is free software; you can redistribute it and/or modify\n" -+"it under the terms of the GNU General Public License as published by\n" -+"the Free Software Foundation; either version 2, or (at your option)\n" -+"any later version.\n" -+"\n" -+"This program is distributed in the hope that it will be useful,\n" -+"but WITHOUT ANY WARRANTY; without even the implied warranty of\n" -+"MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" -+"GNU General Public License for more details.\n" -+"\n" -+"You should have received a copy of the GNU General Public License\n" -+"along with this program; if not, write to the Free Software Foundation,\n" -+"Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n" -+msgstr "" -+"Acest program este free software; putei s-l redistribuii i/sau\n" -+"modificai sub termenii Licenei Publice Generale GNU publicat de\n" -+"Free Software Foundation; ori versiunea 2, sau (opiunea dumneavoastr)\n" -+"orice versiune ulterioar.\n" -+"\n" -+"Acest program este distribuit n sperana c va fi de folos,\n" -+"dar FR NICI O GARANIE; chiar fr presupusa garanie a\n" -+"VANDABILITII sau MODIFICRII PENTRU UN SCOP PRIVAT. Citii\n" -+"Licena Public General GNU pentru mai multe detalii.\n" -+"\n" -+"Ar fi trebuit s fi primit o copie a Licenei Publice Generale GNU\n" -+"mpreun cu acest program; dac nu, scriei la Free Software Foundation,\n" -+"Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n" -+ -+#: src/main.c:233 -+#, c-format -+msgid "Try `%s %s' for more information.\n" -+msgstr "ncercai `%s %s' pentru mai multe informaii.\n" -+ -+#: src/main.c:237 -+msgid "Free `recode' converts files between various character sets and surfaces.\n" -+msgstr "`recode' este free i convertete fiiere ntre diferite seturi de caractere i nfiri(surfaces).\n" -+ -+#: src/main.c:241 -+#, c-format -+msgid "" -+"\n" -+"Usage: %s [OPTION]... [ [CHARSET] | REQUEST [FILE]... ]\n" -+msgstr "" -+"\n" -+"Folosire: %s [OPIUNE]... [ [SET_CARACTERE] | CERERE [FIIER]... ]\n" -+ -+#: src/main.c:244 -+msgid "" -+"\n" -+"If a long option shows an argument as mandatory, then it is mandatory\n" -+"for the equivalent short option also. Similarly for optional arguments.\n" -+msgstr "" -+"\n" -+"Dac o opiune lung afieaz un parametru obligatoriu, atunci este\n" -+"obligatoriu i pentru opiunea scurt echivalent. Similar i n cazul\n" -+"parametrilor opionali.\n" -+ -+#: src/main.c:250 -+msgid "" -+"\n" -+"Listings:\n" -+" -l, --list[=FORMAT] list one or all known charsets and aliases\n" -+" -k, --known=PAIRS restrict charsets according to known PAIRS list\n" -+" -h, --header[=[LN/]NAME] write table NAME on stdout using LN, then exit\n" -+" -F, --freeze-tables write out a C module holding all tables\n" -+" -T, --find-subsets report all charsets being subset of others\n" -+" -C, --copyright display Copyright and copying conditions\n" -+" --help display this help and exit\n" -+" --version output version information and exit\n" -+msgstr "" -+"\n" -+"Listri:\n" -+" -l, --list[=FORMAT] listeaz unul sau toate seturile de caractere i aliasurile cunoscute\n" -+" -k, --known=PERECHI restricioneaza seturile de caractere potrivit listei de PERECHIcunoscute\n" -+" -h, --header[=[LN/]NUME] scrie tabelul NUME la stdout folosind LN, apoi termin\n" -+" -F, --freeze-tables scrie un modul C ce pstreaz toate tabelele\n" -+" -T, --find-subsets raporteaz toate seturile de caractere care sunt subseturi ale altora\n" -+" -C, --copyright afieaz Copyright i condiii de copiere\n" -+" --help afieaz acest ajutor i termin\n" -+" --version afieaz informaii versiune i termin\n" -+ -+#: src/main.c:263 -+msgid "" -+"\n" -+"Operation modes:\n" -+" -v, --verbose explain sequence of steps and report progress\n" -+" -q, --quiet, --silent inhibit messages about irreversible recodings\n" -+" -f, --force force recodings even when not reversible\n" -+" -t, --touch touch the recoded files after replacement\n" -+" -i, --sequence=files use intermediate files for sequencing passes\n" -+" --sequence=memory use memory buffers for sequencing passes\n" -+msgstr "" -+"\n" -+"Moduri operaie:\n" -+" -v, --verbose explic secvena de pai i raporteaz desfurarea\n" -+" -q, --quiet, --silent suprim mesajele despre recodinguri ireversibile\n" -+" -f, --force foreaz recodingurile chiar i cnd nu sunt reversibile\n" -+" -t, --touch efectueaz `touch' pe fiierele recodate dup nlocuire\n" -+" -i, --sequence=files folosete fiiere intermediare pentru treceri secveniale\n" -+" --sequence=memory folosete bufferele de memorie pentru trecerile secveniale\n" -+ -+#: src/main.c:275 -+msgid " -p, --sequence=pipe use pipe machinery for sequencing passes\n" -+msgstr " -p, --sequence=pipe folosete mecanismul de `pipe' pentru treceri secveniale\n" -+ -+#: src/main.c:280 -+msgid " -p, --sequence=pipe same as -i (on this system)\n" -+msgstr " -p, --sequence=pipe la fel ca -i(pe acest system)\n" -+ -+#: src/main.c:285 -+msgid "" -+"\n" -+"Fine tuning:\n" -+" -s, --strict use strict mappings, even loose characters\n" -+" -d, --diacritics convert only diacritics or alike for HTML/LaTeX\n" -+" -S, --source[=LN] limit recoding to strings and comments as for LN\n" -+" -c, --colons use colons instead of double quotes for diaeresis\n" -+" -g, --graphics approximate IBMPC rulers by ASCII graphics\n" -+" -x, --ignore=CHARSET ignore CHARSET while choosing a recoding path\n" -+msgstr "" -+"\n" -+"Setri de precizie(fine tuning):\n" -+" -s, --strict folosete mapri stricte, chiar dac se pierd caractere\n" -+" -d, --diacritics convertete doar diacritice sau asemntor pentru HTML/LaTeX\n" -+" -S, --source[=LN] limiteaz recodinguri n iruri i comentarii ca pentru LN\n" -+" -c, --colons folosete coloane n loc de ghilimele pentru diaeresis\n" -+" -g, --graphics aproximeaz rigle(rulers) IBMPC prin grafic ASCII\n" -+" -x, --ignore=SET_CARACTERE ignor SET_CARACTERE n alegerea cilor de recoding\n" -+ -+#: src/main.c:296 -+msgid "" -+"\n" -+"Option -l with no FORMAT nor CHARSET list available charsets and surfaces.\n" -+"FORMAT is `decimal', `octal', `hexadecimal' or `full' (or one of `dohf').\n" -+msgstr "" -+"\n" -+"Opiunea -l fr FORMAT sau SET_CARACTERE listeaz seturile de caractere i\n" -+"nfirile(surfaces) disponibile. FORMAT is `decimal', `octal',\n" -+"`hexadecimal' sau `full' (sau unul din `dohf').\n" -+ -+#: src/main.c:302 -+msgid "" -+"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the locale\n" -+"dependent encoding, determined by LC_ALL, LC_CTYPE, LANG.\n" -+msgstr "" -+"Dac DEFAULT_CHARSET nu este setat n mediu (environment) CHARSET va fi encodarea specific\n" -+"determinat de LC_ALL, LC_CTYPE, LANG.\n" -+ -+#: src/main.c:307 -+msgid "" -+"With -k, possible before charsets are listed for the given after CHARSET,\n" -+"both being tabular charsets, with PAIRS of the form `BEF1:AFT1,BEF2:AFT2,...'\n" -+"and BEFs and AFTs being codes are given as decimal numbers.\n" -+msgstr "" -+"Cu -k, seturile de caractere posibile dinainte sunt listate dup\n" -+"SET_CARACTERE specificat, ambele fiind seturi de caractere tabulare,\n" -+"cu PERECHI de forma `BEF1:AFT1,BEF2: AFT2,...'\n" -+"unde BEF i AFT sunt coduri ce trebuie date ca numere zecimale.\n" -+ -+#: src/main.c:312 -+msgid "LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" -+msgstr "LN e un limbaj de programare, poate fi `c', `perl' sau `po'; `c' este implicit.\n" -+ -+#: src/main.c:315 -+msgid "" -+"\n" -+"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is ENCODING[..ENCODING]...\n" -+"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like BEFORE..AFTER,\n" -+"with BEFORE and AFTER being charsets. An omitted CHARSET implies the usual\n" -+"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a /\n" -+"with an empty surface name means no surfaces at all. See the manual.\n" -+msgstr "" -+"\n" -+"CERERE(REQUEST) este SUBCERERE[,SUBCERERE]...; SUBCERERE este ENCODING[..ENCODING]...\n" -+"ENCODING is [SET_CARACTERE][/[NFIARE]]...; CERERE se prezint ca\n" -+"PRECEDENT..ULTERIOR, cu PRECEDENT i ULTERIOR fiind seturi de caractere.\n" -+"Un SET_CARACTERE omis sugereaz setul de caractere obinuit; o [/NFIARE]\n" -+"omis reprezint infiarea sugerat pentru SET_CARACTERE; un /\n" -+"fr nume de nfiare nseamn fr nfiri. Vedei manualul.\n" -+ -+#: src/main.c:323 -+msgid "" -+"\n" -+"If none of -i and -p are given, presume -p if no FILE, else -i.\n" -+"Each FILE is recoded over itself, destroying the original. If no\n" -+"FILE is specified, then act as a filter and recode stdin to stdout.\n" -+msgstr "" -+"\n" -+"Dac nu sunt dai nici unul dintre-i i -p, se presupune -p dac nu FIIER,\n" -+"altfel -i. Fiecare FIIER este recodat(recoded) peste sine, originalul\n" -+"pierzndu-se. Dac nu este specificat FIIER, atunci se comport ca un\n" -+"filtru i recodeaz stdin n stdout.\n" -+ -+#: src/main.c:329 -+msgid "" -+"\n" -+"Report bugs to .\n" -+msgstr "" -+"\n" -+"Raportai bug-urile la .\n" -+ -+#: src/main.c:430 -+#, c-format -+msgid "Sequence `%s' is ambiguous" -+msgstr "Secvena `%s' este ambigu" -+ -+#: src/main.c:434 -+#, c-format -+msgid "Sequence `%s' is unknown" -+msgstr "Secvena `%s' nu este cunoscut" -+ -+#: src/main.c:464 src/main.c:522 -+#, c-format -+msgid "Language `%s' is ambiguous" -+msgstr "Limba `%s' este ambigu" -+ -+#. -1 -+#: src/main.c:468 src/main.c:526 -+#, c-format -+msgid "Language `%s' is unknown" -+msgstr "Limba `%s' nu este cunoscut" -+ -+#: src/main.c:560 -+#, c-format -+msgid "Format `%s' is ambiguous" -+msgstr "Formatul `%s' este ambiguu" -+ -+#: src/main.c:564 -+#, c-format -+msgid "Format `%s' is unknown" -+msgstr "Formatul `%s' nu este cunoscut" -+ -+#: src/main.c:621 -+msgid "Written by Franc,ois Pinard .\n" -+msgstr "Scris de Franc,ois Pinard .\n" -+ -+#: src/main.c:624 -+msgid "" -+"\n" -+"Copyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" -+msgstr "" -+"\n" -+"Copyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" -+ -+#: src/main.c:628 -+msgid "" -+"This is free software; see the source for copying conditions. There is NO\n" -+"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" -+msgstr "" -+"Acesta este free software; vedei sursele pentur condiiile de copiere.\n" -+"NU exist NICI o garanie; nici mcar pentru VANDABILITATE sau MODIFICARE\n" -+"PENTRU UN SCOP PRIVAT.\n" -+ -+#: src/main.c:669 -+#, c-format -+msgid "Symbol `%s' is unknown" -+msgstr "Simbolul `%s' nu este cunoscut" -+ -+#: src/main.c:709 src/main.c:723 -+#, c-format -+msgid "Charset `%s' is unknown or ambiguous" -+msgstr "Setul de caractere `%s' nu este cunoscut sau este ambiguu" -+ -+#: src/main.c:754 -+msgid "Required argument is missing" -+msgstr "Lipsete parametrul solicitat" -+ -+#: src/main.c:797 -+#, c-format -+msgid "Syntax is deprecated, please prefer `%s'" -+msgstr "Sintax nvechit(deprecated), utilizai `%s'" -+ -+#: src/main.c:803 -+#, c-format -+msgid "Request `%s' is erroneous" -+msgstr "Cererea `%s' este greit" -+ -+#: src/main.c:903 -+#, c-format -+msgid "Recoding %s..." -+msgstr "Recodare %s..." -+ -+#: src/main.c:913 -+msgid " done\n" -+msgstr " finalizat\n" -+ -+#: src/main.c:954 -+#, c-format -+msgid " failed: %s in step `%s..%s'\n" -+msgstr " euat: %s n pasul `%s..%s'\n" -+ -+#: src/main.c:961 -+#, c-format -+msgid "%s failed: %s in step `%s..%s'" -+msgstr "%s a euat: %s n pasul `%s..%s'" -+ -+#: src/main.c:984 -+#, c-format -+msgid "%s in step `%s..%s'" -+msgstr "%s n pasul `%s..%s'" -+ -+#: src/names.c:335 -+#, c-format -+msgid "Charset %s already exists and is not %s" -+msgstr "Setul de caractere %s exist deja i nu este %s" -+ -+#: src/names.c:831 -+#, c-format -+msgid "Cannot list `%s', no names available for this charset" -+msgstr "Nu se poate lista `%s', nici un nume disponibil pentru acest set de caractere" -+ -+#. code counter -+#. expected value for code counter -+#. insert a while line before printing -+#. Print the long table according to explode data. -+#: src/names.c:984 src/names.c:1030 -+#, c-format -+msgid "Dec Oct Hex UCS2 Mne %s\n" -+msgstr "Zec Oct Hex UCS2 Mne %s\n" -+ -+#: src/names.c:1049 -+#, c-format -+msgid "Sorry, no names available for `%s'" -+msgstr "Ne pare ru, nici un nume disponibil pentru `%s'" -+ -+#: src/outer.c:125 -+#, c-format -+msgid "Resurfacer set more than once for `%s'" -+msgstr "Schimbtorul de nfiri(resurfacer) setat mai multe dect o dat pentru `%s'" -+ -+#: src/outer.c:133 -+#, c-format -+msgid "Unsurfacer set more than once for `%s'" -+msgstr "Schimbtorul de nfiri(unsurfacer) setat mai mult dect o dat pentru `%s'" -+ -+#: src/recode.c:115 src/recode.c:127 -+msgid "Virtual memory exhausted" -+msgstr "Memorie virtual plin" -+ -+#: src/recode.c:155 -+#, c-format, ycp-format -+msgid "Codes %3d and %3d both recode to %3d" -+msgstr "Codurile %3d i %3d ambele recodate n %3d" -+ -+#: src/recode.c:169 -+#, c-format, ycp-format -+msgid "No character recodes to %3d" -+msgstr "Nici un caracter recodat n %3d" -+ -+#: src/recode.c:170 -+msgid "Cannot invert given one-to-one table" -+msgstr "Nu se poate inversa tabela unu la unu dat" -+ -+#: src/recode.c:224 src/recode.c:236 -+#, c-format -+msgid "Following diagnostics for `%s' to `%s'" -+msgstr "Se urmresc diagnosticele pentru `%s' n `%s'" -+ -+#: src/recode.c:229 src/recode.c:241 -+#, c-format -+msgid "Pair no. %d: <%3d, %3d> conflicts with <%3d, %3d>" -+msgstr "Perechea numrul %d <%3d, %3d> n conflict cu <%3d, %3d>" -+ -+#: src/recode.c:272 -+msgid "Cannot complete table from set of known pairs" -+msgstr "Nu s-a putut completa tabelul din setul de perechi cunoscute" -+ -+#: src/recode.c:497 -+msgid "Identity recoding, not worth a table" -+msgstr "Recodare de identitate, nu necesit tabel" -+ -+#: src/recode.c:504 -+msgid "Recoding is too complex for a mere table" -+msgstr "Recodarea este prea complex pentru un tabel simplu" -+ -+#. Print the header of the header file. -+#: src/recode.c:536 -+#, c-format -+msgid "%sConversion table generated mechanically by Free `%s' %s" -+msgstr "%sTabelul de conversie generat mecanic de `%s' Free %s" -+ -+#: src/recode.c:538 -+#, c-format -+msgid "%sfor sequence %s.%s" -+msgstr "%s pentru secvena %s.%s" -+ -+#: src/recode.c:744 -+msgid "No table to print" -+msgstr "Nu exist tabel de tiprit" -+ -+#: src/request.c:34 -+msgid "reversible" -+msgstr "reversibil" -+ -+#: src/request.c:36 -+#, c-format -+msgid "%s to %s" -+msgstr "%s n %s" -+ -+#: src/request.c:37 src/request.c:39 -+msgid "byte" -+msgstr "octet" -+ -+#: src/request.c:38 src/request.c:40 -+msgid "ucs2" -+msgstr "ucs2" -+ -+#: src/request.c:38 src/request.c:40 -+msgid "variable" -+msgstr "variabil()" -+ -+#: src/request.c:111 -+msgid "*Unachievable*" -+msgstr "*Nendeplinibil*" -+ -+#: src/request.c:113 -+msgid "*mere copy*" -+msgstr "*copiere-simpl*" -+ -+#: src/request.c:246 -+msgid "Virtual memory exhausted!" -+msgstr "Memorie virtual plin!" -+ -+#: src/request.c:265 -+msgid "Step initialisation failed" -+msgstr "Pas de iniializare euat" -+ -+#: src/request.c:272 -+msgid "Step initialisation failed (unprocessed options)" -+msgstr "Pas de iniializare euat (opiuni neprocesate)" -+ -+#: src/request.c:568 -+#, c-format -+msgid "Request: %s\n" -+msgstr "Cerere: %s\n" -+ -+#: src/request.c:720 -+#, c-format -+msgid "Shrunk to: %s\n" -+msgstr "Micorat la: %s\n" -+ -+#: src/request.c:823 src/request.c:932 -+#, c-format -+msgid "Unrecognised surface name `%s'" -+msgstr "Nume nfiare necunoscut: `%s'" -+ -+#: src/request.c:903 -+#, c-format -+msgid "No way to recode from `%s' to `%s'" -+msgstr "Nici o ans de recodare din `%s' n `%s'" -+ -+#: src/request.c:1013 -+msgid "Expecting `..' in request" -+msgstr "Se ateapt `..' n cerere" -+ -+#: src/task.c:826 src/task.c:1002 -+#, c-format -+msgid "Child process wait status is 0x%0.2x" -+msgstr "Starea de ateptare a procesului derivat(child) este 0x%0.2x" -+ -+#: src/testdump.c:298 -+msgid "" -+"UCS2 Mne Description\n" -+"\n" -+msgstr "" -+"UCS2 Mne Descriere\n" -+"\n" ---- recode-3.6.orig/i18n/ca.po -+++ recode-3.6/i18n/ca.po -@@ -0,0 +1,578 @@ -+# Catalan translation of GNU recode. -+# Copyright 2002, 2003 Free Software Foundation, Inc. -+# Jordi Mallach , 2002, 2003. -+# -+msgid "" -+msgstr "" -+"Project-Id-Version: recode 3.6\n" -+"POT-Creation-Date: 2001-01-02 22:35+0100\n" -+"PO-Revision-Date: 2003-08-30 16:48+0200\n" -+"Last-Translator: Jordi Mallach \n" -+"Language-Team: Catalan \n" -+"MIME-Version: 1.0\n" -+"Content-Type: text/plain; charset=ISO-8859-1\n" -+"Content-Transfer-Encoding: 8bit\n" -+"X-Generator: KBabel 0.9.6\n" -+ -+#: src/main.c:142 -+msgid "No error" -+msgstr "No hi ha cap error" -+ -+#: src/main.c:145 -+msgid "Non canonical input" -+msgstr "L'entrada no s cannica" -+ -+#: src/main.c:148 -+msgid "Ambiguous output" -+msgstr "L'eixida s ambigua" -+ -+#: src/main.c:151 -+msgid "Untranslatable input" -+msgstr "L'entrada no s convertible" -+ -+#: src/main.c:154 -+msgid "Invalid input" -+msgstr "L'entrada s invlida" -+ -+#: src/main.c:157 -+msgid "System detected problem" -+msgstr "El sistema ha detectat un problema" -+ -+# El verb "to misuse" vol dir "desaprofitar" o tamb "fer mal s". Crec -+# que en aquest cas la traducci ms correcta seria: "Mal s de la -+# biblioteca de recodificaci" o, si es prefereix, "s incorrecte de -+# la biblioteca de recodificaci". mvs -+# B, les teues frases sn en "indi", que diem Ivan i jo... -+# es a dir, no sn frases completes. No veig massa diferncia entre -+# s incorrecte de la biblioteca de recodificaci i la forma que he -+# fet servir jo... jm -+#: src/main.c:160 -+msgid "Misuse of recoding library" -+msgstr "L's de la biblioteca de recodificaci s incorrecte" -+ -+#: src/main.c:163 -+msgid "Internal recoding bug" -+msgstr "S'ha produt un error intern de recodificaci" -+ -+#: src/main.c:208 -+msgid "" -+"This program is free software; you can redistribute it and/or modify\n" -+"it under the terms of the GNU General Public License as published by\n" -+"the Free Software Foundation; either version 2, or (at your option)\n" -+"any later version.\n" -+"\n" -+"This program is distributed in the hope that it will be useful,\n" -+"but WITHOUT ANY WARRANTY; without even the implied warranty of\n" -+"MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" -+"GNU General Public License for more details.\n" -+"\n" -+"You should have received a copy of the GNU General Public License\n" -+"along with this program; if not, write to the Free Software Foundation,\n" -+"Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.\n" -+msgstr "" -+"A s programari lliure; podeu redistribuir-lo i/o modificar-lo\n" -+"sota els termes de la Llicncia Pblica General GNU tal i com ha estat\n" -+"publicada per la Free Software Foundation; b sota la versi 2 de la\n" -+"Llicncia o b (si ho preferiu) sota qualsevol versi posterior.\n" -+"\n" -+"Aquest programa es distribueix amb l'expectativa de que ser til,\n" -+"per SENSE CAP GARANTIA; ni tan sols la garantia implcita de\n" -+"COMERCIABILITAT o ADEQUACI PER UN PROPSIT PARTICULAR. Vegeu la\n" -+"Llicncia Pblica General GNU per obtenir-ne ms detalls.\n" -+"\n" -+"Haureu d'haver rebut una cpia de la Llicncia Pblica General GNU\n" -+"juntament amb aquest programa; en cas contrari, escriviu a la Free\n" -+"Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,\n" -+"MA 02111, USA.\n" -+ -+#: src/main.c:233 -+#, c-format -+msgid "Try `%s %s' for more information.\n" -+msgstr "Proveu %s %s per a obtindre ms informaci.\n" -+ -+# On posa "entre varios", a no s un castellanisme?. -+# Em sembla que seria ms correcte posar "diversos" en voltes de "varios". mvs -+# I tant... jm -+#: src/main.c:237 -+msgid "Free `recode' converts files between various character sets and surfaces.\n" -+msgstr "El recode lliure converteix fitxers entre diversos jocs de carcters i superfcies.\n" -+ -+#: src/main.c:241 -+#, c-format -+msgid "" -+"\n" -+"Usage: %s [OPTION]... [ [CHARSET] | REQUEST [FILE]... ]\n" -+msgstr "" -+"\n" -+"Forma d's: %s [OPCI]... [ [JOC DE CARCTERS] | PETICI [FITXER]... ]\n" -+ -+# Aquest programa s'executa en terminal o en un -+# servidor x?. Si s per a una terminal potser caldria respectar -+# un salt de lnia fins la columna nm. 70. S'edita el missatge -+# a un editor de textos que aplique salt de lnia automticament, -+# i el copiem al programa traductor (si feu servir kbabel, no -+# oblideu d'afegir "\n" al final de cada lnia). mvs -+# S, s en mode text, i corregit. El kbabel us fa ficar el salt -+# de lnia a ma? Qu mal... :) jm -+#: src/main.c:244 -+msgid "" -+"\n" -+"If a long option shows an argument as mandatory, then it is mandatory\n" -+"for the equivalent short option also. Similarly for optional arguments.\n" -+msgstr "" -+"\n" -+"Si una opci llarga mostra un argument com requerit, aleshores tamb s\n" -+"requerit per a l'opci curta equivalent, i de forma similar per als\n" -+"arguments opcionals.\n" -+ -+# Que tal si traduim "copyright", per "drets reservats"?. -+# Tamb on posa "copying conditions", aix no vol dir -+# "condicions de l'autor" en voltes de "condicions de cpia"? mvs -+# copyright != drets reservats, aix seria all rights reserved -+# o similar. Crec que copying conditions s l'evident: condicions -+# de cpia. El tema de traduir o no copyright s'ha discutit alguna -+# vegada si no recorde mal, i sempre s'ha preferit no traduir-ho. jm -+#: src/main.c:250 -+msgid "" -+"\n" -+"Listings:\n" -+" -l, --list[=FORMAT] list one or all known charsets and aliases\n" -+" -k, --known=PAIRS restrict charsets according to known PAIRS list\n" -+" -h, --header[=[LN/]NAME] write table NAME on stdout using LN, then exit\n" -+" -F, --freeze-tables write out a C module holding all tables\n" -+" -T, --find-subsets report all charsets being subset of others\n" -+" -C, --copyright display Copyright and copying conditions\n" -+" --help display this help and exit\n" -+" --version output version information and exit\n" -+msgstr "" -+"\n" -+"Llistats:\n" -+" -l, --list[=FORMAT] llista un o tots els jocs de carcters i lies\n" -+" coneguts\n" -+" -k, --known=PARELLES limita els jocs de carcters d'acord amb la\n" -+" llista de PARELLES conegudes\n" -+" -h, --header=[={LN/}NOM} mostra la taula NOM a l'eixida estndard\n" -+" utilitzant LN, i surt a continuaci\n" -+" -F, --freeze-tables mostra un mdul de C contenint totes les taules\n" -+" -T, --find-subsets informa de tots els jocs de carcters que sn\n" -+" subconjunts d'altres\n" -+" -C, --copyright mostra el Copyright i les condicions de cpia\n" -+" --help mostra aquesta ajuda i ix\n" -+" --version mostra la informaci sobre la versi i ix\n" -+ -+# Una "passa" no s un "pas". "Passa" es un sinnim de -+# epidmia. Per tant, hauria de posar-se "passos" i no "passes". -+# Concretant: -+# "step" s "pas" ("passos") o "iteraci" -+# "pass" s "passi" ("passis"), sinnim de perms -+# ("cinema session pass" = "passi de sessi de cinema"). mvs -+# Uff. Aquesta errada l'arrossegue en altres traduccions, aleshores. -+# Caldr fer una bonica sessi de greps. jm -+#: src/main.c:263 -+msgid "" -+"\n" -+"Operation modes:\n" -+" -v, --verbose explain sequence of steps and report progress\n" -+" -q, --quiet, --silent inhibit messages about irreversible recodings\n" -+" -f, --force force recodings even when not reversible\n" -+" -t, --touch touch the recoded files after replacement\n" -+" -i, --sequence=files use intermediate files for sequencing passes\n" -+" --sequence=memory use memory buffers for sequencing passes\n" -+msgstr "" -+"\n" -+"Modes d'operaci:\n" -+" -v, --verbose explica la seqncia de passos i informa del progrs\n" -+" -q, --quiet, --silent inhabilita els missatges sobre recodificacions\n" -+" irreversibles\n" -+" -f, --force fora les recodificacions incls si sn irreversibles\n" -+" -t, --touch toca els fitxers recodificats desprs del reempla\n" -+" -i, --sequence=files utilitza fitxers intermedis per als passos\n" -+" --sequence=memory utilitza bfers de memria per als passos\n" -+ -+# Vegeu la mateixa observaci que vaig fer al missatge nm 15. mvs -+#: src/main.c:275 -+msgid " -p, --sequence=pipe use pipe machinery for sequencing passes\n" -+msgstr "" -+" -p, --sequence=pipe utilitza conductes per als passos de\n" -+" seqncies\n" -+ -+#: src/main.c:280 -+msgid " -p, --sequence=pipe same as -i (on this system)\n" -+msgstr " -p, --sequence=pipe el mateix que -i (en aquest sistema)\n" -+ -+# A l'opci "-g" has obviat la paraula "rules", que -+# voldria dir "normes". Aix, "IBMPC rulers" voldria dir -+# "normes IBMPC", encara que no estic del tot segur. mvs -+# No, he tradut rules per grfics. Es refereix als carcters -+# amb els que es dibuixen les caixetes i tal. jm -+#: src/main.c:285 -+msgid "" -+"\n" -+"Fine tuning:\n" -+" -s, --strict use strict mappings, even loose characters\n" -+" -d, --diacritics convert only diacritics or alike for HTML/LaTeX\n" -+" -S, --source[=LN] limit recoding to strings and comments as for LN\n" -+" -c, --colons use colons instead of double quotes for diaeresis\n" -+" -g, --graphics approximate IBMPC rulers by ASCII graphics\n" -+" -x, --ignore=CHARSET ignore CHARSET while choosing a recoding path\n" -+msgstr "" -+"\n" -+"Ajustament afinat:\n" -+" -s, --strict utilitza coincidncies estrictes, encara que es\n" -+" perden carcters\n" -+" -d, --diacritics converteix noms els accents o pareguts per a\n" -+" HTML/LaTeX\n" -+" -S, --source[=LN] limita la recodificaci a cadenes i comentaris\n" -+" segons LN\n" -+" -c, --colons utilitza dos punts en comptes de cometes dobles\n" -+" per a la diresis\n" -+" -g, --graphics aproxima els grfics IBMPC amb grfics ASCII\n" -+" -x, --ignore=JOC descarta JOC al escollir un cam de recodificaci\n" -+ -+# "L'opci "-l" sense cap FORMAT ni JOC DE CARACTERS llista..." mvs -+# Fet. jm -+#: src/main.c:296 -+msgid "" -+"\n" -+"Option -l with no FORMAT nor CHARSET list available charsets and surfaces.\n" -+"FORMAT is `decimal', `octal', `hexadecimal' or `full' (or one of `dohf').\n" -+msgstr "" -+"\n" -+"L'opci -l sense cap FORMAT o JOC DE CARCTERS llista els jocs de carcters\n" -+"i facetes disponibles. FORMAT s decimal, octal, hexadecimal o full\n" -+"(o un de dohf).\n" -+ -+# "... de la que depn...", aix s un castellanisme. -+# El correcte s dir: "... de la qual depn...", o -+# "... de qu depn...", (ull!: amb laccent tancat). mvs -+# Oops. Volia haver ficat de la qual. jm -+#: src/main.c:302 -+msgid "" -+"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the locale\n" -+"dependent encoding, determined by LC_ALL, LC_CTYPE, LANG.\n" -+msgstr "" -+"A no ser que s'establisca DEFAULT_CHARSET a l'entorn, el valor\n" -+"predeterminat de CHARSET s la codificaci de la qual depen el locale,\n" -+"determinat per LC_ALL, LC_CTYPE, LANG.\n" -+ -+#: src/main.c:307 -+msgid "" -+"With -k, possible before charsets are listed for the given after CHARSET,\n" -+"both being tabular charsets, with PAIRS of the form `BEF1:AFT1,BEF2:AFT2,...'\n" -+"and BEFs and AFTs being codes are given as decimal numbers.\n" -+msgstr "" -+"Amb -k, es mostren els possibles jocs de carcters abans per al JOC\n" -+"desprs donat, sent ambds jocs de carcters tabulars, amb PARELLES de la\n" -+"forma ABAN1:DESP1,ABAN2:DESP2,... i sent els ABAN i DESP codis donats com\n" -+"nmeros decimals.\n" -+ -+#: src/main.c:312 -+msgid "LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" -+msgstr "LN s un llenguatge, pot ser c, perl o po; c s el predeterminat.\n" -+ -+#: src/main.c:315 -+msgid "" -+"\n" -+"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is ENCODING[..ENCODING]...\n" -+"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like BEFORE..AFTER,\n" -+"with BEFORE and AFTER being charsets. An omitted CHARSET implies the usual\n" -+"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a /\n" -+"with an empty surface name means no surfaces at all. See the manual.\n" -+msgstr "" -+"\n" -+"PETICI s SUBPETICI[,SUBPETICI]...;\n" -+"SUBPETICI s CODIFICACI[..CODIFICACI]...\n" -+"CODIFICACI s [JOC DE CARCTERS[/[FACETA]]...;\n" -+"PETICI sovint s ABANS..DESPRS,\n" -+"amb ABANS i DESPRS sent jocs de carcters. Un JOC DE CARCTERS oms\n" -+"implica el joc de carcters habitual; una [/FACETA] omesa vol dir la faceta\n" -+"implcita per al JOC DE CARCTERS; un / amb una faceta buida vol dir que no\n" -+"hi ha faceta. Vegeu el manual.\n" -+ -+#: src/main.c:323 -+msgid "" -+"\n" -+"If none of -i and -p are given, presume -p if no FILE, else -i.\n" -+"Each FILE is recoded over itself, destroying the original. If no\n" -+"FILE is specified, then act as a filter and recode stdin to stdout.\n" -+msgstr "" -+"\n" -+"Si no es dona cap de -i i -p, es suposa -p si no hi ha cap FITXER, si no, -i.\n" -+"Cada FITXER es recodifica damunt d'ell mateix, destrunt l'original. Si no\n" -+"s'especifica cap FITXER, aleshores actua com un filtre i recodifica\n" -+"l'entrada estndard a l'eixida estndard.\n" -+ -+#: src/main.c:329 -+msgid "" -+"\n" -+"Report bugs to .\n" -+msgstr "" -+"\n" -+"Informeu dels errors a .\n" -+ -+#: src/main.c:430 -+#, c-format -+msgid "Sequence `%s' is ambiguous" -+msgstr "La seqncia %s s ambgua" -+ -+#: src/main.c:434 -+#, c-format -+msgid "Sequence `%s' is unknown" -+msgstr "La seqncia %s s desconeguda" -+ -+#: src/main.c:464 src/main.c:522 -+#, c-format -+msgid "Language `%s' is ambiguous" -+msgstr "El llenguatge %s s ambigu" -+ -+#. -1 -+#: src/main.c:468 src/main.c:526 -+#, c-format -+msgid "Language `%s' is unknown" -+msgstr "El llenguatge %s s desconegut" -+ -+#: src/main.c:560 -+#, c-format -+msgid "Format `%s' is ambiguous" -+msgstr "El format %s s ambigu" -+ -+#: src/main.c:564 -+#, c-format -+msgid "Format `%s' is unknown" -+msgstr "El format %s s desconegut" -+ -+#: src/main.c:621 -+msgid "Written by Franc,ois Pinard .\n" -+msgstr "Escrit per Franois Pinard .\n" -+ -+#: src/main.c:624 -+msgid "" -+"\n" -+"Copyright (C) 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" -+msgstr "" -+"\n" -+"Copyright 1990, 92, 93, 94, 96, 97, 99 Free Software Foundation, Inc.\n" -+ -+#: src/main.c:628 -+msgid "" -+"This is free software; see the source for copying conditions. There is NO\n" -+"warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n" -+msgstr "" -+"A s Programari Lliure; vegeu el codi font per les condicions de\n" -+"cpia. NO hi ha CAP garantia; ni tan sols de COMERCIABILITAT o ADEQUACI\n" -+"PER UN PROPSIT DETERMINAT.\n" -+ -+#: src/main.c:669 -+#, c-format -+msgid "Symbol `%s' is unknown" -+msgstr "El smbol %s s desconegut" -+ -+#: src/main.c:709 src/main.c:723 -+#, c-format -+msgid "Charset `%s' is unknown or ambiguous" -+msgstr "El joc de carcters %s s desconegut o ambigu" -+ -+#: src/main.c:754 -+msgid "Required argument is missing" -+msgstr "Manca un argument requerit" -+ -+#: src/main.c:797 -+#, c-format -+msgid "Syntax is deprecated, please prefer `%s'" -+msgstr "Aquesta sintaxi s desaconsellada, si us plau, utilitzeu %s" -+ -+#: src/main.c:803 -+#, c-format -+msgid "Request `%s' is erroneous" -+msgstr "La petici %s s errnia" -+ -+#: src/main.c:903 -+#, c-format -+msgid "Recoding %s..." -+msgstr "S'est recodificant %s..." -+ -+#: src/main.c:913 -+msgid " done\n" -+msgstr " fet\n" -+ -+#: src/main.c:954 -+#, c-format -+msgid " failed: %s in step `%s..%s'\n" -+msgstr " ha fallat: %s al pas %s..%s\n" -+ -+#: src/main.c:961 -+#, c-format -+msgid "%s failed: %s in step `%s..%s'" -+msgstr "%s ha fallat: %s al pas %s..%s" -+ -+#: src/main.c:984 -+#, c-format -+msgid "%s in step `%s..%s'" -+msgstr "%s al pas %s..%s" -+ -+#: src/names.c:335 -+#, c-format -+msgid "Charset %s already exists and is not %s" -+msgstr "El joc de carcters %s ja existeix i no s %s" -+ -+#: src/names.c:831 -+#, c-format -+msgid "Cannot list `%s', no names available for this charset" -+msgstr "" -+"No es pot llistar %s, no hi ha noms disponibles per a aquest\n" -+"joc de carcters" -+ -+#. code counter -+#. expected value for code counter -+#. insert a while line before printing -+#. Print the long table according to explode data. -+#: src/names.c:984 src/names.c:1030 -+#, c-format -+msgid "Dec Oct Hex UCS2 Mne %s\n" -+msgstr "Dec Oct Hex UCS2 Mne %s\n" -+ -+#: src/names.c:1049 -+#, c-format -+msgid "Sorry, no names available for `%s'" -+msgstr "No hi ha noms disponibles per a %s" -+ -+#: src/outer.c:125 -+#, c-format -+msgid "Resurfacer set more than once for `%s'" -+msgstr "S'ha establert resurfacer ms d'una vegada per a %s" -+ -+#: src/outer.c:133 -+#, c-format -+msgid "Unsurfacer set more than once for `%s'" -+msgstr "S'ha establert unsurfacer ms d'una vegada per a %s" -+ -+#: src/recode.c:115 src/recode.c:127 -+msgid "Virtual memory exhausted" -+msgstr "La memria virtual s'ha exhaurit" -+ -+#: src/recode.c:155 -+#, c-format, ycp-format -+msgid "Codes %3d and %3d both recode to %3d" -+msgstr "Els codis %3d i %3d es recodifiquen ambds a %3d" -+ -+#: src/recode.c:169 -+#, c-format, ycp-format -+msgid "No character recodes to %3d" -+msgstr "Cap carcter es recodifica a %3d" -+ -+#: src/recode.c:170 -+msgid "Cannot invert given one-to-one table" -+msgstr "No es pot invertir la taula un-a-un donada" -+ -+#: src/recode.c:224 src/recode.c:236 -+#, c-format -+msgid "Following diagnostics for `%s' to `%s'" -+msgstr "S'estan seguint els diagnstics per %s a %s" -+ -+#: src/recode.c:229 src/recode.c:241 -+#, c-format -+msgid "Pair no. %d: <%3d, %3d> conflicts with <%3d, %3d>" -+msgstr "La parella no. %d: <%3d, %3d> s conflictiu amb <%3d, %3d>" -+ -+#: src/recode.c:272 -+msgid "Cannot complete table from set of known pairs" -+msgstr "No es pot completar la taula des del joc de parelles conegudes" -+ -+#: src/recode.c:497 -+msgid "Identity recoding, not worth a table" -+msgstr "Recodificaci identitat, no mereix una taula" -+ -+#: src/recode.c:504 -+msgid "Recoding is too complex for a mere table" -+msgstr "La recodificaci s massa complexa per a una simple taula" -+ -+#. Print the header of the header file. -+#: src/recode.c:536 -+#, c-format -+msgid "%sConversion table generated mechanically by Free `%s' %s" -+msgstr "%sTaula de conversi generada mecnicament per Free %s %s" -+ -+#: src/recode.c:538 -+#, c-format -+msgid "%sfor sequence %s.%s" -+msgstr "%sper la seqncia %s.%s" -+ -+#: src/recode.c:744 -+msgid "No table to print" -+msgstr "No hi ha cap taula a imprimir" -+ -+#: src/request.c:34 -+msgid "reversible" -+msgstr "reversible" -+ -+#: src/request.c:36 -+#, c-format -+msgid "%s to %s" -+msgstr "%s a %s" -+ -+#: src/request.c:37 src/request.c:39 -+msgid "byte" -+msgstr "byte" -+ -+#: src/request.c:38 src/request.c:40 -+msgid "ucs2" -+msgstr "ucs2" -+ -+#: src/request.c:38 src/request.c:40 -+msgid "variable" -+msgstr "variable" -+ -+#: src/request.c:111 -+msgid "*Unachievable*" -+msgstr "*Impossible*" -+ -+#: src/request.c:113 -+msgid "*mere copy*" -+msgstr "*simple cpia*" -+ -+#: src/request.c:246 -+msgid "Virtual memory exhausted!" -+msgstr "La memria virtual s'ha exhaurit!" -+ -+#: src/request.c:265 -+msgid "Step initialisation failed" -+msgstr "L'inicialitzaci del pas ha fallat" -+ -+#: src/request.c:272 -+msgid "Step initialisation failed (unprocessed options)" -+msgstr "L'inicialitzaci del pas ha fallat (opcions no processades)" -+ -+#: src/request.c:568 -+#, c-format -+msgid "Request: %s\n" -+msgstr "Petici: %s\n" -+ -+#: src/request.c:720 -+#, c-format -+msgid "Shrunk to: %s\n" -+msgstr "Encogit a: %s\n" -+ -+#: src/request.c:823 src/request.c:932 -+#, c-format -+msgid "Unrecognised surface name `%s'" -+msgstr "El nom de faceta %s s desconegut" -+ -+#: src/request.c:903 -+#, c-format -+msgid "No way to recode from `%s' to `%s'" -+msgstr "No hi ha manera de recodificar de %s a %s" -+ -+#: src/request.c:1013 -+msgid "Expecting `..' in request" -+msgstr "S'esperava .. a la petici" -+ -+#: src/task.c:826 src/task.c:1002 -+#, c-format -+msgid "Child process wait status is 0x%0.2x" -+msgstr "L'estat d'espera del procs fill s 0x%0.2x" -+ -+#: src/testdump.c:298 -+msgid "" -+"UCS2 Mne Description\n" -+"\n" -+msgstr "UCS2 Mne Descripci\n" ---- recode-3.6.orig/i18n/es.po -+++ recode-3.6/i18n/es.po -@@ -1,12 +1,12 @@ --# Mensajes en espaol para GNU recode. --# Copyright (C) 1999 Free Software Foundation, Inc. --# Santiago Vila Doncel , 1999. -+# Mensajes en espaol para Free recode. -+# Copyright (C) 1999, 2001, 2002 Free Software Foundation, Inc. -+# Santiago Vila Doncel , 1999, 2001, 2002. - # - msgid "" - msgstr "" --"Project-Id-Version: GNU recode 3.4r\n" -+"Project-Id-Version: Free recode 3.6\n" - "POT-Creation-Date: 2001-01-02 22:35+0100\n" --"PO-Revision-Date: 1999-05-21 18:45+0200\n" -+"PO-Revision-Date: 2002-09-17 00:28+0200\n" - "Last-Translator: Santiago Vila Doncel \n" - "Language-Team: Spanish \n" - "MIME-Version: 1.0\n" -@@ -83,13 +83,9 @@ - msgid "Try `%s %s' for more information.\n" - msgstr "Pruebe `%s %s' para ms informacin.\n" - --# FUZZY. GNU/Free. - #: src/main.c:237 --msgid "" --"Free `recode' converts files between various character sets and surfaces.\n" --msgstr "" --"GNU `recode' convierte ficheros entre varios juegos de caracteres y " --"facetas.\n" -+msgid "Free `recode' converts files between various character sets and surfaces.\n" -+msgstr "Free `recode' convierte ficheros entre varios juegos de caracteres y facetas.\n" - - #: src/main.c:241 - #, c-format -@@ -112,13 +108,11 @@ - "argumentos opcionales.\n" - - #: src/main.c:250 --#, fuzzy - msgid "" - "\n" - "Listings:\n" - " -l, --list[=FORMAT] list one or all known charsets and aliases\n" --" -k, --known=PAIRS restrict charsets according to known PAIRS " --"list\n" -+" -k, --known=PAIRS restrict charsets according to known PAIRS list\n" - " -h, --header[=[LN/]NAME] write table NAME on stdout using LN, then exit\n" - " -F, --freeze-tables write out a C module holding all tables\n" - " -T, --find-subsets report all charsets being subset of others\n" -@@ -128,18 +122,15 @@ - msgstr "" - "\n" - "Listados:\n" --" -l, --list[=FORMATO] muestra uno o todos los juegos conocidos\n" --" -k, --known=PARES restringe los juegos de acuerdo con la lista " --"de\n" -+" -l, --list[=FORMATO] muestra uno o todos los juegos y alias conocidos\n" -+" -k, --known=PARES restringe los juegos de acuerdo con la lista de\n" - " PARES conocidos\n" - " -h, --header[=[LN/]NOMBRE escribe la tabla NOMBRE en la salida estndar\n" - " usando LN, y finaliza\n" - " -F, --freeze-tables escribe un mdulo en C con todas las tablas\n" --" -T, --find-subsets informa acerca de todos los juegos de " --"caracteres\n" -+" -T, --find-subsets informa acerca de todos los juegos de caracteres\n" - " que son subconjuntos de otros\n" --" -C, --copyright muestra el Copyright y las condiciones de " --"copia\n" -+" -C, --copyright muestra el Copyright y las condiciones de copia\n" - " --help muestra esta ayuda y finaliza\n" - " --version muestra la versin y finaliza\n" - -@@ -156,13 +147,10 @@ - msgstr "" - "\n" - "Modos de operacin:\n" --" -v, --verbose explica la sucesin de pasos e informa del " --"desarrollo\n" --" -q, --quiet, --silent no muestra mensajes sobre conversiones " --"irreversibles\n" -+" -v, --verbose explica la sucesin de pasos e informa del desarrollo\n" -+" -q, --quiet, --silent no muestra mensajes sobre conversiones irreversibles\n" - " -f, --force realiza la conversin incluso si no es reversible\n" --" -t, --touch toca los ficheros convertidos despus del " --"reemplazo\n" -+" -t, --touch toca los ficheros convertidos despus del reemplazo\n" - " -i, --sequence=files utiliza ficheros intermedios para las pasadas\n" - " --sequence=memory utiliza bfers en memoria para las pasadas\n" - -@@ -196,15 +184,11 @@ - msgstr "" - "\n" - "Ajuste `fino':\n" --" -s, --strict utiliza correspondencias estrictas, aunque se " --"pierdan\n" -+" -s, --strict utiliza correspondencias estrictas, aunque se pierdan\n" - " caracteres\n" --" -d, --diacritics convierte solamente acentos y dems para " --"HTML/LaTeX\n" --" -S, --source[=LN] limita la conversin a cadenas y comentarios segn " --"LN\n" --" -c, --colons utiliza dos puntos en vez de comillas para " --"diresis\n" -+" -d, --diacritics convierte solamente acentos y dems para HTML/LaTeX\n" -+" -S, --source[=LN] limita la conversin a cadenas y comentarios segn LN\n" -+" -c, --colons utiliza dos puntos en vez de comillas para diresis\n" - " -g, --graphics aproxima grficos IBMPC mediante grficos ASCII\n" - " -x, --ignore=JUEGO descarta JUEGO al escoger un camino de conversin\n" - -@@ -215,61 +199,51 @@ - "FORMAT is `decimal', `octal', `hexadecimal' or `full' (or one of `dohf').\n" - msgstr "" - "\n" --"La opcin -l sin FORMATO ni JUEGO muestra los juegos de caracteres y " --"facetas.\n" --"disponibles. FORMATO es `decimal', `octal', `hexadecimal' o `full' (o uno " --"de\n" -+"La opcin -l sin FORMATO ni JUEGO muestra los juegos de caracteres y facetas.\n" -+"disponibles. FORMATO es `decimal', `octal', `hexadecimal' o `full' (o uno de\n" - "entre `dohf').\n" - - #: src/main.c:302 --#, fuzzy - msgid "" --"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the " --"locale\n" -+"Unless DEFAULT_CHARSET is set in environment, CHARSET defaults to the locale\n" - "dependent encoding, determined by LC_ALL, LC_CTYPE, LANG.\n" - msgstr "" --"A menos que se establezca DEFAULT_CHARSET en el entorno,\n" --"CHARSET es `%s' por omisin.\n" -+"A menos que se establezca DEFAULT_CHARSET en el entorno, el valor\n" -+"predeterminado de CHARSET es la codificacin de la que depende el locale,\n" -+"determinada por LC_ALL, LC_CTYPE, LANG.\n" - - #: src/main.c:307 - msgid "" - "With -k, possible before charsets are listed for the given after CHARSET,\n" --"both being tabular charsets, with PAIRS of the form " --"`BEF1:AFT1,BEF2:AFT2,...'\n" -+"both being tabular charsets, with PAIRS of the form `BEF1:AFT1,BEF2:AFT2,...'\n" - "and BEFs and AFTs being codes are given as decimal numbers.\n" - msgstr "" --"Con -k, se muestran los posibles juegos `antes' para el JUEGO `despus' " --"dado,\n" -+"Con -k, se muestran los posibles juegos `antes' para el JUEGO `despus' dado,\n" - "siendo ambos juegos de caracteres tabulares, con PAREJAS de la forma\n" - "`ANT1:DES1,ANT2:DES2,...' y siendo los ANTs y los DESs cdigos dados\n" - "como nmeros decimales.\n" - - #: src/main.c:312 --msgid "" --"LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" -+msgid "LN is some language, it may be `c', `perl' or `po'; `c' is the default.\n" - msgstr "" --"LN es algn lenguage, puede ser `c', `perl' o `po', el valor predeterminado\n" -+"LN es algn lenguaje, puede ser `c', `perl' o `po', el valor predeterminado\n" - "es `c'\n" - - # FIXME: [SURFACE]... means the usual surfaces or the usual surface? - #: src/main.c:315 - msgid "" - "\n" --"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is " --"ENCODING[..ENCODING]...\n" --"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like " --"BEFORE..AFTER,\n" -+"REQUEST is SUBREQUEST[,SUBREQUEST]...; SUBREQUEST is ENCODING[..ENCODING]...\n" -+"ENCODING is [CHARSET][/[SURFACE]]...; REQUEST often looks like BEFORE..AFTER,\n" - "with BEFORE and AFTER being charsets. An omitted CHARSET implies the usual\n" --"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a " --"/\n" -+"charset; an omitted [/SURFACE]... means the implied surfaces for CHARSET; a /\n" - "with an empty surface name means no surfaces at all. See the manual.\n" - msgstr "" - "\n" - "PETICIN es SUBPETICIN[,SUBPETICIN]...;\n" - "SUBPETICIN es CODIFICACIN[..CODIFICACIN]...\n" - "CODIFICACIN es [JUEGO][/[FACETA]]...; PETICIN suele ser ANTES..DESPUS,\n" --"donde ANTES y DESPUS son juegos de caracteres. Un JUEGO omitido implica " --"el\n" -+"donde ANTES y DESPUS son juegos de caracteres. Un JUEGO omitido implica el\n" - "juego de caracteres usual; una [/FACETA]... omitida significa la faceta\n" - "implcita para el JUEGO; una / con una faceta vaca significa que no hay\n" - "ninguna faceta. Vase el manual.\n" -@@ -284,8 +258,7 @@ - "\n" - "Si no se especifica ninguna de las opciones -i -p, se supone -p si no\n" - "hay ningn FICHERO, o si no, -i. Cada FICHERO se convierte sobre s mismo,\n" --"destruyendo el original. Si no es especifica ningn FICHERO, entonces " --"funciona\n" -+"destruyendo el original. Si no es especifica ningn FICHERO, entonces funciona\n" - "como filtro y convierte la entrada estndar en la salida estndar.\n" - - #: src/main.c:329 -@@ -294,46 +267,43 @@ - "Report bugs to .\n" - msgstr "" - "\n" --"Comunicar `bugs' a .\n" -+"Comunicar bichos a .\n" - - #: src/main.c:430 - #, c-format - msgid "Sequence `%s' is ambiguous" --msgstr "" -+msgstr "La sucesin `%s' es ambigua" - - #: src/main.c:434 - #, c-format - msgid "Sequence `%s' is unknown" --msgstr "" -+msgstr "La sucesin `%s' es desconocida" - - #: src/main.c:464 src/main.c:522 - #, c-format - msgid "Language `%s' is ambiguous" --msgstr "" -+msgstr "El idioma `%s' es ambiguo" - - #. -1 - #: src/main.c:468 src/main.c:526 - #, c-format - msgid "Language `%s' is unknown" --msgstr "" -+msgstr "El idioma `%s' es desconocido" - - #: src/main.c:560 - #, c-format - msgid "Format `%s' is ambiguous" --msgstr "" -+msgstr "El formato `%s' es ambiguo" - - #: src/main.c:564 - #, c-format - msgid "Format `%s' is unknown" --msgstr "" -+msgstr "El formato `%s' es desconocido" - - # Se entiende que los usuarios espaoles s tendrn iso-8859-1. - #: src/main.c:621 --#, fuzzy - msgid "Written by Franc,ois Pinard .\n" --msgstr "" --"\n" --"Escrito por Franois Pinard .\n" -+msgstr "Escrito por Franois Pinard .\n" - - # FIXME: Aadir 1998 (?). - #: src/main.c:624 -@@ -356,26 +326,26 @@ - #: src/main.c:669 - #, c-format - msgid "Symbol `%s' is unknown" --msgstr "" -+msgstr "El smbolo `%s' es desconocido" - - #: src/main.c:709 src/main.c:723 - #, c-format - msgid "Charset `%s' is unknown or ambiguous" --msgstr "" -+msgstr "El juego de caracteres `%s' es desconocido o ambiguo" - - #: src/main.c:754 - msgid "Required argument is missing" --msgstr "" -+msgstr "Falta el argumento requerido" - - #: src/main.c:797 --#, fuzzy, c-format -+#, c-format - msgid "Syntax is deprecated, please prefer `%s'" --msgstr "Sintaxis antigua, por favor utilice `%s'" -+msgstr "La sintaxis es antigua, por favor utilice `%s'" - - #: src/main.c:803 - #, c-format - msgid "Request `%s' is erroneous" --msgstr "" -+msgstr "La peticin `%s' es errnea" - - #: src/main.c:903 - #, c-format -@@ -387,19 +357,19 @@ - msgstr " hecho\n" - - #: src/main.c:954 --#, fuzzy, c-format -+#, c-format - msgid " failed: %s in step `%s..%s'\n" --msgstr " fall: %s en %s..%s\n" -+msgstr " fall: %s en el paso %s..%s\n" - - #: src/main.c:961 --#, fuzzy, c-format -+#, c-format - msgid "%s failed: %s in step `%s..%s'" --msgstr "%s fall: %s en %s..%s" -+msgstr "%s fall: %s en el paso %s..%s" - - #: src/main.c:984 --#, fuzzy, c-format -+#, c-format - msgid "%s in step `%s..%s'" --msgstr "%s en %s..%s" -+msgstr "%s en el paso %s..%s" - - #: src/names.c:335 - #, c-format -@@ -472,8 +442,7 @@ - - #: src/recode.c:272 - msgid "Cannot complete table from set of known pairs" --msgstr "" --"No se puede completar la tabla a partir del conjunto de pares conocidos" -+msgstr "No se puede completar la tabla a partir del conjunto de pares conocidos" - - #: src/recode.c:497 - msgid "Identity recoding, not worth a table" -@@ -491,7 +460,7 @@ - #: src/recode.c:536 - #, c-format - msgid "%sConversion table generated mechanically by Free `%s' %s" --msgstr "%sTabla de conversin generada automticamente por GNU %s %s" -+msgstr "%sTabla de conversin generada automticamente por Free `%s' %s" - - #: src/recode.c:538 - #, c-format -@@ -500,7 +469,7 @@ - - #: src/recode.c:744 - msgid "No table to print" --msgstr "No hay tabla que mostrar" -+msgstr "No hay ninguna tabla que mostrar" - - #: src/request.c:34 - msgid "reversible" -@@ -580,32 +549,6 @@ - "UCS2 Nem Descripcin\n" - "\n" - --#~ msgid "CHARSET has no default, define DEFAULT_CHARSET in the environment.\n" --#~ msgstr "" --#~ "CHARSET no tiene ningn valor predeterminado, defina DEFAULT_CHARSET en el\n" --#~ "entorno.\n" -- --#~ msgid "Ambiguous sequence `%s'" --#~ msgstr "Sucesin ambigua `%s'" -- --#~ msgid "Unknown sequence `%s'" --#~ msgstr "Sucesin desconocida `%s'" -- --#~ msgid "Ambiguous language `%s'" --#~ msgstr "Idioma ambiguo `%s'" -- --#~ msgid "Unknown language `%s'" --#~ msgstr "Idioma desconocido `%s'" -- --#~ msgid "Ambiguous format `%s'" --#~ msgstr "Formato ambiguo `%s'" -- --#~ msgid "Unknown format `%s'" --#~ msgstr "Formato desconocido `%s'" -- --#~ msgid "Erroneous request `%s'" --#~ msgstr "Peticin errnea `%s'" -- - # Este es difcil. Se admiten sugerencias. - # Especialmente de alguien que conozca bien el programa. - # Creo que "stats" en este caso es abreviatura de "statistics" -@@ -730,12 +673,10 @@ - #~ "FORMAT is a word among decimal, octal, hexadecimal or full (which may be\n" - #~ "abbreviated to one of `dohf'), it defaults to just the canonical name.\n" - #~ "With -k, possible before charsets are listed for the given after CHARSET,\n" --#~ "both being RFC1345 charsets, with PAIRS of the form " --#~ "`BEF1:AFT1,BEF2:AFT2,...\n" -+#~ "both being RFC1345 charsets, with PAIRS of the form `BEF1:AFT1,BEF2:AFT2,...\n" - #~ "and BEFs and AFTs being codes. All codes are given as decimal numbers.\n" - #~ msgstr "" --#~ "Los argumentos obligatorios u opcionales para las opciones largas tambin " --#~ "son\n" -+#~ "Los argumentos obligatorios u opcionales para las opciones largas tambin son\n" - #~ "obligatorios u opcionales para las opciones cortas.\n" - #~ "\n" - #~ " -C, --copyright muestra el Copyright y la condiciones de copia\n" -@@ -749,8 +690,7 @@ - #~ "\n" - #~ "FORMATO es la palabra decimal, octal, hexadecimal o full (que se pueden\n" - #~ "abreviar por una de las letras `dohf'), por omisin el nombre cannico.\n" --#~ "Con -k, se muestran los posibles juegos \"antes\" para el JUEGO \"despus\" " --#~ "dado,\n" -+#~ "Con -k, se muestran los posibles juegos \"antes\" para el JUEGO \"despus\" dado,\n" - #~ "siendo ambos juegos RFC1345, con PARES de la forma `ANT1:DES1,ANT2:DES2,...\n" - #~ "donde los ANTs y los DESs son cdigos. Todos los cdigos se dan en decimal\n" - -@@ -762,8 +702,7 @@ - # "Mis juegos favoritos (y los de Pinard :-) son..." - # - #~ msgid "" --#~ "Option -l with no FORMAT nor CHARSET list all charsets, also see the " --#~ "Texinfo\n" -+#~ "Option -l with no FORMAT nor CHARSET list all charsets, also see the Texinfo\n" - #~ "documentation. My preferred charsets are (each user has preferences):\n" - #~ "\n" - #~ " ascii-bs ASCII (7-bit), using backspace to apply diacritics\n" -@@ -772,10 +711,8 @@ - #~ " latin1 ISO Latin-1 8-bit extension of ASCII\n" - #~ " texte Easy French convention for transmitting email messages\n" - #~ msgstr "" --#~ "La opcin -l sin FORMATO ni JUEGO muestra todos los juegos, vase tambin " --#~ "la\n" --#~ "documentacin de Texinfo. Mis juegos favoritos son (cada uno tendr los " --#~ "suyos):\n" -+#~ "La opcin -l sin FORMATO ni JUEGO muestra todos los juegos, vase tambin la\n" -+#~ "documentacin de Texinfo. Mis juegos favoritos son (cada uno tendr los suyos):\n" - #~ "\n" - #~ " ascii-bs ASCII (7-bit), utilizando backspace para acentos y dems\n" - #~ " ibmpc IBM-PC (8-bit), con retornos de carro adecuados\n" -@@ -805,8 +742,7 @@ - # De momento no veo qu de malo tiene "pasada". - # Si acaso, que modernamente tenga otros significados ("es una pasada!" :-). - # --#~ msgid "" --#~ " -o, --sequence=popen use popen machinery for sequencing passes\n" -+#~ msgid " -o, --sequence=popen use popen machinery for sequencing passes\n" - #~ msgstr " -o, --sequence=popen utiliza popen para las pasadas\n" - - #~ msgid " -o, --sequence=popen same as -i (on this system)\n" -@@ -867,8 +803,5 @@ - #~ msgid "Mere copy for the trivial recoding\n" - #~ msgstr "Copia pura y simple para la conversin trivial\n" - --#~ msgid "UNACHIEVABLE recoding!\n" --#~ msgstr "Conversin IMPOSIBLE!\n" -- - #~ msgid "You may not explicitly recode from RFC 1345" - #~ msgstr "No se puede convertir explcitamente a partir de RFC 1345" ---- recode-3.6.orig/doc/Makefile.in -+++ recode-3.6/doc/Makefile.in -@@ -223,7 +223,7 @@ - done; \ - done - @$(POST_INSTALL) -- @if $(SHELL) -c 'install-info --version | sed 1q | fgrep -s -v -i debian' >/dev/null 2>&1; then \ -+ @if false; then \ - list='$(INFO_DEPS)'; \ - for file in $$list; do \ - echo " install-info --info-dir=$(DESTDIR)$(infodir) $(DESTDIR)$(infodir)/$$file";\ diff --git a/runtime-optenv32/recode+32/spec b/runtime-optenv32/recode+32/spec index fff0e6eded2..6f33adc4c51 100644 --- a/runtime-optenv32/recode+32/spec +++ b/runtime-optenv32/recode+32/spec @@ -1,5 +1,4 @@ -VER=3.6 -SRCS="tbl::http://http.debian.net/debian/pool/main/r/recode/recode_$VER.orig.tar.gz" -CHKSUMS="sha256::e3e6a4f3f8e5c6052ab70155990c074d87aa0b614fc1be31d194750d1d962fcf" -REL=2 +VER=3.7.14 +SRCS="tbl::https://github.com/rrthomas/recode/releases/download/v$VER/recode-$VER.tar.gz" +CHKSUMS="sha256::786aafd544851a2b13b0a377eac1500f820ce62615ccc2e630b501e7743b9f33" CHKUPDATE="anitya::id=4176" From d6dda49137dafab2053a8c6240bc161fb300c174 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 24 Nov 2024 19:13:39 +0800 Subject: [PATCH 048/722] enca+32: improve packaging - Use optenv32 template. - Use 32-bit x86 dependencies. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/enca+32/autobuild/build | 11 ----------- runtime-optenv32/enca+32/autobuild/defines | 9 +++++---- runtime-optenv32/enca+32/spec | 2 +- 3 files changed, 6 insertions(+), 16 deletions(-) delete mode 100644 runtime-optenv32/enca+32/autobuild/build diff --git a/runtime-optenv32/enca+32/autobuild/build b/runtime-optenv32/enca+32/autobuild/build deleted file mode 100644 index b323e645546..00000000000 --- a/runtime-optenv32/enca+32/autobuild/build +++ /dev/null @@ -1,11 +0,0 @@ -export PATH=/opt/32/bin:$PATH -./configure --prefix=/opt/32 \ - --build=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --target=i686-pc-linux-gnu \ - ${AUTOTOOLS_AFTER} \ - CC=i686-pc-linux-gnu-gcc -make -make install DESTDIR="$PKGDIR" - -rm -r "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/enca+32/autobuild/defines b/runtime-optenv32/enca+32/autobuild/defines index 7574502ad34..9d8ef3ee0f5 100644 --- a/runtime-optenv32/enca+32/autobuild/defines +++ b/runtime-optenv32/enca+32/autobuild/defines @@ -1,10 +1,11 @@ PKGNAME=enca+32 PKGSEC=utils -PKGDEP="recode" -PKGDES="Charset analyzer and converter" +PKGDEP="recode+32" +BUILDDEP="devel-base+32" +PKGDES="Charset analyzer and converter (32-bit x86 runtime)" AUTOTOOLS_AFTER="--with-librecode=/usr --enable-external" +ABSHADOW=0 -ABSHADOW=no NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/enca+32/spec b/runtime-optenv32/enca+32/spec index 3f7cb8f2be2..51d94c6089c 100644 --- a/runtime-optenv32/enca+32/spec +++ b/runtime-optenv32/enca+32/spec @@ -1,5 +1,5 @@ VER=1.19 +REL=3 SRCS="tbl::https://dl.cihar.com/enca/enca-$VER.tar.gz" CHKSUMS="sha256::4c305cc59f3e57f2cfc150a6ac511690f43633595760e1cb266bf23362d72f8a" -REL=2 CHKUPDATE="anitya::id=11686" From 0da7c2140d879326a94e69da8cfe56d7555e5cee Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 24 Nov 2024 19:16:18 +0800 Subject: [PATCH 049/722] vulkan-headers+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- .../vulkan-headers+32/autobuild/build | 18 ------------------ .../vulkan-headers+32/autobuild/defines | 8 +++++--- runtime-optenv32/vulkan-headers+32/spec | 1 + 3 files changed, 6 insertions(+), 21 deletions(-) delete mode 100644 runtime-optenv32/vulkan-headers+32/autobuild/build diff --git a/runtime-optenv32/vulkan-headers+32/autobuild/build b/runtime-optenv32/vulkan-headers+32/autobuild/build deleted file mode 100644 index 21020a18d94..00000000000 --- a/runtime-optenv32/vulkan-headers+32/autobuild/build +++ /dev/null @@ -1,18 +0,0 @@ -export PATH="/opt/32/bin:$PATH" -export PKG_CONFIG_PATH="/opt/32/lib/pkg-config" - -abinfo "Running CMake for $PKGNAME ..." -cmake "$SRCDIR" \ - -DCMAKE_INSTALL_PREFIX=/opt/32 \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_C_COMPILER=/opt/32/bin/gcc \ - ${CMAKE_AFTER} - -abinfo "Building $i ..." -make - -abinfo "Installing $i ..." -make install DESTDIR="$PKGDIR" - -abinfo "Removing non-runtime data ..." -rm -rfv "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/vulkan-headers+32/autobuild/defines b/runtime-optenv32/vulkan-headers+32/autobuild/defines index adbae3a472e..012f7a2f8f7 100644 --- a/runtime-optenv32/vulkan-headers+32/autobuild/defines +++ b/runtime-optenv32/vulkan-headers+32/autobuild/defines @@ -1,10 +1,12 @@ PKGNAME=vulkan-headers+32 PKGSEC=libs PKGDEP="" -PKGDES="Vulkan header files and API registry (optenv32)" -BUILDDEP="gcc+32" +BUILDDEP="devel-base+32" +PKGDES="Vulkan header files and API registry (32-bit x86 runtime)" -ABHOST=noarch +ABHOST=optenv32 +# Note: No ELF. +ABSPLITDBG=0 PKGBREAK="vulkan+32<=1.1.70.1-3" PKGREP="vulkan+32<=1.1.70.1-3" diff --git a/runtime-optenv32/vulkan-headers+32/spec b/runtime-optenv32/vulkan-headers+32/spec index ee54d5610ee..5ab79939344 100644 --- a/runtime-optenv32/vulkan-headers+32/spec +++ b/runtime-optenv32/vulkan-headers+32/spec @@ -1,4 +1,5 @@ VER=1.3.283.0 +REL=1 SRCS="git::commit=tags/vulkan-sdk-$VER::https://github.com/KhronosGroup/Vulkan-Headers" CHKSUMS="SKIP" CHKUPDATE="anitya::id=88835" From e0dd80048f56afaae07714c29b8535561340b24a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 24 Nov 2024 19:23:57 +0800 Subject: [PATCH 050/722] volk-meta-loader+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- .../volk-meta-loader+32/autobuild/build | 19 ------------------- .../volk-meta-loader+32/autobuild/defines | 7 +++---- runtime-optenv32/volk-meta-loader+32/spec | 1 + 3 files changed, 4 insertions(+), 23 deletions(-) delete mode 100644 runtime-optenv32/volk-meta-loader+32/autobuild/build diff --git a/runtime-optenv32/volk-meta-loader+32/autobuild/build b/runtime-optenv32/volk-meta-loader+32/autobuild/build deleted file mode 100644 index be2c5944681..00000000000 --- a/runtime-optenv32/volk-meta-loader+32/autobuild/build +++ /dev/null @@ -1,19 +0,0 @@ -export PATH="/opt/32/bin:$PATH" -export PKG_CONFIG_PATH="/opt/32/lib/pkg-config" - -abinfo "Running CMake for $PKGNAME ..." -cmake "$SRCDIR" \ - -DCMAKE_INSTALL_PREFIX=/opt/32 \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_C_COMPILER=/opt/32/bin/gcc \ - -DCMAKE_CXX_COMPILER=/opt/32/bin/g++ \ - ${CMAKE_AFTER} - -abinfo "Building $i ..." -make - -abinfo "Installing $i ..." -make install DESTDIR="$PKGDIR" - -abinfo "Removing non-runtime data ..." -rm -rfv "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/volk-meta-loader+32/autobuild/defines b/runtime-optenv32/volk-meta-loader+32/autobuild/defines index 3e97eacb4c5..7e71ce16454 100644 --- a/runtime-optenv32/volk-meta-loader+32/autobuild/defines +++ b/runtime-optenv32/volk-meta-loader+32/autobuild/defines @@ -1,8 +1,8 @@ PKGNAME=volk-meta-loader+32 PKGSEC=libs PKGDEP="vulkan-headers+32" -BUILDDEP="32subsystem" -PKGDES="Meta loader for Vulkan API (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="Meta loader for Vulkan API (32-bit x86 runtime)" CMAKE_AFTER="-DVOLK_PULL_IN_VULKAN=ON \ -DVOLK_INSTALL=ON \ @@ -12,5 +12,4 @@ CMAKE_AFTER="-DVOLK_PULL_IN_VULKAN=ON \ NOSTATIC=0 ABSPLITDBG=0 -# optenv32 - mark noarch -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/volk-meta-loader+32/spec b/runtime-optenv32/volk-meta-loader+32/spec index a6f8933f34e..a0b28728989 100644 --- a/runtime-optenv32/volk-meta-loader+32/spec +++ b/runtime-optenv32/volk-meta-loader+32/spec @@ -1,4 +1,5 @@ VER=1.3.283.0 +REL=1 SRCS="git::commit=tags/vulkan-sdk-$VER::https://github.com/zeux/volk" CHKSUMS="SKIP" CHKUPDATE="anitya::id=370476" From 1ebd0b38fa80f231b5329e3b7822b5c74bade3c2 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 24 Nov 2024 19:39:44 +0800 Subject: [PATCH 051/722] vulkan-tools+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- .../vulkan-tools+32/autobuild/build | 23 ------------------- .../vulkan-tools+32/autobuild/defines | 7 +++--- runtime-optenv32/vulkan-tools+32/spec | 1 + 3 files changed, 4 insertions(+), 27 deletions(-) delete mode 100644 runtime-optenv32/vulkan-tools+32/autobuild/build diff --git a/runtime-optenv32/vulkan-tools+32/autobuild/build b/runtime-optenv32/vulkan-tools+32/autobuild/build deleted file mode 100644 index 33a7e30fc93..00000000000 --- a/runtime-optenv32/vulkan-tools+32/autobuild/build +++ /dev/null @@ -1,23 +0,0 @@ -export PATH="/opt/32/bin:$PATH" -export PKG_CONFIG_PATH="/opt/32/lib/pkg-config" - -abinfo "Running CMake for $PKGNAME ..." -cmake "$SRCDIR" \ - -DCMAKE_INSTALL_PREFIX=/opt/32 \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_C_COMPILER=/opt/32/bin/gcc \ - ${CMAKE_AFTER} - -abinfo "Building $i ..." -make - -abinfo "Installing $i ..." -make install DESTDIR="$PKGDIR" - -abinfo "Removing non-runtime data ..." -rm -rfv "$PKGDIR"/opt/32/share - -abinfo "Renaming all optenv32 utilities ..." -for i in "$PKGDIR"/usr/bin/*; do - mv -v $i{,32} -done diff --git a/runtime-optenv32/vulkan-tools+32/autobuild/defines b/runtime-optenv32/vulkan-tools+32/autobuild/defines index 18bc6948e60..23bf419abac 100644 --- a/runtime-optenv32/vulkan-tools+32/autobuild/defines +++ b/runtime-optenv32/vulkan-tools+32/autobuild/defines @@ -1,8 +1,8 @@ PKGNAME=vulkan-tools+32 PKGSEC=utils PKGDEP="libxkbcommon+32 x11-lib+32 vulkan-loader+32" -BUILDDEP="lxml glslang vulkan-headers+32 volk-meta-loader+32 32subsystem" -PKGDES="Vulkan Tools and Utilities (optenv32)" +BUILDDEP="devel-base+32 lxml glslang vulkan-headers+32 volk-meta-loader+32" +PKGDES="Vulkan Tools and Utilities (32-bit x86 runtime)" # FIXME: WSL_WAYLAND requires waylandpp+32 CMAKE_AFTER="-DBUILD_CUBE=ON \ @@ -20,5 +20,4 @@ PKGBREAK="vulkan+32<=1.1.70.1-3" PKGREP="vulkan+32<=1.1.70.1-3" NOLTO=1 - -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/vulkan-tools+32/spec b/runtime-optenv32/vulkan-tools+32/spec index ad4b02531f0..fe2e0b51bd8 100644 --- a/runtime-optenv32/vulkan-tools+32/spec +++ b/runtime-optenv32/vulkan-tools+32/spec @@ -1,4 +1,5 @@ VER=1.3.283.0 +REL=1 SRCS="git::commit=tags/vulkan-sdk-$VER::https://github.com/KhronosGroup/Vulkan-Tools" CHKSUMS="SKIP" CHKUPDATE="anitya::id=15953" From 7f3d4e2bd9bfb5a7ad41e604d37d82e474ce3d1c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 1 Dec 2024 21:42:30 +0800 Subject: [PATCH 052/722] vulkan+32: improve packaging - Use optenv32 + dummy template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/vulkan+32/autobuild/build | 1 - runtime-optenv32/vulkan+32/autobuild/defines | 7 +++++-- runtime-optenv32/vulkan+32/spec | 2 +- 3 files changed, 6 insertions(+), 4 deletions(-) delete mode 100644 runtime-optenv32/vulkan+32/autobuild/build diff --git a/runtime-optenv32/vulkan+32/autobuild/build b/runtime-optenv32/vulkan+32/autobuild/build deleted file mode 100644 index 5b35f0f9956..00000000000 --- a/runtime-optenv32/vulkan+32/autobuild/build +++ /dev/null @@ -1 +0,0 @@ -mkdir -p "$PKGDIR" diff --git a/runtime-optenv32/vulkan+32/autobuild/defines b/runtime-optenv32/vulkan+32/autobuild/defines index 0ac4201e8c9..aba7482cc6a 100644 --- a/runtime-optenv32/vulkan+32/autobuild/defines +++ b/runtime-optenv32/vulkan+32/autobuild/defines @@ -1,9 +1,12 @@ PKGNAME=vulkan+32 PKGSEC=libs PKGDEP="vulkan-headers+32 vulkan-loader+32 vulkan-tools+32" -PKGDES="A low-overhead, cross-platform 3D graphics and compute API (metapackage, optenv32)" +PKGDES="A low-overhead, cross-platform 3D graphics and compute API (metapackage, 32-bit x86 runtime)" PKGEPOCH=1 + ABTYPE=dummy +ABHOST=optenv32 -ABHOST=noarch +# Note: Empty metapackage. +ABSPLITDBG=0 diff --git a/runtime-optenv32/vulkan+32/spec b/runtime-optenv32/vulkan+32/spec index d8968178f21..8f16d3d85da 100644 --- a/runtime-optenv32/vulkan+32/spec +++ b/runtime-optenv32/vulkan+32/spec @@ -1,3 +1,3 @@ VER=0 -REL=1 +REL=2 DUMMYSRC=1 From f3cc5bc149de5e4683d65a8a84faeb298f2c99a4 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 1 Dec 2024 22:21:25 +0800 Subject: [PATCH 053/722] soxr+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. - Use the default CMAKE_BUILD_TYPE option to allow debuginfo generation. --- runtime-optenv32/soxr+32/autobuild/build | 17 ----------------- runtime-optenv32/soxr+32/autobuild/defines | 7 +++---- runtime-optenv32/soxr+32/spec | 2 +- 3 files changed, 4 insertions(+), 22 deletions(-) delete mode 100644 runtime-optenv32/soxr+32/autobuild/build diff --git a/runtime-optenv32/soxr+32/autobuild/build b/runtime-optenv32/soxr+32/autobuild/build deleted file mode 100644 index ec34fbaedf5..00000000000 --- a/runtime-optenv32/soxr+32/autobuild/build +++ /dev/null @@ -1,17 +0,0 @@ -export PATH=/opt/32/bin:$PATH -export PKG_CONFIG_PATH=/opt/32/lib/pkg-config -export PKG_CONFIG=i686-pc-linux-gnu-pkg-config - -mkdir build -cd build - -cmake .. -DCMAKE_INSTALL_PREFIX=/opt/32 -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_C_COMPILER=/opt/32/bin/i686-pc-linux-gnu-gcc \ - -DCMAKE_FIND_ROOT_PATH=/opt/32 \ - ${CMAKE_AFTER} -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} - -cd "$SRCDIR" diff --git a/runtime-optenv32/soxr+32/autobuild/defines b/runtime-optenv32/soxr+32/autobuild/defines index b0bbb36ee62..d882574fa30 100644 --- a/runtime-optenv32/soxr+32/autobuild/defines +++ b/runtime-optenv32/soxr+32/autobuild/defines @@ -1,12 +1,11 @@ PKGNAME=soxr+32 PKGSEC=libs PKGDEP="glibc+32" -BUILDDEP="32subsystem" -PKGDES="A library that aims to give fast and high quality results for any constant resampling ratio (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="A library that aims to give fast and high quality results for any constant resampling ratio (32-bit x86 runtime)" CMAKE_AFTER="-DBUILD_EXAMPLES=OFF \ -DBUILD_SHARED_LIBS=ON \ - -DCMAKE_BUILD_TYPE=Release \ -DVISIBILITY_HIDDENL=ON \ -DWITH_AVFFT=ON \ -DWITH_DOUBLE_PRECISION=ON \ @@ -15,4 +14,4 @@ CMAKE_AFTER="-DBUILD_EXAMPLES=OFF \ -DWITH_PFFFT=ON \ -DWITH_SIMD=ON" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/soxr+32/spec b/runtime-optenv32/soxr+32/spec index de9b8f9e37d..70dbf7070aa 100644 --- a/runtime-optenv32/soxr+32/spec +++ b/runtime-optenv32/soxr+32/spec @@ -1,5 +1,5 @@ VER=0.1.3 -REL=4 +REL=5 SRCS="tbl::https://sourceforge.net/projects/soxr/files/soxr-$VER-Source.tar.xz" CHKSUMS="sha256::b111c15fdc8c029989330ff559184198c161100a59312f5dc19ddeb9b5a15889" CHKUPDATE="anitya::id=4859" From ba4bf2c450e08cd8ccc69ce2db9fae7d635a323d Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 1 Dec 2024 22:25:42 +0800 Subject: [PATCH 054/722] xvidcore+32: improve packaging - Use optenv32 build type. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/xvidcore+32/autobuild/build | 17 ----------------- runtime-optenv32/xvidcore+32/autobuild/defines | 8 +++++--- runtime-optenv32/xvidcore+32/spec | 3 ++- 3 files changed, 7 insertions(+), 21 deletions(-) delete mode 100644 runtime-optenv32/xvidcore+32/autobuild/build diff --git a/runtime-optenv32/xvidcore+32/autobuild/build b/runtime-optenv32/xvidcore+32/autobuild/build deleted file mode 100644 index 228cdc0f3ba..00000000000 --- a/runtime-optenv32/xvidcore+32/autobuild/build +++ /dev/null @@ -1,17 +0,0 @@ -export PATH=/opt/32/bin:$PATH -cd build/generic - -./configure --prefix=/opt/32 \ - --build=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --target=i686-pc-linux-gnu \ - ${AUTOTOOLS_AFTER} \ - CC=i686-pc-linux-gnu-gcc -make -make DESTDIR="$PKGDIR" install - -chmod -v 755 "$PKGDIR"/opt/32/lib/libxvidcore.so.4.3 -ln -v -sf libxvidcore.so.4.3 "$PKGDIR"/opt/32/lib/libxvidcore.so.4 -ln -v -sf libxvidcore.so.4 "$PKGDIR"/opt/32/lib/libxvidcore.so - -cd "$SRCDIR" diff --git a/runtime-optenv32/xvidcore+32/autobuild/defines b/runtime-optenv32/xvidcore+32/autobuild/defines index 918050f85a4..b5630f740aa 100644 --- a/runtime-optenv32/xvidcore+32/autobuild/defines +++ b/runtime-optenv32/xvidcore+32/autobuild/defines @@ -1,8 +1,10 @@ PKGNAME=xvidcore+32 -PKGDES="XviD is an open source MPEG-4 video codec (optenv32)" PKGSEC=libs PKGDEP="glibc+32" -BUILDDEP="32subsystem" +BUILDDEP="devel-base+32 nasm+32" +PKGDES="Open source MPEG-4 video codec (32-bit x86 runtime)" + +ABSHADOW=0 NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/xvidcore+32/spec b/runtime-optenv32/xvidcore+32/spec index 394bb7d4f1b..0020f11fbdd 100644 --- a/runtime-optenv32/xvidcore+32/spec +++ b/runtime-optenv32/xvidcore+32/spec @@ -1,5 +1,6 @@ VER=1.3.7 -REL=2 +REL=3 SRCS="tbl::https://downloads.xvid.com/downloads/xvidcore-$VER.tar.gz" CHKSUMS="sha256::abbdcbd39555691dd1c9b4d08f0a031376a3b211652c0d8b3b8aa9be1303ce2d" +SUBDIR="xvidcore/build/generic" CHKUPDATE="anitya::id=14474" From 1dc5c4d3e0ef32e7b25f9d052780e5ba53c035e2 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 1 Dec 2024 22:44:05 +0800 Subject: [PATCH 055/722] krb5+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/krb5+32/autobuild/build | 30 ---------------------- runtime-optenv32/krb5+32/autobuild/defines | 17 +++++++++--- runtime-optenv32/krb5+32/autobuild/patch | 4 --- runtime-optenv32/krb5+32/autobuild/prepare | 7 ----- runtime-optenv32/krb5+32/spec | 6 ++--- 5 files changed, 17 insertions(+), 47 deletions(-) delete mode 100644 runtime-optenv32/krb5+32/autobuild/build delete mode 100644 runtime-optenv32/krb5+32/autobuild/patch delete mode 100644 runtime-optenv32/krb5+32/autobuild/prepare diff --git a/runtime-optenv32/krb5+32/autobuild/build b/runtime-optenv32/krb5+32/autobuild/build deleted file mode 100644 index 40d91e78e6d..00000000000 --- a/runtime-optenv32/krb5+32/autobuild/build +++ /dev/null @@ -1,30 +0,0 @@ -export PATH=/opt/32/bin:$PATH -export CFLAGS+=" -fno-strict-aliasing" -export CPPFLAGS+=" -I/usr/include/et" - - -./configure --prefix=/opt/32 \ - --sysconfdir=/etc \ - --localstatedir=/var/lib \ - --enable-shared \ - --without-system-et \ - --without-system-ss \ - --without-tcl \ - --enable-dns-for-realm \ - --with-ldap \ - --without-system-verto \ - --without-libedit \ - --disable-aesni \ - CC=i686-pc-linux-gnu-gcc CXX=i686-pc-linux-gnu-g++ \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig - -make - -make install DESTDIR="$PKGDIR" - -PATH=/usr/bin:$PATH - -rm -rf "$PKGDIR"/var -rm -rf "$PKGDIR"/opt/32/{bin,sbin,share} - -chmod 755 "$PKGDIR"/opt/32/lib/* diff --git a/runtime-optenv32/krb5+32/autobuild/defines b/runtime-optenv32/krb5+32/autobuild/defines index d59ca20df32..ef11129a7ad 100644 --- a/runtime-optenv32/krb5+32/autobuild/defines +++ b/runtime-optenv32/krb5+32/autobuild/defines @@ -1,9 +1,20 @@ PKGNAME=krb5+32 -PKGDES="The Kerberos network authentication system (optenv32)" PKGSEC=libs PKGDEP="openldap+32" -BUILDDEP="32subsystem" +BUILDDEP="devel-base+32" +PKGDES="The Kerberos network authentication system (32-bit x86 runtime)" +AUTOTOOLS_AFTER="--enable-shared \ + --without-system-et \ + --without-system-ss \ + --without-tcl \ + --enable-dns-for-realm \ + --with-ldap \ + --without-system-verto \ + --without-libedit \ + --disable-aesni" + +RECONF=0 NOPARALLEL=1 NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/krb5+32/autobuild/patch b/runtime-optenv32/krb5+32/autobuild/patch deleted file mode 100644 index 0d90aa830cf..00000000000 --- a/runtime-optenv32/krb5+32/autobuild/patch +++ /dev/null @@ -1,4 +0,0 @@ -for i in "$SRCDIR"/autobuild/patches/*; do - abinfo "Applying $i ..." - patch -Np2 -i $i -done diff --git a/runtime-optenv32/krb5+32/autobuild/prepare b/runtime-optenv32/krb5+32/autobuild/prepare deleted file mode 100644 index 055e65a3a16..00000000000 --- a/runtime-optenv32/krb5+32/autobuild/prepare +++ /dev/null @@ -1,7 +0,0 @@ -export CFLAGS="${CFLAGS} -fno-strict-aliasing" -export CPPFLAGS="${CPPFLAGS} -I/usr/include/et" - -export CPPFLAGS+=" -D_REENTRANT=1" -export CFLAGS+=" -D_REENTRANT=1" -export CXXFLAGS+=" -D_REENTRANT=1" -export LDFLAGS+=" -D_REENTRANT=1" diff --git a/runtime-optenv32/krb5+32/spec b/runtime-optenv32/krb5+32/spec index e736ef050dc..a6d2cae85a3 100644 --- a/runtime-optenv32/krb5+32/spec +++ b/runtime-optenv32/krb5+32/spec @@ -1,6 +1,6 @@ VER=1.17.1 -SRCS="tbl::https://web.mit.edu/kerberos/dist/krb5/${VER:0:4}/krb5-$VER.tar.gz" +REL=2 +SRCS="tbl::https://web.mit.edu/kerberos/dist/krb5/${VER%.*}/krb5-$VER.tar.gz" CHKSUMS="sha256::3706d7ec2eaa773e0e32d3a87bf742ebaecae7d064e190443a3acddfd8afb181" -SUBDIR="krb5-$VER/src" -REL=1 CHKUPDATE="anitya::id=13287" +SUBDIR="krb5-$VER/src" From f71a894e7b15292c2d0c7a0fd2a2584220792c04 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 1 Dec 2024 23:03:26 +0800 Subject: [PATCH 056/722] libssh+32: improve packaging - Use optenv32 template. - Specify library paths as the build system fails to find them in /opt/32. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libssh+32/autobuild/build | 17 ----------------- runtime-optenv32/libssh+32/autobuild/defines | 18 +++++++++++++----- runtime-optenv32/libssh+32/spec | 2 +- 3 files changed, 14 insertions(+), 23 deletions(-) delete mode 100644 runtime-optenv32/libssh+32/autobuild/build diff --git a/runtime-optenv32/libssh+32/autobuild/build b/runtime-optenv32/libssh+32/autobuild/build deleted file mode 100644 index ec34fbaedf5..00000000000 --- a/runtime-optenv32/libssh+32/autobuild/build +++ /dev/null @@ -1,17 +0,0 @@ -export PATH=/opt/32/bin:$PATH -export PKG_CONFIG_PATH=/opt/32/lib/pkg-config -export PKG_CONFIG=i686-pc-linux-gnu-pkg-config - -mkdir build -cd build - -cmake .. -DCMAKE_INSTALL_PREFIX=/opt/32 -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_C_COMPILER=/opt/32/bin/i686-pc-linux-gnu-gcc \ - -DCMAKE_FIND_ROOT_PATH=/opt/32 \ - ${CMAKE_AFTER} -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} - -cd "$SRCDIR" diff --git a/runtime-optenv32/libssh+32/autobuild/defines b/runtime-optenv32/libssh+32/autobuild/defines index 141853a6353..f15b5ddcc09 100644 --- a/runtime-optenv32/libssh+32/autobuild/defines +++ b/runtime-optenv32/libssh+32/autobuild/defines @@ -1,9 +1,17 @@ PKGNAME=libssh+32 PKGSEC=libs -PKGDEP="zlib+32 openssl+32 krb5+32" -BUILDDEP="32subsystem" -PKGDES="A client-side C library implementing the SSH protocol (optenv32)" +PKGDEP="krb5+32 openssl+32 zlib+32" +BUILDDEP="devel-base+32" +PKGDES="A client-side C library implementing the SSH protocol (32-bit x86 runtime)" -CMAKE_AFTER="-DWITH_GSSAPI=ON -DWITH_ZLIB=/opt/32/lib" +CMAKE_AFTER="-DWITH_GSSAPI=ON \ + -DWITH_ZLIB=/opt/32/lib \ + -DGSSAPI_INCLUDE_DIR=/opt/32/include \ + -DKRB5_LIBRARY=/opt/32/lib/libkrb5.so \ + -DK5CRYPTO_LIBRARY=/opt/32/lib/libk5crypto.so \ + -DGSSAPI_LIBRARY=/opt/32/lib/libgssapi_krb5.so \ + -DCOM_ERR_LIBRARY=/opt/32/lib/libcom_err.so \ + -DZLIB_LIBRARY=/opt/32/lib/libz.so" -ABHOST=noarch +NOLTO=1 +ABHOST=optenv32 diff --git a/runtime-optenv32/libssh+32/spec b/runtime-optenv32/libssh+32/spec index 8b3bc0f4e64..7a81f85f75e 100644 --- a/runtime-optenv32/libssh+32/spec +++ b/runtime-optenv32/libssh+32/spec @@ -1,5 +1,5 @@ VER=0.8.9 -REL=2 +REL=3 SRCS="tbl::https://git.libssh.org/projects/libssh.git/snapshot/libssh-$VER.tar.gz" CHKSUMS="sha256::46763c6fadd101cba11d5aaa505c1a20bc4afc9c28d3adcc4c42932eeeaab3f0" CHKUPDATE="anitya::id=1729" From c42c80b92a81921d80da758d4e693c5686dfbead Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 1 Dec 2024 23:10:02 +0800 Subject: [PATCH 057/722] libbluray: update to 1.3.4 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libbluray+32/autobuild/build | 11 ----------- runtime-optenv32/libbluray+32/autobuild/defines | 9 +++++---- runtime-optenv32/libbluray+32/spec | 4 ++-- 3 files changed, 7 insertions(+), 17 deletions(-) delete mode 100644 runtime-optenv32/libbluray+32/autobuild/build diff --git a/runtime-optenv32/libbluray+32/autobuild/build b/runtime-optenv32/libbluray+32/autobuild/build deleted file mode 100644 index 097ce4f0a1d..00000000000 --- a/runtime-optenv32/libbluray+32/autobuild/build +++ /dev/null @@ -1,11 +0,0 @@ -export PATH=/opt/32/bin:$PATH -./configure --prefix=/opt/32 \ - --build=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --target=i686-pc-linux-gnu \ - ${AUTOTOOLS_AFTER} \ - CC=i686-pc-linux-gnu-gcc -make -make install DESTDIR="$PKGDIR" - -rm -fr "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/libbluray+32/autobuild/defines b/runtime-optenv32/libbluray+32/autobuild/defines index 3f08b73c83b..d66a480d6ec 100644 --- a/runtime-optenv32/libbluray+32/autobuild/defines +++ b/runtime-optenv32/libbluray+32/autobuild/defines @@ -1,9 +1,10 @@ PKGNAME=libbluray+32 PKGSEC=libs -PKGDES="Library to access Blu-Ray disks for video playback (opten32)" PKGDEP="libxml2+32 freetype+32" -BUILDDEP="32subsystem" +BUILDDEP="devel-base+32" +PKGDES="Library to access Blu-Ray disks for video playback (32-bit x86 runtime)" -AUTOTOOLS_AFTER="--enable-udf --disable-examples --disable-bdjava-jar" +AUTOTOOLS_AFTER="--disable-examples \ + --disable-bdjava-jar" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libbluray+32/spec b/runtime-optenv32/libbluray+32/spec index a875ef71145..d1e3e9e9a28 100644 --- a/runtime-optenv32/libbluray+32/spec +++ b/runtime-optenv32/libbluray+32/spec @@ -1,4 +1,4 @@ -VER=1.2.1 +VER=1.3.4 SRCS="tbl::https://download.videolan.org/pub/videolan/libbluray/$VER/libbluray-$VER.tar.bz2" -CHKSUMS="sha256::5223e83f7988ea2cc860b5cadcaf9cf971087b0c80ca7b60cc17c8300cae36ec" +CHKSUMS="sha256::478ffd68a0f5dde8ef6ca989b7f035b5a0a22c599142e5cd3ff7b03bbebe5f2b" CHKUPDATE="anitya::id=1565" From 670d4ee2ac811ef0f4fdfc52d8e8a4428b1854d7 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 1 Dec 2024 23:27:48 +0800 Subject: [PATCH 058/722] x264+32: update to 0+git20241027 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/x264+32/autobuild/build | 12 ------------ runtime-optenv32/x264+32/autobuild/defines | 14 +++++++++----- runtime-optenv32/x264+32/spec | 7 +++---- 3 files changed, 12 insertions(+), 21 deletions(-) delete mode 100644 runtime-optenv32/x264+32/autobuild/build diff --git a/runtime-optenv32/x264+32/autobuild/build b/runtime-optenv32/x264+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/x264+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/x264+32/autobuild/defines b/runtime-optenv32/x264+32/autobuild/defines index 4ef4e742bfb..e5bea78ec6d 100644 --- a/runtime-optenv32/x264+32/autobuild/defines +++ b/runtime-optenv32/x264+32/autobuild/defines @@ -1,10 +1,14 @@ PKGNAME=x264+32 PKGSEC=libs -PKGDEP=glibc+32 -BUILDDEP="32subsystem yasm" -PKGDES="H264 encoding library (optenv32)" +PKGDEP="glibc+32" +BUILDDEP="devel-base+32 nasm+32" +PKGDES="H264 encoding library (32-bit x86 runtime)" -ABSHADOW=no +PKGEPOCH=1 + +RECONF=0 +ABSHADOW=0 AUTOTOOLS_AFTER="--enable-shared --enable-pic" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/x264+32/spec b/runtime-optenv32/x264+32/spec index 54e63df2c9b..e052f5a7a3e 100644 --- a/runtime-optenv32/x264+32/spec +++ b/runtime-optenv32/x264+32/spec @@ -1,5 +1,4 @@ -VER=20160827.2245 -REL=3 -SRCS="tbl::https://download.videolan.org/pub/videolan/x264/snapshots/x264-snapshot-${VER/./-}-stable.tar.bz2" -CHKSUMS="sha256::1a985db59a64fda7dabac73b705ee7b0efac7ab34767a20c4730973b785d299d" +VER=0+git20241027 +SRCS="git::commit=da14df5535fd46776fb1c9da3130973295c87aca::https://git.videolan.org/git/x264.git" +CHKSUMS="SKIP" CHKUPDATE="anitya::id=15280" From f62103286e91c09edd7507f0e6bfb2367474cd93 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 1 Dec 2024 23:31:29 +0800 Subject: [PATCH 059/722] ffmpeg+32: update to 7.1 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/ffmpeg+32/autobuild/build | 93 +++++++++----------- runtime-optenv32/ffmpeg+32/autobuild/defines | 15 ++-- runtime-optenv32/ffmpeg+32/spec | 4 +- 3 files changed, 51 insertions(+), 61 deletions(-) diff --git a/runtime-optenv32/ffmpeg+32/autobuild/build b/runtime-optenv32/ffmpeg+32/autobuild/build index d2cd996c513..6e4bf3ed071 100644 --- a/runtime-optenv32/ffmpeg+32/autobuild/build +++ b/runtime-optenv32/ffmpeg+32/autobuild/build @@ -1,55 +1,44 @@ -export PATH=/opt/32/bin:$PATH -export PATH="/opt/32:$PATH" -export CC="i686-pc-linux-gnu-gcc" -export CXX="i686-pc-linux-gnu-g++" -export LD="i686-pc-linux-gnu-ld" -export AR="i686-pc-linux-gnu-ar" -export AS="i686-pc-linux-gnu-as" -export PKG_CONFIG="i686-pc-linux-gnu-pkg-config" +abinfo "Configuring FFmpeg ..." +"$SRCDIR"/configure \ + --prefix=/opt/32 \ + --disable-debug \ + --disable-static \ + --disable-stripping \ + --disable-avisynth \ + --enable-fontconfig \ + --enable-gnutls \ + --enable-gpl \ + --enable-libass \ + --enable-libbluray \ + --enable-libfreetype \ + --enable-libfribidi \ + --enable-libgsm \ + --enable-libmodplug \ + --enable-libmp3lame \ + --enable-libopencore_amrnb \ + --enable-libopencore_amrwb \ + --enable-libopus \ + --enable-libpulse \ + --enable-libsoxr \ + --enable-libspeex \ + --enable-libssh \ + --enable-libtheora \ + --enable-libv4l2 \ + --enable-libvorbis \ + --enable-libvpx \ + --enable-libx264 \ + --enable-libx265 \ + --enable-libxvid \ + --enable-runtime-cpudetect \ + --enable-shared \ + --enable-swresample \ + --enable-vdpau \ + --enable-version3 \ + --enable-vaapi -export CCPREFIX="/opt/32/bin/i686-pc-linux-gnu-" - -./configure --prefix=/opt/32 \ - --disable-debug \ - --disable-static \ - --disable-stripping \ - --enable-avisynth \ - --enable-avresample \ - --enable-fontconfig \ - --enable-gnutls \ - --enable-gpl \ - --enable-libass \ - --enable-libbluray \ - --enable-libfreetype \ - --enable-libfribidi \ - --enable-libgsm \ - --enable-libmodplug \ - --enable-libmp3lame \ - --enable-libopencore_amrnb \ - --enable-libopencore_amrwb \ - --enable-libopus \ - --enable-libpulse \ - --enable-libsoxr \ - --enable-libspeex \ - --enable-libssh \ - --enable-libtheora \ - --enable-libv4l2 \ - --enable-libvorbis \ - --enable-libvpx \ - --enable-libx264 \ - --enable-libx265 \ - --enable-libxvid \ - --enable-runtime-cpudetect \ - --enable-shared \ - --enable-swresample \ - --enable-vdpau \ - --enable-version3 \ - --enable-vaapi \ - --enable-cross-compile \ - --cross-prefix="$CCPREFIX" \ - --arch=i686 \ - --target-os=linux +abinfo "Building FFmpeg ..." make -make install DESTDIR="$PKGDIR" -rm -r "$PKGDIR"/opt/32/share +abinfo "Install FFmpeg ..." +make install \ + DESTDIR="$PKGDIR" diff --git a/runtime-optenv32/ffmpeg+32/autobuild/defines b/runtime-optenv32/ffmpeg+32/autobuild/defines index 874b3f3c342..33d589821cc 100644 --- a/runtime-optenv32/ffmpeg+32/autobuild/defines +++ b/runtime-optenv32/ffmpeg+32/autobuild/defines @@ -1,12 +1,13 @@ PKGNAME=ffmpeg+32 PKGSEC=sound -PKGDEP="alsa-lib+32 bzip2+32 fontconfig+32 fribidi+32 gnutls+32 gsm+32 lame+32 libass+32 libbluray+32 \ - libmodplug+32 pulseaudio+32 libssh+32 libtheora+32 libvdpau+32 libvorbis+32 libvpx+32 \ - x264+32 x265+32 opencore-amr+32 opus+32 schroedinger+32 sdl+32 speex+32 v4l-utils+32 xvidcore+32 \ - zlib+32 soxr+32 libva+32" -BUILDDEP="yasm 32subsystem" -PKGDES="Complete and free Internet live audio and video broadcasting solution (optenv32)" +PKGDEP="alsa-lib+32 bzip2+32 fontconfig+32 fribidi+32 gnutls+32 gsm+32 \ + lame+32 libass+32 libbluray+32 libmodplug+32 pulseaudio+32 libssh+32 \ + libtheora+32 libvdpau+32 libvorbis+32 libvpx+32 x264+32 x265+32 \ + opencore-amr+32 opus+32 schroedinger+32 sdl+32 speex+32 v4l-utils+32 \ + xvidcore+32 zlib+32 soxr+32 libva+32" +BUILDDEP="devel-base+32 yasm" +PKGDES="Complete and free Internet live audio and video broadcasting solution (32-bit x86 runtime)" AB_FLAGS_O3=1 NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/ffmpeg+32/spec b/runtime-optenv32/ffmpeg+32/spec index 8ca7efa05e5..56548c4295e 100644 --- a/runtime-optenv32/ffmpeg+32/spec +++ b/runtime-optenv32/ffmpeg+32/spec @@ -1,4 +1,4 @@ -VER=4.2.5 +VER=7.1 SRCS="tbl::https://ffmpeg.org/releases/ffmpeg-$VER.tar.xz" -CHKSUMS="sha256::574E66A7CAA4B08C1D2C0E26A79559CDD23732CBC57894BD74DF3989C35594C9" +CHKSUMS="sha256::40973d44970dbc83ef302b0609f2e74982be2d85916dd2ee7472d30678a7abe6" CHKUPDATE="anitya::id=5405" From 25e65cc4e711dfc0e01a7c59f41ad46cf7e26601 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Mon, 2 Dec 2024 17:58:52 +0800 Subject: [PATCH 060/722] libass+32: update to 0.17.2 - Use optenv32 template. - Clean up Autotools options. - Mark package as for 32-bit x86 runtime in PKGDES. --- runtime-optenv32/libass+32/autobuild/build | 9 --------- runtime-optenv32/libass+32/autobuild/defines | 10 +++++----- runtime-optenv32/libass+32/spec | 4 ++-- 3 files changed, 7 insertions(+), 16 deletions(-) delete mode 100644 runtime-optenv32/libass+32/autobuild/build diff --git a/runtime-optenv32/libass+32/autobuild/build b/runtime-optenv32/libass+32/autobuild/build deleted file mode 100644 index 3824eb327c2..00000000000 --- a/runtime-optenv32/libass+32/autobuild/build +++ /dev/null @@ -1,9 +0,0 @@ -export PATH=/opt/32/bin:$PATH -./configure --prefix=/opt/32 \ - --build=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --target=i686-pc-linux-gnu \ - ${AUTOTOOLS_AFTER} \ - CC=i686-pc-linux-gnu-gcc -make -make install DESTDIR="$PKGDIR" diff --git a/runtime-optenv32/libass+32/autobuild/defines b/runtime-optenv32/libass+32/autobuild/defines index c308e0557e2..273e29cd4f9 100644 --- a/runtime-optenv32/libass+32/autobuild/defines +++ b/runtime-optenv32/libass+32/autobuild/defines @@ -1,11 +1,11 @@ PKGNAME=libass+32 -PKGDES="Library for SSA/ASS subtitles rendering" +PKGDES="Library for SSA/ASS subtitles rendering (32-bit x86 runtime)" PKGSEC=libs PKGDEP="enca+32 fontconfig+32 fribidi+32" -BUILDDEP="yasm 32subsystem" +BUILDDEP="devel-base+32 yasm" -AUTOTOOLS_AFTER="--enable-enca \ - --enable-fontconfig" +AUTOTOOLS_AFTER="--enable-fontconfig" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 + PKGBREAK="ffmpeg+32<=3.2.2-1" diff --git a/runtime-optenv32/libass+32/spec b/runtime-optenv32/libass+32/spec index 3027459852e..a5da4fd40fc 100644 --- a/runtime-optenv32/libass+32/spec +++ b/runtime-optenv32/libass+32/spec @@ -1,4 +1,4 @@ -VER=0.15.1 +VER=0.17.2 SRCS="tbl::https://github.com/libass/libass/releases/download/$VER/libass-$VER.tar.xz" -CHKSUMS="sha256::1cdd39c9d007b06e737e7738004d7f38cf9b1e92843f37307b24e7ff63ab8e53" +CHKSUMS="sha256::e8261b51d66ba933fe99248c6fdd8767ed96c5a7e5363c83992c735a2c2fbf74" CHKUPDATE="anitya::id=1560" From 84141a563a78beb5ab0b0bc901e2fe86705ebc02 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Mon, 2 Dec 2024 18:21:54 +0800 Subject: [PATCH 061/722] gsm+32: improve packaging - Track patches at AOSC-Tracking/gsm @ aosc/v1.0.19 (HEAD: 66c4a494c6ffc3d2d0d3ad89fab923ac14b42834). - Lint build scripts. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/gsm+32/autobuild/build | 23 ++++---- runtime-optenv32/gsm+32/autobuild/defines | 11 +++- ...-fix-Makefile-miscellaneous-fix-ups.patch} | 58 +++++++++++++------ runtime-optenv32/gsm+32/spec | 1 + 4 files changed, 60 insertions(+), 33 deletions(-) rename runtime-optenv32/gsm+32/autobuild/patches/{0001-Arch-build-gsm-shared.patch => 0001-fix-Makefile-miscellaneous-fix-ups.patch} (74%) diff --git a/runtime-optenv32/gsm+32/autobuild/build b/runtime-optenv32/gsm+32/autobuild/build index 36dee8a695a..7677c54587b 100644 --- a/runtime-optenv32/gsm+32/autobuild/build +++ b/runtime-optenv32/gsm+32/autobuild/build @@ -1,13 +1,14 @@ -export PATH=/opt/32/bin:$PATH -CFLAGS="${CFLAGS} -fPIC" -make CCFLAGS="-c ${CFLAGS}" CC="i686-pc-linux-gnu-gcc -ansi -pedantic" +abinfo "Building gsm+32 ..." +make \ + CCFLAGS="-c ${CFLAGS}" \ + CC="i686-aosc-linux-gnu-gcc -ansi -pedantic" -install -m755 -d "$PKGDIR"/opt/32/{bin,lib,include/gsm,share/man/man{1,3}} +abinfo "Creating installation directories ..." +install -dvm755 "$PKGDIR"/opt/32/{bin,lib,include/gsm,share/man/man{1,3}} -make -j1 INSTALL_ROOT="$PKGDIR/opt/32" \ - GSM_INSTALL_INC="$PKGDIR/opt/32/include/gsm" \ - GSM_INSTALL_MAN="$PKGDIR/opt/32/share/man/man3" \ - TOAST_INSTALL_MAN="$PKGDIR/opt/32/share/man/man1" \ - install - -rm -r "$PKGDIR"/opt/32/{bin,share} +abinfo "Installing gsm+32 ..." +make install \ + INSTALL_ROOT="$PKGDIR/opt/32" \ + GSM_INSTALL_INC="$PKGDIR/opt/32/include/gsm" \ + GSM_INSTALL_MAN="$PKGDIR/opt/32/share/man/man3" \ + TOAST_INSTALL_MAN="$PKGDIR/opt/32/share/man/man1" diff --git a/runtime-optenv32/gsm+32/autobuild/defines b/runtime-optenv32/gsm+32/autobuild/defines index 1529a647d8c..6b79aa55140 100644 --- a/runtime-optenv32/gsm+32/autobuild/defines +++ b/runtime-optenv32/gsm+32/autobuild/defines @@ -1,6 +1,11 @@ PKGNAME=gsm+32 PKGSEC=libs PKGDEP="glibc+32" -BUILDDEP="32subsystem" -PKGDES="Shared libraries for GSM 06.10 lossy speech compression (optenv32)" -ABHOST=noarch +BUILDDEP="devel-base+32" +PKGDES="Shared libraries for GSM 06.10 lossy speech compression (32-bit x86 runtime)" + +NOLTO=1 +ABHOST=optenv32 + +# FIXME: Causes installation to fail. +NOPARALLEL=1 diff --git a/runtime-optenv32/gsm+32/autobuild/patches/0001-Arch-build-gsm-shared.patch b/runtime-optenv32/gsm+32/autobuild/patches/0001-fix-Makefile-miscellaneous-fix-ups.patch similarity index 74% rename from runtime-optenv32/gsm+32/autobuild/patches/0001-Arch-build-gsm-shared.patch rename to runtime-optenv32/gsm+32/autobuild/patches/0001-fix-Makefile-miscellaneous-fix-ups.patch index b14a4d57c12..69044b2d385 100644 --- a/runtime-optenv32/gsm+32/autobuild/patches/0001-Arch-build-gsm-shared.patch +++ b/runtime-optenv32/gsm+32/autobuild/patches/0001-fix-Makefile-miscellaneous-fix-ups.patch @@ -1,6 +1,22 @@ ---- a/Makefile 2006-04-26 15:14:26.000000000 -0400 -+++ b/Makefile 2010-06-19 16:53:25.000000000 -0400 -@@ -96,11 +96,11 @@ +From 66c4a494c6ffc3d2d0d3ad89fab923ac14b42834 Mon Sep 17 00:00:00 2001 +From: Mingcong Bai +Date: Mon, 2 Dec 2024 18:14:27 +0800 +Subject: [PATCH] fix(Makefile): miscellaneous fix-ups + +- Revised from Arch Linux patch. +- Build shared libraries. +- Correct ln command arguments to create symlinks instead of hard links. + +Link: https://gitlab.archlinux.org/archlinux/packaging/packages/gsm/-/blob/42d55f147ffd712e871e2c564e12f287416fb5f5/gsm-shared.patch +--- + Makefile | 82 ++++++++++++++++++++++++++++---------------------------- + 1 file changed, 41 insertions(+), 41 deletions(-) + +diff --git a/Makefile b/Makefile +index eaf94d5..5da8d79 100644 +--- a/Makefile ++++ b/Makefile +@@ -96,11 +96,11 @@ TOAST_INSTALL_MAN = $(TOAST_INSTALL_ROOT)/man/man1 # Other tools SHELL = /bin/sh @@ -12,9 +28,9 @@ -RMFLAGS = +RMFLAGS = -f FIND = find - COMPRESS = compress + COMPRESS = gzip COMPRESSFLAGS = -@@ -139,7 +139,7 @@ +@@ -139,7 +139,7 @@ LFLAGS = $(LDFLAGS) $(LDINC) # Targets @@ -23,7 +39,7 @@ TOAST = $(BIN)/toast UNTOAST = $(BIN)/untoast -@@ -257,7 +257,7 @@ +@@ -257,7 +257,7 @@ STUFF = ChangeLog \ # Install targets GSM_INSTALL_TARGETS = \ @@ -32,7 +48,7 @@ $(GSM_INSTALL_INC)/gsm.h \ $(GSM_INSTALL_MAN)/gsm.3 \ $(GSM_INSTALL_MAN)/gsm_explode.3 \ -@@ -279,7 +279,7 @@ +@@ -279,7 +279,7 @@ TOAST_INSTALL_TARGETS = \ # Target rules @@ -41,7 +57,7 @@ @-echo $(ROOT): Done. tst: $(TST)/lin2cod $(TST)/cod2lin $(TOAST) $(TST)/test-result -@@ -299,24 +299,23 @@ +@@ -299,24 +299,23 @@ install: toastinstall gsminstall # The basic API: libgsm @@ -51,9 +67,9 @@ - $(RANLIB) $(LIBGSM) - +$(LIBGSMSO): $(LIB) $(GSM_OBJECTS) -+ $(LD) -shared -Wl,-soname,libgsm.so.1 -o $@.1.0.13 $(GSM_OBJECTS) -+ $(LN) libgsm.so.1.0.13 $(LIBGSMSO).1 -+ $(LN) libgsm.so.1.0.13 $(LIBGSMSO) ++ $(LD) -shared -Wl,-soname,libgsm.so.1 -o $@.1.0.19 $(GSM_OBJECTS) ++ $(LN) libgsm.so.1.0.19 $(LIBGSMSO).1 ++ $(LN) libgsm.so.1.0.19 $(LIBGSMSO) # Toast, Untoast and Tcat -- the compress-like frontends to gsm. @@ -74,7 +90,7 @@ # The local bin and lib directories -@@ -351,53 +350,54 @@ +@@ -351,53 +350,54 @@ toastuninstall: fi $(TOAST_INSTALL_BIN)/toast: $(TOAST) @@ -137,15 +153,15 @@ chmod 444 $@ +$(GSM_INSTALL_LIB)/libgsm.so: $(LIBGSMSO) -+ -rm $(RMFLAGS) $@ $@.1 $@.1.0.13 -+ cp $?.1.0.13 $@.1.0.13 -+ chmod 755 $@.1.0.13 -+ $(LN) libgsm.so.1.0.13 $@ -+ $(LN) libgsm.so.1.0.13 $@.1 ++ -rm $(RMFLAGS) $@ $@.1 $@.1.0.19 ++ cp $?.1.0.19 $@.1.0.19 ++ chmod 755 $@.1.0.19 ++ $(LN) libgsm.so.1.0.19 $@ ++ $(LN) libgsm.so.1.0.19 $@.1 # Distribution -@@ -425,7 +425,7 @@ +@@ -425,7 +425,7 @@ semi-clean: -print | xargs rm $(RMFLAGS) clean: semi-clean @@ -154,7 +170,7 @@ $(TOAST) $(TCAT) $(UNTOAST) \ $(ROOT)/gsm-1.0.tar.Z -@@ -473,22 +473,22 @@ +@@ -473,22 +473,22 @@ $(ADDTST)/add: $(ADDTST)/add_test.o $(TST)/test-result: $(TST)/lin2cod $(TST)/cod2lin $(TOAST) $(TST)/run ( cd $(TST); ./run ) @@ -187,3 +203,7 @@ $(LD) $(LFLAGS) -o $(TST)/cod2lin \ - $(TST)/cod2lin.o $(LIBGSM) $(LDLIB) + $(TST)/cod2lin.o $(LIBGSMSO) $(LDLIB) +-- +2.47.1 + + diff --git a/runtime-optenv32/gsm+32/spec b/runtime-optenv32/gsm+32/spec index bb6a393634b..7afc480c218 100644 --- a/runtime-optenv32/gsm+32/spec +++ b/runtime-optenv32/gsm+32/spec @@ -1,4 +1,5 @@ VER=1.0.19 +REL=1 SRCS="tbl::http://www.quut.com/gsm/gsm-$VER.tar.gz" CHKSUMS="sha256::4903652f68a8c04d0041f0d19b1eb713ddcd2aa011c5e595b3b8bca2755270f6" CHKUPDATE="anitya::id=12587" From 79ae7f4bfad2a8e5b1cefb3ef50ca52476d597f4 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Mon, 2 Dec 2024 18:23:05 +0800 Subject: [PATCH 062/722] wxgtk-3+32: drop, orphaned --- runtime-optenv32/32subsystem/autobuild/defines | 2 +- runtime-optenv32/wxgtk-3+32/autobuild/build | 17 ----------------- runtime-optenv32/wxgtk-3+32/autobuild/defines | 8 -------- .../patches/make-abicheck-non-fatal.patch | 15 --------------- runtime-optenv32/wxgtk-3+32/spec | 5 ----- 5 files changed, 1 insertion(+), 46 deletions(-) delete mode 100644 runtime-optenv32/wxgtk-3+32/autobuild/build delete mode 100644 runtime-optenv32/wxgtk-3+32/autobuild/defines delete mode 100644 runtime-optenv32/wxgtk-3+32/autobuild/patches/make-abicheck-non-fatal.patch delete mode 100644 runtime-optenv32/wxgtk-3+32/spec diff --git a/runtime-optenv32/32subsystem/autobuild/defines b/runtime-optenv32/32subsystem/autobuild/defines index db809f31040..7dac8d08bf1 100644 --- a/runtime-optenv32/32subsystem/autobuild/defines +++ b/runtime-optenv32/32subsystem/autobuild/defines @@ -24,7 +24,7 @@ p11-kit+32 pango+32 pcre+32 perl+32 perl-xml-parser+32 pixman+32 pkg-config+32 p popt+32 portaudio+32 pulseaudio+32 readline+32 rtmpdump+32 s2tc+32 sbc+32 \ schroedinger+32 sdl+32 sdl-ttf+32 soundtouch+32 speex+32 sqlite+32 srtp+32 taglib+32 \ tcl+32 tk+32 twolame+32 util-linux+32 util-macros+32 v4l-utils+32 wavpack+32 wildmidi+32 \ -wxgtk+32 wxgtk-3+32 x11-lib+32 x11-proto+32 x264+32 x265+32 xcb-proto+32 xz+32 zlib+32 \ +wxgtk+32 x11-lib+32 x11-proto+32 x264+32 x265+32 xcb-proto+32 xz+32 zlib+32 \ gsm+32 fribidi+32 recode+32 enca+32 libass+32 gst-libav-1-0+32 ffmpeg+32 xvidcore+32 \ soxr+32 libssh+32 libbluray+32 vulkan+32" diff --git a/runtime-optenv32/wxgtk-3+32/autobuild/build b/runtime-optenv32/wxgtk-3+32/autobuild/build deleted file mode 100644 index 28b249e3a56..00000000000 --- a/runtime-optenv32/wxgtk-3+32/autobuild/build +++ /dev/null @@ -1,17 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -./configure --prefix=/opt/32 --libdir=/opt/32/lib --with-gtk=2 --with-opengl \ - --enable-unicode --enable-graphics_ctx --enable-mediactrl \ - --disable-webkit --disable-webview --with-regex=builtin \ - --with-libpng=sys --with-libxpm=sys --with-libjpeg=sys \ - --with-libtiff=sys --disable-precomp-headers --with-sdl \ - --without-libmspack --without-libnotify \ - LDFLAGS="${LDFLAGS} -L/opt/32/lib" \ - CC=i686-pc-linux-gnu-gcc \ - CXX=i686-pc-linux-gnu-g++ \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make -C locale allmo -make install DESTDIR=$PKGDIR - -rm -rf $PKGDIR/opt/32/share diff --git a/runtime-optenv32/wxgtk-3+32/autobuild/defines b/runtime-optenv32/wxgtk-3+32/autobuild/defines deleted file mode 100644 index 5e2731105df..00000000000 --- a/runtime-optenv32/wxgtk-3+32/autobuild/defines +++ /dev/null @@ -1,8 +0,0 @@ -PKGNAME=wxgtk-3+32 -PKGSEC=libs -PKGDEP="gtk-2+32 sdl+32 gst-plugins-base-0-10+32" -BUILDDEP="32subsystem" -PKGDES="GTK+ implementation of wxWidgets API for GUI" - -NOLTO=1 -ABHOST=noarch diff --git a/runtime-optenv32/wxgtk-3+32/autobuild/patches/make-abicheck-non-fatal.patch b/runtime-optenv32/wxgtk-3+32/autobuild/patches/make-abicheck-non-fatal.patch deleted file mode 100644 index 97055ba46fa..00000000000 --- a/runtime-optenv32/wxgtk-3+32/autobuild/patches/make-abicheck-non-fatal.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff -up wxGTK-2.8.12/src/common/appbase.cpp.abicheck wxGTK-2.8.12/src/common/appbase.cpp ---- wxGTK-2.8.12/src/common/appbase.cpp.abicheck 2015-03-12 17:15:18.000000000 +0100 -+++ wxGTK-2.8.12/src/common/appbase.cpp 2015-03-12 17:15:57.000000000 +0100 -@@ -424,10 +424,7 @@ bool wxAppConsole::CheckBuildOptions(con - msg.Printf(_T("Mismatch between the program and library build versions detected.\nThe library used %s,\nand %s used %s."), - lib.c_str(), progName.c_str(), prog.c_str()); - -- wxLogFatalError(msg.c_str()); -- -- // normally wxLogFatalError doesn't return -- return false; -+ wxLogWarning(msg.c_str()); - } - #undef wxCMP - diff --git a/runtime-optenv32/wxgtk-3+32/spec b/runtime-optenv32/wxgtk-3+32/spec deleted file mode 100644 index b2274c0ca99..00000000000 --- a/runtime-optenv32/wxgtk-3+32/spec +++ /dev/null @@ -1,5 +0,0 @@ -VER=3.0.4 -REL=3 -SRCS="tbl::https://github.com/wxWidgets/wxWidgets/releases/download/v$VER/wxWidgets-$VER.tar.bz2" -CHKSUMS="sha256::96157f988d261b7368e5340afa1a0cad943768f35929c22841f62c25b17bf7f0" -CHKUPDATE="anitya::id=5150" From f8e8848389751054fa91acba11510f82421537f3 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Mon, 2 Dec 2024 18:23:33 +0800 Subject: [PATCH 063/722] wxgtk+32: drop, orphaned --- groups/optenv32 | 6 ++--- .../32subsystem/autobuild/defines | 2 +- runtime-optenv32/wxgtk+32/autobuild/build | 27 ------------------- runtime-optenv32/wxgtk+32/autobuild/defines | 7 ----- runtime-optenv32/wxgtk+32/spec | 4 --- 5 files changed, 3 insertions(+), 43 deletions(-) delete mode 100644 runtime-optenv32/wxgtk+32/autobuild/build delete mode 100644 runtime-optenv32/wxgtk+32/autobuild/defines delete mode 100644 runtime-optenv32/wxgtk+32/spec diff --git a/groups/optenv32 b/groups/optenv32 index acb40632ae5..74ba4834290 100644 --- a/groups/optenv32 +++ b/groups/optenv32 @@ -47,14 +47,14 @@ vulkan-loader+32 vulkan+32 soxr+32 xvidcore+32 +krb5+32 libssh+32 libbluray+32 +x264+32 ffmpeg+32 gst-libav-1-0+32 libass+32 gsm+32 -wxgtk-3+32 -wxgtk+32 util-macros+32 tk+32 tcl+32 @@ -75,7 +75,6 @@ libcroco+32 libaio+32 gtk-2+32 opencore-amr+32 -x264+32 libmad+32 lame+32 gst-plugins-ugly-1-0+32 @@ -134,7 +133,6 @@ nettle+32 gnutls+32 openssl+32 openldap+32 -krb5+32 cups+32 libglvnd+32 libvdpau+32 diff --git a/runtime-optenv32/32subsystem/autobuild/defines b/runtime-optenv32/32subsystem/autobuild/defines index 7dac8d08bf1..0d15806cf3f 100644 --- a/runtime-optenv32/32subsystem/autobuild/defines +++ b/runtime-optenv32/32subsystem/autobuild/defines @@ -24,7 +24,7 @@ p11-kit+32 pango+32 pcre+32 perl+32 perl-xml-parser+32 pixman+32 pkg-config+32 p popt+32 portaudio+32 pulseaudio+32 readline+32 rtmpdump+32 s2tc+32 sbc+32 \ schroedinger+32 sdl+32 sdl-ttf+32 soundtouch+32 speex+32 sqlite+32 srtp+32 taglib+32 \ tcl+32 tk+32 twolame+32 util-linux+32 util-macros+32 v4l-utils+32 wavpack+32 wildmidi+32 \ -wxgtk+32 x11-lib+32 x11-proto+32 x264+32 x265+32 xcb-proto+32 xz+32 zlib+32 \ +x11-lib+32 x11-proto+32 x264+32 x265+32 xcb-proto+32 xz+32 zlib+32 \ gsm+32 fribidi+32 recode+32 enca+32 libass+32 gst-libav-1-0+32 ffmpeg+32 xvidcore+32 \ soxr+32 libssh+32 libbluray+32 vulkan+32" diff --git a/runtime-optenv32/wxgtk+32/autobuild/build b/runtime-optenv32/wxgtk+32/autobuild/build deleted file mode 100644 index e1e8b2cd67c..00000000000 --- a/runtime-optenv32/wxgtk+32/autobuild/build +++ /dev/null @@ -1,27 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -export CFLAGS="$CFLAGS -Wno-narrowing" -export CXXFLAGS="$CXXFLAGS -Wno-narrowing" - -./configure --prefix=/opt/32 --libdir=/opt/32/lib --with-gtk=2 --with-opengl \ - --enable-unicode --enable-graphics_ctx --enable-mediactrl \ - --disable-webkit --disable-webview --with-regex=builtin \ - --with-libpng=sys --with-libxpm=sys --with-libjpeg=sys \ - --with-libtiff=sys --disable-precomp-headers --with-sdl \ - --with-opengl --disable-optimize --disable-precomp-headers \ - --without-libmspack --without-libnotify \ - LDFLAGS="${LDFLAGS} -L/opt/32/lib" \ - CC=i686-pc-linux-gnu-gcc \ - CXX=i686-pc-linux-gnu-g++ \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make -C locale allmo -make -C contrib/src -make install DESTDIR=$PKGDIR -make -C contrib/src install DESTDIR=$PKGDIR - -rm -rf $PKGDIR/opt/32/share -rm -f $PKGDIR/opt/32/bin/wxrc -rm -f $PKGDIR/opt/32/bin/wx-config -cp lib/wx/config/gtk2-unicode-release-2.8 $PKGDIR/opt/32/bin/wx-config-2.8 - diff --git a/runtime-optenv32/wxgtk+32/autobuild/defines b/runtime-optenv32/wxgtk+32/autobuild/defines deleted file mode 100644 index b84d7937ac5..00000000000 --- a/runtime-optenv32/wxgtk+32/autobuild/defines +++ /dev/null @@ -1,7 +0,0 @@ -PKGNAME=wxgtk+32 -PKGSEC=libs -PKGDEP="gtk-2+32 sdl+32 gst-plugins-base-0-10+32" -PKGDES="GTK+ implementation of wxWidgets API for GUI" - -NOLTO=1 -ABHOST=noarch diff --git a/runtime-optenv32/wxgtk+32/spec b/runtime-optenv32/wxgtk+32/spec deleted file mode 100644 index 63afbf5db88..00000000000 --- a/runtime-optenv32/wxgtk+32/spec +++ /dev/null @@ -1,4 +0,0 @@ -VER=2.8.12.1 -SRCS="tbl::https://downloads.sourceforge.net/wxpython/wxPython-src-$VER.tar.bz2" -CHKSUMS="sha256::1f3f153d9f1504c6ce2d2c4b23e940b8f58b81f4cba35cda1a5bb31142243cd0" -REL=3 From 4ccab981be91cc6e2bb43c809925343d14a4cc44 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Mon, 2 Dec 2024 18:24:26 +0800 Subject: [PATCH 064/722] util-macros+32: drop, orphaned --- groups/optenv32 | 1 - runtime-optenv32/32subsystem/autobuild/defines | 2 +- runtime-optenv32/util-macros+32/autobuild/build | 2 -- runtime-optenv32/util-macros+32/autobuild/defines | 7 ------- runtime-optenv32/util-macros+32/spec | 4 ---- 5 files changed, 1 insertion(+), 15 deletions(-) delete mode 100644 runtime-optenv32/util-macros+32/autobuild/build delete mode 100644 runtime-optenv32/util-macros+32/autobuild/defines delete mode 100644 runtime-optenv32/util-macros+32/spec diff --git a/groups/optenv32 b/groups/optenv32 index 74ba4834290..95e9cde3a45 100644 --- a/groups/optenv32 +++ b/groups/optenv32 @@ -55,7 +55,6 @@ ffmpeg+32 gst-libav-1-0+32 libass+32 gsm+32 -util-macros+32 tk+32 tcl+32 sdl-ttf+32 diff --git a/runtime-optenv32/32subsystem/autobuild/defines b/runtime-optenv32/32subsystem/autobuild/defines index 0d15806cf3f..24119c6572b 100644 --- a/runtime-optenv32/32subsystem/autobuild/defines +++ b/runtime-optenv32/32subsystem/autobuild/defines @@ -23,7 +23,7 @@ nss+32 openal-soft+32 opencore-amr+32 openjpeg-legacy+32 openldap+32 openssl+32 p11-kit+32 pango+32 pcre+32 perl+32 perl-xml-parser+32 pixman+32 pkg-config+32 poppler+32 \ popt+32 portaudio+32 pulseaudio+32 readline+32 rtmpdump+32 s2tc+32 sbc+32 \ schroedinger+32 sdl+32 sdl-ttf+32 soundtouch+32 speex+32 sqlite+32 srtp+32 taglib+32 \ -tcl+32 tk+32 twolame+32 util-linux+32 util-macros+32 v4l-utils+32 wavpack+32 wildmidi+32 \ +tcl+32 tk+32 twolame+32 util-linux+32 v4l-utils+32 wavpack+32 wildmidi+32 \ x11-lib+32 x11-proto+32 x264+32 x265+32 xcb-proto+32 xz+32 zlib+32 \ gsm+32 fribidi+32 recode+32 enca+32 libass+32 gst-libav-1-0+32 ffmpeg+32 xvidcore+32 \ soxr+32 libssh+32 libbluray+32 vulkan+32" diff --git a/runtime-optenv32/util-macros+32/autobuild/build b/runtime-optenv32/util-macros+32/autobuild/build deleted file mode 100644 index f2bd0914731..00000000000 --- a/runtime-optenv32/util-macros+32/autobuild/build +++ /dev/null @@ -1,2 +0,0 @@ -export PATH=/opt/32/bin:$PATH -mkdir $PKGDIR diff --git a/runtime-optenv32/util-macros+32/autobuild/defines b/runtime-optenv32/util-macros+32/autobuild/defines deleted file mode 100644 index 6c242f4e0df..00000000000 --- a/runtime-optenv32/util-macros+32/autobuild/defines +++ /dev/null @@ -1,7 +0,0 @@ -PKGNAME=util-macros+32 -PKGDES="Transitional package for util-macros" -PKGSEC=x11 -PKGDEP="util-macros" -BUILDDEP="32subsystem" -NOLTO=1 -ABHOST=noarch diff --git a/runtime-optenv32/util-macros+32/spec b/runtime-optenv32/util-macros+32/spec deleted file mode 100644 index ff16a2b7230..00000000000 --- a/runtime-optenv32/util-macros+32/spec +++ /dev/null @@ -1,4 +0,0 @@ -VER=999 -DUMMYSRC=1 -REL=3 -CHKUPDATE="anitya::id=5252" From f61698f493752f7b0b6c21253a7e3b14ee7d7706 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Mon, 2 Dec 2024 18:31:12 +0800 Subject: [PATCH 065/722] tk+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/tk+32/autobuild/beyond | 7 +++++++ runtime-optenv32/tk+32/autobuild/build | 23 ----------------------- runtime-optenv32/tk+32/autobuild/defines | 10 +++++----- runtime-optenv32/tk+32/spec | 3 ++- 4 files changed, 14 insertions(+), 29 deletions(-) create mode 100644 runtime-optenv32/tk+32/autobuild/beyond delete mode 100644 runtime-optenv32/tk+32/autobuild/build diff --git a/runtime-optenv32/tk+32/autobuild/beyond b/runtime-optenv32/tk+32/autobuild/beyond new file mode 100644 index 00000000000..aca8feceb71 --- /dev/null +++ b/runtime-optenv32/tk+32/autobuild/beyond @@ -0,0 +1,7 @@ +abinfo "Installing private headers ..." +make install-private-headers \ + -C "$BLDDIR" \ + DESTDIR="$PKGDIR" + +abinfo "Dropping unneeded demos ..." +rm -rf "$PKGDIR"/opt/32/lib/tk${PKGVER:0:3}/demos/ diff --git a/runtime-optenv32/tk+32/autobuild/build b/runtime-optenv32/tk+32/autobuild/build deleted file mode 100644 index a332f68bd45..00000000000 --- a/runtime-optenv32/tk+32/autobuild/build +++ /dev/null @@ -1,23 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -cd unix -./configure --prefix=/opt/32 \ - --mandir=/opt/32/share/man \ - --enable-threads \ - CFLAGS="${CFLAGS} -I/opt/32/include" \ - LDFLAGS="${LDFLAGS} -L/opt/32/lib" \ - CC=i686-pc-linux-gnu-gcc CXX=i686-pc-linux-gnu-g++ -make - -sed -e "s@^\(TK_SRC_DIR='\).*@\1/usr/include'@" \ - -e "/TK_B/s@='\(-L\)\?.*unix@='\1/usr/lib@" \ - -i tkConfig.sh - -make DESTDIR="$PKGDIR" install -make DESTDIR="$PKGDIR" install-private-headers -chmod -v 755 "$PKGDIR"/opt/32/lib/libtk8.6.so - -cd .. - -rm -rf "$PKGDIR"/opt/32/{bin,share} -rm -rf "$PKGDIR"/opt/32/lib/tk${PKGVER:0:3}/demos/ diff --git a/runtime-optenv32/tk+32/autobuild/defines b/runtime-optenv32/tk+32/autobuild/defines index b44feeb2e4e..3f511e01a66 100644 --- a/runtime-optenv32/tk+32/autobuild/defines +++ b/runtime-optenv32/tk+32/autobuild/defines @@ -1,9 +1,9 @@ PKGNAME=tk+32 -PKGDES="Tool Command Lanuage Toolkit (optenv32)" -PKGDEP="glibc+32 gcc+32 tcl+32 x11-lib+32" -BUILDDEP="32subsystem" PKGSEC=devel +PKGDEP="glibc+32 gcc+32 tcl+32 x11-lib+32" +BUILDDEP="devel-base+32" +PKGDES="Tool Command Lanuage Toolkit (32-bit x86 runtime)" -NOSTATIC=no +NOSTATIC=0 NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/tk+32/spec b/runtime-optenv32/tk+32/spec index 69390a8be72..14cc0ec4f62 100644 --- a/runtime-optenv32/tk+32/spec +++ b/runtime-optenv32/tk+32/spec @@ -1,5 +1,6 @@ VER=8.6.10 +REL=2 SRCS="tbl::https://downloads.sourceforge.net/tcl/tk$VER-src.tar.gz" CHKSUMS="sha256::63df418a859d0a463347f95ded5cd88a3dd3aaa1ceecaeee362194bc30f3e386" -REL=1 CHKUPDATE="anitya::id=11426" +SUBDIR="tk${VER}/unix" From 509a46376fc275d50bf22857e5d1d354b02860e8 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Mon, 2 Dec 2024 18:35:38 +0800 Subject: [PATCH 066/722] tcl+32: update to 8.6.14 - Use optenv32 template. - Sync build script from the main system package. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/tcl+32/autobuild/build | 80 +++++++++++++++++------ runtime-optenv32/tcl+32/autobuild/defines | 10 +-- runtime-optenv32/tcl+32/spec | 6 +- 3 files changed, 68 insertions(+), 28 deletions(-) diff --git a/runtime-optenv32/tcl+32/autobuild/build b/runtime-optenv32/tcl+32/autobuild/build index d2f197e8f6c..0d6f5ba3c89 100644 --- a/runtime-optenv32/tcl+32/autobuild/build +++ b/runtime-optenv32/tcl+32/autobuild/build @@ -1,25 +1,65 @@ -export PATH=/opt/32/bin:$PATH - -rm -rf pkgs/sqlite3* - -cd unix -./configure --prefix=/opt/32 \ - --mandir=/opt/32/share/man \ - --enable-threads \ - CC=i686-pc-linux-gnu-gcc CXX=i686-pc-linux-gnu-g++ \ - LDFLAGS="${LDFLAGS} -L/opt/32/lib" \ - CFLAGS="${CFLAGS} -I/opt/32/include" \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig +abinfo "Removing bundled SQLite ..." +rm -rv "$SRCDIR"/../pkgs/sqlite3* + +abinfo "Configuring Tcl ..." +"$SRCDIR"/configure \ + --prefix=/opt/32 \ + --mandir=/opt/32/share/man \ + --enable-threads \ + --enable-64bit \ + LIBS=-lm + +abinfo "Building Tcl ..." make -sed -e "s@^\(TCL_SRC_DIR='\).*@\1/usr/include'@" \ - -e "/TCL_B/s@='\(-L\)\?.*unix@='\1/usr/lib@" \ - -i tclConfig.sh +abinfo "Fixing header and library install paths ..." +sed -e "s@^\(TCL_SRC_DIR='\).*@\1/opt/32/include'@" \ + -e "/TCL_B/s@='\(-L\)\?.*unix@='\1/opt/32/lib@" \ + -i "$SRCDIR"/tclConfig.sh + +abinfo "Installing Tcl ..." +make install \ + DESTDIR="$PKGDIR" + +abinfo "Installing Tcl private headers ..." +make install-private-headers \ + DESTDIR="$PKGDIR" + +abinfo "Symlinking tclsh => tclsh${PKGVER%.*} ..." +ln -sv tclsh${PKGVER%.*} \ + "$PKGDIR"/opt/32/bin/tclsh + +abinfo "Symlinking libtcl.so => libtcl${PKGVER%.*}.so ..." +ln -sv libtcl${PKGVER%.*}.so \ + "$PKGDIR"/opt/32/lib/libtcl.so +chmod -v 755 "$PKGDIR"/opt/32/lib/libtcl8.6.so + +abinfo "Fixing paths in tclConfig.sh ..." +sed -e "s#$SRCDIR/unix#/opt/32/lib#" \ + -e "s#$SRCDIR#/opt/32/include#" \ + -i "$PKGDIR/opt/32/lib/tclConfig.sh" + +abinfo "Tweaking tdbcConfig.sh ..." +tdbcver=tdbc1.1.7 +sed -e "s#$SRCDIR/unix/pkgs/$tdbcver#/opt/32/lib/$tdbcver#" \ + -e "s#$SRCDIR/pkgs/$tdbcver/generic#/opt/32/include#" \ + -e "s#$SRCDIR/pkgs/$tdbcver/library#/opt/32/lib/tcl${PKGVER%.*}#" \ + -e "s#$SRCDIR/pkgs/$tdbcver#/opt/32/include#" \ + -i "$PKGDIR/opt/32/lib/$tdbcver/tdbcConfig.sh" + +abinfo "Tweaking itclConfig.sh ..." +itclver=itcl4.2.4 +sed -e "s#$SRCDIR/unix/pkgs/$itclver#/opt/32/lib/$itclver#" \ + -e "s#$SRCDIR/pkgs/$itclver/generic#/opt/32/include#" \ + -e "s#$SRCDIR/pkgs/$itclver#/opt/32/include#" \ + -i "$PKGDIR/opt/32/lib/$itclver/itclConfig.sh" -make DESTDIR="$PKGDIR" install -make DESTDIR="$PKGDIR" install-private-headers +abinfo "Removing -lieee linkage from tcl.pc ..." +sed -e 's|-lieee||g' \ + -i "$PKGDIR"/opt/32/lib/pkgconfig/tcl.pc -chmod -v 755 "$PKGDIR"/opt/32/lib/libtcl8.6.so -cd .. +abinfo "Renaming man page to add Tcl_ prefix ..." +mv -v "$PKGDIR"/opt/32/share/man/man3/{,Tcl_}Thread.3 -rm -rf "$PKGDIR"/opt/32/{bin,share} +abinfo "Removing executable bit from static libraries ..." +chmod -v -x "$PKGDIR"/opt/32/lib/*.a diff --git a/runtime-optenv32/tcl+32/autobuild/defines b/runtime-optenv32/tcl+32/autobuild/defines index 2b39bf7556c..5c3b1f310c0 100644 --- a/runtime-optenv32/tcl+32/autobuild/defines +++ b/runtime-optenv32/tcl+32/autobuild/defines @@ -1,9 +1,9 @@ PKGNAME=tcl+32 -PKGDES="Tool Command Lanuage (optenv32)" -PKGDEP="zlib+32" -BUILDDEP="32subsystem" PKGSEC=devel +PKGDEP="zlib+32" +BUILDDEP="devel-base+32" +PKGDES="Tool Command Lanuage (32-bit x86 runtime)" -NOSTATIC=no +NOSTATIC=0 NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/tcl+32/spec b/runtime-optenv32/tcl+32/spec index 3042a503c42..eb80efef43f 100644 --- a/runtime-optenv32/tcl+32/spec +++ b/runtime-optenv32/tcl+32/spec @@ -1,5 +1,5 @@ -VER=8.6.10 +VER=8.6.14 SRCS="tbl::https://downloads.sourceforge.net/tcl/tcl$VER-src.tar.gz" -CHKSUMS="sha256::5196dbf6638e3df8d5c87b5815c8c2b758496eb6f0e41446596c9a4e638d87ed" -REL=1 +CHKSUMS="sha256::5880225babf7954c58d4fb0f5cf6279104ce1cd6aa9b71e9a6322540e1c4de66" CHKUPDATE="anitya::id=4941" +SUBDIR="tcl$VER/unix" From d36d66bfab82d84ae169e1fb4af29db5d9058839 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Mon, 2 Dec 2024 18:40:43 +0800 Subject: [PATCH 067/722] sdl-ttf+32: improve packaging - Use optenv32 template. - Sync patches from main system package. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/sdl-ttf+32/autobuild/build | 14 ----------- runtime-optenv32/sdl-ttf+32/autobuild/defines | 11 +++++---- ...1-configure-use-pkg-config-check-ft2.patch | 23 +++++++++++++++++++ runtime-optenv32/sdl-ttf+32/spec | 2 +- 4 files changed, 31 insertions(+), 19 deletions(-) delete mode 100644 runtime-optenv32/sdl-ttf+32/autobuild/build create mode 100644 runtime-optenv32/sdl-ttf+32/autobuild/patches/0001-configure-use-pkg-config-check-ft2.patch diff --git a/runtime-optenv32/sdl-ttf+32/autobuild/build b/runtime-optenv32/sdl-ttf+32/autobuild/build deleted file mode 100644 index ab404ea70b3..00000000000 --- a/runtime-optenv32/sdl-ttf+32/autobuild/build +++ /dev/null @@ -1,14 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -./configure --enable-shared --prefix=/opt/32 \ - --disable-static ${AUTOTOOLS_AFTER} \ - LDFLAGS="${LDFLAGS} -L/opt/32/lib -lfreetype" \ - CC=i686-pc-linux-gnu-gcc \ - CXX=i686-pc-linux-gnu-g++ \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig \ - --with-freetype-prefix=/opt/32 \ - CFLAGS="${CFLAGS} -I/opt/32/include/freetype2" -make -make DESTDIR=$PKGDIR install - -rm -rf $PKGDIR/opt/32/{bin,share} diff --git a/runtime-optenv32/sdl-ttf+32/autobuild/defines b/runtime-optenv32/sdl-ttf+32/autobuild/defines index ca8e7ff22a5..75978e5cbd6 100644 --- a/runtime-optenv32/sdl-ttf+32/autobuild/defines +++ b/runtime-optenv32/sdl-ttf+32/autobuild/defines @@ -1,7 +1,10 @@ PKGNAME=sdl-ttf+32 -PKGDES="A library that allows you to use TrueType fonts in your SDL applications" -PKGDEP="sdl+32 freetype+32" -BUILDDEP="32subsystem" PKGSEC=libs +PKGDEP="sdl+32 freetype+32" +BUILDDEP="devel-base+32" +PKGDES="A library that allows you to use TrueType fonts in your SDL applications (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 + +AUTOTOOLS_AFTER="--with-freetype-prefix=/opt/32" diff --git a/runtime-optenv32/sdl-ttf+32/autobuild/patches/0001-configure-use-pkg-config-check-ft2.patch b/runtime-optenv32/sdl-ttf+32/autobuild/patches/0001-configure-use-pkg-config-check-ft2.patch new file mode 100644 index 00000000000..27342b86f61 --- /dev/null +++ b/runtime-optenv32/sdl-ttf+32/autobuild/patches/0001-configure-use-pkg-config-check-ft2.patch @@ -0,0 +1,23 @@ +--- a/configure.in 2012-01-14 20:44:08.000000000 -0800 ++++ b/configure.in 2023-10-27 17:32:50.406931629 -0700 +@@ -94,6 +94,7 @@ + dnl + dnl Get the cflags and libraries from the freetype-config script + dnl ++PKG_CHECK_MODULES(FreeType2, [freetype2], [ft2_pc=yes]) + AC_ARG_WITH(freetype-prefix,[ --with-freetype-prefix=PFX Prefix where FREETYPE is + installed (optional)], + freetype_prefix="$withval", freetype_prefix="") +@@ -113,7 +114,11 @@ + FREETYPE_CONFIG=$freetype_prefix/bin/freetype-config + fi + fi +-AC_PATH_PROG(FREETYPE_CONFIG, freetype-config, no) ++if test "x$ft2_pc" = xyes; then ++ FREETYPE_CONFIG="pkg-config freetype2" ++else ++ AC_PATH_PROG(FREETYPE_CONFIG, freetype-config, no) ++fi + no_freetype="" + if test "$FREETYPE_CONFIG" = "no" ; then + AC_MSG_ERROR([ diff --git a/runtime-optenv32/sdl-ttf+32/spec b/runtime-optenv32/sdl-ttf+32/spec index abce2477afe..fedc7b87001 100644 --- a/runtime-optenv32/sdl-ttf+32/spec +++ b/runtime-optenv32/sdl-ttf+32/spec @@ -1,5 +1,5 @@ VER=2.0.11 +REL=3 SRCS="tbl::https://www.libsdl.org/projects/SDL_ttf/release/SDL_ttf-$VER.tar.gz" CHKSUMS="sha256::724cd895ecf4da319a3ef164892b72078bd92632a5d812111261cde248ebcdb7" -REL=2 CHKUPDATE="anitya::id=7988" From feb94a45d0b35cd8d156ee6830a3bce41ada24aa Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Mon, 2 Dec 2024 20:14:13 +0800 Subject: [PATCH 068/722] s2tc: update to 1.0+git20210317 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/s2tc+32/autobuild/build | 9 --------- runtime-optenv32/s2tc+32/autobuild/conffiles | 0 runtime-optenv32/s2tc+32/autobuild/defines | 8 +++++--- runtime-optenv32/s2tc+32/autobuild/patch | 1 - runtime-optenv32/s2tc+32/spec | 6 +++--- 5 files changed, 8 insertions(+), 16 deletions(-) delete mode 100644 runtime-optenv32/s2tc+32/autobuild/build delete mode 100644 runtime-optenv32/s2tc+32/autobuild/conffiles delete mode 100644 runtime-optenv32/s2tc+32/autobuild/patch diff --git a/runtime-optenv32/s2tc+32/autobuild/build b/runtime-optenv32/s2tc+32/autobuild/build deleted file mode 100644 index cf33904d38e..00000000000 --- a/runtime-optenv32/s2tc+32/autobuild/build +++ /dev/null @@ -1,9 +0,0 @@ -export PATH=/opt/32/bin:$PATH -CC=i686-pc-linux-gnu-gcc -CXX=i686-pc-linux-gnu-g++ - -./configure --prefix=/opt/32 -make -make install DESTDIR=$PKGDIR - -rm -rf $PKGDIR/opt/32/bin diff --git a/runtime-optenv32/s2tc+32/autobuild/conffiles b/runtime-optenv32/s2tc+32/autobuild/conffiles deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/runtime-optenv32/s2tc+32/autobuild/defines b/runtime-optenv32/s2tc+32/autobuild/defines index d4720de0331..cc38adcc9fa 100644 --- a/runtime-optenv32/s2tc+32/autobuild/defines +++ b/runtime-optenv32/s2tc+32/autobuild/defines @@ -1,8 +1,10 @@ PKGNAME=s2tc+32 PKGSEC=libs -PKGDES="S2tc texture compress library" PKGDEP="mesa+32" -BUILDDEP="32subsystem" +BUILDDEP="devel-base+32" +PKGDES="S2TC texture compress library (32-bit x86 runtime)" + +PKGEPOCH=1 NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/s2tc+32/autobuild/patch b/runtime-optenv32/s2tc+32/autobuild/patch deleted file mode 100644 index 5d4f2eef566..00000000000 --- a/runtime-optenv32/s2tc+32/autobuild/patch +++ /dev/null @@ -1 +0,0 @@ -NOCONFIGURE=1 ./autogen.sh diff --git a/runtime-optenv32/s2tc+32/spec b/runtime-optenv32/s2tc+32/spec index 0821da204f1..892f72acdf3 100644 --- a/runtime-optenv32/s2tc+32/spec +++ b/runtime-optenv32/s2tc+32/spec @@ -1,5 +1,5 @@ -VER=20150112 -REL=3 -SRCS="git::commit=ef07298391c6dcad843e0b13e985090c1dd76e76::git://people.freedesktop.org/~mareko/libtxc_dxtn" +VER=1.0+git20210317 +__COMMIT="e68f78f497cd96601248a4bca3bd009d7517d00d" +SRCS="git::commit=${__COMMIT}::https://github.com/divVerent/s2tc" CHKSUMS="SKIP" CHKUPDATE="anitya::id=230529" From c220027a1fa845b473f71b352c2823224852296a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Mon, 2 Dec 2024 20:59:35 +0800 Subject: [PATCH 069/722] portaudio+32: update to 19.7.0 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/portaudio+32/autobuild/build | 12 ------------ runtime-optenv32/portaudio+32/autobuild/defines | 8 +++----- runtime-optenv32/portaudio+32/spec | 8 +++----- 3 files changed, 6 insertions(+), 22 deletions(-) delete mode 100644 runtime-optenv32/portaudio+32/autobuild/build diff --git a/runtime-optenv32/portaudio+32/autobuild/build b/runtime-optenv32/portaudio+32/autobuild/build deleted file mode 100644 index 3befca8217f..00000000000 --- a/runtime-optenv32/portaudio+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -./configure --enable-shared --prefix=/opt/32 \ - --disable-static ${AUTOTOOLS_AFTER} \ - LDFLAGS="${LDFLAGS} -L/opt/32/lib" \ - CC=i686-pc-linux-gnu-gcc \ - CXX=i686-pc-linux-gnu-g++ \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make DESTDIR=$PKGDIR install - -rm -rf $PKGDIR/opt/32/{bin,share} diff --git a/runtime-optenv32/portaudio+32/autobuild/defines b/runtime-optenv32/portaudio+32/autobuild/defines index 3b7e6873c37..0cd4fc3a3cf 100644 --- a/runtime-optenv32/portaudio+32/autobuild/defines +++ b/runtime-optenv32/portaudio+32/autobuild/defines @@ -1,10 +1,8 @@ PKGNAME=portaudio+32 PKGSEC=sound PKGDEP="alsa-lib+32" -BUILDDEP="32subsystem" -PKGDES="A free, cross platform, open source audio I/O library" +BUILDDEP="devel-base+32" +PKGDES="A free, cross platform, open source audio I/O library (32-bit x86 runtime)" -AUTOTOOLS_AFTER="--enable-cxx --without-jack" NOLTO=1 -ABHOST=noarch -NOPARALLEL=1 +ABHOST=optenv32 diff --git a/runtime-optenv32/portaudio+32/spec b/runtime-optenv32/portaudio+32/spec index 756ad528385..56de958ee3e 100644 --- a/runtime-optenv32/portaudio+32/spec +++ b/runtime-optenv32/portaudio+32/spec @@ -1,6 +1,4 @@ -VER=19+20140130 -SRCS="tbl::http://www.portaudio.com/archives/pa_stable_v${VER/+/_}.tgz" -CHKSUMS="sha256::8fe024a5f0681e112c6979808f684c3516061cc51d3acc0b726af98fc96c8d57" -SUBDIR="portaudio" -REL=3 +VER=19.7.0 +SRCS="git::commit=tags/v${VER}::https://github.com/PortAudio/portaudio.git" +CHKSUMS="SKIP" CHKUPDATE="anitya::id=10597" From b0205d9114fcd955da8efc15e6e1415cd60e70c3 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Mon, 2 Dec 2024 21:00:50 +0800 Subject: [PATCH 070/722] pkg-config+32: drop, orphaned PKG_CONFIG_PATH would suffice. --- groups/optenv32 | 1 - runtime-optenv32/32subsystem/autobuild/defines | 2 +- runtime-optenv32/pkg-config+32/autobuild/build | 13 ------------- runtime-optenv32/pkg-config+32/autobuild/defines | 9 --------- runtime-optenv32/pkg-config+32/spec | 5 ----- 5 files changed, 1 insertion(+), 29 deletions(-) delete mode 100644 runtime-optenv32/pkg-config+32/autobuild/build delete mode 100644 runtime-optenv32/pkg-config+32/autobuild/defines delete mode 100644 runtime-optenv32/pkg-config+32/spec diff --git a/groups/optenv32 b/groups/optenv32 index 95e9cde3a45..f458d6f2863 100644 --- a/groups/optenv32 +++ b/groups/optenv32 @@ -60,7 +60,6 @@ tcl+32 sdl-ttf+32 s2tc+32 portaudio+32 -pkg-config+32 p11-kit+32 sqlite+32 nss+32 diff --git a/runtime-optenv32/32subsystem/autobuild/defines b/runtime-optenv32/32subsystem/autobuild/defines index 24119c6572b..897722d54ea 100644 --- a/runtime-optenv32/32subsystem/autobuild/defines +++ b/runtime-optenv32/32subsystem/autobuild/defines @@ -20,7 +20,7 @@ libva-vdpau-driver+32 libvdpau+32 libvisual+32 libvorbis+32 libvpx+32 libwebp+32 libxcb+32 libxdmcp+32 libxkbcommon+32 libxml2+32 libxslt+32 linux+api+32 llvm+32 mesa+32 \ mjpegtools+32 mp4v2+32 mpc+32 mpfr+32 mpg123+32 nasm+32 ncurses+32 neon+32 nettle+32 nspr+32 \ nss+32 openal-soft+32 opencore-amr+32 openjpeg-legacy+32 openldap+32 openssl+32 opus+32 orc+32 \ -p11-kit+32 pango+32 pcre+32 perl+32 perl-xml-parser+32 pixman+32 pkg-config+32 poppler+32 \ +p11-kit+32 pango+32 pcre+32 perl+32 perl-xml-parser+32 pixman+32 poppler+32 \ popt+32 portaudio+32 pulseaudio+32 readline+32 rtmpdump+32 s2tc+32 sbc+32 \ schroedinger+32 sdl+32 sdl-ttf+32 soundtouch+32 speex+32 sqlite+32 srtp+32 taglib+32 \ tcl+32 tk+32 twolame+32 util-linux+32 v4l-utils+32 wavpack+32 wildmidi+32 \ diff --git a/runtime-optenv32/pkg-config+32/autobuild/build b/runtime-optenv32/pkg-config+32/autobuild/build deleted file mode 100644 index c549bc3e926..00000000000 --- a/runtime-optenv32/pkg-config+32/autobuild/build +++ /dev/null @@ -1,13 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig - -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/share diff --git a/runtime-optenv32/pkg-config+32/autobuild/defines b/runtime-optenv32/pkg-config+32/autobuild/defines deleted file mode 100644 index 7460104592c..00000000000 --- a/runtime-optenv32/pkg-config+32/autobuild/defines +++ /dev/null @@ -1,9 +0,0 @@ -PKGNAME=pkg-config+32 -PKGDES="Packages configure management tool (optenv32)" -PKGDEP="glib+32 pkg-config" -BUILDDEP="32subsystem" -PKGSEC=devel - -AUTOTOOLS_AFTER="--with-pc-path=/opt/32/lib/pkgconfig" -NOLTO=1 -ABHOST=noarch diff --git a/runtime-optenv32/pkg-config+32/spec b/runtime-optenv32/pkg-config+32/spec deleted file mode 100644 index 015f9736bd3..00000000000 --- a/runtime-optenv32/pkg-config+32/spec +++ /dev/null @@ -1,5 +0,0 @@ -VER=0.29.2 -REL=3 -SRCS="tbl::https://pkgconfig.freedesktop.org/releases/pkg-config-$VER.tar.gz" -CHKSUMS="sha256::6fc69c01688c9458a57eb9a1664c9aba372ccda420a02bf4429fe610e7e7d591" -CHKUPDATE="anitya::id=3649" From 3ad4af7302b7e831abe3e66cf318fb0b332ca9f7 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Mon, 2 Dec 2024 21:16:32 +0800 Subject: [PATCH 071/722] libffi+32: update to 3.4.4 - Correct dep glibc => glibc+32. - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libffi+32/autobuild/build | 14 -------------- runtime-optenv32/libffi+32/autobuild/defines | 9 +++++---- runtime-optenv32/libffi+32/spec | 6 +++--- 3 files changed, 8 insertions(+), 21 deletions(-) delete mode 100644 runtime-optenv32/libffi+32/autobuild/build diff --git a/runtime-optenv32/libffi+32/autobuild/build b/runtime-optenv32/libffi+32/autobuild/build deleted file mode 100644 index 57ab021ab62..00000000000 --- a/runtime-optenv32/libffi+32/autobuild/build +++ /dev/null @@ -1,14 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -abinfo "Configuring libffi+32 with i686 toolchains ..." -autoreconf -fvis -./configure --host=i686-pc-linux-gnu --build=i686-pc-linux-gnu \ - --prefix=/opt/32 --disable-static --sysconfdir=/etc \ - CC=i686-pc-linux-gnu-gcc CXX=i686-pc-linux-gnu-g++ \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -abinfo "Building libffi+32" -make -make install DESTDIR=$PKGDIR - -abinfo "Removing unused files ..." -rm -rf $PKGDIR/opt/32/share diff --git a/runtime-optenv32/libffi+32/autobuild/defines b/runtime-optenv32/libffi+32/autobuild/defines index 5cae38bbc55..ac6189126dc 100644 --- a/runtime-optenv32/libffi+32/autobuild/defines +++ b/runtime-optenv32/libffi+32/autobuild/defines @@ -1,7 +1,8 @@ PKGNAME=libffi+32 PKGSEC=libs -PKGDEP="glibc" -BUILDDEP="32subsystem" -PKGDES="Portable foreign function interface library for the 32subsystem" +PKGDEP="glibc+32" +BUILDDEP="devel-base+32" +PKGDES="Portable foreign function interface library (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libffi+32/spec b/runtime-optenv32/libffi+32/spec index 70171d969b1..4ac5382f7d5 100644 --- a/runtime-optenv32/libffi+32/spec +++ b/runtime-optenv32/libffi+32/spec @@ -1,4 +1,4 @@ -VER=3.4.2 -SRCS="tbl::https://github.com/libffi/libffi/archive/refs/tags/v${VER}.tar.gz" -CHKSUMS="sha256::0acbca9fd9c0eeed7e5d9460ae2ea945d3f1f3d48e13a4c54da12c7e0d23c313" +VER=3.4.4 +SRCS="git::commit=tags/v$VER::https://github.com/libffi/libffi" +CHKSUMS="SKIP" CHKUPDATE="anitya::id=1611" From 812fba45ad5cf2cd0804b922ed865cddc3e0e61c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Mon, 2 Dec 2024 21:18:13 +0800 Subject: [PATCH 072/722] p11-kit+32: update to 0.25.3 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/p11-kit+32/autobuild/build | 12 ------------ runtime-optenv32/p11-kit+32/autobuild/defines | 11 +++++++---- runtime-optenv32/p11-kit+32/autobuild/prepare | 1 - runtime-optenv32/p11-kit+32/spec | 7 +++---- 4 files changed, 10 insertions(+), 21 deletions(-) delete mode 100644 runtime-optenv32/p11-kit+32/autobuild/build delete mode 100644 runtime-optenv32/p11-kit+32/autobuild/prepare diff --git a/runtime-optenv32/p11-kit+32/autobuild/build b/runtime-optenv32/p11-kit+32/autobuild/build deleted file mode 100644 index c4b77a4d273..00000000000 --- a/runtime-optenv32/p11-kit+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,etc,share} diff --git a/runtime-optenv32/p11-kit+32/autobuild/defines b/runtime-optenv32/p11-kit+32/autobuild/defines index 7fec424fd89..e33588c144d 100644 --- a/runtime-optenv32/p11-kit+32/autobuild/defines +++ b/runtime-optenv32/p11-kit+32/autobuild/defines @@ -1,8 +1,11 @@ PKGNAME=p11-kit+32 -PKGDES="A way to load and enumerate PKCS #11 (a Cryptographic Token Interface Standard) modules (optenv32)" PKGSEC=libs -PKGDEP="ca-certs libtasn1+32" -BUILDDEP="32subsystem" +PKGDEP="ca-certs libffi+32 libtasn1+32" +BUILDDEP="devel-base+32" +PKGDES="A way to load and enumerate PKCS #11 (a Cryptographic Token Interface Standard) modules (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 + +AUTOTOOLS_AFTER="--without-systemd \ + PYTHON=/usr/bin/python3" diff --git a/runtime-optenv32/p11-kit+32/autobuild/prepare b/runtime-optenv32/p11-kit+32/autobuild/prepare deleted file mode 100644 index ba1d9cbe2c3..00000000000 --- a/runtime-optenv32/p11-kit+32/autobuild/prepare +++ /dev/null @@ -1 +0,0 @@ -autoreconf -fi diff --git a/runtime-optenv32/p11-kit+32/spec b/runtime-optenv32/p11-kit+32/spec index 109afa6ecb9..297327af274 100644 --- a/runtime-optenv32/p11-kit+32/spec +++ b/runtime-optenv32/p11-kit+32/spec @@ -1,5 +1,4 @@ -VER=0.23.18.1 -REL=1 -SRCS="tbl::https://github.com/p11-glue/p11-kit/releases/download/$VER/p11-kit-$VER.tar.gz" -CHKSUMS="sha256::34c3bd8c0050dd7c4e6228aecf0f168de0a1b34562ddbf74a1c70904c2523c6f" +VER=0.25.3 +SRCS="tbl::https://github.com/p11-glue/p11-kit/releases/download/$VER/p11-kit-$VER.tar.xz" +CHKSUMS="sha256::d8ddce1bb7e898986f9d250ccae7c09ce14d82f1009046d202a0eb1b428b2adc" CHKUPDATE="anitya::id=2582" From 6cc92d3f445195aeab5966ff07e6390dd80670e5 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Mon, 2 Dec 2024 21:26:50 +0800 Subject: [PATCH 073/722] sqlite+32: update to 3.46.1 - Add tcl+32 dep. - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/sqlite+32/autobuild/build | 8 -------- runtime-optenv32/sqlite+32/autobuild/defines | 8 ++++---- runtime-optenv32/sqlite+32/autobuild/prepare | 16 ++++++++++++++-- runtime-optenv32/sqlite+32/spec | 9 +++++---- 4 files changed, 23 insertions(+), 18 deletions(-) delete mode 100644 runtime-optenv32/sqlite+32/autobuild/build diff --git a/runtime-optenv32/sqlite+32/autobuild/build b/runtime-optenv32/sqlite+32/autobuild/build deleted file mode 100644 index f9361ef96b9..00000000000 --- a/runtime-optenv32/sqlite+32/autobuild/build +++ /dev/null @@ -1,8 +0,0 @@ -./configure --prefix=/opt/32 --disable-static \ - --disable-tcl \ - CC=i686-pc-linux-gnu-gcc CXX=i686-pc-linux-gnu-g++ - -make -make install DESTDIR="$PKGDIR" - -rm -r "$PKGDIR"/opt/32/bin diff --git a/runtime-optenv32/sqlite+32/autobuild/defines b/runtime-optenv32/sqlite+32/autobuild/defines index c719cac7daa..9046fa05048 100644 --- a/runtime-optenv32/sqlite+32/autobuild/defines +++ b/runtime-optenv32/sqlite+32/autobuild/defines @@ -1,10 +1,10 @@ PKGNAME=sqlite+32 PKGSEC=database -PKGDES="A C-language library that implements a small, fast, self-contained, high-reliability, full-featured, SQL database engine for 32subsystem" -PKGDEP="readline+32" -BUILDDEP="32subsystem" +PKGDEP="readline+32 tcl+32" +BUILDDEP="devel-base+32" +PKGDES="A full-featured and self-contained SQL database engine (32-bit x86 runtime)" NOLTO=1 ABSHADOW=0 NOPARALLEL=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/sqlite+32/autobuild/prepare b/runtime-optenv32/sqlite+32/autobuild/prepare index 7b85ce7d19c..258383b4b6c 100644 --- a/runtime-optenv32/sqlite+32/autobuild/prepare +++ b/runtime-optenv32/sqlite+32/autobuild/prepare @@ -1,2 +1,14 @@ -export CPPFLAGS+=" -DSQLITE_ENABLE_FTS3=1 -DSQLITE_ENABLE_COLUMN_METADATA=1 -DSQLITE_ENABLE_UNLOCK_NOTIFY=1 -DSQLITE_SECURE_DELETE=1 -DSQLITE_ENABLE_DBSTAT_VTAB=1 " -export PATH=/opt/32/bin:$PATH +abinfo "Fedora: Setting some extra flags for SQLite features ..." +export CPPFLAGS="${CPPFLAGS} \ + -DSQLITE_ENABLE_COLUMN_METADATA=1 \ + -DSQLITE_DISABLE_DIRSYNC=1 \ + -DSQLITE_ENABLE_FTS3=1 \ + -DSQLITE_ENABLE_RTREE=1 \ + -DSQLITE_SECURE_DELETE=1 \ + -DSQLITE_ENABLE_UNLOCK_NOTIFY=1 \ + -DSQLITE_ENABLE_DBSTAT_VTAB=1 \ + -DSQLITE_ENABLE_FTS3_PARENTHESIS=1 \ + -DSQLITE_ENABLE_JSON1=1 \ + -DSQLITE_ENABLE_FTS4=1 \ + -DSQLITE_ENABLE_MATH_FUNCTIONS \ + -DSQLITE_ENABLE_DBPAGE_VTAB" diff --git a/runtime-optenv32/sqlite+32/spec b/runtime-optenv32/sqlite+32/spec index 444570359ec..92416014aa2 100644 --- a/runtime-optenv32/sqlite+32/spec +++ b/runtime-optenv32/sqlite+32/spec @@ -1,5 +1,6 @@ -VER=3.32.3 -LOCAL_VER=3320300 -SRCS="tbl::https://sqlite.org/2020/sqlite-src-$LOCAL_VER.zip" -CHKSUMS="sha256::9312f0865d3692384d466048f746d18f88e7ffd1758b77d4f07904e03ed5f5b9" +VER=3.46.1 +LOCAL_VER=3450100 +YEAR=2024 +SRCS="tbl::https://sqlite.org/$YEAR/sqlite-src-$LOCAL_VER.zip" +CHKSUMS="sha256::7f7b14a68edbcd4a57df3a8c4dbd56d2d3546a6e7cdd50de40ceb03af33d34ba" CHKUPDATE="anitya::id=4877" From f5945fea33c35372a9407a5b8e622d76233f7fcb Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Mon, 2 Dec 2024 21:30:26 +0800 Subject: [PATCH 074/722] nspr+32: update to 4.35 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/nspr+32/autobuild/beyond | 9 ++++++--- runtime-optenv32/nspr+32/autobuild/build | 12 ------------ runtime-optenv32/nspr+32/autobuild/defines | 9 +++++---- runtime-optenv32/nspr+32/spec | 6 +++--- 4 files changed, 14 insertions(+), 22 deletions(-) delete mode 100644 runtime-optenv32/nspr+32/autobuild/build diff --git a/runtime-optenv32/nspr+32/autobuild/beyond b/runtime-optenv32/nspr+32/autobuild/beyond index 6a4b71295b4..8cbc1598e10 100644 --- a/runtime-optenv32/nspr+32/autobuild/beyond +++ b/runtime-optenv32/nspr+32/autobuild/beyond @@ -1,3 +1,6 @@ -ln -s nspr.pc "$PKGDIR"/opt/32/lib/pkgconfig/mozilla-nspr.pc -rm -r "$PKGDIR"/opt/32/bin/{compile-et.pl,prerr.properties} \ - "$PKGDIR"/opt/32/include/nspr/md +abinfo "Creating a compatibility symlink mozilla-nspr.pc => nspr.pc ..." +ln -sv nspr.pc \ + "$PKGDIR"/opt/32/lib/pkgconfig/mozilla-nspr.pc + +abinfo "Dropping unneeded headers ..." +rm -rv "$PKGDIR"/opt/32/include/nspr/md diff --git a/runtime-optenv32/nspr+32/autobuild/build b/runtime-optenv32/nspr+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/nspr+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/nspr+32/autobuild/defines b/runtime-optenv32/nspr+32/autobuild/defines index 1f923696295..c30a81b8e10 100644 --- a/runtime-optenv32/nspr+32/autobuild/defines +++ b/runtime-optenv32/nspr+32/autobuild/defines @@ -1,11 +1,12 @@ PKGNAME=nspr+32 -PKGDES="Netscape Portable Runtime (optenv32)" PKGSEC=libs PKGDEP="glibc+32" -BUILDDEP="32subsystem" +BUILDDEP="devel-base+32" +PKGDES="Netscape Portable Runtime (32-bit x86 runtime)" -AUTOTOOLS_AFTER="--disable-debug --enable-optimize \ +AUTOTOOLS_AFTER="--disable-debug \ + --enable-optimize \ --includedir=/opt/32/include/nspr" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/nspr+32/spec b/runtime-optenv32/nspr+32/spec index b7bb7e40efd..e650d230464 100644 --- a/runtime-optenv32/nspr+32/spec +++ b/runtime-optenv32/nspr+32/spec @@ -1,6 +1,6 @@ -VER=4.24 +VER=4.35 REL=1 SRCS="tbl::https://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v$VER/src/nspr-$VER.tar.gz" -CHKSUMS="sha256::90a59a0df6a11528749647fe18401cc7e03881e3e63c309f8c520ce06dd413d0" -SUBDIR=nspr-$VER/nspr +CHKSUMS="sha256::7ea3297ea5969b5d25a5dd8d47f2443cda88e9ee746301f6e1e1426f8a6abc8f" +SUBDIR="nspr-$VER/nspr" CHKUPDATE="anitya::id=7953" From f4dfc74a03cbeef3a2750bb5feea3ce95beb31de Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 3 Dec 2024 00:16:05 +0800 Subject: [PATCH 075/722] nss+32: update to 3.105 - Use optenv32 template. - Drop CNNIC patch. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/nss+32/autobuild/build | 26 +++++++---------- .../nss+32/autobuild/certdata2pem.py | 0 runtime-optenv32/nss+32/autobuild/defines | 6 ++-- .../patches/0001-Distrust-CNNIC-patch.patch | 29 ------------------- runtime-optenv32/nss+32/spec | 6 ++-- 5 files changed, 17 insertions(+), 50 deletions(-) mode change 100755 => 100644 runtime-optenv32/nss+32/autobuild/certdata2pem.py delete mode 100644 runtime-optenv32/nss+32/autobuild/patches/0001-Distrust-CNNIC-patch.patch diff --git a/runtime-optenv32/nss+32/autobuild/build b/runtime-optenv32/nss+32/autobuild/build index e1d1ff08ca4..33605a10ee4 100644 --- a/runtime-optenv32/nss+32/autobuild/build +++ b/runtime-optenv32/nss+32/autobuild/build @@ -5,20 +5,8 @@ export BUILD_OPT=1 export NSS_USE_SYSTEM_SQLITE=1 export NSS_ENABLE_ECC=1 - export NSPR_INCLUDE_DIR=/opt/32/include/nspr - export NSPR_LIB_DIR=/opt/32/lib - export XCFLAGS="${CFLAGS}" - - export PATH=/opt/32/bin:$PATH - - export CC=i686-pc-linux-gnu-gcc - export CXX=i686-pc-linux-gnu-g++ - export CCC="$CXX" - export AR=i686-pc-linux-gnu-ar - - [[ ${CROSS:-$ARCH} == *64* ]] && export USE_64=1 - [[ ${CROSS:-$ARCH} = loongson3 ]] && export USE_64=1 - [[ ${CROSS:-$ARCH} == arm64 ]] && export NS_USE_GCC=1 + export NSPR_INCLUDE_DIR="`nspr-config --includedir`" + export NSPR_LIB_DIR="`nspr-config --libdir`" abinfo "Building NSS ..." make all @@ -34,7 +22,7 @@ NSS_VPATCH=$(grep '#define.*NSS_VPATCH' nss/lib/nss/nss.h | awk '{print $3}') sed "$SRCDIR"/autobuild/nss.pc.in \ -e "s,%libdir%,/opt/32/lib,g" \ - -e "s,%prefix%,/usr,g" \ + -e "s,%prefix%,/opt/32,g" \ -e "s,%exec_prefix%,/opt/32/bin,g" \ -e "s,%includedir%,/opt/32/include/nss,g" \ -e "s,%NSPR_VERSION%,4.10.7,g" \ @@ -72,3 +60,11 @@ abinfo "Dropping libnssckbi.so and replacing with p11-kit ..." rm -v "$PKGDIR"/opt/32/lib/libnssckbi.so ln -sv pkcs11/p11-kit-trust.so \ "$PKGDIR"/opt/32/lib/libnssckbi.so + +abinfo "Installing certificates ..." +install -Dvm644 "$SRCDIR"/nss/certs/*.crt \ + -t "$PKGDIR"/opt/32/share/ca-certificates/mozilla/ + +abinfo "Installing Mozilla CA configuration ..." +install -Dvm644 "$SRCDIR"/nss/certs/mozilla.conf \ + "$PKGDIR"/etc/ca-certificates/conf.d/mozilla.conf diff --git a/runtime-optenv32/nss+32/autobuild/certdata2pem.py b/runtime-optenv32/nss+32/autobuild/certdata2pem.py old mode 100755 new mode 100644 diff --git a/runtime-optenv32/nss+32/autobuild/defines b/runtime-optenv32/nss+32/autobuild/defines index e9bf93ac3fa..27e4042e656 100644 --- a/runtime-optenv32/nss+32/autobuild/defines +++ b/runtime-optenv32/nss+32/autobuild/defines @@ -1,12 +1,12 @@ PKGNAME=nss+32 PKGSEC=libs PKGDEP="nspr+32 sqlite+32 zlib+32 p11-kit+32" -BUILDDEP="32subsystem" -PKGDES="Netscape security library (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="Netscape security library (32-bit x86 runtime)" NOSTATIC=0 NOPARALLEL=1 ABSTRIP=0 NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/nss+32/autobuild/patches/0001-Distrust-CNNIC-patch.patch b/runtime-optenv32/nss+32/autobuild/patches/0001-Distrust-CNNIC-patch.patch deleted file mode 100644 index 51eea5c3ee4..00000000000 --- a/runtime-optenv32/nss+32/autobuild/patches/0001-Distrust-CNNIC-patch.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 71d72019332ace0db06214b1d564af27b7431023 Mon Sep 17 00:00:00 2001 -From: Pale Moon -Date: Fri, 3 Apr 2015 13:17:15 +0200 -Subject: [PATCH] Distrust CNNIC root certificate. - ---- - security/nss/lib/ckfw/builtins/certdata.txt | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/nss/lib/ckfw/builtins/certdata.txt b/nss/lib/ckfw/builtins/certdata.txt -index eaf40f1..4d66d85 100644 ---- a/nss/lib/ckfw/builtins/certdata.txt -+++ b/nss/lib/ckfw/builtins/certdata.txt -@@ -14885,9 +14885,9 @@ END - CKA_SERIAL_NUMBER MULTILINE_OCTAL - \002\004\111\063\000\001 - END --CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR --CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST --CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST -+CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_NOT_TRUSTED -+CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_NOT_TRUSTED -+CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_NOT_TRUSTED - CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE - - # --- -1.8.3.msysgit.0 - diff --git a/runtime-optenv32/nss+32/spec b/runtime-optenv32/nss+32/spec index 9522f1b3e77..042537dad82 100644 --- a/runtime-optenv32/nss+32/spec +++ b/runtime-optenv32/nss+32/spec @@ -1,4 +1,4 @@ -VER=3.78 -SRCS="https://download-origin.cdn.mozilla.net/pub/security/nss/releases/NSS_${VER//./_}_RTM/src/nss-$VER.tar.gz" -CHKSUMS="sha256::f455f341e787c1167328e80a84f77b9a557d595066dda6486a1874d72da68800" +VER=3.105 +SRCS="https://archive.mozilla.org/pub/security/nss/releases/NSS_${VER//./_}_RTM/src/nss-$VER.tar.gz" +CHKSUMS="sha256::8e8e4c8c88ca5c828b207cfaf66c6188e7f96c97cc18946d3db7da4c0d395619" CHKUPDATE="anitya::id=2503" From 6f4398b25649139d68474c08907718e6573f4866 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 3 Dec 2024 01:02:24 +0800 Subject: [PATCH 076/722] libva+32: update to 1.22.0 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libva+32/autobuild/build | 26 --------------------- runtime-optenv32/libva+32/autobuild/defines | 12 ++++++---- runtime-optenv32/libva+32/spec | 2 +- 3 files changed, 8 insertions(+), 32 deletions(-) delete mode 100644 runtime-optenv32/libva+32/autobuild/build diff --git a/runtime-optenv32/libva+32/autobuild/build b/runtime-optenv32/libva+32/autobuild/build deleted file mode 100644 index bca0d9ed494..00000000000 --- a/runtime-optenv32/libva+32/autobuild/build +++ /dev/null @@ -1,26 +0,0 @@ -abinfo "Setting PATH to /opt/32/bin ..." -export PATH=/opt/32/bin:$PATH - -abinfo "Setting up optenv32 compilers ..." -export CC="i686-pc-linux-gnu-gcc -m32" -export CXX="i686-pc-linux-gnu-g++ -m32" -export CCAS="i686-pc-linux-gnu-as" - -mkdir -pv "$SRCDIR"/build -cd "$SRCDIR"/build - -abinfo "Running Meson for libva+32 ..." -meson "$SRCDIR" \ - --prefix=/opt/32 - -abinfo "Building libva+32 ..." -ninja - -abinfo "Installing libva+32 ..." -DESTDIR="$PKGDIR" \ - ninja install - -cd "$SRCDIR" - -abinfo "Dropping unneeded files ..." -rm -rf "$PKGDIR"/opt/32/share diff --git a/runtime-optenv32/libva+32/autobuild/defines b/runtime-optenv32/libva+32/autobuild/defines index 952bd141d56..2f935d8c549 100644 --- a/runtime-optenv32/libva+32/autobuild/defines +++ b/runtime-optenv32/libva+32/autobuild/defines @@ -1,9 +1,11 @@ PKGNAME=libva+32 -PKGDES="Video Acceleration (VA) API for Linux (optenv32)" -PKGDEP="mesa+32 libdrm+32" -BUILDDEP="32subsystem" PKGSEC=libs +PKGDEP="mesa+32 libdrm+32" +BUILDDEP="devel-base+32" +PKGDES="Video Acceleration (VA) API for Linux (32-bit x86 runtime)" + +ABTYPE=meson +MESON_AFTER="-Dwith_wayland=no" -ABSHADOW=no NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libva+32/spec b/runtime-optenv32/libva+32/spec index 6b8651f5a0e..fc4d5d49c14 100644 --- a/runtime-optenv32/libva+32/spec +++ b/runtime-optenv32/libva+32/spec @@ -1,4 +1,4 @@ -VER=2.15.0 +VER=2.22.0 SRCS="git::commit=tags/$VER::https://github.com/intel/libva" CHKSUMS="SKIP" CHKUPDATE="anitya::id=1752" From 41838b1a107ef1105a943bf3d03dbca5c4092d4c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 3 Dec 2024 01:04:43 +0800 Subject: [PATCH 077/722] libva-vdpau-driver+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- .../libva-vdpau-driver+32/autobuild/build | 6 --- .../libva-vdpau-driver+32/autobuild/defines | 6 ++- .../autobuild/patches/1.patch | 42 ------------------ .../Change-struct-v4l2-to-uintptr_t.patch | 43 +++++++++++++++++++ ...-driver-0.7.4-VAEncH264VUIBufferType.patch | 30 +++++++++++++ ...river-0.7.4-glext-missing-definition.patch | 16 +++++++ ...bva-vdpau-driver-0.7.4-libvdpau-0.8.patch} | 8 ++-- runtime-optenv32/libva-vdpau-driver+32/spec | 2 +- 8 files changed, 97 insertions(+), 56 deletions(-) delete mode 100644 runtime-optenv32/libva-vdpau-driver+32/autobuild/build delete mode 100644 runtime-optenv32/libva-vdpau-driver+32/autobuild/patches/1.patch create mode 100644 runtime-optenv32/libva-vdpau-driver+32/autobuild/patches/Change-struct-v4l2-to-uintptr_t.patch create mode 100644 runtime-optenv32/libva-vdpau-driver+32/autobuild/patches/libva-vdpau-driver-0.7.4-VAEncH264VUIBufferType.patch create mode 100644 runtime-optenv32/libva-vdpau-driver+32/autobuild/patches/libva-vdpau-driver-0.7.4-glext-missing-definition.patch rename runtime-optenv32/libva-vdpau-driver+32/autobuild/patches/{2.patch => libva-vdpau-driver-0.7.4-libvdpau-0.8.patch} (56%) diff --git a/runtime-optenv32/libva-vdpau-driver+32/autobuild/build b/runtime-optenv32/libva-vdpau-driver+32/autobuild/build deleted file mode 100644 index a0c3864c378..00000000000 --- a/runtime-optenv32/libva-vdpau-driver+32/autobuild/build +++ /dev/null @@ -1,6 +0,0 @@ -export PATH=/opt/32/bin:$PATH -./configure --prefix=/opt/32 \ - CC=i686-pc-linux-gnu-gcc \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR=$PKGDIR diff --git a/runtime-optenv32/libva-vdpau-driver+32/autobuild/defines b/runtime-optenv32/libva-vdpau-driver+32/autobuild/defines index 0241f324f09..8dc5f63223a 100644 --- a/runtime-optenv32/libva-vdpau-driver+32/autobuild/defines +++ b/runtime-optenv32/libva-vdpau-driver+32/autobuild/defines @@ -1,6 +1,8 @@ PKGNAME=libva-vdpau-driver+32 -PKGDES="VDPAU backend for the VA API" PKGSEC=libs PKGDEP="libva+32 libvdpau+32" +BUILDDEP="devel-base+32" +PKGDES="VDPAU backend for VA-API (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libva-vdpau-driver+32/autobuild/patches/1.patch b/runtime-optenv32/libva-vdpau-driver+32/autobuild/patches/1.patch deleted file mode 100644 index 7fc34a93e2a..00000000000 --- a/runtime-optenv32/libva-vdpau-driver+32/autobuild/patches/1.patch +++ /dev/null @@ -1,42 +0,0 @@ -diff -Naur libva-vdpau-driver-0.7.4-orig/src/utils_glx.c libva-vdpau-driver-0.7.4/src/utils_glx.c ---- libva-vdpau-driver-0.7.4-orig/src/utils_glx.c 2012-10-05 23:02:58.000000000 +0800 -+++ libva-vdpau-driver-0.7.4/src/utils_glx.c 2013-08-12 16:39:44.918145756 +0800 -@@ -752,10 +752,10 @@ - get_proc_address("glActiveTextureARB"); - if (!gl_vtable->gl_active_texture) - return NULL; -- gl_vtable->gl_multi_tex_coord_2f = (PFNGLMULTITEXCOORD2FPROC) -+/* gl_vtable->gl_multi_tex_coord_2f = (PFNGLMULTITEXCOORD2FPROC) - get_proc_address("glMultiTexCoord2fARB"); - if (!gl_vtable->gl_multi_tex_coord_2f) -- return NULL; -+ return NULL;*/ - gl_vtable->has_multitexture = 1; - } - -diff -Naur libva-vdpau-driver-0.7.4-orig/src/utils_glx.h libva-vdpau-driver-0.7.4/src/utils_glx.h ---- libva-vdpau-driver-0.7.4-orig/src/utils_glx.h 2012-10-05 23:02:58.000000000 +0800 -+++ libva-vdpau-driver-0.7.4/src/utils_glx.h 2013-08-12 16:39:44.919145743 +0800 -@@ -160,7 +160,7 @@ - PFNGLGETPROGRAMIVARBPROC gl_get_program_iv; - PFNGLPROGRAMLOCALPARAMETER4FVARBPROC gl_program_local_parameter_4fv; - PFNGLACTIVETEXTUREPROC gl_active_texture; -- PFNGLMULTITEXCOORD2FPROC gl_multi_tex_coord_2f; -+// PFNGLMULTITEXCOORD2FPROC gl_multi_tex_coord_2f; - PFNGLVDPAUINITNVPROC gl_vdpau_init; - PFNGLVDPAUFININVPROC gl_vdpau_fini; - PFNGLVDPAUREGISTERVIDEOSURFACENVPROC gl_vdpau_register_video_surface; -diff -Naur libva-vdpau-driver-0.7.4-orig/src/vdpau_dump.c libva-vdpau-driver-0.7.4/src/vdpau_dump.c ---- libva-vdpau-driver-0.7.4-orig/src/vdpau_dump.c 2012-10-05 23:02:58.000000000 +0800 -+++ libva-vdpau-driver-0.7.4/src/vdpau_dump.c 2013-08-12 16:39:44.918145756 +0800 -@@ -59,8 +59,8 @@ - _(VAEncSequenceParameterBufferType); - _(VAEncPictureParameterBufferType); - _(VAEncSliceParameterBufferType); -- _(VAEncH264VUIBufferType); -- _(VAEncH264SEIBufferType); -+// _(VAEncH264VUIBufferType); -+// _(VAEncH264SEIBufferType); - #endif - #if VA_CHECK_VERSION(0,31,1) - _(VAQMatrixBufferType); diff --git a/runtime-optenv32/libva-vdpau-driver+32/autobuild/patches/Change-struct-v4l2-to-uintptr_t.patch b/runtime-optenv32/libva-vdpau-driver+32/autobuild/patches/Change-struct-v4l2-to-uintptr_t.patch new file mode 100644 index 00000000000..0403c13d5df --- /dev/null +++ b/runtime-optenv32/libva-vdpau-driver+32/autobuild/patches/Change-struct-v4l2-to-uintptr_t.patch @@ -0,0 +1,43 @@ +From ed1c90097764954a4111879483cb0613bbde5414 Mon Sep 17 00:00:00 2001 +From: Nicolas Chauvet +Date: Mon, 19 Aug 2019 19:36:37 +0200 +Subject: [PATCH 2/3] Change struct v4l2 to uintptr_t + +--- + src/vdpau_video.c | 4 ++-- + src/vdpau_video.h | 4 ++-- + 2 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/src/vdpau_video.c b/src/vdpau_video.c +index 10453ec..ceaf287 100644 +--- a/src/vdpau_video.c ++++ b/src/vdpau_video.c +@@ -976,8 +976,8 @@ VAStatus + vdpau_CreateSurfaceFromV4L2Buf( + VADriverContextP ctx, + int v4l2_fd, +- struct v4l2_format *v4l2_fmt, +- struct v4l2_buffer *v4l2_buf, ++ uintptr_t *v4l2_fmt, ++ uintptr_t *v4l2_buf, + VASurfaceID *surface + ) + { +diff --git a/src/vdpau_video.h b/src/vdpau_video.h +index 452749d..ee646d1 100644 +--- a/src/vdpau_video.h ++++ b/src/vdpau_video.h +@@ -284,8 +284,8 @@ VAStatus + vdpau_CreateSurfaceFromV4L2Buf( + VADriverContextP ctx, + int v4l2_fd, +- struct v4l2_format *v4l2_fmt, +- struct v4l2_buffer *v4l2_buf, ++ uintptr_t *v4l2_fmt, ++ uintptr_t *v4l2_buf, + VASurfaceID *surface + ) attribute_hidden; + +-- +2.20.1 + diff --git a/runtime-optenv32/libva-vdpau-driver+32/autobuild/patches/libva-vdpau-driver-0.7.4-VAEncH264VUIBufferType.patch b/runtime-optenv32/libva-vdpau-driver+32/autobuild/patches/libva-vdpau-driver-0.7.4-VAEncH264VUIBufferType.patch new file mode 100644 index 00000000000..c57b6ab7abe --- /dev/null +++ b/runtime-optenv32/libva-vdpau-driver+32/autobuild/patches/libva-vdpau-driver-0.7.4-VAEncH264VUIBufferType.patch @@ -0,0 +1,30 @@ +>From fda3706eb74ba5ad874853969f3df3e372739c8d Mon Sep 17 00:00:00 2001 +From: "Xiang, Haihao" +Date: Fri, 21 Jun 2013 12:55:30 +0800 +Subject: [PATCH] VAEncH264VUIBufferType and VAEncH264SEIBufferType are + dropped from VA API + +The driver doesn't use them indeed + +Signed-off-by: Xiang, Haihao +--- + src/vdpau_dump.c | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/src/vdpau_dump.c b/src/vdpau_dump.c +index 899888b..610e7cd 100644 +--- a/src/vdpau_dump.c ++++ b/src/vdpau_dump.c +@@ -59,8 +59,6 @@ const char *string_of_VABufferType(VABufferType type) + _(VAEncSequenceParameterBufferType); + _(VAEncPictureParameterBufferType); + _(VAEncSliceParameterBufferType); +- _(VAEncH264VUIBufferType); +- _(VAEncH264SEIBufferType); + #endif + #if VA_CHECK_VERSION(0,31,1) + _(VAQMatrixBufferType); +-- +1.7.9.5 + + diff --git a/runtime-optenv32/libva-vdpau-driver+32/autobuild/patches/libva-vdpau-driver-0.7.4-glext-missing-definition.patch b/runtime-optenv32/libva-vdpau-driver+32/autobuild/patches/libva-vdpau-driver-0.7.4-glext-missing-definition.patch new file mode 100644 index 00000000000..b56d2683430 --- /dev/null +++ b/runtime-optenv32/libva-vdpau-driver+32/autobuild/patches/libva-vdpau-driver-0.7.4-glext-missing-definition.patch @@ -0,0 +1,16 @@ +--- a/src/utils_glx.h~ 2012-10-05 16:02:58.000000000 +0100 ++++ b/src/utils_glx.h 2012-10-19 08:44:12.469642440 +0100 +@@ -48,6 +48,13 @@ + typedef void (*PFNGLXRELEASETEXIMAGEEXTPROC)(Display *, GLXDrawable, int); + #endif + ++#if GL_GLEXT_VERSION >= 85 ++/* XXX: PFNGLMULTITEXCOORD2FPROC got out of the GL_VERSION_1_3_DEPRECATED ++ block and is not defined if GL_VERSION_1_3 is defined in ++ Redefine the type here as an interim solution */ ++typedef void (*PFNGLMULTITEXCOORD2FPROC) (GLenum target, GLfloat s, GLfloat t); ++#endif ++ + #ifndef GL_FRAMEBUFFER_BINDING + #define GL_FRAMEBUFFER_BINDING GL_FRAMEBUFFER_BINDING_EXT + #endif diff --git a/runtime-optenv32/libva-vdpau-driver+32/autobuild/patches/2.patch b/runtime-optenv32/libva-vdpau-driver+32/autobuild/patches/libva-vdpau-driver-0.7.4-libvdpau-0.8.patch similarity index 56% rename from runtime-optenv32/libva-vdpau-driver+32/autobuild/patches/2.patch rename to runtime-optenv32/libva-vdpau-driver+32/autobuild/patches/libva-vdpau-driver-0.7.4-libvdpau-0.8.patch index 7209baa6fcd..ab3a4799863 100644 --- a/runtime-optenv32/libva-vdpau-driver+32/autobuild/patches/2.patch +++ b/runtime-optenv32/libva-vdpau-driver+32/autobuild/patches/libva-vdpau-driver-0.7.4-libvdpau-0.8.patch @@ -1,13 +1,11 @@ -diff -ur a/src/vdpau_decode.c b/src/vdpau_decode.c ---- a/src/vdpau_decode.c 2012-10-05 10:02:58.000000000 -0500 -+++ b/src/vdpau_decode.c 2014-07-18 07:42:37.240166340 -0500 +--- a/src/vdpau_decode.c ++++ b/src/vdpau_decode.c @@ -1289,7 +1289,7 @@ driver_data, obj_context->vdp_decoder, obj_surface->vdp_surface, - (VdpPictureInfo)&obj_context->vdp_picture_info, -+ (VdpPictureInfo*)&obj_context->vdp_picture_info, ++ (VdpPictureInfo *)&obj_context->vdp_picture_info, obj_context->vdp_bitstream_buffers_count, obj_context->vdp_bitstream_buffers ); - diff --git a/runtime-optenv32/libva-vdpau-driver+32/spec b/runtime-optenv32/libva-vdpau-driver+32/spec index 1c93349d579..d71cb47f282 100644 --- a/runtime-optenv32/libva-vdpau-driver+32/spec +++ b/runtime-optenv32/libva-vdpau-driver+32/spec @@ -1,5 +1,5 @@ VER=0.7.4 -REL=3 +REL=4 SRCS="tbl::https://freedesktop.org/software/vaapi/releases/libva-vdpau-driver/libva-vdpau-driver-$VER.tar.bz2" CHKSUMS="sha256::155c1982f0ac3f5435ba20b221bcaa11be212c37db548cd1f2a030ffa17e9bb9" CHKUPDATE="anitya::id=1754" From f68ae1d7da14d79906d20d7a2d33b825808d9fb5 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 3 Dec 2024 01:08:42 +0800 Subject: [PATCH 078/722] libva-intel-driver+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- .../libva-intel-driver+32/autobuild/build | 16 ---------------- .../libva-intel-driver+32/autobuild/defines | 9 ++++++--- runtime-optenv32/libva-intel-driver+32/spec | 1 + 3 files changed, 7 insertions(+), 19 deletions(-) delete mode 100644 runtime-optenv32/libva-intel-driver+32/autobuild/build diff --git a/runtime-optenv32/libva-intel-driver+32/autobuild/build b/runtime-optenv32/libva-intel-driver+32/autobuild/build deleted file mode 100644 index 66608b3d4ca..00000000000 --- a/runtime-optenv32/libva-intel-driver+32/autobuild/build +++ /dev/null @@ -1,16 +0,0 @@ -abinfo "Setting PATH to use /opt/32/bin ..." -export PATH="/opt/32/bin:$PATH" - -abinfo "Configuring libva-intel-driver+32 ..." -"$SRCDIR"/configure \ - --prefix=/opt/32 \ - --disable-wayland \ - CC=i686-pc-linux-gnu-gcc \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig - -abinfo "Building libva-intel-driver+32 ..." -make - -abinfo "Installing libva-intel-driver+32 ..." -make install \ - DESTDIR="$PKGDIR" diff --git a/runtime-optenv32/libva-intel-driver+32/autobuild/defines b/runtime-optenv32/libva-intel-driver+32/autobuild/defines index 1e46a5f0ee9..c0b609aeaf7 100644 --- a/runtime-optenv32/libva-intel-driver+32/autobuild/defines +++ b/runtime-optenv32/libva-intel-driver+32/autobuild/defines @@ -1,8 +1,11 @@ PKGNAME=libva-intel-driver+32 PKGSEC=libs PKGDEP="libva+32" -BUILDDEP="32subsystem" -PKGDES="VA-API implementation for Intel G45 chipsets and Intel HD Graphics for Intel Core processor family." +BUILDDEP="devel-base+32" +PKGDES="VA-API implementation for Intel G45 and HD Graphics family (32-bit x86 runtime)" + +ABTYPE=meson +MESON_AFTER="-Dwith_wayland=no" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libva-intel-driver+32/spec b/runtime-optenv32/libva-intel-driver+32/spec index a032b2b08e3..37a08e49821 100644 --- a/runtime-optenv32/libva-intel-driver+32/spec +++ b/runtime-optenv32/libva-intel-driver+32/spec @@ -1,4 +1,5 @@ VER=2.4.1 +REL=1 SRCS="tbl::https://github.com/01org/intel-vaapi-driver/releases/download/$VER/intel-vaapi-driver-$VER.tar.bz2" CHKSUMS="sha256::0081fce08eb3a83f7d99c3b853c8fdfa0af437b8f5b0fb7c66faeb83bcbe0c19" CHKUPDATE="anitya::id=1753" From 792ce86f29385879911ec25a9682bb71ba0924f0 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 3 Dec 2024 01:13:29 +0800 Subject: [PATCH 079/722] libtasn1+32: improve packaging - Use optenv32 template. - Remove invalid `--with-packager=' option. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libtasn1+32/autobuild/build | 12 ------------ runtime-optenv32/libtasn1+32/autobuild/defines | 9 ++++----- runtime-optenv32/libtasn1+32/spec | 2 +- 3 files changed, 5 insertions(+), 18 deletions(-) delete mode 100644 runtime-optenv32/libtasn1+32/autobuild/build diff --git a/runtime-optenv32/libtasn1+32/autobuild/build b/runtime-optenv32/libtasn1+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/libtasn1+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/libtasn1+32/autobuild/defines b/runtime-optenv32/libtasn1+32/autobuild/defines index 79a36e2329e..2d55aa31f61 100644 --- a/runtime-optenv32/libtasn1+32/autobuild/defines +++ b/runtime-optenv32/libtasn1+32/autobuild/defines @@ -1,9 +1,8 @@ PKGNAME=libtasn1+32 -PKGDES="A highly portable C library that encodes and decodes DER/BER data following an ASN.1 schema (optenv32)" -PKGDEP="glibc+32" -BUILDDEP="32subsystem" PKGSEC=libs +PKGDEP="glibc+32" +BUILDDEP="devel-base+32 gtk-doc" +PKGDES="A highly portable C library that encodes and decodes DER/BER data following an ASN.1 schema (32-bit x86 runtime)" -AUTOTOOLS_AFTER="--with-packager=AOSC" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libtasn1+32/spec b/runtime-optenv32/libtasn1+32/spec index fe10808ae80..82ef898ab46 100644 --- a/runtime-optenv32/libtasn1+32/spec +++ b/runtime-optenv32/libtasn1+32/spec @@ -1,5 +1,5 @@ VER=4.15.0 +REL=2 SRCS="tbl::https://ftp.gnu.org/gnu/libtasn1/libtasn1-$VER.tar.gz" CHKSUMS="sha256::dd77509fe8f5304deafbca654dc7f0ea57f5841f41ba530cff9a5bf71382739e" -REL=1 CHKUPDATE="anitya::id=1734" From 1a7a75d3923ca7ba1f74a7367145e5326679301a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Mon, 9 Dec 2024 21:08:36 +0800 Subject: [PATCH 080/722] libpcap+32: update to 1.10.4 - Use optenv32 template. - Switch PKGSEC to libs. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libpcap+32/autobuild/build | 16 ---------------- runtime-optenv32/libpcap+32/autobuild/conffiles | 0 runtime-optenv32/libpcap+32/autobuild/defines | 10 +++++----- runtime-optenv32/libpcap+32/spec | 4 ++-- 4 files changed, 7 insertions(+), 23 deletions(-) delete mode 100644 runtime-optenv32/libpcap+32/autobuild/build delete mode 100644 runtime-optenv32/libpcap+32/autobuild/conffiles diff --git a/runtime-optenv32/libpcap+32/autobuild/build b/runtime-optenv32/libpcap+32/autobuild/build deleted file mode 100644 index 1809163c90d..00000000000 --- a/runtime-optenv32/libpcap+32/autobuild/build +++ /dev/null @@ -1,16 +0,0 @@ -export PATH=/opt/32/bin:$PATH -./configure --prefix=/opt/32 --enable-ipv6 \ - --enable-bluetooth=no \ - --host=i686-pc-linux-gnu \ - --target=i686-pc-linux-gnu \ - --build=i686-pc-linux-gnu \ - CC=i686-pc-linux-gnu-gcc \ - CXX=i686-pc-linux-gnu-g++ \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR=$PKGDIR - -rm -rf $PKGDIR/opt/32/{bin,share} - -mkdir -p $PKGDIR/opt/32/include/net -ln -s ../pcap-bpf.h $PKGDIR/opt/32/include/net/bpf.h diff --git a/runtime-optenv32/libpcap+32/autobuild/conffiles b/runtime-optenv32/libpcap+32/autobuild/conffiles deleted file mode 100644 index e69de29bb2d..00000000000 diff --git a/runtime-optenv32/libpcap+32/autobuild/defines b/runtime-optenv32/libpcap+32/autobuild/defines index 55993df1e3c..5c6864217bc 100644 --- a/runtime-optenv32/libpcap+32/autobuild/defines +++ b/runtime-optenv32/libpcap+32/autobuild/defines @@ -1,9 +1,9 @@ PKGNAME=libpcap+32 -PKGSEC=utils +PKGSEC=libs PKGDEP="libnl+32 libusb+32" -BUILDDEP="32subsystem" -PKGDES="A system-independent interface for user-level packet capture" +BUILDDEP="devel-base+32" +PKGDES="A system-independent interface for user-level packet capture (32-bit x86 runtime)" -ABSHADOW=no +ABSHADOW=0 NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libpcap+32/spec b/runtime-optenv32/libpcap+32/spec index b9a49a1788a..3a0b2ce58cb 100644 --- a/runtime-optenv32/libpcap+32/spec +++ b/runtime-optenv32/libpcap+32/spec @@ -1,4 +1,4 @@ -VER=1.10.1 +VER=1.10.4 SRCS="tbl::https://www.tcpdump.org/release/libpcap-$VER.tar.gz" -CHKSUMS="sha256::ed285f4accaf05344f90975757b3dbfe772ba41d1c401c2648b7fa45b711bdd4" +CHKSUMS="sha256::ed19a0383fad72e3ad435fd239d7cd80d64916b87269550159d20e47160ebe5f" CHKUPDATE="anitya::id=1702" From bd55cffac88431aa5397a8f3f00612ed08b874cf Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Mon, 9 Dec 2024 21:19:15 +0800 Subject: [PATCH 081/722] libcroco+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libcroco+32/autobuild/build | 12 ------------ runtime-optenv32/libcroco+32/autobuild/defines | 8 ++++---- runtime-optenv32/libcroco+32/spec | 1 + 3 files changed, 5 insertions(+), 16 deletions(-) delete mode 100644 runtime-optenv32/libcroco+32/autobuild/build diff --git a/runtime-optenv32/libcroco+32/autobuild/build b/runtime-optenv32/libcroco+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/libcroco+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/libcroco+32/autobuild/defines b/runtime-optenv32/libcroco+32/autobuild/defines index 1f1108db310..d1eb9252826 100644 --- a/runtime-optenv32/libcroco+32/autobuild/defines +++ b/runtime-optenv32/libcroco+32/autobuild/defines @@ -1,8 +1,8 @@ PKGNAME=libcroco+32 -PKGDES="A standalone CSS parsing and manipulation library (optenv32)" -PKGDEP="glib+32 libxml2+32" -BUILDDEP="32subsystem" PKGSEC=libs +PKGDEP="glib+32 libxml2+32" +BUILDDEP="devel-base+32 gtk-doc" +PKGDES="A standalone CSS parsing and manipulation library (optenv32)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libcroco+32/spec b/runtime-optenv32/libcroco+32/spec index e14e7b33c57..69c90357279 100644 --- a/runtime-optenv32/libcroco+32/spec +++ b/runtime-optenv32/libcroco+32/spec @@ -1,4 +1,5 @@ VER=0.6.13 +REL=1 SRCS="tbl::https://download.gnome.org/sources/libcroco/0.6/libcroco-$VER.tar.xz" CHKSUMS="sha256::767ec234ae7aa684695b3a735548224888132e063f92db585759b422570621d4" CHKUPDATE="anitya::id=11787" From c92dbad3c36478029356e7be5391e4c261ae0877 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Mon, 9 Dec 2024 21:34:38 +0800 Subject: [PATCH 082/722] libaio+32: update to 0.3.113 - Use optenv32 template. - Drop unneeded AB_FLAGS_* hacks. - Lint build script and PKGDES. --- runtime-optenv32/libaio+32/autobuild/build | 11 +- runtime-optenv32/libaio+32/autobuild/defines | 8 +- .../0001-Fix-and-improve-MIPS-support.patch | 140 ++++++++++++++++++ runtime-optenv32/libaio+32/autobuild/prepare | 3 - runtime-optenv32/libaio+32/spec | 7 +- 5 files changed, 154 insertions(+), 15 deletions(-) create mode 100644 runtime-optenv32/libaio+32/autobuild/patches/0001-Fix-and-improve-MIPS-support.patch delete mode 100644 runtime-optenv32/libaio+32/autobuild/prepare diff --git a/runtime-optenv32/libaio+32/autobuild/build b/runtime-optenv32/libaio+32/autobuild/build index d22c1921e53..d2f2973c54b 100644 --- a/runtime-optenv32/libaio+32/autobuild/build +++ b/runtime-optenv32/libaio+32/autobuild/build @@ -1,3 +1,8 @@ -export PATH=/opt/32/bin:$PATH -make -make prefix=$PKGDIR/opt/32 libdir=$PKGDIR/opt/32/lib install +abinfo "building libaio ..." +make \ + prefix=/opt/32 + +abinfo "installing libaio ..." +make install \ + DESTDIR="$PKGDIR" \ + prefix=/opt/32 diff --git a/runtime-optenv32/libaio+32/autobuild/defines b/runtime-optenv32/libaio+32/autobuild/defines index 91e071126b2..ab243d413b5 100644 --- a/runtime-optenv32/libaio+32/autobuild/defines +++ b/runtime-optenv32/libaio+32/autobuild/defines @@ -1,10 +1,8 @@ PKGNAME=libaio+32 -PKGDES="Asynchronous IO library" PKGSEC=libs PKGDEP="glibc+32" -BUILDDEP="32subsystem" +BUILDDEP="devel-base+32" +PKGDES="The Linux-native asynchronous I/O facility (aio) library (32-bit x86 runtime)" -AB_FLAGS_PIC=0 -AB_FLAGS_SSP=0 NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libaio+32/autobuild/patches/0001-Fix-and-improve-MIPS-support.patch b/runtime-optenv32/libaio+32/autobuild/patches/0001-Fix-and-improve-MIPS-support.patch new file mode 100644 index 00000000000..49c0a3429f0 --- /dev/null +++ b/runtime-optenv32/libaio+32/autobuild/patches/0001-Fix-and-improve-MIPS-support.patch @@ -0,0 +1,140 @@ +From ec470468cc569c599afc1b72f9872efa2f8e40e7 Mon Sep 17 00:00:00 2001 +From: Guillem Jover +Date: Wed, 14 Aug 2019 03:18:50 +0200 +Subject: [PATCH] Fix and improve MIPS support + +Fix structure padding for MIPS 64, add syscall definitions, and the +kernel R/W pointer. + +Signed-off-by: Guillem Jover +--- + harness/main.c | 4 ++++ + src/libaio.h | 6 +++++- + src/syscall-mips.h | 54 ++++++++++++++++++++++++++++++++++++++++++++++ + src/syscall.h | 2 ++ + 4 files changed, 65 insertions(+), 1 deletion(-) + create mode 100644 src/syscall-mips.h + +diff --git a/harness/main.c b/harness/main.c +index 82e9c69..5ccf022 100644 +--- a/harness/main.c ++++ b/harness/main.c +@@ -12,7 +12,11 @@ + #include + + #if __LP64__ == 0 ++#if defined(__i386__) || defined(__powerpc__) || defined(__mips__) + #define KERNEL_RW_POINTER ((void *)0xc0010000) ++#elif defined(__arm__) || defined(__s390__) ++#define KERNEL_RW_POINTER ((void *)0x00010000) ++#endif + #else + //#warning Not really sure where kernel memory is. Guessing. + #define KERNEL_RW_POINTER ((void *)0xffffffff81000000) +diff --git a/src/libaio.h b/src/libaio.h +index 24b4b8a..570ef2b 100644 +--- a/src/libaio.h ++++ b/src/libaio.h +@@ -52,7 +52,9 @@ typedef enum io_iocb_cmd { + + /* little endian, 32 bits */ + #if defined(__i386__) || (defined(__arm__) && !defined(__ARMEB__)) || \ +- defined(__sh__) || defined(__bfin__) || defined(__MIPSEL__) || \ ++ defined(__sh__) || \ ++ defined(__bfin__) || \ ++ (defined(__MIPSEL__) && !defined(__mips64)) || \ + defined(__cris__) || defined(__loongarch32) || \ + (defined(__riscv) && __riscv_xlen == 32) || \ + (defined(__GNUC__) && defined(__BYTE_ORDER__) && \ +@@ -63,6 +65,7 @@ typedef enum io_iocb_cmd { + + /* little endian, 64 bits */ + #elif defined(__ia64__) || defined(__x86_64__) || defined(__alpha__) || \ ++ (defined(__mips64) && defined(__MIPSEL__)) || \ + (defined(__aarch64__) && defined(__AARCH64EL__)) || \ + defined(__loongarch64) || \ + (defined(__riscv) && __riscv_xlen == 64) || \ +@@ -75,6 +78,7 @@ typedef enum io_iocb_cmd { + /* big endian, 64 bits */ + #elif defined(__powerpc64__) || defined(__s390x__) || \ + (defined(__sparc__) && defined(__arch64__)) || \ ++ (defined(__mips64) && defined(__MIPSEB__)) || \ + (defined(__aarch64__) && defined(__AARCH64EB__)) || \ + (defined(__GNUC__) && defined(__BYTE_ORDER__) && \ + __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__ && __SIZEOF_LONG__ == 8) +diff --git a/src/syscall-mips.h b/src/syscall-mips.h +new file mode 100644 +index 0000000..2c4245e +--- /dev/null ++++ b/src/syscall-mips.h +@@ -0,0 +1,54 @@ ++/* ++ * This file is subject to the terms and conditions of the GNU General Public ++ * License. See the file "COPYING" in the main directory of this archive ++ * for more details. ++ * ++ * Copyright (C) 1995, 96, 97, 98, 99, 2000 by Ralf Baechle ++ * Copyright (C) 1999, 2000 Silicon Graphics, Inc. ++ */ ++ ++#ifndef _MIPS_SIM_ABI32 ++#define _MIPS_SIM_ABI32 1 ++#define _MIPS_SIM_NABI32 2 ++#define _MIPS_SIM_ABI64 3 ++#endif ++ ++#if _MIPS_SIM == _MIPS_SIM_ABI32 ++ ++/* ++ * Linux o32 style syscalls are in the range from 4000 to 4999. ++ */ ++#define __NR_Linux 4000 ++#define __NR_io_setup (__NR_Linux + 241) ++#define __NR_io_destroy (__NR_Linux + 242) ++#define __NR_io_getevents (__NR_Linux + 243) ++#define __NR_io_submit (__NR_Linux + 244) ++#define __NR_io_cancel (__NR_Linux + 245) ++ ++#endif /* _MIPS_SIM == _MIPS_SIM_ABI32 */ ++ ++#if _MIPS_SIM == _MIPS_SIM_ABI64 ++ ++/* ++ * Linux 64-bit syscalls are in the range from 5000 to 5999. ++ */ ++#define __NR_Linux 5000 ++#define __NR_io_setup (__NR_Linux + 200) ++#define __NR_io_destroy (__NR_Linux + 201) ++#define __NR_io_getevents (__NR_Linux + 202) ++#define __NR_io_submit (__NR_Linux + 203) ++#define __NR_io_cancel (__NR_Linux + 204) ++#endif /* _MIPS_SIM == _MIPS_SIM_ABI64 */ ++ ++#if _MIPS_SIM == _MIPS_SIM_NABI32 ++ ++/* ++ * Linux N32 syscalls are in the range from 6000 to 6999. ++ */ ++#define __NR_Linux 6000 ++#define __NR_io_setup (__NR_Linux + 200) ++#define __NR_io_destroy (__NR_Linux + 201) ++#define __NR_io_getevents (__NR_Linux + 202) ++#define __NR_io_submit (__NR_Linux + 203) ++#define __NR_io_cancel (__NR_Linux + 204) ++#endif /* _MIPS_SIM == _MIPS_SIM_NABI32 */ +diff --git a/src/syscall.h b/src/syscall.h +index d2a117b..c9f1f3e 100644 +--- a/src/syscall.h ++++ b/src/syscall.h +@@ -27,6 +27,8 @@ + #include "syscall-arm.h" + #elif defined(__sparc__) + #include "syscall-sparc.h" ++#elif defined(__mips__) ++#include "syscall-mips.h" + #elif defined(__aarch64__) || defined(__loongarch__) || defined(__riscv) + #include "syscall-generic.h" + #else +-- +2.45.2 + diff --git a/runtime-optenv32/libaio+32/autobuild/prepare b/runtime-optenv32/libaio+32/autobuild/prepare deleted file mode 100644 index 6d363eca116..00000000000 --- a/runtime-optenv32/libaio+32/autobuild/prepare +++ /dev/null @@ -1,3 +0,0 @@ -export CC=i686-pc-linux-gnu-gcc -export CXX=i686-pc-linux-gnu-g++ -export PKG_CONFIG_PATH=/usr/lib32/pkgconfig diff --git a/runtime-optenv32/libaio+32/spec b/runtime-optenv32/libaio+32/spec index 10ee8d7b0d0..a3891d99ed9 100644 --- a/runtime-optenv32/libaio+32/spec +++ b/runtime-optenv32/libaio+32/spec @@ -1,5 +1,4 @@ -VER=0.3.110 -SRCS="tbl::http://archive.ubuntu.com/ubuntu/pool/main/liba/libaio/libaio_$VER.orig.tar.gz" -CHKSUMS="sha256::e019028e631725729376250e32b473012f7cb68e1f7275bfc1bbcdd0f8745f7e" -REL=4 +VER=0.3.113 +SRCS="git::commit=tags/libaio-${VER}::https://pagure.io/libaio.git" +CHKSUMS="SKIP" CHKUPDATE="anitya::id=1557" From 9fe3aa4189d704b85f53dfd9e01692a070fe9d7a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Mon, 9 Dec 2024 22:27:44 +0800 Subject: [PATCH 083/722] util-linux+32: update to 2.40.1 - Use optenv32 template. - Improve PKGDES and optenv32 => 32-bit x86 runtime. - Fix up dependencies. --- .../util-linux+32/autobuild/build | 19 --------------- .../util-linux+32/autobuild/defines | 24 +++++++++++++++---- runtime-optenv32/util-linux+32/spec | 5 ++-- 3 files changed, 22 insertions(+), 26 deletions(-) delete mode 100644 runtime-optenv32/util-linux+32/autobuild/build diff --git a/runtime-optenv32/util-linux+32/autobuild/build b/runtime-optenv32/util-linux+32/autobuild/build deleted file mode 100644 index ee738b9d94c..00000000000 --- a/runtime-optenv32/util-linux+32/autobuild/build +++ /dev/null @@ -1,19 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -./configure --prefix=/opt/32 --sysconfdir=/etc \ - --disable-nologin --disable-su \ - --disable-sulogin --disable-login \ - --enable-fs-paths-extra=/usr/bin \ - --enable-raw --enable-write --enable-mesg \ - --enable-socket-activation \ - --disable-pylibmount --without-python --without-systemd \ - --without-ncurses \ - CC=i686-pc-linux-gnu-gcc CXX=i686-pc-linux-gnu-g++ \ - LDFLAGS="${LDFLAGS} -L/opt/32/lib" \ - CFLAGS="${CFLAGS} -I/opt/32/include -I/opt/32/include/ncursesw" \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/usr -rm -rf "$PKGDIR"/opt/32/{bin,sbin,share} diff --git a/runtime-optenv32/util-linux+32/autobuild/defines b/runtime-optenv32/util-linux+32/autobuild/defines index 87323cd6847..adf59bc6db5 100644 --- a/runtime-optenv32/util-linux+32/autobuild/defines +++ b/runtime-optenv32/util-linux+32/autobuild/defines @@ -1,7 +1,23 @@ PKGNAME=util-linux+32 PKGSEC=utils -PKGDES="Base utilities for Linux (optenv32)" -PKGDEP="glibc+32 ncurses+32 zlib+32" -BUILDDEP="32subsystem" +PKGDEP="glibc+32 ncurses+32 sqlite+32 zlib+32" +BUILDDEP="devel-base+32" +PKGDES="Utilities and management tools for Linux (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 + +AUTOTOOLS_AFTER=( + '--disable-nologin' + '--disable-su' + '--disable-sulogin' + '--disable-login' + '--enable-fs-paths-extra=/usr/bin' + '--enable-write' + '--enable-mesg' + '--disable-pylibmount' + '--without-python' + '--without-systemd' + '--without-ncurses' + '--without-econf' +) diff --git a/runtime-optenv32/util-linux+32/spec b/runtime-optenv32/util-linux+32/spec index b89827a2cdc..6d2456cf222 100644 --- a/runtime-optenv32/util-linux+32/spec +++ b/runtime-optenv32/util-linux+32/spec @@ -1,5 +1,4 @@ -VER=2.29.2 -REL=2 +VER=2.40.1 SRCS="tbl::https://www.kernel.org/pub/linux/utils/util-linux/v${VER:0:4}/util-linux-$VER.tar.xz" -CHKSUMS="sha256::accea4d678209f97f634f40a93b7e9fcad5915d1f4749f6c47bee6bf110fe8e3" +CHKSUMS="sha256::59e676aa53ccb44b6c39f0ffe01a8fa274891c91bef1474752fad92461def24f" CHKUPDATE="anitya::id=8179" From d5ad841ea412595a2725dff1266379c4fbea6496 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Mon, 9 Dec 2024 22:53:11 +0800 Subject: [PATCH 084/722] pcre2+32: new, 10.44 --- runtime-optenv32/pcre2+32/autobuild/defines | 19 +++++++++++++++++++ runtime-optenv32/pcre2+32/spec | 4 ++++ 2 files changed, 23 insertions(+) create mode 100644 runtime-optenv32/pcre2+32/autobuild/defines create mode 100644 runtime-optenv32/pcre2+32/spec diff --git a/runtime-optenv32/pcre2+32/autobuild/defines b/runtime-optenv32/pcre2+32/autobuild/defines new file mode 100644 index 00000000000..654b33c544c --- /dev/null +++ b/runtime-optenv32/pcre2+32/autobuild/defines @@ -0,0 +1,19 @@ +PKGNAME=pcre2+32 +PKGSEC=libs +PKGDEP="bzip2+32 readline+32 zlib+32" +BUILDDEP="devel-base+32" +PKGDES="Perl Compatible Regular Expression (2nd Edition, 32-bit x86 runtime)" + +AUTOTOOLS_AFTER="--enable-pcre2-16 \ + --enable-pcre2-32 \ + --enable-pcre2grep-libz \ + --enable-pcre2grep-libbz2 \ + --enable-pcre2test-libreadline \ + --enable-stack-for-recursion \ + --enable-static \ + --enable-unicode \ + --enable-jit \ + --enable-pcre2grep-jit" + +AB_FLAGS_O3=1 +ABHOST=optenv32 diff --git a/runtime-optenv32/pcre2+32/spec b/runtime-optenv32/pcre2+32/spec new file mode 100644 index 00000000000..686de0d6727 --- /dev/null +++ b/runtime-optenv32/pcre2+32/spec @@ -0,0 +1,4 @@ +VER=10.44 +SRCS="git::commit=tags/pcre2-$VER::https://github.com/PCRE2Project/pcre2" +CHKSUMS="SKIP" +CHKUPDATE="anitya::id=5832" From 912a87a84a0d89e68765d91e37ed759cf781e560 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 10 Dec 2024 23:57:10 +0800 Subject: [PATCH 085/722] glib+32: update to 2.80.0 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/glib+32/autobuild/build | 16 ---------------- runtime-optenv32/glib+32/autobuild/defines | 13 ++++++++----- runtime-optenv32/glib+32/spec | 7 +++---- 3 files changed, 11 insertions(+), 25 deletions(-) delete mode 100644 runtime-optenv32/glib+32/autobuild/build diff --git a/runtime-optenv32/glib+32/autobuild/build b/runtime-optenv32/glib+32/autobuild/build deleted file mode 100644 index 66524240fd3..00000000000 --- a/runtime-optenv32/glib+32/autobuild/build +++ /dev/null @@ -1,16 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -export CC="i686-pc-linux-gnu-gcc -m32" -export CXX="i686-pc-linux-gnu-g++ -m32" -export CCAS=i686-pc-linux-gnu-as - -mkdir "$SRCDIR"/build -cd "$SRCDIR"/build -meson "$SRCDIR" --prefix=/opt/32 -ninja -DESTDIR="$PKGDIR" ninja install - -cd "$SRCDIR" - -rm -vrf "$PKGDIR"/opt/32/share -rm -v "$PKGDIR"/opt/32/bin/gdbus-codegen diff --git a/runtime-optenv32/glib+32/autobuild/defines b/runtime-optenv32/glib+32/autobuild/defines index cf193344758..c364f67e84e 100644 --- a/runtime-optenv32/glib+32/autobuild/defines +++ b/runtime-optenv32/glib+32/autobuild/defines @@ -1,9 +1,12 @@ PKGNAME=glib+32 PKGSEC=libs -PKGDEP="glibc+32 pcre+32 libffi+32 elfutils+32" -PKGSUG="python-2" -BUILDDEP="python-2 32subsystem" -PKGDES="Common C routines used by GTK+ and other libs (optenv32)" +PKGDEP="dbus+32 elfutils+32 glibc+32 libffi+32 pcre2+32 util-linux+32" +BUILDDEP="devel-base+32 python-2" +PKGDES="Common C routines used by GTK+ and other libs (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 + +MESON_AFTER=( + '-Dintrospection=disabled' +) diff --git a/runtime-optenv32/glib+32/spec b/runtime-optenv32/glib+32/spec index 0fd05d1295e..2d82bad40d3 100644 --- a/runtime-optenv32/glib+32/spec +++ b/runtime-optenv32/glib+32/spec @@ -1,5 +1,4 @@ -VER=2.62.6 -REL=1 -SRCS="tbl::https://download.gnome.org/sources/glib/${VER:0:4}/glib-$VER.tar.xz" -CHKSUMS="sha256::104fa26fbefae8024ff898330c671ec23ad075c1c0bce45c325c6d5657d58b9c" +VER=2.80.0 +SRCS="https://download.gnome.org/sources/glib/${VER:0:4}/glib-$VER.tar.xz" +CHKSUMS="sha256::8228a92f92a412160b139ae68b6345bd28f24434a7b5af150ebe21ff587a561d" CHKUPDATE="anitya::id=10024" From cad752b9d2e1486d0a6e8c5264b7c1b78f9bd913 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 11 Dec 2024 00:03:36 +0800 Subject: [PATCH 086/722] dbus+32: update to 1.14.10 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/dbus+32/autobuild/build | 18 ------------------ runtime-optenv32/dbus+32/autobuild/defines | 19 +++++++++++++++---- runtime-optenv32/dbus+32/spec | 7 ++++--- 3 files changed, 19 insertions(+), 25 deletions(-) delete mode 100644 runtime-optenv32/dbus+32/autobuild/build diff --git a/runtime-optenv32/dbus+32/autobuild/build b/runtime-optenv32/dbus+32/autobuild/build deleted file mode 100644 index c50750a7c4a..00000000000 --- a/runtime-optenv32/dbus+32/autobuild/build +++ /dev/null @@ -1,18 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -./configure --prefix=/opt/32 --sysconfdir=/etc --localstatedir=/var \ - --build=i686-pc-linux-gnu \ - --target=i686-pc-linux-gnu --host=i686-pc-linux-gnu \ - --libexecdir=/opt/32/lib/dbus-1.0 --with-dbus-user=dbus \ - --with-system-pid-file=/run/dbus/pid \ - --with-system-socket=/run/dbus/system_bus_socket \ - --with-console-auth-dir=/run/console/ \ - --enable-inotify --disable-dnotify \ - --disable-verbose-mode --disable-static \ - --disable-tests --disable-asserts \ - --disable-systemd \ - CC=i686-pc-linux-gnu-gcc - -make -make DESTDIR="$PKGDIR" -C dbus install -make DESTDIR="$PKGDIR" install-data-am diff --git a/runtime-optenv32/dbus+32/autobuild/defines b/runtime-optenv32/dbus+32/autobuild/defines index c78b039fd1d..323f4d35003 100644 --- a/runtime-optenv32/dbus+32/autobuild/defines +++ b/runtime-optenv32/dbus+32/autobuild/defines @@ -1,8 +1,19 @@ PKGNAME=dbus+32 PKGSEC=libs -PKGDEP="glibc+32" -BUILDDEP="32subsystem" -PKGDES="D-Bus (libraries only, optenv32)" +PKGDEP="expat+32 glib+32 glibc+32" +BUILDDEP="devel-base+32" +PKGDES="D-Bus, a system message bus (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 + +AUTOTOOLS_AFTER=( + '--libexecdir=/opt/32/lib/dbus-1.0' + '--with-dbus-user=dbus' + '--with-system-pid-file=/run/dbus/pid' + '--with-system-socket=/run/dbus/system_bus_socket' + '--with-console-auth-dir=/run/console' + '--enable-inotify' + '--disable-systemd' + '--without-x' +) diff --git a/runtime-optenv32/dbus+32/spec b/runtime-optenv32/dbus+32/spec index 3659035ae56..b129e4ad786 100644 --- a/runtime-optenv32/dbus+32/spec +++ b/runtime-optenv32/dbus+32/spec @@ -1,4 +1,5 @@ -VER=1.12.18 -SRCS="tbl::https://dbus.freedesktop.org/releases/dbus/dbus-$VER.tar.gz" -CHKSUMS="sha256::64cf4d70840230e5e9bc784d153880775ab3db19d656ead8a0cb9c0ab5a95306" +VER=1.14.10 +REL=3 +SRCS="https://dbus.freedesktop.org/releases/dbus/dbus-$VER.tar.xz" +CHKSUMS="sha256::ba1f21d2bd9d339da2d4aa8780c09df32fea87998b73da24f49ab9df1e36a50f" CHKUPDATE="anitya::id=5356" From ab9af51a9c51f363e66462bb813bca853a6b03b1 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 11 Dec 2024 00:08:34 +0800 Subject: [PATCH 087/722] libxml2+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libxml2+32/autobuild/build | 22 ------------------- runtime-optenv32/libxml2+32/autobuild/defines | 13 ++++++++--- runtime-optenv32/libxml2+32/autobuild/prepare | 3 --- runtime-optenv32/libxml2+32/spec | 1 + 4 files changed, 11 insertions(+), 28 deletions(-) delete mode 100644 runtime-optenv32/libxml2+32/autobuild/build delete mode 100644 runtime-optenv32/libxml2+32/autobuild/prepare diff --git a/runtime-optenv32/libxml2+32/autobuild/build b/runtime-optenv32/libxml2+32/autobuild/build deleted file mode 100644 index 0899f26709c..00000000000 --- a/runtime-optenv32/libxml2+32/autobuild/build +++ /dev/null @@ -1,22 +0,0 @@ -export PATH="/opt/32/bin:$PATH" - -abinfo "Generating configure ..." -autoreconf -fvis - -abinfo "Configuring ..." -./configure --prefix=/opt/32 \ - --enable-shared --disable-static \ - --without-python \ - --with-threads --with-history --with-lzma=/opt/32/lib \ - --with-zlib=/opt/32/lib \ - CC=i686-pc-linux-gnu-gcc CXX=i686-pc-linux-gnu-g++ \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig - -abinfo "Building binaries ..." -make V=1 - -abinfo "Installing files ..." -make DESTDIR="$PKGDIR" install V=1 - -abinfo "Removing unneeded files ..." -rm -rvf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/libxml2+32/autobuild/defines b/runtime-optenv32/libxml2+32/autobuild/defines index added669837..7f9a0346725 100644 --- a/runtime-optenv32/libxml2+32/autobuild/defines +++ b/runtime-optenv32/libxml2+32/autobuild/defines @@ -1,7 +1,14 @@ PKGNAME=libxml2+32 -PKGDES="LibXML2 on 32subsystem" PKGSEC=libs PKGDEP="glibc+32 zlib+32 readline+32 ncurses+32 xz+32" -BUILDDEP="32subsystem" +BUILDDEP="devel-base+32" +PKGDES="Utilities and libraries for parsing XMLs (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 + +AUTOTOOLS_AFTER=( + '--without-python' + '--with-threads' + '--with-history' +) diff --git a/runtime-optenv32/libxml2+32/autobuild/prepare b/runtime-optenv32/libxml2+32/autobuild/prepare deleted file mode 100644 index 094f9c421af..00000000000 --- a/runtime-optenv32/libxml2+32/autobuild/prepare +++ /dev/null @@ -1,3 +0,0 @@ -ln -sv /usr/bin/aclocal "$SRCDIR"/aclocal-1.15 -ln -sv /usr/bin/automake "$SRCDIR"/automake-1.15 -export PATH="$SRCDIR:$PATH" diff --git a/runtime-optenv32/libxml2+32/spec b/runtime-optenv32/libxml2+32/spec index 046f1c2b7a7..b6fa288ee25 100644 --- a/runtime-optenv32/libxml2+32/spec +++ b/runtime-optenv32/libxml2+32/spec @@ -1,4 +1,5 @@ VER=2.10.4 +REL=1 SRCS="tbl::https://gitlab.gnome.org/GNOME/libxml2/-/archive/v${VER}/libxml2-v${VER}.tar.gz" CHKSUMS="sha256::1aa47bd54f9e0245686d494fbbbfa4e3e77b6fc4f988708383de8a1033292e66" CHKUPDATE="anitya::id=1783" From 52d12c49cc4b0fcc1642ae010644243d54335ab5 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 11 Dec 2024 00:08:46 +0800 Subject: [PATCH 088/722] shared-mime-info+32: new, 2.4 --- runtime-optenv32/shared-mime-info+32/autobuild/beyond | 3 +++ runtime-optenv32/shared-mime-info+32/autobuild/defines | 10 ++++++++++ runtime-optenv32/shared-mime-info+32/spec | 4 ++++ 3 files changed, 17 insertions(+) create mode 100644 runtime-optenv32/shared-mime-info+32/autobuild/beyond create mode 100644 runtime-optenv32/shared-mime-info+32/autobuild/defines create mode 100644 runtime-optenv32/shared-mime-info+32/spec diff --git a/runtime-optenv32/shared-mime-info+32/autobuild/beyond b/runtime-optenv32/shared-mime-info+32/autobuild/beyond new file mode 100644 index 00000000000..6d330dcd9eb --- /dev/null +++ b/runtime-optenv32/shared-mime-info+32/autobuild/beyond @@ -0,0 +1,3 @@ +abinfo "Moving pkgconfig to /opt/32/lib/pkgconfig ..." +mkdir -pv "$PKGDIR"/opt/32/lib +cp -av "$PKGDIR"/opt/32/{share,lib}/pkgconfig diff --git a/runtime-optenv32/shared-mime-info+32/autobuild/defines b/runtime-optenv32/shared-mime-info+32/autobuild/defines new file mode 100644 index 00000000000..bd49c8b0a7c --- /dev/null +++ b/runtime-optenv32/shared-mime-info+32/autobuild/defines @@ -0,0 +1,10 @@ +PKGNAME=shared-mime-info+32 +PKGSEC=misc +PKGDEP="glib+32 libxml2+32 shared-mime-info" +BUILDDEP="devel-base+32" +PKGDES="Freedesktop.org shared MIME info (32-bit x86 runtime)" + +AUTOTOOLS_AFTER="--disable-update-mimedb" +NOPARALLEL=1 + +ABHOST=optenv32 diff --git a/runtime-optenv32/shared-mime-info+32/spec b/runtime-optenv32/shared-mime-info+32/spec new file mode 100644 index 00000000000..c9d4449996b --- /dev/null +++ b/runtime-optenv32/shared-mime-info+32/spec @@ -0,0 +1,4 @@ +VER=2.4 +SRCS="git::commit=$VER::https://gitlab.freedesktop.org/xdg/shared-mime-info" +CHKSUMS="SKIP" +CHKUPDATE="anitya::id=5524" From bf59ad0e15d58b197b6932948d417f4b92ed0e83 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 11 Dec 2024 00:17:38 +0800 Subject: [PATCH 089/722] gdk-pixbuf+32: update to 2.42.12 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/gdk-pixbuf+32/autobuild/beyond | 2 -- runtime-optenv32/gdk-pixbuf+32/autobuild/build | 17 ----------------- .../gdk-pixbuf+32/autobuild/defines | 14 ++++++++++---- runtime-optenv32/gdk-pixbuf+32/spec | 7 +++---- 4 files changed, 13 insertions(+), 27 deletions(-) delete mode 100644 runtime-optenv32/gdk-pixbuf+32/autobuild/beyond delete mode 100644 runtime-optenv32/gdk-pixbuf+32/autobuild/build diff --git a/runtime-optenv32/gdk-pixbuf+32/autobuild/beyond b/runtime-optenv32/gdk-pixbuf+32/autobuild/beyond deleted file mode 100644 index b09aadfc292..00000000000 --- a/runtime-optenv32/gdk-pixbuf+32/autobuild/beyond +++ /dev/null @@ -1,2 +0,0 @@ -sed -e 's|\, shared-mime-info||g' \ - -i "$PKGDIR"/opt/32/lib/pkgconfig/gdk-pixbuf-2.0.pc diff --git a/runtime-optenv32/gdk-pixbuf+32/autobuild/build b/runtime-optenv32/gdk-pixbuf+32/autobuild/build deleted file mode 100644 index c829032acab..00000000000 --- a/runtime-optenv32/gdk-pixbuf+32/autobuild/build +++ /dev/null @@ -1,17 +0,0 @@ -export PKG_CONFIG_PATH=/opt/32/lib/pkgconfig:/usr/share/pkgconfig -export PATH=/opt/32/bin:$PATH - -export CC="i686-pc-linux-gnu-gcc -m32" -export CXX="i686-pc-linux-gnu-g++ -m32" -export CCAS=i686-pc-linux-gnu-as -export LLVM_CONFIG=/opt/32/bin/llvm-config - -mkdir "$SRCDIR"/build -cd "$SRCDIR"/build -meson "$SRCDIR" --prefix=/opt/32 -ninja -DESTDIR="$PKGDIR" ninja install - -cd "$SRCDIR" - -rm -rfv "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/gdk-pixbuf+32/autobuild/defines b/runtime-optenv32/gdk-pixbuf+32/autobuild/defines index 38a75065870..cb6d6820dbd 100644 --- a/runtime-optenv32/gdk-pixbuf+32/autobuild/defines +++ b/runtime-optenv32/gdk-pixbuf+32/autobuild/defines @@ -1,8 +1,14 @@ PKGNAME=gdk-pixbuf+32 -PKGDES="A toolkit for image loading and pixel buffer manipulation (optenv32)" -PKGDEP="glib+32 libpng-1.6+32 libtiff+32 libjpeg-turbo+32" -BUILDDEP="32subsystem shared-mime-info" PKGSEC=libs +PKGDEP="glib+32 libpng-1.6+32 libtiff+32 libjpeg-turbo+32" +BUILDDEP="devel-base+32 shared-mime-info+32" +PKGDES="Toolkit for image loading and pixel buffer manipulation (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 + +MESON_AFTER=( + '-Ddocs=false' + '-Dman=false' + '-Dintrospection=disabled' +) diff --git a/runtime-optenv32/gdk-pixbuf+32/spec b/runtime-optenv32/gdk-pixbuf+32/spec index 86a071db4e6..12caf0b73d1 100644 --- a/runtime-optenv32/gdk-pixbuf+32/spec +++ b/runtime-optenv32/gdk-pixbuf+32/spec @@ -1,5 +1,4 @@ -VER=2.38.2 -REL=1 -SRCS="tbl::https://download.gnome.org/sources/gdk-pixbuf/${VER:0:4}/gdk-pixbuf-$VER.tar.xz" -CHKSUMS="sha256::73fa651ec0d89d73dd3070b129ce2203a66171dfc0bd2caa3570a9c93d2d0781" +VER=2.42.12 +SRCS="https://download.gnome.org/sources/gdk-pixbuf/${VER:0:4}/gdk-pixbuf-$VER.tar.xz" +CHKSUMS="sha256::b9505b3445b9a7e48ced34760c3bcb73e966df3ac94c95a148cb669ab748e3c7" CHKUPDATE="anitya::id=9533" From 997431c23fe6cb7bd8a323235c9e87be97bf5898 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 11 Dec 2024 00:22:31 +0800 Subject: [PATCH 090/722] gtk-2+32: update to 2.24.33 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/gtk-2+32/autobuild/build | 12 ------------ runtime-optenv32/gtk-2+32/autobuild/defines | 12 +++++++----- runtime-optenv32/gtk-2+32/spec | 6 +++--- 3 files changed, 10 insertions(+), 20 deletions(-) delete mode 100644 runtime-optenv32/gtk-2+32/autobuild/build diff --git a/runtime-optenv32/gtk-2+32/autobuild/build b/runtime-optenv32/gtk-2+32/autobuild/build deleted file mode 100644 index 13792a4dc3e..00000000000 --- a/runtime-optenv32/gtk-2+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{etc,bin,share} diff --git a/runtime-optenv32/gtk-2+32/autobuild/defines b/runtime-optenv32/gtk-2+32/autobuild/defines index 393570fed4a..b62e5ba4322 100644 --- a/runtime-optenv32/gtk-2+32/autobuild/defines +++ b/runtime-optenv32/gtk-2+32/autobuild/defines @@ -1,10 +1,12 @@ PKGNAME=gtk-2+32 PKGSEC=x11 PKGDEP="atk+32 cairo+32 gdk-pixbuf+32 pango+32 shared-mime-info" -BUILDDEP="python-2 32subsystem" -PKGDES="GIMP toolkit version 2 (optenv32)" +BUILDDEP="devel-base+32 gtk-doc python-2" +PKGDES="GIMP toolkit version 2 (32-bit x86 runtime)" + +AUTOTOOLS_AFTER="--with-xinput=yes \ + --disable-cups \ + --enable-introspection=no" -AUTOTOOLS_AFTER="--with-xinput=yes --disable-cups" -ABSHADOW=no NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/gtk-2+32/spec b/runtime-optenv32/gtk-2+32/spec index 4a9686815e6..d2ef62e8987 100644 --- a/runtime-optenv32/gtk-2+32/spec +++ b/runtime-optenv32/gtk-2+32/spec @@ -1,5 +1,5 @@ -VER=2.24.32 +VER=2.24.33 REL=3 -SRCS="tbl::https://download.gnome.org/sources/gtk+/${VER:0:4}/gtk+-$VER.tar.xz" -CHKSUMS="sha256::b6c8a93ddda5eabe3bfee1eb39636c9a03d2a56c7b62828b359bf197943c582e" +SRCS="https://download.gnome.org/sources/gtk+/${VER:0:4}/gtk+-$VER.tar.xz" +CHKSUMS="sha256::ac2ac757f5942d318a311a54b0c80b5ef295f299c2a73c632f6bfb1ff49cc6da" CHKUPDATE="html::url=https://download.gnome.org/sources/gtk+/${VER:0:4}/;pattern=gtk\+-(.+?).tar.xz" From fefae97e9ef458acc1768035d4a9d54b59115a2a Mon Sep 17 00:00:00 2001 From: Kaiyang Wu Date: Mon, 16 Dec 2024 01:56:17 -0800 Subject: [PATCH 091/722] librsvg+32: update to 2.59.2 Signed-off-by: Kaiyang Wu --- runtime-optenv32/librsvg+32/autobuild/build | 12 ------------ runtime-optenv32/librsvg+32/autobuild/defines | 12 ++++++------ runtime-optenv32/librsvg+32/spec | 4 ++-- 3 files changed, 8 insertions(+), 20 deletions(-) delete mode 100644 runtime-optenv32/librsvg+32/autobuild/build diff --git a/runtime-optenv32/librsvg+32/autobuild/build b/runtime-optenv32/librsvg+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/librsvg+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/librsvg+32/autobuild/defines b/runtime-optenv32/librsvg+32/autobuild/defines index 58d3aac998c..3955108202b 100644 --- a/runtime-optenv32/librsvg+32/autobuild/defines +++ b/runtime-optenv32/librsvg+32/autobuild/defines @@ -1,11 +1,11 @@ PKGNAME=librsvg+32 PKGDES="SVG rendering and manipulation library (optenv32)" PKGSEC=libs -PKGDEP="gtk-3+32" -BUILDDEP="32subsystem" +PKGDEP="libxml2+32 pango+32 cairo+32 glib+32 freetype+32" +BUILDDEP="32subsystem rustc cargo-c" -AUTOTOOLS_AFTER="--disable-vala --disable-tools \ - --disable-introspection" +MESON_AFTER="-Dvala=disabled \ + -Dintrospection=disabled \ + -Davif=disabled" ABSHADOW=no -NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/librsvg+32/spec b/runtime-optenv32/librsvg+32/spec index 2d96752bc3d..828f38b2ae9 100644 --- a/runtime-optenv32/librsvg+32/spec +++ b/runtime-optenv32/librsvg+32/spec @@ -1,4 +1,4 @@ -VER=2.40.21 +VER=2.59.2 SRCS="tbl::https://download.gnome.org/sources/librsvg/${VER:0:4}/librsvg-$VER.tar.xz" -CHKSUMS="sha256::f7628905f1cada84e87e2b14883ed57d8094dca3281d5bcb24ece4279e9a92ba" +CHKSUMS="sha256::ecd293fb0cc338c170171bbc7bcfbea6725d041c95f31385dc935409933e4597" CHKUPDATE="anitya::id=5420" From 314b0637698a6ad8871550f2723519c1aff360b0 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 11 Dec 2024 00:27:53 +0800 Subject: [PATCH 092/722] opencore-amr+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/opencore-amr+32/autobuild/build | 12 ------------ runtime-optenv32/opencore-amr+32/autobuild/defines | 6 +++--- runtime-optenv32/opencore-amr+32/spec | 2 +- 3 files changed, 4 insertions(+), 16 deletions(-) delete mode 100644 runtime-optenv32/opencore-amr+32/autobuild/build diff --git a/runtime-optenv32/opencore-amr+32/autobuild/build b/runtime-optenv32/opencore-amr+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/opencore-amr+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/opencore-amr+32/autobuild/defines b/runtime-optenv32/opencore-amr+32/autobuild/defines index 5aecb27cf33..58e5e665491 100644 --- a/runtime-optenv32/opencore-amr+32/autobuild/defines +++ b/runtime-optenv32/opencore-amr+32/autobuild/defines @@ -1,8 +1,8 @@ PKGNAME=opencore-amr+32 PKGSEC=libs PKGDEP="glibc+32" -BUILDDEP="32subsystem" -PKGDES="Open source implementation of the Adaptive Multi Rate (AMR) speech codec (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="Open source implementation of the Adaptive Multi Rate (AMR) speech codec (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/opencore-amr+32/spec b/runtime-optenv32/opencore-amr+32/spec index 029c076cc50..25117f7547d 100644 --- a/runtime-optenv32/opencore-amr+32/spec +++ b/runtime-optenv32/opencore-amr+32/spec @@ -1,5 +1,5 @@ VER=0.1.5 -REL=2 +REL=3 SRCS="tbl::https://sourceforge.net/projects/opencore-amr/files/opencore-amr/opencore-amr-$VER.tar.gz" CHKSUMS="sha256::2c006cb9d5f651bfb5e60156dbff6af3c9d35c7bbcc9015308c0aff1e14cd341" CHKUPDATE="anitya::id=21548" From 730a80bfa2667d500e9c1acb802938f11e79c93c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 25 Dec 2024 17:31:10 +0800 Subject: [PATCH 093/722] libmad: improve packaging - Use optenv32 template. - Drop unused patch series files. - Hack to make autoreconf work (missing files). - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libmad+32/autobuild/build | 12 ------------ runtime-optenv32/libmad+32/autobuild/defines | 10 +++++++--- runtime-optenv32/libmad+32/autobuild/patches/series | 7 ------- runtime-optenv32/libmad+32/autobuild/prepare | 7 +++++-- runtime-optenv32/libmad+32/spec | 2 +- 5 files changed, 13 insertions(+), 25 deletions(-) delete mode 100644 runtime-optenv32/libmad+32/autobuild/build delete mode 100644 runtime-optenv32/libmad+32/autobuild/patches/series diff --git a/runtime-optenv32/libmad+32/autobuild/build b/runtime-optenv32/libmad+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/libmad+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/libmad+32/autobuild/defines b/runtime-optenv32/libmad+32/autobuild/defines index 2fece15501b..8eb3bf26ed9 100644 --- a/runtime-optenv32/libmad+32/autobuild/defines +++ b/runtime-optenv32/libmad+32/autobuild/defines @@ -1,7 +1,11 @@ PKGNAME=libmad+32 -PKGDES="LibMAD, a MPEG audio decoder (optenv32)" PKGSEC=libs PKGDEP="glibc+32" -BUILDDEP="32subsystem" +BUILDDEP="devel-base+32" +PKGDES="LibMAD, an MPEG audio decoder (32-bit x86 runtime)" + +# FIXME: Missing required files, handling manually in prepare. +RECONF=0 + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libmad+32/autobuild/patches/series b/runtime-optenv32/libmad+32/autobuild/patches/series deleted file mode 100644 index 0da8bba1266..00000000000 --- a/runtime-optenv32/libmad+32/autobuild/patches/series +++ /dev/null @@ -1,7 +0,0 @@ -optimize.diff -amd64-64bit.diff -Provide-Thumb-2-alternative-code-for-MAD_F_MLN.diff -libmad.thumb.diff -mips-gcc4.4.diff -md_size.diff -length-check.patch diff --git a/runtime-optenv32/libmad+32/autobuild/prepare b/runtime-optenv32/libmad+32/autobuild/prepare index b08eb44def1..251a3f50abf 100644 --- a/runtime-optenv32/libmad+32/autobuild/prepare +++ b/runtime-optenv32/libmad+32/autobuild/prepare @@ -1,2 +1,5 @@ -export CFLAGS+=" -ftree-vectorize -ftree-vectorizer-verbose=1 " -autoconf +abinfo "Touching required files ..." +touch "$SRCDIR"/{AUTHORS,ChangeLog,NEWS} + +abinfo "Re-generating Autotools scripts ..." +autoreconf -fvi diff --git a/runtime-optenv32/libmad+32/spec b/runtime-optenv32/libmad+32/spec index a5bb66d7dfb..03f9274ab69 100644 --- a/runtime-optenv32/libmad+32/spec +++ b/runtime-optenv32/libmad+32/spec @@ -1,5 +1,5 @@ VER=0.15.1b -REL=5 +REL=6 SRCS="tbl::https://downloads.sourceforge.net/mad/libmad-$VER.tar.gz" CHKSUMS="sha256::bbfac3ed6bfbc2823d3775ebb931087371e142bb0e9bb1bee51a76a6e0078690" CHKUPDATE="anitya::id=21487" From c3efb692db43a15930ec71743a940aadc38af6ff Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 25 Dec 2024 17:35:20 +0800 Subject: [PATCH 094/722] lame+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/lame+32/autobuild/build | 12 ------------ runtime-optenv32/lame+32/autobuild/defines | 13 +++++++++---- runtime-optenv32/lame+32/autobuild/prepare | 1 + runtime-optenv32/lame+32/spec | 2 +- 4 files changed, 11 insertions(+), 17 deletions(-) delete mode 100644 runtime-optenv32/lame+32/autobuild/build diff --git a/runtime-optenv32/lame+32/autobuild/build b/runtime-optenv32/lame+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/lame+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/lame+32/autobuild/defines b/runtime-optenv32/lame+32/autobuild/defines index 10f68e0b7e5..654dd117e3f 100644 --- a/runtime-optenv32/lame+32/autobuild/defines +++ b/runtime-optenv32/lame+32/autobuild/defines @@ -1,9 +1,14 @@ PKGNAME=lame+32 -PKGDES="A high quality MP3 Encoder (optenv32)" PKGSEC=sound PKGDEP="ncurses+32" -BUILDDEP="32subsystem" +BUILDDEP="devel-base+32" +PKGDES="A high quality MP3 Encoder (32-bit x86 runtime)" + +AUTOTOOLS_AFTER=( + '--enable-mp3rtp' + '--enable-shared' + '--enable-nasm' +) -AUTOTOOLS_AFTER="--enable-mp3rtp --enable-shared --enable-nasm" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/lame+32/autobuild/prepare b/runtime-optenv32/lame+32/autobuild/prepare index 70a3c890163..84f2a0156a9 100644 --- a/runtime-optenv32/lame+32/autobuild/prepare +++ b/runtime-optenv32/lame+32/autobuild/prepare @@ -1 +1,2 @@ +abinfo "Appending /opt/32/include/ncursesw to include path ..." export CFLAGS="${CFLAGS} -I/opt/32/include/ncursesw" diff --git a/runtime-optenv32/lame+32/spec b/runtime-optenv32/lame+32/spec index 81aeb098574..d5b145af01c 100644 --- a/runtime-optenv32/lame+32/spec +++ b/runtime-optenv32/lame+32/spec @@ -1,5 +1,5 @@ VER=3.100 +REL=2 SRCS="tbl::https://sourceforge.net/projects/lame/files/lame/$VER/lame-$VER.tar.gz" CHKSUMS="sha256::ddfe36cab873794038ae2c1210557ad34857a4b6bdc515785d1da9e175b1da1e" -REL=1 CHKUPDATE="anitya::id=12523" From 1a762519653df305aa7023e05663e132c2bf99a6 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 25 Dec 2024 17:40:16 +0800 Subject: [PATCH 095/722] twolame+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/twolame+32/autobuild/build | 13 ------------- runtime-optenv32/twolame+32/autobuild/defines | 8 ++++++-- runtime-optenv32/twolame+32/spec | 2 +- 3 files changed, 7 insertions(+), 16 deletions(-) delete mode 100644 runtime-optenv32/twolame+32/autobuild/build diff --git a/runtime-optenv32/twolame+32/autobuild/build b/runtime-optenv32/twolame+32/autobuild/build deleted file mode 100644 index beb84519216..00000000000 --- a/runtime-optenv32/twolame+32/autobuild/build +++ /dev/null @@ -1,13 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -./configure --prefix=/opt/32 \ - --host=i686-aosc-linux-gnu \ - --build=i686-aosc-linux-gnu \ - --target=i686-aosc-linux-gnu \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig \ - CC=/opt/32/bin/gcc \ - CXX=/opt/32/bin/g++ -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{share,bin} diff --git a/runtime-optenv32/twolame+32/autobuild/defines b/runtime-optenv32/twolame+32/autobuild/defines index 3f9cd6bd4e4..f88c7882f41 100644 --- a/runtime-optenv32/twolame+32/autobuild/defines +++ b/runtime-optenv32/twolame+32/autobuild/defines @@ -1,7 +1,11 @@ PKGNAME=twolame+32 PKGSEC=libs PKGDEP="libsndfile+32" -BUILDDEP="32subsystem" -PKGDES="An optimized MPEG Audio Layer 2 encoder (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="An optimized MPEG Audio Layer 2 encoder (32-bit x86 runtime)" + NOLTO=1 ABHOST=noarch + +# FIXME: Fails with "source directory already configured." +ABSHADOW=0 diff --git a/runtime-optenv32/twolame+32/spec b/runtime-optenv32/twolame+32/spec index a411f6e171d..ca5434bedb8 100644 --- a/runtime-optenv32/twolame+32/spec +++ b/runtime-optenv32/twolame+32/spec @@ -1,5 +1,5 @@ VER=0.3.13 +REL=4 SRCS="tbl::https://downloads.sourceforge.net/twolame/twolame-$VER.tar.gz" CHKSUMS="sha256::98f332f48951f47f23f70fd0379463aff7d7fb26f07e1e24e42ddef22cc6112a" -REL=3 CHKUPDATE="anitya::id=12524" From d608ea79f71ca0926d898217f2111f946ba32d83 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 25 Dec 2024 17:43:54 +0800 Subject: [PATCH 096/722] wavpack+32: improve packaging - Use optenv32 template. - Drop outdated CVE-2018-19840.patch. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/wavpack+32/autobuild/build | 12 ----------- runtime-optenv32/wavpack+32/autobuild/defines | 6 +++--- .../autobuild/patches/CVE-2018-19840.patch | 20 ------------------- runtime-optenv32/wavpack+32/spec | 2 +- 4 files changed, 4 insertions(+), 36 deletions(-) delete mode 100644 runtime-optenv32/wavpack+32/autobuild/build delete mode 100644 runtime-optenv32/wavpack+32/autobuild/patches/CVE-2018-19840.patch diff --git a/runtime-optenv32/wavpack+32/autobuild/build b/runtime-optenv32/wavpack+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/wavpack+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/wavpack+32/autobuild/defines b/runtime-optenv32/wavpack+32/autobuild/defines index 99d0e4818bf..f8cedaa569b 100644 --- a/runtime-optenv32/wavpack+32/autobuild/defines +++ b/runtime-optenv32/wavpack+32/autobuild/defines @@ -1,10 +1,10 @@ PKGNAME=wavpack+32 PKGSEC=libs PKGDEP="glibc+32" -BUILDDEP="32subsystem" -PKGDES="Audio compression format with lossless, lossy and hybrid compression modes (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="Audio compression format with lossless, lossy and hybrid compression modes (32-bit x86 runtime)" AUTOTOOLS_AFTER="--disable-asm" -ABSHADOW=no + NOLTO=1 ABHOST=noarch diff --git a/runtime-optenv32/wavpack+32/autobuild/patches/CVE-2018-19840.patch b/runtime-optenv32/wavpack+32/autobuild/patches/CVE-2018-19840.patch deleted file mode 100644 index 9819edbb1c6..00000000000 --- a/runtime-optenv32/wavpack+32/autobuild/patches/CVE-2018-19840.patch +++ /dev/null @@ -1,20 +0,0 @@ -From 070ef6f138956d9ea9612e69586152339dbefe51 Mon Sep 17 00:00:00 2001 -From: David Bryant -Date: Thu, 29 Nov 2018 21:00:42 -0800 -Subject: [PATCH] issue #53: error out on zero sample rate -diff --git a/src/pack_utils.c b/src/pack_utils.c -index 1918c18..ee3debf 100644 ---- a/src/pack_utils.c -+++ b/src/pack_utils.c -@@ -195,6 +195,11 @@ int WavpackSetConfiguration64 (WavpackContext *wpc, WavpackConfig *config, int64 - int num_chans = config->num_channels; - int i; - -+ if (!config->sample_rate) { -+ strcpy (wpc->error_message, "sample rate cannot be zero!"); -+ return FALSE; -+ } -+ - wpc->stream_version = (config->flags & CONFIG_COMPATIBLE_WRITE) ? CUR_STREAM_VERS : MAX_STREAM_VERS; - - if ((config->qmode & QMODE_DSD_AUDIO) && config->bytes_per_sample == 1 && config->bits_per_sample == 8) { diff --git a/runtime-optenv32/wavpack+32/spec b/runtime-optenv32/wavpack+32/spec index 22a312d40f2..4c6c98f6db0 100644 --- a/runtime-optenv32/wavpack+32/spec +++ b/runtime-optenv32/wavpack+32/spec @@ -1,5 +1,5 @@ VER=5.2.0 +REL=2 SRCS="tbl::http://www.wavpack.com/wavpack-$VER.tar.xz" CHKSUMS="sha256::77e5b1cfa26e387e4275b362f0c3fb9a27106447d9bce00f9f794f30badb77e3" -REL=1 CHKUPDATE="anitya::id=5121" From 95f0355ee432023800770205de31d299f199a0e9 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 25 Dec 2024 17:56:48 +0800 Subject: [PATCH 097/722] v4l-utils+32: update to 1.22.1 - Use optenv32 template. - Fix up dependencies. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/v4l-utils+32/autobuild/beyond | 1 - runtime-optenv32/v4l-utils+32/autobuild/build | 12 ------------ runtime-optenv32/v4l-utils+32/autobuild/defines | 12 ++++++++---- runtime-optenv32/v4l-utils+32/spec | 5 ++--- 4 files changed, 10 insertions(+), 20 deletions(-) delete mode 100644 runtime-optenv32/v4l-utils+32/autobuild/beyond delete mode 100644 runtime-optenv32/v4l-utils+32/autobuild/build diff --git a/runtime-optenv32/v4l-utils+32/autobuild/beyond b/runtime-optenv32/v4l-utils+32/autobuild/beyond deleted file mode 100644 index 40ec5e50ff7..00000000000 --- a/runtime-optenv32/v4l-utils+32/autobuild/beyond +++ /dev/null @@ -1 +0,0 @@ -rm -rf "$PKGDIR"/usr diff --git a/runtime-optenv32/v4l-utils+32/autobuild/build b/runtime-optenv32/v4l-utils+32/autobuild/build deleted file mode 100644 index 170cc9ac7c3..00000000000 --- a/runtime-optenv32/v4l-utils+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc -CXX=i686-pc-linux-gnu-g++ - -./configure --prefix=/opt/32 \ - --disable-qv4l2 \ - PKG_CONFIG_PATH="/opt/32/lib/pkgconfig" -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,sbin,etc,share} diff --git a/runtime-optenv32/v4l-utils+32/autobuild/defines b/runtime-optenv32/v4l-utils+32/autobuild/defines index 2d20a85f1ec..1af13cc3555 100644 --- a/runtime-optenv32/v4l-utils+32/autobuild/defines +++ b/runtime-optenv32/v4l-utils+32/autobuild/defines @@ -1,8 +1,12 @@ PKGNAME=v4l-utils+32 PKGSEC=utils -PKGDES="Utilities for Video4Linux and DVB devices (optenv32)" -PKGDEP="libjpeg-turbo+32 glibc+32" -BUILDDEP="32subsystem" +PKGDEP="glibc+32 eudev+32 libjpeg-turbo+32 x11-lib+32" +BUILDDEP="devel-base+32" +PKGDES="Utilities for Video4Linux and DVB devices (32-bit x86 runtime)" + +AUTOTOOLS_AFTER=( + '--disable-bpf' +) NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/v4l-utils+32/spec b/runtime-optenv32/v4l-utils+32/spec index 0af6e5e441e..a9acc2c6213 100644 --- a/runtime-optenv32/v4l-utils+32/spec +++ b/runtime-optenv32/v4l-utils+32/spec @@ -1,5 +1,4 @@ -VER=1.18.0 +VER=1.22.1 SRCS="tbl::https://www.linuxtv.org/downloads/v4l-utils/v4l-utils-$VER.tar.bz2" -CHKSUMS="sha256::6cb60d822eeed20486a03cc23e0fc65956fbc1e85e0c1a7477f68bbd9802880d" -REL=1 +CHKSUMS="sha256::65c6fbe830a44ca105c443b027182c1b2c9053a91d1e72ad849dfab388b94e31" CHKUPDATE="anitya::id=9998" From 0f3497a4cbb07fc1b9a8e2b7af5fb7c816bd2cf9 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 25 Dec 2024 18:03:44 +0800 Subject: [PATCH 098/722] taglib+32: update to 1.13.1 - Use optenv32 template. - Drop an outdated patch. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/taglib+32/autobuild/build | 11 ----- runtime-optenv32/taglib+32/autobuild/defines | 18 +++++--- .../autobuild/patches/CVE-2018-11439.patch | 41 ------------------- runtime-optenv32/taglib+32/spec | 5 +-- 4 files changed, 14 insertions(+), 61 deletions(-) delete mode 100644 runtime-optenv32/taglib+32/autobuild/build delete mode 100644 runtime-optenv32/taglib+32/autobuild/patches/CVE-2018-11439.patch diff --git a/runtime-optenv32/taglib+32/autobuild/build b/runtime-optenv32/taglib+32/autobuild/build deleted file mode 100644 index ad801ec0cc7..00000000000 --- a/runtime-optenv32/taglib+32/autobuild/build +++ /dev/null @@ -1,11 +0,0 @@ -export PATH=/opt/32/bin:$PATH -export PKG_CONFIG_PATH=/opt/32/lib/pkg-config - -cmake . -DCMAKE_INSTALL_PREFIX=/opt/32 -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_C_COMPILER=/opt/32/bin/i686-pc-linux-gnu-gcc \ - -DZLIB_LIBRARY=/opt/32/lib/libz.so \ - ${CMAKE_AFTER} -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/taglib+32/autobuild/defines b/runtime-optenv32/taglib+32/autobuild/defines index 36bbc4510d2..6497162520d 100644 --- a/runtime-optenv32/taglib+32/autobuild/defines +++ b/runtime-optenv32/taglib+32/autobuild/defines @@ -1,11 +1,17 @@ PKGNAME=taglib+32 -PKGDES="Library for reading and editing the meta-data of several popular audio formats (optenv32)" PKGSEC=libs PKGDEP="zlib+32" -BUILDDEP="32subsystem" +BUILDDEP="devel-base+32" +PKGDES="Library for reading and editing the meta-data of several popular audio formats (32-bit x86 runtime)" + +CMAKE_AFTER=( + '-DWITH_MP4=ON' + '-DWITH_ASF=ON' + '-DBUILD_SHARED_LIBS=ON' + '-DHAVE_BOOST_BYTESWAP=NO' + '-DHAVE_BOOST_ATOMIC=NO' + '-DHAVE_BOOST_ZLIB=NO' +) -CMAKE_AFTER="-DWITH_MP4=ON -DWITH_ASF=ON \ - -DBUILD_SHARED_LIBS=ON \ - -DHAVE_BOOST_BYTESWAP=NO -DHAVE_BOOST_ATOMIC=NO -DHAVE_BOOST_ZLIB=NO" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/taglib+32/autobuild/patches/CVE-2018-11439.patch b/runtime-optenv32/taglib+32/autobuild/patches/CVE-2018-11439.patch deleted file mode 100644 index 17c3d630c00..00000000000 --- a/runtime-optenv32/taglib+32/autobuild/patches/CVE-2018-11439.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 272648ccfcccae30e002ccf34a22e075dd477278 Mon Sep 17 00:00:00 2001 -From: Scott Gayou -Date: Mon, 4 Jun 2018 11:34:36 -0400 -Subject: [PATCH] Fixed OOB read when loading invalid ogg flac file. (#868) - -CVE-2018-11439 is caused by a failure to check the minimum length -of a ogg flac header. This header is detailed in full at: -https://xiph.org/flac/ogg_mapping.html. Added more strict checking -for entire header. ---- - taglib/ogg/flac/oggflacfile.cpp | 14 ++++++++++++-- - 1 file changed, 12 insertions(+), 2 deletions(-) - -diff --git a/taglib/ogg/flac/oggflacfile.cpp b/taglib/ogg/flac/oggflacfile.cpp -index 53d04508a..07ea9dccc 100644 ---- a/taglib/ogg/flac/oggflacfile.cpp -+++ b/taglib/ogg/flac/oggflacfile.cpp -@@ -231,11 +231,21 @@ void Ogg::FLAC::File::scan() - - if(!metadataHeader.startsWith("fLaC")) { - // FLAC 1.1.2+ -+ // See https://xiph.org/flac/ogg_mapping.html for the header specification. -+ if(metadataHeader.size() < 13) -+ return; -+ -+ if(metadataHeader[0] != 0x7f) -+ return; -+ - if(metadataHeader.mid(1, 4) != "FLAC") - return; - -- if(metadataHeader[5] != 1) -- return; // not version 1 -+ if(metadataHeader[5] != 1 && metadataHeader[6] != 0) -+ return; // not version 1.0 -+ -+ if(metadataHeader.mid(9, 4) != "fLaC") -+ return; - - metadataHeader = metadataHeader.mid(13); - } diff --git a/runtime-optenv32/taglib+32/spec b/runtime-optenv32/taglib+32/spec index 4408e93b178..198940deaf6 100644 --- a/runtime-optenv32/taglib+32/spec +++ b/runtime-optenv32/taglib+32/spec @@ -1,5 +1,4 @@ -VER=1.11 +VER=1.13.1 SRCS="tbl::https://taglib.github.io/releases/taglib-$VER.tar.gz" -CHKSUMS="sha256::ed4cabb3d970ff9a30b2620071c2b054c4347f44fc63546dbe06f97980ece288" -REL=3 +CHKSUMS="sha256::c8da2b10f1bfec2cd7dbfcd33f4a2338db0765d851a50583d410bacf055cfd0b" CHKUPDATE="anitya::id=1982" From 4c21e71dc6092540ee4444ac07813bd77dd1ed28 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 25 Dec 2024 18:14:02 +0800 Subject: [PATCH 099/722] libvpx+32: use optenv32 template --- runtime-optenv32/libvpx+32/autobuild/build | 8 -------- runtime-optenv32/libvpx+32/autobuild/defines | 6 +++--- runtime-optenv32/libvpx+32/spec | 1 + 3 files changed, 4 insertions(+), 11 deletions(-) diff --git a/runtime-optenv32/libvpx+32/autobuild/build b/runtime-optenv32/libvpx+32/autobuild/build index 98a9ed449c7..1e43a4a498f 100644 --- a/runtime-optenv32/libvpx+32/autobuild/build +++ b/runtime-optenv32/libvpx+32/autobuild/build @@ -1,8 +1,3 @@ -export PATH=/opt/32/bin:$PATH -CC=i686-pc-linux-gnu-gcc -CXX=i686-pc-linux-gnu-g++ -AS=i686-pc-linux-gnu-as - abinfo "Configuring $PKGNAME ..." "$SRCDIR"/configure \ --prefix=/opt/32 \ @@ -29,6 +24,3 @@ make abinfo "Installing $PKGNAME ..." make install \ DIST_DIR="$PKGDIR"/opt/32 - -rm -rf "$PKGDIR"/opt/32/{bin,share,docs} -rm "$PKGDIR"/opt/32/* || true diff --git a/runtime-optenv32/libvpx+32/autobuild/defines b/runtime-optenv32/libvpx+32/autobuild/defines index 0d41cd9d7af..fe01e6c97b4 100644 --- a/runtime-optenv32/libvpx+32/autobuild/defines +++ b/runtime-optenv32/libvpx+32/autobuild/defines @@ -1,10 +1,10 @@ PKGNAME=libvpx+32 -PKGDES="VPx (8, 9, 10) Video Codec SDK (optenv32)" PKGSEC=libs PKGDEP="glibc+32" -BUILDDEP="32subsystem" +BUILDDEP="devel-base+32 nasm" +PKGDES="VPx (8, 9, 10) Video Codec SDK (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 PKGBREAK="ffmpeg+32<=4.2.4 gst-plugins-good-1-0+32<=1.16.2 soxr+32<=0.1.3-2" diff --git a/runtime-optenv32/libvpx+32/spec b/runtime-optenv32/libvpx+32/spec index d0b5da3da13..96724145140 100644 --- a/runtime-optenv32/libvpx+32/spec +++ b/runtime-optenv32/libvpx+32/spec @@ -1,4 +1,5 @@ VER=1.15.0 +REL=1 SRCS="tbl::https://github.com/webmproject/libvpx/archive/v$VER/libvpx-$VER.tar.gz" CHKSUMS="sha256::e935eded7d81631a538bfae703fd1e293aad1c7fd3407ba00440c95105d2011e" CHKUPDATE="anitya::id=11083" From 143edd08e51924fc6dc972d39c8a2e49cbaa7e70 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 25 Dec 2024 18:17:37 +0800 Subject: [PATCH 100/722] libshout+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libshout+32/autobuild/build | 12 ------------ runtime-optenv32/libshout+32/autobuild/defines | 6 ++++-- runtime-optenv32/libshout+32/spec | 1 + 3 files changed, 5 insertions(+), 14 deletions(-) delete mode 100644 runtime-optenv32/libshout+32/autobuild/build diff --git a/runtime-optenv32/libshout+32/autobuild/build b/runtime-optenv32/libshout+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/libshout+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/libshout+32/autobuild/defines b/runtime-optenv32/libshout+32/autobuild/defines index 7514a4c7543..3ae971f80aa 100644 --- a/runtime-optenv32/libshout+32/autobuild/defines +++ b/runtime-optenv32/libshout+32/autobuild/defines @@ -1,6 +1,8 @@ PKGNAME=libshout+32 -PKGDES="MP3/Ogg Vorbis broadcast streaming library (optenv32)" PKGSEC=libs PKGDEP="libogg+32 libvorbis+32 speex+32 libtheora+32" +BUILDDEP="devel-base+32" +PKGDES="MP3/Ogg Vorbis broadcast streaming library (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libshout+32/spec b/runtime-optenv32/libshout+32/spec index f166fefec8a..a63033debe1 100644 --- a/runtime-optenv32/libshout+32/spec +++ b/runtime-optenv32/libshout+32/spec @@ -1,4 +1,5 @@ VER=2.4.3 +REL=1 SRCS="tbl::https://downloads.xiph.org/releases/libshout/libshout-$VER.tar.gz" CHKSUMS="sha256::0d8af55d1141bf90710bcd41a768c9cc5adb251502a0af1dd22c8da215d40dfe" CHKUPDATE="anitya::id=11084" From ebbae79ccfba15c48c367e346faefa95c50da420 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 25 Dec 2024 18:25:28 +0800 Subject: [PATCH 101/722] libid3tag+32: improve packaging - Use optenv32 template. - Lint scripts in accordance with the Styling Manual. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libid3tag+32/autobuild/build | 12 ------------ runtime-optenv32/libid3tag+32/autobuild/defines | 8 +++++--- runtime-optenv32/libid3tag+32/autobuild/prepare | 5 ++++- runtime-optenv32/libid3tag+32/spec | 2 +- 4 files changed, 10 insertions(+), 17 deletions(-) delete mode 100644 runtime-optenv32/libid3tag+32/autobuild/build diff --git a/runtime-optenv32/libid3tag+32/autobuild/build b/runtime-optenv32/libid3tag+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/libid3tag+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/libid3tag+32/autobuild/defines b/runtime-optenv32/libid3tag+32/autobuild/defines index ab2f337b856..600a4dadea5 100644 --- a/runtime-optenv32/libid3tag+32/autobuild/defines +++ b/runtime-optenv32/libid3tag+32/autobuild/defines @@ -1,9 +1,11 @@ PKGNAME=libid3tag+32 -PKGDES="ID3 Tag Library (optenv32)" PKGSEC=libs PKGDEP="zlib+32" -BUILDDEP="gperf 32subsystem" +BUILDDEP="devel-base+32 gperf" +PKGDES="ID3 Tag Library (32-bit x86 runtime)" +# FIXME: Missing required files. RECONF=0 + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libid3tag+32/autobuild/prepare b/runtime-optenv32/libid3tag+32/autobuild/prepare index aa8801bf1fa..b7560d1443a 100644 --- a/runtime-optenv32/libid3tag+32/autobuild/prepare +++ b/runtime-optenv32/libid3tag+32/autobuild/prepare @@ -1 +1,4 @@ -rm compat.c frametype.c +abinfo "Removing unused sources ..." +rm -v \ + "$SRCDIR"/compat.c \ + "$SRCDIR"/frametype.c diff --git a/runtime-optenv32/libid3tag+32/spec b/runtime-optenv32/libid3tag+32/spec index a02d0295914..03f867680b2 100644 --- a/runtime-optenv32/libid3tag+32/spec +++ b/runtime-optenv32/libid3tag+32/spec @@ -1,5 +1,5 @@ VER=0.15.1b -REL=5 +REL=6 SRCS="tbl::https://sourceforge.net/projects/mad/files/libid3tag/$VER/libid3tag-$VER.tar.gz" CHKSUMS="sha256::63da4f6e7997278f8a3fef4c6a372d342f705051d1eeb6a46a86b03610e26151" CHKUPDATE="anitya::id=21478" From 859df4dc9936409c188ddcf327294796bffc0a99 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 25 Dec 2024 18:33:15 +0800 Subject: [PATCH 102/722] imlib2+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/imlib2+32/autobuild/build | 12 ------------ runtime-optenv32/imlib2+32/autobuild/defines | 9 +++++---- runtime-optenv32/imlib2+32/spec | 6 +++--- 3 files changed, 8 insertions(+), 19 deletions(-) delete mode 100644 runtime-optenv32/imlib2+32/autobuild/build diff --git a/runtime-optenv32/imlib2+32/autobuild/build b/runtime-optenv32/imlib2+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/imlib2+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/imlib2+32/autobuild/defines b/runtime-optenv32/imlib2+32/autobuild/defines index 5d66f8d9141..0c06275f672 100644 --- a/runtime-optenv32/imlib2+32/autobuild/defines +++ b/runtime-optenv32/imlib2+32/autobuild/defines @@ -1,8 +1,9 @@ PKGNAME=imlib2+32 -PKGDES="Image loading, saving, rendering, and manipulation library (optenv32)" -PKGDEP="libtiff+32 giflib+32 bzip2+32 freetype+32 x11-lib+32 libpng+32 libid3tag+32 libjpeg-turbo+32" PKGSEC=libs +PKGDEP="libtiff+32 giflib+32 bzip2+32 freetype+32 x11-lib+32 libpng+32 \ + libid3tag+32 libjpeg-turbo+32" +BUILDDEP="devel-base+32" +PKGDES="Image loading, saving, rendering, and manipulation library (32-bit x86 runtime)" -AUTOTOOLS_AFTER="--sysconfdir=/etc/imlib2 --x-libraries=/usr/lib" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/imlib2+32/spec b/runtime-optenv32/imlib2+32/spec index d8c0aa34784..1b3189c7185 100644 --- a/runtime-optenv32/imlib2+32/spec +++ b/runtime-optenv32/imlib2+32/spec @@ -1,5 +1,5 @@ -VER=1.4.8 -SRCS="tbl::https://sourceforge.net/projects/enlightenment/files/imlib2-src/$VER/imlib2-$VER.tar.bz2" -CHKSUMS="sha256::89ab531ff882c23c8c68e3e941d1bb59dde7a3b2a7853b87ab8c7615da7cb077" +VER=1.5.1 REL=2 +SRCS="tbl::https://sourceforge.net/projects/enlightenment/files/imlib2-src/$VER/imlib2-$VER.tar.bz2" +CHKSUMS="sha256::fa4e57452b8843f4a70f70fd435c746ae2ace813250f8c65f977db5d7914baae" CHKUPDATE="anitya::id=21676" From 9193f348c7bc495b827acd1fd3b0a3bd36d09550 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 25 Dec 2024 22:36:07 +0800 Subject: [PATCH 103/722] libcaca+32: improve packaging - Use optenv32 template. - Adapt for Automake 1.17. - Improve PKGDES optenv32 => 32-bit x86 runtime --- runtime-optenv32/libcaca+32/autobuild/build | 12 ---------- runtime-optenv32/libcaca+32/autobuild/defines | 22 +++++++++++++------ ...ke-1.15.patch => 0001-automake-1.17.patch} | 2 +- ...-20544.patch => 0002-CVE-2018-20544.patch} | 0 ... => 0003-CVE-2018-20545_20458_20549.patch} | 0 ....patch => 0004-CVE-2018-20546_20547.patch} | 0 runtime-optenv32/libcaca+32/autobuild/prepare | 1 - runtime-optenv32/libcaca+32/spec | 6 ++--- 8 files changed, 19 insertions(+), 24 deletions(-) delete mode 100644 runtime-optenv32/libcaca+32/autobuild/build rename runtime-optenv32/libcaca+32/autobuild/patches/{automake-1.15.patch => 0001-automake-1.17.patch} (87%) rename runtime-optenv32/libcaca+32/autobuild/patches/{CVE-2018-20544.patch => 0002-CVE-2018-20544.patch} (100%) rename runtime-optenv32/libcaca+32/autobuild/patches/{CVE-2018-20545_20458_20549.patch => 0003-CVE-2018-20545_20458_20549.patch} (100%) rename runtime-optenv32/libcaca+32/autobuild/patches/{CVE-2018-20546_20547.patch => 0004-CVE-2018-20546_20547.patch} (100%) delete mode 100644 runtime-optenv32/libcaca+32/autobuild/prepare diff --git a/runtime-optenv32/libcaca+32/autobuild/build b/runtime-optenv32/libcaca+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/libcaca+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/libcaca+32/autobuild/defines b/runtime-optenv32/libcaca+32/autobuild/defines index 0cd768dd03d..ce14559cd57 100644 --- a/runtime-optenv32/libcaca+32/autobuild/defines +++ b/runtime-optenv32/libcaca+32/autobuild/defines @@ -1,13 +1,21 @@ PKGNAME=libcaca+32 PKGSEC=libs -PKGDES="Color ASCii Art libraries (optenv32)" -PKGDEP="imlib2+32 ncurses+32" -BUILDDEP="32subsystem" +PKGDEP="imlib2+32 ncurses+32 pango+32" +BUILDDEP="devel-base+32" +PKGDES="Color ASCII art libraries (32-bit x86 runtime)" + +AUTOTOOLS_AFTER=( + '--disable-cxx' + '--disable-gl' + '--disable-csharp' + '--disable-python' + '--disable-java' + '--disable-ruby' + '--disable-slang' + '--disable-doc' +) -AUTOTOOLS_AFTER="--disable-cxx --disable-gl --disable-csharp \ - --disable-python --disable-java --disable-ruby --disable-slang \ - --disable-doc" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 PKGEPOCH=1 diff --git a/runtime-optenv32/libcaca+32/autobuild/patches/automake-1.15.patch b/runtime-optenv32/libcaca+32/autobuild/patches/0001-automake-1.17.patch similarity index 87% rename from runtime-optenv32/libcaca+32/autobuild/patches/automake-1.15.patch rename to runtime-optenv32/libcaca+32/autobuild/patches/0001-automake-1.17.patch index bdad3d2d6a8..4f9736cc1eb 100644 --- a/runtime-optenv32/libcaca+32/autobuild/patches/automake-1.15.patch +++ b/runtime-optenv32/libcaca+32/autobuild/patches/0001-automake-1.17.patch @@ -5,7 +5,7 @@ # Check for automake amvers="no" -for v in 13 12 11 10 9 8 7 6 5; do -+for v in 15 14 13 12 11 10 9 8 7 6 5; do ++for v in 17 16 15 14 13 12 11 10 9 8 7 6 5; do if automake-1.${v} --version >/dev/null 2>&1; then amvers="-1.${v}" break diff --git a/runtime-optenv32/libcaca+32/autobuild/patches/CVE-2018-20544.patch b/runtime-optenv32/libcaca+32/autobuild/patches/0002-CVE-2018-20544.patch similarity index 100% rename from runtime-optenv32/libcaca+32/autobuild/patches/CVE-2018-20544.patch rename to runtime-optenv32/libcaca+32/autobuild/patches/0002-CVE-2018-20544.patch diff --git a/runtime-optenv32/libcaca+32/autobuild/patches/CVE-2018-20545_20458_20549.patch b/runtime-optenv32/libcaca+32/autobuild/patches/0003-CVE-2018-20545_20458_20549.patch similarity index 100% rename from runtime-optenv32/libcaca+32/autobuild/patches/CVE-2018-20545_20458_20549.patch rename to runtime-optenv32/libcaca+32/autobuild/patches/0003-CVE-2018-20545_20458_20549.patch diff --git a/runtime-optenv32/libcaca+32/autobuild/patches/CVE-2018-20546_20547.patch b/runtime-optenv32/libcaca+32/autobuild/patches/0004-CVE-2018-20546_20547.patch similarity index 100% rename from runtime-optenv32/libcaca+32/autobuild/patches/CVE-2018-20546_20547.patch rename to runtime-optenv32/libcaca+32/autobuild/patches/0004-CVE-2018-20546_20547.patch diff --git a/runtime-optenv32/libcaca+32/autobuild/prepare b/runtime-optenv32/libcaca+32/autobuild/prepare deleted file mode 100644 index ba1d9cbe2c3..00000000000 --- a/runtime-optenv32/libcaca+32/autobuild/prepare +++ /dev/null @@ -1 +0,0 @@ -autoreconf -fi diff --git a/runtime-optenv32/libcaca+32/spec b/runtime-optenv32/libcaca+32/spec index 582bc5efe8d..f61aa23e6d3 100644 --- a/runtime-optenv32/libcaca+32/spec +++ b/runtime-optenv32/libcaca+32/spec @@ -1,5 +1,5 @@ VER=0.99.beta19 -REL=4 -SRCS="tbl::https://github.com/cacalabs/libcaca/archive/v${VER}.tar.gz" -CHKSUMS="sha256::7ed29a00cc7f017424d8b2994f001f137ed5bc4441987b711d78c6734fdf3493" +REL=5 +SRCS="git::commit=tags/v$VER::https://github.com/cacalabs/libcaca" +CHKSUMS="SKIP" CHKUPDATE="anitya::id=7952" From d72da64a5c2c0d5aaed1ce1a6add368329418600 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 25 Dec 2024 22:41:18 +0800 Subject: [PATCH 104/722] libavc1394+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libavc1394+32/autobuild/build | 12 ------------ runtime-optenv32/libavc1394+32/autobuild/defines | 7 ++++--- runtime-optenv32/libavc1394+32/spec | 2 +- 3 files changed, 5 insertions(+), 16 deletions(-) delete mode 100644 runtime-optenv32/libavc1394+32/autobuild/build diff --git a/runtime-optenv32/libavc1394+32/autobuild/build b/runtime-optenv32/libavc1394+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/libavc1394+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/libavc1394+32/autobuild/defines b/runtime-optenv32/libavc1394+32/autobuild/defines index b18f370d8de..8a2b6013786 100644 --- a/runtime-optenv32/libavc1394+32/autobuild/defines +++ b/runtime-optenv32/libavc1394+32/autobuild/defines @@ -1,7 +1,8 @@ PKGNAME=libavc1394+32 PKGSEC=libs PKGDEP="libraw1394+32" -BUILDDEP="32subsystem" -PKGDES="A library to control A/V devices using the 1394ta AV/C commands (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="A library to control A/V devices using the 1394ta AV/C commands (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libavc1394+32/spec b/runtime-optenv32/libavc1394+32/spec index c50d264f4e9..a136293202f 100644 --- a/runtime-optenv32/libavc1394+32/spec +++ b/runtime-optenv32/libavc1394+32/spec @@ -1,5 +1,5 @@ VER=0.5.4 +REL=4 SRCS="tbl::https://downloads.sourceforge.net/sourceforge/libavc1394/libavc1394-$VER.tar.gz" CHKSUMS="sha256::7cb1ff09506ae911ca9860bef4af08c2403f3e131f6c913a2cbd6ddca4215b53" -REL=3 CHKUPDATE="anitya::id=1562" From f8de2f9475f3ab9e1d99ed56e3d5f8f60417e707 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 25 Dec 2024 22:41:41 +0800 Subject: [PATCH 105/722] gstreamer-0-10+32: drop, orphaned --- .../gstreamer-0-10+32/autobuild/build | 12 -- .../gstreamer-0-10+32/autobuild/defines | 10 -- .../gstreamer-0-10+32/autobuild/patch | 3 - .../01_fix_webcam_stream_play_hang.patch | 104 ------------- .../79_multiarch-backwards-compat.patch | 28 ---- .../autobuild/patches/80_ia32-hack.patch | 42 ----- .../patches/99_ltmain_as-needed.patch | 32 ---- .../autobuild/patches/bison3.patch | 28 ---- .../autobuild/patches/libtool-ppc64el | 144 ------------------ .../autobuild/patches/series | 6 - runtime-optenv32/gstreamer-0-10+32/spec | 4 - 11 files changed, 413 deletions(-) delete mode 100644 runtime-optenv32/gstreamer-0-10+32/autobuild/build delete mode 100644 runtime-optenv32/gstreamer-0-10+32/autobuild/defines delete mode 100644 runtime-optenv32/gstreamer-0-10+32/autobuild/patch delete mode 100644 runtime-optenv32/gstreamer-0-10+32/autobuild/patches/01_fix_webcam_stream_play_hang.patch delete mode 100644 runtime-optenv32/gstreamer-0-10+32/autobuild/patches/79_multiarch-backwards-compat.patch delete mode 100644 runtime-optenv32/gstreamer-0-10+32/autobuild/patches/80_ia32-hack.patch delete mode 100644 runtime-optenv32/gstreamer-0-10+32/autobuild/patches/99_ltmain_as-needed.patch delete mode 100644 runtime-optenv32/gstreamer-0-10+32/autobuild/patches/bison3.patch delete mode 100644 runtime-optenv32/gstreamer-0-10+32/autobuild/patches/libtool-ppc64el delete mode 100644 runtime-optenv32/gstreamer-0-10+32/autobuild/patches/series delete mode 100644 runtime-optenv32/gstreamer-0-10+32/spec diff --git a/runtime-optenv32/gstreamer-0-10+32/autobuild/build b/runtime-optenv32/gstreamer-0-10+32/autobuild/build deleted file mode 100644 index 3befca8217f..00000000000 --- a/runtime-optenv32/gstreamer-0-10+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -./configure --enable-shared --prefix=/opt/32 \ - --disable-static ${AUTOTOOLS_AFTER} \ - LDFLAGS="${LDFLAGS} -L/opt/32/lib" \ - CC=i686-pc-linux-gnu-gcc \ - CXX=i686-pc-linux-gnu-g++ \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make DESTDIR=$PKGDIR install - -rm -rf $PKGDIR/opt/32/{bin,share} diff --git a/runtime-optenv32/gstreamer-0-10+32/autobuild/defines b/runtime-optenv32/gstreamer-0-10+32/autobuild/defines deleted file mode 100644 index 3ae453cc62f..00000000000 --- a/runtime-optenv32/gstreamer-0-10+32/autobuild/defines +++ /dev/null @@ -1,10 +0,0 @@ -PKGNAME=gstreamer-0-10+32 -PKGDES="GStreamer Multimedia Framework - 0.10 branch" -PKGSEC=libs -PKGDEP="glib+32 libxml2+32" -BUILDDEP="32subsystem" -BUILDDEP="gobject-introspection intltool 32subsystem" - -AUTOTOOLS_AFTER="--disable-gtk-doc" -NOLTO=1 -ABHOST=noarch diff --git a/runtime-optenv32/gstreamer-0-10+32/autobuild/patch b/runtime-optenv32/gstreamer-0-10+32/autobuild/patch deleted file mode 100644 index 3710ee5805a..00000000000 --- a/runtime-optenv32/gstreamer-0-10+32/autobuild/patch +++ /dev/null @@ -1,3 +0,0 @@ -for i in `cat autobuild/patches/series`; do - patch -Np1 -i autobuild/patches/$i -done diff --git a/runtime-optenv32/gstreamer-0-10+32/autobuild/patches/01_fix_webcam_stream_play_hang.patch b/runtime-optenv32/gstreamer-0-10+32/autobuild/patches/01_fix_webcam_stream_play_hang.patch deleted file mode 100644 index d5c50f59277..00000000000 --- a/runtime-optenv32/gstreamer-0-10+32/autobuild/patches/01_fix_webcam_stream_play_hang.patch +++ /dev/null @@ -1,104 +0,0 @@ -Description: gstreamer hangs when accessing webcam (on specific hardware) - This fixes cases where starting to play a webcam stream would - make gstreamer (or part of it at least) hang. - . - This is a cherry-pick of upstream commit: 401f9b3de72de759c76da155a339c754b653bf9d -Origin: upstream, http://cgit.freedesktop.org/gstreamer/gstreamer/commit/?id=401f9b3de72de759c76da155a339c754b653bf9d -Bug: https://bugzilla.gnome.org/show_bug.cgi?id=684981 -Bug-Debian: http://bugs.debian.org/676648 -Bug-Ubuntu: https://launchpad.net/bugs/966294 -Reviewed-By: Micha Lenk -Last-Update: 2013-04-21 - ---- gstreamer0.10-0.10.36.orig/gst/gstvalue.c -+++ gstreamer0.10-0.10.36/gst/gstvalue.c -@@ -2755,7 +2755,7 @@ gst_value_intersect_list (GValue * dest, - - gst_value_init_and_copy (&temp, dest); - g_value_unset (dest); -- gst_value_list_concat (dest, &temp, &intersection); -+ gst_value_list_merge (dest, &temp, &intersection); - g_value_unset (&temp); - } - g_value_unset (&intersection); ---- gstreamer0.10-0.10.36.orig/tests/check/gst/gstcaps.c -+++ gstreamer0.10-0.10.36/tests/check/gst/gstcaps.c -@@ -788,6 +788,70 @@ GST_START_TEST (test_intersect2) - - GST_END_TEST; - -+GST_START_TEST (test_intersect_list_duplicate) -+{ -+ GstCaps *caps1, *caps2, *icaps; -+ -+ /* make sure we don't take too long to intersect these.. */ -+ caps1 = gst_caps_from_string ("video/x-raw, format=(string)YV12; " -+ "video/x-raw, format=(string)I420; video/x-raw, format=(string)YUY2; " -+ "video/x-raw, format=(string)UYVY; " -+ "video/x-raw, format=(string){ I420, YV12, YUY2, UYVY, AYUV, RGBx, BGRx," -+ " xRGB, xBGR, { RGBA, RGBA, { RGBA, RGBA }, " -+ "{ RGBA, RGBA, { RGBA, RGBA } }, { RGBA, RGBA, { RGBA, RGBA }, " -+ "{ RGBA, RGBA, { RGBA, RGBA } } }, { RGBA, RGBA, { RGBA, RGBA }, " -+ "{ RGBA, RGBA, { RGBA, RGBA } }, { RGBA, RGBA, { RGBA, RGBA }, " -+ "{ RGBA, RGBA, { RGBA, RGBA } } } }, { RGBA, RGBA, { RGBA, RGBA }, " -+ "{ RGBA, RGBA, { RGBA, RGBA } }, { RGBA, RGBA, { RGBA, RGBA }, " -+ "{ RGBA, RGBA, { RGBA, RGBA } } }, { RGBA, RGBA, { RGBA, RGBA }, " -+ "{ RGBA, RGBA, { RGBA, RGBA } }, { RGBA, RGBA, { RGBA, RGBA }, " -+ "{ RGBA, RGBA, { RGBA, RGBA } } } } } }, BGRA, ARGB, { ABGR, ABGR, " -+ "{ ABGR, ABGR }, { ABGR, ABGR, { ABGR, ABGR } }, " -+ "{ ABGR, ABGR, { ABGR, ABGR }, { ABGR, ABGR, { ABGR, ABGR } } }, " -+ "{ ABGR, ABGR, { ABGR, ABGR }, { ABGR, ABGR, { ABGR, ABGR } }, " -+ "{ ABGR, ABGR, { ABGR, ABGR }, { ABGR, ABGR, { ABGR, ABGR } } } }, " -+ "{ ABGR, ABGR, { ABGR, ABGR }, { ABGR, ABGR, { ABGR, ABGR } }, " -+ "{ ABGR, ABGR, { ABGR, ABGR }, { ABGR, ABGR, { ABGR, ABGR } } }, " -+ "{ ABGR, ABGR, { ABGR, ABGR }, { ABGR, ABGR, { ABGR, ABGR } }, " -+ "{ ABGR, ABGR, { ABGR, ABGR }, { ABGR, ABGR, { ABGR, ABGR } } } } } }, " -+ "RGB, BGR, Y41B, Y42B, YVYU, Y444 }; " -+ "video/x-raw, format=(string){ I420, YV12, YUY2, UYVY, AYUV, RGBx, BGRx, " -+ "xRGB, xBGR, { RGBA, RGBA, { RGBA, RGBA }, " -+ "{ RGBA, RGBA, { RGBA, RGBA } }, { RGBA, RGBA, { RGBA, RGBA }, " -+ "{ RGBA, RGBA, { RGBA, RGBA } } }, { RGBA, RGBA, { RGBA, RGBA }, " -+ "{ RGBA, RGBA, { RGBA, RGBA } }, { RGBA, RGBA, { RGBA, RGBA }, " -+ "{ RGBA, RGBA, { RGBA, RGBA } } } }, { RGBA, RGBA, { RGBA, RGBA }, " -+ "{ RGBA, RGBA, { RGBA, RGBA } }, { RGBA, RGBA, { RGBA, RGBA }, " -+ "{ RGBA, RGBA, { RGBA, RGBA } } }, { RGBA, RGBA, { RGBA, RGBA }, " -+ "{ RGBA, RGBA, { RGBA, RGBA } }, { RGBA, RGBA, { RGBA, RGBA }, " -+ "{ RGBA, RGBA, { RGBA, RGBA } } } } } }, BGRA, ARGB, " -+ "{ ABGR, ABGR, { ABGR, ABGR }, { ABGR, ABGR, { ABGR, ABGR } }, " -+ "{ ABGR, ABGR, { ABGR, ABGR }, { ABGR, ABGR, { ABGR, ABGR } } }, " -+ "{ ABGR, ABGR, { ABGR, ABGR }, { ABGR, ABGR, { ABGR, ABGR } }, " -+ "{ ABGR, ABGR, { ABGR, ABGR }, { ABGR, ABGR, { ABGR, ABGR } } } }, " -+ "{ ABGR, ABGR, { ABGR, ABGR }, { ABGR, ABGR, { ABGR, ABGR } }, " -+ "{ ABGR, ABGR, { ABGR, ABGR }, { ABGR, ABGR, { ABGR, ABGR } } }, " -+ "{ ABGR, ABGR, { ABGR, ABGR }, { ABGR, ABGR, { ABGR, ABGR } }, " -+ "{ ABGR, ABGR, { ABGR, ABGR }, { ABGR, ABGR, { ABGR, ABGR } } } } } }, " -+ "RGB, BGR, Y41B, Y42B, YVYU, Y444, NV12, NV21 }; " -+ "video/x-raw, format=(string){ I420, YV12, YUY2, UYVY, AYUV, RGBx, " -+ "BGRx, xRGB, xBGR, { RGBA, RGBA, { RGBA, RGBA }, " -+ "{ RGBA, RGBA, { RGBA, RGBA } }, { RGBA, RGBA, { RGBA, RGBA }, " -+ "{ RGBA, RGBA, { RGBA, RGBA } } } }, BGRA, ARGB, " -+ "{ ABGR, ABGR, { ABGR, ABGR }, { ABGR, ABGR, { ABGR, ABGR } }, " -+ "{ ABGR, ABGR, { ABGR, ABGR }, { ABGR, ABGR, { ABGR, ABGR } } } }, " -+ "RGB, BGR, Y41B, Y42B, YVYU, Y444, NV12, NV21 }"); -+ -+ caps2 = gst_caps_copy (caps1); -+ -+ icaps = gst_caps_intersect (caps1, caps2); -+ -+ gst_caps_unref (caps1); -+ gst_caps_unref (caps2); -+ gst_caps_unref (icaps); -+} -+ -+GST_END_TEST; - - GST_START_TEST (test_intersect_zigzag) - { -@@ -997,6 +1061,7 @@ gst_caps_suite (void) - tcase_add_test (tc_chain, test_merge_subset); - tcase_add_test (tc_chain, test_intersect); - tcase_add_test (tc_chain, test_intersect2); -+ tcase_add_test (tc_chain, test_intersect_list_duplicate); - tcase_add_test (tc_chain, test_intersect_zigzag); - tcase_add_test (tc_chain, test_intersect_first); - tcase_add_test (tc_chain, test_intersect_first2); diff --git a/runtime-optenv32/gstreamer-0-10+32/autobuild/patches/79_multiarch-backwards-compat.patch b/runtime-optenv32/gstreamer-0-10+32/autobuild/patches/79_multiarch-backwards-compat.patch deleted file mode 100644 index 92f8605e3b4..00000000000 --- a/runtime-optenv32/gstreamer-0-10+32/autobuild/patches/79_multiarch-backwards-compat.patch +++ /dev/null @@ -1,28 +0,0 @@ -=== modified file 'gst/gstregistry.c' -Index: trunk/gst/gstregistry.c -=================================================================== ---- trunk.orig/gst/gstregistry.c -+++ trunk/gst/gstregistry.c -@@ -1503,7 +1503,7 @@ - * path, and the plugins installed in the user's home directory */ - plugin_path = g_getenv ("GST_PLUGIN_SYSTEM_PATH"); - if (plugin_path == NULL) { -- char *home_plugins; -+ char *home_plugins, *backwards_compat_plugins; - - GST_DEBUG ("GST_PLUGIN_SYSTEM_PATH not set"); - -@@ -1519,6 +1519,13 @@ - GST_DEBUG ("scanning main plugins %s", PLUGINDIR); - changed |= gst_registry_scan_path_internal (&context, PLUGINDIR); - -+ /* finally, look in the /usr/lib backwards-compatibility path. */ -+ backwards_compat_plugins = g_build_filename ("/usr/lib", -+ "gstreamer-" GST_MAJORMINOR, NULL); -+ GST_DEBUG ("scanning plugins %s", backwards_compat_plugins); -+ changed |= gst_registry_scan_path_internal (&context, backwards_compat_plugins); -+ g_free (backwards_compat_plugins); -+ - #ifdef G_OS_WIN32 - { - char *base_dir; diff --git a/runtime-optenv32/gstreamer-0-10+32/autobuild/patches/80_ia32-hack.patch b/runtime-optenv32/gstreamer-0-10+32/autobuild/patches/80_ia32-hack.patch deleted file mode 100644 index 10461841070..00000000000 --- a/runtime-optenv32/gstreamer-0-10+32/autobuild/patches/80_ia32-hack.patch +++ /dev/null @@ -1,42 +0,0 @@ -Index: trunk/gst/gstregistry.c -=================================================================== ---- trunk.orig/gst/gstregistry.c -+++ trunk/gst/gstregistry.c -@@ -121,6 +121,10 @@ - #include - #include - -+#ifdef HAVE_SYS_UTSNAME_H -+#include -+#endif -+ - /* For g_stat () */ - #include - -@@ -1503,6 +1507,9 @@ - * path, and the plugins installed in the user's home directory */ - plugin_path = g_getenv ("GST_PLUGIN_SYSTEM_PATH"); - if (plugin_path == NULL) { -+#if defined(__linux__) && defined (__i386__) -+ struct utsname uts; -+#endif - char *home_plugins, *backwards_compat_plugins; - - GST_DEBUG ("GST_PLUGIN_SYSTEM_PATH not set"); -@@ -1522,6 +1529,16 @@ - /* finally, look in the /usr/lib backwards-compatibility path. */ - backwards_compat_plugins = g_build_filename ("/usr/lib", - "gstreamer-" GST_MAJORMINOR, NULL); -+#if defined(__linux__) && defined (__i386__) -+ uname(&uts); -+ if (!strcmp("x86_64", uts.machine) -+ && !access("/usr/lib32/gstreamer-0.10", R_OK|X_OK)) -+ { -+ g_free (backwards_compat_plugins); -+ backwards_compat_plugins = g_build_filename ("/usr/lib32", -+ "gstreamer-" GST_MAJORMINOR, NULL); -+ } -+#endif - GST_DEBUG ("scanning plugins %s", backwards_compat_plugins); - changed |= gst_registry_scan_path_internal (&context, backwards_compat_plugins); - g_free (backwards_compat_plugins); diff --git a/runtime-optenv32/gstreamer-0-10+32/autobuild/patches/99_ltmain_as-needed.patch b/runtime-optenv32/gstreamer-0-10+32/autobuild/patches/99_ltmain_as-needed.patch deleted file mode 100644 index 73f5f2f60d9..00000000000 --- a/runtime-optenv32/gstreamer-0-10+32/autobuild/patches/99_ltmain_as-needed.patch +++ /dev/null @@ -1,32 +0,0 @@ -diff --git a/ltmain.sh b/ltmain.sh -index c7d06c3..7bc27f2 100644 ---- a/ltmain.sh -+++ b/ltmain.sh -@@ -5800,6 +5800,11 @@ func_mode_link () - arg=$func_stripname_result - ;; - -+ -Wl,--as-needed) -+ deplibs="$deplibs $arg" -+ continue -+ ;; -+ - -Wl,*) - func_stripname '-Wl,' '' "$arg" - args=$func_stripname_result -@@ -6163,6 +6168,15 @@ func_mode_link () - lib= - found=no - case $deplib in -+ -Wl,--as-needed) -+ if test "$linkmode,$pass" = "prog,link"; then -+ compile_deplibs="$deplib $compile_deplibs" -+ finalize_deplibs="$deplib $finalize_deplibs" -+ else -+ deplibs="$deplib $deplibs" -+ fi -+ continue -+ ;; - -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \ - |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*) - if test "$linkmode,$pass" = "prog,link"; then diff --git a/runtime-optenv32/gstreamer-0-10+32/autobuild/patches/bison3.patch b/runtime-optenv32/gstreamer-0-10+32/autobuild/patches/bison3.patch deleted file mode 100644 index afc46bd90a0..00000000000 --- a/runtime-optenv32/gstreamer-0-10+32/autobuild/patches/bison3.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 90622bb35544655cf641e3ab65cf35a6d01869bc Mon Sep 17 00:00:00 2001 -From: Kerrick Staley -Date: Tue, 20 Aug 2013 23:59:29 -0700 -Subject: [PATCH] Make grammar.y work with Bison 3 - -YYLEX_PARAM is no longer supported in Bison 3. ---- - gst/parse/grammar.y | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - ---- a/gst/parse/grammar.y -+++ b/gst/parse/grammar.y -@@ -26,7 +26,6 @@ - */ - - #define YYERROR_VERBOSE 1 --#define YYLEX_PARAM scanner - - #define YYENABLE_NLS 0 - -@@ -648,6 +647,7 @@ - %right '.' - %left '!' '=' - -+%lex-param { void *scanner } - %parse-param { void *scanner } - %parse-param { graph_t *graph } - %pure-parser diff --git a/runtime-optenv32/gstreamer-0-10+32/autobuild/patches/libtool-ppc64el b/runtime-optenv32/gstreamer-0-10+32/autobuild/patches/libtool-ppc64el deleted file mode 100644 index 7307137a284..00000000000 --- a/runtime-optenv32/gstreamer-0-10+32/autobuild/patches/libtool-ppc64el +++ /dev/null @@ -1,144 +0,0 @@ -Description:i Update local libtool copy to build on ppc64el - * Update local libtool copy to build on ppc64el. Closes: #756641 -Author: Andreas Barth -Bug-Debian: https://bugs.debian.org/756641 - ---- gstreamer0.10-0.10.36.orig/m4/libtool.m4 -+++ gstreamer0.10-0.10.36/m4/libtool.m4 -@@ -1312,7 +1312,7 @@ ia64-*-hpux*) - rm -rf conftest* - ;; - --x86_64-*kfreebsd*-gnu|x86_64-*linux*|ppc*-*linux*|powerpc*-*linux*| \ -+x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \ - s390*-*linux*|s390*-*tpf*|sparc*-*linux*) - # Find out which ABI we are using. - echo 'int i;' > conftest.$ac_ext -@@ -1324,9 +1324,19 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux* - LD="${LD-ld} -m elf_i386_fbsd" - ;; - x86_64-*linux*) -- LD="${LD-ld} -m elf_i386" -+ case `/usr/bin/file conftest.o` in -+ *x86-64*) -+ LD="${LD-ld} -m elf32_x86_64" -+ ;; -+ *) -+ LD="${LD-ld} -m elf_i386" -+ ;; -+ esac -+ ;; -+ powerpc64le-*) -+ LD="${LD-ld} -m elf32lppclinux" - ;; -- ppc64-*linux*|powerpc64-*linux*) -+ powerpc64-*) - LD="${LD-ld} -m elf32ppclinux" - ;; - s390x-*linux*) -@@ -1345,7 +1355,10 @@ s390*-*linux*|s390*-*tpf*|sparc*-*linux* - x86_64-*linux*) - LD="${LD-ld} -m elf_x86_64" - ;; -- ppc*-*linux*|powerpc*-*linux*) -+ powerpcle-*) -+ LD="${LD-ld} -m elf64lppc" -+ ;; -+ powerpc-*) - LD="${LD-ld} -m elf64ppc" - ;; - s390*-*linux*|s390*-*tpf*) -@@ -1688,7 +1701,8 @@ AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [d - ;; - *) - lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null` -- if test -n "$lt_cv_sys_max_cmd_len"; then -+ if test -n "$lt_cv_sys_max_cmd_len" && \ -+ test undefined != "$lt_cv_sys_max_cmd_len"; then - lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` - lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` - else -@@ -2512,17 +2526,6 @@ freebsd* | dragonfly*) - esac - ;; - --gnu*) -- version_type=linux # correct to gnu/linux during the next big refactor -- need_lib_prefix=no -- need_version=no -- library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}${major} ${libname}${shared_ext}' -- soname_spec='${libname}${release}${shared_ext}$major' -- shlibpath_var=LD_LIBRARY_PATH -- shlibpath_overrides_runpath=no -- hardcode_into_libs=yes -- ;; -- - haiku*) - version_type=linux # correct to gnu/linux during the next big refactor - need_lib_prefix=no -@@ -2639,7 +2642,7 @@ linux*oldld* | linux*aout* | linux*coff* - ;; - - # This must be glibc/ELF. --linux* | k*bsd*-gnu | kopensolaris*-gnu) -+linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) - version_type=linux # correct to gnu/linux during the next big refactor - need_lib_prefix=no - need_version=no -@@ -3255,10 +3258,6 @@ freebsd* | dragonfly*) - fi - ;; - --gnu*) -- lt_cv_deplibs_check_method=pass_all -- ;; -- - haiku*) - lt_cv_deplibs_check_method=pass_all - ;; -@@ -3297,7 +3296,7 @@ irix5* | irix6* | nonstopux*) - ;; - - # This must be glibc/ELF. --linux* | k*bsd*-gnu | kopensolaris*-gnu) -+linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) - lt_cv_deplibs_check_method=pass_all - ;; - -@@ -4049,7 +4048,7 @@ m4_if([$1], [CXX], [ - ;; - esac - ;; -- linux* | k*bsd*-gnu | kopensolaris*-gnu) -+ linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) - case $cc_basename in - KCC*) - # KAI C++ Compiler -@@ -4348,7 +4347,7 @@ m4_if([$1], [CXX], [ - _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' - ;; - -- linux* | k*bsd*-gnu | kopensolaris*-gnu) -+ linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) - case $cc_basename in - # old Intel for x86_64 which still supported -KPIC. - ecc*) -@@ -6241,9 +6240,6 @@ if test "$_lt_caught_CXX_error" != yes; - _LT_TAGVAR(ld_shlibs, $1)=yes - ;; - -- gnu*) -- ;; -- - haiku*) - _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags ${wl}-soname $wl$soname -o $lib' - _LT_TAGVAR(link_all_deplibs, $1)=yes -@@ -6405,7 +6401,7 @@ if test "$_lt_caught_CXX_error" != yes; - _LT_TAGVAR(inherit_rpath, $1)=yes - ;; - -- linux* | k*bsd*-gnu | kopensolaris*-gnu) -+ linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) - case $cc_basename in - KCC*) - # Kuck and Associates, Inc. (KAI) C++ Compiler diff --git a/runtime-optenv32/gstreamer-0-10+32/autobuild/patches/series b/runtime-optenv32/gstreamer-0-10+32/autobuild/patches/series deleted file mode 100644 index 05f3866e4c4..00000000000 --- a/runtime-optenv32/gstreamer-0-10+32/autobuild/patches/series +++ /dev/null @@ -1,6 +0,0 @@ -79_multiarch-backwards-compat.patch -80_ia32-hack.patch -99_ltmain_as-needed.patch -01_fix_webcam_stream_play_hang.patch -bison3.patch -libtool-ppc64el diff --git a/runtime-optenv32/gstreamer-0-10+32/spec b/runtime-optenv32/gstreamer-0-10+32/spec deleted file mode 100644 index c9e1762e68e..00000000000 --- a/runtime-optenv32/gstreamer-0-10+32/spec +++ /dev/null @@ -1,4 +0,0 @@ -VER=0.10.36 -SRCS="tbl::https://download.gnome.org/sources/gstreamer/${VER%.*}/gstreamer-$VER.tar.xz" -CHKSUMS="sha256::9151aa108c177054387885763fa0e433e76780f7c5655c70a5390f2a6c6871da" -REL=2 From 297cba6a06ddfe78bbb7c2e0e084affcc7e5e6d7 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 25 Dec 2024 22:42:22 +0800 Subject: [PATCH 106/722] gst-plugins-base-0-10+32: drop, orphaned --- .../gst-plugins-base-0-10+32/autobuild/build | 12 ---- .../autobuild/defines | 9 --- ...-t-discard-timestamps-when-consecuti.patch | 62 ------------------- .../patches/10_gnome-vfs-dav-url.patch | 12 ---- .../patches/20_fix-speex-sse-gcc-4.9.patch | 35 ----------- .../patches/98_fix-ogg-flac-transition.patch | 27 -------- .../autobuild/patches/series | 4 -- .../gst-plugins-base-0-10+32/spec | 4 -- 8 files changed, 165 deletions(-) delete mode 100644 runtime-optenv32/gst-plugins-base-0-10+32/autobuild/build delete mode 100644 runtime-optenv32/gst-plugins-base-0-10+32/autobuild/defines delete mode 100644 runtime-optenv32/gst-plugins-base-0-10+32/autobuild/patches/0001-audiodecoder-don-t-discard-timestamps-when-consecuti.patch delete mode 100644 runtime-optenv32/gst-plugins-base-0-10+32/autobuild/patches/10_gnome-vfs-dav-url.patch delete mode 100644 runtime-optenv32/gst-plugins-base-0-10+32/autobuild/patches/20_fix-speex-sse-gcc-4.9.patch delete mode 100644 runtime-optenv32/gst-plugins-base-0-10+32/autobuild/patches/98_fix-ogg-flac-transition.patch delete mode 100644 runtime-optenv32/gst-plugins-base-0-10+32/autobuild/patches/series delete mode 100644 runtime-optenv32/gst-plugins-base-0-10+32/spec diff --git a/runtime-optenv32/gst-plugins-base-0-10+32/autobuild/build b/runtime-optenv32/gst-plugins-base-0-10+32/autobuild/build deleted file mode 100644 index 3befca8217f..00000000000 --- a/runtime-optenv32/gst-plugins-base-0-10+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -./configure --enable-shared --prefix=/opt/32 \ - --disable-static ${AUTOTOOLS_AFTER} \ - LDFLAGS="${LDFLAGS} -L/opt/32/lib" \ - CC=i686-pc-linux-gnu-gcc \ - CXX=i686-pc-linux-gnu-g++ \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make DESTDIR=$PKGDIR install - -rm -rf $PKGDIR/opt/32/{bin,share} diff --git a/runtime-optenv32/gst-plugins-base-0-10+32/autobuild/defines b/runtime-optenv32/gst-plugins-base-0-10+32/autobuild/defines deleted file mode 100644 index 105f76f682e..00000000000 --- a/runtime-optenv32/gst-plugins-base-0-10+32/autobuild/defines +++ /dev/null @@ -1,9 +0,0 @@ -PKGNAME=gst-plugins-base-0-10+32 -PKGDES="GStreamer base plugins" -PKGDEP="gstreamer-0-10+32 orc+32 x11-lib+32 alsa-lib+32 cdparanoia+32 libvisual+32 libvorbis+32 libtheora+32 pango+32" -BUILDDEP="32subsystem" -PKGSEC=libs - -AUTOTOOLS_AFTER="--enable-experimental --disable-gnome_vfs --disable-gtk-doc --disable-examples" -NOLTO=1 -ABHOST=noarch diff --git a/runtime-optenv32/gst-plugins-base-0-10+32/autobuild/patches/0001-audiodecoder-don-t-discard-timestamps-when-consecuti.patch b/runtime-optenv32/gst-plugins-base-0-10+32/autobuild/patches/0001-audiodecoder-don-t-discard-timestamps-when-consecuti.patch deleted file mode 100644 index ad133452114..00000000000 --- a/runtime-optenv32/gst-plugins-base-0-10+32/autobuild/patches/0001-audiodecoder-don-t-discard-timestamps-when-consecuti.patch +++ /dev/null @@ -1,62 +0,0 @@ -From 38803239c026163589dde04259b00c5fe33ad706 Mon Sep 17 00:00:00 2001 -From: Alessandro Decina -Date: Wed, 4 Apr 2012 20:43:23 +0200 -Subject: [PATCH] audiodecoder: don't discard timestamps when consecutive input - buffers have the same ts - -Avoid pushing out buffers with the same timestamp only if the out buffers are -decoded from the same input buffer. Instead keep the timestamps when upstream -pushes consecutive buffers with the same ts. ---- - gst-libs/gst/audio/gstaudiodecoder.c | 12 ++++++++---- - 1 file changed, 8 insertions(+), 4 deletions(-) - -diff --git a/gst-libs/gst/audio/gstaudiodecoder.c b/gst-libs/gst/audio/gstaudiodecoder.c -index 5dfd278..6bc054d 100644 ---- a/gst-libs/gst/audio/gstaudiodecoder.c -+++ b/gst-libs/gst/audio/gstaudiodecoder.c -@@ -220,6 +220,7 @@ struct _GstAudioDecoderPrivate - GstAdapter *adapter; - /* tracking input ts for changes */ - GstClockTime prev_ts; -+ guint64 prev_distance; - /* frames obtained from input */ - GQueue frames; - /* collected output data */ -@@ -445,6 +446,7 @@ gst_audio_decoder_reset (GstAudioDecoder * dec, gboolean full) - dec->priv->out_ts = GST_CLOCK_TIME_NONE; - dec->priv->out_dur = 0; - dec->priv->prev_ts = GST_CLOCK_TIME_NONE; -+ dec->priv->prev_distance = 0; - dec->priv->drained = TRUE; - dec->priv->base_ts = GST_CLOCK_TIME_NONE; - dec->priv->samples = 0; -@@ -977,6 +979,7 @@ gst_audio_decoder_push_buffers (GstAudioDecoder * dec, gboolean force) - if (G_LIKELY (av)) { - gint len; - GstClockTime ts; -+ guint64 distance; - - /* parse if needed */ - if (klass->parse) { -@@ -1016,12 +1019,13 @@ gst_audio_decoder_push_buffers (GstAudioDecoder * dec, gboolean force) - len = av; - } - /* track upstream ts, but do not get stuck if nothing new upstream */ -- ts = gst_adapter_prev_timestamp (priv->adapter, NULL); -- if (ts == priv->prev_ts) { -+ ts = gst_adapter_prev_timestamp (priv->adapter, &distance); -+ if (ts != priv->prev_ts || distance <= priv->prev_distance) { -+ priv->prev_ts = ts; -+ priv->prev_distance = distance; -+ } else { - GST_LOG_OBJECT (dec, "ts == prev_ts; discarding"); - ts = GST_CLOCK_TIME_NONE; -- } else { -- priv->prev_ts = ts; - } - buffer = gst_adapter_take_buffer (priv->adapter, len); - buffer = gst_buffer_make_metadata_writable (buffer); --- -2.1.0 - diff --git a/runtime-optenv32/gst-plugins-base-0-10+32/autobuild/patches/10_gnome-vfs-dav-url.patch b/runtime-optenv32/gst-plugins-base-0-10+32/autobuild/patches/10_gnome-vfs-dav-url.patch deleted file mode 100644 index 5cf7d892373..00000000000 --- a/runtime-optenv32/gst-plugins-base-0-10+32/autobuild/patches/10_gnome-vfs-dav-url.patch +++ /dev/null @@ -1,12 +0,0 @@ -Index: gst-plugins-base0.10-0.10.29.2/ext/gnomevfs/gstgnomevfsuri.c -=================================================================== ---- gst-plugins-base0.10-0.10.29.2.orig/ext/gnomevfs/gstgnomevfsuri.c 2009-05-21 20:44:11.000000000 +0200 -+++ gst-plugins-base0.10-0.10.29.2/ext/gnomevfs/gstgnomevfsuri.c 2010-06-26 20:34:32.420174918 +0200 -@@ -48,6 +48,7 @@ - "sftp://localhost/bla", - "nfs://localhost/bla", - "ssh://localhost/bla", -+ "dav://localhost/bla", - "burn://" - }; - GnomeVFSURI *uri; diff --git a/runtime-optenv32/gst-plugins-base-0-10+32/autobuild/patches/20_fix-speex-sse-gcc-4.9.patch b/runtime-optenv32/gst-plugins-base-0-10+32/autobuild/patches/20_fix-speex-sse-gcc-4.9.patch deleted file mode 100644 index cb846f70360..00000000000 --- a/runtime-optenv32/gst-plugins-base-0-10+32/autobuild/patches/20_fix-speex-sse-gcc-4.9.patch +++ /dev/null @@ -1,35 +0,0 @@ -commit 4e3d101aa854cfee633a9689efeb75e5001baa5e -Author: Sebastian Dröge -Date: Mon Jan 20 16:11:04 2014 +0100 - - audioresample: It's HAVE_EMMINTRIN_H, not HAVE_XMMINTRIN_H for SSE2 - -commit daa194b71ea6f9e8ee522ab02e8c56150b7e62b3 -Author: Antoine Jacoutot -Date: Mon Jan 20 15:44:09 2014 +0100 - - audioresample: Fix build on x86 if emmintrin.h is available but can't be used - - On i386, EMMINTRIN is defined but not usable without SSE so check for - __SSE__ and __SSE2__ as well. - - https://bugzilla.gnome.org/show_bug.cgi?id=670690 - ---- a/gst/audioresample/resample.c -+++ b/gst/audioresample/resample.c -@@ -77,13 +77,13 @@ - #define EXPORT G_GNUC_INTERNAL - - #ifdef _USE_SSE --#ifndef HAVE_XMMINTRIN_H -+#if !defined(__SSE__) || !defined(HAVE_XMMINTRIN_H) - #undef _USE_SSE - #endif - #endif - - #ifdef _USE_SSE2 --#ifndef HAVE_EMMINTRIN_H -+#if !defined(__SSE2__) || !defined(HAVE_EMMINTRIN_H) - #undef _USE_SSE2 - #endif - #endif diff --git a/runtime-optenv32/gst-plugins-base-0-10+32/autobuild/patches/98_fix-ogg-flac-transition.patch b/runtime-optenv32/gst-plugins-base-0-10+32/autobuild/patches/98_fix-ogg-flac-transition.patch deleted file mode 100644 index d0e07f4e86a..00000000000 --- a/runtime-optenv32/gst-plugins-base-0-10+32/autobuild/patches/98_fix-ogg-flac-transition.patch +++ /dev/null @@ -1,27 +0,0 @@ -From: Edward Hervey -Subject: baseaudiosink: Resync when ringbuffer resets - -When the ringbuffer gets restarted (like in setcaps), we *will* have to -resync against the new values. Without this we end up blindly assuming the -new samples align to the old ones. - -Origin: upstream, http://cgit.freedesktop.org/gstreamer/gst-plugins-base/commit/?id=969fe8c0b97ae4ac58aacf7530ca1bfbc2b5969a -Bug: https://bugzilla.gnome.org/show_bug.cgi?id=680252 -Bug-Debian: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=668109 -Index: gst-plugins-base0.10-0.10.36/gst-libs/gst/audio/gstbaseaudiosink.c -=================================================================== ---- gst-plugins-base0.10-0.10.36.orig/gst-libs/gst/audio/gstbaseaudiosink.c 2011-12-30 14:29:13.000000000 +0100 -+++ gst-plugins-base0.10-0.10.36/gst-libs/gst/audio/gstbaseaudiosink.c 2012-12-04 11:02:39.294066822 +0100 -@@ -921,6 +921,12 @@ - if (!gst_ring_buffer_acquire (sink->ringbuffer, spec)) - goto acquire_error; - -+ /* We need to resync since the ringbuffer restarted */ -+ sink->priv->avg_skew = -1; -+ sink->next_sample = -1; -+ sink->priv->eos_time = -1; -+ sink->priv->discont_time = -1; -+ - if (bsink->pad_mode == GST_ACTIVATE_PUSH) { - GST_DEBUG_OBJECT (sink, "activate ringbuffer"); - gst_ring_buffer_activate (sink->ringbuffer, TRUE); diff --git a/runtime-optenv32/gst-plugins-base-0-10+32/autobuild/patches/series b/runtime-optenv32/gst-plugins-base-0-10+32/autobuild/patches/series deleted file mode 100644 index abae8a5fe24..00000000000 --- a/runtime-optenv32/gst-plugins-base-0-10+32/autobuild/patches/series +++ /dev/null @@ -1,4 +0,0 @@ -10_gnome-vfs-dav-url.patch -20_fix-speex-sse-gcc-4.9.patch -98_fix-ogg-flac-transition.patch -0001-audiodecoder-don-t-discard-timestamps-when-consecuti.patch diff --git a/runtime-optenv32/gst-plugins-base-0-10+32/spec b/runtime-optenv32/gst-plugins-base-0-10+32/spec deleted file mode 100644 index fa903948520..00000000000 --- a/runtime-optenv32/gst-plugins-base-0-10+32/spec +++ /dev/null @@ -1,4 +0,0 @@ -VER=0.10.36 -REL=7 -SRCS="tbl::https://download.gnome.org/sources/gst-plugins-base/0.10/gst-plugins-base-$VER.tar.xz" -CHKSUMS="sha256::1fe45c3894903001d4d008b0713dab089f53726dcb5842d5b40c2595a984e64a" From f0974845b942107cce79005305a56c1d8694cc5d Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 25 Dec 2024 22:42:35 +0800 Subject: [PATCH 107/722] 32subsystem: drop gstreamer-0-10, gst-plugins-base-0-10+32 --- runtime-optenv32/32subsystem/autobuild/defines | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/32subsystem/autobuild/defines b/runtime-optenv32/32subsystem/autobuild/defines index 897722d54ea..27a58c2f86f 100644 --- a/runtime-optenv32/32subsystem/autobuild/defines +++ b/runtime-optenv32/32subsystem/autobuild/defines @@ -7,8 +7,8 @@ at-spi2-core+32 attr+32 binutils+32 bzip2+32 cairo+32 cdparanoia+32 celt+32 cg+3 curl+32 db+32 dbus+32 dbus-glib+32 elfutils+32 eudev+32 expat+32 faac+32 faad2+32 fftw+32 \ flac+32 fontconfig+32 freealut+32 freeglut+32 freetype+32 game-music-emu+32 gcc+32 gconf+32 \ gdbm+32 gdk-pixbuf+32 ghostscript+32 giflib+32 glew+32 glib+32 glibc+32 glu+32 gmp+32 gnutls+32 \ -gst-plugins-bad-1-0+32 gst-plugins-base-0-10+32 gst-plugins-base-1-0+32 gst-plugins-good-1-0+32 \ -gst-plugins-ugly-1-0+32 gstreamer-0-10+32 gstreamer-1-0+32 gtk-2+32 gtk-3+32 harfbuzz+32 icu+32 \ +gst-plugins-bad-1-0+32 gst-plugins-base-1-0+32 gst-plugins-good-1-0+32 \ +gst-plugins-ugly-1-0+32 gstreamer-1-0+32 gtk-2+32 gtk-3+32 harfbuzz+32 icu+32 \ imlib2+32 json-c+32 krb5+32 lame+32 lcms2+32 libaio+32 libasyncns+32 libavc1394+32 libcaca+32 \ libcap+32 libcddb+32 libcdio+32 libcroco+32 libdca+32 libdrm+32 libdv+32 libdvdcss+32 \ libdvdnav+32 libdvdread+32 libepoxy+32 libexif+32 libffi+32 libgcrypt+32 libgpg-error+32 \ From c5e67fcd6429003f69aa2fcf8e472f4e40f5914c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 25 Dec 2024 22:46:44 +0800 Subject: [PATCH 108/722] schroedinger+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/schroedinger+32/autobuild/build | 12 ------------ runtime-optenv32/schroedinger+32/autobuild/defines | 9 +++++++-- runtime-optenv32/schroedinger+32/spec | 4 ++-- 3 files changed, 9 insertions(+), 16 deletions(-) delete mode 100644 runtime-optenv32/schroedinger+32/autobuild/build diff --git a/runtime-optenv32/schroedinger+32/autobuild/build b/runtime-optenv32/schroedinger+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/schroedinger+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/schroedinger+32/autobuild/defines b/runtime-optenv32/schroedinger+32/autobuild/defines index 2cddee87fe8..be9a86c2f91 100644 --- a/runtime-optenv32/schroedinger+32/autobuild/defines +++ b/runtime-optenv32/schroedinger+32/autobuild/defines @@ -1,6 +1,11 @@ PKGNAME=schroedinger+32 PKGSEC=libs PKGDEP="orc+32" -PKGDES="An implementation of the Dirac video codec in ANSI C code (optenv32)" +BUILDDEP="devel-base+32 gtk-doc" +PKGDES="An implementation of the Dirac video codec in ANSI C code (32-bit x86 runtime)" + +# FIXME: error: source directory already configured. +ABSHADOW=0 + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/schroedinger+32/spec b/runtime-optenv32/schroedinger+32/spec index 35c9de35532..80014bb11f9 100644 --- a/runtime-optenv32/schroedinger+32/spec +++ b/runtime-optenv32/schroedinger+32/spec @@ -1,5 +1,5 @@ VER=1.0.11 -SRCS="tbl::http://http.debian.net/debian/pool/main/s/schroedinger/schroedinger_$VER.orig.tar.gz" +REL=3 +SRCS="tbl::https://launchpad.net/schroedinger/trunk/$VER/+download/schroedinger-$VER.tar.gz" CHKSUMS="sha256::1e572a0735b92aca5746c4528f9bebd35aa0ccf8619b22fa2756137a8cc9f912" -REL=2 CHKUPDATE="anitya::id=9854" From 429b2c1d8e911affc42aa3baff0161c36772c070 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 25 Dec 2024 22:49:27 +0800 Subject: [PATCH 109/722] orc+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/orc+32/autobuild/build | 15 --------------- runtime-optenv32/orc+32/autobuild/defines | 6 +++--- runtime-optenv32/orc+32/spec | 1 + 3 files changed, 4 insertions(+), 18 deletions(-) delete mode 100644 runtime-optenv32/orc+32/autobuild/build diff --git a/runtime-optenv32/orc+32/autobuild/build b/runtime-optenv32/orc+32/autobuild/build deleted file mode 100644 index a9ad6e73519..00000000000 --- a/runtime-optenv32/orc+32/autobuild/build +++ /dev/null @@ -1,15 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -export CC="i686-pc-linux-gnu-gcc -m32" -export CXX="i686-pc-linux-gnu-g++ -m32" -export CCAS=i686-pc-linux-gnu-as - -mkdir "$SRCDIR"/build -cd "$SRCDIR"/build -meson "$SRCDIR" --prefix=/opt/32 -ninja -DESTDIR="$PKGDIR" ninja install - -cd "$SRCDIR" - -rm -rf "$PKGDIR"/opt/32/share diff --git a/runtime-optenv32/orc+32/autobuild/defines b/runtime-optenv32/orc+32/autobuild/defines index bf4b1f52989..824e14310b5 100644 --- a/runtime-optenv32/orc+32/autobuild/defines +++ b/runtime-optenv32/orc+32/autobuild/defines @@ -1,8 +1,8 @@ PKGNAME=orc+32 PKGSEC=libs PKGDEP="glibc+32" -BUILDDEP="32subsystem" -PKGDES="The Oild Runtime Compiler (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="The Oild Runtime Compiler (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/orc+32/spec b/runtime-optenv32/orc+32/spec index fdd0389ea34..1ca8be843f4 100644 --- a/runtime-optenv32/orc+32/spec +++ b/runtime-optenv32/orc+32/spec @@ -1,4 +1,5 @@ VER=0.4.32 +REL=1 SRCS="tbl::https://gstreamer.freedesktop.org/src/orc/orc-$VER.tar.xz" CHKSUMS="sha256::a66e3d8f2b7e65178d786a01ef61f2a0a0b4d0b8370de7ce134ba73da4af18f0" CHKUPDATE="anitya::id=2573" From 368db4133e50735e4d1d4f6d82d8e7b2739bd7fc Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 25 Dec 2024 22:51:09 +0800 Subject: [PATCH 110/722] libmpeg2+32: improve packaging - Use optenv32 template. - Drop unused patch script. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libmpeg2+32/autobuild/build | 12 ------------ runtime-optenv32/libmpeg2+32/autobuild/defines | 12 ++++++++---- runtime-optenv32/libmpeg2+32/autobuild/patch | 1 - runtime-optenv32/libmpeg2+32/spec | 2 +- 4 files changed, 9 insertions(+), 18 deletions(-) delete mode 100644 runtime-optenv32/libmpeg2+32/autobuild/build delete mode 100644 runtime-optenv32/libmpeg2+32/autobuild/patch diff --git a/runtime-optenv32/libmpeg2+32/autobuild/build b/runtime-optenv32/libmpeg2+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/libmpeg2+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/libmpeg2+32/autobuild/defines b/runtime-optenv32/libmpeg2+32/autobuild/defines index 149146a4906..bb700a3643a 100644 --- a/runtime-optenv32/libmpeg2+32/autobuild/defines +++ b/runtime-optenv32/libmpeg2+32/autobuild/defines @@ -1,8 +1,12 @@ PKGNAME=libmpeg2+32 -PKGDES="Library for decoding MPEG-1 and MPEG-2 video streams (optenv32)" -PKGDEP="sdl+32 x11-lib+32" PKGSEC=libs +PKGDEP="sdl+32 x11-lib+32" +BUILDDEP="devel-base+32" +PKGDES="Library for decoding MPEG-1 and MPEG-2 video streams (32-bit x86 runtime)" + +# FIXME: Not adapted for Automake >= 1.16 (and it's not necessary until we +# patch Autotools scripts). +RECONF=0 -AUTOTOOLS_AFTER="--enable-shared" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libmpeg2+32/autobuild/patch b/runtime-optenv32/libmpeg2+32/autobuild/patch deleted file mode 100644 index 182be67aa1e..00000000000 --- a/runtime-optenv32/libmpeg2+32/autobuild/patch +++ /dev/null @@ -1 +0,0 @@ -sed -i 's/static const/static/' libmpeg2/idct_mmx.c diff --git a/runtime-optenv32/libmpeg2+32/spec b/runtime-optenv32/libmpeg2+32/spec index 98d8aa3b308..1f7dc09ffca 100644 --- a/runtime-optenv32/libmpeg2+32/spec +++ b/runtime-optenv32/libmpeg2+32/spec @@ -1,5 +1,5 @@ VER=0.5.1 +REL=3 SRCS="tbl::http://libmpeg2.sourceforge.net/files/libmpeg2-$VER.tar.gz" CHKSUMS="sha256::dee22e893cb5fc2b2b6ebd60b88478ab8556cb3b93f9a0d7ce8f3b61851871d4" -REL=2 CHKUPDATE="anitya::id=21490" From fa271de5b036e4e137ff77aad8eb96589806ace0 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 25 Dec 2024 22:53:01 +0800 Subject: [PATCH 111/722] libexif+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libexif+32/autobuild/build | 12 ------------ runtime-optenv32/libexif+32/autobuild/defines | 8 ++++---- runtime-optenv32/libexif+32/spec | 1 + 3 files changed, 5 insertions(+), 16 deletions(-) delete mode 100644 runtime-optenv32/libexif+32/autobuild/build diff --git a/runtime-optenv32/libexif+32/autobuild/build b/runtime-optenv32/libexif+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/libexif+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/libexif+32/autobuild/defines b/runtime-optenv32/libexif+32/autobuild/defines index ea2593b8dfb..9abcd53504f 100644 --- a/runtime-optenv32/libexif+32/autobuild/defines +++ b/runtime-optenv32/libexif+32/autobuild/defines @@ -1,8 +1,8 @@ PKGNAME=libexif+32 -PKGDES="A library for parsing, editing, and saving EXIF data (optenv32)" -PKGDEP="glibc+32" -BUILDDEP="32subsystem" PKGSEC=libs +PKGDEP="glibc+32" +BUILDDEP="devel-base+32" +PKGDES="A library for parsing, editing, and saving EXIF data (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libexif+32/spec b/runtime-optenv32/libexif+32/spec index e725bfeccf0..4b6bda9ade2 100644 --- a/runtime-optenv32/libexif+32/spec +++ b/runtime-optenv32/libexif+32/spec @@ -1,4 +1,5 @@ VER=0.6.22 +REL=1 SRCS="tbl::https://github.com/libexif/libexif/releases/download/libexif-${VER//./_}-release/libexif-$VER.tar.xz" CHKSUMS="sha256::5048f1c8fc509cc636c2f97f4b40c293338b6041a5652082d5ee2cf54b530c56" CHKUPDATE="anitya::id=1607" From 88c93e6d778677b0da091273e5bb19d4e2f7c1f8 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 25 Dec 2024 22:58:16 +0800 Subject: [PATCH 112/722] x265+32: update to 3.6 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/x265+32/autobuild/build | 10 ---------- runtime-optenv32/x265+32/autobuild/defines | 6 +++--- runtime-optenv32/x265+32/spec | 8 ++++---- 3 files changed, 7 insertions(+), 17 deletions(-) delete mode 100644 runtime-optenv32/x265+32/autobuild/build diff --git a/runtime-optenv32/x265+32/autobuild/build b/runtime-optenv32/x265+32/autobuild/build deleted file mode 100644 index cb03fab0c3b..00000000000 --- a/runtime-optenv32/x265+32/autobuild/build +++ /dev/null @@ -1,10 +0,0 @@ -export PATH=/opt/32/bin:$PATH -export PKG_CONFIG_PATH=/opt/32/lib/pkg-config - -cmake source -DCMAKE_INSTALL_PREFIX=/opt/32 -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_C_COMPILER=/opt/32/bin/i686-pc-linux-gnu-gcc \ - -G "Unix Makefiles" -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/x265+32/autobuild/defines b/runtime-optenv32/x265+32/autobuild/defines index c014ba7ff19..23d2e8888c4 100644 --- a/runtime-optenv32/x265+32/autobuild/defines +++ b/runtime-optenv32/x265+32/autobuild/defines @@ -1,8 +1,8 @@ PKGNAME=x265+32 PKGSEC=libs PKGDEP="glibc+32" -BUILDDEP="32subsystem yasm" -PKGDES="Open source H265/HEVC video encoder (optenv32)" +BUILDDEP="devel-base+32 yasm" +PKGDES="Open source H265/HEVC video encoder (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/x265+32/spec b/runtime-optenv32/x265+32/spec index 38154df4611..0a803d5817d 100644 --- a/runtime-optenv32/x265+32/spec +++ b/runtime-optenv32/x265+32/spec @@ -1,5 +1,5 @@ -VER=2.2 -REL=2 -SRCS="tbl::https://bitbucket.org/multicoreware/x265/downloads/x265_$VER.tar.gz" -CHKSUMS="sha256::b872552535e41fbffa03ba7cbcd3479c42c4053868309292e78e147b7773ac4b" +VER=3.6 +SRCS="git::commit=tags/$VER::https://bitbucket.org/multicoreware/x265_git" +CHKSUMS="SKIP" CHKUPDATE="anitya::id=7275" +SUBDIR="x265+32/source" From fd6e622c400db1e653ba2641069817f2eeb7558f Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 25 Dec 2024 23:03:27 +0800 Subject: [PATCH 113/722] wildmidi+32: update to 0.4.6 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/wildmidi+32/autobuild/build | 9 --------- runtime-optenv32/wildmidi+32/autobuild/defines | 11 ++++++++--- runtime-optenv32/wildmidi+32/spec | 8 +++----- 3 files changed, 11 insertions(+), 17 deletions(-) delete mode 100644 runtime-optenv32/wildmidi+32/autobuild/build diff --git a/runtime-optenv32/wildmidi+32/autobuild/build b/runtime-optenv32/wildmidi+32/autobuild/build deleted file mode 100644 index 256404a7c3d..00000000000 --- a/runtime-optenv32/wildmidi+32/autobuild/build +++ /dev/null @@ -1,9 +0,0 @@ -export PATH=/opt/32/bin:$PATH -export PKG_CONFIG_PATH=/opt/32/lib/pkg-config - -cmake . -DCMAKE_INSTALL_PREFIX=/opt/32 -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_C_COMPILER=/opt/32/bin/i686-pc-linux-gnu-gcc -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/wildmidi+32/autobuild/defines b/runtime-optenv32/wildmidi+32/autobuild/defines index 5ec6621fa31..206943d28fe 100644 --- a/runtime-optenv32/wildmidi+32/autobuild/defines +++ b/runtime-optenv32/wildmidi+32/autobuild/defines @@ -1,7 +1,12 @@ PKGNAME=wildmidi+32 PKGSEC=sound PKGDEP="alsa-lib+32" -BUILDDEP="32subsystem" -PKGDES="Open source MIDI synthesizer (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="Open source MIDI synthesizer (32-bit x86 runtime)" + +CMAKE_AFTER=( + '-DALSA_LIBRARY=/opt/32/lib/libasound.so.2' +) + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/wildmidi+32/spec b/runtime-optenv32/wildmidi+32/spec index 47c31abe8a9..c0acfe808e0 100644 --- a/runtime-optenv32/wildmidi+32/spec +++ b/runtime-optenv32/wildmidi+32/spec @@ -1,6 +1,4 @@ -VER=0.4.3 -SRCS="tbl::https://github.com/Mindwerks/wildmidi/archive/wildmidi-$VER.tar.gz" -CHKSUMS="sha256::498e5a96455bb4b91b37188ad6dcb070824e92c44f5ed452b90adbaec8eef3c5" -SUBDIR="wildmidi-wildmidi-$VER" -REL=1 +VER=0.4.6 +SRCS="tbl::https://github.com/Mindwerks/wildmidi/releases/download/wildmidi-${VER}/wildmidi-${VER}.tar.gz" +CHKSUMS="sha256::"24ca992639ce76efa3737029fceb3672385d56e2ac0a15d50b40cc12d26e60de CHKUPDATE="anitya::id=9179" From 8e817a3d966a3b96eb170db38252fabfaffdf81c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 25 Dec 2024 23:07:17 +0800 Subject: [PATCH 114/722] soundtouch+32: update to 2.3.3 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. - Drop outdated patches. --- .../soundtouch+32/autobuild/build | 12 - .../soundtouch+32/autobuild/defines | 7 +- ...-number-of-channel-assertions-with-r.patch | 1133 ----------------- ...ze-check-for-WAV-header-block-lengh-.patch | 40 - ...File-header-fact-not-too-small-check.patch | 58 - ...File-header-fact-not-too-small-check.patch | 34 - .../autobuild/patches/cve-2017-92xx.patch | 36 - .../patches/soundtouch-avoid-assert.patch | 35 - .../patches/soundtouch-round-buffer.patch | 28 - .../patches/soundtouch-throw-exception.patch | 27 - .../soundtouch+32/autobuild/prepare | 2 - runtime-optenv32/soundtouch+32/spec | 5 +- 12 files changed, 5 insertions(+), 1412 deletions(-) delete mode 100644 runtime-optenv32/soundtouch+32/autobuild/build delete mode 100644 runtime-optenv32/soundtouch+32/autobuild/patches/0001-Replaced-illegal-number-of-channel-assertions-with-r.patch delete mode 100644 runtime-optenv32/soundtouch+32/autobuild/patches/0002-Added-minimum-size-check-for-WAV-header-block-lengh-.patch delete mode 100644 runtime-optenv32/soundtouch+32/autobuild/patches/0003-Fixed-WavFile-header-fact-not-too-small-check.patch delete mode 100644 runtime-optenv32/soundtouch+32/autobuild/patches/0004-Improved-WavFile-header-fact-not-too-small-check.patch delete mode 100644 runtime-optenv32/soundtouch+32/autobuild/patches/cve-2017-92xx.patch delete mode 100644 runtime-optenv32/soundtouch+32/autobuild/patches/soundtouch-avoid-assert.patch delete mode 100644 runtime-optenv32/soundtouch+32/autobuild/patches/soundtouch-round-buffer.patch delete mode 100644 runtime-optenv32/soundtouch+32/autobuild/patches/soundtouch-throw-exception.patch delete mode 100644 runtime-optenv32/soundtouch+32/autobuild/prepare diff --git a/runtime-optenv32/soundtouch+32/autobuild/build b/runtime-optenv32/soundtouch+32/autobuild/build deleted file mode 100644 index 43ea6eae616..00000000000 --- a/runtime-optenv32/soundtouch+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -./configure --enable-shared --prefix=/opt/32 \ - --disable-static ${AUTOTOOLS_AFTER} \ - LDFLAGS="${LDFLAGS} -L/opt/32/lib" \ - CC=i686-pc-linux-gnu-gcc \ - CXX=i686-pc-linux-gnu-g++ \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make DESTDIR="$PKGDIR" install - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/soundtouch+32/autobuild/defines b/runtime-optenv32/soundtouch+32/autobuild/defines index 8533076580a..3105366e0dc 100644 --- a/runtime-optenv32/soundtouch+32/autobuild/defines +++ b/runtime-optenv32/soundtouch+32/autobuild/defines @@ -1,9 +1,8 @@ PKGNAME=soundtouch+32 PKGSEC=libs PKGDEP="gcc+32" -BUILDDEP="32subsystem" -PKGDES="An audio processing library" +BUILDDEP="devel-base+32" +PKGDES="An audio processing library (32-bit x86 runtime)" -AUTOTOOLS_AFTER="--enable-shared --with-pic" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/soundtouch+32/autobuild/patches/0001-Replaced-illegal-number-of-channel-assertions-with-r.patch b/runtime-optenv32/soundtouch+32/autobuild/patches/0001-Replaced-illegal-number-of-channel-assertions-with-r.patch deleted file mode 100644 index 8d3f15cf490..00000000000 --- a/runtime-optenv32/soundtouch+32/autobuild/patches/0001-Replaced-illegal-number-of-channel-assertions-with-r.patch +++ /dev/null @@ -1,1133 +0,0 @@ -diff -Naur soundtouch/include/FIFOSamplePipe.h soundtouch.backport/include/FIFOSamplePipe.h ---- soundtouch/include/FIFOSamplePipe.h 2015-09-20 07:40:59.000000000 +0000 -+++ soundtouch.backport/include/FIFOSamplePipe.h 2018-08-17 03:43:45.118772486 +0000 -@@ -58,6 +58,18 @@ - /// Abstract base class for FIFO (first-in-first-out) sample processing classes. - class FIFOSamplePipe - { -+protected: -+ -+ bool verifyNumberOfChannels(int nChannels) const -+ { -+ if ((nChannels > 0) && (nChannels <= SOUNDTOUCH_MAX_CHANNELS)) -+ { -+ return true; -+ } -+ ST_THROW_RT_ERROR("Error: Illegal number of channels"); -+ return false; -+ } -+ - public: - // virtual default destructor - virtual ~FIFOSamplePipe() {} -diff -Naur soundtouch/include/STTypes.h soundtouch.backport/include/STTypes.h ---- soundtouch/include/STTypes.h 2015-09-20 07:40:59.000000000 +0000 -+++ soundtouch.backport/include/STTypes.h 2018-08-17 03:43:45.118772486 +0000 -@@ -63,6 +63,9 @@ - - namespace soundtouch - { -+ /// Max allowed number of channels -+ #define SOUNDTOUCH_MAX_CHANNELS 16 -+ - /// Activate these undef's to overrule the possible sampletype - /// setting inherited from some other header file: - //#undef SOUNDTOUCH_INTEGER_SAMPLES -diff -Naur soundtouch/source/SoundTouch/FIFOSampleBuffer.cpp soundtouch.backport/source/SoundTouch/FIFOSampleBuffer.cpp ---- soundtouch/source/SoundTouch/FIFOSampleBuffer.cpp 2015-09-20 07:40:59.000000000 +0000 -+++ soundtouch.backport/source/SoundTouch/FIFOSampleBuffer.cpp 2018-08-17 03:43:45.118772486 +0000 -@@ -80,7 +80,8 @@ - { - uint usedBytes; - -- assert(numChannels > 0); -+ if (!verifyNumberOfChannels(numChannels)) return; -+ - usedBytes = channels * samplesInBuffer; - channels = (uint)numChannels; - samplesInBuffer = usedBytes / channels; -diff -Naur soundtouch/source/SoundTouch/RateTransposer.cpp soundtouch.backport/source/SoundTouch/RateTransposer.cpp ---- soundtouch/source/SoundTouch/RateTransposer.cpp 2015-09-20 07:40:59.000000000 +0000 -+++ soundtouch.backport/source/SoundTouch/RateTransposer.cpp 2018-08-17 03:43:45.118772486 +0000 -@@ -177,11 +177,10 @@ - // Sets the number of channels, 1 = mono, 2 = stereo - void RateTransposer::setChannels(int nChannels) - { -- assert(nChannels > 0); -+ if (!verifyNumberOfChannels(nChannels) || -+ (pTransposer->numChannels == nChannels)) return; - -- if (pTransposer->numChannels == nChannels) return; - pTransposer->setChannels(nChannels); -- - inputBuffer.setChannels(nChannels); - midBuffer.setChannels(nChannels); - outputBuffer.setChannels(nChannels); -diff -Naur soundtouch/source/SoundTouch/SoundTouch.cpp soundtouch.backport/source/SoundTouch/SoundTouch.cpp ---- soundtouch/source/SoundTouch/SoundTouch.cpp 2015-09-20 07:40:59.000000000 +0000 -+++ soundtouch.backport/source/SoundTouch/SoundTouch.cpp 2018-08-17 03:45:06.066853380 +0000 -@@ -1,526 +1,523 @@ --////////////////////////////////////////////////////////////////////////////// --/// --/// SoundTouch - main class for tempo/pitch/rate adjusting routines. --/// --/// Notes: --/// - Initialize the SoundTouch object instance by setting up the sound stream --/// parameters with functions 'setSampleRate' and 'setChannels', then set --/// desired tempo/pitch/rate settings with the corresponding functions. --/// --/// - The SoundTouch class behaves like a first-in-first-out pipeline: The --/// samples that are to be processed are fed into one of the pipe by calling --/// function 'putSamples', while the ready processed samples can be read --/// from the other end of the pipeline with function 'receiveSamples'. --/// --/// - The SoundTouch processing classes require certain sized 'batches' of --/// samples in order to process the sound. For this reason the classes buffer --/// incoming samples until there are enough of samples available for --/// processing, then they carry out the processing step and consequently --/// make the processed samples available for outputting. --/// --/// - For the above reason, the processing routines introduce a certain --/// 'latency' between the input and output, so that the samples input to --/// SoundTouch may not be immediately available in the output, and neither --/// the amount of outputtable samples may not immediately be in direct --/// relationship with the amount of previously input samples. --/// --/// - The tempo/pitch/rate control parameters can be altered during processing. --/// Please notice though that they aren't currently protected by semaphores, --/// so in multi-thread application external semaphore protection may be --/// required. --/// --/// - This class utilizes classes 'TDStretch' for tempo change (without modifying --/// pitch) and 'RateTransposer' for changing the playback rate (that is, both --/// tempo and pitch in the same ratio) of the sound. The third available control --/// 'pitch' (change pitch but maintain tempo) is produced by a combination of --/// combining the two other controls. --/// --/// Author : Copyright (c) Olli Parviainen --/// Author e-mail : oparviai 'at' iki.fi --/// SoundTouch WWW: http://www.surina.net/soundtouch --/// --//////////////////////////////////////////////////////////////////////////////// --// --// Last changed : $Date: 2015-07-26 17:45:48 +0300 (Sun, 26 Jul 2015) $ --// File revision : $Revision: 4 $ --// --// $Id: SoundTouch.cpp 225 2015-07-26 14:45:48Z oparviai $ --// --//////////////////////////////////////////////////////////////////////////////// --// --// License : --// --// SoundTouch audio processing library --// Copyright (c) Olli Parviainen --// --// This library is free software; you can redistribute it and/or --// modify it under the terms of the GNU Lesser General Public --// License as published by the Free Software Foundation; either --// version 2.1 of the License, or (at your option) any later version. --// --// This library is distributed in the hope that it will be useful, --// but WITHOUT ANY WARRANTY; without even the implied warranty of --// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --// Lesser General Public License for more details. --// --// You should have received a copy of the GNU Lesser General Public --// License along with this library; if not, write to the Free Software --// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA --// --//////////////////////////////////////////////////////////////////////////////// -- --#include --#include --#include --#include --#include -- --#include "SoundTouch.h" --#include "TDStretch.h" --#include "RateTransposer.h" --#include "cpu_detect.h" -- --using namespace soundtouch; -- --/// test if two floating point numbers are equal --#define TEST_FLOAT_EQUAL(a, b) (fabs(a - b) < 1e-10) -- -- --/// Print library version string for autoconf --extern "C" void soundtouch_ac_test() --{ -- printf("SoundTouch Version: %s\n",SOUNDTOUCH_VERSION); --} -- -- --SoundTouch::SoundTouch() --{ -- // Initialize rate transposer and tempo changer instances -- -- pRateTransposer = new RateTransposer(); -- pTDStretch = TDStretch::newInstance(); -- -- setOutPipe(pTDStretch); -- -- rate = tempo = 0; -- -- virtualPitch = -- virtualRate = -- virtualTempo = 1.0; -- -- calcEffectiveRateAndTempo(); -- -- samplesExpectedOut = 0; -- samplesOutput = 0; -- -- channels = 0; -- bSrateSet = false; --} -- -- -- --SoundTouch::~SoundTouch() --{ -- delete pRateTransposer; -- delete pTDStretch; --} -- -- -- --/// Get SoundTouch library version string --const char *SoundTouch::getVersionString() --{ -- static const char *_version = SOUNDTOUCH_VERSION; -- -- return _version; --} -- -- --/// Get SoundTouch library version Id --uint SoundTouch::getVersionId() --{ -- return SOUNDTOUCH_VERSION_ID; --} -- -- --// Sets the number of channels, 1 = mono, 2 = stereo --void SoundTouch::setChannels(uint numChannels) --{ -- /*if (numChannels != 1 && numChannels != 2) -- { -- //ST_THROW_RT_ERROR("Illegal number of channels"); -- return; -- }*/ -- channels = numChannels; -- pRateTransposer->setChannels((int)numChannels); -- pTDStretch->setChannels((int)numChannels); --} -- -- -- --// Sets new rate control value. Normal rate = 1.0, smaller values --// represent slower rate, larger faster rates. --void SoundTouch::setRate(double newRate) --{ -- virtualRate = newRate; -- calcEffectiveRateAndTempo(); --} -- -- -- --// Sets new rate control value as a difference in percents compared --// to the original rate (-50 .. +100 %) --void SoundTouch::setRateChange(double newRate) --{ -- virtualRate = 1.0 + 0.01 * newRate; -- calcEffectiveRateAndTempo(); --} -- -- -- --// Sets new tempo control value. Normal tempo = 1.0, smaller values --// represent slower tempo, larger faster tempo. --void SoundTouch::setTempo(double newTempo) --{ -- virtualTempo = newTempo; -- calcEffectiveRateAndTempo(); --} -- -- -- --// Sets new tempo control value as a difference in percents compared --// to the original tempo (-50 .. +100 %) --void SoundTouch::setTempoChange(double newTempo) --{ -- virtualTempo = 1.0 + 0.01 * newTempo; -- calcEffectiveRateAndTempo(); --} -- -- -- --// Sets new pitch control value. Original pitch = 1.0, smaller values --// represent lower pitches, larger values higher pitch. --void SoundTouch::setPitch(double newPitch) --{ -- virtualPitch = newPitch; -- calcEffectiveRateAndTempo(); --} -- -- -- --// Sets pitch change in octaves compared to the original pitch --// (-1.00 .. +1.00) --void SoundTouch::setPitchOctaves(double newPitch) --{ -- virtualPitch = exp(0.69314718056 * newPitch); -- calcEffectiveRateAndTempo(); --} -- -- -- --// Sets pitch change in semi-tones compared to the original pitch --// (-12 .. +12) --void SoundTouch::setPitchSemiTones(int newPitch) --{ -- setPitchOctaves((double)newPitch / 12.0); --} -- -- -- --void SoundTouch::setPitchSemiTones(double newPitch) --{ -- setPitchOctaves(newPitch / 12.0); --} -- -- --// Calculates 'effective' rate and tempo values from the --// nominal control values. --void SoundTouch::calcEffectiveRateAndTempo() --{ -- double oldTempo = tempo; -- double oldRate = rate; -- -- tempo = virtualTempo / virtualPitch; -- rate = virtualPitch * virtualRate; -- -- if (!TEST_FLOAT_EQUAL(rate,oldRate)) pRateTransposer->setRate(rate); -- if (!TEST_FLOAT_EQUAL(tempo, oldTempo)) pTDStretch->setTempo(tempo); -- --#ifndef SOUNDTOUCH_PREVENT_CLICK_AT_RATE_CROSSOVER -- if (rate <= 1.0f) -- { -- if (output != pTDStretch) -- { -- FIFOSamplePipe *tempoOut; -- -- assert(output == pRateTransposer); -- // move samples in the current output buffer to the output of pTDStretch -- tempoOut = pTDStretch->getOutput(); -- tempoOut->moveSamples(*output); -- // move samples in pitch transposer's store buffer to tempo changer's input -- // deprecated : pTDStretch->moveSamples(*pRateTransposer->getStore()); -- -- output = pTDStretch; -- } -- } -- else --#endif -- { -- if (output != pRateTransposer) -- { -- FIFOSamplePipe *transOut; -- -- assert(output == pTDStretch); -- // move samples in the current output buffer to the output of pRateTransposer -- transOut = pRateTransposer->getOutput(); -- transOut->moveSamples(*output); -- // move samples in tempo changer's input to pitch transposer's input -- pRateTransposer->moveSamples(*pTDStretch->getInput()); -- -- output = pRateTransposer; -- } -- } --} -- -- --// Sets sample rate. --void SoundTouch::setSampleRate(uint srate) --{ -- bSrateSet = true; -- // set sample rate, leave other tempo changer parameters as they are. -- pTDStretch->setParameters((int)srate); --} -- -- --// Adds 'numSamples' pcs of samples from the 'samples' memory position into --// the input of the object. --void SoundTouch::putSamples(const SAMPLETYPE *samples, uint nSamples) --{ -- if (bSrateSet == false) -- { -- ST_THROW_RT_ERROR("SoundTouch : Sample rate not defined"); -- } -- else if (channels == 0) -- { -- ST_THROW_RT_ERROR("SoundTouch : Number of channels not defined"); -- } -- -- // Transpose the rate of the new samples if necessary -- /* Bypass the nominal setting - can introduce a click in sound when tempo/pitch control crosses the nominal value... -- if (rate == 1.0f) -- { -- // The rate value is same as the original, simply evaluate the tempo changer. -- assert(output == pTDStretch); -- if (pRateTransposer->isEmpty() == 0) -- { -- // yet flush the last samples in the pitch transposer buffer -- // (may happen if 'rate' changes from a non-zero value to zero) -- pTDStretch->moveSamples(*pRateTransposer); -- } -- pTDStretch->putSamples(samples, nSamples); -- } -- */ -- -- // accumulate how many samples are expected out from processing, given the current -- // processing setting -- samplesExpectedOut += (double)nSamples / ((double)rate * (double)tempo); -- --#ifndef SOUNDTOUCH_PREVENT_CLICK_AT_RATE_CROSSOVER -- if (rate <= 1.0f) -- { -- // transpose the rate down, output the transposed sound to tempo changer buffer -- assert(output == pTDStretch); -- pRateTransposer->putSamples(samples, nSamples); -- pTDStretch->moveSamples(*pRateTransposer); -- } -- else --#endif -- { -- // evaluate the tempo changer, then transpose the rate up, -- assert(output == pRateTransposer); -- pTDStretch->putSamples(samples, nSamples); -- pRateTransposer->moveSamples(*pTDStretch); -- } --} -- -- --// Flushes the last samples from the processing pipeline to the output. --// Clears also the internal processing buffers. --// --// Note: This function is meant for extracting the last samples of a sound --// stream. This function may introduce additional blank samples in the end --// of the sound stream, and thus it's not recommended to call this function --// in the middle of a sound stream. --void SoundTouch::flush() --{ -- int i; -- int numStillExpected; -- SAMPLETYPE *buff = new SAMPLETYPE[128 * channels]; -- -- // how many samples are still expected to output -- numStillExpected = (int)((long)(samplesExpectedOut + 0.5) - samplesOutput); -- -- memset(buff, 0, 128 * channels * sizeof(SAMPLETYPE)); -- // "Push" the last active samples out from the processing pipeline by -- // feeding blank samples into the processing pipeline until new, -- // processed samples appear in the output (not however, more than -- // 24ksamples in any case) -- for (i = 0; (numStillExpected > (int)numSamples()) && (i < 200); i ++) -- { -- putSamples(buff, 128); -- } -- -- adjustAmountOfSamples(numStillExpected); -- -- delete[] buff; -- -- // Clear input buffers -- // pRateTransposer->clearInput(); -- pTDStretch->clearInput(); -- // yet leave the output intouched as that's where the -- // flushed samples are! --} -- -- --// Changes a setting controlling the processing system behaviour. See the --// 'SETTING_...' defines for available setting ID's. --bool SoundTouch::setSetting(int settingId, int value) --{ -- int sampleRate, sequenceMs, seekWindowMs, overlapMs; -- -- // read current tdstretch routine parameters -- pTDStretch->getParameters(&sampleRate, &sequenceMs, &seekWindowMs, &overlapMs); -- -- switch (settingId) -- { -- case SETTING_USE_AA_FILTER : -- // enables / disabless anti-alias filter -- pRateTransposer->enableAAFilter((value != 0) ? true : false); -- return true; -- -- case SETTING_AA_FILTER_LENGTH : -- // sets anti-alias filter length -- pRateTransposer->getAAFilter()->setLength(value); -- return true; -- -- case SETTING_USE_QUICKSEEK : -- // enables / disables tempo routine quick seeking algorithm -- pTDStretch->enableQuickSeek((value != 0) ? true : false); -- return true; -- -- case SETTING_SEQUENCE_MS: -- // change time-stretch sequence duration parameter -- pTDStretch->setParameters(sampleRate, value, seekWindowMs, overlapMs); -- return true; -- -- case SETTING_SEEKWINDOW_MS: -- // change time-stretch seek window length parameter -- pTDStretch->setParameters(sampleRate, sequenceMs, value, overlapMs); -- return true; -- -- case SETTING_OVERLAP_MS: -- // change time-stretch overlap length parameter -- pTDStretch->setParameters(sampleRate, sequenceMs, seekWindowMs, value); -- return true; -- -- default : -- return false; -- } --} -- -- --// Reads a setting controlling the processing system behaviour. See the --// 'SETTING_...' defines for available setting ID's. --// --// Returns the setting value. --int SoundTouch::getSetting(int settingId) const --{ -- int temp; -- -- switch (settingId) -- { -- case SETTING_USE_AA_FILTER : -- return (uint)pRateTransposer->isAAFilterEnabled(); -- -- case SETTING_AA_FILTER_LENGTH : -- return pRateTransposer->getAAFilter()->getLength(); -- -- case SETTING_USE_QUICKSEEK : -- return (uint) pTDStretch->isQuickSeekEnabled(); -- -- case SETTING_SEQUENCE_MS: -- pTDStretch->getParameters(NULL, &temp, NULL, NULL); -- return temp; -- -- case SETTING_SEEKWINDOW_MS: -- pTDStretch->getParameters(NULL, NULL, &temp, NULL); -- return temp; -- -- case SETTING_OVERLAP_MS: -- pTDStretch->getParameters(NULL, NULL, NULL, &temp); -- return temp; -- -- case SETTING_NOMINAL_INPUT_SEQUENCE : -- return pTDStretch->getInputSampleReq(); -- -- case SETTING_NOMINAL_OUTPUT_SEQUENCE : -- return pTDStretch->getOutputBatchSize(); -- -- default : -- return 0; -- } --} -- -- --// Clears all the samples in the object's output and internal processing --// buffers. --void SoundTouch::clear() --{ -- samplesExpectedOut = 0; -- pRateTransposer->clear(); -- pTDStretch->clear(); --} -- -- -- --/// Returns number of samples currently unprocessed. --uint SoundTouch::numUnprocessedSamples() const --{ -- FIFOSamplePipe * psp; -- if (pTDStretch) -- { -- psp = pTDStretch->getInput(); -- if (psp) -- { -- return psp->numSamples(); -- } -- } -- return 0; --} -- -- -- --/// Output samples from beginning of the sample buffer. Copies requested samples to --/// output buffer and removes them from the sample buffer. If there are less than --/// 'numsample' samples in the buffer, returns all that available. --/// --/// \return Number of samples returned. --uint SoundTouch::receiveSamples(SAMPLETYPE *output, uint maxSamples) --{ -- uint ret = FIFOProcessor::receiveSamples(output, maxSamples); -- samplesOutput += (long)ret; -- return ret; --} -- -- --/// Adjusts book-keeping so that given number of samples are removed from beginning of the --/// sample buffer without copying them anywhere. --/// --/// Used to reduce the number of samples in the buffer when accessing the sample buffer directly --/// with 'ptrBegin' function. --uint SoundTouch::receiveSamples(uint maxSamples) --{ -- uint ret = FIFOProcessor::receiveSamples(maxSamples); -- samplesOutput += (long)ret; -- return ret; --} -+////////////////////////////////////////////////////////////////////////////// -+/// -+/// SoundTouch - main class for tempo/pitch/rate adjusting routines. -+/// -+/// Notes: -+/// - Initialize the SoundTouch object instance by setting up the sound stream -+/// parameters with functions 'setSampleRate' and 'setChannels', then set -+/// desired tempo/pitch/rate settings with the corresponding functions. -+/// -+/// - The SoundTouch class behaves like a first-in-first-out pipeline: The -+/// samples that are to be processed are fed into one of the pipe by calling -+/// function 'putSamples', while the ready processed samples can be read -+/// from the other end of the pipeline with function 'receiveSamples'. -+/// -+/// - The SoundTouch processing classes require certain sized 'batches' of -+/// samples in order to process the sound. For this reason the classes buffer -+/// incoming samples until there are enough of samples available for -+/// processing, then they carry out the processing step and consequently -+/// make the processed samples available for outputting. -+/// -+/// - For the above reason, the processing routines introduce a certain -+/// 'latency' between the input and output, so that the samples input to -+/// SoundTouch may not be immediately available in the output, and neither -+/// the amount of outputtable samples may not immediately be in direct -+/// relationship with the amount of previously input samples. -+/// -+/// - The tempo/pitch/rate control parameters can be altered during processing. -+/// Please notice though that they aren't currently protected by semaphores, -+/// so in multi-thread application external semaphore protection may be -+/// required. -+/// -+/// - This class utilizes classes 'TDStretch' for tempo change (without modifying -+/// pitch) and 'RateTransposer' for changing the playback rate (that is, both -+/// tempo and pitch in the same ratio) of the sound. The third available control -+/// 'pitch' (change pitch but maintain tempo) is produced by a combination of -+/// combining the two other controls. -+/// -+/// Author : Copyright (c) Olli Parviainen -+/// Author e-mail : oparviai 'at' iki.fi -+/// SoundTouch WWW: http://www.surina.net/soundtouch -+/// -+//////////////////////////////////////////////////////////////////////////////// -+// -+// Last changed : $Date: 2015-07-26 17:45:48 +0300 (Sun, 26 Jul 2015) $ -+// File revision : $Revision: 4 $ -+// -+// $Id: SoundTouch.cpp 225 2015-07-26 14:45:48Z oparviai $ -+// -+//////////////////////////////////////////////////////////////////////////////// -+// -+// License : -+// -+// SoundTouch audio processing library -+// Copyright (c) Olli Parviainen -+// -+// This library is free software; you can redistribute it and/or -+// modify it under the terms of the GNU Lesser General Public -+// License as published by the Free Software Foundation; either -+// version 2.1 of the License, or (at your option) any later version. -+// -+// This library is distributed in the hope that it will be useful, -+// but WITHOUT ANY WARRANTY; without even the implied warranty of -+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+// Lesser General Public License for more details. -+// -+// You should have received a copy of the GNU Lesser General Public -+// License along with this library; if not, write to the Free Software -+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -+// -+//////////////////////////////////////////////////////////////////////////////// -+ -+#include -+#include -+#include -+#include -+#include -+ -+#include "SoundTouch.h" -+#include "TDStretch.h" -+#include "RateTransposer.h" -+#include "cpu_detect.h" -+ -+using namespace soundtouch; -+ -+/// test if two floating point numbers are equal -+#define TEST_FLOAT_EQUAL(a, b) (fabs(a - b) < 1e-10) -+ -+ -+/// Print library version string for autoconf -+extern "C" void soundtouch_ac_test() -+{ -+ printf("SoundTouch Version: %s\n",SOUNDTOUCH_VERSION); -+} -+ -+ -+SoundTouch::SoundTouch() -+{ -+ // Initialize rate transposer and tempo changer instances -+ -+ pRateTransposer = new RateTransposer(); -+ pTDStretch = TDStretch::newInstance(); -+ -+ setOutPipe(pTDStretch); -+ -+ rate = tempo = 0; -+ -+ virtualPitch = -+ virtualRate = -+ virtualTempo = 1.0; -+ -+ calcEffectiveRateAndTempo(); -+ -+ samplesExpectedOut = 0; -+ samplesOutput = 0; -+ -+ channels = 0; -+ bSrateSet = false; -+} -+ -+ -+ -+SoundTouch::~SoundTouch() -+{ -+ delete pRateTransposer; -+ delete pTDStretch; -+} -+ -+ -+ -+/// Get SoundTouch library version string -+const char *SoundTouch::getVersionString() -+{ -+ static const char *_version = SOUNDTOUCH_VERSION; -+ -+ return _version; -+} -+ -+ -+/// Get SoundTouch library version Id -+uint SoundTouch::getVersionId() -+{ -+ return SOUNDTOUCH_VERSION_ID; -+} -+ -+ -+// Sets the number of channels, 1 = mono, 2 = stereo -+void SoundTouch::setChannels(uint numChannels) -+{ -+ if (!verifyNumberOfChannels(numChannels)) return; -+ -+ channels = numChannels; -+ pRateTransposer->setChannels((int)numChannels); -+ pTDStretch->setChannels((int)numChannels); -+} -+ -+ -+ -+// Sets new rate control value. Normal rate = 1.0, smaller values -+// represent slower rate, larger faster rates. -+void SoundTouch::setRate(double newRate) -+{ -+ virtualRate = newRate; -+ calcEffectiveRateAndTempo(); -+} -+ -+ -+ -+// Sets new rate control value as a difference in percents compared -+// to the original rate (-50 .. +100 %) -+void SoundTouch::setRateChange(double newRate) -+{ -+ virtualRate = 1.0 + 0.01 * newRate; -+ calcEffectiveRateAndTempo(); -+} -+ -+ -+ -+// Sets new tempo control value. Normal tempo = 1.0, smaller values -+// represent slower tempo, larger faster tempo. -+void SoundTouch::setTempo(double newTempo) -+{ -+ virtualTempo = newTempo; -+ calcEffectiveRateAndTempo(); -+} -+ -+ -+ -+// Sets new tempo control value as a difference in percents compared -+// to the original tempo (-50 .. +100 %) -+void SoundTouch::setTempoChange(double newTempo) -+{ -+ virtualTempo = 1.0 + 0.01 * newTempo; -+ calcEffectiveRateAndTempo(); -+} -+ -+ -+ -+// Sets new pitch control value. Original pitch = 1.0, smaller values -+// represent lower pitches, larger values higher pitch. -+void SoundTouch::setPitch(double newPitch) -+{ -+ virtualPitch = newPitch; -+ calcEffectiveRateAndTempo(); -+} -+ -+ -+ -+// Sets pitch change in octaves compared to the original pitch -+// (-1.00 .. +1.00) -+void SoundTouch::setPitchOctaves(double newPitch) -+{ -+ virtualPitch = exp(0.69314718056 * newPitch); -+ calcEffectiveRateAndTempo(); -+} -+ -+ -+ -+// Sets pitch change in semi-tones compared to the original pitch -+// (-12 .. +12) -+void SoundTouch::setPitchSemiTones(int newPitch) -+{ -+ setPitchOctaves((double)newPitch / 12.0); -+} -+ -+ -+ -+void SoundTouch::setPitchSemiTones(double newPitch) -+{ -+ setPitchOctaves(newPitch / 12.0); -+} -+ -+ -+// Calculates 'effective' rate and tempo values from the -+// nominal control values. -+void SoundTouch::calcEffectiveRateAndTempo() -+{ -+ double oldTempo = tempo; -+ double oldRate = rate; -+ -+ tempo = virtualTempo / virtualPitch; -+ rate = virtualPitch * virtualRate; -+ -+ if (!TEST_FLOAT_EQUAL(rate,oldRate)) pRateTransposer->setRate(rate); -+ if (!TEST_FLOAT_EQUAL(tempo, oldTempo)) pTDStretch->setTempo(tempo); -+ -+#ifndef SOUNDTOUCH_PREVENT_CLICK_AT_RATE_CROSSOVER -+ if (rate <= 1.0f) -+ { -+ if (output != pTDStretch) -+ { -+ FIFOSamplePipe *tempoOut; -+ -+ assert(output == pRateTransposer); -+ // move samples in the current output buffer to the output of pTDStretch -+ tempoOut = pTDStretch->getOutput(); -+ tempoOut->moveSamples(*output); -+ // move samples in pitch transposer's store buffer to tempo changer's input -+ // deprecated : pTDStretch->moveSamples(*pRateTransposer->getStore()); -+ -+ output = pTDStretch; -+ } -+ } -+ else -+#endif -+ { -+ if (output != pRateTransposer) -+ { -+ FIFOSamplePipe *transOut; -+ -+ assert(output == pTDStretch); -+ // move samples in the current output buffer to the output of pRateTransposer -+ transOut = pRateTransposer->getOutput(); -+ transOut->moveSamples(*output); -+ // move samples in tempo changer's input to pitch transposer's input -+ pRateTransposer->moveSamples(*pTDStretch->getInput()); -+ -+ output = pRateTransposer; -+ } -+ } -+} -+ -+ -+// Sets sample rate. -+void SoundTouch::setSampleRate(uint srate) -+{ -+ bSrateSet = true; -+ // set sample rate, leave other tempo changer parameters as they are. -+ pTDStretch->setParameters((int)srate); -+} -+ -+ -+// Adds 'numSamples' pcs of samples from the 'samples' memory position into -+// the input of the object. -+void SoundTouch::putSamples(const SAMPLETYPE *samples, uint nSamples) -+{ -+ if (bSrateSet == false) -+ { -+ ST_THROW_RT_ERROR("SoundTouch : Sample rate not defined"); -+ } -+ else if (channels == 0) -+ { -+ ST_THROW_RT_ERROR("SoundTouch : Number of channels not defined"); -+ } -+ -+ // Transpose the rate of the new samples if necessary -+ /* Bypass the nominal setting - can introduce a click in sound when tempo/pitch control crosses the nominal value... -+ if (rate == 1.0f) -+ { -+ // The rate value is same as the original, simply evaluate the tempo changer. -+ assert(output == pTDStretch); -+ if (pRateTransposer->isEmpty() == 0) -+ { -+ // yet flush the last samples in the pitch transposer buffer -+ // (may happen if 'rate' changes from a non-zero value to zero) -+ pTDStretch->moveSamples(*pRateTransposer); -+ } -+ pTDStretch->putSamples(samples, nSamples); -+ } -+ */ -+ -+ // accumulate how many samples are expected out from processing, given the current -+ // processing setting -+ samplesExpectedOut += (double)nSamples / ((double)rate * (double)tempo); -+ -+#ifndef SOUNDTOUCH_PREVENT_CLICK_AT_RATE_CROSSOVER -+ if (rate <= 1.0f) -+ { -+ // transpose the rate down, output the transposed sound to tempo changer buffer -+ assert(output == pTDStretch); -+ pRateTransposer->putSamples(samples, nSamples); -+ pTDStretch->moveSamples(*pRateTransposer); -+ } -+ else -+#endif -+ { -+ // evaluate the tempo changer, then transpose the rate up, -+ assert(output == pRateTransposer); -+ pTDStretch->putSamples(samples, nSamples); -+ pRateTransposer->moveSamples(*pTDStretch); -+ } -+} -+ -+ -+// Flushes the last samples from the processing pipeline to the output. -+// Clears also the internal processing buffers. -+// -+// Note: This function is meant for extracting the last samples of a sound -+// stream. This function may introduce additional blank samples in the end -+// of the sound stream, and thus it's not recommended to call this function -+// in the middle of a sound stream. -+void SoundTouch::flush() -+{ -+ int i; -+ int numStillExpected; -+ SAMPLETYPE *buff = new SAMPLETYPE[128 * channels]; -+ -+ // how many samples are still expected to output -+ numStillExpected = (int)((long)(samplesExpectedOut + 0.5) - samplesOutput); -+ -+ memset(buff, 0, 128 * channels * sizeof(SAMPLETYPE)); -+ // "Push" the last active samples out from the processing pipeline by -+ // feeding blank samples into the processing pipeline until new, -+ // processed samples appear in the output (not however, more than -+ // 24ksamples in any case) -+ for (i = 0; (numStillExpected > (int)numSamples()) && (i < 200); i ++) -+ { -+ putSamples(buff, 128); -+ } -+ -+ adjustAmountOfSamples(numStillExpected); -+ -+ delete[] buff; -+ -+ // Clear input buffers -+ // pRateTransposer->clearInput(); -+ pTDStretch->clearInput(); -+ // yet leave the output intouched as that's where the -+ // flushed samples are! -+} -+ -+ -+// Changes a setting controlling the processing system behaviour. See the -+// 'SETTING_...' defines for available setting ID's. -+bool SoundTouch::setSetting(int settingId, int value) -+{ -+ int sampleRate, sequenceMs, seekWindowMs, overlapMs; -+ -+ // read current tdstretch routine parameters -+ pTDStretch->getParameters(&sampleRate, &sequenceMs, &seekWindowMs, &overlapMs); -+ -+ switch (settingId) -+ { -+ case SETTING_USE_AA_FILTER : -+ // enables / disabless anti-alias filter -+ pRateTransposer->enableAAFilter((value != 0) ? true : false); -+ return true; -+ -+ case SETTING_AA_FILTER_LENGTH : -+ // sets anti-alias filter length -+ pRateTransposer->getAAFilter()->setLength(value); -+ return true; -+ -+ case SETTING_USE_QUICKSEEK : -+ // enables / disables tempo routine quick seeking algorithm -+ pTDStretch->enableQuickSeek((value != 0) ? true : false); -+ return true; -+ -+ case SETTING_SEQUENCE_MS: -+ // change time-stretch sequence duration parameter -+ pTDStretch->setParameters(sampleRate, value, seekWindowMs, overlapMs); -+ return true; -+ -+ case SETTING_SEEKWINDOW_MS: -+ // change time-stretch seek window length parameter -+ pTDStretch->setParameters(sampleRate, sequenceMs, value, overlapMs); -+ return true; -+ -+ case SETTING_OVERLAP_MS: -+ // change time-stretch overlap length parameter -+ pTDStretch->setParameters(sampleRate, sequenceMs, seekWindowMs, value); -+ return true; -+ -+ default : -+ return false; -+ } -+} -+ -+ -+// Reads a setting controlling the processing system behaviour. See the -+// 'SETTING_...' defines for available setting ID's. -+// -+// Returns the setting value. -+int SoundTouch::getSetting(int settingId) const -+{ -+ int temp; -+ -+ switch (settingId) -+ { -+ case SETTING_USE_AA_FILTER : -+ return (uint)pRateTransposer->isAAFilterEnabled(); -+ -+ case SETTING_AA_FILTER_LENGTH : -+ return pRateTransposer->getAAFilter()->getLength(); -+ -+ case SETTING_USE_QUICKSEEK : -+ return (uint) pTDStretch->isQuickSeekEnabled(); -+ -+ case SETTING_SEQUENCE_MS: -+ pTDStretch->getParameters(NULL, &temp, NULL, NULL); -+ return temp; -+ -+ case SETTING_SEEKWINDOW_MS: -+ pTDStretch->getParameters(NULL, NULL, &temp, NULL); -+ return temp; -+ -+ case SETTING_OVERLAP_MS: -+ pTDStretch->getParameters(NULL, NULL, NULL, &temp); -+ return temp; -+ -+ case SETTING_NOMINAL_INPUT_SEQUENCE : -+ return pTDStretch->getInputSampleReq(); -+ -+ case SETTING_NOMINAL_OUTPUT_SEQUENCE : -+ return pTDStretch->getOutputBatchSize(); -+ -+ default : -+ return 0; -+ } -+} -+ -+ -+// Clears all the samples in the object's output and internal processing -+// buffers. -+void SoundTouch::clear() -+{ -+ samplesExpectedOut = 0; -+ pRateTransposer->clear(); -+ pTDStretch->clear(); -+} -+ -+ -+ -+/// Returns number of samples currently unprocessed. -+uint SoundTouch::numUnprocessedSamples() const -+{ -+ FIFOSamplePipe * psp; -+ if (pTDStretch) -+ { -+ psp = pTDStretch->getInput(); -+ if (psp) -+ { -+ return psp->numSamples(); -+ } -+ } -+ return 0; -+} -+ -+ -+ -+/// Output samples from beginning of the sample buffer. Copies requested samples to -+/// output buffer and removes them from the sample buffer. If there are less than -+/// 'numsample' samples in the buffer, returns all that available. -+/// -+/// \return Number of samples returned. -+uint SoundTouch::receiveSamples(SAMPLETYPE *output, uint maxSamples) -+{ -+ uint ret = FIFOProcessor::receiveSamples(output, maxSamples); -+ samplesOutput += (long)ret; -+ return ret; -+} -+ -+ -+/// Adjusts book-keeping so that given number of samples are removed from beginning of the -+/// sample buffer without copying them anywhere. -+/// -+/// Used to reduce the number of samples in the buffer when accessing the sample buffer directly -+/// with 'ptrBegin' function. -+uint SoundTouch::receiveSamples(uint maxSamples) -+{ -+ uint ret = FIFOProcessor::receiveSamples(maxSamples); -+ samplesOutput += (long)ret; -+ return ret; -+} -diff -Naur soundtouch/source/SoundTouch/TDStretch.cpp soundtouch.backport/source/SoundTouch/TDStretch.cpp ---- soundtouch/source/SoundTouch/TDStretch.cpp 2015-09-20 07:40:59.000000000 +0000 -+++ soundtouch.backport/source/SoundTouch/TDStretch.cpp 2018-08-17 03:43:45.122106020 +0000 -@@ -586,9 +586,8 @@ - // Sets the number of channels, 1 = mono, 2 = stereo - void TDStretch::setChannels(int numChannels) - { -- assert(numChannels > 0); -- if (channels == numChannels) return; --// assert(numChannels == 1 || numChannels == 2); -+ if (!verifyNumberOfChannels(numChannels) || -+ (channels == numChannels)) return; - - channels = numChannels; - inputBuffer.setChannels(channels); diff --git a/runtime-optenv32/soundtouch+32/autobuild/patches/0002-Added-minimum-size-check-for-WAV-header-block-lengh-.patch b/runtime-optenv32/soundtouch+32/autobuild/patches/0002-Added-minimum-size-check-for-WAV-header-block-lengh-.patch deleted file mode 100644 index ea694382d1d..00000000000 --- a/runtime-optenv32/soundtouch+32/autobuild/patches/0002-Added-minimum-size-check-for-WAV-header-block-lengh-.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 9e02d9b04fda6c1f44336ff00bb5af1e2ffc039e Mon Sep 17 00:00:00 2001 -From: oparviainen -Date: Sun, 12 Aug 2018 20:24:37 +0300 -Subject: [PATCH] Added minimum size check for WAV header block lengh values - ---- - source/SoundStretch/WavFile.cpp | 10 +++++++++- - 1 file changed, 9 insertions(+), 1 deletion(-) - -diff --git a/source/SoundStretch/WavFile.cpp b/source/SoundStretch/WavFile.cpp -index 7e7ade2..68818c9 100644 ---- a/source/SoundStretch/WavFile.cpp -+++ b/source/SoundStretch/WavFile.cpp -@@ -530,7 +530,11 @@ int WavInFile::readHeaderBlock() - // read length of the format field - if (fread(&nLen, sizeof(int), 1, fptr) != 1) return -1; - // swap byte order if necessary -- _swap32(nLen); // int format_len; -+ _swap32(nLen); -+ -+ // verify that header length isn't smaller than expected -+ if (nLen < sizeof(header.format) - 8) return -1; -+ - header.format.format_len = nLen; - - // calculate how much length differs from expected -@@ -572,6 +576,10 @@ int WavInFile::readHeaderBlock() - if (fread(&nLen, sizeof(int), 1, fptr) != 1) return -1; - // swap byte order if necessary - _swap32(nLen); // int fact_len; -+ -+ // verify that fact length isn't smaller than expected -+ if (nLen < sizeof(header.fact) - 8) return -1; -+ - header.fact.fact_len = nLen; - - // calculate how much length differs from expected --- -2.18.0 - diff --git a/runtime-optenv32/soundtouch+32/autobuild/patches/0003-Fixed-WavFile-header-fact-not-too-small-check.patch b/runtime-optenv32/soundtouch+32/autobuild/patches/0003-Fixed-WavFile-header-fact-not-too-small-check.patch deleted file mode 100644 index 4f4d60f979b..00000000000 --- a/runtime-optenv32/soundtouch+32/autobuild/patches/0003-Fixed-WavFile-header-fact-not-too-small-check.patch +++ /dev/null @@ -1,58 +0,0 @@ -From e0240689056e4182fffdc2a16aa6e3425a15e275 Mon Sep 17 00:00:00 2001 -From: oparviainen -Date: Mon, 13 Aug 2018 19:16:16 +0300 -Subject: [PATCH 3/4] Fixed WavFile header/fact not-too-small check - ---- - source/SoundStretch/WavFile.cpp | 22 +++++++++++----------- - 1 file changed, 11 insertions(+), 11 deletions(-) - -diff --git a/source/SoundStretch/WavFile.cpp b/source/SoundStretch/WavFile.cpp -index 4af7a4c..3421bca 100644 ---- a/source/SoundStretch/WavFile.cpp -+++ b/source/SoundStretch/WavFile.cpp -@@ -518,13 +518,13 @@ int WavInFile::readHeaderBlock() - // swap byte order if necessary - _swap32(nLen); - -- // verify that header length isn't smaller than expected -- if (nLen < sizeof(header.format) - 8) return -1; -+ // calculate how much length differs from expected -+ nDump = nLen - ((int)sizeof(header.format) - 8); - -- header.format.format_len = nLen; -+ // verify that header length isn't smaller than expected structure -+ if (nDump < 0) return -1; - -- // calculate how much length differs from expected -- nDump = nLen - ((int)sizeof(header.format) - 8); -+ header.format.format_len = nLen; - - // if format_len is larger than expected, read only as much data as we've space for - if (nDump > 0) -@@ -561,16 +561,16 @@ int WavInFile::readHeaderBlock() - // read length of the fact field - if (fread(&nLen, sizeof(int), 1, fptr) != 1) return -1; - // swap byte order if necessary -- _swap32(nLen); // int fact_len; -- -- // verify that fact length isn't smaller than expected -- if (nLen < sizeof(header.fact) - 8) return -1; -- -- header.fact.fact_len = nLen; -+ _swap32(nLen); - - // calculate how much length differs from expected - nDump = nLen - ((int)sizeof(header.fact) - 8); - -+ // verify that fact length isn't smaller than expected structure -+ if (nDump < 0) return -1; -+ -+ header.fact.fact_len = nLen; -+ - // if format_len is larger than expected, read only as much data as we've space for - if (nDump > 0) - { --- -2.18.0 - diff --git a/runtime-optenv32/soundtouch+32/autobuild/patches/0004-Improved-WavFile-header-fact-not-too-small-check.patch b/runtime-optenv32/soundtouch+32/autobuild/patches/0004-Improved-WavFile-header-fact-not-too-small-check.patch deleted file mode 100644 index 23ece2c76fa..00000000000 --- a/runtime-optenv32/soundtouch+32/autobuild/patches/0004-Improved-WavFile-header-fact-not-too-small-check.patch +++ /dev/null @@ -1,34 +0,0 @@ -From 46531e5b92dd80dd9a7947463d6224fc7cb21967 Mon Sep 17 00:00:00 2001 -From: olli -Date: Mon, 13 Aug 2018 19:42:58 +0300 -Subject: [PATCH 4/4] Improved WavFile header/fact not-too-small check - ---- - source/SoundStretch/WavFile.cpp | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/source/SoundStretch/WavFile.cpp b/source/SoundStretch/WavFile.cpp -index 3421bca..9d90b8a 100644 ---- a/source/SoundStretch/WavFile.cpp -+++ b/source/SoundStretch/WavFile.cpp -@@ -522,7 +522,7 @@ int WavInFile::readHeaderBlock() - nDump = nLen - ((int)sizeof(header.format) - 8); - - // verify that header length isn't smaller than expected structure -- if (nDump < 0) return -1; -+ if ((nLen < 0) || (nDump < 0)) return -1; - - header.format.format_len = nLen; - -@@ -567,7 +567,7 @@ int WavInFile::readHeaderBlock() - nDump = nLen - ((int)sizeof(header.fact) - 8); - - // verify that fact length isn't smaller than expected structure -- if (nDump < 0) return -1; -+ if ((nLen < 0) || (nDump < 0)) return -1; - - header.fact.fact_len = nLen; - --- -2.18.0 - diff --git a/runtime-optenv32/soundtouch+32/autobuild/patches/cve-2017-92xx.patch b/runtime-optenv32/soundtouch+32/autobuild/patches/cve-2017-92xx.patch deleted file mode 100644 index 0e475a3e44e..00000000000 --- a/runtime-optenv32/soundtouch+32/autobuild/patches/cve-2017-92xx.patch +++ /dev/null @@ -1,36 +0,0 @@ -Description: Fix CVE-2017-9258, CVE-2017-9259, CVE-2017-9260 - Based on an upstream commit, original commit message was: "Added sanity - checks against illegal input audio stream parameters e.g. wildly excessive - samplerate". - . - There is no reference to CVEs or bugs, the commit was made after disclosure - of the CVEs and all three proofs of concept (crafted wav files) fail after - this commit. - . - The commit was made after version 2.0.0, so that version is also vulnerable. - . - Unrelated changes were stripped away by patch author, upstream commit author - is Olli Parviainen . -Author: Gabor Karsay -Origin: upstream, https://sourceforge.net/p/soundtouch/code/256/ -Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=870854 -Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=870856 -Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=870857 ---- -This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ ---- a/source/SoundTouch/TDStretch.cpp -+++ b/source/SoundTouch/TDStretch.cpp -@@ -128,7 +128,12 @@ - int aSeekWindowMS, int aOverlapMS) - { - // accept only positive parameter values - if zero or negative, use old values instead -- if (aSampleRate > 0) this->sampleRate = aSampleRate; -+ if (aSampleRate > 0) -+ { -+ if (aSampleRate > 192000) ST_THROW_RT_ERROR("Error: Excessive samplerate"); -+ this->sampleRate = aSampleRate; -+ } -+ - if (aOverlapMS > 0) this->overlapMs = aOverlapMS; - - if (aSequenceMS > 0) diff --git a/runtime-optenv32/soundtouch+32/autobuild/patches/soundtouch-avoid-assert.patch b/runtime-optenv32/soundtouch+32/autobuild/patches/soundtouch-avoid-assert.patch deleted file mode 100644 index 4f26603d7ec..00000000000 --- a/runtime-optenv32/soundtouch+32/autobuild/patches/soundtouch-avoid-assert.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 59129fa33d183e66f0a276795a59aa61a3e2fa06 Mon Sep 17 00:00:00 2001 -From: Olli -Date: Sun, 28 Oct 2018 15:49:50 +0200 -Subject: [PATCH] Eliminate assert condition by reading # sample elements that - are multiple of num-of-channels - ---- - source/SoundStretch/main.cpp | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/source/SoundStretch/main.cpp b/source/SoundStretch/main.cpp -index 360ae8c..1742731 100644 ---- a/source/SoundStretch/main.cpp -+++ b/source/SoundStretch/main.cpp -@@ -229,7 +229,7 @@ static void detectBPM(WavInFile *inFile, RunParameters *params) - fflush(stderr); - - nChannels = (int)inFile->getNumChannels(); -- assert(BUFF_SIZE % nChannels == 0); -+ int readSize = BUFF_SIZE - BUFF_SIZE % nChannels; // round read size down to multiple of num.channels - - // Process the 'inFile' in small blocks, repeat until whole file has - // been processed -@@ -238,7 +238,7 @@ static void detectBPM(WavInFile *inFile, RunParameters *params) - int num, samples; - - // Read sample data from input file -- num = inFile->read(sampleBuffer, BUFF_SIZE); -+ num = inFile->read(sampleBuffer, readSize); - - // Enter the new samples to the bpm analyzer class - samples = num / nChannels; --- -2.18.1 - diff --git a/runtime-optenv32/soundtouch+32/autobuild/patches/soundtouch-round-buffer.patch b/runtime-optenv32/soundtouch+32/autobuild/patches/soundtouch-round-buffer.patch deleted file mode 100644 index 4cc4b2b3831..00000000000 --- a/runtime-optenv32/soundtouch+32/autobuild/patches/soundtouch-round-buffer.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 09e04252dde9ef02a7d254315b13089996afe302 Mon Sep 17 00:00:00 2001 -From: Olli -Date: Sun, 28 Oct 2018 15:51:15 +0200 -Subject: [PATCH] Fix CVE-2018-17097 by rounding working buffer size up to - nearest 4-byte boundary. Replaced also tab characters with spaces in - indentation. - ---- - source/SoundStretch/WavFile.cpp | 11 ++++++----- - 1 file changed, 6 insertions(+), 5 deletions(-) - -diff --git a/source/SoundStretch/WavFile.cpp b/source/SoundStretch/WavFile.cpp -index 9d90b8a..fd33f6a 100644 ---- a/source/SoundStretch/WavFile.cpp -+++ b/source/SoundStretch/WavFile.cpp -@@ -924,7 +924,8 @@ void WavOutFile::write(const float *buffer, int numElems) - - bytesPerSample = header.format.bits_per_sample / 8; - numBytes = numElems * bytesPerSample; -- short *temp = (short*)getConvBuffer(numBytes); -+ int confBufBytes = (numBytes + 3) & -4; // round up to nearest multiple of four to avoid overflow with 24bit-value assignment -+ void *temp = getConvBuffer(confBufBytes); - - switch (bytesPerSample) - { --- -2.18.1 - diff --git a/runtime-optenv32/soundtouch+32/autobuild/patches/soundtouch-throw-exception.patch b/runtime-optenv32/soundtouch+32/autobuild/patches/soundtouch-throw-exception.patch deleted file mode 100644 index 139fd772c69..00000000000 --- a/runtime-optenv32/soundtouch+32/autobuild/patches/soundtouch-throw-exception.patch +++ /dev/null @@ -1,27 +0,0 @@ -From a1c400eb2cff849c0e5f9d6916d69ffea3ad2c85 Mon Sep 17 00:00:00 2001 -From: Olli -Date: Sun, 28 Oct 2018 15:32:58 +0200 -Subject: [PATCH] Fix issue CVE-2018-17096: Replace assert with runtime - exception - ---- - source/SoundTouch/BPMDetect.cpp | 6 ++++-- - 1 file changed, 4 insertions(+), 2 deletions(-) - -Index: soundtouch/source/SoundTouch/BPMDetect.cpp -=================================================================== ---- soundtouch.orig/source/SoundTouch/BPMDetect.cpp -+++ soundtouch/source/SoundTouch/BPMDetect.cpp -@@ -130,8 +130,10 @@ BPMDetect::BPMDetect(int numChannels, in - - // choose decimation factor so that result is approx. 1000 Hz - decimateBy = sampleRate / 1000; -- assert(decimateBy > 0); -- assert(INPUT_BLOCK_SAMPLES < decimateBy * DECIMATED_BLOCK_SAMPLES); -+ if ((decimateBy <= 0) || (decimateBy * DECIMATED_BLOCK_SAMPLES < INPUT_BLOCK_SAMPLES)) -+ { -+ ST_THROW_RT_ERROR("Too small samplerate"); -+ } - - // Calculate window length & starting item according to desired min & max bpms - windowLen = (60 * sampleRate) / (decimateBy * MIN_BPM); diff --git a/runtime-optenv32/soundtouch+32/autobuild/prepare b/runtime-optenv32/soundtouch+32/autobuild/prepare deleted file mode 100644 index 3ecf40981cc..00000000000 --- a/runtime-optenv32/soundtouch+32/autobuild/prepare +++ /dev/null @@ -1,2 +0,0 @@ -sed -i 's/AM_CONFIG_HEADER/AC_CONFIG_HEADER/' configure.ac -./bootstrap diff --git a/runtime-optenv32/soundtouch+32/spec b/runtime-optenv32/soundtouch+32/spec index 6357cf3c76c..684ae935feb 100644 --- a/runtime-optenv32/soundtouch+32/spec +++ b/runtime-optenv32/soundtouch+32/spec @@ -1,5 +1,4 @@ -VER=1.9.2 -REL=5 +VER=2.3.3 SRCS="tbl::https://www.surina.net/soundtouch/soundtouch-$VER.tar.gz" -CHKSUMS="sha256::caeb86511e81420eeb454cb5db53f56d96b8451d37d89af6e55b12eb4da1c513" +CHKSUMS="sha256::43b23dfac2f64a3aff55d64be096ffc7b73842c3f5665caff44975633a975a99" CHKUPDATE="anitya::id=115722" From b24cb01f465bd451b85351bb46f4992df81df9d5 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 25 Dec 2024 23:14:55 +0800 Subject: [PATCH 115/722] rtmpdump+32: update to 20151223 - Use optenv32 template. - Lint scripts in accordance with the Styling Manual. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/rtmpdump+32/autobuild/build | 17 ++++++++++++----- runtime-optenv32/rtmpdump+32/autobuild/defines | 8 +++++--- ...openssl-1.1.patch => 0001-openssl-1.1.patch} | 0 runtime-optenv32/rtmpdump+32/spec | 5 ++--- 4 files changed, 19 insertions(+), 11 deletions(-) rename runtime-optenv32/rtmpdump+32/autobuild/patches/{0003-openssl-1.1.patch => 0001-openssl-1.1.patch} (100%) diff --git a/runtime-optenv32/rtmpdump+32/autobuild/build b/runtime-optenv32/rtmpdump+32/autobuild/build index e9ac717589c..606e39b96c1 100644 --- a/runtime-optenv32/rtmpdump+32/autobuild/build +++ b/runtime-optenv32/rtmpdump+32/autobuild/build @@ -1,6 +1,13 @@ -export PATH=/opt/32/bin:$PATH -make OPT="$CFLAGS" XLDFLAGS="$LDFLAGS" \ - CC=i686-pc-linux-gnu-gcc CXX=i686-pc-linux-gnu-g++ -make prefix=/opt/32 DESTDIR="$PKGDIR" mandir=/opt/32/share/man install +abinfo "Building rtmpdump ..." +make \ + OPT="$CFLAGS" \ + XLDFLAGS="$LDFLAGS" \ + CC=i686-aosc-linux-gnu-gcc \ + CXX=i686-aosc-linux-gnu-g++ -rm -rf "$PKGDIR"/opt/32/{bin,sbin,share} +abinfo "Installing rtmpdump ..." +make install \ + DESTDIR="$PKGDIR" \ + SBINDIR=/opt/32/bin \ + prefix=/opt/32 \ + mandir=/opt/32/share/man diff --git a/runtime-optenv32/rtmpdump+32/autobuild/defines b/runtime-optenv32/rtmpdump+32/autobuild/defines index 88334e097da..77f30a0472b 100644 --- a/runtime-optenv32/rtmpdump+32/autobuild/defines +++ b/runtime-optenv32/rtmpdump+32/autobuild/defines @@ -1,9 +1,11 @@ PKGNAME=rtmpdump+32 -PKGDES="A tool to download RTMP streams (optenv32)" PKGSEC=libs PKGDEP="openssl+32" -BUILDDEP="32subsystem" +BUILDDEP="devel-base+32" +PKGDES="A tool to download RTMP streams (32-bit x86 runtime)" +# FIXME: Installation fails with parallelism. NOPARALLEL=1 + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/rtmpdump+32/autobuild/patches/0003-openssl-1.1.patch b/runtime-optenv32/rtmpdump+32/autobuild/patches/0001-openssl-1.1.patch similarity index 100% rename from runtime-optenv32/rtmpdump+32/autobuild/patches/0003-openssl-1.1.patch rename to runtime-optenv32/rtmpdump+32/autobuild/patches/0001-openssl-1.1.patch diff --git a/runtime-optenv32/rtmpdump+32/spec b/runtime-optenv32/rtmpdump+32/spec index 71a8b529421..8e7a4cbff81 100644 --- a/runtime-optenv32/rtmpdump+32/spec +++ b/runtime-optenv32/rtmpdump+32/spec @@ -1,5 +1,4 @@ -VER=20150114 -REL=5 -SRCS="git::commit=fa8646d::git://git.ffmpeg.org/rtmpdump" +VER=20151223 +SRCS="git::commit=fa8646daeb19dfd12c181f7d19de708d623704c0::https://git.ffmpeg.org/rtmpdump.git" CHKSUMS="SKIP" CHKUPDATE="anitya::id=141551" From 124ed8774660e1c1513657ad00decdc7e2a60a6d Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 25 Dec 2024 23:17:43 +0800 Subject: [PATCH 116/722] opus+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/opus+32/autobuild/build | 12 ------------ runtime-optenv32/opus+32/autobuild/defines | 11 +++++++---- runtime-optenv32/opus+32/spec | 2 +- 3 files changed, 8 insertions(+), 17 deletions(-) delete mode 100644 runtime-optenv32/opus+32/autobuild/build diff --git a/runtime-optenv32/opus+32/autobuild/build b/runtime-optenv32/opus+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/opus+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/opus+32/autobuild/defines b/runtime-optenv32/opus+32/autobuild/defines index cee95b62bcb..9d0b86177bd 100644 --- a/runtime-optenv32/opus+32/autobuild/defines +++ b/runtime-optenv32/opus+32/autobuild/defines @@ -1,9 +1,12 @@ PKGNAME=opus+32 PKGSEC=libs PKGDEP="glibc+32" -BUILDDEP="32subsystem" -PKGDES="Codec designed for interactive speech and audio transmission over the Internet (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="Codec designed for interactive speech and audio transmission over the Internet (32-bit x86 runtime)" + +AUTOTOOLS_AFTER=( + '--enable-custom-modes' +) -AUTOTOOLS_AFTER="--enable-custom-modes" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/opus+32/spec b/runtime-optenv32/opus+32/spec index a239738ead8..6684acca6e5 100644 --- a/runtime-optenv32/opus+32/spec +++ b/runtime-optenv32/opus+32/spec @@ -1,5 +1,5 @@ VER=1.3.1 +REL=2 SRCS="tbl::https://downloads.xiph.org/releases/opus/opus-$VER.tar.gz" CHKSUMS="sha256::65b58e1e25b2a114157014736a3d9dfeaad8d41be1c8179866f144a2fb44ff9d" -REL=1 CHKUPDATE="anitya::id=11081" From caa8439e1c21a57efc050d086253fad4f6946f39 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 11:04:59 +0800 Subject: [PATCH 117/722] lcms2+32: update to 2.14 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/lcms2+32/autobuild/build | 12 -- runtime-optenv32/lcms2+32/autobuild/defines | 6 +- .../autobuild/patches/CVE-2018-16435.patch | 169 ------------------ runtime-optenv32/lcms2+32/autobuild/prepare | 1 - runtime-optenv32/lcms2+32/spec | 5 +- 5 files changed, 5 insertions(+), 188 deletions(-) delete mode 100644 runtime-optenv32/lcms2+32/autobuild/build delete mode 100644 runtime-optenv32/lcms2+32/autobuild/patches/CVE-2018-16435.patch delete mode 100644 runtime-optenv32/lcms2+32/autobuild/prepare diff --git a/runtime-optenv32/lcms2+32/autobuild/build b/runtime-optenv32/lcms2+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/lcms2+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/lcms2+32/autobuild/defines b/runtime-optenv32/lcms2+32/autobuild/defines index f889340f361..08a5e71fbb7 100644 --- a/runtime-optenv32/lcms2+32/autobuild/defines +++ b/runtime-optenv32/lcms2+32/autobuild/defines @@ -1,8 +1,8 @@ PKGNAME=lcms2+32 PKGSEC=libs -PKGDES="A small-footprint color management engine, with special focus on accuracy and performance (optenv32)" PKGDEP="libtiff+32" -BUILDDEP="32subsystem" +BUILDDEP="devel-base+32" +PKGDES="Little CMS 2 color management library (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/lcms2+32/autobuild/patches/CVE-2018-16435.patch b/runtime-optenv32/lcms2+32/autobuild/patches/CVE-2018-16435.patch deleted file mode 100644 index 775225c9884..00000000000 --- a/runtime-optenv32/lcms2+32/autobuild/patches/CVE-2018-16435.patch +++ /dev/null @@ -1,169 +0,0 @@ -From 768f70ca405cd3159d990e962d54456773bb8cf8 Mon Sep 17 00:00:00 2001 -From: Marti Maria -Date: Wed, 15 Aug 2018 20:07:56 +0200 -Subject: [PATCH] Upgrade Visual studio 2017 15.8 - -- Upgrade to 15.8 -- Add check on CGATS memory allocation (thanks to Quang Nguyen for -pointing out this) ---- - Projects/VC2017/jpegicc/jpegicc.vcxproj | 1 + - Projects/VC2017/lcms2_DLL/lcms2_DLL.vcxproj | 2 +- - Projects/VC2017/lcms2_static/lcms2_static.vcxproj | 2 +- - Projects/VC2017/linkicc/linkicc.vcxproj | 2 +- - Projects/VC2017/psicc/psicc.vcxproj | 2 +- - Projects/VC2017/testbed/testbed.vcxproj | 2 +- - Projects/VC2017/tiffdiff/tiffdiff.vcxproj | 2 +- - Projects/VC2017/tifficc/tifficc.vcxproj | 2 +- - Projects/VC2017/transicc/transicc.vcxproj | 1 + - src/cmscgats.c | 14 ++++++++++---- - 10 files changed, 19 insertions(+), 11 deletions(-) - -diff --git a/Projects/VC2017/jpegicc/jpegicc.vcxproj b/Projects/VC2017/jpegicc/jpegicc.vcxproj -index ab26a53..39cfd00 100644 ---- a/Projects/VC2017/jpegicc/jpegicc.vcxproj -+++ b/Projects/VC2017/jpegicc/jpegicc.vcxproj -@@ -22,6 +22,7 @@ - {62812507-F926-4968-96A9-17678460AD90} - jpegicc - Win32Proj -+ 10.0.17134.0 - - - -diff --git a/Projects/VC2017/lcms2_DLL/lcms2_DLL.vcxproj b/Projects/VC2017/lcms2_DLL/lcms2_DLL.vcxproj -index 4c8aa3f..d1bf3eb 100644 ---- a/Projects/VC2017/lcms2_DLL/lcms2_DLL.vcxproj -+++ b/Projects/VC2017/lcms2_DLL/lcms2_DLL.vcxproj -@@ -22,7 +22,7 @@ - {8C51BE48-ADB8-4089-A9EC-F6BF993A0548} - lcms2_DLL - Win32Proj -- 8.1 -+ 10.0.17134.0 - - - -diff --git a/Projects/VC2017/lcms2_static/lcms2_static.vcxproj b/Projects/VC2017/lcms2_static/lcms2_static.vcxproj -index 2a9988a..9fc05ce 100644 ---- a/Projects/VC2017/lcms2_static/lcms2_static.vcxproj -+++ b/Projects/VC2017/lcms2_static/lcms2_static.vcxproj -@@ -22,7 +22,7 @@ - {71DEDE59-3F1E-486B-A899-4283000F76B5} - lcms2_static - Win32Proj -- 8.1 -+ 10.0.17134.0 - - - -diff --git a/Projects/VC2017/linkicc/linkicc.vcxproj b/Projects/VC2017/linkicc/linkicc.vcxproj -index 30c2b4e..51586dd 100644 ---- a/Projects/VC2017/linkicc/linkicc.vcxproj -+++ b/Projects/VC2017/linkicc/linkicc.vcxproj -@@ -22,7 +22,7 @@ - {FBFBE1DC-DB84-4BA1-9552-B4780F457849} - linkicc - Win32Proj -- 8.1 -+ 10.0.17134.0 - - - -diff --git a/Projects/VC2017/psicc/psicc.vcxproj b/Projects/VC2017/psicc/psicc.vcxproj -index 9dcf89a..8f26e12 100644 ---- a/Projects/VC2017/psicc/psicc.vcxproj -+++ b/Projects/VC2017/psicc/psicc.vcxproj -@@ -22,7 +22,7 @@ - {EF6A8851-65FE-46F5-B9EF-14F0B671F693} - psicc - Win32Proj -- 8.1 -+ 10.0.17134.0 - - - -diff --git a/Projects/VC2017/testbed/testbed.vcxproj b/Projects/VC2017/testbed/testbed.vcxproj -index 0af3762..3f6aea3 100644 ---- a/Projects/VC2017/testbed/testbed.vcxproj -+++ b/Projects/VC2017/testbed/testbed.vcxproj -@@ -22,7 +22,7 @@ - {928A3A2B-46EF-4279-959C-513B3652FF0E} - testbed - Win32Proj -- 8.1 -+ 10.0.17134.0 - - - -diff --git a/Projects/VC2017/tiffdiff/tiffdiff.vcxproj b/Projects/VC2017/tiffdiff/tiffdiff.vcxproj -index 7edfe28..3a6d837 100644 ---- a/Projects/VC2017/tiffdiff/tiffdiff.vcxproj -+++ b/Projects/VC2017/tiffdiff/tiffdiff.vcxproj -@@ -22,7 +22,7 @@ - {75B91835-CCD7-48BE-A606-A9C997D5DBEE} - tiffdiff - Win32Proj -- 8.1 -+ 10.0.17134.0 - - - -diff --git a/Projects/VC2017/tifficc/tifficc.vcxproj b/Projects/VC2017/tifficc/tifficc.vcxproj -index cd9f04c..5ef954f 100644 ---- a/Projects/VC2017/tifficc/tifficc.vcxproj -+++ b/Projects/VC2017/tifficc/tifficc.vcxproj -@@ -22,7 +22,7 @@ - {2256DE16-ED92-4A6F-9C54-F65BB61E64A2} - tifficc - Win32Proj -- 8.1 -+ 10.0.17134.0 - - - -diff --git a/Projects/VC2017/transicc/transicc.vcxproj b/Projects/VC2017/transicc/transicc.vcxproj -index d9b77c6..b3173d8 100644 ---- a/Projects/VC2017/transicc/transicc.vcxproj -+++ b/Projects/VC2017/transicc/transicc.vcxproj -@@ -22,6 +22,7 @@ - {9EE22D66-C849-474C-9ED5-C3E141DAB160} - transicc - Win32Proj -+ 10.0.17134.0 - - - -diff --git a/src/cmscgats.c b/src/cmscgats.c -index 1a87613..8c3e96d 100644 ---- a/src/cmscgats.c -+++ b/src/cmscgats.c -@@ -1,7 +1,7 @@ - //--------------------------------------------------------------------------------- - // - // Little Color Management System --// Copyright (c) 1998-2017 Marti Maria Saguer -+// Copyright (c) 1998-2018 Marti Maria Saguer - // - // Permission is hereby granted, free of charge, to any person obtaining - // a copy of this software and associated documentation files (the "Software"), -@@ -1506,10 +1506,16 @@ void AllocateDataSet(cmsIT8* it8) - t-> nSamples = atoi(cmsIT8GetProperty(it8, "NUMBER_OF_FIELDS")); - t-> nPatches = atoi(cmsIT8GetProperty(it8, "NUMBER_OF_SETS")); - -- t-> Data = (char**)AllocChunk (it8, ((cmsUInt32Number) t->nSamples + 1) * ((cmsUInt32Number) t->nPatches + 1) *sizeof (char*)); -- if (t->Data == NULL) { -+ if (t -> nSamples < 0 || t->nSamples > 0x7ffe || t->nPatches < 0 || t->nPatches > 0x7ffe) -+ { -+ SynError(it8, "AllocateDataSet: too much data"); -+ } -+ else { -+ t->Data = (char**)AllocChunk(it8, ((cmsUInt32Number)t->nSamples + 1) * ((cmsUInt32Number)t->nPatches + 1) * sizeof(char*)); -+ if (t->Data == NULL) { - -- SynError(it8, "AllocateDataSet: Unable to allocate data array"); -+ SynError(it8, "AllocateDataSet: Unable to allocate data array"); -+ } - } - - } diff --git a/runtime-optenv32/lcms2+32/autobuild/prepare b/runtime-optenv32/lcms2+32/autobuild/prepare deleted file mode 100644 index 1953c60ae79..00000000000 --- a/runtime-optenv32/lcms2+32/autobuild/prepare +++ /dev/null @@ -1 +0,0 @@ -cp /usr/share/automake-1.16/config.* . diff --git a/runtime-optenv32/lcms2+32/spec b/runtime-optenv32/lcms2+32/spec index edeb82696e5..83ef8631b53 100644 --- a/runtime-optenv32/lcms2+32/spec +++ b/runtime-optenv32/lcms2+32/spec @@ -1,5 +1,4 @@ -VER=2.9 -REL=2 +VER=2.14 SRCS="tbl::https://downloads.sourceforge.net/lcms/lcms2-$VER.tar.gz" -CHKSUMS="sha256::48c6fdf98396fa245ed86e622028caf49b96fa22f3e5734f853f806fbc8e7d20" +CHKSUMS="sha256::28474ea6f6591c4d4cee972123587001a4e6e353412a41b3e9e82219818d5740" CHKUPDATE="anitya::id=9815" From 88b413d9db4e0efb9cb80a2f35e01827e862c0ec Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 11:10:01 +0800 Subject: [PATCH 118/722] openjpeg-legacy+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/openjpeg-legacy+32/autobuild/build | 9 --------- runtime-optenv32/openjpeg-legacy+32/autobuild/defines | 6 +++--- runtime-optenv32/openjpeg-legacy+32/autobuild/patch | 3 --- .../openjpeg-legacy+32/autobuild/patches/series | 3 --- runtime-optenv32/openjpeg-legacy+32/spec | 2 +- 5 files changed, 4 insertions(+), 19 deletions(-) delete mode 100644 runtime-optenv32/openjpeg-legacy+32/autobuild/build delete mode 100644 runtime-optenv32/openjpeg-legacy+32/autobuild/patch delete mode 100644 runtime-optenv32/openjpeg-legacy+32/autobuild/patches/series diff --git a/runtime-optenv32/openjpeg-legacy+32/autobuild/build b/runtime-optenv32/openjpeg-legacy+32/autobuild/build deleted file mode 100644 index f789b81a8ef..00000000000 --- a/runtime-optenv32/openjpeg-legacy+32/autobuild/build +++ /dev/null @@ -1,9 +0,0 @@ -export PATH=/opt/32/bin:$PATH -export PKG_CONFIG_PATH=/opt/32/lib/pkg-config - -cmake . -DCMAKE_INSTALL_PREFIX=/opt/32 -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_C_COMPILER=/opt/32/bin/i686-pc-linux-gnu-gcc -make -C libopenjpeg -make -C libopenjpeg install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/openjpeg-legacy+32/autobuild/defines b/runtime-optenv32/openjpeg-legacy+32/autobuild/defines index 3c9392a114b..b7a38474bb7 100644 --- a/runtime-optenv32/openjpeg-legacy+32/autobuild/defines +++ b/runtime-optenv32/openjpeg-legacy+32/autobuild/defines @@ -1,8 +1,8 @@ PKGNAME=openjpeg-legacy+32 PKGSEC=libs PKGDEP="zlib+32 lcms2+32 libpng+32" -PKGDES="An open source JPEG 2000 codec (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="An open source JPEG 2000 codec (legacy 1.x, 32-bit x86 runtime)" -AUTOTOOLS_AFTER="--enable-shared" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/openjpeg-legacy+32/autobuild/patch b/runtime-optenv32/openjpeg-legacy+32/autobuild/patch deleted file mode 100644 index 3710ee5805a..00000000000 --- a/runtime-optenv32/openjpeg-legacy+32/autobuild/patch +++ /dev/null @@ -1,3 +0,0 @@ -for i in `cat autobuild/patches/series`; do - patch -Np1 -i autobuild/patches/$i -done diff --git a/runtime-optenv32/openjpeg-legacy+32/autobuild/patches/series b/runtime-optenv32/openjpeg-legacy+32/autobuild/patches/series deleted file mode 100644 index 3d45a698b59..00000000000 --- a/runtime-optenv32/openjpeg-legacy+32/autobuild/patches/series +++ /dev/null @@ -1,3 +0,0 @@ -defaulttmpfile.patch -javavers.patch -getopt.patch diff --git a/runtime-optenv32/openjpeg-legacy+32/spec b/runtime-optenv32/openjpeg-legacy+32/spec index 9885425b077..48c81cf9277 100644 --- a/runtime-optenv32/openjpeg-legacy+32/spec +++ b/runtime-optenv32/openjpeg-legacy+32/spec @@ -1,5 +1,5 @@ VER=1.5.2 +REL=3 SRCS="tbl::https://downloads.sourceforge.net/openjpeg.mirror/openjpeg-$VER.tar.gz" CHKSUMS="sha256::15df7b194a5d8dba0052cd21c17a4dc761149a770a907d73fffb972078c28a87" -REL=2 CHKUPDATE="anitya::id=8468" From 407ba6cf5fec33100f6e819eb9d438641055d173 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 11:30:49 +0800 Subject: [PATCH 119/722] neon+32: update to 0.33.0 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/neon+32/autobuild/build | 12 ------------ runtime-optenv32/neon+32/autobuild/defines | 19 ++++++++++++++----- runtime-optenv32/neon+32/spec | 5 ++--- 3 files changed, 16 insertions(+), 20 deletions(-) delete mode 100644 runtime-optenv32/neon+32/autobuild/build diff --git a/runtime-optenv32/neon+32/autobuild/build b/runtime-optenv32/neon+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/neon+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/neon+32/autobuild/defines b/runtime-optenv32/neon+32/autobuild/defines index 88ebb7f69ea..c85572ca882 100644 --- a/runtime-optenv32/neon+32/autobuild/defines +++ b/runtime-optenv32/neon+32/autobuild/defines @@ -1,9 +1,18 @@ PKGNAME=neon+32 -PKGDES="An HTTP and WebDAV client library, with a C interface (optenv32)" -PKGDEP="expat+32 krb5+32 ca-certs" PKGSEC=libs +PKGDEP="expat+32 krb5+32 ca-certs" +BUILDDEP="devel-base+32" +PKGDES="An HTTP and WebDAV client library, with a C interface (32-bit x86 runtime)" + +# FIXME: Shared libraries were not installed by default. +AUTOTOOLS_AFTER=( + '--enable-shared' + '--with-ssl=openssl' + '--with-ca-bundle=/etc/ssl/ca-bundle.crt' +) + +# FIXME: Fails to install documentation if shadow build is enabled. +ABSHADOW=0 -AUTOTOOLS_AFTER="--enable-shared --enable-static \ - --with-ssl=openssl --with-ca-bundle=/etc/ssl/ca-bundle.crt" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/neon+32/spec b/runtime-optenv32/neon+32/spec index f8fdb2a9fcb..97d0beb9139 100644 --- a/runtime-optenv32/neon+32/spec +++ b/runtime-optenv32/neon+32/spec @@ -1,5 +1,4 @@ -VER=0.31.2 +VER=0.33.0 SRCS="https://notroj.github.io/neon/neon-$VER.tar.gz" -CHKSUMS="sha256::cf1ee3ac27a215814a9c80803fcee4f0ede8466ebead40267a9bd115e16a8678" +CHKSUMS="sha256::659a5cc9cea05e6e7864094f1e13a77abbbdbab452f04d751a8c16a9447cf4b8" CHKUPDATE="anitya::id=7604" -REL=1 From 0da306874fdf0bebccb450eeb68d1e25803a4df9 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 11:34:57 +0800 Subject: [PATCH 120/722] mpg123+32: improve packaging - Use devel-base+32 as build dependency. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/mpg123+32/autobuild/defines | 4 ++-- runtime-optenv32/mpg123+32/spec | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/mpg123+32/autobuild/defines b/runtime-optenv32/mpg123+32/autobuild/defines index 88c20afeadf..ba93bdc9ef6 100644 --- a/runtime-optenv32/mpg123+32/autobuild/defines +++ b/runtime-optenv32/mpg123+32/autobuild/defines @@ -1,8 +1,8 @@ PKGNAME=mpg123+32 PKGSEC=sound -PKGDES="A console-based MP3 player (optenv32)" PKGDEP="alsa-lib+32 libtool+32 pulseaudio+32" -BUILDDEP="32subsystem" +BUILDDEP="devel-base+32" +PKGDES="A console-based MP3 player (32-bit x86 runtime)" ABHOST=optenv32 diff --git a/runtime-optenv32/mpg123+32/spec b/runtime-optenv32/mpg123+32/spec index 941e345fdf5..6fd184a2162 100644 --- a/runtime-optenv32/mpg123+32/spec +++ b/runtime-optenv32/mpg123+32/spec @@ -1,4 +1,5 @@ VER=1.32.8 +REL=1 SRCS="tbl::https://www.mpg123.de/download/mpg123-$VER.tar.bz2" CHKSUMS="sha256::feee1374c79540e0e405df0bc45fde20ad67011425c361a2759e2146894a27a7" CHKUPDATE="anitya::id=12413" From a15ca78433879c8101095fb15f675d5287e53238 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 13:46:10 +0800 Subject: [PATCH 121/722] sdl+32: improve packaging - Use optenv32 template. - Sort patches in accordance with the Styling Manual. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/sdl+32/autobuild/build | 12 ------------ runtime-optenv32/sdl+32/autobuild/defines | 12 ++++++++---- ...x-a-buffer-overread-in-MS_ADPCM_deco.patch} | 0 ...x-a-buffer-overwrite-in-MS_ADPCM_dec.patch} | 0 ...x-a-buffer-overread-in-IMA_ADPCM_dec.patch} | 0 ...x-a-buffer-overread-in-IMA_ADPCM_nib.patch} | 0 ...x-a-buffer-overwrite-in-IMA_ADPCM_de.patch} | 0 ...E-2019-7576-Fix-buffer-overreads-in-.patch} | 0 ...x-a-buffer-overread-in-InitIMA_ADPCM.patch} | 0 ...E-2019-7636-Refuse-loading-BMP-image.patch} | 0 ...x-in-integer-overflow-in-SDL_Calcula.patch} | 0 ...ject-BMP-images-with-pixel-colors-ou.patch} | 0 ...2.15-Reject-2-3-5-6-7-bpp-BMP-images.patch} | 0 ...x-a-buffer-overread-in-MS_ADPCM_nibb.patch} | 0 ...atch => 0013-Debian-X11-keytounicode.patch} | 0 ...X11-sym.patch => 0014-Debian-X11-sym.patch} | 0 ...mmx.patch => 0015-Debian-disable-mmx.patch} | 0 ...> 0016-Debian-fix-joystick-misc-axes.patch} | 0 ...ch => 0017-Debian-fix-mouse-clicking.patch} | 0 ...sizing.patch => 0018-Debian-resizing.patch} | 0 .../sdl+32/autobuild/patches/series | 18 ------------------ runtime-optenv32/sdl+32/spec | 2 +- 22 files changed, 9 insertions(+), 35 deletions(-) delete mode 100644 runtime-optenv32/sdl+32/autobuild/build rename runtime-optenv32/sdl+32/autobuild/patches/{SDL-1.2.15-CVE-2019-7577-Fix-a-buffer-overread-in-MS_ADPCM_deco.patch => 0001-Debian-SDL-1.2.15-CVE-2019-7577-Fix-a-buffer-overread-in-MS_ADPCM_deco.patch} (100%) rename runtime-optenv32/sdl+32/autobuild/patches/{SDL-1.2.15-CVE-2019-7575-Fix-a-buffer-overwrite-in-MS_ADPCM_dec.patch => 0002-Debian-SDL-1.2.15-CVE-2019-7575-Fix-a-buffer-overwrite-in-MS_ADPCM_dec.patch} (100%) rename runtime-optenv32/sdl+32/autobuild/patches/{SDL-1.2.15-CVE-2019-7574-Fix-a-buffer-overread-in-IMA_ADPCM_dec.patch => 0003-Debian-SDL-1.2.15-CVE-2019-7574-Fix-a-buffer-overread-in-IMA_ADPCM_dec.patch} (100%) rename runtime-optenv32/sdl+32/autobuild/patches/{SDL-1.2.15-CVE-2019-7572-Fix-a-buffer-overread-in-IMA_ADPCM_nib.patch => 0004-Debian-SDL-1.2.15-CVE-2019-7572-Fix-a-buffer-overread-in-IMA_ADPCM_nib.patch} (100%) rename runtime-optenv32/sdl+32/autobuild/patches/{SDL-1.2.15-CVE-2019-7572-Fix-a-buffer-overwrite-in-IMA_ADPCM_de.patch => 0005-Debian-SDL-1.2.15-CVE-2019-7572-Fix-a-buffer-overwrite-in-IMA_ADPCM_de.patch} (100%) rename runtime-optenv32/sdl+32/autobuild/patches/{SDL-1.2.15-CVE-2019-7573-CVE-2019-7576-Fix-buffer-overreads-in-.patch => 0006-Debian-SDL-1.2.15-CVE-2019-7573-CVE-2019-7576-Fix-buffer-overreads-in-.patch} (100%) rename runtime-optenv32/sdl+32/autobuild/patches/{SDL-1.2.15-CVE-2019-7578-Fix-a-buffer-overread-in-InitIMA_ADPCM.patch => 0007-Debian-SDL-1.2.15-CVE-2019-7578-Fix-a-buffer-overread-in-InitIMA_ADPCM.patch} (100%) rename runtime-optenv32/sdl+32/autobuild/patches/{SDL-1.2.15-CVE-2019-7638-CVE-2019-7636-Refuse-loading-BMP-image.patch => 0008-Debian-SDL-1.2.15-CVE-2019-7638-CVE-2019-7636-Refuse-loading-BMP-image.patch} (100%) rename runtime-optenv32/sdl+32/autobuild/patches/{SDL-1.2.15-CVE-2019-7637-Fix-in-integer-overflow-in-SDL_Calcula.patch => 0009-Debian-SDL-1.2.15-CVE-2019-7637-Fix-in-integer-overflow-in-SDL_Calcula.patch} (100%) rename runtime-optenv32/sdl+32/autobuild/patches/{SDL-1.2.15-CVE-2019-7635-Reject-BMP-images-with-pixel-colors-ou.patch => 0010-Debian-SDL-1.2.15-CVE-2019-7635-Reject-BMP-images-with-pixel-colors-ou.patch} (100%) rename runtime-optenv32/sdl+32/autobuild/patches/{SDL-1.2.15-Reject-2-3-5-6-7-bpp-BMP-images.patch => 0011-Debian-SDL-1.2.15-Reject-2-3-5-6-7-bpp-BMP-images.patch} (100%) rename runtime-optenv32/sdl+32/autobuild/patches/{SDL-1.2.15-CVE-2019-7577-Fix-a-buffer-overread-in-MS_ADPCM_nibb.patch => 0012-Debian-SDL-1.2.15-CVE-2019-7577-Fix-a-buffer-overread-in-MS_ADPCM_nibb.patch} (100%) rename runtime-optenv32/sdl+32/autobuild/patches/{X11-keytounicode.patch => 0013-Debian-X11-keytounicode.patch} (100%) rename runtime-optenv32/sdl+32/autobuild/patches/{X11-sym.patch => 0014-Debian-X11-sym.patch} (100%) rename runtime-optenv32/sdl+32/autobuild/patches/{disable-mmx.patch => 0015-Debian-disable-mmx.patch} (100%) rename runtime-optenv32/sdl+32/autobuild/patches/{fix-joystick-misc-axes.patch => 0016-Debian-fix-joystick-misc-axes.patch} (100%) rename runtime-optenv32/sdl+32/autobuild/patches/{fix-mouse-clicking.patch => 0017-Debian-fix-mouse-clicking.patch} (100%) rename runtime-optenv32/sdl+32/autobuild/patches/{resizing.patch => 0018-Debian-resizing.patch} (100%) delete mode 100644 runtime-optenv32/sdl+32/autobuild/patches/series diff --git a/runtime-optenv32/sdl+32/autobuild/build b/runtime-optenv32/sdl+32/autobuild/build deleted file mode 100644 index b1c766ab39f..00000000000 --- a/runtime-optenv32/sdl+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -./configure --enable-shared --prefix=/opt/32 \ - --disable-static ${AUTOTOOLS_AFTER} \ - LDFLAGS="${LDFLAGS} -L/opt/32/lib" \ - CC=i686-pc-linux-gnu-gcc \ - CXX=i686-pc-linux-gnu-g++ \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make DESTDIR=$PKGDIR install - -rm -rf $PKGDIR/opt/32/share diff --git a/runtime-optenv32/sdl+32/autobuild/defines b/runtime-optenv32/sdl+32/autobuild/defines index 346d379dfde..16ed2845018 100644 --- a/runtime-optenv32/sdl+32/autobuild/defines +++ b/runtime-optenv32/sdl+32/autobuild/defines @@ -1,9 +1,13 @@ PKGNAME=sdl+32 -PKGDES="Simple Directmedia Layer" PKGSEC=libs PKGDEP="x11-lib+32 alsa-lib+32" -BUILDDEP="32subsystem" +BUILDDEP="devel-base+32 nasm" +PKGDES="Simple Directmedia Layer (32-bit x86 runtime)" + +AUTOTOOLS_AFTER=( + '--enable-alsa' + '--with-x' +) -AUTOTOOLS_AFTER="--disable-nasm --enable-alsa --with-x" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/sdl+32/autobuild/patches/SDL-1.2.15-CVE-2019-7577-Fix-a-buffer-overread-in-MS_ADPCM_deco.patch b/runtime-optenv32/sdl+32/autobuild/patches/0001-Debian-SDL-1.2.15-CVE-2019-7577-Fix-a-buffer-overread-in-MS_ADPCM_deco.patch similarity index 100% rename from runtime-optenv32/sdl+32/autobuild/patches/SDL-1.2.15-CVE-2019-7577-Fix-a-buffer-overread-in-MS_ADPCM_deco.patch rename to runtime-optenv32/sdl+32/autobuild/patches/0001-Debian-SDL-1.2.15-CVE-2019-7577-Fix-a-buffer-overread-in-MS_ADPCM_deco.patch diff --git a/runtime-optenv32/sdl+32/autobuild/patches/SDL-1.2.15-CVE-2019-7575-Fix-a-buffer-overwrite-in-MS_ADPCM_dec.patch b/runtime-optenv32/sdl+32/autobuild/patches/0002-Debian-SDL-1.2.15-CVE-2019-7575-Fix-a-buffer-overwrite-in-MS_ADPCM_dec.patch similarity index 100% rename from runtime-optenv32/sdl+32/autobuild/patches/SDL-1.2.15-CVE-2019-7575-Fix-a-buffer-overwrite-in-MS_ADPCM_dec.patch rename to runtime-optenv32/sdl+32/autobuild/patches/0002-Debian-SDL-1.2.15-CVE-2019-7575-Fix-a-buffer-overwrite-in-MS_ADPCM_dec.patch diff --git a/runtime-optenv32/sdl+32/autobuild/patches/SDL-1.2.15-CVE-2019-7574-Fix-a-buffer-overread-in-IMA_ADPCM_dec.patch b/runtime-optenv32/sdl+32/autobuild/patches/0003-Debian-SDL-1.2.15-CVE-2019-7574-Fix-a-buffer-overread-in-IMA_ADPCM_dec.patch similarity index 100% rename from runtime-optenv32/sdl+32/autobuild/patches/SDL-1.2.15-CVE-2019-7574-Fix-a-buffer-overread-in-IMA_ADPCM_dec.patch rename to runtime-optenv32/sdl+32/autobuild/patches/0003-Debian-SDL-1.2.15-CVE-2019-7574-Fix-a-buffer-overread-in-IMA_ADPCM_dec.patch diff --git a/runtime-optenv32/sdl+32/autobuild/patches/SDL-1.2.15-CVE-2019-7572-Fix-a-buffer-overread-in-IMA_ADPCM_nib.patch b/runtime-optenv32/sdl+32/autobuild/patches/0004-Debian-SDL-1.2.15-CVE-2019-7572-Fix-a-buffer-overread-in-IMA_ADPCM_nib.patch similarity index 100% rename from runtime-optenv32/sdl+32/autobuild/patches/SDL-1.2.15-CVE-2019-7572-Fix-a-buffer-overread-in-IMA_ADPCM_nib.patch rename to runtime-optenv32/sdl+32/autobuild/patches/0004-Debian-SDL-1.2.15-CVE-2019-7572-Fix-a-buffer-overread-in-IMA_ADPCM_nib.patch diff --git a/runtime-optenv32/sdl+32/autobuild/patches/SDL-1.2.15-CVE-2019-7572-Fix-a-buffer-overwrite-in-IMA_ADPCM_de.patch b/runtime-optenv32/sdl+32/autobuild/patches/0005-Debian-SDL-1.2.15-CVE-2019-7572-Fix-a-buffer-overwrite-in-IMA_ADPCM_de.patch similarity index 100% rename from runtime-optenv32/sdl+32/autobuild/patches/SDL-1.2.15-CVE-2019-7572-Fix-a-buffer-overwrite-in-IMA_ADPCM_de.patch rename to runtime-optenv32/sdl+32/autobuild/patches/0005-Debian-SDL-1.2.15-CVE-2019-7572-Fix-a-buffer-overwrite-in-IMA_ADPCM_de.patch diff --git a/runtime-optenv32/sdl+32/autobuild/patches/SDL-1.2.15-CVE-2019-7573-CVE-2019-7576-Fix-buffer-overreads-in-.patch b/runtime-optenv32/sdl+32/autobuild/patches/0006-Debian-SDL-1.2.15-CVE-2019-7573-CVE-2019-7576-Fix-buffer-overreads-in-.patch similarity index 100% rename from runtime-optenv32/sdl+32/autobuild/patches/SDL-1.2.15-CVE-2019-7573-CVE-2019-7576-Fix-buffer-overreads-in-.patch rename to runtime-optenv32/sdl+32/autobuild/patches/0006-Debian-SDL-1.2.15-CVE-2019-7573-CVE-2019-7576-Fix-buffer-overreads-in-.patch diff --git a/runtime-optenv32/sdl+32/autobuild/patches/SDL-1.2.15-CVE-2019-7578-Fix-a-buffer-overread-in-InitIMA_ADPCM.patch b/runtime-optenv32/sdl+32/autobuild/patches/0007-Debian-SDL-1.2.15-CVE-2019-7578-Fix-a-buffer-overread-in-InitIMA_ADPCM.patch similarity index 100% rename from runtime-optenv32/sdl+32/autobuild/patches/SDL-1.2.15-CVE-2019-7578-Fix-a-buffer-overread-in-InitIMA_ADPCM.patch rename to runtime-optenv32/sdl+32/autobuild/patches/0007-Debian-SDL-1.2.15-CVE-2019-7578-Fix-a-buffer-overread-in-InitIMA_ADPCM.patch diff --git a/runtime-optenv32/sdl+32/autobuild/patches/SDL-1.2.15-CVE-2019-7638-CVE-2019-7636-Refuse-loading-BMP-image.patch b/runtime-optenv32/sdl+32/autobuild/patches/0008-Debian-SDL-1.2.15-CVE-2019-7638-CVE-2019-7636-Refuse-loading-BMP-image.patch similarity index 100% rename from runtime-optenv32/sdl+32/autobuild/patches/SDL-1.2.15-CVE-2019-7638-CVE-2019-7636-Refuse-loading-BMP-image.patch rename to runtime-optenv32/sdl+32/autobuild/patches/0008-Debian-SDL-1.2.15-CVE-2019-7638-CVE-2019-7636-Refuse-loading-BMP-image.patch diff --git a/runtime-optenv32/sdl+32/autobuild/patches/SDL-1.2.15-CVE-2019-7637-Fix-in-integer-overflow-in-SDL_Calcula.patch b/runtime-optenv32/sdl+32/autobuild/patches/0009-Debian-SDL-1.2.15-CVE-2019-7637-Fix-in-integer-overflow-in-SDL_Calcula.patch similarity index 100% rename from runtime-optenv32/sdl+32/autobuild/patches/SDL-1.2.15-CVE-2019-7637-Fix-in-integer-overflow-in-SDL_Calcula.patch rename to runtime-optenv32/sdl+32/autobuild/patches/0009-Debian-SDL-1.2.15-CVE-2019-7637-Fix-in-integer-overflow-in-SDL_Calcula.patch diff --git a/runtime-optenv32/sdl+32/autobuild/patches/SDL-1.2.15-CVE-2019-7635-Reject-BMP-images-with-pixel-colors-ou.patch b/runtime-optenv32/sdl+32/autobuild/patches/0010-Debian-SDL-1.2.15-CVE-2019-7635-Reject-BMP-images-with-pixel-colors-ou.patch similarity index 100% rename from runtime-optenv32/sdl+32/autobuild/patches/SDL-1.2.15-CVE-2019-7635-Reject-BMP-images-with-pixel-colors-ou.patch rename to runtime-optenv32/sdl+32/autobuild/patches/0010-Debian-SDL-1.2.15-CVE-2019-7635-Reject-BMP-images-with-pixel-colors-ou.patch diff --git a/runtime-optenv32/sdl+32/autobuild/patches/SDL-1.2.15-Reject-2-3-5-6-7-bpp-BMP-images.patch b/runtime-optenv32/sdl+32/autobuild/patches/0011-Debian-SDL-1.2.15-Reject-2-3-5-6-7-bpp-BMP-images.patch similarity index 100% rename from runtime-optenv32/sdl+32/autobuild/patches/SDL-1.2.15-Reject-2-3-5-6-7-bpp-BMP-images.patch rename to runtime-optenv32/sdl+32/autobuild/patches/0011-Debian-SDL-1.2.15-Reject-2-3-5-6-7-bpp-BMP-images.patch diff --git a/runtime-optenv32/sdl+32/autobuild/patches/SDL-1.2.15-CVE-2019-7577-Fix-a-buffer-overread-in-MS_ADPCM_nibb.patch b/runtime-optenv32/sdl+32/autobuild/patches/0012-Debian-SDL-1.2.15-CVE-2019-7577-Fix-a-buffer-overread-in-MS_ADPCM_nibb.patch similarity index 100% rename from runtime-optenv32/sdl+32/autobuild/patches/SDL-1.2.15-CVE-2019-7577-Fix-a-buffer-overread-in-MS_ADPCM_nibb.patch rename to runtime-optenv32/sdl+32/autobuild/patches/0012-Debian-SDL-1.2.15-CVE-2019-7577-Fix-a-buffer-overread-in-MS_ADPCM_nibb.patch diff --git a/runtime-optenv32/sdl+32/autobuild/patches/X11-keytounicode.patch b/runtime-optenv32/sdl+32/autobuild/patches/0013-Debian-X11-keytounicode.patch similarity index 100% rename from runtime-optenv32/sdl+32/autobuild/patches/X11-keytounicode.patch rename to runtime-optenv32/sdl+32/autobuild/patches/0013-Debian-X11-keytounicode.patch diff --git a/runtime-optenv32/sdl+32/autobuild/patches/X11-sym.patch b/runtime-optenv32/sdl+32/autobuild/patches/0014-Debian-X11-sym.patch similarity index 100% rename from runtime-optenv32/sdl+32/autobuild/patches/X11-sym.patch rename to runtime-optenv32/sdl+32/autobuild/patches/0014-Debian-X11-sym.patch diff --git a/runtime-optenv32/sdl+32/autobuild/patches/disable-mmx.patch b/runtime-optenv32/sdl+32/autobuild/patches/0015-Debian-disable-mmx.patch similarity index 100% rename from runtime-optenv32/sdl+32/autobuild/patches/disable-mmx.patch rename to runtime-optenv32/sdl+32/autobuild/patches/0015-Debian-disable-mmx.patch diff --git a/runtime-optenv32/sdl+32/autobuild/patches/fix-joystick-misc-axes.patch b/runtime-optenv32/sdl+32/autobuild/patches/0016-Debian-fix-joystick-misc-axes.patch similarity index 100% rename from runtime-optenv32/sdl+32/autobuild/patches/fix-joystick-misc-axes.patch rename to runtime-optenv32/sdl+32/autobuild/patches/0016-Debian-fix-joystick-misc-axes.patch diff --git a/runtime-optenv32/sdl+32/autobuild/patches/fix-mouse-clicking.patch b/runtime-optenv32/sdl+32/autobuild/patches/0017-Debian-fix-mouse-clicking.patch similarity index 100% rename from runtime-optenv32/sdl+32/autobuild/patches/fix-mouse-clicking.patch rename to runtime-optenv32/sdl+32/autobuild/patches/0017-Debian-fix-mouse-clicking.patch diff --git a/runtime-optenv32/sdl+32/autobuild/patches/resizing.patch b/runtime-optenv32/sdl+32/autobuild/patches/0018-Debian-resizing.patch similarity index 100% rename from runtime-optenv32/sdl+32/autobuild/patches/resizing.patch rename to runtime-optenv32/sdl+32/autobuild/patches/0018-Debian-resizing.patch diff --git a/runtime-optenv32/sdl+32/autobuild/patches/series b/runtime-optenv32/sdl+32/autobuild/patches/series deleted file mode 100644 index 961b2899020..00000000000 --- a/runtime-optenv32/sdl+32/autobuild/patches/series +++ /dev/null @@ -1,18 +0,0 @@ -SDL-1.2.15-CVE-2019-7577-Fix-a-buffer-overread-in-MS_ADPCM_deco.patch -SDL-1.2.15-CVE-2019-7575-Fix-a-buffer-overwrite-in-MS_ADPCM_dec.patch -SDL-1.2.15-CVE-2019-7574-Fix-a-buffer-overread-in-IMA_ADPCM_dec.patch -SDL-1.2.15-CVE-2019-7572-Fix-a-buffer-overread-in-IMA_ADPCM_nib.patch -SDL-1.2.15-CVE-2019-7572-Fix-a-buffer-overwrite-in-IMA_ADPCM_de.patch -SDL-1.2.15-CVE-2019-7573-CVE-2019-7576-Fix-buffer-overreads-in-.patch -SDL-1.2.15-CVE-2019-7578-Fix-a-buffer-overread-in-InitIMA_ADPCM.patch -SDL-1.2.15-CVE-2019-7638-CVE-2019-7636-Refuse-loading-BMP-image.patch -SDL-1.2.15-CVE-2019-7637-Fix-in-integer-overflow-in-SDL_Calcula.patch -SDL-1.2.15-CVE-2019-7635-Reject-BMP-images-with-pixel-colors-ou.patch -SDL-1.2.15-Reject-2-3-5-6-7-bpp-BMP-images.patch -SDL-1.2.15-CVE-2019-7577-Fix-a-buffer-overread-in-MS_ADPCM_nibb.patch -X11-keytounicode.patch -X11-sym.patch -disable-mmx.patch -fix-joystick-misc-axes.patch -fix-mouse-clicking.patch -resizing.patch diff --git a/runtime-optenv32/sdl+32/spec b/runtime-optenv32/sdl+32/spec index 387acd4df50..f6c48796702 100644 --- a/runtime-optenv32/sdl+32/spec +++ b/runtime-optenv32/sdl+32/spec @@ -1,5 +1,5 @@ VER=1.2.15 -REL=8 +REL=9 SRCS="tbl::https://libsdl.org/release/SDL-$VER.tar.gz" CHKSUMS="sha256::d6d316a793e5e348155f0dd93b979798933fb98aa1edebcc108829d6474aad00" CHKUPDATE="anitya::id=4777" From 3f80a49760b3abe64638142780bf0e562fe92ed0 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 13:48:59 +0800 Subject: [PATCH 122/722] mjpegtools+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/mjpegtools+32/autobuild/beyond | 4 +++- runtime-optenv32/mjpegtools+32/autobuild/build | 12 ------------ runtime-optenv32/mjpegtools+32/autobuild/defines | 11 ++++++++--- runtime-optenv32/mjpegtools+32/autobuild/patch | 1 - runtime-optenv32/mjpegtools+32/spec | 2 +- 5 files changed, 12 insertions(+), 18 deletions(-) delete mode 100644 runtime-optenv32/mjpegtools+32/autobuild/build delete mode 100644 runtime-optenv32/mjpegtools+32/autobuild/patch diff --git a/runtime-optenv32/mjpegtools+32/autobuild/beyond b/runtime-optenv32/mjpegtools+32/autobuild/beyond index 271d3f35510..e6dff3af997 100644 --- a/runtime-optenv32/mjpegtools+32/autobuild/beyond +++ b/runtime-optenv32/mjpegtools+32/autobuild/beyond @@ -1 +1,3 @@ -install -m644 mpeg2enc/mpeg2syntaxcodes.h "$PKGDIR"/opt/32/include/mjpegtools/mpeg2enc/ +abinfo "Installing mpeg2enc/mpeg2syntaxcodes.h ..." +install -Dvm644 "$SRCDIR"/mpeg2enc/mpeg2syntaxcodes.h \ + "$PKGDIR"/opt/32/include/mjpegtools/mpeg2enc/mpeg2syntaxcodes.h diff --git a/runtime-optenv32/mjpegtools+32/autobuild/build b/runtime-optenv32/mjpegtools+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/mjpegtools+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/mjpegtools+32/autobuild/defines b/runtime-optenv32/mjpegtools+32/autobuild/defines index e2838b7e9cb..752503e9955 100644 --- a/runtime-optenv32/mjpegtools+32/autobuild/defines +++ b/runtime-optenv32/mjpegtools+32/autobuild/defines @@ -1,8 +1,13 @@ PKGNAME=mjpegtools+32 PKGSEC=utils PKGDEP="libjpeg-turbo+32 libpng+32 sdl+32 libdv+32" -PKGDES="Tools for manipulating and playback of MPEG compressed media files (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="Tools for manipulating and playback of MPEG compressed media files (32-bit x86 runtime)" + +AUTOTOOLS_AFTER=( + '--enable-largefile' + '--without-gtk' +) -AUTOTOOLS_AFTER="--enable-largefile --without-gtk" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/mjpegtools+32/autobuild/patch b/runtime-optenv32/mjpegtools+32/autobuild/patch deleted file mode 100644 index 8af88ec0057..00000000000 --- a/runtime-optenv32/mjpegtools+32/autobuild/patch +++ /dev/null @@ -1 +0,0 @@ -sed -i -e '/ARCHFLAGS=/s:=.*:=:' configure diff --git a/runtime-optenv32/mjpegtools+32/spec b/runtime-optenv32/mjpegtools+32/spec index 19b723fc7d7..b6841ddce71 100644 --- a/runtime-optenv32/mjpegtools+32/spec +++ b/runtime-optenv32/mjpegtools+32/spec @@ -1,5 +1,5 @@ VER=2.1.0 +REL=3 SRCS="tbl::https://sourceforge.net/projects/mjpeg/files/mjpegtools/$VER/mjpegtools-$VER.tar.gz" CHKSUMS="sha256::864f143d7686377f8ab94d91283c696ebd906bf256b2eacc7e9fb4dddcedc407" -REL=2 CHKUPDATE="anitya::id=14612" From ee596ccf1ed09ff2d6dc0e5eb201b4951192d56a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 13:52:43 +0800 Subject: [PATCH 123/722] libwebp+32: update to 1.3.1 - Use optenv32 template. - Drop an outdated patch. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libwebp+32/autobuild/build | 12 ------------ runtime-optenv32/libwebp+32/autobuild/defines | 15 ++++++++++----- .../libwebp+32/autobuild/patches/giflib-5-1.patch | 13 ------------- runtime-optenv32/libwebp+32/spec | 5 ++--- 4 files changed, 12 insertions(+), 33 deletions(-) delete mode 100644 runtime-optenv32/libwebp+32/autobuild/build delete mode 100644 runtime-optenv32/libwebp+32/autobuild/patches/giflib-5-1.patch diff --git a/runtime-optenv32/libwebp+32/autobuild/build b/runtime-optenv32/libwebp+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/libwebp+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/libwebp+32/autobuild/defines b/runtime-optenv32/libwebp+32/autobuild/defines index bbabbfd9537..9c527d8f436 100644 --- a/runtime-optenv32/libwebp+32/autobuild/defines +++ b/runtime-optenv32/libwebp+32/autobuild/defines @@ -1,9 +1,14 @@ PKGNAME=libwebp+32 -PKGDES="Libraries and support programs to encode and decode images in WebP format (optenv32)" -PKGDEP="libjpeg-turbo+32 libpng+32 libtiff+32 giflib+32 freeglut+32" PKGSEC=libs +PKGDEP="libjpeg-turbo+32 libpng+32 libtiff+32 giflib+32 freeglut+32" +BUILDDEP="devel-base+32" +PKGDES="Libraries and support programs to encode and decode images in WebP format (32-bit x86 runtime)" + +AUTOTOOLS_AFTER=( + '--enable-libwebpmux' + '--enable-libwebpdemux' + '--enable-libwebpdecoder' +) -AUTOTOOLS_AFTER="--enable-experimental --enable-libwebpmux \ - --enable-libwebpdemux --enable-libwebpdecoder" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libwebp+32/autobuild/patches/giflib-5-1.patch b/runtime-optenv32/libwebp+32/autobuild/patches/giflib-5-1.patch deleted file mode 100644 index b0d3ea68657..00000000000 --- a/runtime-optenv32/libwebp+32/autobuild/patches/giflib-5-1.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -rupN a/examples/gif2webp.c b/examples/gif2webp.c ---- a/examples/gif2webp.c 2013-12-20 09:48:07.000000000 +0100 -+++ b/examples/gif2webp.c 2014-06-01 13:28:31.790564455 +0200 -@@ -644,7 +644,7 @@ int main(int argc, const char *argv[]) { - DisplayGifError(gif, gif_error); - } - if (gif != NULL) { -- DGifCloseFile(gif); -+ DGifCloseFile(gif, NULL); - } - - return !ok; - diff --git a/runtime-optenv32/libwebp+32/spec b/runtime-optenv32/libwebp+32/spec index b2ef8bf2c05..0d3e9d3b0f7 100644 --- a/runtime-optenv32/libwebp+32/spec +++ b/runtime-optenv32/libwebp+32/spec @@ -1,5 +1,4 @@ -VER=0.4.3 +VER=1.3.1 SRCS="tbl::http://downloads.webmproject.org/releases/webp/libwebp-$VER.tar.gz" -CHKSUMS="sha256::efbe0d58fda936f2ed99d0b837ed7087d064d6838931f282c4618d2a3f7390c4" -REL=2 +CHKSUMS="sha256::b3779627c2dfd31e3d8c4485962c2efe17785ef975e2be5c8c0c9e6cd3c4ef66" CHKUPDATE="anitya::id=1761" From 8690e017ab660cf0aa51213f6ff143403e4f805e Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 14:22:48 +0800 Subject: [PATCH 124/722] nettle+32: update to 3.10 - Use optenv32 template. - Improve PKGDES. --- runtime-optenv32/nettle+32/autobuild/beyond | 3 --- runtime-optenv32/nettle+32/autobuild/build | 8 -------- runtime-optenv32/nettle+32/autobuild/defines | 6 +++--- runtime-optenv32/nettle+32/spec | 4 ++-- 4 files changed, 5 insertions(+), 16 deletions(-) delete mode 100644 runtime-optenv32/nettle+32/autobuild/beyond delete mode 100644 runtime-optenv32/nettle+32/autobuild/build diff --git a/runtime-optenv32/nettle+32/autobuild/beyond b/runtime-optenv32/nettle+32/autobuild/beyond deleted file mode 100644 index bd5ce143784..00000000000 --- a/runtime-optenv32/nettle+32/autobuild/beyond +++ /dev/null @@ -1,3 +0,0 @@ -chmod 755 "$PKGDIR"/opt/32/lib/*.so* - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/nettle+32/autobuild/build b/runtime-optenv32/nettle+32/autobuild/build deleted file mode 100644 index 9db498f2772..00000000000 --- a/runtime-optenv32/nettle+32/autobuild/build +++ /dev/null @@ -1,8 +0,0 @@ -export PATH=/opt/32/bin:$PATH -export CC=/opt/32/bin/i686-pc-linux-gnu-gcc -CXX=/opt/32/bin/i686-pc-linux-gnu-g++ - -./configure --target=i686-pc-linux-gnu --host=i686-pc-linux-gnu \ - --build=i686-pc-linux-gnu --enable-shared --prefix=/opt/32 -make -make DESTDIR="$PKGDIR" install diff --git a/runtime-optenv32/nettle+32/autobuild/defines b/runtime-optenv32/nettle+32/autobuild/defines index 42229e4e1d1..b9a09ae029f 100644 --- a/runtime-optenv32/nettle+32/autobuild/defines +++ b/runtime-optenv32/nettle+32/autobuild/defines @@ -1,8 +1,8 @@ PKGNAME=nettle+32 -PKGDES="Nettle on 32subsystem" PKGSEC=libs PKGDEP="gmp+32" -BUILDDEP="32subsystem" +BUILDDEP="devel-base+32" +PKGDES="Low-level cryptographic library (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/nettle+32/spec b/runtime-optenv32/nettle+32/spec index bb7626beb9b..04e3ebf0bbd 100644 --- a/runtime-optenv32/nettle+32/spec +++ b/runtime-optenv32/nettle+32/spec @@ -1,4 +1,4 @@ -VER=3.7.2 +VER=3.10 SRCS="tbl::https://ftp.gnu.org/gnu/nettle/nettle-$VER.tar.gz" -CHKSUMS="sha256::8d2a604ef1cde4cd5fb77e422531ea25ad064679ff0adf956e78b3352e0ef162" +CHKSUMS="sha256::b4c518adb174e484cb4acea54118f02380c7133771e7e9beb98a0787194ee47c" CHKUPDATE="anitya::id=2073" From 1980e1228be7fd0e5322d0c70830d584621e6c09 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 15:28:54 +0800 Subject: [PATCH 125/722] zstd+32: new, 1.5.6 --- runtime-optenv32/zstd+32/autobuild/build | 15 +++++++++++++++ runtime-optenv32/zstd+32/autobuild/defines | 12 ++++++++++++ runtime-optenv32/zstd+32/spec | 4 ++++ 3 files changed, 31 insertions(+) create mode 100644 runtime-optenv32/zstd+32/autobuild/build create mode 100644 runtime-optenv32/zstd+32/autobuild/defines create mode 100644 runtime-optenv32/zstd+32/spec diff --git a/runtime-optenv32/zstd+32/autobuild/build b/runtime-optenv32/zstd+32/autobuild/build new file mode 100644 index 00000000000..e66a9e08f36 --- /dev/null +++ b/runtime-optenv32/zstd+32/autobuild/build @@ -0,0 +1,15 @@ +abinfo "Building zstd ..." +make + +abinfo "Installing zstd ..." +make install \ + DESTDIR="$PKGDIR" \ + PREFIX=/opt/32 + +abinfo "Building pzstd ..." +make -C "$SRCDIR"/contrib/pzstd + +abinfo "Installing pzstd ..." +make install -C contrib/pzstd \ + DESTDIR="$PKGDIR" \ + PREFIX=/opt/32 diff --git a/runtime-optenv32/zstd+32/autobuild/defines b/runtime-optenv32/zstd+32/autobuild/defines new file mode 100644 index 00000000000..ff63b475c5b --- /dev/null +++ b/runtime-optenv32/zstd+32/autobuild/defines @@ -0,0 +1,12 @@ +PKGNAME=zstd+32 +PKGSEC=utils +PKGDEP="glibc+32" +BUILDDEP="devel-base+32" +PKGDES="Zstandard - Fast real-time compression algorithm (32-bit x86 runtime)" + +AB_FLAGS_O3=1 +AB_FLAGS_SPECS=0 +AB_FLAGS_PIC=1 + +NOLTO=1 +ABHOST=optenv32 diff --git a/runtime-optenv32/zstd+32/spec b/runtime-optenv32/zstd+32/spec new file mode 100644 index 00000000000..aa990be7cde --- /dev/null +++ b/runtime-optenv32/zstd+32/spec @@ -0,0 +1,4 @@ +VER=1.5.6 +SRCS="git::commit=tags/v$VER::https://github.com/facebook/zstd" +CHKSUMS="SKIP" +CHKUPDATE="anitya::id=12083" From c3091eb3db074830c02b254315831e33a804eb9b Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 15:31:04 +0800 Subject: [PATCH 126/722] brotli+32: new, 1.1.0 --- runtime-optenv32/brotli+32/autobuild/defines | 10 ++++++++++ runtime-optenv32/brotli+32/spec | 4 ++++ 2 files changed, 14 insertions(+) create mode 100644 runtime-optenv32/brotli+32/autobuild/defines create mode 100644 runtime-optenv32/brotli+32/spec diff --git a/runtime-optenv32/brotli+32/autobuild/defines b/runtime-optenv32/brotli+32/autobuild/defines new file mode 100644 index 00000000000..54957014492 --- /dev/null +++ b/runtime-optenv32/brotli+32/autobuild/defines @@ -0,0 +1,10 @@ +PKGNAME=brotli+32 +PKGSEC=utils +PKGDEP="gcc+32" +BUILDDEP="devel-base+32" +PKGDES="Brotli compression library and utility (32-bit x86 runtime)" + +ABTYPE=cmakeninja + +NOLTO=1 +ABHOST=optenv32 diff --git a/runtime-optenv32/brotli+32/spec b/runtime-optenv32/brotli+32/spec new file mode 100644 index 00000000000..2c0ea20c9be --- /dev/null +++ b/runtime-optenv32/brotli+32/spec @@ -0,0 +1,4 @@ +VER=1.1.0 +SRCS="git::commit=tags/v$VER::https://github.com/google/brotli" +CHKSUMS="SKIP" +CHKUPDATE="anitya::id=15235" From 7a700c9c0fbfa612dde3ab4ebdf2be07f73b4ad0 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 15:35:31 +0800 Subject: [PATCH 127/722] gnutls+32: update to 3.8.7 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/gnutls+32/autobuild/build | 15 ------------ runtime-optenv32/gnutls+32/autobuild/defines | 24 ++++++++++++++++---- runtime-optenv32/gnutls+32/spec | 5 ++-- 3 files changed, 21 insertions(+), 23 deletions(-) delete mode 100644 runtime-optenv32/gnutls+32/autobuild/build diff --git a/runtime-optenv32/gnutls+32/autobuild/build b/runtime-optenv32/gnutls+32/autobuild/build deleted file mode 100644 index 8a03700628f..00000000000 --- a/runtime-optenv32/gnutls+32/autobuild/build +++ /dev/null @@ -1,15 +0,0 @@ -export PATH=/opt/32/bin:$PATH -CC=i686-pc-linux-gnu-gcc -CXX=i686-pc-linux-gnu-g++ -CCAS=i686-pc-linux-gnu-as - -./configure --host=i686-pc-linux-gnu --build=i686-pc-linux-gnu \ - --enable-shared --prefix=/opt/32 --with-included-libtasn1 \ - --without-p11-kit \ - --with-default-trust-store-file=/etc/ssl/ca-bundle.crt \ - --without-tpm --disable-crywrap --enable-local-libopts \ - --with-included-unistring --disable-guile --disable-tools -make -make DESTDIR="$PKGDIR" install - -rm -rf "$PKGDIR"/opt/32/{share,bin} diff --git a/runtime-optenv32/gnutls+32/autobuild/defines b/runtime-optenv32/gnutls+32/autobuild/defines index 0b86fe99754..5201292efaa 100644 --- a/runtime-optenv32/gnutls+32/autobuild/defines +++ b/runtime-optenv32/gnutls+32/autobuild/defines @@ -1,10 +1,24 @@ PKGNAME=gnutls+32 -PKGDES="Library that provides a secure layer over a reliable transport layer (optenv32)" PKGSEC=libs -PKGDEP="nettle+32" -BUILDDEP="32subsystem" +PKGDEP="brotli+32 nettle+32 zstd+32" +BUILDDEP="devel-base+32 gtk-doc python-3" +PKGDES="Library that provides a secure layer over a reliable transport layer (32-bit x86 runtime)" + +# FIXME: Missing some 32-bit runtime libraries, to add later. +AUTOTOOLS_AFTER=( + '--with-included-libtasn1' + '--without-p11-kit' + '--with-default-trust-store-file=/etc/ssl/ca-bundle.crt' + '--without-tpm' + '--with-included-unistring' + '--disable-tools' + '--without-idn' + '--without-tpm' + '--without-tpm2' + 'PYTHON=/usr/bin/python3' +) PKGBREAK="wine<=1.7.54" + NOLTO=1 -ABHOST=noarch -NOPARALLEL=1 +ABHOST=optenv32 diff --git a/runtime-optenv32/gnutls+32/spec b/runtime-optenv32/gnutls+32/spec index bee864212e7..b6530d84c20 100644 --- a/runtime-optenv32/gnutls+32/spec +++ b/runtime-optenv32/gnutls+32/spec @@ -1,5 +1,4 @@ -VER=3.6.15 -REL=1 +VER=3.8.7 SRCS="tbl::https://www.gnupg.org/ftp/gcrypt/gnutls/v${VER:0:3}/gnutls-$VER.tar.xz" -CHKSUMS="sha256::0ea8c3283de8d8335d7ae338ef27c53a916f15f382753b174c18b45ffd481558" +CHKSUMS="sha256::fe302f2b6ad5a564bcb3678eb61616413ed5277aaf8e7bf7cdb9a95a18d9f477" CHKUPDATE="anitya::id=1221" From 53dcb799b5f742a5fa78ecfcae1fc3ff2ea6641d Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 15:46:55 +0800 Subject: [PATCH 128/722] openssl+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/openssl+32/autobuild/defines | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/runtime-optenv32/openssl+32/autobuild/defines b/runtime-optenv32/openssl+32/autobuild/defines index 946ac7d444e..ddbdf7af1a7 100644 --- a/runtime-optenv32/openssl+32/autobuild/defines +++ b/runtime-optenv32/openssl+32/autobuild/defines @@ -1,11 +1,10 @@ PKGNAME=openssl+32 -PKGDEP="glibc+32 zlib+32 ca-certs" PKGSEC=libs -PKGDES="Open Source toolkit for Secure Sockets Layer and Transport Layer Security (optenv32)" -BUILDDEP="linux+api+32 32subsystem" +PKGDEP="glibc+32 zlib+32 ca-certs" +BUILDDEP="devel-base+32" +PKGDES="Open Source toolkit for Secure Sockets Layer and Transport Layer Security (32-bit x86 runtime)" -NOPARALLEL=1 -ABHOST=noarch +ABHOST=optenv32 PKGBREAK=""" curl+32<=8.4.0 From fa3fd2153578ba4c65e8084c6584459ea55caf69 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 16:00:00 +0800 Subject: [PATCH 129/722] curl+32: improve packaging - Use multi-ABI build per the mainline package. - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/curl+32/autobuild/build | 100 ++++++++++++++++----- runtime-optenv32/curl+32/autobuild/defines | 26 +++++- runtime-optenv32/curl+32/spec | 1 + 3 files changed, 102 insertions(+), 25 deletions(-) diff --git a/runtime-optenv32/curl+32/autobuild/build b/runtime-optenv32/curl+32/autobuild/build index ab8d95a2405..d15be036236 100644 --- a/runtime-optenv32/curl+32/autobuild/build +++ b/runtime-optenv32/curl+32/autobuild/build @@ -1,24 +1,82 @@ -export PATH=/opt/32/bin:$PATH -export CFLAGS+=" -I/opt/32/include" -export LDFLAGS+=" -L/opt/32/lib" - -# FIXME: enable libpsl support -# https://daniel.haxx.se/blog/2024/01/10/psl-in-curl/ -./configure --prefix=/opt/32 --exec-prefix=/opt/32 \ - --libdir=/opt/32/lib --bindir=/opt/32/bin --sbindir=/opt/32/bin \ - --disable-static \ - --disable-ldap --disable-ldaps --enable-ipv6 \ - --enable-manual --enable-versioned-symbols \ - --enable-threaded-resolver --with-gssapi \ - --without-libidn --with-openssl --with-random=/dev/urandom \ - --with-ca-bundle=/etc/ssl/ca-bundle.crt \ - --without-libpsl \ - CC=i686-aosc-linux-gnu-gcc CXX=i686-aosc-linux-gnu-g++ \ - PKG_CONFIG_PATH=/opt/32/lib/pkconfig +abinfo "Configuring cURL (OpenSSL, with versioned symbols) ..." +"$SRCDIR"/configure \ + ${AUTOTOOLS_DEF[@]} ${AUTOTOOLS_AFTER[@]} ${AUTOTOOLS_TARGET[@]} \ + --with-openssl \ + --with-openssl-quic \ + --without-gnutls \ + --without-nss \ + --enable-versioned-symbols +abinfo "Building cURL (OpenSSL, with versioned symbols) ..." make -make install DESTDIR="$PKGDIR" +abinfo "Installing cURL (OpenSSL, with versioned symbols) ..." +make install \ + DESTDIR="$PKGDIR" + +abinfo "Cleaning up ..." +make distclean + +abinfo "Configuring cURL (OpenSSL, without versioned symbols) ..." +"$SRCDIR"/configure \ + ${AUTOTOOLS_DEF[@]} ${AUTOTOOLS_AFTER[@]} ${AUTOTOOLS_TARGET[@]} \ + --with-openssl \ + --with-openssl-quic \ + --without-gnutls \ + --without-nss \ + --disable-versioned-symbols +abinfo "Building cURL (OpenSSL, without versioned symbols) ..." +make -C "$SRCDIR"/lib +abinfo "Renaming unversioned libcurl as libcurl-compat ..." +patchelf \ + --set-soname 'libcurl-compat.so.4' \ + "$SRCDIR"/lib/.libs/libcurl.so +abinfo "Installing cURL (OpenSSL, without versioned symbols) ..." +make install \ + DESTDIR="$SRCDIR"/unversioned \ + -C "$SRCDIR"/lib + +abinfo "Creating symlinks for unversioned libcurl ..." +mv -v "$SRCDIR"/unversioned/opt/32/lib/libcurl{,-compat}.so.4.8.0 +rm -v "$SRCDIR"/unversioned/opt/32/lib/libcurl.{a,so}* +for version in 3 4.0.0 4.1.0 4.2.0 4.3.0 4.4.0 4.5.0 4.6.0 4.7.0; do + ln -sv libcurl-compat.so.4.8.0 \ + "$SRCDIR"/unversioned/opt/32/lib/libcurl.so.${version} + ln -sv libcurl-compat.so.4.8.0 \ + "$SRCDIR"/unversioned/opt/32/lib/libcurl-compat.so.${version} +done + +abinfo "Cleaning up ..." +make distclean + +abinfo "Configuring cURL (GnuTLS, without versioned symbols) ..." +"$SRCDIR"/configure \ + ${AUTOTOOLS_DEF[@]} ${AUTOTOOLS_AFTER[@]} ${AUTOTOOLS_TARGET[@]} \ + --without-openssl \ + --with-gnutls \ + --without-nss \ + --disable-versioned-symbols +abinfo "Building cURL (GnuTLS, without versioned symbols) ..." +make -C "$SRCDIR"/lib +abinfo "Renaming libcurl with GnuTLS as libcurl-gnutls ..." +patchelf \ + --set-soname 'libcurl-gnutls.so.4' \ + "$SRCDIR"/lib/.libs/libcurl.so +abinfo "Installing cURL (GnuTLS, without versioned symbols) ..." +make install \ + DESTDIR="$SRCDIR"/gnutls \ + -C "$SRCDIR"/lib -# FIXME: move to /opt/32, hard-coded /usr/local -sed -e 's|/usr/local|/opt/32|g' -i "$PKGDIR"/opt/32/lib/pkgconfig/*.pc +abinfo "Creating symlinks for unversioned libcurl (GnuTLS) ..." +mv -v "$SRCDIR"/gnutls/opt/32/lib/libcurl{,-gnutls}.so.4.8.0 +rm -v "$SRCDIR"/gnutls/opt/32/lib/libcurl.{a,so}* +ln -sv libcurl-gnutls.so.4 \ + "$SRCDIR"/gnutls/opt/32/lib/libcurl-gnutls.so +for version in 3 4 4.0.0 4.1.0 4.2.0 4.3.0 4.4.0 4.5.0 4.6.0 4.7.0; do + ln -sv libcurl-gnutls.so.4.8.0 \ + "$SRCDIR"/gnutls/opt/32/lib/libcurl-gnutls.so.${version} +done -rm -rf $PKGDIR/opt/32/{bin,share} +abinfo "Cobbling all variants ..." +for i in unversioned gnutls; do + cp -av "$SRCDIR"/"$i"/* \ + "$PKGDIR"/ +done diff --git a/runtime-optenv32/curl+32/autobuild/defines b/runtime-optenv32/curl+32/autobuild/defines index 0b164ab70df..0ac21a247c9 100644 --- a/runtime-optenv32/curl+32/autobuild/defines +++ b/runtime-optenv32/curl+32/autobuild/defines @@ -1,8 +1,26 @@ PKGNAME=curl+32 PKGSEC=utils -PKGDEP="ca-certs krb5+32 libssh2+32 openssl+32 zlib+32" -BUILDDEP="32subsystem" -PKGDES="A URL retrieval utility and library (optenv32, libraries only)" +PKGDEP="ca-certs gnutls+32 krb5+32 libssh2+32 openssl+32 rtmpdump+32 zlib+32" +BUILDDEP="devel-base+32 patchelf" +PKGDES="A URL retrieval utility and library (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 + +# FIXME: Missing 32-bit packages for some dependencies. +AUTOTOOLS_AFTER=( + '--mandir=/opt/32/share/man' + '--disable-ldap' + '--disable-ldaps' + '--enable-ipv6' + '--enable-manual' + '--enable-threaded-resolver' + '--with-gssapi' + '--with-libidn2' + '--with-libssh2' + '--without-brotli' + '--with-librtmp' + '--without-libpsl' + '--with-random=/dev/urandom' + '--with-ca-bundle=/etc/ssl/ca-bundle.crt' +) diff --git a/runtime-optenv32/curl+32/spec b/runtime-optenv32/curl+32/spec index 736b38c1257..d550e75361e 100644 --- a/runtime-optenv32/curl+32/spec +++ b/runtime-optenv32/curl+32/spec @@ -1,4 +1,5 @@ VER=8.11.0 +REL=1 SRCS="tbl::https://curl.se/download/curl-$VER.tar.xz" CHKSUMS="sha256::db59cf0d671ca6e7f5c2c5ec177084a33a79e04c97e71cf183a5cdea235054eb" CHKUPDATE="anitya::id=381" From 3957769a163263f5a9cf234872ce374cbf016764 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 16:04:13 +0800 Subject: [PATCH 130/722] libofa+32: improve packaging - Use optenv32 template. - Sort patch series with patch-series-rename. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libofa+32/autobuild/build | 12 ------------ runtime-optenv32/libofa+32/autobuild/defines | 8 ++++++-- .../{01_gcc41.diff => 0001-Debian-01_gcc41.diff} | 0 ...le-open.diff => 0002-Debian-02_example-open.diff} | 0 ...pe.diff => 0003-Debian-03_example-size_type.diff} | 0 ...-deps.diff => 0004-Debian-04_libofa.pc-deps.diff} | 0 .../{05_gcc43.diff => 0005-Debian-05_gcc43.diff} | 0 .../{06_gcc44.diff => 0006-Debian-06_gcc44.diff} | 0 .../{fix_ftbfs.diff => 0007-Debian-fix_ftbfs.diff} | 0 ...gcc4.7.diff => 0008-Debian-fix-ftbfs-gcc4.7.diff} | 0 .../{07_libltdl.diff => 0009-Debian-07_libltdl.diff} | 0 runtime-optenv32/libofa+32/autobuild/patches/series | 9 --------- runtime-optenv32/libofa+32/autobuild/prepare | 1 - runtime-optenv32/libofa+32/spec | 2 +- 14 files changed, 7 insertions(+), 25 deletions(-) delete mode 100644 runtime-optenv32/libofa+32/autobuild/build rename runtime-optenv32/libofa+32/autobuild/patches/{01_gcc41.diff => 0001-Debian-01_gcc41.diff} (100%) rename runtime-optenv32/libofa+32/autobuild/patches/{02_example-open.diff => 0002-Debian-02_example-open.diff} (100%) rename runtime-optenv32/libofa+32/autobuild/patches/{03_example-size_type.diff => 0003-Debian-03_example-size_type.diff} (100%) rename runtime-optenv32/libofa+32/autobuild/patches/{04_libofa.pc-deps.diff => 0004-Debian-04_libofa.pc-deps.diff} (100%) rename runtime-optenv32/libofa+32/autobuild/patches/{05_gcc43.diff => 0005-Debian-05_gcc43.diff} (100%) rename runtime-optenv32/libofa+32/autobuild/patches/{06_gcc44.diff => 0006-Debian-06_gcc44.diff} (100%) rename runtime-optenv32/libofa+32/autobuild/patches/{fix_ftbfs.diff => 0007-Debian-fix_ftbfs.diff} (100%) rename runtime-optenv32/libofa+32/autobuild/patches/{fix-ftbfs-gcc4.7.diff => 0008-Debian-fix-ftbfs-gcc4.7.diff} (100%) rename runtime-optenv32/libofa+32/autobuild/patches/{07_libltdl.diff => 0009-Debian-07_libltdl.diff} (100%) delete mode 100644 runtime-optenv32/libofa+32/autobuild/patches/series delete mode 100644 runtime-optenv32/libofa+32/autobuild/prepare diff --git a/runtime-optenv32/libofa+32/autobuild/build b/runtime-optenv32/libofa+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/libofa+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/libofa+32/autobuild/defines b/runtime-optenv32/libofa+32/autobuild/defines index 3fb2a349bd5..68043bdebef 100644 --- a/runtime-optenv32/libofa+32/autobuild/defines +++ b/runtime-optenv32/libofa+32/autobuild/defines @@ -1,7 +1,11 @@ PKGNAME=libofa+32 PKGSEC=libs -PKGDES="Libraries that implements MusicIP (optenv32)" PKGDEP="fftw+32 curl+32 expat+32" +BUILDDEP="devel-base+32" +PKGDES="Libraries that implements MusicIP (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 + +# FIXME: Multi-level source. +AUTOTOOLS_STRICT=0 diff --git a/runtime-optenv32/libofa+32/autobuild/patches/01_gcc41.diff b/runtime-optenv32/libofa+32/autobuild/patches/0001-Debian-01_gcc41.diff similarity index 100% rename from runtime-optenv32/libofa+32/autobuild/patches/01_gcc41.diff rename to runtime-optenv32/libofa+32/autobuild/patches/0001-Debian-01_gcc41.diff diff --git a/runtime-optenv32/libofa+32/autobuild/patches/02_example-open.diff b/runtime-optenv32/libofa+32/autobuild/patches/0002-Debian-02_example-open.diff similarity index 100% rename from runtime-optenv32/libofa+32/autobuild/patches/02_example-open.diff rename to runtime-optenv32/libofa+32/autobuild/patches/0002-Debian-02_example-open.diff diff --git a/runtime-optenv32/libofa+32/autobuild/patches/03_example-size_type.diff b/runtime-optenv32/libofa+32/autobuild/patches/0003-Debian-03_example-size_type.diff similarity index 100% rename from runtime-optenv32/libofa+32/autobuild/patches/03_example-size_type.diff rename to runtime-optenv32/libofa+32/autobuild/patches/0003-Debian-03_example-size_type.diff diff --git a/runtime-optenv32/libofa+32/autobuild/patches/04_libofa.pc-deps.diff b/runtime-optenv32/libofa+32/autobuild/patches/0004-Debian-04_libofa.pc-deps.diff similarity index 100% rename from runtime-optenv32/libofa+32/autobuild/patches/04_libofa.pc-deps.diff rename to runtime-optenv32/libofa+32/autobuild/patches/0004-Debian-04_libofa.pc-deps.diff diff --git a/runtime-optenv32/libofa+32/autobuild/patches/05_gcc43.diff b/runtime-optenv32/libofa+32/autobuild/patches/0005-Debian-05_gcc43.diff similarity index 100% rename from runtime-optenv32/libofa+32/autobuild/patches/05_gcc43.diff rename to runtime-optenv32/libofa+32/autobuild/patches/0005-Debian-05_gcc43.diff diff --git a/runtime-optenv32/libofa+32/autobuild/patches/06_gcc44.diff b/runtime-optenv32/libofa+32/autobuild/patches/0006-Debian-06_gcc44.diff similarity index 100% rename from runtime-optenv32/libofa+32/autobuild/patches/06_gcc44.diff rename to runtime-optenv32/libofa+32/autobuild/patches/0006-Debian-06_gcc44.diff diff --git a/runtime-optenv32/libofa+32/autobuild/patches/fix_ftbfs.diff b/runtime-optenv32/libofa+32/autobuild/patches/0007-Debian-fix_ftbfs.diff similarity index 100% rename from runtime-optenv32/libofa+32/autobuild/patches/fix_ftbfs.diff rename to runtime-optenv32/libofa+32/autobuild/patches/0007-Debian-fix_ftbfs.diff diff --git a/runtime-optenv32/libofa+32/autobuild/patches/fix-ftbfs-gcc4.7.diff b/runtime-optenv32/libofa+32/autobuild/patches/0008-Debian-fix-ftbfs-gcc4.7.diff similarity index 100% rename from runtime-optenv32/libofa+32/autobuild/patches/fix-ftbfs-gcc4.7.diff rename to runtime-optenv32/libofa+32/autobuild/patches/0008-Debian-fix-ftbfs-gcc4.7.diff diff --git a/runtime-optenv32/libofa+32/autobuild/patches/07_libltdl.diff b/runtime-optenv32/libofa+32/autobuild/patches/0009-Debian-07_libltdl.diff similarity index 100% rename from runtime-optenv32/libofa+32/autobuild/patches/07_libltdl.diff rename to runtime-optenv32/libofa+32/autobuild/patches/0009-Debian-07_libltdl.diff diff --git a/runtime-optenv32/libofa+32/autobuild/patches/series b/runtime-optenv32/libofa+32/autobuild/patches/series deleted file mode 100644 index 4d4be93956c..00000000000 --- a/runtime-optenv32/libofa+32/autobuild/patches/series +++ /dev/null @@ -1,9 +0,0 @@ -01_gcc41.diff -02_example-open.diff -03_example-size_type.diff -04_libofa.pc-deps.diff -05_gcc43.diff -06_gcc44.diff -fix_ftbfs.diff -fix-ftbfs-gcc4.7.diff -07_libltdl.diff diff --git a/runtime-optenv32/libofa+32/autobuild/prepare b/runtime-optenv32/libofa+32/autobuild/prepare deleted file mode 100644 index ba1d9cbe2c3..00000000000 --- a/runtime-optenv32/libofa+32/autobuild/prepare +++ /dev/null @@ -1 +0,0 @@ -autoreconf -fi diff --git a/runtime-optenv32/libofa+32/spec b/runtime-optenv32/libofa+32/spec index 519c9c953f9..15ad07851ab 100644 --- a/runtime-optenv32/libofa+32/spec +++ b/runtime-optenv32/libofa+32/spec @@ -1,4 +1,4 @@ VER=0.9.3 +REL=3 SRCS="tbl::https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/musicip-libofa/libofa-$VER.tar.gz" CHKSUMS="sha256::0216466153e92058c5202dea03390ddc7601d916b983f71ce4f4d034405590a0" -REL=2 From 96a7f756ec324bada35ddf8ecd92c265de8c282e Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 16:06:46 +0800 Subject: [PATCH 131/722] libdca+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libdca+32/autobuild/build | 12 ------------ runtime-optenv32/libdca+32/autobuild/defines | 6 +++--- runtime-optenv32/libdca+32/autobuild/prepare | 1 - runtime-optenv32/libdca+32/spec | 1 + 4 files changed, 4 insertions(+), 16 deletions(-) delete mode 100644 runtime-optenv32/libdca+32/autobuild/build delete mode 100644 runtime-optenv32/libdca+32/autobuild/prepare diff --git a/runtime-optenv32/libdca+32/autobuild/build b/runtime-optenv32/libdca+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/libdca+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/libdca+32/autobuild/defines b/runtime-optenv32/libdca+32/autobuild/defines index 6aef3773665..c2099536baf 100644 --- a/runtime-optenv32/libdca+32/autobuild/defines +++ b/runtime-optenv32/libdca+32/autobuild/defines @@ -1,8 +1,8 @@ PKGNAME=libdca+32 PKGSEC=libs PKGDEP="glibc+32" -BUILDDEP="32subsystem" -PKGDES="Free library for decoding DTS Coherent Acoustics streams (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="Free library for decoding DTS Coherent Acoustics streams (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libdca+32/autobuild/prepare b/runtime-optenv32/libdca+32/autobuild/prepare deleted file mode 100644 index 52f178471c0..00000000000 --- a/runtime-optenv32/libdca+32/autobuild/prepare +++ /dev/null @@ -1 +0,0 @@ -autoreconf -fvi diff --git a/runtime-optenv32/libdca+32/spec b/runtime-optenv32/libdca+32/spec index 11a0b5315b9..e39ec9c327c 100644 --- a/runtime-optenv32/libdca+32/spec +++ b/runtime-optenv32/libdca+32/spec @@ -1,4 +1,5 @@ VER=0.0.7 +REL=1 SRCS="tbl::https://download.videolan.org/pub/videolan/libdca/$VER/libdca-$VER.tar.bz2" CHKSUMS="sha256::3a0b13815f582c661d2388ffcabc2f1ea82f471783c400f765f2ec6c81065f6a" CHKUPDATE="anitya::id=230923" From 05ab5445483d534405bca6e827c05e0914a8ba3c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 16:09:34 +0800 Subject: [PATCH 132/722] libvisual+32: improve packaging - Use optenv32 template. - Sort patches with patch-series-rename. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libvisual+32/autobuild/build | 12 ------------ runtime-optenv32/libvisual+32/autobuild/defines | 8 ++++---- ...h => 0001-Debian-99_add_german_translation.patch} | 0 ...r_magic_fix => 0002-Debian-01_x86_fxsr_magic_fix} | 0 .../{02_redefine_fix => 0003-Debian-02_redefine_fix} | 0 ...03_configure_fix => 0004-Debian-03_configure_fix} | 0 ...ty-fix => 0005-Debian-Werror-format-security-fix} | 0 ...elling-errors => 0006-Debian-fix-spelling-errors} | 0 .../libvisual+32/autobuild/patches/series | 6 ------ runtime-optenv32/libvisual+32/spec | 2 +- 10 files changed, 5 insertions(+), 23 deletions(-) delete mode 100644 runtime-optenv32/libvisual+32/autobuild/build rename runtime-optenv32/libvisual+32/autobuild/patches/{99_add_german_translation.patch => 0001-Debian-99_add_german_translation.patch} (100%) rename runtime-optenv32/libvisual+32/autobuild/patches/{01_x86_fxsr_magic_fix => 0002-Debian-01_x86_fxsr_magic_fix} (100%) rename runtime-optenv32/libvisual+32/autobuild/patches/{02_redefine_fix => 0003-Debian-02_redefine_fix} (100%) rename runtime-optenv32/libvisual+32/autobuild/patches/{03_configure_fix => 0004-Debian-03_configure_fix} (100%) rename runtime-optenv32/libvisual+32/autobuild/patches/{Werror-format-security-fix => 0005-Debian-Werror-format-security-fix} (100%) rename runtime-optenv32/libvisual+32/autobuild/patches/{fix-spelling-errors => 0006-Debian-fix-spelling-errors} (100%) delete mode 100644 runtime-optenv32/libvisual+32/autobuild/patches/series diff --git a/runtime-optenv32/libvisual+32/autobuild/build b/runtime-optenv32/libvisual+32/autobuild/build deleted file mode 100644 index 3befca8217f..00000000000 --- a/runtime-optenv32/libvisual+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -./configure --enable-shared --prefix=/opt/32 \ - --disable-static ${AUTOTOOLS_AFTER} \ - LDFLAGS="${LDFLAGS} -L/opt/32/lib" \ - CC=i686-pc-linux-gnu-gcc \ - CXX=i686-pc-linux-gnu-g++ \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make DESTDIR=$PKGDIR install - -rm -rf $PKGDIR/opt/32/{bin,share} diff --git a/runtime-optenv32/libvisual+32/autobuild/defines b/runtime-optenv32/libvisual+32/autobuild/defines index d82a8382db7..0787c942f2b 100644 --- a/runtime-optenv32/libvisual+32/autobuild/defines +++ b/runtime-optenv32/libvisual+32/autobuild/defines @@ -1,8 +1,8 @@ -ABSHADOW=no PKGNAME=libvisual+32 PKGSEC=libs PKGDEP="glibc+32" -BUILDDEP="32subsystem" -PKGDES="Abstraction library that come between applications and audio visualization plugins" +BUILDDEP="devel-base+32" +PKGDES="Abstraction library that come between applications and audio visualization plugins (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libvisual+32/autobuild/patches/99_add_german_translation.patch b/runtime-optenv32/libvisual+32/autobuild/patches/0001-Debian-99_add_german_translation.patch similarity index 100% rename from runtime-optenv32/libvisual+32/autobuild/patches/99_add_german_translation.patch rename to runtime-optenv32/libvisual+32/autobuild/patches/0001-Debian-99_add_german_translation.patch diff --git a/runtime-optenv32/libvisual+32/autobuild/patches/01_x86_fxsr_magic_fix b/runtime-optenv32/libvisual+32/autobuild/patches/0002-Debian-01_x86_fxsr_magic_fix similarity index 100% rename from runtime-optenv32/libvisual+32/autobuild/patches/01_x86_fxsr_magic_fix rename to runtime-optenv32/libvisual+32/autobuild/patches/0002-Debian-01_x86_fxsr_magic_fix diff --git a/runtime-optenv32/libvisual+32/autobuild/patches/02_redefine_fix b/runtime-optenv32/libvisual+32/autobuild/patches/0003-Debian-02_redefine_fix similarity index 100% rename from runtime-optenv32/libvisual+32/autobuild/patches/02_redefine_fix rename to runtime-optenv32/libvisual+32/autobuild/patches/0003-Debian-02_redefine_fix diff --git a/runtime-optenv32/libvisual+32/autobuild/patches/03_configure_fix b/runtime-optenv32/libvisual+32/autobuild/patches/0004-Debian-03_configure_fix similarity index 100% rename from runtime-optenv32/libvisual+32/autobuild/patches/03_configure_fix rename to runtime-optenv32/libvisual+32/autobuild/patches/0004-Debian-03_configure_fix diff --git a/runtime-optenv32/libvisual+32/autobuild/patches/Werror-format-security-fix b/runtime-optenv32/libvisual+32/autobuild/patches/0005-Debian-Werror-format-security-fix similarity index 100% rename from runtime-optenv32/libvisual+32/autobuild/patches/Werror-format-security-fix rename to runtime-optenv32/libvisual+32/autobuild/patches/0005-Debian-Werror-format-security-fix diff --git a/runtime-optenv32/libvisual+32/autobuild/patches/fix-spelling-errors b/runtime-optenv32/libvisual+32/autobuild/patches/0006-Debian-fix-spelling-errors similarity index 100% rename from runtime-optenv32/libvisual+32/autobuild/patches/fix-spelling-errors rename to runtime-optenv32/libvisual+32/autobuild/patches/0006-Debian-fix-spelling-errors diff --git a/runtime-optenv32/libvisual+32/autobuild/patches/series b/runtime-optenv32/libvisual+32/autobuild/patches/series deleted file mode 100644 index 263bc15654d..00000000000 --- a/runtime-optenv32/libvisual+32/autobuild/patches/series +++ /dev/null @@ -1,6 +0,0 @@ -99_add_german_translation.patch -01_x86_fxsr_magic_fix -02_redefine_fix -03_configure_fix -Werror-format-security-fix -fix-spelling-errors diff --git a/runtime-optenv32/libvisual+32/spec b/runtime-optenv32/libvisual+32/spec index 90e028d054c..a07cd5176c4 100644 --- a/runtime-optenv32/libvisual+32/spec +++ b/runtime-optenv32/libvisual+32/spec @@ -1,5 +1,5 @@ VER=0.4.0 +REL=4 SRCS="tbl::https://sourceforge.net/projects/libvisual/files/libvisual/libvisual-$VER/libvisual-$VER.tar.bz2" CHKSUMS="sha256::78f38d3ce857edde5482aa4415b504bbcd4d4a688fd4de09ec2131ad08174279" -REL=3 CHKUPDATE="anitya::id=13113" From a3729e1a22d5e759c3d95f87a6c68f4771f613ac Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 16:17:08 +0800 Subject: [PATCH 133/722] libtheora+32: improve packaging - Use optenv32 template. - Clean up patch strip level. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libtheora+32/autobuild/build | 13 ------------- runtime-optenv32/libtheora+32/autobuild/defines | 11 +++++++---- runtime-optenv32/libtheora+32/autobuild/patch | 1 - ...g16.patch => 0001-Fix-build-with-libpng16.patch} | 4 ++-- runtime-optenv32/libtheora+32/spec | 2 +- 5 files changed, 10 insertions(+), 21 deletions(-) delete mode 100644 runtime-optenv32/libtheora+32/autobuild/build delete mode 100644 runtime-optenv32/libtheora+32/autobuild/patch rename runtime-optenv32/libtheora+32/autobuild/patches/{libpng16.patch => 0001-Fix-build-with-libpng16.patch} (89%) diff --git a/runtime-optenv32/libtheora+32/autobuild/build b/runtime-optenv32/libtheora+32/autobuild/build deleted file mode 100644 index 98f8303ead8..00000000000 --- a/runtime-optenv32/libtheora+32/autobuild/build +++ /dev/null @@ -1,13 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -./configure --enable-shared --prefix=/opt/32 \ - --disable-static ${AUTOTOOLS_AFTER} \ - --target=i686-pc-linux-gnu \ - LDFLAGS="${LDFLAGS} -L/opt/32/lib" \ - CC=i686-pc-linux-gnu-gcc \ - CXX=i686-pc-linux-gnu-g++ \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make DESTDIR=$PKGDIR install - -rm -rf $PKGDIR/opt/32/{bin,share} diff --git a/runtime-optenv32/libtheora+32/autobuild/defines b/runtime-optenv32/libtheora+32/autobuild/defines index 7a59d26c735..e8dadc0bb4f 100644 --- a/runtime-optenv32/libtheora+32/autobuild/defines +++ b/runtime-optenv32/libtheora+32/autobuild/defines @@ -1,8 +1,11 @@ PKGNAME=libtheora+32 -PKGDES="An open video codec developed by the Xiph.org" -PKGDEP="libogg+32 libvorbis+32" -BUILDDEP="32subsystem" PKGSEC=libs +PKGDEP="libogg+32 libpng-1.6+32 libvorbis+32" +BUILDDEP="devel-base+32" +PKGDES="An open video codec developed by the Xiph.org (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 + +# FIXME: error: source directory already configured. +ABSHADOW=0 diff --git a/runtime-optenv32/libtheora+32/autobuild/patch b/runtime-optenv32/libtheora+32/autobuild/patch deleted file mode 100644 index 0d657f68df4..00000000000 --- a/runtime-optenv32/libtheora+32/autobuild/patch +++ /dev/null @@ -1 +0,0 @@ -patch -Np0 -i autobuild/patches/libpng16.patch diff --git a/runtime-optenv32/libtheora+32/autobuild/patches/libpng16.patch b/runtime-optenv32/libtheora+32/autobuild/patches/0001-Fix-build-with-libpng16.patch similarity index 89% rename from runtime-optenv32/libtheora+32/autobuild/patches/libpng16.patch rename to runtime-optenv32/libtheora+32/autobuild/patches/0001-Fix-build-with-libpng16.patch index 93da700c4d7..46d93332390 100644 --- a/runtime-optenv32/libtheora+32/autobuild/patches/libpng16.patch +++ b/runtime-optenv32/libtheora+32/autobuild/patches/0001-Fix-build-with-libpng16.patch @@ -1,8 +1,8 @@ http://bugs.gentoo.org/465450 http://trac.xiph.org/ticket/1947 ---- examples/png2theora.c -+++ examples/png2theora.c +--- a/examples/png2theora.c ++++ b/examples/png2theora.c @@ -462,9 +462,9 @@ png_set_strip_alpha(png_ptr); diff --git a/runtime-optenv32/libtheora+32/spec b/runtime-optenv32/libtheora+32/spec index 06d7b74b4ea..41a1be4909f 100644 --- a/runtime-optenv32/libtheora+32/spec +++ b/runtime-optenv32/libtheora+32/spec @@ -1,5 +1,5 @@ VER=1.1.1 +REL=4 SRCS="tbl::https://downloads.xiph.org/releases/theora/libtheora-$VER.tar.xz" CHKSUMS="sha256::f36da409947aa2b3dcc6af0a8c2e3144bc19db2ed547d64e9171c59c66561c61" -REL=3 CHKUPDATE="anitya::id=11793" From e7605781d00bf72554dcc08248426fef1261887c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 16:20:50 +0800 Subject: [PATCH 134/722] glu+32: update to 9.0.3 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/glu+32/autobuild/build | 12 ------------ runtime-optenv32/glu+32/autobuild/defines | 8 ++++---- runtime-optenv32/glu+32/spec | 6 +++--- 3 files changed, 7 insertions(+), 19 deletions(-) delete mode 100644 runtime-optenv32/glu+32/autobuild/build diff --git a/runtime-optenv32/glu+32/autobuild/build b/runtime-optenv32/glu+32/autobuild/build deleted file mode 100644 index dddc73addd5..00000000000 --- a/runtime-optenv32/glu+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -./configure --enable-shared --prefix=/opt/32 \ - --disable-static \ - LDFLAGS="${LDFLAGS} -L/opt/32/lib" \ - CC=i686-pc-linux-gnu-gcc \ - CXX=i686-pc-linux-gnu-g++ \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make DESTDIR=$PKGDIR install - -rm -rf $PKGDIR/opt/32/{bin,share} diff --git a/runtime-optenv32/glu+32/autobuild/defines b/runtime-optenv32/glu+32/autobuild/defines index 2a69518b36d..9cb14093f65 100644 --- a/runtime-optenv32/glu+32/autobuild/defines +++ b/runtime-optenv32/glu+32/autobuild/defines @@ -1,8 +1,8 @@ PKGNAME=glu+32 -PKGDES="GLU GL API libs" -PKGDEP="mesa+32" -BUILDDEP="32subsystem" PKGSEC=libs +PKGDEP="mesa+32" +BUILDDEP="devel-base+32" +PKGDES="GLU GL API libs (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/glu+32/spec b/runtime-optenv32/glu+32/spec index 2c7c2e3f198..f87a197acaf 100644 --- a/runtime-optenv32/glu+32/spec +++ b/runtime-optenv32/glu+32/spec @@ -1,4 +1,4 @@ -VER=9.0.1 -SRCS="tbl::https://mesa.freedesktop.org/archive/glu/glu-$VER.tar.gz" -CHKSUMS="sha256::f6f484cfcd51e489afe88031afdea1e173aa652697e4c19ddbcb8260579a10f7" +VER=9.0.3 +SRCS="tbl::https://mesa.freedesktop.org/archive/glu/glu-$VER.tar.xz" +CHKSUMS="sha256::bd43fe12f374b1192eb15fe20e45ff456b9bc26ab57f0eee919f96ca0f8a330f" CHKUPDATE="anitya::id=13518" From 2b58166fa7009c85ea251d67ec4274fd5fd6ba63 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 17:29:11 +0800 Subject: [PATCH 135/722] glew+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/glew+32/autobuild/build | 43 ++++++++++------------ runtime-optenv32/glew+32/autobuild/defines | 6 +-- runtime-optenv32/glew+32/spec | 2 +- 3 files changed, 24 insertions(+), 27 deletions(-) diff --git a/runtime-optenv32/glew+32/autobuild/build b/runtime-optenv32/glew+32/autobuild/build index 0df919ba2f0..0d7a645b6aa 100644 --- a/runtime-optenv32/glew+32/autobuild/build +++ b/runtime-optenv32/glew+32/autobuild/build @@ -1,27 +1,24 @@ -export PATH=/opt/32/bin:$PATH -unset LDFLAGS +abinfo "Injecting CFLAGS to build config ..." +echo "CFLAGS.EXTRA += $CFLAGS" \ + >> "$SRCDIR"/config/Makefile.linux +abinfo "Setting up make flags ..." +MAKE_AFTER=( + 'STRIP=' + 'LDFLAGS.EXTRA=' + 'GLEW_PREFIX=/opt/32' + 'GLEW_DEST=/opt/32' + 'LIBDIR=/opt/32/lib' + 'BINDIR=/opt/32/bin' + 'CC=i686-aosc-linux-gnu-gcc' + 'LD=i686-aosc-linux-gnu-gcc' +) + +abinfo "Building GLEW ..." make \ - STRIP= \ - LDFLAGS.EXTRA= \ - LDFLAGS.SO="-shared" \ - GLEW_PREFIX=/opt/32 \ - GLEW_DEST=/opt/32 \ - LIBDIR=/opt/32/lib \ - BINDIR=/opt/32/bin \ - CC=/opt/32/bin/gcc \ - LD=/opt/32/bin/ld + ${MAKE_AFTER[@]} + +abinfo "Install GLEW ..." make install.all \ DESTDIR="$PKGDIR" \ - LDFLAGS.EXTRA= \ - LDFLAGS.SO="-shared" \ - GLEW_PREFIX=/opt/32 \ - GLEW_DEST=/opt/32 \ - PREFIX=/opt/32 \ - LIBDIR=/opt/32/lib \ - BINDIR=/opt/32/bin \ - INCDIR=/opt/32/include \ - CC=/opt/32/bin/gcc \ - LD=/opt/32/bin/ld - -rm -rf "$PKGDIR"/opt/32/{bin,share} + ${MAKE_AFTER[@]} diff --git a/runtime-optenv32/glew+32/autobuild/defines b/runtime-optenv32/glew+32/autobuild/defines index 83741222be0..49ff19ec2fe 100644 --- a/runtime-optenv32/glew+32/autobuild/defines +++ b/runtime-optenv32/glew+32/autobuild/defines @@ -1,8 +1,8 @@ PKGNAME=glew+32 PKGSEC=libs PKGDEP="glu+32" -BUILDDEP="32subsystem" -PKGDES="The OpenGL Extension Wrangler Library" +BUILDDEP="devel-base+32" +PKGDES="The OpenGL Extension Wrangler Library (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/glew+32/spec b/runtime-optenv32/glew+32/spec index b79ba18356c..939d72d6d66 100644 --- a/runtime-optenv32/glew+32/spec +++ b/runtime-optenv32/glew+32/spec @@ -1,5 +1,5 @@ VER=2.2.0 -REL=1 +REL=2 SRCS="tbl::https://sourceforge.net/projects/glew/files/glew/$VER/glew-$VER.tgz" CHKSUMS="sha256::d4fc82893cfb00109578d0a1a2337fb8ca335b3ceccf97b97e5cc7f08e4353e1" CHKUPDATE="anitya::id=7878" From 891787353dfb629510db376b5a4a229bf79907df Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 17:33:16 +0800 Subject: [PATCH 136/722] giflib+32: improve packaging - Use optenv32 template. - Rewrite build script in accordance with the source. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/giflib+32/autobuild/build | 19 +++++-------------- runtime-optenv32/giflib+32/autobuild/defines | 8 ++++---- runtime-optenv32/giflib+32/spec | 1 + 3 files changed, 10 insertions(+), 18 deletions(-) diff --git a/runtime-optenv32/giflib+32/autobuild/build b/runtime-optenv32/giflib+32/autobuild/build index fb365a8112a..db3b72ea2e0 100644 --- a/runtime-optenv32/giflib+32/autobuild/build +++ b/runtime-optenv32/giflib+32/autobuild/build @@ -1,16 +1,7 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig +abinfo "Building giflib ..." make -make install DESTDIR="$PKGDIR" - -mkdir -pv "$PKGDIR"/opt/32 -mv -v "$PKGDIR"/usr/local/* "$PKGDIR"/opt/32/ -rm -rfv "$PKGDIR"/usr/local -rm -rfv "$PKGDIR"/opt/32/{bin,share} +abinfo "Installing giflib ..." +make install \ + DESTDIR="$PKGDIR" \ + PREFIX=/opt/32 diff --git a/runtime-optenv32/giflib+32/autobuild/defines b/runtime-optenv32/giflib+32/autobuild/defines index b549794e882..53c621c19a8 100644 --- a/runtime-optenv32/giflib+32/autobuild/defines +++ b/runtime-optenv32/giflib+32/autobuild/defines @@ -1,8 +1,8 @@ PKGNAME=giflib+32 -PKGDES="A library for reading and writing GIF images (optenv32)" -PKGDEP="glibc+32" -BUILDDEP="32subsystem xmlto docbook-xsl" PKGSEC=libs +PKGDEP="glibc+32" +BUILDDEP="devel-base+32 xmlto docbook-xsl" +PKGDES="A library for reading and writing GIF images (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/giflib+32/spec b/runtime-optenv32/giflib+32/spec index a557d3f8014..fda19d16b5e 100644 --- a/runtime-optenv32/giflib+32/spec +++ b/runtime-optenv32/giflib+32/spec @@ -1,4 +1,5 @@ VER=5.1.8 +REL=1 SRCS="tbl::https://sourceforge.net/projects/giflib/files/giflib-$VER.tar.gz" CHKSUMS="sha256::d105a905df34a7822172d13657cdae3d4b0c8e8c7067ccf05e39a40044f8ca53" CHKUPDATE="anitya::id=1158" From eec2f289b70b4902ccac4ccb8f1520a9cb9cf573 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 17:38:39 +0800 Subject: [PATCH 137/722] gconf+32: improve packaging - Use optenv32 template. - Fix up build dependencies. - Sort patches with patch-series-rename. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/gconf+32/autobuild/build | 12 - runtime-optenv32/gconf+32/autobuild/defines | 14 +- ...tch => 0001-Debian-01_defaults_path.patch} | 0 ...02-Debian-02_fix_wrong_return_value.patch} | 0 ..._readd_gconf_engine_key_is_writable.patch} | 0 ... 0004-Debian-25_gconf-path-max-hurd.patch} | 0 .../autobuild/patches/reload-config.patch | 20 - .../gconf+32/autobuild/patches/series | 4 - .../patches/xml-gettext-domain.patch | 362 ------------------ runtime-optenv32/gconf+32/spec | 2 +- 10 files changed, 11 insertions(+), 403 deletions(-) delete mode 100644 runtime-optenv32/gconf+32/autobuild/build rename runtime-optenv32/gconf+32/autobuild/patches/{01_defaults_path.patch => 0001-Debian-01_defaults_path.patch} (100%) rename runtime-optenv32/gconf+32/autobuild/patches/{02_fix_wrong_return_value.patch => 0002-Debian-02_fix_wrong_return_value.patch} (100%) rename runtime-optenv32/gconf+32/autobuild/patches/{05_readd_gconf_engine_key_is_writable.patch => 0003-Debian-05_readd_gconf_engine_key_is_writable.patch} (100%) rename runtime-optenv32/gconf+32/autobuild/patches/{25_gconf-path-max-hurd.patch => 0004-Debian-25_gconf-path-max-hurd.patch} (100%) delete mode 100644 runtime-optenv32/gconf+32/autobuild/patches/reload-config.patch delete mode 100644 runtime-optenv32/gconf+32/autobuild/patches/series delete mode 100644 runtime-optenv32/gconf+32/autobuild/patches/xml-gettext-domain.patch diff --git a/runtime-optenv32/gconf+32/autobuild/build b/runtime-optenv32/gconf+32/autobuild/build deleted file mode 100644 index c4b77a4d273..00000000000 --- a/runtime-optenv32/gconf+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,etc,share} diff --git a/runtime-optenv32/gconf+32/autobuild/defines b/runtime-optenv32/gconf+32/autobuild/defines index bf7dc2c61fc..a38bc2db52c 100644 --- a/runtime-optenv32/gconf+32/autobuild/defines +++ b/runtime-optenv32/gconf+32/autobuild/defines @@ -1,8 +1,14 @@ PKGNAME=gconf+32 -PKGDES="GConf configuration database system (optenv32)" -PKGDEP="dbus-glib+32 libxml2+32 openldap+32" PKGSEC=gnome +PKGDEP="dbus-glib+32 libxml2+32 openldap+32" +BUILDDEP="devel-base+32 gtk-doc intltool" +PKGDES="GConf configuration database system (32-bit x86 runtime)" + +AUTOTOOLS_AFTER=( + '--disable-orbit' + '--disable-defaults-service' + '--disable-gtk' +) -AUTOTOOLS_AFTER="--disable-orbit --disable-defaults-service --disable-gtk" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/gconf+32/autobuild/patches/01_defaults_path.patch b/runtime-optenv32/gconf+32/autobuild/patches/0001-Debian-01_defaults_path.patch similarity index 100% rename from runtime-optenv32/gconf+32/autobuild/patches/01_defaults_path.patch rename to runtime-optenv32/gconf+32/autobuild/patches/0001-Debian-01_defaults_path.patch diff --git a/runtime-optenv32/gconf+32/autobuild/patches/02_fix_wrong_return_value.patch b/runtime-optenv32/gconf+32/autobuild/patches/0002-Debian-02_fix_wrong_return_value.patch similarity index 100% rename from runtime-optenv32/gconf+32/autobuild/patches/02_fix_wrong_return_value.patch rename to runtime-optenv32/gconf+32/autobuild/patches/0002-Debian-02_fix_wrong_return_value.patch diff --git a/runtime-optenv32/gconf+32/autobuild/patches/05_readd_gconf_engine_key_is_writable.patch b/runtime-optenv32/gconf+32/autobuild/patches/0003-Debian-05_readd_gconf_engine_key_is_writable.patch similarity index 100% rename from runtime-optenv32/gconf+32/autobuild/patches/05_readd_gconf_engine_key_is_writable.patch rename to runtime-optenv32/gconf+32/autobuild/patches/0003-Debian-05_readd_gconf_engine_key_is_writable.patch diff --git a/runtime-optenv32/gconf+32/autobuild/patches/25_gconf-path-max-hurd.patch b/runtime-optenv32/gconf+32/autobuild/patches/0004-Debian-25_gconf-path-max-hurd.patch similarity index 100% rename from runtime-optenv32/gconf+32/autobuild/patches/25_gconf-path-max-hurd.patch rename to runtime-optenv32/gconf+32/autobuild/patches/0004-Debian-25_gconf-path-max-hurd.patch diff --git a/runtime-optenv32/gconf+32/autobuild/patches/reload-config.patch b/runtime-optenv32/gconf+32/autobuild/patches/reload-config.patch deleted file mode 100644 index 910f0dae4fb..00000000000 --- a/runtime-optenv32/gconf+32/autobuild/patches/reload-config.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- GConf-2.16.0/gconf/gconftool.c.orig 2006-10-14 17:37:14.000000000 +0000 -+++ GConf-2.16.0/gconf/gconftool.c 2006-10-14 17:39:27.000000000 +0000 -@@ -963,6 +963,8 @@ main (int argc, char** argv) - - gconf_engine_unref (conf); - -+ g_spawn_command_line_sync ("/usr/bin/killall -q -TERM " GCONF_SERVERDIR "/" GCONFD, NULL, NULL, NULL, NULL); -+ - return retval; - } - -@@ -975,6 +977,8 @@ main (int argc, char** argv) - - gconf_engine_unref (conf); - -+ g_spawn_command_line_sync ("/usr/bin/killall -q -TERM " GCONF_SERVERDIR "/" GCONFD, NULL, NULL, NULL, NULL); -+ - return retval; - } - diff --git a/runtime-optenv32/gconf+32/autobuild/patches/series b/runtime-optenv32/gconf+32/autobuild/patches/series deleted file mode 100644 index 3f8781c79f4..00000000000 --- a/runtime-optenv32/gconf+32/autobuild/patches/series +++ /dev/null @@ -1,4 +0,0 @@ -01_defaults_path.patch -02_fix_wrong_return_value.patch -05_readd_gconf_engine_key_is_writable.patch -25_gconf-path-max-hurd.patch diff --git a/runtime-optenv32/gconf+32/autobuild/patches/xml-gettext-domain.patch b/runtime-optenv32/gconf+32/autobuild/patches/xml-gettext-domain.patch deleted file mode 100644 index d1323f61f22..00000000000 --- a/runtime-optenv32/gconf+32/autobuild/patches/xml-gettext-domain.patch +++ /dev/null @@ -1,362 +0,0 @@ -# Description: Support calling gettext at runtime and putting the gettext domain into the .schemas file instead of replicating translations in /usr/share/gconf/schemas/*.schemas *and* /var/lib/gconf/defaults/%gconf-tree-$LANG.xml. This saves in the order of 90 MB uncompressed/10 MB compressed on hard disks. -# Ubuntu: https://bugs.launchpad.net/bugs/123025 -# Upstream: http://bugzilla.gnome.org/show_bug.cgi?id=568845 ---- GConf-2.26.0/backends/markup-tree.c.gettext 2009-04-26 23:33:05.258484987 -0400 -+++ GConf-2.26.0/backends/markup-tree.c 2009-04-26 23:34:25.026700526 -0400 -@@ -52,6 +52,7 @@ struct _MarkupEntry - char *schema_name; - char *mod_user; - GTime mod_time; -+ const char *gettext_domain; - }; - - static LocalSchemaInfo* local_schema_info_new (void); -@@ -1593,6 +1594,8 @@ markup_entry_set_value (MarkupEntry - gconf_schema_get_type (schema)); - gconf_schema_set_owner (current_schema, - gconf_schema_get_owner (schema)); -+ gconf_schema_set_gettext_domain (current_schema, -+ gconf_schema_get_gettext_domain (schema)); - } - - /* Update mod time */ -@@ -1805,6 +1808,8 @@ markup_entry_get_value (MarkupEntry *ent - else if (c_local_schema && c_local_schema->long_desc) - gconf_schema_set_long_desc (schema, c_local_schema->long_desc); - -+ gconf_schema_set_gettext_domain (schema, entry->gettext_domain); -+ - return retval; - } - } -@@ -2339,8 +2344,9 @@ parse_value_element (GMarkupParseContext - const char *ltype; - const char *list_type; - const char *owner; -+ - GConfValueType vtype; -- const char *dummy1, *dummy2, *dummy3, *dummy4; -+ const char *dummy1, *dummy2, *dummy3, *dummy4, *dummy5; - - #if 0 - g_assert (ELEMENT_IS ("entry") || -@@ -2377,6 +2383,7 @@ parse_value_element (GMarkupParseContext - "muser", &dummy2, - "mtime", &dummy3, - "schema", &dummy4, -+ "gettext_domain", &dummy5, - - NULL)) - return; -@@ -2683,6 +2690,7 @@ parse_entry_element (GMarkupParseContext - const char *mtime; - const char *schema; - const char *type; -+ const char *gettext_domain; - const char *dummy1, *dummy2, *dummy3, *dummy4; - const char *dummy5, *dummy6, *dummy7; - GConfValue *value; -@@ -2693,6 +2701,7 @@ parse_entry_element (GMarkupParseContext - mtime = NULL; - schema = NULL; - type = NULL; -+ gettext_domain = NULL; - - if (!locate_attributes (context, element_name, attribute_names, attribute_values, - error, -@@ -2701,6 +2710,7 @@ parse_entry_element (GMarkupParseContext - "mtime", &mtime, - "schema", &schema, - "type", &type, -+ "gettext_domain", &gettext_domain, - - /* These are allowed but we don't use them until - * parse_value_element -@@ -2768,6 +2778,9 @@ parse_entry_element (GMarkupParseContext - */ - if (schema) - entry->schema_name = g_strdup (schema); -+ -+ if (gettext_domain) -+ entry->gettext_domain = g_intern_string (gettext_domain); - } - else - { -@@ -3716,6 +3729,7 @@ write_value_element (GConfValue *value, - GConfSchema *schema; - GConfValueType stype; - const char *owner; -+ const char *gettext_domain; - - schema = gconf_value_get_schema (value); - -@@ -3741,6 +3755,23 @@ write_value_element (GConfValue *value, - - g_free (s); - } -+ -+ gettext_domain = gconf_schema_get_gettext_domain (schema); -+ -+ if (gettext_domain) -+ { -+ char *s; -+ -+ s = g_markup_escape_text (gettext_domain, -1); -+ -+ if (fprintf (f, " gettext_domain=\"%s\"", s) < 0) -+ { -+ g_free (s); -+ return FALSE; -+ } -+ -+ g_free (s); -+ } - - if (stype == GCONF_VALUE_LIST) - { -diff -up GConf-2.26.0/doc/gconf-1.0.dtd.gettext GConf-2.26.0/doc/gconf-1.0.dtd ---- GConf-2.26.0/doc/gconf-1.0.dtd.gettext 2009-04-26 23:33:17.240736103 -0400 -+++ GConf-2.26.0/doc/gconf-1.0.dtd 2009-04-26 23:34:25.027700384 -0400 -@@ -7,7 +7,7 @@ - -- -+ - - - -diff -up GConf-2.26.0/gconf/gconf-internals.c.gettext GConf-2.26.0/gconf/gconf-internals.c ---- GConf-2.26.0/gconf/gconf-internals.c.gettext 2009-04-26 23:34:10.994700035 -0400 -+++ GConf-2.26.0/gconf/gconf-internals.c 2009-04-26 23:34:53.767450191 -0400 -@@ -513,6 +513,7 @@ gconf_fill_corba_schema_from_gconf_schem - cs->short_desc = CORBA_string_dup (gconf_schema_get_short_desc (sc) ? gconf_schema_get_short_desc (sc) : ""); - cs->long_desc = CORBA_string_dup (gconf_schema_get_long_desc (sc) ? gconf_schema_get_long_desc (sc) : ""); - cs->owner = CORBA_string_dup (gconf_schema_get_owner (sc) ? gconf_schema_get_owner (sc) : ""); -+ cs->gettext_domain = CORBA_string_dup (gconf_schema_get_gettext_domain (sc) ? gconf_schema_get_gettext_domain (sc) : ""); - - { - gchar* encoded; -@@ -600,6 +601,14 @@ gconf_schema_from_corba_schema(const Con - gconf_schema_set_owner(sc, cs->owner); - } - -+ if (*cs->gettext_domain != '\0') -+ { -+ if (!g_utf8_validate (cs->gettext_domain, -1, NULL)) -+ gconf_log (GCL_ERR, _("Invalid UTF-8 in gettext domain for schema")); -+ else -+ gconf_schema_set_gettext_domain(sc, cs->gettext_domain); -+ } -+ - { - GConfValue* val; - -diff -up GConf-2.26.0/gconf/gconf-schema.c.gettext GConf-2.26.0/gconf/gconf-schema.c ---- GConf-2.26.0/gconf/gconf-schema.c.gettext 2009-04-26 23:33:26.787483545 -0400 -+++ GConf-2.26.0/gconf/gconf-schema.c 2009-04-26 23:35:54.240450142 -0400 -@@ -32,9 +32,10 @@ typedef struct { - GConfValueType car_type; /* Pair car type of the described entry */ - GConfValueType cdr_type; /* Pair cdr type of the described entry */ - gchar* locale; /* Schema locale */ -- gchar* owner; /* Name of creating application */ -+ const gchar* owner; /* Name of creating application */ - gchar* short_desc; /* 40 char or less description, no newlines */ - gchar* long_desc; /* could be a paragraph or so */ -+ const gchar* gettext_domain; /* description gettext domain */ - GConfValue* default_value; /* Default value of the key */ - } GConfRealSchema; - -@@ -63,7 +64,6 @@ gconf_schema_free (GConfSchema* sc) - g_free (real->locale); - g_free (real->short_desc); - g_free (real->long_desc); -- g_free (real->owner); - - if (real->default_value) - gconf_value_free (real->default_value); -@@ -91,7 +91,9 @@ gconf_schema_copy (const GConfSchema* sc - - dest->long_desc = g_strdup (real->long_desc); - -- dest->owner = g_strdup (real->owner); -+ dest->gettext_domain = real->gettext_domain; -+ -+ dest->owner = real->owner; - - dest->default_value = real->default_value ? gconf_value_copy (real->default_value) : NULL; - -@@ -136,6 +138,17 @@ gconf_schema_set_locale (GConfSchema* sc - REAL_SCHEMA (sc)->locale = NULL; - } - -+void -+gconf_schema_set_gettext_domain (GConfSchema* sc, const gchar* domain) -+{ -+ g_return_if_fail (domain == NULL || g_utf8_validate (domain, -1, NULL)); -+ -+ if (domain) -+ REAL_SCHEMA (sc)->gettext_domain = g_intern_string (domain); -+ else -+ REAL_SCHEMA (sc)->gettext_domain = NULL; -+} -+ - void - gconf_schema_set_short_desc (GConfSchema* sc, const gchar* desc) - { -@@ -169,11 +182,8 @@ gconf_schema_set_owner (GConfSchema* sc, - { - g_return_if_fail (owner == NULL || g_utf8_validate (owner, -1, NULL)); - -- if (REAL_SCHEMA (sc)->owner) -- g_free (REAL_SCHEMA (sc)->owner); -- - if (owner) -- REAL_SCHEMA (sc)->owner = g_strdup (owner); -+ REAL_SCHEMA (sc)->owner = g_intern_string (owner); - else - REAL_SCHEMA (sc)->owner = NULL; - } -@@ -228,6 +238,14 @@ gconf_schema_validate (const GConfSchema - return FALSE; - } - -+ if (real->gettext_domain && !g_utf8_validate (real->gettext_domain, -1, NULL)) -+ { -+ g_set_error (err, GCONF_ERROR, -+ GCONF_ERROR_FAILED, -+ _("Schema contains invalid UTF-8")); -+ return FALSE; -+ } -+ - if (real->owner && !g_utf8_validate (real->owner, -1, NULL)) - { - g_set_error (err, GCONF_ERROR, -@@ -299,11 +317,32 @@ gconf_schema_get_locale (const GConfSche - } - - const char* -+gconf_schema_get_gettext_domain (const GConfSchema *schema) -+{ -+ g_return_val_if_fail (schema != NULL, NULL); -+ -+ return REAL_SCHEMA (schema)->gettext_domain; -+} -+ -+static inline const char * -+schema_translate (const GConfSchema *schema, -+ const char *string) -+{ -+ if (REAL_SCHEMA (schema)->gettext_domain) -+ { -+ bind_textdomain_codeset (REAL_SCHEMA (schema)->gettext_domain, "UTF-8"); -+ return g_dgettext(REAL_SCHEMA (schema)->gettext_domain, string); -+ } -+ else -+ return string; -+} -+ -+const char* - gconf_schema_get_short_desc (const GConfSchema *schema) - { - g_return_val_if_fail (schema != NULL, NULL); - -- return REAL_SCHEMA (schema)->short_desc; -+ return schema_translate (schema, REAL_SCHEMA (schema)->short_desc); - } - - const char* -@@ -311,7 +350,7 @@ gconf_schema_get_long_desc (const GConfS - { - g_return_val_if_fail (schema != NULL, NULL); - -- return REAL_SCHEMA (schema)->long_desc; -+ return schema_translate (schema, REAL_SCHEMA (schema)->long_desc); - } - - const char* -diff -up GConf-2.26.0/gconf/gconf-schema.h.gettext GConf-2.26.0/gconf/gconf-schema.h ---- GConf-2.26.0/gconf/gconf-schema.h.gettext 2009-04-26 23:33:33.979744088 -0400 -+++ GConf-2.26.0/gconf/gconf-schema.h 2009-04-26 23:34:25.030737043 -0400 -@@ -48,6 +48,8 @@ void gconf_schema_set_cdr_type - GConfValueType type); - void gconf_schema_set_locale (GConfSchema *sc, - const gchar *locale); -+void gconf_schema_set_gettext_domain (GConfSchema *sc, -+ const gchar *domain); - void gconf_schema_set_short_desc (GConfSchema *sc, - const gchar *desc); - void gconf_schema_set_long_desc (GConfSchema *sc, -@@ -65,6 +67,7 @@ GConfValueType gconf_schema_get_list_typ - GConfValueType gconf_schema_get_car_type (const GConfSchema *schema); - GConfValueType gconf_schema_get_cdr_type (const GConfSchema *schema); - const char* gconf_schema_get_locale (const GConfSchema *schema); -+const char* gconf_schema_get_gettext_domain(const GConfSchema *schema); - const char* gconf_schema_get_short_desc (const GConfSchema *schema); - const char* gconf_schema_get_long_desc (const GConfSchema *schema); - const char* gconf_schema_get_owner (const GConfSchema *schema); -diff -up GConf-2.26.0/gconf/gconftool.c.gettext GConf-2.26.0/gconf/gconftool.c ---- GConf-2.26.0/gconf/gconftool.c.gettext 2009-04-26 23:33:41.907451190 -0400 -+++ GConf-2.26.0/gconf/gconftool.c 2009-04-26 23:34:25.034736752 -0400 -@@ -3295,6 +3295,7 @@ struct _SchemaInfo { - GConfValueType cdr_type; - GConfValue* global_default; - GHashTable* hash; -+ gchar* gettext_domain; - }; - - static int -@@ -3547,6 +3548,15 @@ extract_global_info(xmlNodePtr node, - else - g_printerr (_("WARNING: empty node")); - } -+ else if (strcmp((char *)iter->name, "gettext_domain") == 0) -+ { -+ tmp = (char *)xmlNodeGetContent(iter); -+ if (tmp) -+ { -+ info->gettext_domain = g_strdup(tmp); -+ xmlFree(tmp); -+ } -+ } - else - g_printerr (_("WARNING: node <%s> not understood below \n"), - iter->name); -@@ -3636,6 +3646,9 @@ process_locale_info(xmlNodePtr node, Sch - if (info->owner != NULL) - gconf_schema_set_owner(schema, info->owner); - -+ if (info->gettext_domain != NULL) -+ gconf_schema_set_gettext_domain(schema, info->gettext_domain); -+ - xmlFree(name); - - /* Locale-specific info */ -@@ -3765,6 +3778,7 @@ get_schema_from_xml(xmlNodePtr node, gch - info.apply_to = NULL; - info.owner = NULL; - info.global_default = NULL; -+ info.gettext_domain = NULL; - info.hash = g_hash_table_new(g_str_hash, g_str_equal); - - extract_global_info(node, &info); -@@ -3801,6 +3815,8 @@ get_schema_from_xml(xmlNodePtr node, gch - ; /* nothing */ - else if (strcmp((char *)iter->name, "applyto") == 0) - ; /* nothing */ -+ else if (strcmp((char *)iter->name, "gettext_domain") == 0) -+ ; /* nothing */ - else if (strcmp((char *)iter->name, "locale") == 0) - { - process_locale_info(iter, &info); -diff -up GConf-2.26.0/gconf/GConfX.idl.gettext GConf-2.26.0/gconf/GConfX.idl ---- GConf-2.26.0/gconf/GConfX.idl.gettext 2009-04-26 23:33:58.457483190 -0400 -+++ GConf-2.26.0/gconf/GConfX.idl 2009-04-26 23:34:53.764448732 -0400 -@@ -16,6 +16,7 @@ struct ConfigSchema { - string short_desc; - string long_desc; - string owner; -+ string gettext_domain; - // Work around lack of recursive data types - string encoded_default_value; - }; diff --git a/runtime-optenv32/gconf+32/spec b/runtime-optenv32/gconf+32/spec index 98ad520b24c..51c40b7ca18 100644 --- a/runtime-optenv32/gconf+32/spec +++ b/runtime-optenv32/gconf+32/spec @@ -1,5 +1,5 @@ VER=3.2.6 +REL=3 SRCS="tbl::https://download.gnome.org/sources/GConf/${VER:0:3}/GConf-$VER.tar.xz" CHKSUMS="sha256::1912b91803ab09a5eed34d364bf09fe3a2a9c96751fde03a4e0cfa51a04d784c" -REL=2 CHKUPDATE="anitya::id=8423" From f3be11f9281e532f230b7f52ac4d52d5218b478e Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 17:44:53 +0800 Subject: [PATCH 138/722] freeglut+32: update to 3.4.0 - Add glu+32 dep. - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/freeglut+32/autobuild/build | 9 --------- runtime-optenv32/freeglut+32/autobuild/defines | 7 ++++--- runtime-optenv32/freeglut+32/spec | 7 +++---- 3 files changed, 7 insertions(+), 16 deletions(-) delete mode 100644 runtime-optenv32/freeglut+32/autobuild/build diff --git a/runtime-optenv32/freeglut+32/autobuild/build b/runtime-optenv32/freeglut+32/autobuild/build deleted file mode 100644 index 256404a7c3d..00000000000 --- a/runtime-optenv32/freeglut+32/autobuild/build +++ /dev/null @@ -1,9 +0,0 @@ -export PATH=/opt/32/bin:$PATH -export PKG_CONFIG_PATH=/opt/32/lib/pkg-config - -cmake . -DCMAKE_INSTALL_PREFIX=/opt/32 -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_C_COMPILER=/opt/32/bin/i686-pc-linux-gnu-gcc -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/freeglut+32/autobuild/defines b/runtime-optenv32/freeglut+32/autobuild/defines index af1da5e1c4f..c1bcbac9a75 100644 --- a/runtime-optenv32/freeglut+32/autobuild/defines +++ b/runtime-optenv32/freeglut+32/autobuild/defines @@ -1,7 +1,8 @@ PKGNAME=freeglut+32 -PKGDES="Free GL User Toolkit (optenv32)" PKGSEC=devel -PKGDEP="x11-lib+32 mesa+32" +PKGDEP="glu+32 mesa+32 x11-lib+32" +BUILDDEP="devel-base+32" +PKGDES="Free GL User Toolkit (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/freeglut+32/spec b/runtime-optenv32/freeglut+32/spec index 7e4244c4001..3b3b3c7476f 100644 --- a/runtime-optenv32/freeglut+32/spec +++ b/runtime-optenv32/freeglut+32/spec @@ -1,5 +1,4 @@ -VER=3.0.0 -SRCS="tbl::https://prdownloads.sourceforge.net/freeglut/freeglut-3.0.0.tar.gz" -CHKSUMS="sha256::2a43be8515b01ea82bcfa17d29ae0d40bd128342f0930cd1f375f1ff999f76a2" -REL=2 +VER=3.4.0 +SRCS="tbl::https://prdownloads.sourceforge.net/freeglut/freeglut-$VER.tar.gz" +CHKSUMS="sha256::3c0bcb915d9b180a97edaebd011b7a1de54583a838644dcd42bb0ea0c6f3eaec" CHKUPDATE="anitya::id=846" From 2aad9813d10fd78a760c89674231408f2fb328ea Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 17:48:25 +0800 Subject: [PATCH 139/722] openal-soft+32: improve packaging - Use optenv32 template. - Move libsndfile+32 as a runtime dependency. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- .../openal-soft+32/autobuild/build | 18 ------------------ .../openal-soft+32/autobuild/defines | 16 ++++++++++++---- runtime-optenv32/openal-soft+32/spec | 1 + 3 files changed, 13 insertions(+), 22 deletions(-) delete mode 100644 runtime-optenv32/openal-soft+32/autobuild/build diff --git a/runtime-optenv32/openal-soft+32/autobuild/build b/runtime-optenv32/openal-soft+32/autobuild/build deleted file mode 100644 index 0f93c381a27..00000000000 --- a/runtime-optenv32/openal-soft+32/autobuild/build +++ /dev/null @@ -1,18 +0,0 @@ -export PATH=/opt/32/bin:$PATH -export PKG_CONFIG_PATH=/opt/32/lib/pkg-config - -# FIXME: Some dependencies (ALSA, etc.) may be probed wrongly by cmake and -# should be manually assigned. -cmake . -DCMAKE_INSTALL_PREFIX=/opt/32 -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_C_COMPILER=/opt/32/bin/gcc \ - -DCMAKE_CXX_COMPILER=/opt/32/bin/g++ \ - -DALSOFT_BACKEND_PORTAUDIO=OFF -DALSOFT_NO_CONFIG_UTIL=ON \ - -DALSOFT_EXAMPLES=OFF -DALSOFT_BACKEND_JACK=OFF \ - -DALSA_INCLUDE_DIR=/opt/32/include/ -DALSA_LIBRARY=/opt/32/lib/libasound.so \ - -DSNDFILE_INCLUDE_DIR=/opt/32/include/ -DSNDFILE_LIBRARY=/opt/32/lib/libsndfile.so \ - -DZLIB_INCLUDE_DIR=/opt/32/include/ -DZLIB_LIBRARY_RELEASE=/opt/32/lib/libz.so - -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/openal-soft+32/autobuild/defines b/runtime-optenv32/openal-soft+32/autobuild/defines index 67724d16cfb..88ad1881394 100644 --- a/runtime-optenv32/openal-soft+32/autobuild/defines +++ b/runtime-optenv32/openal-soft+32/autobuild/defines @@ -1,7 +1,15 @@ PKGNAME=openal-soft+32 PKGSEC=libs -BUILDDEP="libsndfile+32 32subsystem" -PKGDEP="glibc+32" -PKGDES="A cross platform 3D audio library (optenv32)" +PKGDEP="glibc+32 libsndfile+32" +BUILDDEP="devel-base+32" +PKGDES="A cross platform 3D audio library (32-bit x86 runtime)" -ABHOST=noarch +NOLTO=1 +ABHOST=optenv32 + +CMAKE_AFTER=( + '-DALSOFT_BACKEND_PORTAUDIO=OFF' + '-DALSOFT_NO_CONFIG_UTIL=ON' + '-DALSOFT_EXAMPLES=OFF' + '-DALSOFT_BACKEND_JACK=OFF' +) diff --git a/runtime-optenv32/openal-soft+32/spec b/runtime-optenv32/openal-soft+32/spec index 859a2e5fdc4..e4604b1a17f 100644 --- a/runtime-optenv32/openal-soft+32/spec +++ b/runtime-optenv32/openal-soft+32/spec @@ -1,4 +1,5 @@ VER=1.23.1 +REL=1 SRCS="git::commit=tags/$VER::https://github.com/kcat/openal-soft" CHKSUMS="SKIP" CHKUPDATE="anitya::id=8172" From c1467ba1b2287061dcc810d43b00d9f659f4edfd Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 17:50:31 +0800 Subject: [PATCH 140/722] freealut+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/freealut+32/autobuild/build | 12 ------------ runtime-optenv32/freealut+32/autobuild/defines | 8 ++++---- runtime-optenv32/freealut+32/autobuild/prepare | 1 - runtime-optenv32/freealut+32/spec | 2 +- 4 files changed, 5 insertions(+), 18 deletions(-) delete mode 100644 runtime-optenv32/freealut+32/autobuild/build delete mode 100644 runtime-optenv32/freealut+32/autobuild/prepare diff --git a/runtime-optenv32/freealut+32/autobuild/build b/runtime-optenv32/freealut+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/freealut+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/freealut+32/autobuild/defines b/runtime-optenv32/freealut+32/autobuild/defines index 4322d54458b..32ab5e0d04b 100644 --- a/runtime-optenv32/freealut+32/autobuild/defines +++ b/runtime-optenv32/freealut+32/autobuild/defines @@ -1,8 +1,8 @@ PKGNAME=freealut+32 -PKGDEP="openal-soft+32" PKGSEC=sound -PKGDES="OpenAL Utility Toolkit (optenv32)" +PKGDEP="openal-soft+32" +BUILDDEP="devel-base+32" +PKGDES="OpenAL Utility Toolkit (32-bit x86 runtime)" -AUTOTOOLS_AFTER="--disable-static" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/freealut+32/autobuild/prepare b/runtime-optenv32/freealut+32/autobuild/prepare deleted file mode 100644 index 5d4f2eef566..00000000000 --- a/runtime-optenv32/freealut+32/autobuild/prepare +++ /dev/null @@ -1 +0,0 @@ -NOCONFIGURE=1 ./autogen.sh diff --git a/runtime-optenv32/freealut+32/spec b/runtime-optenv32/freealut+32/spec index 3862e91e331..5d1d671b626 100644 --- a/runtime-optenv32/freealut+32/spec +++ b/runtime-optenv32/freealut+32/spec @@ -1,5 +1,5 @@ VER=1.1.0 +REL=3 SRCS="tbl::https://github.com/vancegroup/freealut/archive/freealut_${VER//./_}.tar.gz" CHKSUMS="sha256::c3880d7dbb90c7db54e1d6b88aa0a34dd9e2d828fd389be0d2cbb2632b0885dd" -REL=2 CHKUPDATE="anitya::id=229379" From 95448d6238d83f17e0476800100e1ecb8929c77b Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 19:56:21 +0800 Subject: [PATCH 141/722] mp4v2: update to 4.1.3 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/mp4v2+32/autobuild/build | 12 ------------ runtime-optenv32/mp4v2+32/autobuild/defines | 7 ++++--- .../mp4v2+32/autobuild/patches/CVE-2018-14054.patch | 12 ------------ runtime-optenv32/mp4v2+32/autobuild/prepare | 2 ++ runtime-optenv32/mp4v2+32/spec | 7 +++---- 5 files changed, 9 insertions(+), 31 deletions(-) delete mode 100644 runtime-optenv32/mp4v2+32/autobuild/build delete mode 100644 runtime-optenv32/mp4v2+32/autobuild/patches/CVE-2018-14054.patch create mode 100644 runtime-optenv32/mp4v2+32/autobuild/prepare diff --git a/runtime-optenv32/mp4v2+32/autobuild/build b/runtime-optenv32/mp4v2+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/mp4v2+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/mp4v2+32/autobuild/defines b/runtime-optenv32/mp4v2+32/autobuild/defines index 5f2e247c95d..8cbadff3f2f 100644 --- a/runtime-optenv32/mp4v2+32/autobuild/defines +++ b/runtime-optenv32/mp4v2+32/autobuild/defines @@ -1,7 +1,8 @@ PKGNAME=mp4v2+32 PKGSEC=libs PKGDEP="glibc+32" -BUILDDEP="32subsystem" -PKGDES="Provides functions to read, create, and modify mp4 files (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="Provides functions to read, create, and modify mp4 files (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/mp4v2+32/autobuild/patches/CVE-2018-14054.patch b/runtime-optenv32/mp4v2+32/autobuild/patches/CVE-2018-14054.patch deleted file mode 100644 index 55f68395c54..00000000000 --- a/runtime-optenv32/mp4v2+32/autobuild/patches/CVE-2018-14054.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- mp4v2-trunk.ori/src/mp4property.cpp 2015-04-24 17:37:49.000000000 +0200 -+++ mp4v2-trunk.ori/src/mp4property.cpp 2019-01-17 04:53:44.336981249 +0100 -@@ -393,7 +393,7 @@ - // Generally a default atom setting, e.g. see atom_avc1.cpp, "JVT/AVC Coding"; we'll leak this string if - // we don't free. Note that MP4Free checks for null. - MP4Free(value); -- -+ value = NULL; - if( m_useCountedFormat ) { - value = file.ReadCountedString( (m_useUnicode ? 2 : 1), m_useExpandedCount, m_fixedLength ); - } - diff --git a/runtime-optenv32/mp4v2+32/autobuild/prepare b/runtime-optenv32/mp4v2+32/autobuild/prepare new file mode 100644 index 00000000000..b264fd2ee55 --- /dev/null +++ b/runtime-optenv32/mp4v2+32/autobuild/prepare @@ -0,0 +1,2 @@ +abinfo "Appending -Wno-narrowing to work around build error ..." +export CXXFLAGS="${CXXFLAGS} -Wno-narrowing" diff --git a/runtime-optenv32/mp4v2+32/spec b/runtime-optenv32/mp4v2+32/spec index 9fcf48e760a..bd7ec216e96 100644 --- a/runtime-optenv32/mp4v2+32/spec +++ b/runtime-optenv32/mp4v2+32/spec @@ -1,5 +1,4 @@ -VER=2.0.0 -REL=4 -SRCS="tbl::https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/mp4v2/mp4v2-$VER.tar.bz2" -CHKSUMS="sha256::0319b9a60b667cf10ee0ec7505eb7bdc0a2e21ca7a93db96ec5bd758e3428338" +VER=4.1.3 +SRCS="tbl::https://github.com/TechSmith/mp4v2/archive/Release-ThirdParty-MP4v2-$VER.tar.gz" +CHKSUMS="sha256::e3ad6c2dc451b0875dbe34bfe7f51f4fe278b391434c886083e6d3ecd5fa08c2" CHKUPDATE="anitya::id=98413" From f5e7c2479a77fe75118b2484d859c207273e5ef7 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 19:58:10 +0800 Subject: [PATCH 142/722] faac+32: update to 1.29.9.2 - Use optenv32 template. - Drop outdated patches. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/faac+32/autobuild/build | 12 -- runtime-optenv32/faac+32/autobuild/defines | 6 +- runtime-optenv32/faac+32/autobuild/patch | 6 - .../faac+32/autobuild/patches/altivec.patch | 40 ----- .../faac+32/autobuild/patches/mp4v2-1.9.patch | 47 ------ .../autobuild/patches/mp4v2-2.0.0.patch | 138 ------------------ runtime-optenv32/faac+32/spec | 5 +- 7 files changed, 6 insertions(+), 248 deletions(-) delete mode 100644 runtime-optenv32/faac+32/autobuild/build delete mode 100644 runtime-optenv32/faac+32/autobuild/patch delete mode 100644 runtime-optenv32/faac+32/autobuild/patches/altivec.patch delete mode 100644 runtime-optenv32/faac+32/autobuild/patches/mp4v2-1.9.patch delete mode 100644 runtime-optenv32/faac+32/autobuild/patches/mp4v2-2.0.0.patch diff --git a/runtime-optenv32/faac+32/autobuild/build b/runtime-optenv32/faac+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/faac+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/faac+32/autobuild/defines b/runtime-optenv32/faac+32/autobuild/defines index f91b8fd62b9..00a50da89b2 100644 --- a/runtime-optenv32/faac+32/autobuild/defines +++ b/runtime-optenv32/faac+32/autobuild/defines @@ -1,6 +1,8 @@ PKGNAME=faac+32 -PKGDES="An encoder for Advanced Audio Coding (AAC) (optenv32)" PKGSEC=libs PKGDEP="mp4v2+32" +BUILDDEP="devel-base+32" +PKGDES="An encoder for Advanced Audio Coding (AAC) (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/faac+32/autobuild/patch b/runtime-optenv32/faac+32/autobuild/patch deleted file mode 100644 index 8ced7db7d44..00000000000 --- a/runtime-optenv32/faac+32/autobuild/patch +++ /dev/null @@ -1,6 +0,0 @@ -patch -Np1 -i autobuild/patches/mp4v2-1.9.patch -patch -Np0 -i autobuild/patches/mp4v2-2.0.0.patch -patch -Np0 -i autobuild/patches/altivec.patch - -find . -type f -print0 | xargs -0 sed -i 's/\r//g' -./bootstrap diff --git a/runtime-optenv32/faac+32/autobuild/patches/altivec.patch b/runtime-optenv32/faac+32/autobuild/patches/altivec.patch deleted file mode 100644 index ae461efc30d..00000000000 --- a/runtime-optenv32/faac+32/autobuild/patches/altivec.patch +++ /dev/null @@ -1,40 +0,0 @@ -http://bugs.gentoo.org/306881 - ---- configure.in -+++ configure.in -@@ -33,7 +33,12 @@ - AC_CHECK_DECLS([MP4Create, MP4MetadataDelete], - AC_CHECK_LIB(mp4v2, MP4MetadataDelete, external_mp4v2=yes, - external_mp4v2=no, -lstdc++), -- external_mp4v2=no, [#include ]) -+ external_mp4v2=no, [ -+ #if defined(__ALTIVEC__) -+ #undef bool -+ #endif -+ #include -+ ]) - - if test x$external_mp4v2 = xyes; then - AC_MSG_NOTICE([*** Building with external mp4v2 ***]) ---- frontend/main.c -+++ frontend/main.c -@@ -30,6 +30,9 @@ - #endif - - #ifdef HAVE_LIBMP4V2 -+#if defined(__ALTIVEC__) -+# undef bool -+#endif - # include - #endif - ---- common/mp4v2/mpeg4ip.h -+++ common/mp4v2/mpeg4ip.h -@@ -123,7 +123,6 @@ - #ifdef __cplusplus - extern "C" { - #endif --char *strcasestr(const char *haystack, const char *needle); - #ifdef __cplusplus - } - #endif diff --git a/runtime-optenv32/faac+32/autobuild/patches/mp4v2-1.9.patch b/runtime-optenv32/faac+32/autobuild/patches/mp4v2-1.9.patch deleted file mode 100644 index 54a63347b87..00000000000 --- a/runtime-optenv32/faac+32/autobuild/patches/mp4v2-1.9.patch +++ /dev/null @@ -1,47 +0,0 @@ -diff -ur faac-1.28.orig/configure.in faac-1.28/configure.in ---- faac-1.28.orig/configure.in 2009-02-05 02:55:38.000000000 +0200 -+++ faac-1.28/configure.in 2009-07-10 13:21:34.000000000 +0300 -@@ -28,14 +28,17 @@ - AC_CHECK_LIB(gnugetopt, getopt_long) - - AM_CONDITIONAL(WITH_MP4V2, false) -+AM_CONDITIONAL(WITH_EXTERNAL_MP4V2, false) - - AC_CHECK_DECLS([MP4Create, MP4MetadataDelete], - AC_CHECK_LIB(mp4v2, MP4MetadataDelete, external_mp4v2=yes, - external_mp4v2=no, -lstdc++), -- external_mp4v2=no, [#include ]) -+ external_mp4v2=no, [#include ]) - - if test x$external_mp4v2 = xyes; then - AC_MSG_NOTICE([*** Building with external mp4v2 ***]) -+ MY_DEFINE(HAVE_LIBMP4V2) -+ AM_CONDITIONAL(WITH_EXTERNAL_MP4V2, true) - else - if test x$WITHMP4V2 = xyes; then - AC_MSG_NOTICE([*** Building with internal mp4v2 ***]) -diff -ur faac-1.28.orig/frontend/main.c faac-1.28/frontend/main.c ---- faac-1.28.orig/frontend/main.c 2009-01-24 03:10:20.000000000 +0200 -+++ faac-1.28/frontend/main.c 2009-07-10 13:22:18.000000000 +0300 -@@ -30,7 +30,7 @@ - #endif - - #ifdef HAVE_LIBMP4V2 --# include -+# include - #endif - - #define DEFAULT_TNS 0 -diff -ur faac-1.28.orig/frontend/Makefile.am faac-1.28/frontend/Makefile.am ---- faac-1.28.orig/frontend/Makefile.am 2008-12-16 02:56:00.000000000 +0200 -+++ faac-1.28/frontend/Makefile.am 2009-07-10 13:21:55.000000000 +0300 -@@ -8,5 +8,9 @@ - LDADD = $(top_builddir)/libfaac/libfaac.la $(top_srcdir)/common/mp4v2/libmp4v2.a -lm -lstdc++ - else - INCLUDES = -I$(top_srcdir)/include -+if WITH_EXTERNAL_MP4V2 -+LDADD = $(top_builddir)/libfaac/libfaac.la -lm -lmp4v2 -+else - LDADD = $(top_builddir)/libfaac/libfaac.la -lm - endif -+endif diff --git a/runtime-optenv32/faac+32/autobuild/patches/mp4v2-2.0.0.patch b/runtime-optenv32/faac+32/autobuild/patches/mp4v2-2.0.0.patch deleted file mode 100644 index f4ac8e6d4c5..00000000000 --- a/runtime-optenv32/faac+32/autobuild/patches/mp4v2-2.0.0.patch +++ /dev/null @@ -1,138 +0,0 @@ -http://bugs.gentoo.org/397575 -http://sourceforge.net/tracker/?func=detail&aid=3476707&group_id=704&atid=100704 - ---- configure.in -+++ configure.in -@@ -33,8 +33,8 @@ AC_CHECK_LIB(gnugetopt, getopt_long) - AM_CONDITIONAL(WITH_MP4V2, false) - AM_CONDITIONAL(WITH_EXTERNAL_MP4V2, false) - --AC_CHECK_DECLS([MP4Create, MP4MetadataDelete], -- AC_CHECK_LIB(mp4v2, MP4MetadataDelete, external_mp4v2=yes, -+AC_CHECK_DECLS([MP4Create], -+ AC_CHECK_LIB(mp4v2, MP4Create, external_mp4v2=yes, - external_mp4v2=no, -lstdc++), - external_mp4v2=no, [#include ]) - -@@ -42,6 +42,7 @@ if test x$external_mp4v2 = xyes; then - AC_MSG_NOTICE([*** Building with external mp4v2 ***]) - MY_DEFINE(HAVE_EXTERNAL_LIBMP4V2) - AM_CONDITIONAL(WITH_EXTERNAL_MP4V2, true) -+ AC_CHECK_DECLS([MP4TagsAlloc], [], [], [#include ]) - else - if test x$WITHMP4V2 = xyes; then - AC_MSG_NOTICE([*** Building with internal mp4v2 ***]) ---- frontend/main.c -+++ frontend/main.c -@@ -873,8 +873,12 @@ int main(int argc, char *argv[]) - if (!faacEncSetConfiguration(hEncoder, myFormat)) { - fprintf(stderr, "Unsupported output format!\n"); - #ifdef HAVE_LIBMP4V2 -+#ifdef MP4_CLOSE_DO_NOT_COMPUTE_BITRATE /* r479 fix */ -+ if (container == MP4_CONTAINER) MP4Close(MP4hFile, 0); -+#else - if (container == MP4_CONTAINER) MP4Close(MP4hFile); - #endif -+#endif - return 1; - } - -@@ -885,12 +889,10 @@ int main(int argc, char *argv[]) - unsigned long ASCLength = 0; - char *version_string; - --#ifdef MP4_CREATE_EXTENSIBLE_FORMAT -- /* hack to compile against libmp4v2 >= 1.0RC3 -- * why is there no version identifier in mp4.h? */ -+#ifdef MP4_DETAILS_ERROR /* r453 fix */ - MP4hFile = MP4Create(aacFileName, MP4_DETAILS_ERROR, 0); - #else -- MP4hFile = MP4Create(aacFileName, MP4_DETAILS_ERROR, 0, 0); -+ MP4hFile = MP4Create(aacFileName, 0); - #endif - if (!MP4_IS_VALID_FILE_HANDLE(MP4hFile)) { - fprintf(stderr, "Couldn't create output file %s\n", aacFileName); -@@ -905,12 +907,22 @@ int main(int argc, char *argv[]) - free(ASC); - - /* set metadata */ -+#if HAVE_DECL_MP4TAGSALLOC -+ const MP4Tags* tags; -+ tags = MP4TagsAlloc(); -+ MP4TagsFetch( tags, MP4hFile ); -+#endif - version_string = malloc(strlen(faac_id_string) + 6); - strcpy(version_string, "FAAC "); - strcpy(version_string + 5, faac_id_string); -+#if !HAVE_DECL_MP4TAGSALLOC - MP4SetMetadataTool(MP4hFile, version_string); -+#else -+ MP4TagsSetEncodingTool(tags, version_string); -+#endif - free(version_string); - -+#if !HAVE_DECL_MP4TAGSALLOC - if (artist) MP4SetMetadataArtist(MP4hFile, artist); - if (writer) MP4SetMetadataWriter(MP4hFile, writer); - if (title) MP4SetMetadataName(MP4hFile, title); -@@ -923,8 +935,40 @@ int main(int argc, char *argv[]) - if (comment) MP4SetMetadataComment(MP4hFile, comment); - if (artSize) { - MP4SetMetadataCoverArt(MP4hFile, art, artSize); -+#else -+ if (artist) MP4TagsSetArtist(tags, artist); -+ if (writer) MP4TagsSetComposer(tags, writer); -+ if (title) MP4TagsSetName(tags, title); -+ if (album) MP4TagsSetAlbum(tags, album); -+ if (trackno > 0) { -+ MP4TagTrack tt; -+ tt.index = trackno; -+ tt.total = ntracks; -+ MP4TagsSetTrack(tags, &tt); -+ } -+ if (discno > 0) { -+ MP4TagDisk td; -+ td.index = discno; -+ td.total = ndiscs; -+ MP4TagsSetDisk(tags, &td); -+ } -+ if (compilation) MP4TagsSetCompilation(tags, compilation); -+ if (year) MP4TagsSetReleaseDate(tags, year); -+ if (genre) MP4TagsSetGenre(tags, genre); -+ if (comment) MP4TagsSetComments(tags, comment); -+ if (artSize) { -+ MP4TagArtwork mp4art; -+ mp4art.data = art; -+ mp4art.size = artSize; -+ mp4art.type = MP4_ART_UNDEFINED; // delegate typing to libmp4v2 -+ MP4TagsAddArtwork( tags, &mp4art ); -+#endif - free(art); - } -+#if HAVE_DECL_MP4TAGSALLOC -+ MP4TagsStore( tags, MP4hFile ); -+ MP4TagsFree( tags ); -+#endif - } - else - { -@@ -1141,11 +1185,19 @@ int main(int argc, char *argv[]) - /* clean up */ - if (container == MP4_CONTAINER) - { -+#ifdef MP4_CLOSE_DO_NOT_COMPUTE_BITRATE /* r479 fix */ -+ MP4Close(MP4hFile, 0); -+#else - MP4Close(MP4hFile); -+#endif - if (optimizeFlag == 1) - { - fprintf(stderr, "\n\nMP4 format optimization... "); -+#ifdef MP4_DETAILS_ERROR /* r453 fix */ - MP4Optimize(aacFileName, NULL, 0); -+#else -+ MP4Optimize(aacFileName, NULL); -+#endif - fprintf(stderr, "Done!"); - } - } else diff --git a/runtime-optenv32/faac+32/spec b/runtime-optenv32/faac+32/spec index e81f56c7f39..d737a68df19 100644 --- a/runtime-optenv32/faac+32/spec +++ b/runtime-optenv32/faac+32/spec @@ -1,5 +1,4 @@ -VER=1.28 +VER=1.29.9.2 SRCS="tbl::https://downloads.sourceforge.net/faac/faac-$VER.tar.gz" -CHKSUMS="sha256::c5141199f4cfb17d749c36ba8cfe4b25f838da67c22f0fec40228b6b9c3d19df" -REL=2 +CHKSUMS="sha256::d45f209d837c49dae6deebcdd87b8cc3b04ea290880358faecf5e7737740c771" CHKUPDATE="anitya::id=13754" From 3c338ebd5e26b614daefc57d6818abf3d9ef6216 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 20:01:07 +0800 Subject: [PATCH 143/722] dbus-glib+32: update to 0.110 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/dbus-glib+32/autobuild/build | 12 ------------ runtime-optenv32/dbus-glib+32/autobuild/defines | 6 ++++-- runtime-optenv32/dbus-glib+32/spec | 5 ++--- 3 files changed, 6 insertions(+), 17 deletions(-) delete mode 100644 runtime-optenv32/dbus-glib+32/autobuild/build diff --git a/runtime-optenv32/dbus-glib+32/autobuild/build b/runtime-optenv32/dbus-glib+32/autobuild/build deleted file mode 100644 index 6cbe1cc8736..00000000000 --- a/runtime-optenv32/dbus-glib+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,etc,libexec,share} diff --git a/runtime-optenv32/dbus-glib+32/autobuild/defines b/runtime-optenv32/dbus-glib+32/autobuild/defines index 6fae1c2d389..f47aa3941b2 100644 --- a/runtime-optenv32/dbus-glib+32/autobuild/defines +++ b/runtime-optenv32/dbus-glib+32/autobuild/defines @@ -1,6 +1,8 @@ PKGNAME=dbus-glib+32 -PKGDES="D-Bus GLib Binding (optenv32)" PKGSEC=libs PKGDEP="glib+32 dbus+32" +BUILDDEP="devel-base+32 gtk-doc" +PKGDES="D-Bus GLib Binding (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/dbus-glib+32/spec b/runtime-optenv32/dbus-glib+32/spec index fa7620e8866..0e98d6bafc2 100644 --- a/runtime-optenv32/dbus-glib+32/spec +++ b/runtime-optenv32/dbus-glib+32/spec @@ -1,5 +1,4 @@ -VER=0.108 +VER=0.110 SRCS="tbl::https://dbus.freedesktop.org/releases/dbus-glib/dbus-glib-$VER.tar.gz" -CHKSUMS="sha256::9f340c7e2352e9cdf113893ca77ca9075d9f8d5e81476bf2bf361099383c602c" -REL=2 +CHKSUMS="sha256::7ce4760cf66c69148f6bd6c92feaabb8812dee30846b24cd0f7395c436d7e825" CHKUPDATE="anitya::id=1979" From bf7ce1fc60270b8ca5e4f94510a2b0624a69b70b Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 20:06:58 +0800 Subject: [PATCH 144/722] libssh2+32: improve packaging - Use optenv32 template. - Introduce a patch from OpenEmbedded to fix autoreconf. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libssh2+32/autobuild/build | 9 ------ runtime-optenv32/libssh2+32/autobuild/defines | 7 +++-- ...ditionally-undefine-backend-m4-macro.patch | 30 +++++++++++++++++++ runtime-optenv32/libssh2+32/spec | 2 +- 4 files changed, 35 insertions(+), 13 deletions(-) delete mode 100644 runtime-optenv32/libssh2+32/autobuild/build create mode 100644 runtime-optenv32/libssh2+32/autobuild/patches/0001-configure-Conditionally-undefine-backend-m4-macro.patch diff --git a/runtime-optenv32/libssh2+32/autobuild/build b/runtime-optenv32/libssh2+32/autobuild/build deleted file mode 100644 index 5625b8c4e41..00000000000 --- a/runtime-optenv32/libssh2+32/autobuild/build +++ /dev/null @@ -1,9 +0,0 @@ -export PATH=/opt/32/bin:$PATH -./configure --prefix=/opt/32 \ - --disable-static \ - CC=i686-pc-linux-gnu-gcc CXX=i686-pc-linux-gnu-g++ \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/share diff --git a/runtime-optenv32/libssh2+32/autobuild/defines b/runtime-optenv32/libssh2+32/autobuild/defines index eecbc6c0ed1..dc72bf75c85 100644 --- a/runtime-optenv32/libssh2+32/autobuild/defines +++ b/runtime-optenv32/libssh2+32/autobuild/defines @@ -1,7 +1,8 @@ PKGNAME=libssh2+32 PKGSEC=libs PKGDEP="openssl+32 zlib+32" -BUILDDEP="32subsystem" -PKGDES="A client-side C library implementing the SSH2 protocol (optenv32)" +BUILDDEP="autoconf-archive devel-base+32" +PKGDES="A client-side C library implementing the SSH2 protocol (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libssh2+32/autobuild/patches/0001-configure-Conditionally-undefine-backend-m4-macro.patch b/runtime-optenv32/libssh2+32/autobuild/patches/0001-configure-Conditionally-undefine-backend-m4-macro.patch new file mode 100644 index 00000000000..7be40affd09 --- /dev/null +++ b/runtime-optenv32/libssh2+32/autobuild/patches/0001-configure-Conditionally-undefine-backend-m4-macro.patch @@ -0,0 +1,30 @@ +From efe7101786193eaddb749c0583af6b54aec6f289 Mon Sep 17 00:00:00 2001 +From: Khem Raj +Date: Tue, 2 Feb 2021 18:45:16 -0800 +Subject: [PATCH] configure: Conditionally undefine backend m4 macro + +Unlike the M4 builtin, this macro fails if macro is not defined +therefore recover the behavior of the builtin. + +Upstream-Status: Pending +Signed-off-by: Khem Raj +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index fe5054a..758f8c2 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -127,7 +127,7 @@ fi + m4_set_foreach([crypto_backends], [backend], + [AM_CONDITIONAL(m4_toupper(backend), test "$found_crypto" = "backend")] + ) +-m4_undefine([backend]) ++m4_ifdef([backend], [m4_undefine([backend])]) + + + # libz +-- +2.30.0 + diff --git a/runtime-optenv32/libssh2+32/spec b/runtime-optenv32/libssh2+32/spec index 700af2b205b..4c6e89d52e5 100644 --- a/runtime-optenv32/libssh2+32/spec +++ b/runtime-optenv32/libssh2+32/spec @@ -1,5 +1,5 @@ VER=1.9.0 +REL=3 SRCS="tbl::https://www.libssh2.org/download/libssh2-$VER.tar.gz" CHKSUMS="sha256::d5fb8bd563305fd1074dda90bd053fb2d29fc4bce048d182f96eaa466dfadafd" -REL=2 CHKUPDATE="anitya::id=1730" From 8e54c5776f789fedd62512e6ce0cbd0c5cb582f3 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 20:09:53 +0800 Subject: [PATCH 145/722] libusb+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libusb+32/autobuild/build | 5 ----- runtime-optenv32/libusb+32/autobuild/defines | 9 ++++----- runtime-optenv32/libusb+32/spec | 2 +- 3 files changed, 5 insertions(+), 11 deletions(-) delete mode 100644 runtime-optenv32/libusb+32/autobuild/build diff --git a/runtime-optenv32/libusb+32/autobuild/build b/runtime-optenv32/libusb+32/autobuild/build deleted file mode 100644 index 18d87e2f654..00000000000 --- a/runtime-optenv32/libusb+32/autobuild/build +++ /dev/null @@ -1,5 +0,0 @@ -export PATH=/opt/32/bin:$PATH -./configure --prefix=/opt/32 \ - CC=i686-pc-linux-gnu-gcc CXX=i686-pc-linux-gnu-g++ -make -make install DESTDIR=$PKGDIR diff --git a/runtime-optenv32/libusb+32/autobuild/defines b/runtime-optenv32/libusb+32/autobuild/defines index 85a65e86680..42d44361e0d 100644 --- a/runtime-optenv32/libusb+32/autobuild/defines +++ b/runtime-optenv32/libusb+32/autobuild/defines @@ -1,9 +1,8 @@ PKGNAME=libusb+32 -PKGDES="A library used by some applications for USB device access" -PKGDEP="glibc+32" -BUILDDEP="32subsystem" PKGSEC=libs +PKGDEP="eudev+32 glibc+32" +BUILDDEP="devel-base+32" +PKGDES="A library providing USB device access and manipulation support (32-bit x86 runtime)" -NOPARALLEL=1 NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libusb+32/spec b/runtime-optenv32/libusb+32/spec index 9bb183b489c..ca6656cffa7 100644 --- a/runtime-optenv32/libusb+32/spec +++ b/runtime-optenv32/libusb+32/spec @@ -1,5 +1,5 @@ VER=1.0.23 +REL=2 SRCS="tbl::https://github.com/libusb/libusb/releases/download/v$VER/libusb-$VER.tar.bz2" CHKSUMS="sha256::db11c06e958a82dac52cf3c65cb4dd2c3f339c8a988665110e0d24d19312ad8d" -REL=1 CHKUPDATE="anitya::id=1749" From 8aa432668757a8ea597d11f154309036debdd6e0 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 20:16:10 +0800 Subject: [PATCH 146/722] openldap+32: update to 2.6.7 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/openldap+32/autobuild/build | 19 ------------------- .../openldap+32/autobuild/defines | 15 ++++++++++++--- .../openldap+32/autobuild/prepare | 4 ---- runtime-optenv32/openldap+32/spec | 5 ++--- 4 files changed, 14 insertions(+), 29 deletions(-) delete mode 100644 runtime-optenv32/openldap+32/autobuild/build delete mode 100644 runtime-optenv32/openldap+32/autobuild/prepare diff --git a/runtime-optenv32/openldap+32/autobuild/build b/runtime-optenv32/openldap+32/autobuild/build deleted file mode 100644 index 133d579cc78..00000000000 --- a/runtime-optenv32/openldap+32/autobuild/build +++ /dev/null @@ -1,19 +0,0 @@ -export PATH=/opt/32/bin:$PATH -./configure --prefix=/opt/32 \ - --libexecdir=/opt/32/bin \ - --enable-crypt --enable-dynamic \ - --with-threads --disable-wrappers \ - --disable-spasswd --without-cyrus-sasl \ - --disable-bdb --disable-hdb \ - --host=i686-pc-linux-gnu --build=i686-pc-linux-gnu \ - CC=i686-pc-linux-gnu-gcc CXX=i686-pc-linux-gnu-g++ \ - LDFLAGS="-L/opt/32/lib" \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig - -make -make install DESTDIR="$PKGDIR" - -chmod 755 abdist/opt/32/lib/* - -rm -rf "$PKGDIR"/opt/32/{bin,sbin,etc,var,share} -rm -rf "$PKGDIR"/run diff --git a/runtime-optenv32/openldap+32/autobuild/defines b/runtime-optenv32/openldap+32/autobuild/defines index abc39a37198..dcd330c7be5 100644 --- a/runtime-optenv32/openldap+32/autobuild/defines +++ b/runtime-optenv32/openldap+32/autobuild/defines @@ -1,8 +1,17 @@ PKGNAME=openldap+32 PKGSEC=net PKGDEP="openssl+32" -BUILDDEP="32subsystem" -PKGDES="Lightweight Directory Access Protocol (LDAP) client/server (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="Lightweight Directory Access Protocol (LDAP) client/server (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 + +AUTOTOOLS_AFTER=( + '--enable-crypt' + '--enable-dynamic' + '--with-threads' + '--disable-wrappers' + '--disable-spasswd' + '--without-cyrus-sasl' +) diff --git a/runtime-optenv32/openldap+32/autobuild/prepare b/runtime-optenv32/openldap+32/autobuild/prepare deleted file mode 100644 index 87d27dff2ec..00000000000 --- a/runtime-optenv32/openldap+32/autobuild/prepare +++ /dev/null @@ -1,4 +0,0 @@ -sed -i 's|-m 644 $(LIBRARY)|-m 755 $(LIBRARY)|' libraries/{liblber,libldap,libldap_r}/Makefile.in -sed -i 's|#define LDAPI_SOCK LDAP_RUNDIR LDAP_DIRSEP "run" LDAP_DIRSEP "ldapi"|#define LDAPI_SOCK LDAP_DIRSEP "run" LDAP_DIRSEP "openldap" LDAP_DIRSEP "ldapi"|' include/ldap_defaults.h -sed -i 's|%LOCALSTATEDIR%/run|/run/openldap|' servers/slapd/slapd.{conf,ldif} -sed -i 's|-$(MKDIR) $(DESTDIR)$(localstatedir)/run|-$(MKDIR) $(DESTDIR)/run/openldap|' servers/slapd/Makefile.in diff --git a/runtime-optenv32/openldap+32/spec b/runtime-optenv32/openldap+32/spec index a02de362693..7adf528d366 100644 --- a/runtime-optenv32/openldap+32/spec +++ b/runtime-optenv32/openldap+32/spec @@ -1,5 +1,4 @@ -VER=2.4.59 +VER=2.6.7 SRCS="tbl::https://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-$VER.tgz" -CHKSUMS="sha256::99f37d6747d88206c470067eda624d5e48c1011e943ec0ab217bae8712e22f34" +CHKSUMS="sha256::cd775f625c944ed78a3da18a03b03b08eea73c8aabc97b41bb336e9a10954930" CHKUPDATE="anitya::id=2551" -REL=1 From 4a2f5b2d79b51248246ce4514f7447077f2f4d15 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 20:39:37 +0800 Subject: [PATCH 147/722] cups+32: update to 2.4.11 - Use optenv32 template. - Drop outdated patches. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/cups+32/autobuild/beyond | 2 -- runtime-optenv32/cups+32/autobuild/build | 15 ------------- runtime-optenv32/cups+32/autobuild/defines | 26 +++++++++++++++++++--- runtime-optenv32/cups+32/spec | 6 ++--- 4 files changed, 26 insertions(+), 23 deletions(-) delete mode 100644 runtime-optenv32/cups+32/autobuild/beyond delete mode 100644 runtime-optenv32/cups+32/autobuild/build diff --git a/runtime-optenv32/cups+32/autobuild/beyond b/runtime-optenv32/cups+32/autobuild/beyond deleted file mode 100644 index 4f7aab76137..00000000000 --- a/runtime-optenv32/cups+32/autobuild/beyond +++ /dev/null @@ -1,2 +0,0 @@ -cp -r "$PKGDIR"/opt/32/lib64/* "$PKGDIR"/opt/32/lib/ -rm -rf "$PKGDIR"/opt/32/lib64 diff --git a/runtime-optenv32/cups+32/autobuild/build b/runtime-optenv32/cups+32/autobuild/build deleted file mode 100644 index 6999b31ed19..00000000000 --- a/runtime-optenv32/cups+32/autobuild/build +++ /dev/null @@ -1,15 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc -CXX=i686-pc-linux-gnu-g++ - -./configure --prefix=/opt/32 --sysconfdir=/etc \ - --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --localstatedir=/var --enable-ldap --enable-raw-printing \ - --enable-gssapi --enable-dbus \ - --enable-ssl=yes --enable-threads --enable-libusb \ - --disable-avahi --disable-dnssd \ - CFLAGS="-I/opt/32/include" CPP=/opt/32/bin/cpp -make libs -make install-libs BUILDROOT="$PKGDIR" diff --git a/runtime-optenv32/cups+32/autobuild/defines b/runtime-optenv32/cups+32/autobuild/defines index e5394326287..3267f896e3d 100644 --- a/runtime-optenv32/cups+32/autobuild/defines +++ b/runtime-optenv32/cups+32/autobuild/defines @@ -1,8 +1,28 @@ PKGNAME=cups+32 PKGSEC=libs PKGDEP="krb5+32 libtiff+32 libpng+32 gnutls+32 openldap+32 libusb+32 dbus+32" -BUILDDEP="32subsystem" -PKGDES="The CUPS Printing System (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="The CUPS Printing System (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 + +# FIXME: --with-ondemand=upstart is the only way to remove systemd dependency. +AUTOTOOLS_AFTER=( + '--enable-raw-printing' + '--enable-gssapi' + '--enable-dbus' + '--enable-libusb' + '--with-ondemand=upstart' + '--enable-debug' +) + +# FIXME: Missing templates? +# +# autoheader: warning: missing template: HAVE_ABS +# autoheader: warning: missing template: HAVE_MALLINFO +# autoreconf: error: /usr/bin/autoheader failed with exit status: 1 +RECONF=0 + +# FIXME: Source expects non-shadow build. +ABSHADOW=0 diff --git a/runtime-optenv32/cups+32/spec b/runtime-optenv32/cups+32/spec index 59609fe4ef0..f051b06193d 100644 --- a/runtime-optenv32/cups+32/spec +++ b/runtime-optenv32/cups+32/spec @@ -1,4 +1,4 @@ -VER=2.3.3 -SRCS="tbl::https://github.com/apple/cups/releases/download/v$VER/cups-$VER-source.tar.gz" -CHKSUMS="sha256::261fd948bce8647b6d5cb2a1784f0c24cc52b5c4e827b71d726020bcc502f3ee" +VER=2.4.11 +SRCS="git::commit=tags/v$VER::https://github.com/OpenPrinting/cups" +CHKSUMS="SKIP" CHKUPDATE="anitya::id=380" From 0fbdea400e95db194ec3b27d976ba4e65bbc5460 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 20:42:57 +0800 Subject: [PATCH 148/722] libglvnd+32: update to 1.7.0 - Use optenv32 template. - Lint scripts in accordance with the Styling Manual. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libglvnd+32/autobuild/beyond | 3 ++- runtime-optenv32/libglvnd+32/autobuild/build | 12 ------------ runtime-optenv32/libglvnd+32/autobuild/defines | 13 +++++++------ runtime-optenv32/libglvnd+32/spec | 6 +++--- 4 files changed, 12 insertions(+), 22 deletions(-) delete mode 100644 runtime-optenv32/libglvnd+32/autobuild/build diff --git a/runtime-optenv32/libglvnd+32/autobuild/beyond b/runtime-optenv32/libglvnd+32/autobuild/beyond index 3a2ef24c362..c1796f88704 100644 --- a/runtime-optenv32/libglvnd+32/autobuild/beyond +++ b/runtime-optenv32/libglvnd+32/autobuild/beyond @@ -1,3 +1,4 @@ -mkdir -p "$PKGDIR"/opt/32/lib/glvnd +abinfo "Moving runtime libraries out for alternatives ..." +mkdir -pv "$PKGDIR"/opt/32/lib/glvnd mv -v "$PKGDIR"/opt/32/lib/*.so* \ "$PKGDIR"/opt/32/lib/glvnd/ diff --git a/runtime-optenv32/libglvnd+32/autobuild/build b/runtime-optenv32/libglvnd+32/autobuild/build deleted file mode 100644 index ec7be623d25..00000000000 --- a/runtime-optenv32/libglvnd+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -autoreconf -fi -./configure --prefix=/opt/32 --disable-static \ - --host=i686-pc-linux-gnu --build=i686-pc-linux-gnu \ - --target=i686-pc-linux-gnu \ - CC=i686-pc-linux-gnu-gcc CXX=i686-pc-linux-gnu-g++ \ - LDFLAGS="-L/opt/32/lib" PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make DESTDIR="$PKGDIR" install - -rm -rf "$PKGDIR"/opt/32/share diff --git a/runtime-optenv32/libglvnd+32/autobuild/defines b/runtime-optenv32/libglvnd+32/autobuild/defines index fd7f58db46e..16dce7ca17e 100644 --- a/runtime-optenv32/libglvnd+32/autobuild/defines +++ b/runtime-optenv32/libglvnd+32/autobuild/defines @@ -1,14 +1,15 @@ PKGNAME=libglvnd+32 PKGSEC=libs PKGDEP="x11-lib+32" -BUILDDEP="32subsystem python-3" -PKGDES="The GL Vendor-Neutral Dispatch library (optenv32)" +BUILDDEP="devel-base+32 python-3" +PKGDES="The GL Vendor-Neutral Dispatch library (32-bit x86 runtime)" PKGBREAK="mesa+32<=19.3.1 nvidia+32<=390.25 nvidia-libgl+32<=390.25" PKGREP="$PKGBREAK" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 -AUTOTOOLS_AFTER=" - PYTHON=/usr/bin/python3 -" +AUTOTOOLS_AFTER=( + 'PYTHON=/usr/bin/python3' +) diff --git a/runtime-optenv32/libglvnd+32/spec b/runtime-optenv32/libglvnd+32/spec index 5d17e0783cd..89f9aa9ee18 100644 --- a/runtime-optenv32/libglvnd+32/spec +++ b/runtime-optenv32/libglvnd+32/spec @@ -1,4 +1,4 @@ -VER=1.6.0 -SRCS="tbl::https://github.com/NVIDIA/libglvnd/archive/v$VER.tar.gz" -CHKSUMS="sha256::e31dd71441604cf7467397e740af8070caa84133b5ed71241d3d5ca84c950baf" +VER=1.7.0 +SRCS="git::commit=tags/v$VER::https://github.com/NVIDIA/libglvnd" +CHKSUMS="SKIP" CHKUPDATE="anitya::id=12098" From acc9a08a1992f5ade356b09db32dca994b5e729b Mon Sep 17 00:00:00 2001 From: Kaiyang Wu Date: Wed, 4 Dec 2024 19:22:32 -0800 Subject: [PATCH 149/722] libxnvctrl+32: update to 565.57.01 Signed-off-by: Kaiyang Wu --- runtime-optenv32/libxnvctrl+32/autobuild/build | 3 --- runtime-optenv32/libxnvctrl+32/autobuild/defines | 6 +++--- runtime-optenv32/libxnvctrl+32/spec | 8 ++++---- 3 files changed, 7 insertions(+), 10 deletions(-) diff --git a/runtime-optenv32/libxnvctrl+32/autobuild/build b/runtime-optenv32/libxnvctrl+32/autobuild/build index e5dcf175da5..6760f3ad6e3 100644 --- a/runtime-optenv32/libxnvctrl+32/autobuild/build +++ b/runtime-optenv32/libxnvctrl+32/autobuild/build @@ -1,7 +1,4 @@ abinfo "Building libXNVCtrl.so ..." -export PATH=/opt/32/bin:$PATH -export CC=i686-pc-linux-gnu-gcc - make abinfo "Installing libXNVCtrl.so ..." diff --git a/runtime-optenv32/libxnvctrl+32/autobuild/defines b/runtime-optenv32/libxnvctrl+32/autobuild/defines index d704e8ddb4c..8e5d0d997c3 100644 --- a/runtime-optenv32/libxnvctrl+32/autobuild/defines +++ b/runtime-optenv32/libxnvctrl+32/autobuild/defines @@ -1,7 +1,7 @@ PKGNAME=libxnvctrl+32 PKGSEC=libs PKGDEP="x11-lib+32" -BUILDDEP="32subsystem" -PKGDES="X extension for the NVIDIA NV-CONTROL API (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="X extension for the NVIDIA NV-CONTROL API (32-bit x86 runtime)" -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libxnvctrl+32/spec b/runtime-optenv32/libxnvctrl+32/spec index ee350735dd5..faef5c65a63 100644 --- a/runtime-optenv32/libxnvctrl+32/spec +++ b/runtime-optenv32/libxnvctrl+32/spec @@ -1,5 +1,5 @@ -VER=545.23.06 -SRCS="tbl::https://github.com/NVIDIA/nvidia-settings/archive/${VER}.tar.gz" -CHKSUMS="sha256::a4e0045c77406678c0d6c52433398b74d51f58cf19d350682b6408e154d7b6e8" +VER=565.57.01 +SRCS="git::commit=tags/$VER::https://github.com/NVIDIA/nvidia-settings" +CHKSUMS="SKIP" CHKUPDATE="anitya::id=5435" -SUBDIR="nvidia-settings-${VER}/src/libXNVCtrl" +SUBDIR="libxnvctrl+32/src/libXNVCtrl" From 6cdb7e22dd9854ff44874702392fd8175516c76c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 20:48:18 +0800 Subject: [PATCH 150/722] libvdpau+32: update to 1.5 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libvdpau+32/autobuild/beyond | 1 - runtime-optenv32/libvdpau+32/autobuild/build | 8 -------- runtime-optenv32/libvdpau+32/autobuild/defines | 6 ++++-- runtime-optenv32/libvdpau+32/spec | 7 +++---- 4 files changed, 7 insertions(+), 15 deletions(-) delete mode 100644 runtime-optenv32/libvdpau+32/autobuild/beyond delete mode 100644 runtime-optenv32/libvdpau+32/autobuild/build diff --git a/runtime-optenv32/libvdpau+32/autobuild/beyond b/runtime-optenv32/libvdpau+32/autobuild/beyond deleted file mode 100644 index edd6b9a9315..00000000000 --- a/runtime-optenv32/libvdpau+32/autobuild/beyond +++ /dev/null @@ -1 +0,0 @@ -rm -rf abdist/etc diff --git a/runtime-optenv32/libvdpau+32/autobuild/build b/runtime-optenv32/libvdpau+32/autobuild/build deleted file mode 100644 index 233ddf82e74..00000000000 --- a/runtime-optenv32/libvdpau+32/autobuild/build +++ /dev/null @@ -1,8 +0,0 @@ -export PATH=/opt/32/bin:$PATH -./configure --prefix=/opt/32 --sysconfdir=/etc \ - CC=i686-pc-linux-gnu-gcc \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR=$PKGDIR - -rm -rf $PKGDIR/opt/32/share diff --git a/runtime-optenv32/libvdpau+32/autobuild/defines b/runtime-optenv32/libvdpau+32/autobuild/defines index 4d02bdf011a..3fe64d0f085 100644 --- a/runtime-optenv32/libvdpau+32/autobuild/defines +++ b/runtime-optenv32/libvdpau+32/autobuild/defines @@ -1,6 +1,8 @@ PKGNAME=libvdpau+32 -PKGDES="Vdpau for 32Subsystem" PKGSEC=libs PKGDEP="x11-lib+32" +BUILDDEP="devel-base+32" +PKGDES="Video Decode and Presentation API for Unix, from NVIDIA (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libvdpau+32/spec b/runtime-optenv32/libvdpau+32/spec index 12eb0518c46..006bb1f55f0 100644 --- a/runtime-optenv32/libvdpau+32/spec +++ b/runtime-optenv32/libvdpau+32/spec @@ -1,5 +1,4 @@ -VER=1.1.1 -SRCS="tbl::https://people.freedesktop.org/~aplattner/vdpau/libvdpau-$VER.tar.bz2" -CHKSUMS="sha256::857a01932609225b9a3a5bf222b85e39b55c08787d0ad427dbd9ec033d58d736" -REL=2 +VER=1.5 +SRCS="git::commit=tags/$VER::https://gitlab.freedesktop.org/vdpau/libvdpau" +CHKSUMS="SKIP" CHKUPDATE="anitya::id=1755" From 0a4cbb9b1c64195aa93ce684ed0fc856d29fb0b3 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 26 Dec 2024 20:57:14 +0800 Subject: [PATCH 151/722] eudev+32: update to 3.2.14 - Use optenv32 template. - Fix up build-time dependencies. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/eudev+32/autobuild/beyond | 8 +++++++ runtime-optenv32/eudev+32/autobuild/build | 24 --------------------- runtime-optenv32/eudev+32/autobuild/defines | 13 +++++++++-- runtime-optenv32/eudev+32/spec | 7 +++--- 4 files changed, 22 insertions(+), 30 deletions(-) create mode 100644 runtime-optenv32/eudev+32/autobuild/beyond delete mode 100644 runtime-optenv32/eudev+32/autobuild/build diff --git a/runtime-optenv32/eudev+32/autobuild/beyond b/runtime-optenv32/eudev+32/autobuild/beyond new file mode 100644 index 00000000000..15bae1f3c87 --- /dev/null +++ b/runtime-optenv32/eudev+32/autobuild/beyond @@ -0,0 +1,8 @@ +abinfo "Correcting pkg-config directory ..." +mv -v "$PKGDIR"/opt/32/share/pkgconfig/udev.pc \ + "$PKGDIR"/opt/32/lib/pkgconfig/udev.pc +rm -rv "$PKGDIR"/opt/32/share/pkgconfig + +abinfo "Creating a compatible versioned symlink to libudev.so.0 ..." +ln -sv libudev.so.1 \ + "$PKGDIR"/opt/32/lib/libudev.so.0 diff --git a/runtime-optenv32/eudev+32/autobuild/build b/runtime-optenv32/eudev+32/autobuild/build deleted file mode 100644 index 64caff99f60..00000000000 --- a/runtime-optenv32/eudev+32/autobuild/build +++ /dev/null @@ -1,24 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -NOCONFIGURE=1 ./autogen.sh - -./configure --prefix=/opt/32 --sysconfdir=/etc --localstatedir=/var \ - --with-rootprefix=/ \ - --disable-introspection --disable-selinux \ - --enable-gudev --disable-keymap --disable-gtk-doc \ - --disable-kmod \ - --disable-manpages --enable-rule-generator \ - --with-firmware-path=/usr/lib/firmware \ - CC=i686-pc-linux-gnu-gcc CXX=i686-pc-linux-gnu-g++ \ - LDFLAGS="${LDFLAGS} -L/opt/32/lib" \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -j1 -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/etc -rm -rf "$PKGDIR"/opt/32/{bin,sbin,lib/udev} - -mv "$PKGDIR"/opt/32/share/pkgconfig/udev.pc "$PKGDIR"/opt/32/lib/pkgconfig/udev.pc -rm -rf "$PKGDIR"/opt/32/share - -ln -s libudev.so.1 "$PKGDIR"/opt/32/lib/libudev.so.0 diff --git a/runtime-optenv32/eudev+32/autobuild/defines b/runtime-optenv32/eudev+32/autobuild/defines index de15eed5a21..15f0888e1c9 100644 --- a/runtime-optenv32/eudev+32/autobuild/defines +++ b/runtime-optenv32/eudev+32/autobuild/defines @@ -1,7 +1,16 @@ PKGNAME=eudev+32 PKGSEC=libs PKGDEP="acl+32 dbus+32 hwdata glib+32 util-linux+32" -PKGDES="A stripped down version of UDev by Gentoo (optenv32)" +BUILDDEP="devel-base+32 docbook-dtd docbook-xsl gperf libxslt" +PKGDES="A stripped-down version of UDev by Gentoo (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 + +AUTOTOOLS_AFTER=( + '--with-rootprefix=/' + '--disable-selinux' + '--disable-kmod' + '--disable-manpages' + '--enable-rule-generator' +) diff --git a/runtime-optenv32/eudev+32/spec b/runtime-optenv32/eudev+32/spec index 5a36e785de0..68be77bf495 100644 --- a/runtime-optenv32/eudev+32/spec +++ b/runtime-optenv32/eudev+32/spec @@ -1,5 +1,4 @@ -VER=3.1.5 -REL=5 -SRCS="tbl::https://github.com/gentoo/eudev/archive/v$VER.tar.gz" -CHKSUMS="sha256::ce9d5fa91e3a42c7eb95512ca0fa2a631e89833053066bb6cdf42046b2a88553" +VER=3.2.14 +SRCS="git::commit=tags/v$VER::https://github.com/gentoo/eudev" +CHKSUMS="SKIP" CHKUPDATE="anitya::id=13466" From febc64c81b7d96034e19c12a9ac548eb378e6ecc Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Fri, 27 Dec 2024 13:18:52 +0800 Subject: [PATCH 152/722] llvm+32: update to 18.1.8 - Use optenv32 template. - Add zstd+32 dep. - Improve PKGDES optenv32 => 32-bit x86 runtime. - Build LLVM as a runtime package, with Clang as symlinks. Co-authored-by: liushuyu --- runtime-optenv32/llvm+32/autobuild/beyond | 11 + runtime-optenv32/llvm+32/autobuild/build | 37 -- runtime-optenv32/llvm+32/autobuild/defines | 36 +- .../llvm+32/autobuild/fake-toolchain.cmake | 4 + runtime-optenv32/llvm+32/autobuild/patch | 5 + ...objects-building-when-LTO-is-enabled.patch | 25 + .../patches/0001-fix-riscv64-abi.patch | 29 -- .../patches/0002-Fix-MSVC-detection.patch | 25 + .../0002-aosc-exclusive-tuples.patch.deferred | 62 --- ...3-mips-Add-stub-for-mips64-LLDB-impl.patch | 30 ++ ...for-lldb-arch-functions-on-loongson3.patch | 32 ++ ...ACK-force-enable-cacheflush-function.patch | 24 + ...ps-Fix-build-of-LinuxSignals-on-Mips.patch | 93 ++++ ...> 0007-rust-Compile-with-MT-on-MSVC.patch} | 16 +- ...ment-out-__builtin_available-use-21.patch} | 16 +- ...ed-for-x86_64-fortanix-unknown-sgx-.patch} | 144 +++--- ...e-hashmap-to-find-PCREL_HI20-edge-78.patch | 108 +++++ ...nmap-standard-segments-in-InProcessM.patch | 38 ++ ...6-codegen-with-expansion-to-libcalls.patch | 391 +++++++++++++++ .../patches/1000-i686-gcc-compatibility.patch | 11 + ...SubtargetInfo-CPU-and-Featu.patch.deferred | 33 -- ...ntimes-force-remove-clang-dependency.patch | 11 + ...rust_-alloc-realloc-dealloc.patch.deferred | 94 ---- .../patches/1002-i686-gcc-use-gcc-flags.patch | 13 + ...or-info-on-i386-mingw-w64-7.patch.deferred | 41 -- ...-alignment-assertion-on-ix8.patch.deferred | 29 -- ...STATE_MAGIC1-if-not-defined.patch.deferred | 33 -- ...-Work-around-ICE-in-GCC-5.4.patch.deferred | 27 -- ...m-functions-that-call-non-c.patch.deferred | 43 -- ...tercept-md5-and-sha-apis-on.patch.deferred | 450 ------------------ ...PROC_ASLR_STATUS-is-defined.patch.deferred | 26 - ...uild-ID-handling-on-FreeBSD.patch.deferred | 26 - ...-Declare-madvise-on-illumos.patch.deferred | 32 -- runtime-optenv32/llvm+32/autobuild/prepare | 55 --- runtime-optenv32/llvm+32/spec | 5 +- 35 files changed, 935 insertions(+), 1120 deletions(-) create mode 100644 runtime-optenv32/llvm+32/autobuild/beyond delete mode 100644 runtime-optenv32/llvm+32/autobuild/build create mode 100644 runtime-optenv32/llvm+32/autobuild/fake-toolchain.cmake create mode 100644 runtime-optenv32/llvm+32/autobuild/patch create mode 100644 runtime-optenv32/llvm+32/autobuild/patches/0001-Fix-fuzzer-objects-building-when-LTO-is-enabled.patch delete mode 100644 runtime-optenv32/llvm+32/autobuild/patches/0001-fix-riscv64-abi.patch create mode 100644 runtime-optenv32/llvm+32/autobuild/patches/0002-Fix-MSVC-detection.patch delete mode 100644 runtime-optenv32/llvm+32/autobuild/patches/0002-aosc-exclusive-tuples.patch.deferred create mode 100644 runtime-optenv32/llvm+32/autobuild/patches/0003-mips-Add-stub-for-mips64-LLDB-impl.patch create mode 100644 runtime-optenv32/llvm+32/autobuild/patches/0004-mips-Add-stub-for-lldb-arch-functions-on-loongson3.patch create mode 100644 runtime-optenv32/llvm+32/autobuild/patches/0005-mips-HACK-force-enable-cacheflush-function.patch create mode 100644 runtime-optenv32/llvm+32/autobuild/patches/0006-mips-Fix-build-of-LinuxSignals-on-Mips.patch rename runtime-optenv32/llvm+32/autobuild/patches/{1002-rust-Compile-with-MT-on-MSVC.patch.deferred => 0007-rust-Compile-with-MT-on-MSVC.patch} (67%) rename runtime-optenv32/llvm+32/autobuild/patches/{1003-rust-Comment-out-__builtin_available-use-21.patch.deferred => 0008-rust-Comment-out-__builtin_available-use-21.patch} (65%) rename runtime-optenv32/llvm+32/autobuild/patches/{1004-rust-Changes-needed-for-x86_64-fortanix-unknown-sgx-.patch.deferred => 0009-rust-Changes-needed-for-x86_64-fortanix-unknown-sgx-.patch} (74%) create mode 100644 runtime-optenv32/llvm+32/autobuild/patches/0010-JITLink-RISCV-Use-hashmap-to-find-PCREL_HI20-edge-78.patch create mode 100644 runtime-optenv32/llvm+32/autobuild/patches/0011-JITLink-Always-unmap-standard-segments-in-InProcessM.patch create mode 100644 runtime-optenv32/llvm+32/autobuild/patches/0012-Allow-f16-codegen-with-expansion-to-libcalls.patch create mode 100644 runtime-optenv32/llvm+32/autobuild/patches/1000-i686-gcc-compatibility.patch delete mode 100644 runtime-optenv32/llvm+32/autobuild/patches/1000-rust-Add-accessors-for-MCSubtargetInfo-CPU-and-Featu.patch.deferred create mode 100644 runtime-optenv32/llvm+32/autobuild/patches/1001-i686-runtimes-force-remove-clang-dependency.patch delete mode 100644 runtime-optenv32/llvm+32/autobuild/patches/1001-rust-Add-knowledge-of-__rust_-alloc-realloc-dealloc.patch.deferred create mode 100644 runtime-optenv32/llvm+32/autobuild/patches/1002-i686-gcc-use-gcc-flags.patch delete mode 100644 runtime-optenv32/llvm+32/autobuild/patches/1005-rust-Skip-processor-info-on-i386-mingw-w64-7.patch.deferred delete mode 100644 runtime-optenv32/llvm+32/autobuild/patches/1006-rust-Mask-the-IntervalMap-alignment-assertion-on-ix8.patch.deferred delete mode 100644 runtime-optenv32/llvm+32/autobuild/patches/1007-rust-Define-FP_XSTATE_MAGIC1-if-not-defined.patch.deferred delete mode 100644 runtime-optenv32/llvm+32/autobuild/patches/1008-rust-Work-around-ICE-in-GCC-5.4.patch.deferred delete mode 100644 runtime-optenv32/llvm+32/autobuild/patches/1009-rust-Remove-constexpr-from-functions-that-call-non-c.patch.deferred delete mode 100644 runtime-optenv32/llvm+32/autobuild/patches/1010-rust-Revert-Sanitizers-intercept-md5-and-sha-apis-on.patch.deferred delete mode 100644 runtime-optenv32/llvm+32/autobuild/patches/1011-rust-Check-whether-PROC_ASLR_STATUS-is-defined.patch.deferred delete mode 100644 runtime-optenv32/llvm+32/autobuild/patches/1012-rust-Comment-out-build-ID-handling-on-FreeBSD.patch.deferred delete mode 100644 runtime-optenv32/llvm+32/autobuild/patches/1013-rust-Declare-madvise-on-illumos.patch.deferred delete mode 100644 runtime-optenv32/llvm+32/autobuild/prepare diff --git a/runtime-optenv32/llvm+32/autobuild/beyond b/runtime-optenv32/llvm+32/autobuild/beyond new file mode 100644 index 00000000000..def94d89d1b --- /dev/null +++ b/runtime-optenv32/llvm+32/autobuild/beyond @@ -0,0 +1,11 @@ +abinfo "Creating symlinks for clang/clang++ ..." +for i in clang clang++; do + cat > "$PKGDIR"/opt/32/bin/${i} << EOF +#!/bin/bash +exec -a /opt/32/bin/i686-aosc-linux-gnu-$i /usr/bin/$i -Xlinker --sysroot='' --sysroot=/opt/32 "\$@" +EOF + + ln -sv ${i} "$PKGDIR"/opt/32/bin/i686-aosc-linux-gnu-${i} + + chmod -v a+x "$PKGDIR"/opt/32/bin/${i} +done diff --git a/runtime-optenv32/llvm+32/autobuild/build b/runtime-optenv32/llvm+32/autobuild/build deleted file mode 100644 index add3180b0dc..00000000000 --- a/runtime-optenv32/llvm+32/autobuild/build +++ /dev/null @@ -1,37 +0,0 @@ -export PATH=/opt/32/bin:$PATH -export PKG_CONFIG_PATH=/opt/32/lib/pkgconfig:/opt/32/share/pkgconfig -mkdir build -cd build - -cmake .. -GNinja -DCMAKE_INSTALL_PREFIX=/opt/32 -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_C_COMPILER=/opt/32/bin/i686-pc-linux-gnu-gcc \ - -DLLVM_BUILD_LLVM_DYLIB=ON \ - -DLLVM_DYLIB_EXPORT_ALL=ON \ - -DLLVM_LINK_LLVM_DYLIB=ON \ - -DLLVM_ENABLE_RTTI=ON \ - -DLLVM_ENABLE_FFI=OFF \ - -DLLVM_BUILD_DOCS=OFF \ - -DPTHREAD_LIBRARY_PATH=/opt/32/lib/libpthread.so \ - -DDL_LIBRARY_PATH=/opt/32/lib/libdl.so \ - -DLLVM_BINUTILS_INCDIR=/opt/32/include \ - -DCOMPILER_RT_DEFAULT_TARGET_TRIPLE=i686-pc-linux-gnu -DLLVM_DEFAULT_TARGET_TRIPLE=i686-pc-linux-gnu -DLLVM_HOST_TRIPLE=i686-pc-linux-gnu - -ninja -DESTDIR="$PKGDIR" ninja install - -cd "$SRCDIR" - -for file in "$PKGDIR"/opt/32/lib/lib{clang,LLVM,LTO}*.a; do - test -f $file && chmod -v 644 $file -done - -install -v -dm755 "$PKGDIR"/opt/32/lib/clang-analyzer - -for prog in scan-build scan-view; do - cp -rfv "$SRCDIR"/tools/clang/tools/$prog \ - "$PKGDIR"/opt/32/lib/clang-analyzer/ - ln -sfv ../lib/clang-analyzer/$prog/$prog \ - "$PKGDIR"/opt/32/bin/ -done - -ln -sfv /opt/32/bin/clang "$PKGDIR"/opt/32/lib/clang-analyzer/scan-build diff --git a/runtime-optenv32/llvm+32/autobuild/defines b/runtime-optenv32/llvm+32/autobuild/defines index d5a3ba7e723..53a26b0e8b0 100644 --- a/runtime-optenv32/llvm+32/autobuild/defines +++ b/runtime-optenv32/llvm+32/autobuild/defines @@ -1,11 +1,39 @@ PKGNAME=llvm+32 PKGSEC=devel -PKGDEP="libffi+32" -BUILDDEP="32subsystem" -PKGDES="Low Level Virtual Machine Infrastructure" +PKGDEP="libffi+32 llvm zstd+32" +BUILDDEP="devel-base+32" +PKGDES="Low Level Virtual Machine Infrastructure (32-bit x86 runtime)" NOSTATIC=0 NOLTO=1 PKGPROV="clang+32" -ABHOST=noarch +ABHOST=optenv32 + +# FIXME: debuginfo depletes 32-bit addressing space. +ABSPLITDBG=0 + +ABTYPE=cmakeninja +CMAKE_AFTER=( + '-DLLVM_BUILD_LLVM_DYLIB=ON' + '-DLLVM_DYLIB_EXPORT_ALL=ON' + '-DLLVM_LINK_LLVM_DYLIB=ON' + '-DLLVM_ENABLE_RTTI=ON' + '-DLLVM_ENABLE_FFI=OFF' + '-DLLVM_BUILD_DOCS=OFF' + '-DLLVM_BUILD_STATIC=OFF' + '-DLLVM_INCLUDE_TOOLS=ON' + '-DPTHREAD_LIBRARY_PATH=/opt/32/lib/libpthread.so' + '-DDL_LIBRARY_PATH=/opt/32/lib/libdl.so' + '-DLLVM_BINUTILS_INCDIR=/opt/32/include' + '-Dzstd_LIBRARY=/opt/32/lib/libzstd.so' + '-DLLVM_ENABLE_PROJECTS=llvm' + '-DLLVM_ENABLE_RUNTIMES=compiler-rt;libunwind' + '-DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON' + '-DCOMPILER_RT_SANITIZERS_TO_BUILD="asan;ubsan_minimal;asan_abi;safestack;cfi"' + '-DCOMPILER_RT_BUILD_MEMPROF=OFF' + '-DCOMPILER_RT_INCLUDE_TESTS=OFF' + '-DCOMPILER_RT_BUILD_XRAY=OFF' + '-DCMAKE_TOOLCHAIN_FILE=../autobuild/fake-toolchain.cmake' + '-DCMAKE_BUILD_TYPE=Release' +) diff --git a/runtime-optenv32/llvm+32/autobuild/fake-toolchain.cmake b/runtime-optenv32/llvm+32/autobuild/fake-toolchain.cmake new file mode 100644 index 00000000000..529fa4a1679 --- /dev/null +++ b/runtime-optenv32/llvm+32/autobuild/fake-toolchain.cmake @@ -0,0 +1,4 @@ +set(CMAKE_C_COMPILER_TARGET "i686-aosc-linux-gnu") +set(CMAKE_CXX_COMPILER_TARGET "i686-aosc-linux-gnu") +set(LLVM_DEFAULT_TARGET_TRIPLE "i686-aosc-linux-gnu") +execute_process(COMMAND clang --print-resource-dir OUTPUT_VARIABLE CLANG_RESOURCE_DIR OUTPUT_STRIP_TRAILING_WHITESPACE) diff --git a/runtime-optenv32/llvm+32/autobuild/patch b/runtime-optenv32/llvm+32/autobuild/patch new file mode 100644 index 00000000000..0fd652d98ab --- /dev/null +++ b/runtime-optenv32/llvm+32/autobuild/patch @@ -0,0 +1,5 @@ +cd "$SRCDIR"/.. +abinfo "Applying patches for LLVM full workspace ..." +ab_apply_patches "$SRCDIR/autobuild/patches/"*.patch +ab_reverse_patches "$SRCDIR/autobuild/patches/"*.rpatch +cd "$SRCDIR" diff --git a/runtime-optenv32/llvm+32/autobuild/patches/0001-Fix-fuzzer-objects-building-when-LTO-is-enabled.patch b/runtime-optenv32/llvm+32/autobuild/patches/0001-Fix-fuzzer-objects-building-when-LTO-is-enabled.patch new file mode 100644 index 00000000000..ad3492864f8 --- /dev/null +++ b/runtime-optenv32/llvm+32/autobuild/patches/0001-Fix-fuzzer-objects-building-when-LTO-is-enabled.patch @@ -0,0 +1,25 @@ +From 23fbabe903ebf8119394641d387576802074b180 Mon Sep 17 00:00:00 2001 +From: Jiajie Chen +Date: Sun, 28 Jan 2024 04:48:08 -0800 +Subject: [PATCH 01/12] Fix fuzzer objects building when LTO is enabled + +--- + compiler-rt/lib/fuzzer/CMakeLists.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/compiler-rt/lib/fuzzer/CMakeLists.txt b/compiler-rt/lib/fuzzer/CMakeLists.txt +index fb5adf1e5c9e..6db873266031 100644 +--- a/compiler-rt/lib/fuzzer/CMakeLists.txt ++++ b/compiler-rt/lib/fuzzer/CMakeLists.txt +@@ -147,7 +147,7 @@ if(OS_NAME MATCHES "Android|Linux|Fuchsia" AND + set(cxx_${arch}_merge_dir "${CMAKE_CURRENT_BINARY_DIR}/cxx_${arch}_merge.dir") + file(MAKE_DIRECTORY ${cxx_${arch}_merge_dir}) + add_custom_command(TARGET clang_rt.${name}-${arch} POST_BUILD +- COMMAND ${CMAKE_CXX_COMPILER} ${target_cflags} -Wl,--whole-archive "$" -Wl,--no-whole-archive ${dir}/lib/libc++.a -r -o ${name}.o ++ COMMAND ${CMAKE_CXX_COMPILER} ${target_cflags} -flto -Wl,--whole-archive "$" -Wl,--no-whole-archive ${dir}/lib/libc++.a -r -o ${name}.o + COMMAND ${CMAKE_OBJCOPY} --localize-hidden ${name}.o + COMMAND ${CMAKE_COMMAND} -E remove "$" + COMMAND ${CMAKE_AR} qcs "$" ${name}.o +-- +2.47.1 + diff --git a/runtime-optenv32/llvm+32/autobuild/patches/0001-fix-riscv64-abi.patch b/runtime-optenv32/llvm+32/autobuild/patches/0001-fix-riscv64-abi.patch deleted file mode 100644 index 062c26cb692..00000000000 --- a/runtime-optenv32/llvm+32/autobuild/patches/0001-fix-riscv64-abi.patch +++ /dev/null @@ -1,29 +0,0 @@ -diff --git a-llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.cpp b-llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.cpp -index 60e86093d9f4..f209c51f302d 100644 ---- a-llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.cpp -+++ b-llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.cpp -@@ -52,14 +52,19 @@ ABI computeTargetABI(const Triple &TT, FeatureBitset FeatureBits, - return TargetABI; - - // For now, default to the ilp32/ilp32e/lp64 ABI if no explicit ABI is given -- // or an invalid/unrecognised string is given. In the future, it might be -- // worth changing this to default to ilp32f/lp64f and ilp32d/lp64d when -- // hardware support for floating point is present. -+ // or an invalid/unrecognised string is given and targeting bare-metal, -+ // ilp32d/lp64d when targeting some operating system. - if (IsRV32E) - return ABI_ILP32E; - if (IsRV64) -- return ABI_LP64; -- return ABI_ILP32; -+ if (TT.getOS() == Triple::UnknownOS) -+ return ABI_LP64; -+ else -+ return ABI_LP64D; -+ if (TT.getOS() == Triple::UnknownOS) -+ return ABI_ILP32; -+ else -+ return ABI_ILP32D; - } - - ABI getTargetABI(StringRef ABIName) { diff --git a/runtime-optenv32/llvm+32/autobuild/patches/0002-Fix-MSVC-detection.patch b/runtime-optenv32/llvm+32/autobuild/patches/0002-Fix-MSVC-detection.patch new file mode 100644 index 00000000000..703638dc775 --- /dev/null +++ b/runtime-optenv32/llvm+32/autobuild/patches/0002-Fix-MSVC-detection.patch @@ -0,0 +1,25 @@ +From c87f68bf48504e45b6969240be1b2d3ca48b36eb Mon Sep 17 00:00:00 2001 +From: Jiajie Chen +Date: Sun, 28 Jan 2024 04:49:47 -0800 +Subject: [PATCH 02/12] Fix MSVC detection + +--- + llvm/cmake/modules/CheckProblematicConfigurations.cmake | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/llvm/cmake/modules/CheckProblematicConfigurations.cmake b/llvm/cmake/modules/CheckProblematicConfigurations.cmake +index e133873d756c..71484172cfb6 100644 +--- a/llvm/cmake/modules/CheckProblematicConfigurations.cmake ++++ b/llvm/cmake/modules/CheckProblematicConfigurations.cmake +@@ -11,7 +11,7 @@ endmacro() + + # MSVC and /arch:AVX is untested and have created problems before. See: + # https://github.com/llvm/llvm-project/issues/54645 +-if(${CMAKE_CXX_COMPILER_ID} STREQUAL MSVC) ++if("${CMAKE_CXX_COMPILER_ID}" STREQUAL MSVC) + string(TOLOWER "${CMAKE_CXX_FLAGS} ${CMAKE_C_FLAGS}" _FLAGS) + if(_FLAGS MATCHES "/arch:avx[0-9]*") + log_problematic("Compiling LLVM with MSVC and the /arch:AVX flag is known to cause issues with parts of LLVM.\nSee https://github.com/llvm/llvm-project/issues/54645 for details.\nUse clang-cl if you want to enable AVX instructions.") +-- +2.47.1 + diff --git a/runtime-optenv32/llvm+32/autobuild/patches/0002-aosc-exclusive-tuples.patch.deferred b/runtime-optenv32/llvm+32/autobuild/patches/0002-aosc-exclusive-tuples.patch.deferred deleted file mode 100644 index b323cd5435b..00000000000 --- a/runtime-optenv32/llvm+32/autobuild/patches/0002-aosc-exclusive-tuples.patch.deferred +++ /dev/null @@ -1,62 +0,0 @@ ---- a/tools/clang/lib/Driver/ToolChains/Gnu.cpp 2022-03-14 09:44:55.000000000 +0000 -+++ b/tools/clang/lib/Driver/ToolChains/Gnu.cpp 2022-04-09 07:02:39.990272687 +0000 -@@ -2073,7 +2073,7 @@ - static const char *const AArch64LibDirs[] = {"/lib64", "/lib"}; - static const char *const AArch64Triples[] = { - "aarch64-none-linux-gnu", "aarch64-linux-gnu", "aarch64-redhat-linux", -- "aarch64-suse-linux"}; -+ "aarch64-suse-linux", "aarch64-aosc-linux-gnu"}; - static const char *const AArch64beLibDirs[] = {"/lib"}; - static const char *const AArch64beTriples[] = {"aarch64_be-none-linux-gnu", - "aarch64_be-linux-gnu"}; -@@ -2081,6 +2081,7 @@ - static const char *const ARMLibDirs[] = {"/lib"}; - static const char *const ARMTriples[] = {"arm-linux-gnueabi"}; - static const char *const ARMHFTriples[] = {"arm-linux-gnueabihf", -+ "arm-aosc-linux-gnueabi", - "armv7hl-redhat-linux-gnueabi", - "armv6hl-suse-linux-gnueabi", - "armv7hl-suse-linux-gnueabi"}; -@@ -2099,7 +2100,7 @@ - "x86_64-redhat-linux", "x86_64-suse-linux", - "x86_64-manbo-linux-gnu", "x86_64-linux-gnu", - "x86_64-slackware-linux", "x86_64-unknown-linux", -- "x86_64-amazon-linux"}; -+ "x86_64-amazon-linux", "x86_64-aosc-linux-gnu"}; - static const char *const X32Triples[] = {"x86_64-linux-gnux32", - "x86_64-pc-linux-gnux32"}; - static const char *const X32LibDirs[] = {"/libx32", "/lib"}; -@@ -2108,6 +2109,7 @@ - "i586-linux-gnu", "i686-linux-gnu", "i686-pc-linux-gnu", - "i386-redhat-linux6E", "i686-redhat-linux", "i386-redhat-linux", - "i586-suse-linux", "i686-montavista-linux", "i686-gnu", -+ "i486-aosc-linux-gnu", - }; - - static const char *const M68kLibDirs[] = {"/lib"}; -@@ -2131,7 +2133,7 @@ - static const char *const MIPS64ELTriples[] = { - "mips64el-linux-gnu", "mips-mti-linux-gnu", - "mips-img-linux-gnu", "mips64el-linux-gnuabi64", -- "mipsisa64r6el-linux-gnu", "mipsisa64r6el-linux-gnuabi64"}; -+ "mipsisa64r6el-linux-gnu", "mipsisa64r6el-linux-gnuabi64", "mips64el-aosc-linux-gnuabi64"}; - - static const char *const MIPSN32LibDirs[] = {"/lib32"}; - static const char *const MIPSN32Triples[] = {"mips64-linux-gnuabin32", -@@ -2162,7 +2164,7 @@ - static const char *const PPC64LETriples[] = { - "powerpc64le-linux-gnu", "powerpc64le-unknown-linux-gnu", - "powerpc64le-none-linux-gnu", "powerpc64le-suse-linux", -- "ppc64le-redhat-linux"}; -+ "ppc64le-redhat-linux", "powerpc64le-aosc-linux-gnu"}; - - static const char *const RISCV32LibDirs[] = {"/lib32", "/lib"}; - static const char *const RISCV32Triples[] = {"riscv32-unknown-linux-gnu", -@@ -2171,6 +2173,7 @@ - static const char *const RISCV64LibDirs[] = {"/lib64", "/lib"}; - static const char *const RISCV64Triples[] = {"riscv64-unknown-linux-gnu", - "riscv64-linux-gnu", -+ "riscv64-aosc-linux-gnu", - "riscv64-unknown-elf"}; - - static const char *const SPARCv8LibDirs[] = {"/lib32", "/lib"}; diff --git a/runtime-optenv32/llvm+32/autobuild/patches/0003-mips-Add-stub-for-mips64-LLDB-impl.patch b/runtime-optenv32/llvm+32/autobuild/patches/0003-mips-Add-stub-for-mips64-LLDB-impl.patch new file mode 100644 index 00000000000..cba92c294ac --- /dev/null +++ b/runtime-optenv32/llvm+32/autobuild/patches/0003-mips-Add-stub-for-mips64-LLDB-impl.patch @@ -0,0 +1,30 @@ +From 98a38ba8d9c3146b55c31f8ba320d68b227ccb64 Mon Sep 17 00:00:00 2001 +From: Jiajie Chen +Date: Sun, 28 Jan 2024 04:49:26 -0800 +Subject: [PATCH 03/12] [mips] Add stub for mips64 LLDB impl + +--- + .../Plugins/Process/Linux/NativeRegisterContextLinux.h | 7 ++++++- + 1 file changed, 6 insertions(+), 1 deletion(-) + +diff --git a/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux.h b/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux.h +index 08f19d374e28..a042dd3dd677 100644 +--- a/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux.h ++++ b/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux.h +@@ -32,7 +32,12 @@ public: + // given thread. + static std::unique_ptr + CreateHostNativeRegisterContextLinux(const ArchSpec &target_arch, +- NativeThreadLinux &native_thread); ++ NativeThreadLinux &native_thread) ++#ifdef __mips64 ++ { llvm_unreachable("mips64 unsupported"); } ++#else ++ ; ++#endif + + // Determine the architecture of the thread given by its ID. + static llvm::Expected DetermineArchitecture(lldb::tid_t tid); +-- +2.47.1 + diff --git a/runtime-optenv32/llvm+32/autobuild/patches/0004-mips-Add-stub-for-lldb-arch-functions-on-loongson3.patch b/runtime-optenv32/llvm+32/autobuild/patches/0004-mips-Add-stub-for-lldb-arch-functions-on-loongson3.patch new file mode 100644 index 00000000000..929d80e36d2 --- /dev/null +++ b/runtime-optenv32/llvm+32/autobuild/patches/0004-mips-Add-stub-for-lldb-arch-functions-on-loongson3.patch @@ -0,0 +1,32 @@ +From 8070451190bf8b440b09ad1d384e2743f8fc5297 Mon Sep 17 00:00:00 2001 +From: Jiajie Chen +Date: Sun, 28 Jan 2024 04:52:51 -0800 +Subject: [PATCH 04/12] [mips] Add stub for lldb arch functions on loongson3 + +--- + .../Plugins/Process/Linux/NativeRegisterContextLinux.h | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git a/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux.h b/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux.h +index a042dd3dd677..ee4901aa7cd3 100644 +--- a/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux.h ++++ b/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux.h +@@ -40,7 +40,15 @@ public: + #endif + + // Determine the architecture of the thread given by its ID. ++#ifdef __mips64 ++ static llvm::Expected DetermineArchitecture(lldb::tid_t tid) { ++ return llvm::createStringError( ++ llvm::inconvertibleErrorCode(), ++ "Architecture does not support this function"); ++ } ++#else + static llvm::Expected DetermineArchitecture(lldb::tid_t tid); ++#endif + + // Invalidates cached values in register context data structures + virtual void InvalidateAllRegisters(){} +-- +2.47.1 + diff --git a/runtime-optenv32/llvm+32/autobuild/patches/0005-mips-HACK-force-enable-cacheflush-function.patch b/runtime-optenv32/llvm+32/autobuild/patches/0005-mips-HACK-force-enable-cacheflush-function.patch new file mode 100644 index 00000000000..541ea035506 --- /dev/null +++ b/runtime-optenv32/llvm+32/autobuild/patches/0005-mips-HACK-force-enable-cacheflush-function.patch @@ -0,0 +1,24 @@ +From eb271125e8f6b5186a31e2a5a17ac3d4beb51d62 Mon Sep 17 00:00:00 2001 +From: Jiajie Chen +Date: Sun, 28 Jan 2024 04:53:18 -0800 +Subject: [PATCH 05/12] [mips] HACK: force enable cacheflush function + +--- + compiler-rt/lib/builtins/clear_cache.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/compiler-rt/lib/builtins/clear_cache.c b/compiler-rt/lib/builtins/clear_cache.c +index 2ac99b25c243..f055d3fcee4d 100644 +--- a/compiler-rt/lib/builtins/clear_cache.c ++++ b/compiler-rt/lib/builtins/clear_cache.c +@@ -43,6 +43,7 @@ uintptr_t GetCurrentProcess(void); + #endif + + #if defined(__linux__) && defined(__mips__) ++#define __USE_MISC + #include + #include + #include +-- +2.47.1 + diff --git a/runtime-optenv32/llvm+32/autobuild/patches/0006-mips-Fix-build-of-LinuxSignals-on-Mips.patch b/runtime-optenv32/llvm+32/autobuild/patches/0006-mips-Fix-build-of-LinuxSignals-on-Mips.patch new file mode 100644 index 00000000000..f5bdad32eab --- /dev/null +++ b/runtime-optenv32/llvm+32/autobuild/patches/0006-mips-Fix-build-of-LinuxSignals-on-Mips.patch @@ -0,0 +1,93 @@ +From 26d1b2fd5c48df217b0cdda1282ab18f31c85ee7 Mon Sep 17 00:00:00 2001 +From: Henry Chen +Date: Wed, 31 Jan 2024 14:37:12 +0800 +Subject: [PATCH 06/12] [mips] Fix build of LinuxSignals on Mips + +But only the build, not the functionality because lldb won't work +anyway. +--- + .../Plugins/Process/Utility/LinuxSignals.cpp | 38 +++++++++++++++++-- + 1 file changed, 34 insertions(+), 4 deletions(-) + +diff --git a/lldb/source/Plugins/Process/Utility/LinuxSignals.cpp b/lldb/source/Plugins/Process/Utility/LinuxSignals.cpp +index 3f25dbc6abbb..d419bea22c4d 100644 +--- a/lldb/source/Plugins/Process/Utility/LinuxSignals.cpp ++++ b/lldb/source/Plugins/Process/Utility/LinuxSignals.cpp +@@ -57,12 +57,14 @@ void LinuxSignals::Reset() { + + AddSignal(5, "SIGTRAP", true, true, true, "trace trap (not reset when caught)"); + AddSignal(6, "SIGABRT", false, true, true, "abort()/IOT trap", "SIGIOT"); +- ++#if defined (__mips__) ++ AddSignal(7, "SIGEMT", false, true, true, "emulator trap"); ++#else + AddSignal(7, "SIGBUS", false, true, true, "bus error"); + ADD_SIGCODE(SIGBUS, 7, BUS_ADRALN, 1, "illegal alignment"); + ADD_SIGCODE(SIGBUS, 7, BUS_ADRERR, 2, "illegal address"); + ADD_SIGCODE(SIGBUS, 7, BUS_OBJERR, 3, "hardware error"); +- ++#endif + AddSignal(8, "SIGFPE", false, true, true, "floating point exception"); + ADD_SIGCODE(SIGFPE, 8, FPE_INTDIV, 1, "integer divide by zero"); + ADD_SIGCODE(SIGFPE, 8, FPE_INTOVF, 2, "integer overflow"); +@@ -74,8 +76,14 @@ void LinuxSignals::Reset() { + ADD_SIGCODE(SIGFPE, 8, FPE_FLTSUB, 8, "subscript out of range"); + + AddSignal(9, "SIGKILL", false, true, true, "kill"); ++#if defined (__mips__) ++ AddSignal(10, "SIGBUS", false, true, true, "bus error"); ++ ADD_SIGCODE(SIGBUS, 10, BUS_ADRALN, 1, "illegal alignment"); ++ ADD_SIGCODE(SIGBUS, 10, BUS_ADRERR, 2, "illegal address"); ++ ADD_SIGCODE(SIGBUS, 10, BUS_OBJERR, 3, "hardware error"); ++#else + AddSignal(10, "SIGUSR1", false, true, true, "user defined signal 1"); +- ++#endif + AddSignal(11, "SIGSEGV", false, true, true, "segmentation violation"); + ADD_SIGCODE(SIGSEGV, 11, SEGV_MAPERR, 1, "address not mapped to object", SignalCodePrintOption::Address); + ADD_SIGCODE(SIGSEGV, 11, SEGV_ACCERR, 2, "invalid permissions for mapped object", SignalCodePrintOption::Address); +@@ -85,11 +93,32 @@ void LinuxSignals::Reset() { + // Some platforms will occasionally send nonstandard spurious SI_KERNEL + // codes. One way to get this is via unaligned SIMD loads. Treat it as invalid address. + ADD_SIGCODE(SIGSEGV, 11, SI_KERNEL, 0x80, "invalid address", SignalCodePrintOption::Address); +- ++#if defined (__mips__) ++ AddSignal(12, "SIGSYS", false, true, true, "invalid system call"); ++#else + AddSignal(12, "SIGUSR2", false, true, true, "user defined signal 2"); ++#endif + AddSignal(13, "SIGPIPE", false, true, true, "write to pipe with reading end closed"); + AddSignal(14, "SIGALRM", false, false, false, "alarm"); + AddSignal(15, "SIGTERM", false, true, true, "termination requested"); ++#if defined (__mips__) ++ AddSignal(16, "SIGUSR1", false, true, true, "user defined signal 1"); ++ AddSignal(17, "SIGUSR2", false, true, true, "user defined signal 2"); ++ AddSignal(18, "SIGCHLD", false, false, true, "child status has changed", "SIGCLD"); ++ AddSignal(19, "SIGPWR", false, true, true, "power failure"); ++ AddSignal(20, "SIGWINCH", false, true, true, "window size changes"); ++ AddSignal(21, "SIGURG", false, true, true, "urgent data on socket"); ++ AddSignal(22, "SIGIO", false, true, true, "input/output ready/Pollable event", "SIGPOLL"); ++ AddSignal(23, "SIGSTOP", true, true, true, "process stop"); ++ AddSignal(24, "SIGTSTP", false, true, true, "tty stop"); ++ AddSignal(25, "SIGCONT", false, false, true, "process continue"); ++ AddSignal(26, "SIGTTIN", false, true, true, "background tty read"); ++ AddSignal(27, "SIGTTOU", false, true, true, "background tty write"); ++ AddSignal(28, "SIGVTALRM", false, true, true, "virtual time alarm"); ++ AddSignal(29, "SIGPROF", false, false, false, "profiling time alarm"); ++ AddSignal(30, "SIGXCPU", false, true, true, "CPU resource exceeded"); ++ AddSignal(31, "SIGXFSZ", false, true, true, "file size limit exceeded"); ++#else + AddSignal(16, "SIGSTKFLT", false, true, true, "stack fault"); + AddSignal(17, "SIGCHLD", false, false, true, "child status has changed", "SIGCLD"); + AddSignal(18, "SIGCONT", false, false, true, "process continue"); +@@ -106,6 +135,7 @@ void LinuxSignals::Reset() { + AddSignal(29, "SIGIO", false, true, true, "input/output ready/Pollable event", "SIGPOLL"); + AddSignal(30, "SIGPWR", false, true, true, "power failure"); + AddSignal(31, "SIGSYS", false, true, true, "invalid system call"); ++#endif + AddSignal(32, "SIG32", false, false, false, "threading library internal signal 1"); + AddSignal(33, "SIG33", false, false, false, "threading library internal signal 2"); + AddSignal(34, "SIGRTMIN", false, false, false, "real time signal 0"); +-- +2.47.1 + diff --git a/runtime-optenv32/llvm+32/autobuild/patches/1002-rust-Compile-with-MT-on-MSVC.patch.deferred b/runtime-optenv32/llvm+32/autobuild/patches/0007-rust-Compile-with-MT-on-MSVC.patch similarity index 67% rename from runtime-optenv32/llvm+32/autobuild/patches/1002-rust-Compile-with-MT-on-MSVC.patch.deferred rename to runtime-optenv32/llvm+32/autobuild/patches/0007-rust-Compile-with-MT-on-MSVC.patch index a140cec3bd4..6f5d4ae2ac9 100644 --- a/runtime-optenv32/llvm+32/autobuild/patches/1002-rust-Compile-with-MT-on-MSVC.patch.deferred +++ b/runtime-optenv32/llvm+32/autobuild/patches/0007-rust-Compile-with-MT-on-MSVC.patch @@ -1,18 +1,18 @@ -From 910c84731f46fa95570701ad8aa1adb122fdf826 Mon Sep 17 00:00:00 2001 +From b1d68378d641862de95f5628721eb7811846d764 Mon Sep 17 00:00:00 2001 From: Alex Crichton Date: Sat, 10 Feb 2018 17:21:38 -0800 -Subject: [PATCH 1002/1013] [rust] Compile with /MT on MSVC +Subject: [PATCH 07/12] [rust] Compile with /MT on MSVC Can't seem to figure out how to do this without this patch... --- lld/CMakeLists.txt | 13 +++++++++++++ 1 file changed, 13 insertions(+) -diff --git a/tools/lld/CMakeLists.txt b/tools/lld/CMakeLists.txt -index 9bcc135665d0..985a01b9e3fe 100644 ---- a/tools/lld/CMakeLists.txt -+++ b/tools/lld/CMakeLists.txt -@@ -238,6 +238,19 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY) +diff --git a/lld/CMakeLists.txt b/lld/CMakeLists.txt +index 595c286abd91..d17d3c55395a 100644 +--- a/lld/CMakeLists.txt ++++ b/lld/CMakeLists.txt +@@ -187,6 +187,19 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY) ) endif() @@ -33,5 +33,5 @@ index 9bcc135665d0..985a01b9e3fe 100644 add_subdirectory(tools/lld) -- -2.35.1 +2.47.1 diff --git a/runtime-optenv32/llvm+32/autobuild/patches/1003-rust-Comment-out-__builtin_available-use-21.patch.deferred b/runtime-optenv32/llvm+32/autobuild/patches/0008-rust-Comment-out-__builtin_available-use-21.patch similarity index 65% rename from runtime-optenv32/llvm+32/autobuild/patches/1003-rust-Comment-out-__builtin_available-use-21.patch.deferred rename to runtime-optenv32/llvm+32/autobuild/patches/0008-rust-Comment-out-__builtin_available-use-21.patch index 753b2f9b542..b47602c2780 100644 --- a/runtime-optenv32/llvm+32/autobuild/patches/1003-rust-Comment-out-__builtin_available-use-21.patch.deferred +++ b/runtime-optenv32/llvm+32/autobuild/patches/0008-rust-Comment-out-__builtin_available-use-21.patch @@ -1,7 +1,7 @@ -From e04befa5e5fa710f1d3738a09596339e7252096f Mon Sep 17 00:00:00 2001 +From 29cc9d85355b9e2ed0e685e994373cfc9996ba14 Mon Sep 17 00:00:00 2001 From: Nikita Popov Date: Fri, 12 Jul 2019 16:06:11 +0200 -Subject: [PATCH 1003/1013] [rust] Comment out __builtin_available() use (#21) +Subject: [PATCH 08/12] [rust] Comment out __builtin_available() use (#21) __builtin_available() pulls in __isOSVersionAtLeast() from compiler-rt. Comment it out so we don't have to figure out how @@ -10,11 +10,11 @@ to pull in this symbol... llvm/lib/Support/Unix/Path.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -diff --git a/lib/Support/Unix/Path.inc b/lib/Support/Unix/Path.inc -index 788460d657fe..85352b8d68ef 100644 ---- a/lib/Support/Unix/Path.inc -+++ b/lib/Support/Unix/Path.inc -@@ -1462,7 +1462,7 @@ namespace fs { +diff --git a/llvm/lib/Support/Unix/Path.inc b/llvm/lib/Support/Unix/Path.inc +index 9f89d63bb0fd..6a904d9cb723 100644 +--- a/llvm/lib/Support/Unix/Path.inc ++++ b/llvm/lib/Support/Unix/Path.inc +@@ -1483,7 +1483,7 @@ namespace fs { std::error_code copy_file(const Twine &From, const Twine &To) { std::string FromS = From.str(); std::string ToS = To.str(); @@ -24,5 +24,5 @@ index 788460d657fe..85352b8d68ef 100644 // Optimistically try to use clonefile() and handle errors, rather than // calling stat() to see if it'll work. -- -2.35.1 +2.47.1 diff --git a/runtime-optenv32/llvm+32/autobuild/patches/1004-rust-Changes-needed-for-x86_64-fortanix-unknown-sgx-.patch.deferred b/runtime-optenv32/llvm+32/autobuild/patches/0009-rust-Changes-needed-for-x86_64-fortanix-unknown-sgx-.patch similarity index 74% rename from runtime-optenv32/llvm+32/autobuild/patches/1004-rust-Changes-needed-for-x86_64-fortanix-unknown-sgx-.patch.deferred rename to runtime-optenv32/llvm+32/autobuild/patches/0009-rust-Changes-needed-for-x86_64-fortanix-unknown-sgx-.patch index d146011496a..d62cc4c92be 100644 --- a/runtime-optenv32/llvm+32/autobuild/patches/1004-rust-Changes-needed-for-x86_64-fortanix-unknown-sgx-.patch.deferred +++ b/runtime-optenv32/llvm+32/autobuild/patches/0009-rust-Changes-needed-for-x86_64-fortanix-unknown-sgx-.patch @@ -1,8 +1,8 @@ -From 35acdca064009aac98adb6a652cec50129206195 Mon Sep 17 00:00:00 2001 +From b2f535972f0b1011dfc2d7f6ce46a3ba37a4a401 Mon Sep 17 00:00:00 2001 From: Adrian Cruceru Date: Mon, 25 May 2020 20:58:30 +0200 -Subject: [PATCH 1004/1013] [rust] Changes needed for - 'x86_64-fortanix-unknown-sgx' nightly target. +Subject: [PATCH 09/12] [rust] Changes needed for 'x86_64-fortanix-unknown-sgx' + nightly target. Code is guarded via defines to enable only if 'RUST_SGX' is present. @@ -21,34 +21,34 @@ As notes: libunwind/README_RUST_SGX.md | 22 +++++ libunwind/docs/BuildingLibunwind.rst | 5 ++ libunwind/src/AddressSpace.hpp | 27 ++++++ - libunwind/src/CMakeLists.txt | 52 +++++++++-- + libunwind/src/CMakeLists.txt | 49 +++++++++-- libunwind/src/RWMutex.hpp | 2 +- libunwind/src/UnwindRustSgx.c | 125 +++++++++++++++++++++++++++ - libunwind/src/UnwindRustSgx.h | 94 ++++++++++++++++++++ + libunwind/src/UnwindRustSgx.h | 84 ++++++++++++++++++ libunwind/src/config.h | 4 + - 9 files changed, 322 insertions(+), 11 deletions(-) + 9 files changed, 313 insertions(+), 7 deletions(-) create mode 100644 libunwind/README_RUST_SGX.md create mode 100644 libunwind/src/UnwindRustSgx.c create mode 100644 libunwind/src/UnwindRustSgx.h -diff --git a/tools/libunwind/CMakeLists.txt b/tools/libunwind/CMakeLists.txt -index 6523fb0d307d..0a012b1c54f1 100644 ---- a/tools/libunwind/CMakeLists.txt -+++ b/tools/libunwind/CMakeLists.txt -@@ -326,7 +326,7 @@ if (LIBUNWIND_ENABLE_ASSERTIONS) +diff --git a/libunwind/CMakeLists.txt b/libunwind/CMakeLists.txt +index 806d5a783ec3..e5ad8f7f3753 100644 +--- a/libunwind/CMakeLists.txt ++++ b/libunwind/CMakeLists.txt +@@ -251,7 +251,7 @@ if (LIBUNWIND_ENABLE_ASSERTIONS) # On Release builds cmake automatically defines NDEBUG, so we # explicitly undefine it: -- if (uppercase_CMAKE_BUILD_TYPE STREQUAL "RELEASE") -+ if ((uppercase_CMAKE_BUILD_TYPE STREQUAL "RELEASE") AND (NOT RUST_SGX)) +- if (NOT uppercase_CMAKE_BUILD_TYPE STREQUAL "DEBUG") ++ if ((NOT uppercase_CMAKE_BUILD_TYPE STREQUAL "DEBUG") AND (NOT RUST_SGX)) add_compile_flags(-UNDEBUG) endif() else() -diff --git a/tools/libunwind/README_RUST_SGX.md b/tools/libunwind/README_RUST_SGX.md +diff --git a/libunwind/README_RUST_SGX.md b/libunwind/README_RUST_SGX.md new file mode 100644 index 000000000000..c5d6eb4772bc --- /dev/null -+++ b/tools/libunwind/README_RUST_SGX.md ++++ b/libunwind/README_RUST_SGX.md @@ -0,0 +1,22 @@ +# Libunwind customizations for linking with x86_64-fortanix-unknown-sgx Rust target. + @@ -72,11 +72,11 @@ index 000000000000..c5d6eb4772bc +### Build: +* `make unwind_static` +* `build/lib/` will have the built library. -diff --git a/tools/libunwind/docs/BuildingLibunwind.rst b/tools/libunwind/docs/BuildingLibunwind.rst -index 99e52761515c..a2605ec6ec8f 100644 ---- a/tools/libunwind/docs/BuildingLibunwind.rst -+++ b/tools/libunwind/docs/BuildingLibunwind.rst -@@ -160,3 +160,8 @@ libunwind specific options +diff --git a/libunwind/docs/BuildingLibunwind.rst b/libunwind/docs/BuildingLibunwind.rst +index 79166b4769c6..abd432c93571 100644 +--- a/libunwind/docs/BuildingLibunwind.rst ++++ b/libunwind/docs/BuildingLibunwind.rst +@@ -148,3 +148,8 @@ libunwind specific options Path where built libunwind libraries should be installed. If a relative path, relative to ``CMAKE_INSTALL_PREFIX``. @@ -85,11 +85,11 @@ index 99e52761515c..a2605ec6ec8f 100644 + + **Default**: ``OFF`` + -diff --git a/tools/libunwind/src/AddressSpace.hpp b/tools/libunwind/src/AddressSpace.hpp -index 0c4dfeb4e683..0155d8f69baf 100644 ---- a/tools/libunwind/src/AddressSpace.hpp -+++ b/tools/libunwind/src/AddressSpace.hpp -@@ -83,6 +83,7 @@ struct EHABIIndexEntry { +diff --git a/libunwind/src/AddressSpace.hpp b/libunwind/src/AddressSpace.hpp +index 5551c7d4bef1..9f0a611f5d25 100644 +--- a/libunwind/src/AddressSpace.hpp ++++ b/libunwind/src/AddressSpace.hpp +@@ -94,6 +94,7 @@ namespace libunwind { // __eh_frame_hdr_start = SIZEOF(.eh_frame_hdr) > 0 ? ADDR(.eh_frame_hdr) : 0; // __eh_frame_hdr_end = SIZEOF(.eh_frame_hdr) > 0 ? . : 0; @@ -97,7 +97,7 @@ index 0c4dfeb4e683..0155d8f69baf 100644 extern char __eh_frame_start; extern char __eh_frame_end; -@@ -91,6 +92,15 @@ extern char __eh_frame_hdr_start; +@@ -102,6 +103,15 @@ extern char __eh_frame_hdr_start; extern char __eh_frame_hdr_end; #endif @@ -113,7 +113,7 @@ index 0c4dfeb4e683..0155d8f69baf 100644 #elif defined(_LIBUNWIND_ARM_EHABI) && defined(_LIBUNWIND_IS_BAREMETAL) // When statically linked on bare-metal, the symbols for the EH table are looked -@@ -498,6 +508,10 @@ static int findUnwindSectionsByPhdr(struct dl_phdr_info *pinfo, +@@ -487,6 +497,10 @@ static int findUnwindSectionsByPhdr(struct dl_phdr_info *pinfo, #endif // defined(_LIBUNWIND_USE_DL_ITERATE_PHDR) @@ -124,7 +124,7 @@ index 0c4dfeb4e683..0155d8f69baf 100644 inline bool LocalAddressSpace::findUnwindSections(pint_t targetAddr, UnwindInfoSections &info) { #ifdef __APPLE__ -@@ -515,6 +529,8 @@ inline bool LocalAddressSpace::findUnwindSections(pint_t targetAddr, +@@ -520,6 +534,8 @@ inline bool LocalAddressSpace::findUnwindSections(pint_t targetAddr, #elif defined(_LIBUNWIND_SUPPORT_DWARF_UNWIND) && defined(_LIBUNWIND_IS_BAREMETAL) info.dso_base = 0; // Bare metal is statically linked, so no need to ask the dynamic loader @@ -133,7 +133,7 @@ index 0c4dfeb4e683..0155d8f69baf 100644 info.dwarf_section_length = (size_t)(&__eh_frame_end - &__eh_frame_start); info.dwarf_section = (uintptr_t)(&__eh_frame_start); _LIBUNWIND_TRACE_UNWINDING("findUnwindSections: section %p length %p", -@@ -525,6 +541,17 @@ inline bool LocalAddressSpace::findUnwindSections(pint_t targetAddr, +@@ -530,6 +546,17 @@ inline bool LocalAddressSpace::findUnwindSections(pint_t targetAddr, _LIBUNWIND_TRACE_UNWINDING("findUnwindSections: index section %p length %p", (void *)info.dwarf_index_section, (void *)info.dwarf_index_section_length); #endif @@ -151,10 +151,10 @@ index 0c4dfeb4e683..0155d8f69baf 100644 if (info.dwarf_section_length) return true; #elif defined(_LIBUNWIND_ARM_EHABI) && defined(_LIBUNWIND_IS_BAREMETAL) -diff --git a/tools/libunwind/src/CMakeLists.txt b/tools/libunwind/src/CMakeLists.txt -index 710198550a06..93dda23cc2d4 100644 ---- a/tools/libunwind/src/CMakeLists.txt -+++ b/tools/libunwind/src/CMakeLists.txt +diff --git a/libunwind/src/CMakeLists.txt b/libunwind/src/CMakeLists.txt +index 780430ba70ba..facf371d9141 100644 +--- a/libunwind/src/CMakeLists.txt ++++ b/libunwind/src/CMakeLists.txt @@ -1,5 +1,9 @@ # Get sources @@ -165,9 +165,9 @@ index 710198550a06..93dda23cc2d4 100644 set(LIBUNWIND_CXX_SOURCES libunwind.cpp Unwind-EHABI.cpp -@@ -16,20 +20,12 @@ set(LIBUNWIND_C_SOURCES - UnwindLevel1-gcc-ext.c +@@ -18,9 +22,6 @@ set(LIBUNWIND_C_SOURCES Unwind-sjlj.c + Unwind-wasm.c ) -set_source_files_properties(${LIBUNWIND_C_SOURCES} - PROPERTIES @@ -175,18 +175,7 @@ index 710198550a06..93dda23cc2d4 100644 set(LIBUNWIND_ASM_SOURCES UnwindRegistersRestore.S - UnwindRegistersSave.S - ) - --# See add_asm_sources() in compiler-rt for explanation of this workaround. --if((APPLE AND CMAKE_VERSION VERSION_LESS 3.19) OR (MINGW AND CMAKE_VERSION VERSION_LESS 3.17)) -- set_source_files_properties(${LIBUNWIND_ASM_SOURCES} PROPERTIES LANGUAGE C) --endif() -- - set(LIBUNWIND_HEADERS - AddressSpace.hpp - assembly.h -@@ -63,6 +59,44 @@ if (MSVC_IDE) +@@ -60,6 +61,44 @@ if (MSVC_IDE) source_group("Header Files" FILES ${LIBUNWIND_HEADERS}) endif() @@ -231,19 +220,24 @@ index 710198550a06..93dda23cc2d4 100644 set(LIBUNWIND_SOURCES ${LIBUNWIND_CXX_SOURCES} ${LIBUNWIND_C_SOURCES} -@@ -77,7 +111,7 @@ else() - add_library_flags_if(LIBUNWIND_HAS_GCC_LIB gcc) +@@ -82,11 +121,11 @@ if (NOT APPLE) + add_library_flags_if(LIBUNWIND_HAS_DL_LIB dl) + endif() + +-if (LIBUNWIND_ENABLE_THREADS AND NOT APPLE) ++if (LIBUNWIND_ENABLE_THREADS AND NOT APPLE AND (NOT RUST_SGX)) + add_library_flags_if(LIBUNWIND_HAS_PTHREAD_LIB pthread) endif() - add_library_flags_if(LIBUNWIND_HAS_DL_LIB dl) + -if (LIBUNWIND_ENABLE_THREADS) +if (LIBUNWIND_ENABLE_THREADS AND (NOT RUST_SGX)) - add_library_flags_if(LIBUNWIND_HAS_PTHREAD_LIB pthread) add_compile_flags_if(LIBUNWIND_WEAK_PTHREAD_LIB -DLIBUNWIND_USE_WEAK_PTHREAD=1) endif() -diff --git a/tools/libunwind/src/RWMutex.hpp b/tools/libunwind/src/RWMutex.hpp + +diff --git a/libunwind/src/RWMutex.hpp b/libunwind/src/RWMutex.hpp index 344d35641f07..65bd849aabb3 100644 ---- a/tools/libunwind/src/RWMutex.hpp -+++ b/tools/libunwind/src/RWMutex.hpp +--- a/libunwind/src/RWMutex.hpp ++++ b/libunwind/src/RWMutex.hpp @@ -15,7 +15,7 @@ #if defined(_WIN32) @@ -253,11 +247,11 @@ index 344d35641f07..65bd849aabb3 100644 #include #if defined(__ELF__) && defined(_LIBUNWIND_LINK_PTHREAD_LIB) #pragma comment(lib, "pthread") -diff --git a/tools/libunwind/src/UnwindRustSgx.c b/tools/libunwind/src/UnwindRustSgx.c +diff --git a/libunwind/src/UnwindRustSgx.c b/libunwind/src/UnwindRustSgx.c new file mode 100644 index 000000000000..9be7c1b54e6f --- /dev/null -+++ b/tools/libunwind/src/UnwindRustSgx.c ++++ b/libunwind/src/UnwindRustSgx.c @@ -0,0 +1,125 @@ +//===--------------------- UnwindRustSgx.c ----------------------------------===// +// @@ -384,12 +378,12 @@ index 000000000000..9be7c1b54e6f + meta = META_FROM_PTR(p); + __rust_c_dealloc((unsigned char *)meta, meta->alloc_size, sizeof(size_t)); +} -diff --git a/tools/libunwind/src/UnwindRustSgx.h b/tools/libunwind/src/UnwindRustSgx.h +diff --git a/libunwind/src/UnwindRustSgx.h b/libunwind/src/UnwindRustSgx.h new file mode 100644 -index 000000000000..3c54b167696a +index 000000000000..8155b8e74ffa --- /dev/null -+++ b/tools/libunwind/src/UnwindRustSgx.h -@@ -0,0 +1,94 @@ ++++ b/libunwind/src/UnwindRustSgx.h +@@ -0,0 +1,84 @@ +//===--------------------- UnwindRustSgx.h ----------------------------------===// +// +//// The LLVM Compiler Infrastructure @@ -414,24 +408,14 @@ index 000000000000..3c54b167696a + +// We have to use RWLock from rust repo, it is defined in: +// src/libstd/sys/sgx/rwlock.rs. -+// rwlock.rs has compile time check to ensure sizeof(RWLock) = 144. ++// rwlock.rs has a compile time check to ensure the size and alignment matches ++// the Rust definition. +typedef struct { -+ unsigned char opaque[144]; ++ void *opaque; +} RWLock; + -+// The below is obtained by printing initialized bytes -+// for RWLock in rust repo: src/libstd/sys/sgx/rwlock.rs. -+#define RWLOCK_INIT { { \ -+ /* 0x00 */ 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, \ -+ /* 0x10 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, \ -+ /* 0x20 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, \ -+ /* 0x30 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, \ -+ /* 0x40 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, \ -+ /* 0x50 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, \ -+ /* 0x60 */ 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, \ -+ /* 0x70 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, \ -+ /* 0x80 */ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, \ -+ } } ++#define RWLOCK_INIT \ ++ { (void *)0 } + +// These are the functions exposed by SGX-Rust. +// The rust changes are available at: @@ -484,10 +468,10 @@ index 000000000000..3c54b167696a + +#endif +#endif -diff --git a/tools/libunwind/src/config.h b/tools/libunwind/src/config.h -index 5ae1604f657d..151f76f79754 100644 ---- a/tools/libunwind/src/config.h -+++ b/tools/libunwind/src/config.h +diff --git a/libunwind/src/config.h b/libunwind/src/config.h +index deb5a4d4d73d..5337be4b3d50 100644 +--- a/libunwind/src/config.h ++++ b/libunwind/src/config.h @@ -20,6 +20,10 @@ #include <__libunwind_config.h> @@ -500,5 +484,5 @@ index 5ae1604f657d..151f76f79754 100644 #ifdef __APPLE__ #if defined(FOR_DYLD) -- -2.35.1 +2.47.1 diff --git a/runtime-optenv32/llvm+32/autobuild/patches/0010-JITLink-RISCV-Use-hashmap-to-find-PCREL_HI20-edge-78.patch b/runtime-optenv32/llvm+32/autobuild/patches/0010-JITLink-RISCV-Use-hashmap-to-find-PCREL_HI20-edge-78.patch new file mode 100644 index 00000000000..5f44076115b --- /dev/null +++ b/runtime-optenv32/llvm+32/autobuild/patches/0010-JITLink-RISCV-Use-hashmap-to-find-PCREL_HI20-edge-78.patch @@ -0,0 +1,108 @@ +From c020430f7b9c827e9f43e2abdd37b523656d5a50 Mon Sep 17 00:00:00 2001 +From: Jonas Hahnfeld +Date: Mon, 12 Feb 2024 19:45:52 +0100 +Subject: [PATCH 10/12] [JITLink][RISCV] Use hashmap to find PCREL_HI20 edge + (#78849) + +As noted in issues #68594 and #73935, `JITLink/RISCV/ELF_ehframe.s` +fails with libstdc++'s expensive checks because `getRISCVPCRelHi20` +calls `std::equal_range` on the edges which may not be ordered by their +offset. Instead let `ELFJITLinker_riscv` build a hashmap of all edges +with type `R_RISCV_PCREL_HI20` that can be looked up in constant time. + +Closes #73935 +--- + .../lib/ExecutionEngine/JITLink/ELF_riscv.cpp | 68 ++++++++++--------- + 1 file changed, 35 insertions(+), 33 deletions(-) + +diff --git a/llvm/lib/ExecutionEngine/JITLink/ELF_riscv.cpp b/llvm/lib/ExecutionEngine/JITLink/ELF_riscv.cpp +index d0701ba08bd9..627f186ca591 100644 +--- a/llvm/lib/ExecutionEngine/JITLink/ELF_riscv.cpp ++++ b/llvm/lib/ExecutionEngine/JITLink/ELF_riscv.cpp +@@ -133,38 +133,6 @@ const uint8_t + namespace llvm { + namespace jitlink { + +-static Expected getRISCVPCRelHi20(const Edge &E) { +- using namespace riscv; +- assert((E.getKind() == R_RISCV_PCREL_LO12_I || +- E.getKind() == R_RISCV_PCREL_LO12_S) && +- "Can only have high relocation for R_RISCV_PCREL_LO12_I or " +- "R_RISCV_PCREL_LO12_S"); +- +- const Symbol &Sym = E.getTarget(); +- const Block &B = Sym.getBlock(); +- orc::ExecutorAddrDiff Offset = Sym.getOffset(); +- +- struct Comp { +- bool operator()(const Edge &Lhs, orc::ExecutorAddrDiff Offset) { +- return Lhs.getOffset() < Offset; +- } +- bool operator()(orc::ExecutorAddrDiff Offset, const Edge &Rhs) { +- return Offset < Rhs.getOffset(); +- } +- }; +- +- auto Bound = +- std::equal_range(B.edges().begin(), B.edges().end(), Offset, Comp{}); +- +- for (auto It = Bound.first; It != Bound.second; ++It) { +- if (It->getKind() == R_RISCV_PCREL_HI20) +- return *It; +- } +- +- return make_error( +- "No HI20 PCREL relocation type be found for LO12 PCREL relocation type"); +-} +- + static uint32_t extractBits(uint32_t Num, unsigned Low, unsigned Size) { + return (Num & (((1ULL << Size) - 1) << Low)) >> Low; + } +@@ -184,9 +152,43 @@ class ELFJITLinker_riscv : public JITLinker { + public: + ELFJITLinker_riscv(std::unique_ptr Ctx, + std::unique_ptr G, PassConfiguration PassConfig) +- : JITLinker(std::move(Ctx), std::move(G), std::move(PassConfig)) {} ++ : JITLinker(std::move(Ctx), std::move(G), std::move(PassConfig)) { ++ JITLinkerBase::getPassConfig().PostAllocationPasses.push_back( ++ [this](LinkGraph &G) { return gatherRISCVPCRelHi20(G); }); ++ } + + private: ++ DenseMap, const Edge *> ++ RelHi20; ++ ++ Error gatherRISCVPCRelHi20(LinkGraph &G) { ++ for (Block *B : G.blocks()) ++ for (Edge &E : B->edges()) ++ if (E.getKind() == R_RISCV_PCREL_HI20) ++ RelHi20[{B, E.getOffset()}] = &E; ++ ++ return Error::success(); ++ } ++ ++ Expected getRISCVPCRelHi20(const Edge &E) const { ++ using namespace riscv; ++ assert((E.getKind() == R_RISCV_PCREL_LO12_I || ++ E.getKind() == R_RISCV_PCREL_LO12_S) && ++ "Can only have high relocation for R_RISCV_PCREL_LO12_I or " ++ "R_RISCV_PCREL_LO12_S"); ++ ++ const Symbol &Sym = E.getTarget(); ++ const Block &B = Sym.getBlock(); ++ orc::ExecutorAddrDiff Offset = Sym.getOffset(); ++ ++ auto It = RelHi20.find({&B, Offset}); ++ if (It != RelHi20.end()) ++ return *It->second; ++ ++ return make_error("No HI20 PCREL relocation type be found " ++ "for LO12 PCREL relocation type"); ++ } ++ + Error applyFixup(LinkGraph &G, Block &B, const Edge &E) const { + using namespace riscv; + using namespace llvm::support; +-- +2.47.1 + diff --git a/runtime-optenv32/llvm+32/autobuild/patches/0011-JITLink-Always-unmap-standard-segments-in-InProcessM.patch b/runtime-optenv32/llvm+32/autobuild/patches/0011-JITLink-Always-unmap-standard-segments-in-InProcessM.patch new file mode 100644 index 00000000000..f5922bbab11 --- /dev/null +++ b/runtime-optenv32/llvm+32/autobuild/patches/0011-JITLink-Always-unmap-standard-segments-in-InProcessM.patch @@ -0,0 +1,38 @@ +From 94fb8943c3a9627e18288f06dceb6380e84b8490 Mon Sep 17 00:00:00 2001 +From: Min-Yih Hsu +Date: Fri, 16 Feb 2024 16:19:56 -0800 +Subject: [PATCH 11/12] [JITLink] Always unmap standard segments in + InProcessMemoryManager::deallocate (#81943) + +Right now InProcessMemoryManager only releases a standard segment (via +sys::Memory::releaseMappedMemory) in `deallocate` when there is a +DeallocAction associated, leaving residual memory pages in the process +until termination. +Despite being a de facto memory leak, it won't cause a major issue if +users only create a single LLJIT instance per process, which is the most +common use cases. It will, however, drain virtual memory pages if we +create thousands of ephemeral LLJIT instances in the same process. + +This patch fixes this issue by releasing every standard segments +regardless of the attached DeallocAction. +--- + llvm/lib/ExecutionEngine/JITLink/JITLinkMemoryManager.cpp | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/llvm/lib/ExecutionEngine/JITLink/JITLinkMemoryManager.cpp b/llvm/lib/ExecutionEngine/JITLink/JITLinkMemoryManager.cpp +index 474a0b5160bc..dacf0e6c8aa4 100644 +--- a/llvm/lib/ExecutionEngine/JITLink/JITLinkMemoryManager.cpp ++++ b/llvm/lib/ExecutionEngine/JITLink/JITLinkMemoryManager.cpp +@@ -449,8 +449,7 @@ void InProcessMemoryManager::deallocate(std::vector Allocs, + for (auto &Alloc : Allocs) { + auto *FA = Alloc.release().toPtr(); + StandardSegmentsList.push_back(std::move(FA->StandardSegments)); +- if (!FA->DeallocActions.empty()) +- DeallocActionsList.push_back(std::move(FA->DeallocActions)); ++ DeallocActionsList.push_back(std::move(FA->DeallocActions)); + FA->~FinalizedAllocInfo(); + FinalizedAllocInfos.Deallocate(FA); + } +-- +2.47.1 + diff --git a/runtime-optenv32/llvm+32/autobuild/patches/0012-Allow-f16-codegen-with-expansion-to-libcalls.patch b/runtime-optenv32/llvm+32/autobuild/patches/0012-Allow-f16-codegen-with-expansion-to-libcalls.patch new file mode 100644 index 00000000000..0e0202dfb77 --- /dev/null +++ b/runtime-optenv32/llvm+32/autobuild/patches/0012-Allow-f16-codegen-with-expansion-to-libcalls.patch @@ -0,0 +1,391 @@ +From 9e434106e9f837bc338a41838f243b8e4eb14a77 Mon Sep 17 00:00:00 2001 +From: WANG Xuerui +Date: Wed, 5 Jun 2024 17:55:38 +0800 +Subject: [PATCH 12/12] Allow f16 codegen with expansion to libcalls + +The test case is adapted from llvm/test/CodeGen/RISCV/fp16-promote.ll, +because it covers some more IR patterns that ought to be common. + +Fixes #93894 +--- + .../LoongArch/LoongArchISelLowering.cpp | 8 + + llvm/test/CodeGen/LoongArch/fp16-promote.ll | 326 ++++++++++++++++++ + 2 files changed, 334 insertions(+) + create mode 100644 llvm/test/CodeGen/LoongArch/fp16-promote.ll + +diff --git a/llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp b/llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp +index 907aae13d6de..afabe88e02e2 100644 +--- a/llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp ++++ b/llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp +@@ -168,6 +168,8 @@ LoongArchTargetLowering::LoongArchTargetLowering(const TargetMachine &TM, + // Set operations for 'F' feature. + + if (Subtarget.hasBasicF()) { ++ setLoadExtAction(ISD::EXTLOAD, MVT::f32, MVT::f16, Expand); ++ setTruncStoreAction(MVT::f32, MVT::f16, Expand); + setCondCodeAction(FPCCToExpand, MVT::f32, Expand); + + setOperationAction(ISD::SELECT_CC, MVT::f32, Expand); +@@ -183,6 +185,8 @@ LoongArchTargetLowering::LoongArchTargetLowering(const TargetMachine &TM, + setOperationAction(ISD::FSINCOS, MVT::f32, Expand); + setOperationAction(ISD::FPOW, MVT::f32, Expand); + setOperationAction(ISD::FREM, MVT::f32, Expand); ++ setOperationAction(ISD::FP16_TO_FP, MVT::f32, Expand); ++ setOperationAction(ISD::FP_TO_FP16, MVT::f32, Expand); + + if (Subtarget.is64Bit()) + setOperationAction(ISD::FRINT, MVT::f32, Legal); +@@ -199,7 +203,9 @@ LoongArchTargetLowering::LoongArchTargetLowering(const TargetMachine &TM, + // Set operations for 'D' feature. + + if (Subtarget.hasBasicD()) { ++ setLoadExtAction(ISD::EXTLOAD, MVT::f64, MVT::f16, Expand); + setLoadExtAction(ISD::EXTLOAD, MVT::f64, MVT::f32, Expand); ++ setTruncStoreAction(MVT::f64, MVT::f16, Expand); + setTruncStoreAction(MVT::f64, MVT::f32, Expand); + setCondCodeAction(FPCCToExpand, MVT::f64, Expand); + +@@ -216,6 +222,8 @@ LoongArchTargetLowering::LoongArchTargetLowering(const TargetMachine &TM, + setOperationAction(ISD::FSINCOS, MVT::f64, Expand); + setOperationAction(ISD::FPOW, MVT::f64, Expand); + setOperationAction(ISD::FREM, MVT::f64, Expand); ++ setOperationAction(ISD::FP16_TO_FP, MVT::f64, Expand); ++ setOperationAction(ISD::FP_TO_FP16, MVT::f64, Expand); + + if (Subtarget.is64Bit()) + setOperationAction(ISD::FRINT, MVT::f64, Legal); +diff --git a/llvm/test/CodeGen/LoongArch/fp16-promote.ll b/llvm/test/CodeGen/LoongArch/fp16-promote.ll +new file mode 100644 +index 000000000000..75f920b43a06 +--- /dev/null ++++ b/llvm/test/CodeGen/LoongArch/fp16-promote.ll +@@ -0,0 +1,326 @@ ++; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 5 ++; RUN: llc --mtriple=loongarch32 --mattr=+d < %s | FileCheck %s --check-prefix=LA32 ++; RUN: llc --mtriple=loongarch64 --mattr=+d < %s | FileCheck %s --check-prefix=LA64 ++ ++define void @test_load_store(ptr %p, ptr %q) nounwind { ++; LA32-LABEL: test_load_store: ++; LA32: # %bb.0: ++; LA32-NEXT: ld.h $a0, $a0, 0 ++; LA32-NEXT: st.h $a0, $a1, 0 ++; LA32-NEXT: ret ++; ++; LA64-LABEL: test_load_store: ++; LA64: # %bb.0: ++; LA64-NEXT: ld.h $a0, $a0, 0 ++; LA64-NEXT: st.h $a0, $a1, 0 ++; LA64-NEXT: ret ++ %a = load half, ptr %p ++ store half %a, ptr %q ++ ret void ++} ++ ++define float @test_fpextend_float(ptr %p) nounwind { ++; LA32-LABEL: test_fpextend_float: ++; LA32: # %bb.0: ++; LA32-NEXT: ld.hu $a0, $a0, 0 ++; LA32-NEXT: b %plt(__gnu_h2f_ieee) ++; ++; LA64-LABEL: test_fpextend_float: ++; LA64: # %bb.0: ++; LA64-NEXT: ld.hu $a0, $a0, 0 ++; LA64-NEXT: b %plt(__gnu_h2f_ieee) ++ %a = load half, ptr %p ++ %r = fpext half %a to float ++ ret float %r ++} ++ ++define double @test_fpextend_double(ptr %p) nounwind { ++; LA32-LABEL: test_fpextend_double: ++; LA32: # %bb.0: ++; LA32-NEXT: addi.w $sp, $sp, -16 ++; LA32-NEXT: st.w $ra, $sp, 12 # 4-byte Folded Spill ++; LA32-NEXT: ld.hu $a0, $a0, 0 ++; LA32-NEXT: bl %plt(__gnu_h2f_ieee) ++; LA32-NEXT: fcvt.d.s $fa0, $fa0 ++; LA32-NEXT: ld.w $ra, $sp, 12 # 4-byte Folded Reload ++; LA32-NEXT: addi.w $sp, $sp, 16 ++; LA32-NEXT: ret ++; ++; LA64-LABEL: test_fpextend_double: ++; LA64: # %bb.0: ++; LA64-NEXT: addi.d $sp, $sp, -16 ++; LA64-NEXT: st.d $ra, $sp, 8 # 8-byte Folded Spill ++; LA64-NEXT: ld.hu $a0, $a0, 0 ++; LA64-NEXT: bl %plt(__gnu_h2f_ieee) ++; LA64-NEXT: fcvt.d.s $fa0, $fa0 ++; LA64-NEXT: ld.d $ra, $sp, 8 # 8-byte Folded Reload ++; LA64-NEXT: addi.d $sp, $sp, 16 ++; LA64-NEXT: ret ++ %a = load half, ptr %p ++ %r = fpext half %a to double ++ ret double %r ++} ++ ++define void @test_fptrunc_float(float %f, ptr %p) nounwind { ++; LA32-LABEL: test_fptrunc_float: ++; LA32: # %bb.0: ++; LA32-NEXT: addi.w $sp, $sp, -16 ++; LA32-NEXT: st.w $ra, $sp, 12 # 4-byte Folded Spill ++; LA32-NEXT: st.w $fp, $sp, 8 # 4-byte Folded Spill ++; LA32-NEXT: move $fp, $a0 ++; LA32-NEXT: bl %plt(__gnu_f2h_ieee) ++; LA32-NEXT: st.h $a0, $fp, 0 ++; LA32-NEXT: ld.w $fp, $sp, 8 # 4-byte Folded Reload ++; LA32-NEXT: ld.w $ra, $sp, 12 # 4-byte Folded Reload ++; LA32-NEXT: addi.w $sp, $sp, 16 ++; LA32-NEXT: ret ++; ++; LA64-LABEL: test_fptrunc_float: ++; LA64: # %bb.0: ++; LA64-NEXT: addi.d $sp, $sp, -16 ++; LA64-NEXT: st.d $ra, $sp, 8 # 8-byte Folded Spill ++; LA64-NEXT: st.d $fp, $sp, 0 # 8-byte Folded Spill ++; LA64-NEXT: move $fp, $a0 ++; LA64-NEXT: bl %plt(__gnu_f2h_ieee) ++; LA64-NEXT: st.h $a0, $fp, 0 ++; LA64-NEXT: ld.d $fp, $sp, 0 # 8-byte Folded Reload ++; LA64-NEXT: ld.d $ra, $sp, 8 # 8-byte Folded Reload ++; LA64-NEXT: addi.d $sp, $sp, 16 ++; LA64-NEXT: ret ++ %a = fptrunc float %f to half ++ store half %a, ptr %p ++ ret void ++} ++ ++define void @test_fptrunc_double(double %d, ptr %p) nounwind { ++; LA32-LABEL: test_fptrunc_double: ++; LA32: # %bb.0: ++; LA32-NEXT: addi.w $sp, $sp, -16 ++; LA32-NEXT: st.w $ra, $sp, 12 # 4-byte Folded Spill ++; LA32-NEXT: st.w $fp, $sp, 8 # 4-byte Folded Spill ++; LA32-NEXT: move $fp, $a0 ++; LA32-NEXT: bl %plt(__truncdfhf2) ++; LA32-NEXT: st.h $a0, $fp, 0 ++; LA32-NEXT: ld.w $fp, $sp, 8 # 4-byte Folded Reload ++; LA32-NEXT: ld.w $ra, $sp, 12 # 4-byte Folded Reload ++; LA32-NEXT: addi.w $sp, $sp, 16 ++; LA32-NEXT: ret ++; ++; LA64-LABEL: test_fptrunc_double: ++; LA64: # %bb.0: ++; LA64-NEXT: addi.d $sp, $sp, -16 ++; LA64-NEXT: st.d $ra, $sp, 8 # 8-byte Folded Spill ++; LA64-NEXT: st.d $fp, $sp, 0 # 8-byte Folded Spill ++; LA64-NEXT: move $fp, $a0 ++; LA64-NEXT: bl %plt(__truncdfhf2) ++; LA64-NEXT: st.h $a0, $fp, 0 ++; LA64-NEXT: ld.d $fp, $sp, 0 # 8-byte Folded Reload ++; LA64-NEXT: ld.d $ra, $sp, 8 # 8-byte Folded Reload ++; LA64-NEXT: addi.d $sp, $sp, 16 ++; LA64-NEXT: ret ++ %a = fptrunc double %d to half ++ store half %a, ptr %p ++ ret void ++} ++ ++define half @test_fadd_reg(half %a, half %b) nounwind { ++; LA32-LABEL: test_fadd_reg: ++; LA32: # %bb.0: ++; LA32-NEXT: addi.w $sp, $sp, -32 ++; LA32-NEXT: st.w $ra, $sp, 28 # 4-byte Folded Spill ++; LA32-NEXT: fst.d $fs0, $sp, 16 # 8-byte Folded Spill ++; LA32-NEXT: fst.d $fs1, $sp, 8 # 8-byte Folded Spill ++; LA32-NEXT: fmov.s $fs0, $fa0 ++; LA32-NEXT: fmov.s $fa0, $fa1 ++; LA32-NEXT: bl %plt(__gnu_f2h_ieee) ++; LA32-NEXT: bl %plt(__gnu_h2f_ieee) ++; LA32-NEXT: fmov.s $fs1, $fa0 ++; LA32-NEXT: fmov.s $fa0, $fs0 ++; LA32-NEXT: bl %plt(__gnu_f2h_ieee) ++; LA32-NEXT: bl %plt(__gnu_h2f_ieee) ++; LA32-NEXT: fadd.s $fa0, $fa0, $fs1 ++; LA32-NEXT: fld.d $fs1, $sp, 8 # 8-byte Folded Reload ++; LA32-NEXT: fld.d $fs0, $sp, 16 # 8-byte Folded Reload ++; LA32-NEXT: ld.w $ra, $sp, 28 # 4-byte Folded Reload ++; LA32-NEXT: addi.w $sp, $sp, 32 ++; LA32-NEXT: ret ++; ++; LA64-LABEL: test_fadd_reg: ++; LA64: # %bb.0: ++; LA64-NEXT: addi.d $sp, $sp, -32 ++; LA64-NEXT: st.d $ra, $sp, 24 # 8-byte Folded Spill ++; LA64-NEXT: fst.d $fs0, $sp, 16 # 8-byte Folded Spill ++; LA64-NEXT: fst.d $fs1, $sp, 8 # 8-byte Folded Spill ++; LA64-NEXT: fmov.s $fs0, $fa0 ++; LA64-NEXT: fmov.s $fa0, $fa1 ++; LA64-NEXT: bl %plt(__gnu_f2h_ieee) ++; LA64-NEXT: bl %plt(__gnu_h2f_ieee) ++; LA64-NEXT: fmov.s $fs1, $fa0 ++; LA64-NEXT: fmov.s $fa0, $fs0 ++; LA64-NEXT: bl %plt(__gnu_f2h_ieee) ++; LA64-NEXT: bl %plt(__gnu_h2f_ieee) ++; LA64-NEXT: fadd.s $fa0, $fa0, $fs1 ++; LA64-NEXT: fld.d $fs1, $sp, 8 # 8-byte Folded Reload ++; LA64-NEXT: fld.d $fs0, $sp, 16 # 8-byte Folded Reload ++; LA64-NEXT: ld.d $ra, $sp, 24 # 8-byte Folded Reload ++; LA64-NEXT: addi.d $sp, $sp, 32 ++; LA64-NEXT: ret ++ %r = fadd half %a, %b ++ ret half %r ++} ++ ++define void @test_fadd_mem(ptr %p, ptr %q) nounwind { ++; LA32-LABEL: test_fadd_mem: ++; LA32: # %bb.0: ++; LA32-NEXT: addi.w $sp, $sp, -32 ++; LA32-NEXT: st.w $ra, $sp, 28 # 4-byte Folded Spill ++; LA32-NEXT: st.w $fp, $sp, 24 # 4-byte Folded Spill ++; LA32-NEXT: st.w $s0, $sp, 20 # 4-byte Folded Spill ++; LA32-NEXT: fst.d $fs0, $sp, 8 # 8-byte Folded Spill ++; LA32-NEXT: move $fp, $a1 ++; LA32-NEXT: move $s0, $a0 ++; LA32-NEXT: ld.hu $a0, $a0, 0 ++; LA32-NEXT: bl %plt(__gnu_h2f_ieee) ++; LA32-NEXT: fmov.s $fs0, $fa0 ++; LA32-NEXT: ld.hu $a0, $fp, 0 ++; LA32-NEXT: bl %plt(__gnu_h2f_ieee) ++; LA32-NEXT: fadd.s $fa0, $fs0, $fa0 ++; LA32-NEXT: bl %plt(__gnu_f2h_ieee) ++; LA32-NEXT: st.h $a0, $s0, 0 ++; LA32-NEXT: fld.d $fs0, $sp, 8 # 8-byte Folded Reload ++; LA32-NEXT: ld.w $s0, $sp, 20 # 4-byte Folded Reload ++; LA32-NEXT: ld.w $fp, $sp, 24 # 4-byte Folded Reload ++; LA32-NEXT: ld.w $ra, $sp, 28 # 4-byte Folded Reload ++; LA32-NEXT: addi.w $sp, $sp, 32 ++; LA32-NEXT: ret ++; ++; LA64-LABEL: test_fadd_mem: ++; LA64: # %bb.0: ++; LA64-NEXT: addi.d $sp, $sp, -32 ++; LA64-NEXT: st.d $ra, $sp, 24 # 8-byte Folded Spill ++; LA64-NEXT: st.d $fp, $sp, 16 # 8-byte Folded Spill ++; LA64-NEXT: st.d $s0, $sp, 8 # 8-byte Folded Spill ++; LA64-NEXT: fst.d $fs0, $sp, 0 # 8-byte Folded Spill ++; LA64-NEXT: move $fp, $a1 ++; LA64-NEXT: move $s0, $a0 ++; LA64-NEXT: ld.hu $a0, $a0, 0 ++; LA64-NEXT: bl %plt(__gnu_h2f_ieee) ++; LA64-NEXT: fmov.s $fs0, $fa0 ++; LA64-NEXT: ld.hu $a0, $fp, 0 ++; LA64-NEXT: bl %plt(__gnu_h2f_ieee) ++; LA64-NEXT: fadd.s $fa0, $fs0, $fa0 ++; LA64-NEXT: bl %plt(__gnu_f2h_ieee) ++; LA64-NEXT: st.h $a0, $s0, 0 ++; LA64-NEXT: fld.d $fs0, $sp, 0 # 8-byte Folded Reload ++; LA64-NEXT: ld.d $s0, $sp, 8 # 8-byte Folded Reload ++; LA64-NEXT: ld.d $fp, $sp, 16 # 8-byte Folded Reload ++; LA64-NEXT: ld.d $ra, $sp, 24 # 8-byte Folded Reload ++; LA64-NEXT: addi.d $sp, $sp, 32 ++; LA64-NEXT: ret ++ %a = load half, ptr %p ++ %b = load half, ptr %q ++ %r = fadd half %a, %b ++ store half %r, ptr %p ++ ret void ++} ++ ++define half @test_fmul_reg(half %a, half %b) nounwind { ++; LA32-LABEL: test_fmul_reg: ++; LA32: # %bb.0: ++; LA32-NEXT: addi.w $sp, $sp, -32 ++; LA32-NEXT: st.w $ra, $sp, 28 # 4-byte Folded Spill ++; LA32-NEXT: fst.d $fs0, $sp, 16 # 8-byte Folded Spill ++; LA32-NEXT: fst.d $fs1, $sp, 8 # 8-byte Folded Spill ++; LA32-NEXT: fmov.s $fs0, $fa0 ++; LA32-NEXT: fmov.s $fa0, $fa1 ++; LA32-NEXT: bl %plt(__gnu_f2h_ieee) ++; LA32-NEXT: bl %plt(__gnu_h2f_ieee) ++; LA32-NEXT: fmov.s $fs1, $fa0 ++; LA32-NEXT: fmov.s $fa0, $fs0 ++; LA32-NEXT: bl %plt(__gnu_f2h_ieee) ++; LA32-NEXT: bl %plt(__gnu_h2f_ieee) ++; LA32-NEXT: fmul.s $fa0, $fa0, $fs1 ++; LA32-NEXT: fld.d $fs1, $sp, 8 # 8-byte Folded Reload ++; LA32-NEXT: fld.d $fs0, $sp, 16 # 8-byte Folded Reload ++; LA32-NEXT: ld.w $ra, $sp, 28 # 4-byte Folded Reload ++; LA32-NEXT: addi.w $sp, $sp, 32 ++; LA32-NEXT: ret ++; ++; LA64-LABEL: test_fmul_reg: ++; LA64: # %bb.0: ++; LA64-NEXT: addi.d $sp, $sp, -32 ++; LA64-NEXT: st.d $ra, $sp, 24 # 8-byte Folded Spill ++; LA64-NEXT: fst.d $fs0, $sp, 16 # 8-byte Folded Spill ++; LA64-NEXT: fst.d $fs1, $sp, 8 # 8-byte Folded Spill ++; LA64-NEXT: fmov.s $fs0, $fa0 ++; LA64-NEXT: fmov.s $fa0, $fa1 ++; LA64-NEXT: bl %plt(__gnu_f2h_ieee) ++; LA64-NEXT: bl %plt(__gnu_h2f_ieee) ++; LA64-NEXT: fmov.s $fs1, $fa0 ++; LA64-NEXT: fmov.s $fa0, $fs0 ++; LA64-NEXT: bl %plt(__gnu_f2h_ieee) ++; LA64-NEXT: bl %plt(__gnu_h2f_ieee) ++; LA64-NEXT: fmul.s $fa0, $fa0, $fs1 ++; LA64-NEXT: fld.d $fs1, $sp, 8 # 8-byte Folded Reload ++; LA64-NEXT: fld.d $fs0, $sp, 16 # 8-byte Folded Reload ++; LA64-NEXT: ld.d $ra, $sp, 24 # 8-byte Folded Reload ++; LA64-NEXT: addi.d $sp, $sp, 32 ++; LA64-NEXT: ret ++ %r = fmul half %a, %b ++ ret half %r ++} ++ ++define void @test_fmul_mem(ptr %p, ptr %q) nounwind { ++; LA32-LABEL: test_fmul_mem: ++; LA32: # %bb.0: ++; LA32-NEXT: addi.w $sp, $sp, -32 ++; LA32-NEXT: st.w $ra, $sp, 28 # 4-byte Folded Spill ++; LA32-NEXT: st.w $fp, $sp, 24 # 4-byte Folded Spill ++; LA32-NEXT: st.w $s0, $sp, 20 # 4-byte Folded Spill ++; LA32-NEXT: fst.d $fs0, $sp, 8 # 8-byte Folded Spill ++; LA32-NEXT: move $fp, $a1 ++; LA32-NEXT: move $s0, $a0 ++; LA32-NEXT: ld.hu $a0, $a0, 0 ++; LA32-NEXT: bl %plt(__gnu_h2f_ieee) ++; LA32-NEXT: fmov.s $fs0, $fa0 ++; LA32-NEXT: ld.hu $a0, $fp, 0 ++; LA32-NEXT: bl %plt(__gnu_h2f_ieee) ++; LA32-NEXT: fmul.s $fa0, $fs0, $fa0 ++; LA32-NEXT: bl %plt(__gnu_f2h_ieee) ++; LA32-NEXT: st.h $a0, $s0, 0 ++; LA32-NEXT: fld.d $fs0, $sp, 8 # 8-byte Folded Reload ++; LA32-NEXT: ld.w $s0, $sp, 20 # 4-byte Folded Reload ++; LA32-NEXT: ld.w $fp, $sp, 24 # 4-byte Folded Reload ++; LA32-NEXT: ld.w $ra, $sp, 28 # 4-byte Folded Reload ++; LA32-NEXT: addi.w $sp, $sp, 32 ++; LA32-NEXT: ret ++; ++; LA64-LABEL: test_fmul_mem: ++; LA64: # %bb.0: ++; LA64-NEXT: addi.d $sp, $sp, -32 ++; LA64-NEXT: st.d $ra, $sp, 24 # 8-byte Folded Spill ++; LA64-NEXT: st.d $fp, $sp, 16 # 8-byte Folded Spill ++; LA64-NEXT: st.d $s0, $sp, 8 # 8-byte Folded Spill ++; LA64-NEXT: fst.d $fs0, $sp, 0 # 8-byte Folded Spill ++; LA64-NEXT: move $fp, $a1 ++; LA64-NEXT: move $s0, $a0 ++; LA64-NEXT: ld.hu $a0, $a0, 0 ++; LA64-NEXT: bl %plt(__gnu_h2f_ieee) ++; LA64-NEXT: fmov.s $fs0, $fa0 ++; LA64-NEXT: ld.hu $a0, $fp, 0 ++; LA64-NEXT: bl %plt(__gnu_h2f_ieee) ++; LA64-NEXT: fmul.s $fa0, $fs0, $fa0 ++; LA64-NEXT: bl %plt(__gnu_f2h_ieee) ++; LA64-NEXT: st.h $a0, $s0, 0 ++; LA64-NEXT: fld.d $fs0, $sp, 0 # 8-byte Folded Reload ++; LA64-NEXT: ld.d $s0, $sp, 8 # 8-byte Folded Reload ++; LA64-NEXT: ld.d $fp, $sp, 16 # 8-byte Folded Reload ++; LA64-NEXT: ld.d $ra, $sp, 24 # 8-byte Folded Reload ++; LA64-NEXT: addi.d $sp, $sp, 32 ++; LA64-NEXT: ret ++ %a = load half, ptr %p ++ %b = load half, ptr %q ++ %r = fmul half %a, %b ++ store half %r, ptr %p ++ ret void ++} +-- +2.47.1 + diff --git a/runtime-optenv32/llvm+32/autobuild/patches/1000-i686-gcc-compatibility.patch b/runtime-optenv32/llvm+32/autobuild/patches/1000-i686-gcc-compatibility.patch new file mode 100644 index 00000000000..ad56e5abd63 --- /dev/null +++ b/runtime-optenv32/llvm+32/autobuild/patches/1000-i686-gcc-compatibility.patch @@ -0,0 +1,11 @@ +--- a/compiler-rt/lib/builtins/fp_lib.h ++++ b/compiler-rt/lib/builtins/fp_lib.h +@@ -192,7 +192,7 @@ + #undef Word_FullMask + #endif // defined(CRT_HAS_IEEE_TF) + #else +-typedef long double fp_t; ++typedef _Float128 fp_t; + #endif // defined(CRT_HAS_F128) && defined(CRT_HAS_128BIT) + #else + #error SINGLE_PRECISION, DOUBLE_PRECISION or QUAD_PRECISION must be defined. diff --git a/runtime-optenv32/llvm+32/autobuild/patches/1000-rust-Add-accessors-for-MCSubtargetInfo-CPU-and-Featu.patch.deferred b/runtime-optenv32/llvm+32/autobuild/patches/1000-rust-Add-accessors-for-MCSubtargetInfo-CPU-and-Featu.patch.deferred deleted file mode 100644 index 1c3e8f8e573..00000000000 --- a/runtime-optenv32/llvm+32/autobuild/patches/1000-rust-Add-accessors-for-MCSubtargetInfo-CPU-and-Featu.patch.deferred +++ /dev/null @@ -1,33 +0,0 @@ -From da7c7123d9acfa9b699e85dae733318e6ec13114 Mon Sep 17 00:00:00 2001 -From: Cameron Hart -Date: Sun, 10 Jul 2016 23:55:53 +1000 -Subject: [PATCH 1000/1013] [rust] Add accessors for MCSubtargetInfo CPU and - Feature tables - -This is needed for `-C target-cpu=help` and `-C target-feature=help` in rustc ---- - llvm/include/llvm/MC/MCSubtargetInfo.h | 8 ++++++++ - 1 file changed, 8 insertions(+) - -diff --git a/include/llvm/MC/MCSubtargetInfo.h b/include/llvm/MC/MCSubtargetInfo.h -index 839a3bd85829..8e98d6f7a08b 100644 ---- a/include/llvm/MC/MCSubtargetInfo.h -+++ b/include/llvm/MC/MCSubtargetInfo.h -@@ -229,6 +229,14 @@ public: - return Found != ProcDesc.end() && StringRef(Found->Key) == CPU; - } - -+ ArrayRef getCPUTable() const { -+ return ProcDesc; -+ } -+ -+ ArrayRef getFeatureTable() const { -+ return ProcFeatures; -+ } -+ - virtual unsigned getHwMode() const { return 0; } - - /// Return the cache size in bytes for the given level of cache. --- -2.35.1 - diff --git a/runtime-optenv32/llvm+32/autobuild/patches/1001-i686-runtimes-force-remove-clang-dependency.patch b/runtime-optenv32/llvm+32/autobuild/patches/1001-i686-runtimes-force-remove-clang-dependency.patch new file mode 100644 index 00000000000..4dff93c7456 --- /dev/null +++ b/runtime-optenv32/llvm+32/autobuild/patches/1001-i686-runtimes-force-remove-clang-dependency.patch @@ -0,0 +1,11 @@ +--- a/llvm/runtimes/CMakeLists.txt 2024-12-28 09:57:24.199761407 +0800 ++++ b/llvm/runtimes/CMakeLists.txt 2024-12-28 09:55:37.513501617 +0800 +@@ -2,7 +2,7 @@ + # Clang, except there already is clang/runtime directory which contains + # similar although simpler functionality. We should figure out how to merge + # the two files. +- ++add_custom_target("clang-resource-headers" ALL) + set(COMMON_CMAKE_ARGS "-DHAVE_LLVM_LIT=ON;-DCLANG_RESOURCE_DIR=${CLANG_RESOURCE_DIR}") + foreach(proj ${LLVM_ENABLE_RUNTIMES}) + set(proj_dir "${CMAKE_CURRENT_SOURCE_DIR}/../../${proj}") diff --git a/runtime-optenv32/llvm+32/autobuild/patches/1001-rust-Add-knowledge-of-__rust_-alloc-realloc-dealloc.patch.deferred b/runtime-optenv32/llvm+32/autobuild/patches/1001-rust-Add-knowledge-of-__rust_-alloc-realloc-dealloc.patch.deferred deleted file mode 100644 index b7de51b8113..00000000000 --- a/runtime-optenv32/llvm+32/autobuild/patches/1001-rust-Add-knowledge-of-__rust_-alloc-realloc-dealloc.patch.deferred +++ /dev/null @@ -1,94 +0,0 @@ -From 59b1d748157ddce5f701dfcaa4fae9a553fc9775 Mon Sep 17 00:00:00 2001 -From: Simonas Kazlauskas -Date: Sat, 3 Jun 2017 18:55:08 +0300 -Subject: [PATCH 1001/1013] [rust] Add knowledge of - __rust_{alloc,realloc,dealloc} - ---- - .../llvm/Analysis/TargetLibraryInfo.def | 13 ++++++++++++ - llvm/lib/Analysis/MemoryBuiltins.cpp | 6 +++++- - llvm/lib/Analysis/TargetLibraryInfo.cpp | 20 +++++++++++++++++++ - 3 files changed, 38 insertions(+), 1 deletion(-) - -diff --git a/include/llvm/Analysis/TargetLibraryInfo.def b/include/llvm/Analysis/TargetLibraryInfo.def -index 9c1abef33b28..70a79112ded8 100644 ---- a/include/llvm/Analysis/TargetLibraryInfo.def -+++ b/include/llvm/Analysis/TargetLibraryInfo.def -@@ -391,6 +391,19 @@ TLI_DEFINE_STRING_INTERNAL("__powf_finite") - /// long double __powl_finite(long double x, long double y); - TLI_DEFINE_ENUM_INTERNAL(powl_finite) - TLI_DEFINE_STRING_INTERNAL("__powl_finite") -+ -+TLI_DEFINE_ENUM_INTERNAL(rust_alloc) -+TLI_DEFINE_STRING_INTERNAL("__rust_alloc") -+ -+TLI_DEFINE_ENUM_INTERNAL(rust_alloc_zeroed) -+TLI_DEFINE_STRING_INTERNAL("__rust_alloc_zeroed") -+ -+TLI_DEFINE_ENUM_INTERNAL(rust_dealloc) -+TLI_DEFINE_STRING_INTERNAL("__rust_dealloc") -+ -+TLI_DEFINE_ENUM_INTERNAL(rust_realloc) -+TLI_DEFINE_STRING_INTERNAL("__rust_realloc") -+ - /// double __sincospi_stret(double x); - TLI_DEFINE_ENUM_INTERNAL(sincospi_stret) - TLI_DEFINE_STRING_INTERNAL("__sincospi_stret") -diff --git a/lib/Analysis/MemoryBuiltins.cpp b/lib/Analysis/MemoryBuiltins.cpp -index 9e26f292b789..4b08e6417ebf 100644 ---- a/lib/Analysis/MemoryBuiltins.cpp -+++ b/lib/Analysis/MemoryBuiltins.cpp -@@ -111,6 +111,9 @@ static const std::pair AllocationFnData[] = { - {LibFunc_strdup, {StrDupLike, 1, -1, -1, -1}}, - {LibFunc_strndup, {StrDupLike, 2, 1, -1, -1}}, - {LibFunc___kmpc_alloc_shared, {MallocLike, 1, 0, -1, -1}}, -+ {LibFunc_rust_alloc, {MallocLike, 2, 0, -1, 1}}, -+ {LibFunc_rust_alloc_zeroed, {CallocLike, 2, 0, -1, 1}}, -+ {LibFunc_rust_realloc, {ReallocLike, 4, 3, -1, 2}}, - // TODO: Handle "int posix_memalign(void **, size_t, size_t)" - }; - -@@ -429,7 +432,8 @@ bool llvm::isLibFreeFunction(const Function *F, const LibFunc TLIFn) { - TLIFn == LibFunc_ZdlPvjSt11align_val_t || // delete(void*, unsigned long, align_val_t) - TLIFn == LibFunc_ZdlPvmSt11align_val_t || // delete(void*, unsigned long, align_val_t) - TLIFn == LibFunc_ZdaPvjSt11align_val_t || // delete[](void*, unsigned int, align_val_t) -- TLIFn == LibFunc_ZdaPvmSt11align_val_t) // delete[](void*, unsigned long, align_val_t) -+ TLIFn == LibFunc_ZdaPvmSt11align_val_t || // delete[](void*, unsigned long, align_val_t) -+ TLIFn == LibFunc_rust_dealloc) - ExpectedNumParams = 3; - else - return false; -diff --git a/lib/Analysis/TargetLibraryInfo.cpp b/lib/Analysis/TargetLibraryInfo.cpp -index 02923c2c7eb1..22d6a5f04152 100644 ---- a/lib/Analysis/TargetLibraryInfo.cpp -+++ b/lib/Analysis/TargetLibraryInfo.cpp -@@ -1793,6 +1793,26 @@ bool TargetLibraryInfoImpl::isValidProtoForLibFunc(const FunctionType &FTy, - else - return false; - } -+ -+ case LibFunc_rust_alloc: -+ case LibFunc_rust_alloc_zeroed: -+ return (NumParams == 2 && FTy.getReturnType()->isPointerTy() && -+ FTy.getParamType(0)->isIntegerTy() && -+ FTy.getParamType(1)->isIntegerTy()); -+ -+ case LibFunc_rust_dealloc: -+ return (NumParams == 3 && FTy.getReturnType()->isVoidTy() && -+ FTy.getParamType(0)->isPointerTy() && -+ FTy.getParamType(1)->isIntegerTy() && -+ FTy.getParamType(2)->isIntegerTy()); -+ -+ case LibFunc_rust_realloc: -+ return (NumParams == 4 && FTy.getReturnType()->isPointerTy() && -+ FTy.getParamType(0)->isPointerTy() && -+ FTy.getParamType(1)->isIntegerTy() && -+ FTy.getParamType(2)->isIntegerTy() && -+ FTy.getParamType(3)->isIntegerTy()); -+ - case LibFunc::NumLibFuncs: - case LibFunc::NotLibFunc: - break; --- -2.35.1 - diff --git a/runtime-optenv32/llvm+32/autobuild/patches/1002-i686-gcc-use-gcc-flags.patch b/runtime-optenv32/llvm+32/autobuild/patches/1002-i686-gcc-use-gcc-flags.patch new file mode 100644 index 00000000000..dc4c89a10c7 --- /dev/null +++ b/runtime-optenv32/llvm+32/autobuild/patches/1002-i686-gcc-use-gcc-flags.patch @@ -0,0 +1,13 @@ +diff --git a/libunwind/src/CMakeLists.txt b/libunwind/src/CMakeLists.txt +index 9c6f5d908b09..b668f180f112 100644 +--- a/libunwind/src/CMakeLists.txt ++++ b/libunwind/src/CMakeLists.txt +@@ -66,7 +66,7 @@ set(LIBUNWIND_SOURCES + ${LIBUNWIND_ASM_SOURCES}) + + # Generate library list. +-if (CXX_SUPPORTS_NOSTDLIBXX_FLAG) ++if (0) + add_link_flags_if_supported(-nostdlib++) + else() + if (LIBUNWIND_USE_COMPILER_RT) diff --git a/runtime-optenv32/llvm+32/autobuild/patches/1005-rust-Skip-processor-info-on-i386-mingw-w64-7.patch.deferred b/runtime-optenv32/llvm+32/autobuild/patches/1005-rust-Skip-processor-info-on-i386-mingw-w64-7.patch.deferred deleted file mode 100644 index ad378ac679c..00000000000 --- a/runtime-optenv32/llvm+32/autobuild/patches/1005-rust-Skip-processor-info-on-i386-mingw-w64-7.patch.deferred +++ /dev/null @@ -1,41 +0,0 @@ -From f1e98581dad2f1d72106034a73f05f60dcee4de1 Mon Sep 17 00:00:00 2001 -From: Josh Stone -Date: Wed, 29 Jul 2020 11:50:36 -0700 -Subject: [PATCH 1005/1013] [rust] Skip processor info on i386 mingw-w64 < 7 - -This will limit LLVM thread pools to a single thread on that target, but -we don't use that functionality in rustc anyway. - -See also: -https://github.com/llvm/llvm-project/commit/8404aeb56a73ab24f9b295111de3b37a37f0b841#commitcomment-37406150 ---- - llvm/lib/Support/Windows/Threading.inc | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git a/lib/Support/Windows/Threading.inc b/lib/Support/Windows/Threading.inc -index 7b48ca8fb1fb..2911485d4a29 100644 ---- a/lib/Support/Windows/Threading.inc -+++ b/lib/Support/Windows/Threading.inc -@@ -142,6 +142,11 @@ struct ProcessorGroup { - - template - static bool IterateProcInfo(LOGICAL_PROCESSOR_RELATIONSHIP Relationship, F Fn) { -+#if !defined(_WIN64) && defined(__MINGW64_VERSION_MAJOR) && __MINGW64_VERSION_MAJOR < 7 -+ // `GetLogicalProcessorInformationEx@12` was only added to i386 mingw-w64 in v7.0.0 -+ // https://github.com/mingw-w64/mingw-w64/commit/24842d45e025db0d38fa2bbd932b95a83282efa2#diff-faf1d8a1556e75a84b7cef2e89512e79R634 -+ return false; -+#else - DWORD Len = 0; - BOOL R = ::GetLogicalProcessorInformationEx(Relationship, NULL, &Len); - if (R || GetLastError() != ERROR_INSUFFICIENT_BUFFER) { -@@ -162,6 +167,7 @@ static bool IterateProcInfo(LOGICAL_PROCESSOR_RELATIONSHIP Relationship, F Fn) { - } - free(Info); - return true; -+#endif - } - - static ArrayRef getProcessorGroups() { --- -2.35.1 - diff --git a/runtime-optenv32/llvm+32/autobuild/patches/1006-rust-Mask-the-IntervalMap-alignment-assertion-on-ix8.patch.deferred b/runtime-optenv32/llvm+32/autobuild/patches/1006-rust-Mask-the-IntervalMap-alignment-assertion-on-ix8.patch.deferred deleted file mode 100644 index eb365e4a7fd..00000000000 --- a/runtime-optenv32/llvm+32/autobuild/patches/1006-rust-Mask-the-IntervalMap-alignment-assertion-on-ix8.patch.deferred +++ /dev/null @@ -1,29 +0,0 @@ -From 7a561e618ce7e50e2fea96554846a2d90e8d3142 Mon Sep 17 00:00:00 2001 -From: Josh Stone -Date: Tue, 4 Aug 2020 14:20:50 -0700 -Subject: [PATCH 1006/1013] [rust] Mask the IntervalMap alignment assertion on - ix86 mingw - ---- - llvm/include/llvm/ADT/IntervalMap.h | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/include/llvm/ADT/IntervalMap.h b/include/llvm/ADT/IntervalMap.h -index 368ed46f98d2..8daa65c18d16 100644 ---- a/include/llvm/ADT/IntervalMap.h -+++ b/include/llvm/ADT/IntervalMap.h -@@ -1042,8 +1042,11 @@ private: - - public: - explicit IntervalMap(Allocator &a) : height(0), rootSize(0), allocator(a) { -+#if !(defined(__MINGW32__) && defined(_M_IX86)) -+ // FIXME: i686-mingw is failing this assertion somehow... - assert((uintptr_t(&data) & (alignof(RootLeaf) - 1)) == 0 && - "Insufficient alignment"); -+#endif - new(&rootLeaf()) RootLeaf(); - } - --- -2.35.1 - diff --git a/runtime-optenv32/llvm+32/autobuild/patches/1007-rust-Define-FP_XSTATE_MAGIC1-if-not-defined.patch.deferred b/runtime-optenv32/llvm+32/autobuild/patches/1007-rust-Define-FP_XSTATE_MAGIC1-if-not-defined.patch.deferred deleted file mode 100644 index 674740eb5e7..00000000000 --- a/runtime-optenv32/llvm+32/autobuild/patches/1007-rust-Define-FP_XSTATE_MAGIC1-if-not-defined.patch.deferred +++ /dev/null @@ -1,33 +0,0 @@ -From 0e3cb003cdfd46fdb8104138ebcba2f282726249 Mon Sep 17 00:00:00 2001 -From: Nikita Popov -Date: Wed, 2 Feb 2022 15:49:15 +0100 -Subject: [PATCH 1007/1013] [rust] Define FP_XSTATE_MAGIC1 if not defined - -It looks like on old linux versions (like our dist-x86_64-linux -builder) FP_XSTATE_MAGIC1 is defined only by asm/sigcontext.h, -but not by bits/sigcontext.h. We can't actually include -asm/sigcontext.h, because that would clash with types defined -in bits/sigcontext.h, which gets pulled in via signal.h. - -Instead we just replicate the value from the header here. ---- - .../lib/sanitizer_common/sanitizer_platform_limits_posix.cpp | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/projects/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cpp b/projects/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cpp -index 32b8f47ed633..177263473da7 100644 ---- a/projects/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cpp -+++ b/projects/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cpp -@@ -218,6 +218,9 @@ namespace __sanitizer { - - unsigned ucontext_t_sz(void *ctx) { - # if SANITIZER_GLIBC && SANITIZER_X64 -+#ifndef FP_XSTATE_MAGIC1 -+# define FP_XSTATE_MAGIC1 0x46505853U -+#endif - // See kernel arch/x86/kernel/fpu/signal.c for details. - const auto *fpregs = static_cast(ctx)->uc_mcontext.fpregs; - // The member names differ across header versions, but the actual layout --- -2.35.1 - diff --git a/runtime-optenv32/llvm+32/autobuild/patches/1008-rust-Work-around-ICE-in-GCC-5.4.patch.deferred b/runtime-optenv32/llvm+32/autobuild/patches/1008-rust-Work-around-ICE-in-GCC-5.4.patch.deferred deleted file mode 100644 index 2bdb652b1f0..00000000000 --- a/runtime-optenv32/llvm+32/autobuild/patches/1008-rust-Work-around-ICE-in-GCC-5.4.patch.deferred +++ /dev/null @@ -1,27 +0,0 @@ -From 9f4efcd4226269bed2affdaea1fc73d3e24c8051 Mon Sep 17 00:00:00 2001 -From: Nikita Popov -Date: Thu, 10 Feb 2022 09:59:11 +0100 -Subject: [PATCH 1008/1013] [rust] Work around ICE in GCC 5.4 - ---- - lld/ELF/SyntheticSections.cpp | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/tools/lld/ELF/SyntheticSections.cpp b/tools/lld/ELF/SyntheticSections.cpp -index 7778ae5f78e6..0a2d11218e70 100644 ---- a/tools/lld/ELF/SyntheticSections.cpp -+++ b/tools/lld/ELF/SyntheticSections.cpp -@@ -1652,8 +1652,8 @@ void RelocationBaseSection::partitionRels() { - if (!combreloc) - return; - const RelType relativeRel = target->relativeRel; -- numRelativeRelocs = -- llvm::partition(relocs, [=](auto &r) { return r.type == relativeRel; }) - -+ numRelativeRelocs = llvm::partition( -+ relocs, [=](const DynamicReloc &r) { return r.type == relativeRel; }) - - relocs.begin(); - } - --- -2.35.1 - diff --git a/runtime-optenv32/llvm+32/autobuild/patches/1009-rust-Remove-constexpr-from-functions-that-call-non-c.patch.deferred b/runtime-optenv32/llvm+32/autobuild/patches/1009-rust-Remove-constexpr-from-functions-that-call-non-c.patch.deferred deleted file mode 100644 index 995efaef00d..00000000000 --- a/runtime-optenv32/llvm+32/autobuild/patches/1009-rust-Remove-constexpr-from-functions-that-call-non-c.patch.deferred +++ /dev/null @@ -1,43 +0,0 @@ -From 2746c763c30a656318b4ac5c5e3ad672c03b696e Mon Sep 17 00:00:00 2001 -From: Nikita Popov -Date: Thu, 10 Feb 2022 10:06:17 +0100 -Subject: [PATCH 1009/1013] [rust] Remove constexpr from functions that call - non-constexpr functions - -The CHECK macros will call non-constexpr functions on failure. While -this is legal C++14 as long as the function doesn't actually get called, -GCC 5.4 will choke on it. ---- - compiler-rt/lib/sanitizer_common/sanitizer_common.h | 2 +- - compiler-rt/lib/sanitizer_common/sanitizer_stack_store.h | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/projects/compiler-rt/lib/sanitizer_common/sanitizer_common.h b/projects/compiler-rt/lib/sanitizer_common/sanitizer_common.h -index 3302590c6771..d4e2286a2195 100644 ---- a/projects/compiler-rt/lib/sanitizer_common/sanitizer_common.h -+++ b/projects/compiler-rt/lib/sanitizer_common/sanitizer_common.h -@@ -426,7 +426,7 @@ inline uptr RoundUpToPowerOfTwo(uptr size) { - return 1ULL << (up + 1); - } - --inline constexpr uptr RoundUpTo(uptr size, uptr boundary) { -+inline uptr RoundUpTo(uptr size, uptr boundary) { - RAW_CHECK(IsPowerOfTwo(boundary)); - return (size + boundary - 1) & ~(boundary - 1); - } -diff --git a/projects/compiler-rt/lib/sanitizer_common/sanitizer_stack_store.h b/projects/compiler-rt/lib/sanitizer_common/sanitizer_stack_store.h -index 4f1a8caac6ed..ddb96d2cce1c 100644 ---- a/projects/compiler-rt/lib/sanitizer_common/sanitizer_stack_store.h -+++ b/projects/compiler-rt/lib/sanitizer_common/sanitizer_stack_store.h -@@ -61,7 +61,7 @@ class StackStore { - return frame_idx % kBlockSizeFrames; - } - -- static constexpr uptr IdToOffset(Id id) { -+ static uptr IdToOffset(Id id) { - CHECK_NE(id, 0); - return id - 1; // Avoid zero as id. - } --- -2.35.1 - diff --git a/runtime-optenv32/llvm+32/autobuild/patches/1010-rust-Revert-Sanitizers-intercept-md5-and-sha-apis-on.patch.deferred b/runtime-optenv32/llvm+32/autobuild/patches/1010-rust-Revert-Sanitizers-intercept-md5-and-sha-apis-on.patch.deferred deleted file mode 100644 index bfa9df13f5a..00000000000 --- a/runtime-optenv32/llvm+32/autobuild/patches/1010-rust-Revert-Sanitizers-intercept-md5-and-sha-apis-on.patch.deferred +++ /dev/null @@ -1,450 +0,0 @@ -From 5d50da761df2547b1876a94a49cbb10dcd99d1ca Mon Sep 17 00:00:00 2001 -From: Nikita Popov -Date: Sun, 13 Feb 2022 09:30:13 +0100 -Subject: [PATCH 1010/1013] [rust] Revert "[Sanitizers] intercept md5 and sha* - apis on FreeBSD." - -This reverts commit 18a7ebda99044473fdbce6376993714ff54e6690. - -Not supported on FreeBSD 11. ---- - .../sanitizer_platform_interceptors.h | 4 +- - .../sanitizer_platform_limits_freebsd.cpp | 21 -- - .../sanitizer_platform_limits_freebsd.h | 16 -- - .../TestCases/FreeBSD/md5.cpp | 119 ---------- - .../TestCases/FreeBSD/sha2.cpp | 214 ------------------ - 5 files changed, 2 insertions(+), 372 deletions(-) - delete mode 100644 compiler-rt/test/sanitizer_common/TestCases/FreeBSD/md5.cpp - delete mode 100644 compiler-rt/test/sanitizer_common/TestCases/FreeBSD/sha2.cpp - -diff --git a/projects/compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h b/projects/compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h -index 14610f2df78d..ce32ab510099 100644 ---- a/projects/compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h -+++ b/projects/compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h -@@ -552,10 +552,10 @@ - #define SANITIZER_INTERCEPT_SHA1 SI_NETBSD - #define SANITIZER_INTERCEPT_MD4 SI_NETBSD - #define SANITIZER_INTERCEPT_RMD160 SI_NETBSD --#define SANITIZER_INTERCEPT_MD5 (SI_NETBSD || SI_FREEBSD) -+#define SANITIZER_INTERCEPT_MD5 SI_NETBSD - #define SANITIZER_INTERCEPT_FSEEK (SI_NETBSD || SI_FREEBSD) - #define SANITIZER_INTERCEPT_MD2 SI_NETBSD --#define SANITIZER_INTERCEPT_SHA2 (SI_NETBSD || SI_FREEBSD) -+#define SANITIZER_INTERCEPT_SHA2 SI_NETBSD - #define SANITIZER_INTERCEPT_CDB SI_NETBSD - #define SANITIZER_INTERCEPT_VIS (SI_NETBSD || SI_FREEBSD) - #define SANITIZER_INTERCEPT_POPEN SI_POSIX -diff --git a/projects/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_freebsd.cpp b/projects/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_freebsd.cpp -index 0d25fa80e2ed..f99da77c4de8 100644 ---- a/projects/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_freebsd.cpp -+++ b/projects/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_freebsd.cpp -@@ -69,11 +69,6 @@ - #include - #include - #include --#include --#include --#include --#include --#include - #include - #include - #include -@@ -366,22 +361,6 @@ const int si_SEGV_MAPERR = SEGV_MAPERR; - const int si_SEGV_ACCERR = SEGV_ACCERR; - const int unvis_valid = UNVIS_VALID; - const int unvis_validpush = UNVIS_VALIDPUSH; -- --const unsigned MD5_CTX_sz = sizeof(MD5_CTX); --const unsigned MD5_return_length = MD5_DIGEST_STRING_LENGTH; -- --#define SHA2_CONST(LEN) \ -- const unsigned SHA##LEN##_CTX_sz = sizeof(SHA##LEN##_CTX); \ -- const unsigned SHA##LEN##_return_length = SHA##LEN##_DIGEST_STRING_LENGTH; \ -- const unsigned SHA##LEN##_block_length = SHA##LEN##_BLOCK_LENGTH; \ -- const unsigned SHA##LEN##_digest_length = SHA##LEN##_DIGEST_LENGTH -- --SHA2_CONST(224); --SHA2_CONST(256); --SHA2_CONST(384); --SHA2_CONST(512); -- --#undef SHA2_CONST - } // namespace __sanitizer - - using namespace __sanitizer; -diff --git a/projects/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_freebsd.h b/projects/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_freebsd.h -index 9859c52ec69f..fb476f1bafa2 100644 ---- a/projects/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_freebsd.h -+++ b/projects/compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_freebsd.h -@@ -647,22 +647,6 @@ extern unsigned IOCTL_KDSKBMODE; - extern const int si_SEGV_MAPERR; - extern const int si_SEGV_ACCERR; - --extern const unsigned MD5_CTX_sz; --extern const unsigned MD5_return_length; -- --#define SHA2_EXTERN(LEN) \ -- extern const unsigned SHA##LEN##_CTX_sz; \ -- extern const unsigned SHA##LEN##_return_length; \ -- extern const unsigned SHA##LEN##_block_length; \ -- extern const unsigned SHA##LEN##_digest_length -- --SHA2_EXTERN(224); --SHA2_EXTERN(256); --SHA2_EXTERN(384); --SHA2_EXTERN(512); -- --#undef SHA2_EXTERN -- - struct __sanitizer_cap_rights { - u64 cr_rights[2]; - }; -diff --git a/projects/compiler-rt/test/sanitizer_common/TestCases/FreeBSD/md5.cpp b/projects/compiler-rt/test/sanitizer_common/TestCases/FreeBSD/md5.cpp -deleted file mode 100644 -index 13325880a023..000000000000 ---- a/projects/compiler-rt/test/sanitizer_common/TestCases/FreeBSD/md5.cpp -+++ /dev/null -@@ -1,119 +0,0 @@ --// RUN: %clangxx -O0 -g %s -o %t -lmd && %run %t 2>&1 | FileCheck %s -- --#include -- --#include --#include --#include --#include --#include -- --void test1() { -- MD5_CTX ctx; -- uint8_t entropy[] = {0x11, 0x22, 0x33, 0x44, 0x55, 0x66}; -- uint8_t digest[MD5_DIGEST_LENGTH]; -- size_t entropysz = sizeof(entropy); -- size_t digestsz = sizeof(digest); -- -- MD5Init(&ctx); -- MD5Update(&ctx, entropy, entropysz); -- MD5Final(digest, &ctx); -- -- printf("test1: '"); -- for (size_t i = 0; i < digestsz; i++) -- printf("%02x", digest[i]); -- printf("'\n"); --} -- --void test2() { -- MD5_CTX ctx; -- uint8_t entropy[] = {0x11, 0x22, 0x33, 0x44, 0x55, 0x66}; -- char digest[MD5_DIGEST_STRING_LENGTH]; -- size_t entropysz = sizeof(entropy); -- -- MD5Init(&ctx); -- MD5Update(&ctx, entropy, entropysz); -- char *p = MD5End(&ctx, digest); -- assert(p); -- -- printf("test2: '%s'\n", digest); --} -- --void test3() { -- MD5_CTX ctx; -- uint8_t entropy[] = {0x11, 0x22, 0x33, 0x44, 0x55, 0x66}; -- size_t entropysz = sizeof(entropy); -- -- MD5Init(&ctx); -- MD5Update(&ctx, entropy, entropysz); -- char *p = MD5End(&ctx, NULL); -- assert(strlen(p) == MD5_DIGEST_STRING_LENGTH - 1); -- -- printf("test3: '%s'\n", p); -- -- free(p); --} -- --void test4() { -- char digest[MD5_DIGEST_STRING_LENGTH]; -- -- char *p = MD5File("/etc/fstab", digest); -- assert(p == digest); -- -- printf("test4: '%s'\n", p); --} -- --void test5() { -- char *p = MD5File("/etc/fstab", NULL); -- assert(strlen(p) == MD5_DIGEST_STRING_LENGTH - 1); -- -- printf("test5: '%s'\n", p); -- -- free(p); --} -- --void test6() { -- uint8_t entropy[] = {0x11, 0x22, 0x33, 0x44, 0x55, 0x66}; -- char digest[MD5_DIGEST_STRING_LENGTH]; -- size_t entropysz = sizeof(entropy); -- -- char *p = MD5Data(entropy, entropysz, digest); -- assert(p == digest); -- -- printf("test6: '%s'\n", p); --} -- --void test7() { -- uint8_t entropy[] = {0x11, 0x22, 0x33, 0x44, 0x55, 0x66}; -- size_t entropysz = sizeof(entropy); -- -- char *p = MD5Data(entropy, entropysz, NULL); -- assert(strlen(p) == MD5_DIGEST_STRING_LENGTH - 1); -- -- printf("test7: '%s'\n", p); -- -- free(p); --} -- --int main(void) { -- printf("MD5\n"); -- -- test1(); -- test2(); -- test3(); -- test4(); -- test5(); -- test6(); -- test7(); -- -- // CHECK: MD5 -- // CHECK: test1: '86e65b1ef4a830af347ac05ab4f0e999' -- // CHECK: test2: '86e65b1ef4a830af347ac05ab4f0e999' -- // CHECK: test3: '86e65b1ef4a830af347ac05ab4f0e999' -- // CHECK: test4: '{{.*}}' -- // CHECK: test5: '{{.*}}' -- // CHECK: test6: '86e65b1ef4a830af347ac05ab4f0e999' -- // CHECK: test7: '86e65b1ef4a830af347ac05ab4f0e999' -- -- return 0; --} -diff --git a/projects/compiler-rt/test/sanitizer_common/TestCases/FreeBSD/sha2.cpp b/projects/compiler-rt/test/sanitizer_common/TestCases/FreeBSD/sha2.cpp -deleted file mode 100644 -index 3012aca7d720..000000000000 ---- a/projects/compiler-rt/test/sanitizer_common/TestCases/FreeBSD/sha2.cpp -+++ /dev/null -@@ -1,214 +0,0 @@ --// RUN: %clangxx -O0 -g %s -DSHASIZE=224 -o %t -lmd && %run %t 2>&1 | FileCheck %s -check-prefix=CHECK-224 --// RUN: %clangxx -O0 -g %s -DSHASIZE=256 -o %t -lmd && %run %t 2>&1 | FileCheck %s -check-prefix=CHECK-256 --// RUN: %clangxx -O0 -g %s -DSHASIZE=384 -o %t -lmd && %run %t 2>&1 | FileCheck %s -check-prefix=CHECK-384 --// RUN: %clangxx -O0 -g %s -DSHASIZE=512 -o %t -lmd && %run %t 2>&1 | FileCheck %s -check-prefix=CHECK-512 -- --#include -- --#include --#include --#include --#include --#include --#include --#include --#include -- --#ifndef SHASIZE --#error SHASIZE must be defined --#endif -- --#define _SHA_CTX(x) SHA##x##_CTX --#define SHA_CTX(x) _SHA_CTX(x) -- --#define _SHA_DIGEST_LENGTH(x) SHA##x##_DIGEST_LENGTH --#define SHA_DIGEST_LENGTH(x) _SHA_DIGEST_LENGTH(x) -- --#define _SHA_DIGEST_STRING_LENGTH(x) SHA##x##_DIGEST_STRING_LENGTH --#define SHA_DIGEST_STRING_LENGTH(x) _SHA_DIGEST_STRING_LENGTH(x) -- --#define _SHA_Init(x) SHA##x##_Init --#define SHA_Init(x) _SHA_Init(x) -- --#define _SHA_Update(x) SHA##x##_Update --#define SHA_Update(x) _SHA_Update(x) -- --#define _SHA_Final(x) SHA##x##_Final --#define SHA_Final(x) _SHA_Final(x) -- --#define _SHA_End(x) SHA##x##_End --#define SHA_End(x) _SHA_End(x) -- --#define _SHA_File(x) SHA##x##_File --#define SHA_File(x) _SHA_File(x) -- --#define _SHA_FileChunk(x) SHA##x##_FileChunk --#define SHA_FileChunk(x) _SHA_FileChunk(x) -- --#define _SHA_Data(x) SHA##x##_Data --#define SHA_Data(x) _SHA_Data(x) -- --void test1() { -- SHA_CTX(SHASIZE) ctx; -- uint8_t entropy[] = {0x11, 0x22, 0x33, 0x44, 0x55, 0x66}; -- uint8_t digest[SHA_DIGEST_LENGTH(SHASIZE)]; -- size_t entropysz = sizeof(entropy); -- size_t digestsz = sizeof(digest); -- -- SHA_Init(SHASIZE)(&ctx); -- SHA_Update(SHASIZE)(&ctx, entropy, entropysz); -- SHA_Final(SHASIZE)(digest, &ctx); -- -- printf("test1: '"); -- for (size_t i = 0; i < digestsz; i++) -- printf("%02x", digest[i]); -- printf("'\n"); --} -- --void test2() { -- SHA_CTX(SHASIZE) ctx; -- uint8_t entropy[] = {0x11, 0x22, 0x33, 0x44, 0x55, 0x66}; -- char digest[SHA_DIGEST_STRING_LENGTH(SHASIZE)]; -- size_t entropysz = sizeof(entropy); -- -- SHA_Init(SHASIZE)(&ctx); -- SHA_Update(SHASIZE)(&ctx, entropy, entropysz); -- char *p = SHA_End(SHASIZE)(&ctx, digest); -- assert(p == digest); -- -- printf("test2: '%s'\n", digest); --} -- --void test3() { -- SHA_CTX(SHASIZE) ctx; -- uint8_t entropy[] = {0x11, 0x22, 0x33, 0x44, 0x55, 0x66}; -- size_t entropysz = sizeof(entropy); -- -- SHA_Init(SHASIZE)(&ctx); -- SHA_Update(SHASIZE)(&ctx, entropy, entropysz); -- char *p = SHA_End(SHASIZE)(&ctx, NULL); -- assert(strlen(p) == SHA_DIGEST_STRING_LENGTH(SHASIZE) - 1); -- -- printf("test3: '%s'\n", p); -- -- free(p); --} -- --void test4() { -- char digest[SHA_DIGEST_STRING_LENGTH(SHASIZE)]; -- -- char *p = SHA_File(SHASIZE)("/etc/fstab", digest); -- assert(p == digest); -- -- printf("test4: '%s'\n", p); --} -- --void test5() { -- char *p = SHA_File(SHASIZE)("/etc/fstab", NULL); -- assert(strlen(p) == SHA_DIGEST_STRING_LENGTH(SHASIZE) - 1); -- -- printf("test5: '%s'\n", p); -- -- free(p); --} -- --void test6() { -- char digest[SHA_DIGEST_STRING_LENGTH(SHASIZE)]; -- -- char *p = SHA_FileChunk(SHASIZE)("/etc/fstab", digest, 10, 20); -- assert(p == digest); -- -- printf("test6: '%s'\n", p); --} -- --void test7() { -- char *p = SHA_FileChunk(SHASIZE)("/etc/fstab", NULL, 10, 20); -- assert(strlen(p) == SHA_DIGEST_STRING_LENGTH(SHASIZE) - 1); -- -- printf("test7: '%s'\n", p); -- -- free(p); --} -- --void test8() { -- uint8_t entropy[] = {0x11, 0x22, 0x33, 0x44, 0x55, 0x66}; -- char digest[SHA_DIGEST_STRING_LENGTH(SHASIZE)]; -- size_t entropysz = sizeof(entropy); -- -- char *p = SHA_Data(SHASIZE)(entropy, entropysz, digest); -- assert(p == digest); -- -- printf("test8: '%s'\n", p); --} -- --void test9() { -- uint8_t entropy[] = {0x11, 0x22, 0x33, 0x44, 0x55, 0x66}; -- size_t entropysz = sizeof(entropy); -- -- char *p = SHA_Data(SHASIZE)(entropy, entropysz, NULL); -- assert(strlen(p) == SHA_DIGEST_STRING_LENGTH(SHASIZE) - 1); -- -- printf("test9: '%s'\n", p); -- -- free(p); --} -- --int main(void) { -- printf("SHA%d\n", SHASIZE); -- -- test1(); -- test2(); -- test3(); -- test4(); -- test5(); -- test6(); -- test7(); -- test8(); -- test9(); -- -- // CHECK-224: SHA224 -- // CHECK-224: test1: '760dfb93100a6bf5996c90f678e529dc945bb2f74a211eedcf0f3a48' -- // CHECK-224: test2: '760dfb93100a6bf5996c90f678e529dc945bb2f74a211eedcf0f3a48' -- // CHECK-224: test3: '760dfb93100a6bf5996c90f678e529dc945bb2f74a211eedcf0f3a48' -- // CHECK-224: test4: '{{.*}}' -- // CHECK-224: test5: '{{.*}}' -- // CHECK-224: test6: '{{.*}}' -- // CHECK-224: test7: '{{.*}}' -- // CHECK-224: test8: '760dfb93100a6bf5996c90f678e529dc945bb2f74a211eedcf0f3a48' -- // CHECK-224: test9: '760dfb93100a6bf5996c90f678e529dc945bb2f74a211eedcf0f3a48' -- -- // CHECK-256: SHA256 -- // CHECK-256: test1: 'bb000ddd92a0a2a346f0b531f278af06e370f86932ccafccc892d68d350f80f8' -- // CHECK-256: test2: 'bb000ddd92a0a2a346f0b531f278af06e370f86932ccafccc892d68d350f80f8' -- // CHECK-256: test3: 'bb000ddd92a0a2a346f0b531f278af06e370f86932ccafccc892d68d350f80f8' -- // CHECK-256: test4: '{{.*}}' -- // CHECK-256: test5: '{{.*}}' -- // CHECK-256: test6: '{{.*}}' -- // CHECK-256: test7: '{{.*}}' -- // CHECK-256: test8: 'bb000ddd92a0a2a346f0b531f278af06e370f86932ccafccc892d68d350f80f8' -- // CHECK-256: test9: 'bb000ddd92a0a2a346f0b531f278af06e370f86932ccafccc892d68d350f80f8' -- -- // CHECK-384: SHA384 -- // CHECK-384: test1: 'f450c023b168ebd56ff916ca9b1f1f0010b8c592d28205cc91fa3056f629eed108e8bac864f01ca37a3edee596739e12' -- // CHECK-384: test2: 'f450c023b168ebd56ff916ca9b1f1f0010b8c592d28205cc91fa3056f629eed108e8bac864f01ca37a3edee596739e12' -- // CHECK-384: test3: 'f450c023b168ebd56ff916ca9b1f1f0010b8c592d28205cc91fa3056f629eed108e8bac864f01ca37a3edee596739e12' -- // CHECK-384: test4: '{{.*}}' -- // CHECK-384: test5: '{{.*}}' -- // CHECK-384: test6: '{{.*}}' -- // CHECK-384: test7: '{{.*}}' -- // CHECK-384: test8: 'f450c023b168ebd56ff916ca9b1f1f0010b8c592d28205cc91fa3056f629eed108e8bac864f01ca37a3edee596739e12' -- // CHECK-384: test9: 'f450c023b168ebd56ff916ca9b1f1f0010b8c592d28205cc91fa3056f629eed108e8bac864f01ca37a3edee596739e12' -- -- // CHECK-512: SHA512 -- // CHECK-512: test1: '0e3f68731c0e2a6a4eab5d713c9a80dc78086b5fa7d2b5ab127277958e68d1b1dee1882b083b0106cd4319de42c0c8f452871364f5baa8a6379690612c6b844e' -- // CHECK-512: test2: '0e3f68731c0e2a6a4eab5d713c9a80dc78086b5fa7d2b5ab127277958e68d1b1dee1882b083b0106cd4319de42c0c8f452871364f5baa8a6379690612c6b844e' -- // CHECK-512: test3: '0e3f68731c0e2a6a4eab5d713c9a80dc78086b5fa7d2b5ab127277958e68d1b1dee1882b083b0106cd4319de42c0c8f452871364f5baa8a6379690612c6b844e' -- // CHECK-512: test4: '{{.*}}' -- // CHECK-512: test5: '{{.*}}' -- // CHECK-512: test6: '{{.*}}' -- // CHECK-512: test7: '{{.*}}' -- // CHECK-512: test8: '0e3f68731c0e2a6a4eab5d713c9a80dc78086b5fa7d2b5ab127277958e68d1b1dee1882b083b0106cd4319de42c0c8f452871364f5baa8a6379690612c6b844e' -- // CHECK-512: test9: '0e3f68731c0e2a6a4eab5d713c9a80dc78086b5fa7d2b5ab127277958e68d1b1dee1882b083b0106cd4319de42c0c8f452871364f5baa8a6379690612c6b844e' -- -- return 0; --} --- -2.35.1 - diff --git a/runtime-optenv32/llvm+32/autobuild/patches/1011-rust-Check-whether-PROC_ASLR_STATUS-is-defined.patch.deferred b/runtime-optenv32/llvm+32/autobuild/patches/1011-rust-Check-whether-PROC_ASLR_STATUS-is-defined.patch.deferred deleted file mode 100644 index db049dafd97..00000000000 --- a/runtime-optenv32/llvm+32/autobuild/patches/1011-rust-Check-whether-PROC_ASLR_STATUS-is-defined.patch.deferred +++ /dev/null @@ -1,26 +0,0 @@ -From 30088340dfa02f7bb3855929b00372a6db16cb35 Mon Sep 17 00:00:00 2001 -From: Nikita Popov -Date: Sun, 13 Feb 2022 09:34:03 +0100 -Subject: [PATCH 1011/1013] [rust] Check whether PROC_ASLR_STATUS is defined - -For compatibility withe FreeBSD 11. ---- - compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/projects/compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp b/projects/compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp -index 2e4d57d87f58..4d9d5bb92264 100644 ---- a/projects/compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp -+++ b/projects/compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp -@@ -2185,7 +2185,7 @@ void CheckASLR() { - CHECK_NE(personality(old_personality | ADDR_NO_RANDOMIZE), -1); - ReExec(); - } --#elif SANITIZER_FREEBSD -+#elif SANITIZER_FREEBSD && defined(PROC_ASLR_STATUS) - int aslr_status; - if (UNLIKELY(procctl(P_PID, 0, PROC_ASLR_STATUS, &aslr_status) == -1)) { - // We're making things less 'dramatic' here since --- -2.35.1 - diff --git a/runtime-optenv32/llvm+32/autobuild/patches/1012-rust-Comment-out-build-ID-handling-on-FreeBSD.patch.deferred b/runtime-optenv32/llvm+32/autobuild/patches/1012-rust-Comment-out-build-ID-handling-on-FreeBSD.patch.deferred deleted file mode 100644 index fa3cf951ad5..00000000000 --- a/runtime-optenv32/llvm+32/autobuild/patches/1012-rust-Comment-out-build-ID-handling-on-FreeBSD.patch.deferred +++ /dev/null @@ -1,26 +0,0 @@ -From 601ad2f162e8afdc598cdef11b12b64402a75fa3 Mon Sep 17 00:00:00 2001 -From: Nikita Popov -Date: Sun, 13 Feb 2022 09:49:45 +0100 -Subject: [PATCH 1012/1013] [rust] Comment out build ID handling on FreeBSD - -This does not build with FreeBSD 11 at least. ---- - compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/projects/compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp b/projects/compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp -index 4ccd2e828108..fecd601f26f4 100644 ---- a/projects/compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp -+++ b/projects/compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp -@@ -613,7 +613,7 @@ static int AddModuleSegments(const char *module_name, dl_phdr_info *info, - cur_module.addAddressRange(cur_beg, cur_end, executable, - writable); - } else if (phdr->p_type == PT_NOTE) { --# ifdef NT_GNU_BUILD_ID -+# if defined(NT_GNU_BUILD_ID) && !SANITIZER_FREEBSD - uptr off = 0; - while (off + sizeof(ElfW(Nhdr)) < phdr->p_memsz) { - auto *nhdr = reinterpret_cast(info->dlpi_addr + --- -2.35.1 - diff --git a/runtime-optenv32/llvm+32/autobuild/patches/1013-rust-Declare-madvise-on-illumos.patch.deferred b/runtime-optenv32/llvm+32/autobuild/patches/1013-rust-Declare-madvise-on-illumos.patch.deferred deleted file mode 100644 index b0751c095d7..00000000000 --- a/runtime-optenv32/llvm+32/autobuild/patches/1013-rust-Declare-madvise-on-illumos.patch.deferred +++ /dev/null @@ -1,32 +0,0 @@ -From 9168e236c548d1d0e9938ee6dd4cdbd308fdfd72 Mon Sep 17 00:00:00 2001 -From: Nikita Popov -Date: Sun, 13 Feb 2022 14:13:16 +0100 -Subject: [PATCH 1013/1013] [rust] Declare madvise() on illumos - -Illumos seems to have made a real mess here. Adopt the same -workaround as https://reviews.llvm.org/D84046 and -https://reviews.llvm.org/D86166. ---- - llvm/lib/Support/Unix/Path.inc | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git a/lib/Support/Unix/Path.inc b/lib/Support/Unix/Path.inc -index 85352b8d68ef..c58432bbb030 100644 ---- a/lib/Support/Unix/Path.inc -+++ b/lib/Support/Unix/Path.inc -@@ -118,6 +118,12 @@ typedef uint_t uint; - #define STATVFS_F_FLAG(vfs) (vfs).f_flags - #endif - -+#if defined(__sun__) -+// The madvise() declaration on Illumos cannot be made visible if _XOPEN_SOURCE -+// is defined. This declaration is also compatible with Solaris 11.4. -+extern "C" int madvise(void *, size_t, int); -+#endif -+ - using namespace llvm; - - namespace llvm { --- -2.35.1 - diff --git a/runtime-optenv32/llvm+32/autobuild/prepare b/runtime-optenv32/llvm+32/autobuild/prepare deleted file mode 100644 index 4571cb10086..00000000000 --- a/runtime-optenv32/llvm+32/autobuild/prepare +++ /dev/null @@ -1,55 +0,0 @@ -if [[ "${CROSS:-$ARCH}" = "amd64" || "${CROSS:-$ARCH}" = "arm64" ]]; then - # FIXME: LLVM now requires two copies of those source files for some unknown reasons - # symbolic links do not work here - abinfo "Installing sources for libcxx ..." - cp -ar "$SRCDIR"/../libcxx \ - "$SRCDIR"/projects/libcxx - - abinfo "Installing sources for libcxxabi ..." - cp -ar "$SRCDIR"/../libcxxabi \ - "$SRCDIR"/projects/libcxxabi - - abinfo "Installing sources for lldb ..." - cp -ar "$SRCDIR"/../lldb \ - "$SRCDIR"/tools/lldb -fi - -abinfo "Installing sources for clang ..." -mv -v "$SRCDIR"/../clang \ - "$SRCDIR"/tools/clang - -abinfo "Installing sources for lld ..." -mv -v "$SRCDIR"/../lld \ - "$SRCDIR"/tools/lld - -abinfo "Installing sources for libunwind ..." -mv -v "$SRCDIR"/../libunwind \ - "$SRCDIR"/tools/libunwind -ln -sv "$SRCDIR"/tools/libunwind "$SRCDIR"/../libunwind - -if [[ "${CROSS:-$ARCH}" != "armv4" && \ - "${CROSS:-$ARCH}" != "armv6hf" && \ - "${CROSS:-$ARCH}" != "armv7hf" && \ - "${CROSS:-$ARCH}" != "i486" && \ - "${CROSS:-$ARCH}" != "loongson2f" && \ - "${CROSS:-$ARCH}" != "powerpc" && \ - "${CROSS:-$ARCH}" != "ppc64" ]]; then - abinfo "Installing sources for clang-tools-extra ..." - mv -v "$SRCDIR"/../clang-tools-extra \ - "$SRCDIR"/tools/clang/tools/extra - - abinfo "Installing sources for compiler-rt ..." - mv -v "$SRCDIR"/../compiler-rt \ - "$SRCDIR"/projects/compiler-rt - - abinfo "Installing sources for polly ..." - mv -v "$SRCDIR"/../polly \ - "$SRCDIR"/tools/polly - ln -sv "$SRCDIR"/tools/polly "$SRCDIR"/../polly -fi - -abinfo "Applying deferred patches ..." -for i in "$SRCDIR"/autobuild/patches/*.patch.deferred; do - abinfo "Applying $i ..." - patch -Np1 -i "$i" -done diff --git a/runtime-optenv32/llvm+32/spec b/runtime-optenv32/llvm+32/spec index a23cd5815f0..fdd55641e47 100644 --- a/runtime-optenv32/llvm+32/spec +++ b/runtime-optenv32/llvm+32/spec @@ -1,6 +1,5 @@ -VER=14.0.6 -REL=1 +VER=18.1.8 SRCS="https://github.com/llvm/llvm-project/releases/download/llvmorg-$VER/llvm-project-$VER.src.tar.xz" SUBDIR="llvm-project-$VER.src/llvm" -CHKSUMS="sha256::8b3cfd7bc695bd6cea0f37f53f0981f34f87496e79e2529874fd03a2f9dd3a8a" +CHKSUMS="sha256::0b58557a6d32ceee97c8d533a59b9212d87e0fc4d2833924eb6c611247db2f2a" CHKUPDATE="anitya::id=1830" From c9d200390e787d985e913e761917d197bc01ebde Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Mon, 30 Dec 2024 14:42:11 +0800 Subject: [PATCH 153/722] rustc+32: new, 1.83.0 Runtime-only with wrappers for 32-bit compilation. Co-authored-by: liushuyu --- runtime-optenv32/rustc+32/autobuild/build | 46 +++++++++++++++++++ .../rustc+32/autobuild/config.toml | 32 +++++++++++++ runtime-optenv32/rustc+32/autobuild/defines | 11 +++++ runtime-optenv32/rustc+32/autobuild/prepare | 18 ++++++++ runtime-optenv32/rustc+32/spec | 4 ++ 5 files changed, 111 insertions(+) create mode 100644 runtime-optenv32/rustc+32/autobuild/build create mode 100644 runtime-optenv32/rustc+32/autobuild/config.toml create mode 100644 runtime-optenv32/rustc+32/autobuild/defines create mode 100644 runtime-optenv32/rustc+32/autobuild/prepare create mode 100644 runtime-optenv32/rustc+32/spec diff --git a/runtime-optenv32/rustc+32/autobuild/build b/runtime-optenv32/rustc+32/autobuild/build new file mode 100644 index 00000000000..70561d9ae0d --- /dev/null +++ b/runtime-optenv32/rustc+32/autobuild/build @@ -0,0 +1,46 @@ +abinfo "Enabling Rust backtrace ..." +export RUST_BACKTRACE=1 + +abinfo "Setting up cross compiler prefix ..." +export CROSS_COMPILE="/opt/32/bin/i686-aosc-linux-gnu-" + +# Note: +# +# We need to reset the optenv32 PATH, because Rust needs to link both +# 64-bit and 32-bit code during build-time (our GCC/binutils can't handle +# this at the moment). +# +# Overriding the defaults to clang/LLD in the config.toml file. +export PATH="/usr/bin:$PATH" + +abinfo "Building 32-bit Rust libraries ..." +# Note: We also need to unset a lot of flags from RUSTFLAGS to avoid +# linker errors. +# +# Note: Only installing runtime libraries, 32-bit toolchain will be +# provided as wrappers. +RUSTFLAGS='-Ctarget-cpu=x86-64' \ +python3 \ + "$SRCDIR"/x.py build \ + --stage=0 library + +abinfo "Installing 32-bit Rust libraries ..." +mkdir -pv "$PKGDIR"/usr/lib/rustlib/ +cp -arv build/host/stage0-sysroot/lib*/rustlib/i686-unknown-linux-gnu \ + "$PKGDIR"/usr/lib/rustlib/ + +abinfo "Installing 32-bit Rust toolchain wrappers ..." +mkdir -pv "$PKGDIR"/opt/32/bin +cat << 'EOF' > "$PKGDIR"/opt/32/bin/cargo +#!/bin/bash -e +if [[ "$1" = "build" ]]; then + shift; + exec -a /usr/bin/cargo /usr/bin/cargo build --target=i686-unknown-linux-gnu "$@" +elif [[ "$1" = "install" ]]; then + shift; + exec -a /usr/bin/cargo /usr/bin/cargo install --target=i686-unknown-linux-gnu "$@" +else + exec -a /usr/bin/cargo /usr/bin/cargo "$@" +fi +EOF +chmod -v a+x "$PKGDIR"/opt/32/bin/cargo diff --git a/runtime-optenv32/rustc+32/autobuild/config.toml b/runtime-optenv32/rustc+32/autobuild/config.toml new file mode 100644 index 00000000000..2bd7b065166 --- /dev/null +++ b/runtime-optenv32/rustc+32/autobuild/config.toml @@ -0,0 +1,32 @@ +[llvm] +download-ci-llvm = false +link-shared = true +ninja = true + +[build] +python = "/usr/bin/python3" +extended = true +verbose = 2 +sanitizers = true +profiler = true +vendor = true +print-step-timings = true +rustc = "/usr/bin/rustc" +cargo = "/usr/bin/cargo" +target = [ "i686-unknown-linux-gnu" ] + +[rust] +# Working around limited VM space on 32-bit x86. +codegen-units = 1 +codegen-units-std = 1 +debuginfo-level = 0 +channel = "stable" +rpath = false + +[target.i686-unknown-linux-gnu] +cc = "/opt/32/bin/i686-aosc-linux-gnu-clang" +cxx = "/opt/32/bin/i686-aosc-linux-gnu-clang++" +ar = "/opt/32/bin/i686-aosc-linux-gnu-ar" +linker = "/opt/32/bin/i686-aosc-linux-gnu-clang" +# Use the host system LLVM +llvm-config = "/usr/bin/llvm-config" diff --git a/runtime-optenv32/rustc+32/autobuild/defines b/runtime-optenv32/rustc+32/autobuild/defines new file mode 100644 index 00000000000..67281b4db47 --- /dev/null +++ b/runtime-optenv32/rustc+32/autobuild/defines @@ -0,0 +1,11 @@ +PKGNAME=rustc+32 +PKGSEC=devel +PKGDEP="gcc+32 llvm+32 rustc" +BUILDDEP="devel-base+32" +PKGDES="General purpose, multi-paradigm programming language (compiler and runtime, 32-bit x86 runtime)" + +NOLTO=1 +PKGPROV="rust+32" +ABSPLITDBG=0 + +ABHOST=optenv32 diff --git a/runtime-optenv32/rustc+32/autobuild/prepare b/runtime-optenv32/rustc+32/autobuild/prepare new file mode 100644 index 00000000000..b4e50d4063a --- /dev/null +++ b/runtime-optenv32/rustc+32/autobuild/prepare @@ -0,0 +1,18 @@ +abinfo "Appending -fPIC ..." +export CFLAGS="${CFLAGS} -fPIC" +export CXXFLAGS="${CXXFLAGS} -fPIC" +export LDFLAGS="${LDFLAGS} -fPIC" +# Note: Append flags only for Clang-enabled architectures. +if bool $USECLANG; then + abinfo "Appending target flags ..." + export CFLAGS="${CFLAGS} --target=${HOST}" + export CXXFLAGS="${CXXFLAGS} --target=${HOST}" + export LDFLAGS="${LDFLAGS} --target=${HOST}" +fi + +abinfo "Disabling system libgit2 to minimise dependencies ..." +export LIBGIT2_NO_PKG_CONFIG=1 + +abinfo "Deploying config.toml ..." +cp -v "$SRCDIR"/autobuild/config.toml \ + "$SRCDIR"/config.toml diff --git a/runtime-optenv32/rustc+32/spec b/runtime-optenv32/rustc+32/spec new file mode 100644 index 00000000000..4f2cd6f1c66 --- /dev/null +++ b/runtime-optenv32/rustc+32/spec @@ -0,0 +1,4 @@ +VER=1.83.0 +SRCS="tbl::https://static.rust-lang.org/dist/rustc-${VER}-src.tar.xz" +CHKSUMS="sha256::7b11d4242dab0921a7d54758ad3fe805153c979c144625fecde11735760f97df" +CHKUPDATE="anitya::id=7635" From e4182d5dd77138b28d88474183e222dd3d8c7e23 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Mon, 30 Dec 2024 16:34:17 +0800 Subject: [PATCH 154/722] spirv-tools+32: new, 1.3.283.0 --- runtime-optenv32/spirv-tools+32/autobuild/defines | 15 +++++++++++++++ runtime-optenv32/spirv-tools+32/spec | 4 ++++ 2 files changed, 19 insertions(+) create mode 100644 runtime-optenv32/spirv-tools+32/autobuild/defines create mode 100644 runtime-optenv32/spirv-tools+32/spec diff --git a/runtime-optenv32/spirv-tools+32/autobuild/defines b/runtime-optenv32/spirv-tools+32/autobuild/defines new file mode 100644 index 00000000000..8ba5630ebc6 --- /dev/null +++ b/runtime-optenv32/spirv-tools+32/autobuild/defines @@ -0,0 +1,15 @@ +PKGNAME=spirv-tools+32 +PKGSEC=libs +PKGDEP="gcc+32 spirv-headers" +BUILDDEP="python-3" +PKGDES="API and commands for processing SPIR-V modules (32-bit x86 runtime)" + +CMAKE_AFTER="-DSPIRV-Headers_SOURCE_DIR=/opt/32 \ + -DSPIRV_TOOLS_BUILD_STATIC=ON \ + -DBUILD_SHARED_LIBS=ON \ + -DPYTHON_EXECUTABLE=/usr/bin/python${ABPY3VER}" + +NOLTO=1 +ABHOST=optenv32 + +PKGEPOCH=1 diff --git a/runtime-optenv32/spirv-tools+32/spec b/runtime-optenv32/spirv-tools+32/spec new file mode 100644 index 00000000000..07ae84000b3 --- /dev/null +++ b/runtime-optenv32/spirv-tools+32/spec @@ -0,0 +1,4 @@ +VER=1.3.283.0 +SRCS="git::commit=tags/vulkan-sdk-$VER::https://github.com/KhronosGroup/SPIRV-Tools" +CHKSUMS="SKIP" +CHKUPDATE="anitya::id=14894" From b981780ffc774e25dc24cd22d7d0d4d9368d1c46 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 31 Dec 2024 23:13:40 +0800 Subject: [PATCH 155/722] llvm+32: fix up 32-bit clang usage; disable unused libunwind Co-authored-by: liushuyu --- runtime-optenv32/llvm+32/autobuild/beyond | 9 ++++++++- runtime-optenv32/llvm+32/autobuild/defines | 6 ++++-- .../llvm+32/autobuild/fake-toolchain.cmake | 3 +++ .../patches/1000-i686-gcc-compatibility.patch | 2 +- ...-i686-runtimes-force-remove-clang-dependency.patch | 11 ----------- 5 files changed, 16 insertions(+), 15 deletions(-) delete mode 100644 runtime-optenv32/llvm+32/autobuild/patches/1001-i686-runtimes-force-remove-clang-dependency.patch diff --git a/runtime-optenv32/llvm+32/autobuild/beyond b/runtime-optenv32/llvm+32/autobuild/beyond index def94d89d1b..fe0d7115d67 100644 --- a/runtime-optenv32/llvm+32/autobuild/beyond +++ b/runtime-optenv32/llvm+32/autobuild/beyond @@ -1,8 +1,15 @@ +abinfo "Removing unnecessary LLVM tools ..." +rm -v "$PKGDIR"/opt/32/bin/clang* + abinfo "Creating symlinks for clang/clang++ ..." for i in clang clang++; do cat > "$PKGDIR"/opt/32/bin/${i} << EOF #!/bin/bash -exec -a /opt/32/bin/i686-aosc-linux-gnu-$i /usr/bin/$i -Xlinker --sysroot='' --sysroot=/opt/32 "\$@" +LINKER_FLAGS='-Wl,--sysroot=' +if [[ " \$* " =~ ' -c ' ]] || [ \$# -lt 1 ]; then + LINKER_FLAGS= +fi +exec -a /opt/32/bin/i686-aosc-linux-gnu-$i /usr/bin/$i "\${LINKER_FLAGS}" --sysroot=/opt/32 "\$@" EOF ln -sv ${i} "$PKGDIR"/opt/32/bin/i686-aosc-linux-gnu-${i} diff --git a/runtime-optenv32/llvm+32/autobuild/defines b/runtime-optenv32/llvm+32/autobuild/defines index 53a26b0e8b0..5c498a06b19 100644 --- a/runtime-optenv32/llvm+32/autobuild/defines +++ b/runtime-optenv32/llvm+32/autobuild/defines @@ -27,8 +27,8 @@ CMAKE_AFTER=( '-DDL_LIBRARY_PATH=/opt/32/lib/libdl.so' '-DLLVM_BINUTILS_INCDIR=/opt/32/include' '-Dzstd_LIBRARY=/opt/32/lib/libzstd.so' - '-DLLVM_ENABLE_PROJECTS=llvm' - '-DLLVM_ENABLE_RUNTIMES=compiler-rt;libunwind' + '-DLLVM_ENABLE_PROJECTS=llvm;clang' + '-DLLVM_ENABLE_RUNTIMES=compiler-rt' '-DCOMPILER_RT_DEFAULT_TARGET_ONLY=ON' '-DCOMPILER_RT_SANITIZERS_TO_BUILD="asan;ubsan_minimal;asan_abi;safestack;cfi"' '-DCOMPILER_RT_BUILD_MEMPROF=OFF' @@ -36,4 +36,6 @@ CMAKE_AFTER=( '-DCOMPILER_RT_BUILD_XRAY=OFF' '-DCMAKE_TOOLCHAIN_FILE=../autobuild/fake-toolchain.cmake' '-DCMAKE_BUILD_TYPE=Release' + '-DDEFAULT_SYSROOT=/opt/32' + '-DLLVM_DEFAULT_TARGET_TRIPLE=i686-aosc-linux-gnu' ) diff --git a/runtime-optenv32/llvm+32/autobuild/fake-toolchain.cmake b/runtime-optenv32/llvm+32/autobuild/fake-toolchain.cmake index 529fa4a1679..088ebbfb544 100644 --- a/runtime-optenv32/llvm+32/autobuild/fake-toolchain.cmake +++ b/runtime-optenv32/llvm+32/autobuild/fake-toolchain.cmake @@ -1,4 +1,7 @@ set(CMAKE_C_COMPILER_TARGET "i686-aosc-linux-gnu") set(CMAKE_CXX_COMPILER_TARGET "i686-aosc-linux-gnu") set(LLVM_DEFAULT_TARGET_TRIPLE "i686-aosc-linux-gnu") +set(LLVM_HOST_TRIPLE "i686-aosc-linux-gnu") +set(CLANG_DEFAULT_LINKER "/opt/32/bin/i686-aosc-linux-gnu-ld") +set(RUNTIMES_CMAKE_ARGS "-DCMAKE_EXE_LINKER_FLAGS_INIT=-Wl,--sysroot=;-DCMAKE_SHARED_LINKER_FLAGS_INIT=-Wl,--sysroot=") execute_process(COMMAND clang --print-resource-dir OUTPUT_VARIABLE CLANG_RESOURCE_DIR OUTPUT_STRIP_TRAILING_WHITESPACE) diff --git a/runtime-optenv32/llvm+32/autobuild/patches/1000-i686-gcc-compatibility.patch b/runtime-optenv32/llvm+32/autobuild/patches/1000-i686-gcc-compatibility.patch index ad56e5abd63..09bbb722375 100644 --- a/runtime-optenv32/llvm+32/autobuild/patches/1000-i686-gcc-compatibility.patch +++ b/runtime-optenv32/llvm+32/autobuild/patches/1000-i686-gcc-compatibility.patch @@ -5,7 +5,7 @@ #endif // defined(CRT_HAS_IEEE_TF) #else -typedef long double fp_t; -+typedef _Float128 fp_t; ++typedef __float128 fp_t; #endif // defined(CRT_HAS_F128) && defined(CRT_HAS_128BIT) #else #error SINGLE_PRECISION, DOUBLE_PRECISION or QUAD_PRECISION must be defined. diff --git a/runtime-optenv32/llvm+32/autobuild/patches/1001-i686-runtimes-force-remove-clang-dependency.patch b/runtime-optenv32/llvm+32/autobuild/patches/1001-i686-runtimes-force-remove-clang-dependency.patch deleted file mode 100644 index 4dff93c7456..00000000000 --- a/runtime-optenv32/llvm+32/autobuild/patches/1001-i686-runtimes-force-remove-clang-dependency.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/llvm/runtimes/CMakeLists.txt 2024-12-28 09:57:24.199761407 +0800 -+++ b/llvm/runtimes/CMakeLists.txt 2024-12-28 09:55:37.513501617 +0800 -@@ -2,7 +2,7 @@ - # Clang, except there already is clang/runtime directory which contains - # similar although simpler functionality. We should figure out how to merge - # the two files. -- -+add_custom_target("clang-resource-headers" ALL) - set(COMMON_CMAKE_ARGS "-DHAVE_LLVM_LIT=ON;-DCLANG_RESOURCE_DIR=${CLANG_RESOURCE_DIR}") - foreach(proj ${LLVM_ENABLE_RUNTIMES}) - set(proj_dir "${CMAKE_CURRENT_SOURCE_DIR}/../../${proj}") From 1ece710ad0d8e1cd15279c129f4ba6368cc70fd0 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 31 Dec 2024 23:13:58 +0800 Subject: [PATCH 156/722] rustc+32: fix 32-bit wrapper Co-authored-by: liushuyu --- runtime-optenv32/rustc+32/autobuild/build | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/runtime-optenv32/rustc+32/autobuild/build b/runtime-optenv32/rustc+32/autobuild/build index 70561d9ae0d..a399ddfc9e7 100644 --- a/runtime-optenv32/rustc+32/autobuild/build +++ b/runtime-optenv32/rustc+32/autobuild/build @@ -33,6 +33,7 @@ abinfo "Installing 32-bit Rust toolchain wrappers ..." mkdir -pv "$PKGDIR"/opt/32/bin cat << 'EOF' > "$PKGDIR"/opt/32/bin/cargo #!/bin/bash -e +export RUSTC=/usr/bin/rustc if [[ "$1" = "build" ]]; then shift; exec -a /usr/bin/cargo /usr/bin/cargo build --target=i686-unknown-linux-gnu "$@" @@ -44,3 +45,10 @@ else fi EOF chmod -v a+x "$PKGDIR"/opt/32/bin/cargo + +cat << 'EOF' > "$PKGDIR"/opt/32/bin/rustc +#!/bin/bash -e +exec -a /usr/bin/rustc /usr/bin/rustc --target=i686-unknown-linux-gnu "$@" +EOF + +chmod -v a+x "$PKGDIR"/opt/32/bin/rustc From 23b8182721729a007ebafd7250e5c1c26331fd4f Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 31 Dec 2024 23:17:02 +0800 Subject: [PATCH 157/722] spirv-tools+32: keep static libraries spirv-llvm-translator+32 links against static libraries. --- runtime-optenv32/spirv-tools+32/autobuild/defines | 1 + 1 file changed, 1 insertion(+) diff --git a/runtime-optenv32/spirv-tools+32/autobuild/defines b/runtime-optenv32/spirv-tools+32/autobuild/defines index 8ba5630ebc6..72bffaaf392 100644 --- a/runtime-optenv32/spirv-tools+32/autobuild/defines +++ b/runtime-optenv32/spirv-tools+32/autobuild/defines @@ -9,6 +9,7 @@ CMAKE_AFTER="-DSPIRV-Headers_SOURCE_DIR=/opt/32 \ -DBUILD_SHARED_LIBS=ON \ -DPYTHON_EXECUTABLE=/usr/bin/python${ABPY3VER}" +NOSTATIC=0 NOLTO=1 ABHOST=optenv32 From 966b7123faecbe9c680af677392dfb2de4d4b532 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 31 Dec 2024 23:17:28 +0800 Subject: [PATCH 158/722] spirv-llvm-translator+32: new, 18.1.0 --- .../spirv-llvm-translator+32/autobuild/defines | 14 ++++++++++++++ runtime-optenv32/spirv-llvm-translator+32/spec | 4 ++++ 2 files changed, 18 insertions(+) create mode 100644 runtime-optenv32/spirv-llvm-translator+32/autobuild/defines create mode 100644 runtime-optenv32/spirv-llvm-translator+32/spec diff --git a/runtime-optenv32/spirv-llvm-translator+32/autobuild/defines b/runtime-optenv32/spirv-llvm-translator+32/autobuild/defines new file mode 100644 index 00000000000..7fcf6826234 --- /dev/null +++ b/runtime-optenv32/spirv-llvm-translator+32/autobuild/defines @@ -0,0 +1,14 @@ +PKGNAME=spirv-llvm-translator+32 +PKGSEC=devel +PKGDEP="llvm+32" +BUILDDEP="spirv-tools+32 spirv-headers" +PKGDES="A tool and a library for bi-directional translation between SPIR-V and LLVM IR (32-bit x86 runtime)" + +CMAKE_AFTER=( + '-DBUILD_SHARED_LIBS=ON' + '-DLLVM_BUILD_TOOLS=ON' + '-DLLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR=/opt/32/include/spirv/unified1' +) + +NOLTO=1 +ABHOST=optenv32 diff --git a/runtime-optenv32/spirv-llvm-translator+32/spec b/runtime-optenv32/spirv-llvm-translator+32/spec new file mode 100644 index 00000000000..4589c11bdf3 --- /dev/null +++ b/runtime-optenv32/spirv-llvm-translator+32/spec @@ -0,0 +1,4 @@ +VER=18.1.0 +SRCS="git::commit=tags/v$VER::https://github.com/KhronosGroup/SPIRV-LLVM-Translator" +CHKSUMS="SKIP" +CHKUPDATE="anitya::id=227273" From a1e7e7f1655cdebc44e1b6cc83ac44fe30fcecef Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 31 Dec 2024 23:18:55 +0800 Subject: [PATCH 159/722] libunwind+32: new, 1.6.2 --- runtime-optenv32/libunwind+32/autobuild/defines | 8 ++++++++ runtime-optenv32/libunwind+32/spec | 4 ++++ 2 files changed, 12 insertions(+) create mode 100644 runtime-optenv32/libunwind+32/autobuild/defines create mode 100644 runtime-optenv32/libunwind+32/spec diff --git a/runtime-optenv32/libunwind+32/autobuild/defines b/runtime-optenv32/libunwind+32/autobuild/defines new file mode 100644 index 00000000000..d013d225445 --- /dev/null +++ b/runtime-optenv32/libunwind+32/autobuild/defines @@ -0,0 +1,8 @@ +PKGNAME=libunwind+32 +PKGSEC=libs +PKGDEP="glibc+32 xz+32" +BUILDDEP="devel-base+32" +PKGDES="Portable and efficient C programming interface (API) to determine the call-chain of a program (32-bit x86 runtime)" + +NOLTO=1 +ABHOST=optenv32 diff --git a/runtime-optenv32/libunwind+32/spec b/runtime-optenv32/libunwind+32/spec new file mode 100644 index 00000000000..56bf8166065 --- /dev/null +++ b/runtime-optenv32/libunwind+32/spec @@ -0,0 +1,4 @@ +VER=1.6.2 +SRCS="https://download.savannah.gnu.org/releases/libunwind/libunwind-$VER.tar.gz" +CHKSUMS="sha256::4a6aec666991fb45d0889c44aede8ad6eb108071c3554fcdff671f9c94794976" +CHKUPDATE="anitya::id=1748" From 030ec3af57941107ba9d7b595dfcd300751401de Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 31 Dec 2024 23:19:47 +0800 Subject: [PATCH 160/722] mesa+32: update to 24.3.2+dxheaders1.614.1 - Use optenv32 template. - Sync patches from mainline. - Improve PKGDES optenv32 => 32-bit x86 runtime. - Enable Wayland and Vulkan support. --- runtime-optenv32/mesa+32/autobuild/beyond | 3 ++ runtime-optenv32/mesa+32/autobuild/build | 43 ------------------- runtime-optenv32/mesa+32/autobuild/defines | 42 +++++++++++++++--- ...disable-buggy-VC-1-hardware-decoding.patch | 37 ++++++++++++++++ ...bufmgr.c-set-PAGE_SIZE-a.patch.loongarch64 | 29 +++++++++++++ .../patches/1000-i686-rust-bits-compat.patch | 10 +++++ runtime-optenv32/mesa+32/spec | 13 +++--- 7 files changed, 124 insertions(+), 53 deletions(-) create mode 100644 runtime-optenv32/mesa+32/autobuild/beyond delete mode 100644 runtime-optenv32/mesa+32/autobuild/build create mode 100644 runtime-optenv32/mesa+32/autobuild/patches/0001-AOSCOS-r600-disable-buggy-VC-1-hardware-decoding.patch create mode 100644 runtime-optenv32/mesa+32/autobuild/patches/0002-AOSCOS-LOONGARCH64-fix-iris_bufmgr.c-set-PAGE_SIZE-a.patch.loongarch64 create mode 100644 runtime-optenv32/mesa+32/autobuild/patches/1000-i686-rust-bits-compat.patch diff --git a/runtime-optenv32/mesa+32/autobuild/beyond b/runtime-optenv32/mesa+32/autobuild/beyond new file mode 100644 index 00000000000..85e5a20e84c --- /dev/null +++ b/runtime-optenv32/mesa+32/autobuild/beyond @@ -0,0 +1,3 @@ +abinfo "Creating a compatibility symlink for libGLX_indirect.so.0 ..." +ln -sv libGLX_mesa.so.0 \ + "$PKGDIR"/opt/32/lib/libGLX_indirect.so.0 diff --git a/runtime-optenv32/mesa+32/autobuild/build b/runtime-optenv32/mesa+32/autobuild/build deleted file mode 100644 index 4ba98d9bd8e..00000000000 --- a/runtime-optenv32/mesa+32/autobuild/build +++ /dev/null @@ -1,43 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -export CC="i686-pc-linux-gnu-gcc -m32" -export CXX="i686-pc-linux-gnu-g++ -m32" -export CCAS=i686-pc-linux-gnu-as -export LLVM_CONFIG=/opt/32/bin/llvm-config - -mkdir "$SRCDIR"/build -cd "$SRCDIR"/build -meson "$SRCDIR" --prefix=/opt/32 \ - -Ddri-drivers-path=/opt/32/lib/xorg/modules/dri \ - -Db_ndebug=true \ - -Dplatforms=x11 \ - -Dvulkan-layers=device-select,overlay \ - -Ddri3=enabled \ - -Degl=enabled \ - -Dgallium-extra-hud=true \ - -Dgallium-nine=true \ - -Dgallium-va=enabled \ - -Dgallium-vdpau=enabled \ - -Dgallium-xa=enabled \ - -Dgallium-xvmc=disabled \ - -Dgbm=enabled \ - -Dgles1=enabled \ - -Dgles2=enabled \ - -Dglvnd=true \ - -Dglx=dri \ - -Dllvm=enabled \ - -Dlmsensors=disabled \ - -Dosmesa=true \ - -Dshared-glapi=enabled \ - -Dvalgrind=disabled \ - -Db_lto=false \ - -Dgallium-drivers=r300,r600,radeonsi,nouveau,virgl,swrast,svga,iris,d3d12,i915,crocus \ - -Dvulkan-drivers=amd,intel -ninja -DESTDIR="$PKGDIR" ninja install - -cd "$SRCDIR" - -rm -rf "$PKGDIR"/opt/32/etc - -ln -sv /opt/32/lib/libGLX_mesa.so.0 "$PKGDIR"/opt/32/lib/libGLX_indirect.so.0 diff --git a/runtime-optenv32/mesa+32/autobuild/defines b/runtime-optenv32/mesa+32/autobuild/defines index 9b690c58af0..99b06b46fe3 100644 --- a/runtime-optenv32/mesa+32/autobuild/defines +++ b/runtime-optenv32/mesa+32/autobuild/defines @@ -1,12 +1,44 @@ PKGNAME=mesa+32 -PKGDES="MesaLib - a OpenGL implementation (optenv32)" -PKGDEP="llvm+32 x11-lib+32 libdrm+32 expat+32 eudev+32 elfutils+32 \ - libvdpau+32 libglvnd+32" -BUILDDEP="32subsystem mako glslang" PKGSEC=x11 +PKGDEP="llvm+32 x11-lib+32 libdrm+32 expat+32 eudev+32 elfutils+32 \ + libvdpau+32 libglvnd+32 libva+32 spirv-llvm-translator+32 \ + libunwind+32 wayland+32" +BUILDDEP="devel-base+32 glslang mako pyyaml rust-bindgen rustc+32 \ + spirv-tools+32 cbindgen" +PKGDES="Runtime library for OpenGL, Vulkan, OpenCL, and more (32-bit x86 runtime)" PKGBREAK="wine<=1.7.54" AB_FLAGS_O3=1 + +# FIXME: LTO causes graphical artifacts on AMD GPUs. NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 + +USECLANG=1 + +MESON_AFTER=( + '-Ddri-drivers-path=/opt/32/lib/xorg/modules/dri' + '-Db_ndebug=true' + '-Dplatforms=x11,wayland' + '-Dvulkan-layers=device-select,overlay' + '-Degl=enabled' + '-Dgallium-extra-hud=true' + '-Dgallium-nine=true' + '-Dgallium-va=enabled' + '-Dgallium-vdpau=enabled' + '-Dgallium-xa=enabled' + '-Dgbm=enabled' + '-Dgles1=enabled' + '-Dgles2=enabled' + '-Dglvnd=enabled' + '-Dglx=dri' + '-Dllvm=enabled' + '-Dlmsensors=disabled' + '-Dosmesa=true' + '-Dshared-glapi=enabled' + '-Dvalgrind=disabled' + '-Db_lto=false' + '-Dgallium-drivers=r300,r600,radeonsi,nouveau,virgl,swrast,svga,iris,d3d12,i915,crocus' + '-Dvulkan-drivers=amd,intel' +) diff --git a/runtime-optenv32/mesa+32/autobuild/patches/0001-AOSCOS-r600-disable-buggy-VC-1-hardware-decoding.patch b/runtime-optenv32/mesa+32/autobuild/patches/0001-AOSCOS-r600-disable-buggy-VC-1-hardware-decoding.patch new file mode 100644 index 00000000000..5ea27d4a22f --- /dev/null +++ b/runtime-optenv32/mesa+32/autobuild/patches/0001-AOSCOS-r600-disable-buggy-VC-1-hardware-decoding.patch @@ -0,0 +1,37 @@ +From f6112e3a942c5f03eb0ce9268644a410f04f2859 Mon Sep 17 00:00:00 2001 +From: "Lain \"Fearyncess\" Yang" +Date: Fri, 30 Aug 2024 17:27:37 +0800 +Subject: [PATCH 1/2] AOSCOS: r600: disable buggy VC-1 hardware decoding + +Per commit 6cd30f5d730c ("radeon/uvd: disable VC-1 simple/main on UVD +2.x"), VC-1 simple/main decoding was broken on at least UVD-1. According +to our testing, VC-1 hardware decoding via VA-API was broken for later UVD +versions as well (on a TeraScale 2-based card). + +Disable VC-1 hardware decoding for all r600-driven cards. + +Link: https://cgit.freedesktop.org/mesa/mesa/commit/?id=6cd30f5d730c3c23251a8e72e17fe65810460764 +Link: https://bugs.freedesktop.org/show_bug.cgi?id=66452 + +Signed-off-by: Lain "Fearyncess" Yang +Signed-off-by: Mingcong Bai +--- + src/gallium/drivers/r600/radeon_video.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/gallium/drivers/r600/radeon_video.c b/src/gallium/drivers/r600/radeon_video.c +index 670e0aafb9e..6e5abd8d1a1 100644 +--- a/src/gallium/drivers/r600/radeon_video.c ++++ b/src/gallium/drivers/r600/radeon_video.c +@@ -237,7 +237,7 @@ int rvid_get_video_param(struct pipe_screen *screen, + case PIPE_VIDEO_FORMAT_MPEG4_AVC: + return true; + case PIPE_VIDEO_FORMAT_VC1: +- return true; ++ return false; + case PIPE_VIDEO_FORMAT_HEVC: + return false; + case PIPE_VIDEO_FORMAT_JPEG: +-- +2.47.1 + diff --git a/runtime-optenv32/mesa+32/autobuild/patches/0002-AOSCOS-LOONGARCH64-fix-iris_bufmgr.c-set-PAGE_SIZE-a.patch.loongarch64 b/runtime-optenv32/mesa+32/autobuild/patches/0002-AOSCOS-LOONGARCH64-fix-iris_bufmgr.c-set-PAGE_SIZE-a.patch.loongarch64 new file mode 100644 index 00000000000..78ac2a83191 --- /dev/null +++ b/runtime-optenv32/mesa+32/autobuild/patches/0002-AOSCOS-LOONGARCH64-fix-iris_bufmgr.c-set-PAGE_SIZE-a.patch.loongarch64 @@ -0,0 +1,29 @@ +From 55d7d493fc39fa98a3305e250e99ea25a7166caf Mon Sep 17 00:00:00 2001 +From: Mingcong Bai +Date: Tue, 12 Mar 2024 00:17:46 +0800 +Subject: [PATCH 2/2] AOSCOS: [LOONGARCH64] fix(iris_bufmgr.c): set PAGE_SIZE + as 16384 + +Obviously not ideal, but this is simply meant as a preview/PoC. + +Signed-off-by: Mingcong Bai +--- + src/gallium/drivers/iris/iris_bufmgr.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/gallium/drivers/iris/iris_bufmgr.c b/src/gallium/drivers/iris/iris_bufmgr.c +index fb59ea226e2..b64d261ff0c 100644 +--- a/src/gallium/drivers/iris/iris_bufmgr.c ++++ b/src/gallium/drivers/iris/iris_bufmgr.c +@@ -96,7 +96,7 @@ + * included here. + */ + #ifndef PAGE_SIZE +-#define PAGE_SIZE 4096 ++#define PAGE_SIZE 16384 + #endif + + #define WARN_ONCE(cond, fmt...) do { \ +-- +2.47.1 + diff --git a/runtime-optenv32/mesa+32/autobuild/patches/1000-i686-rust-bits-compat.patch b/runtime-optenv32/mesa+32/autobuild/patches/1000-i686-rust-bits-compat.patch new file mode 100644 index 00000000000..162e6b9e14d --- /dev/null +++ b/runtime-optenv32/mesa+32/autobuild/patches/1000-i686-rust-bits-compat.patch @@ -0,0 +1,10 @@ +--- a/src/compiler/rust/meson.build 2024-12-31 16:43:41.708024001 +0800 ++++ b/src/compiler/rust/meson.build 2024-12-31 16:56:04.987029425 +0800 +@@ -73,6 +73,7 @@ + output : 'bindings.rs', + c_args : [ + pre_args, ++ ['--target=i686-aosc-linux-gnu', '--sysroot=/opt/32'] + ], + args : _compiler_bindgen_args, + dependencies : [ diff --git a/runtime-optenv32/mesa+32/spec b/runtime-optenv32/mesa+32/spec index 7ff9726d96f..a71b66980d7 100644 --- a/runtime-optenv32/mesa+32/spec +++ b/runtime-optenv32/mesa+32/spec @@ -1,7 +1,10 @@ -VER=22.1.7 -SRCS="tbl::https://mesa.freedesktop.org/archive/mesa-$VER.tar.xz \ - git::commit=a1272c62334ddd7f8cfd723d56c3532a33572f1c;rename=dxheaders::https://github.com/microsoft/DirectX-Headers" -CHKSUMS="sha256::da838eb2cf11d0e08d0e9944f6bd4d96987fdc59ea2856f8c70a31a82b355d89 \ +UPSTREAM_VER=24.3.2 +DXHEADERS_VER=1.614.1 +VER=${UPSTREAM_VER}+dxheaders${DXHEADERS_VER} + +SRCS="tbl::https://archive.mesa3d.org/mesa-${UPSTREAM_VER}.tar.xz \ + git::commit=tags/v${DXHEADERS_VER};rename=dxheaders::https://github.com/microsoft/DirectX-Headers.git" +CHKSUMS="sha256::ad9f5f3a6d2169e4786254ee6eb5062f746d11b826739291205d360f1f3ff716 \ SKIP" -SUBDIR="mesa-$VER" +SUBDIR="mesa-${UPSTREAM_VER}" CHKUPDATE="anitya::id=1970" From edb3b37ff90674c7972f2b603f5d5883f8b48dd7 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 31 Dec 2024 23:20:22 +0800 Subject: [PATCH 161/722] cg+32: drop, orphaned --- runtime-optenv32/cg+32/autobuild/beyond | 1 - runtime-optenv32/cg+32/autobuild/build | 4 ---- runtime-optenv32/cg+32/autobuild/defines | 7 ------- runtime-optenv32/cg+32/spec | 6 ------ 4 files changed, 18 deletions(-) delete mode 100644 runtime-optenv32/cg+32/autobuild/beyond delete mode 100644 runtime-optenv32/cg+32/autobuild/build delete mode 100644 runtime-optenv32/cg+32/autobuild/defines delete mode 100644 runtime-optenv32/cg+32/spec diff --git a/runtime-optenv32/cg+32/autobuild/beyond b/runtime-optenv32/cg+32/autobuild/beyond deleted file mode 100644 index 548155b7629..00000000000 --- a/runtime-optenv32/cg+32/autobuild/beyond +++ /dev/null @@ -1 +0,0 @@ -chmod +x $PKGDIR/opt/32/lib/* diff --git a/runtime-optenv32/cg+32/autobuild/build b/runtime-optenv32/cg+32/autobuild/build deleted file mode 100644 index 597d6373cac..00000000000 --- a/runtime-optenv32/cg+32/autobuild/build +++ /dev/null @@ -1,4 +0,0 @@ -export PATH=/opt/32/bin:$PATH -install -dm 755 $PKGDIR/opt/32/{include,lib} -install -m 644 $SRCDIR/usr/lib/* $PKGDIR/opt/32/lib -cp -r $SRCDIR/usr/include/* $PKGDIR/opt/32/include diff --git a/runtime-optenv32/cg+32/autobuild/defines b/runtime-optenv32/cg+32/autobuild/defines deleted file mode 100644 index 46841e564e2..00000000000 --- a/runtime-optenv32/cg+32/autobuild/defines +++ /dev/null @@ -1,7 +0,0 @@ -PKGNAME=cg+32 -PKGSEC=libs -PKGDEP="mesa+32" -BUILDDEP="32subsystem" -PKGDES="NVIDIA Cg libraries" -NOLTO=1 -ABHOST=noarch diff --git a/runtime-optenv32/cg+32/spec b/runtime-optenv32/cg+32/spec deleted file mode 100644 index cee0a67ddc5..00000000000 --- a/runtime-optenv32/cg+32/spec +++ /dev/null @@ -1,6 +0,0 @@ -VER=3.1.0013 -SRCS="tbl::https://developer.download.nvidia.com/cg/Cg_${VER:0:3}/Cg-${VER:0:3}_April2012_x86.tgz" -CHKSUMS="sha256::cef3591e436f528852db0e8c145d3842f920e0c89bcfb219c466797cb7b18879" -SUBDIR=. -REL=1 -CHKUPDATE="anitya::id=229366" From 4f6590c2d57ae3e0a4ed75bced01ad55101419b4 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 31 Dec 2024 23:25:48 +0800 Subject: [PATCH 162/722] celt+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/celt+32/autobuild/build | 12 ------------ runtime-optenv32/celt+32/autobuild/defines | 16 +++++++++++++--- runtime-optenv32/celt+32/spec | 2 +- 3 files changed, 14 insertions(+), 16 deletions(-) delete mode 100644 runtime-optenv32/celt+32/autobuild/build diff --git a/runtime-optenv32/celt+32/autobuild/build b/runtime-optenv32/celt+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/celt+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/celt+32/autobuild/defines b/runtime-optenv32/celt+32/autobuild/defines index 9b72a4a8037..65af3399a3a 100644 --- a/runtime-optenv32/celt+32/autobuild/defines +++ b/runtime-optenv32/celt+32/autobuild/defines @@ -1,8 +1,18 @@ PKGNAME=celt+32 PKGSEC=libs PKGDEP="libogg+32" -PKGDES="Low-latency audio communication codec (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="Low-latency audio communication codec (32-bit x86 runtime)" + +AUTOTOOLS_AFTER=( + '--enable-custom-modes' +) -AUTOTOOLS_AFTER="--enable-custom-modes" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 + +# FIXME: /var/cache/acbs/build/acbs.9ujm7voh/celt-0.11.3/configure: line +# 13698: syntax error near unexpected token `tools="tools", +# '# /var/cache/acbs/build/acbs.9ujm7voh/celt-0.11.3/configure: line +# 13698: ` XIPH_PATH_OGG(tools="tools", tools="")' +RECONF=0 diff --git a/runtime-optenv32/celt+32/spec b/runtime-optenv32/celt+32/spec index c83a6b0e4b3..f8831a9bb2a 100644 --- a/runtime-optenv32/celt+32/spec +++ b/runtime-optenv32/celt+32/spec @@ -1,5 +1,5 @@ VER=0.11.3 +REL=3 SRCS="tbl::https://downloads.xiph.org/releases/celt/celt-$VER.tar.gz" CHKSUMS="sha256::7e64815d4a8a009d0280ecd235ebd917da3abdcfd8f7d0812218c085f9480836" -REL=2 CHKUPDATE="anitya::id=265" From 08a859dfcd92bbb5d70105f7ce01ef3aba0dee9f Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 31 Dec 2024 23:44:07 +0800 Subject: [PATCH 163/722] cdparanoia+32: improve packaging - Use optenv32 template. - Sort patches with patch-series-rename. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/cdparanoia+32/autobuild/build | 12 ------------ .../cdparanoia+32/autobuild/defines | 17 +++++++++++++---- ... => 0001-Debian-01-typos-and-spelling.patch} | 0 ...s.patch => 0002-Debian-02-ide-devices.patch} | 0 ...gcc4.3.patch => 0003-Debian-03-gcc4.3.patch} | 0 ...endian.patch => 0004-Debian-04-endian.patch} | 0 ...ebsd.patch => 0005-Debian-05-kfreebsd.patch} | 0 ...conf.patch => 0006-Debian-06-autoconf.patch} | 0 ...nfix.patch => 0007-Debian-07-jpmanfix.patch} | 0 ...-Debian-cdparanoia-force-progress-bar.patch} | 0 .../cdparanoia+32/autobuild/patches/series | 8 -------- runtime-optenv32/cdparanoia+32/spec | 2 +- 12 files changed, 14 insertions(+), 25 deletions(-) delete mode 100644 runtime-optenv32/cdparanoia+32/autobuild/build rename runtime-optenv32/cdparanoia+32/autobuild/patches/{01-typos-and-spelling.patch => 0001-Debian-01-typos-and-spelling.patch} (100%) rename runtime-optenv32/cdparanoia+32/autobuild/patches/{02-ide-devices.patch => 0002-Debian-02-ide-devices.patch} (100%) rename runtime-optenv32/cdparanoia+32/autobuild/patches/{03-gcc4.3.patch => 0003-Debian-03-gcc4.3.patch} (100%) rename runtime-optenv32/cdparanoia+32/autobuild/patches/{04-endian.patch => 0004-Debian-04-endian.patch} (100%) rename runtime-optenv32/cdparanoia+32/autobuild/patches/{05-kfreebsd.patch => 0005-Debian-05-kfreebsd.patch} (100%) rename runtime-optenv32/cdparanoia+32/autobuild/patches/{06-autoconf.patch => 0006-Debian-06-autoconf.patch} (100%) rename runtime-optenv32/cdparanoia+32/autobuild/patches/{07-jpmanfix.patch => 0007-Debian-07-jpmanfix.patch} (100%) rename runtime-optenv32/cdparanoia+32/autobuild/patches/{cdparanoia-force-progress-bar.diff => 0008-Debian-cdparanoia-force-progress-bar.patch} (100%) delete mode 100644 runtime-optenv32/cdparanoia+32/autobuild/patches/series diff --git a/runtime-optenv32/cdparanoia+32/autobuild/build b/runtime-optenv32/cdparanoia+32/autobuild/build deleted file mode 100644 index 967e51021bb..00000000000 --- a/runtime-optenv32/cdparanoia+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -./configure --enable-shared --prefix=/opt/32 \ - --disable-static ${AUTOTOOLS_AFTER} \ - LDFLAGS="${LDFLAGS} -L/opt/32/lib" \ - CC=i686-pc-linux-gnu-gcc \ - CXX=i686-pc-linux-gnu-g++ \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make DESTDIR=$PKGDIR ${MAKE_AFTER} install - -rm -rf $PKGDIR/opt/32/{bin,share} diff --git a/runtime-optenv32/cdparanoia+32/autobuild/defines b/runtime-optenv32/cdparanoia+32/autobuild/defines index 797b045cfff..aa6a164bc0f 100644 --- a/runtime-optenv32/cdparanoia+32/autobuild/defines +++ b/runtime-optenv32/cdparanoia+32/autobuild/defines @@ -1,10 +1,19 @@ PKGNAME=cdparanoia+32 PKGSEC=utils -PKGDES="A CD audio extraction tool" PKGDEP="glibc+32" -BUILDDEP="32subsystem" +BUILDDEP="devel-base+32" +PKGDES="A CD audio extraction tool (32-bit x86 runtime)" +# FIXME: Breaks linkage during installation. NOPARALLEL=1 -MAKE_AFTER="prefix=$PKGDIR/opt/32 MANDIR=$PKGDIR/opt/32/share/man" +# FIXME: Hard-coded source paths. +ABSHADOW=0 + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 + +MAKE_AFTER=( + "prefix=$PKGDIR/opt/32" + "LIBDIR=$PKGDIR/opt/32/lib" + "MANDIR=$PKGDIR/opt/32/share/man" +) diff --git a/runtime-optenv32/cdparanoia+32/autobuild/patches/01-typos-and-spelling.patch b/runtime-optenv32/cdparanoia+32/autobuild/patches/0001-Debian-01-typos-and-spelling.patch similarity index 100% rename from runtime-optenv32/cdparanoia+32/autobuild/patches/01-typos-and-spelling.patch rename to runtime-optenv32/cdparanoia+32/autobuild/patches/0001-Debian-01-typos-and-spelling.patch diff --git a/runtime-optenv32/cdparanoia+32/autobuild/patches/02-ide-devices.patch b/runtime-optenv32/cdparanoia+32/autobuild/patches/0002-Debian-02-ide-devices.patch similarity index 100% rename from runtime-optenv32/cdparanoia+32/autobuild/patches/02-ide-devices.patch rename to runtime-optenv32/cdparanoia+32/autobuild/patches/0002-Debian-02-ide-devices.patch diff --git a/runtime-optenv32/cdparanoia+32/autobuild/patches/03-gcc4.3.patch b/runtime-optenv32/cdparanoia+32/autobuild/patches/0003-Debian-03-gcc4.3.patch similarity index 100% rename from runtime-optenv32/cdparanoia+32/autobuild/patches/03-gcc4.3.patch rename to runtime-optenv32/cdparanoia+32/autobuild/patches/0003-Debian-03-gcc4.3.patch diff --git a/runtime-optenv32/cdparanoia+32/autobuild/patches/04-endian.patch b/runtime-optenv32/cdparanoia+32/autobuild/patches/0004-Debian-04-endian.patch similarity index 100% rename from runtime-optenv32/cdparanoia+32/autobuild/patches/04-endian.patch rename to runtime-optenv32/cdparanoia+32/autobuild/patches/0004-Debian-04-endian.patch diff --git a/runtime-optenv32/cdparanoia+32/autobuild/patches/05-kfreebsd.patch b/runtime-optenv32/cdparanoia+32/autobuild/patches/0005-Debian-05-kfreebsd.patch similarity index 100% rename from runtime-optenv32/cdparanoia+32/autobuild/patches/05-kfreebsd.patch rename to runtime-optenv32/cdparanoia+32/autobuild/patches/0005-Debian-05-kfreebsd.patch diff --git a/runtime-optenv32/cdparanoia+32/autobuild/patches/06-autoconf.patch b/runtime-optenv32/cdparanoia+32/autobuild/patches/0006-Debian-06-autoconf.patch similarity index 100% rename from runtime-optenv32/cdparanoia+32/autobuild/patches/06-autoconf.patch rename to runtime-optenv32/cdparanoia+32/autobuild/patches/0006-Debian-06-autoconf.patch diff --git a/runtime-optenv32/cdparanoia+32/autobuild/patches/07-jpmanfix.patch b/runtime-optenv32/cdparanoia+32/autobuild/patches/0007-Debian-07-jpmanfix.patch similarity index 100% rename from runtime-optenv32/cdparanoia+32/autobuild/patches/07-jpmanfix.patch rename to runtime-optenv32/cdparanoia+32/autobuild/patches/0007-Debian-07-jpmanfix.patch diff --git a/runtime-optenv32/cdparanoia+32/autobuild/patches/cdparanoia-force-progress-bar.diff b/runtime-optenv32/cdparanoia+32/autobuild/patches/0008-Debian-cdparanoia-force-progress-bar.patch similarity index 100% rename from runtime-optenv32/cdparanoia+32/autobuild/patches/cdparanoia-force-progress-bar.diff rename to runtime-optenv32/cdparanoia+32/autobuild/patches/0008-Debian-cdparanoia-force-progress-bar.patch diff --git a/runtime-optenv32/cdparanoia+32/autobuild/patches/series b/runtime-optenv32/cdparanoia+32/autobuild/patches/series deleted file mode 100644 index a99f7fa625f..00000000000 --- a/runtime-optenv32/cdparanoia+32/autobuild/patches/series +++ /dev/null @@ -1,8 +0,0 @@ -01-typos-and-spelling.patch -02-ide-devices.patch -03-gcc4.3.patch -04-endian.patch -05-kfreebsd.patch -06-autoconf.patch -07-jpmanfix.patch -cdparanoia-force-progress-bar.diff diff --git a/runtime-optenv32/cdparanoia+32/spec b/runtime-optenv32/cdparanoia+32/spec index 25d4f670ba8..e5de143fa7a 100644 --- a/runtime-optenv32/cdparanoia+32/spec +++ b/runtime-optenv32/cdparanoia+32/spec @@ -1,5 +1,5 @@ VER=10.2 +REL=4 SRCS="tbl::https://downloads.xiph.org/releases/cdparanoia/cdparanoia-III-$VER.src.tgz" CHKSUMS="sha256::005db45ef4ee017f5c32ec124f913a0546e77014266c6a1c50df902a55fe64df" -REL=3 CHKUPDATE="anitya::id=15309" From 1217b81397b57cd4f0d9b19cb3c4e25850c18051 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 31 Dec 2024 23:53:37 +0800 Subject: [PATCH 164/722] libepoxy+32: update to 1.5.10 - Use optenv32 template. - Drop unused patch script. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libepoxy+32/autobuild/build | 8 -------- runtime-optenv32/libepoxy+32/autobuild/defines | 9 +++++---- runtime-optenv32/libepoxy+32/autobuild/patch | 1 - runtime-optenv32/libepoxy+32/spec | 7 +++---- 4 files changed, 8 insertions(+), 17 deletions(-) delete mode 100644 runtime-optenv32/libepoxy+32/autobuild/build delete mode 100644 runtime-optenv32/libepoxy+32/autobuild/patch diff --git a/runtime-optenv32/libepoxy+32/autobuild/build b/runtime-optenv32/libepoxy+32/autobuild/build deleted file mode 100644 index c27ed990b27..00000000000 --- a/runtime-optenv32/libepoxy+32/autobuild/build +++ /dev/null @@ -1,8 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR=$PKGDIR diff --git a/runtime-optenv32/libepoxy+32/autobuild/defines b/runtime-optenv32/libepoxy+32/autobuild/defines index 755740084e5..40def1779d8 100644 --- a/runtime-optenv32/libepoxy+32/autobuild/defines +++ b/runtime-optenv32/libepoxy+32/autobuild/defines @@ -1,7 +1,8 @@ PKGNAME=libepoxy+32 PKGSEC=libs -PKGDEP="glibc+32" -BUILDDEP="32subsystem" -PKGDES="A library for handling OpenGL function pointer management for you" +PKGDEP="mesa+32 x11-lib+32" +BUILDDEP="devel-base+32" +PKGDES="A library for handling OpenGL function pointer management for you (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libepoxy+32/autobuild/patch b/runtime-optenv32/libepoxy+32/autobuild/patch deleted file mode 100644 index 5d4f2eef566..00000000000 --- a/runtime-optenv32/libepoxy+32/autobuild/patch +++ /dev/null @@ -1 +0,0 @@ -NOCONFIGURE=1 ./autogen.sh diff --git a/runtime-optenv32/libepoxy+32/spec b/runtime-optenv32/libepoxy+32/spec index 35d106d521f..97e0679e40f 100644 --- a/runtime-optenv32/libepoxy+32/spec +++ b/runtime-optenv32/libepoxy+32/spec @@ -1,5 +1,4 @@ -VER=1.2 -SRCS="tbl::https://crux.nu/files/libepoxy-$VER.tar.gz" -CHKSUMS="sha256::42c328440f60a5795835c5ec4bdfc1329e75bba16b6e22b3a87ed17e9679e8f6" -REL=3 +VER=1.5.10 +SRCS="tbl::https://download.gnome.org/sources/libepoxy/${VER:0:3}/libepoxy-$VER.tar.xz" +CHKSUMS="sha256::072cda4b59dd098bba8c2363a6247299db1fa89411dc221c8b81b8ee8192e623" CHKUPDATE="anitya::id=6090" From 1c2b989aadbedaa2d95868883d3eb5e08c17e89f Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 31 Dec 2024 23:54:20 +0800 Subject: [PATCH 165/722] wayland+32: update to 1.23.1 - Use devel-base+32 as a more reasonable build dep. - Use array to pass MESON_AFTER. --- runtime-optenv32/wayland+32/autobuild/defines | 11 +++++++---- runtime-optenv32/wayland+32/spec | 2 +- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/runtime-optenv32/wayland+32/autobuild/defines b/runtime-optenv32/wayland+32/autobuild/defines index c2d77ae72b6..8967929081d 100644 --- a/runtime-optenv32/wayland+32/autobuild/defines +++ b/runtime-optenv32/wayland+32/autobuild/defines @@ -1,11 +1,14 @@ PKGNAME=wayland+32 PKGSEC=libs PKGDEP="libffi+32 expat+32 libxml2+32 wayland-protocols" -BUILDDEP="32subsystem" -PKGDES="A display server to replace X.Org (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="A display server to replace X.Org (32-bit x86 runtime)" ABHOST=optenv32 ABTYPE=meson + NOLTO=1 -MESON_AFTER="-Ddocumentation=false \ - -Dtests=false" +MESON_AFTER=( + '-Ddocumentation=false' + '-Dtests=false' +) diff --git a/runtime-optenv32/wayland+32/spec b/runtime-optenv32/wayland+32/spec index 9bd47918d92..cb1dca2122e 100644 --- a/runtime-optenv32/wayland+32/spec +++ b/runtime-optenv32/wayland+32/spec @@ -1,4 +1,4 @@ -VER=1.23.0 +VER=1.23.1 SRCS="git::commit=tags/$VER::https://gitlab.freedesktop.org/wayland/wayland" CHKSUMS="SKIP" CHKUPDATE="anitya::id=10061" From ba4479f6f0cf18b378fa7a65c7d657f2ff8d7ac9 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 00:19:03 +0800 Subject: [PATCH 166/722] libxkbcommon+32: update to 1.7.0 - Use optenv32 template. - Enable Wayland support. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libxkbcommon+32/autobuild/build | 10 ---------- runtime-optenv32/libxkbcommon+32/autobuild/defines | 11 ++++------- runtime-optenv32/libxkbcommon+32/autobuild/prepare | 2 -- runtime-optenv32/libxkbcommon+32/spec | 4 ++-- 4 files changed, 6 insertions(+), 21 deletions(-) delete mode 100644 runtime-optenv32/libxkbcommon+32/autobuild/build delete mode 100644 runtime-optenv32/libxkbcommon+32/autobuild/prepare diff --git a/runtime-optenv32/libxkbcommon+32/autobuild/build b/runtime-optenv32/libxkbcommon+32/autobuild/build deleted file mode 100644 index 4ad397f9f52..00000000000 --- a/runtime-optenv32/libxkbcommon+32/autobuild/build +++ /dev/null @@ -1,10 +0,0 @@ -export PATH=/opt/32/bin:$PATH -export CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --host=i686-pc-linux-gnu \ - --target=i686-pc-linux-gnu \ - --prefix=/opt/32 PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/share diff --git a/runtime-optenv32/libxkbcommon+32/autobuild/defines b/runtime-optenv32/libxkbcommon+32/autobuild/defines index d7feafc8922..d7904c12100 100644 --- a/runtime-optenv32/libxkbcommon+32/autobuild/defines +++ b/runtime-optenv32/libxkbcommon+32/autobuild/defines @@ -1,11 +1,8 @@ PKGNAME=libxkbcommon+32 -PKGDES="Keyboard handling library using XKB data for X11 XCB clients (optenv32)" -PKGDEP="x11-lib+32 libxcb+32" -BUILDDEP="32subsystem" PKGSEC=x11 +PKGDEP="libxcb+32 wayland+32 x11-lib+32" +BUILDDEP="devel-base+32" +PKGDES="Keyboard handling library using XKB data for X11 XCB clients (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch - -ABTYPE=meson -MESON_AFTER="--prefix=/opt/32 -Denable-wayland=false" +ABHOST=optenv32 diff --git a/runtime-optenv32/libxkbcommon+32/autobuild/prepare b/runtime-optenv32/libxkbcommon+32/autobuild/prepare deleted file mode 100644 index 1f103ba3f92..00000000000 --- a/runtime-optenv32/libxkbcommon+32/autobuild/prepare +++ /dev/null @@ -1,2 +0,0 @@ -export PATH=/opt/32/bin:$PATH -export CC=i686-pc-linux-gnu-gcc diff --git a/runtime-optenv32/libxkbcommon+32/spec b/runtime-optenv32/libxkbcommon+32/spec index 6088ef7dd1b..086bbf47877 100644 --- a/runtime-optenv32/libxkbcommon+32/spec +++ b/runtime-optenv32/libxkbcommon+32/spec @@ -1,4 +1,4 @@ -VER=0.9.1 +VER=1.7.0 SRCS="tbl::https://xkbcommon.org/download/libxkbcommon-$VER.tar.xz" -CHKSUMS="sha256::d4c6aabf0a5c1fc616f8a6a65c8a818c03773b9a87da9fbc434da5acd1199be0" +CHKSUMS="sha256::65782f0a10a4b455af9c6baab7040e2f537520caa2ec2092805cdfd36863b247" CHKUPDATE="anitya::id=1780" From 8ae750504a457bfe995348edb8e24ca02e3bccd8 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 00:20:33 +0800 Subject: [PATCH 167/722] fribidi+32: update to 1.0.14 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/fribidi+32/autobuild/build | 10 ---------- runtime-optenv32/fribidi+32/autobuild/defines | 7 +++---- runtime-optenv32/fribidi+32/spec | 4 ++-- 3 files changed, 5 insertions(+), 16 deletions(-) delete mode 100644 runtime-optenv32/fribidi+32/autobuild/build diff --git a/runtime-optenv32/fribidi+32/autobuild/build b/runtime-optenv32/fribidi+32/autobuild/build deleted file mode 100644 index 3c4709b7fa7..00000000000 --- a/runtime-optenv32/fribidi+32/autobuild/build +++ /dev/null @@ -1,10 +0,0 @@ -export PATH=/opt/32/bin:$PATH -./configure --prefix=/opt/32 \ - --build=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --target=i686-pc-linux-gnu \ - CC=i686-pc-linux-gnu-gcc -make -make install DESTDIR="$PKGDIR" - -rm -r "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/fribidi+32/autobuild/defines b/runtime-optenv32/fribidi+32/autobuild/defines index ae48c6db31f..f139ff2c0ea 100644 --- a/runtime-optenv32/fribidi+32/autobuild/defines +++ b/runtime-optenv32/fribidi+32/autobuild/defines @@ -1,9 +1,8 @@ PKGNAME=fribidi+32 PKGSEC=libs PKGDEP="glib+32" -BUILDDEP="32subsystem" -PKGDES="Free implementation of BiDi algorithm (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="Free implementation of BiDi algorithm (32-bit x86 runtime)" -NOPARALLEL=1 NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/fribidi+32/spec b/runtime-optenv32/fribidi+32/spec index 73b4f0e5b42..f2d638c3e12 100644 --- a/runtime-optenv32/fribidi+32/spec +++ b/runtime-optenv32/fribidi+32/spec @@ -1,4 +1,4 @@ -VER=1.0.10 +VER=1.0.14 SRCS="tbl::https://github.com/fribidi/fribidi/releases/download/v$VER/fribidi-$VER.tar.xz" -CHKSUMS="sha256::7f1c687c7831499bcacae5e8675945a39bacbad16ecaa945e9454a32df653c01" +CHKSUMS="sha256::76ae204a7027652ac3981b9fa5817c083ba23114340284c58e756b259cd2259a" CHKUPDATE="anitya::id=857" From 49201c9294c9eee76b1624b2e7529a53691a0326 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 00:42:00 +0800 Subject: [PATCH 168/722] libdatrie+32: new, 0.2.13 --- runtime-optenv32/libdatrie+32/autobuild/defines | 11 +++++++++++ runtime-optenv32/libdatrie+32/spec | 4 ++++ 2 files changed, 15 insertions(+) create mode 100644 runtime-optenv32/libdatrie+32/autobuild/defines create mode 100644 runtime-optenv32/libdatrie+32/spec diff --git a/runtime-optenv32/libdatrie+32/autobuild/defines b/runtime-optenv32/libdatrie+32/autobuild/defines new file mode 100644 index 00000000000..6e26863da8e --- /dev/null +++ b/runtime-optenv32/libdatrie+32/autobuild/defines @@ -0,0 +1,11 @@ +PKGNAME=libdatrie+32 +PKGSEC=libs +PKGDEP="glibc+32" +BUILDDEP="devel-base+32" +PKGDES="Implementation of double-array structure for representing trie (32-bit x86 runtime)" + +# FIXME: Parallelism causes installation failure. +NOPARALLEL=1 + +NOLTO=1 +ABHOST=optenv32 diff --git a/runtime-optenv32/libdatrie+32/spec b/runtime-optenv32/libdatrie+32/spec new file mode 100644 index 00000000000..37dbb3f21c3 --- /dev/null +++ b/runtime-optenv32/libdatrie+32/spec @@ -0,0 +1,4 @@ +VER=0.2.13 +SRCS="tbl::https://linux.thai.net/pub/thailinux/software/libthai/libdatrie-$VER.tar.xz" +CHKSUMS="sha256::12231bb2be2581a7f0fb9904092d24b0ed2a271a16835071ed97bed65267f4be" +CHKUPDATE="anitya::id=7342" From 69be7a1acccdf3db967329150b313f3a52bfa22f Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 00:43:45 +0800 Subject: [PATCH 169/722] libthai+32: new, 0.1.28 --- runtime-optenv32/libthai+32/autobuild/defines | 11 +++++++++++ runtime-optenv32/libthai+32/spec | 4 ++++ 2 files changed, 15 insertions(+) create mode 100644 runtime-optenv32/libthai+32/autobuild/defines create mode 100644 runtime-optenv32/libthai+32/spec diff --git a/runtime-optenv32/libthai+32/autobuild/defines b/runtime-optenv32/libthai+32/autobuild/defines new file mode 100644 index 00000000000..77e6eb368f3 --- /dev/null +++ b/runtime-optenv32/libthai+32/autobuild/defines @@ -0,0 +1,11 @@ +PKGNAME=libthai+32 +PKGSEC=libs +PKGDEP="libdatrie+32" +BUILDDEP="devel-base+32" +PKGDES="Thai language support routines (32-bit x86 runtime)" + +# FIXME: configure.ac:25: error: AC_CONFIG_MACRO_DIR can only be used once +RECONF=0 + +NOLTO=1 +ABHOST=optenv32 diff --git a/runtime-optenv32/libthai+32/spec b/runtime-optenv32/libthai+32/spec new file mode 100644 index 00000000000..b051fb33907 --- /dev/null +++ b/runtime-optenv32/libthai+32/spec @@ -0,0 +1,4 @@ +VER=0.1.28 +SRCS="tbl::https://linux.thai.net/pub/thailinux/software/libthai/libthai-$VER.tar.xz" +CHKSUMS="sha256::ffe0a17b4b5aa11b153c15986800eca19f6c93a4025ffa5cf2cab2dcdf1ae911" +CHKUPDATE="anitya::id=1737" From 23be4ae941005f2c53a3495711f92e7e4fbc1019 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 00:47:27 +0800 Subject: [PATCH 170/722] pango+32: update to 1.52.2 - Use optenv32 template. - Add libthai+32 dependency. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/pango+32/autobuild/build | 16 ---------------- runtime-optenv32/pango+32/autobuild/defines | 13 ++++++++----- runtime-optenv32/pango+32/autobuild/patch | 1 - runtime-optenv32/pango+32/spec | 5 ++--- 4 files changed, 10 insertions(+), 25 deletions(-) delete mode 100644 runtime-optenv32/pango+32/autobuild/build delete mode 100644 runtime-optenv32/pango+32/autobuild/patch diff --git a/runtime-optenv32/pango+32/autobuild/build b/runtime-optenv32/pango+32/autobuild/build deleted file mode 100644 index ff7bc1cc6f2..00000000000 --- a/runtime-optenv32/pango+32/autobuild/build +++ /dev/null @@ -1,16 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -export CC="i686-pc-linux-gnu-gcc -m32" -export CXX="i686-pc-linux-gnu-g++ -m32" -export CCAS=i686-pc-linux-gnu-as -export LLVM_CONFIG=/opt/32/bin/llvm-config - -mkdir "$SRCDIR"/build -cd "$SRCDIR"/build -meson "$SRCDIR" --prefix=/opt/32 -ninja -DESTDIR="$PKGDIR" ninja install - -cd "$SRCDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/pango+32/autobuild/defines b/runtime-optenv32/pango+32/autobuild/defines index bb863d637e6..54c2d7ad291 100644 --- a/runtime-optenv32/pango+32/autobuild/defines +++ b/runtime-optenv32/pango+32/autobuild/defines @@ -1,9 +1,12 @@ PKGNAME=pango+32 PKGSEC=libs -PKGDEP="harfbuzz+32 cairo+32 x11-lib+32 fribidi+32" -BUILDDEP="32subsystem" -PKGDES="System for layout and rendering of internationalized text (optenv32)" +PKGDEP="cairo+32 fribidi+32 harfbuzz+32 libthai+32 x11-lib+32" +BUILDDEP="devel-base+32" +PKGDES="System for layout and rendering of internationalized text (32-bit x86 runtime)" -AUTOTOOLS_AFTER="--with-included-modules=basic-fc" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 + +MESON_AFTER=( + '-Dintrospection=disabled' +) diff --git a/runtime-optenv32/pango+32/autobuild/patch b/runtime-optenv32/pango+32/autobuild/patch deleted file mode 100644 index b65e04d0d7d..00000000000 --- a/runtime-optenv32/pango+32/autobuild/patch +++ /dev/null @@ -1 +0,0 @@ -rm -f pango-view/pango-view.1.in diff --git a/runtime-optenv32/pango+32/spec b/runtime-optenv32/pango+32/spec index 4ed7a88cefd..393dd1510b8 100644 --- a/runtime-optenv32/pango+32/spec +++ b/runtime-optenv32/pango+32/spec @@ -1,5 +1,4 @@ -VER=1.44.7 +VER=1.52.2 SRCS="tbl::https://download.gnome.org/sources/pango/${VER%.*}/pango-$VER.tar.xz" -CHKSUMS="sha256::66a5b6cc13db73efed67b8e933584509f8ddb7b10a8a40c3850ca4a985ea1b1f" -REL=1 +CHKSUMS="sha256::d0076afe01082814b853deec99f9349ece5f2ce83908b8e58ff736b41f78a96b" CHKUPDATE="anitya::id=11783" From 3e6750fffdb1d042f12185f18ca95b9d6bfd7c9e Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 00:58:14 +0800 Subject: [PATCH 171/722] at-spi2-core+32: update to 2.52.0 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/at-spi2-core+32/autobuild/build | 13 ------------- runtime-optenv32/at-spi2-core+32/autobuild/defines | 13 ++++++++----- runtime-optenv32/at-spi2-core+32/spec | 6 +++--- 3 files changed, 11 insertions(+), 21 deletions(-) delete mode 100644 runtime-optenv32/at-spi2-core+32/autobuild/build diff --git a/runtime-optenv32/at-spi2-core+32/autobuild/build b/runtime-optenv32/at-spi2-core+32/autobuild/build deleted file mode 100644 index 1d309a2b19a..00000000000 --- a/runtime-optenv32/at-spi2-core+32/autobuild/build +++ /dev/null @@ -1,13 +0,0 @@ -export PATH="/opt/32/bin:$PATH" - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig - -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{etc,libexec,share} diff --git a/runtime-optenv32/at-spi2-core+32/autobuild/defines b/runtime-optenv32/at-spi2-core+32/autobuild/defines index 62f13e9d27e..5acb3ab8bc2 100644 --- a/runtime-optenv32/at-spi2-core+32/autobuild/defines +++ b/runtime-optenv32/at-spi2-core+32/autobuild/defines @@ -1,9 +1,12 @@ PKGNAME=at-spi2-core+32 -PKGDEP="dbus+32 glib+32 x11-lib+32" -BUILDDEP="32subsystem" -PKGDES="Protocol definitions and daemon for D-Bus at-spi (optenv32)" PKGSEC=gnome +PKGDEP="dbus+32 glib+32 x11-lib+32" +BUILDDEP="devel-base+32" +PKGDES="Protocol definitions and daemon for D-Bus at-spi (32-bit x86 runtime)" -AUTOTOOLS_AFTER="--disable-xevie --disable-introspection" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 + +MESON_AFTER=( + '-Dintrospection=disabled' +) diff --git a/runtime-optenv32/at-spi2-core+32/spec b/runtime-optenv32/at-spi2-core+32/spec index eea0101ac77..8355b91bdf1 100644 --- a/runtime-optenv32/at-spi2-core+32/spec +++ b/runtime-optenv32/at-spi2-core+32/spec @@ -1,4 +1,4 @@ -VER=2.26.3 -SRCS="tbl::https://download.gnome.org/sources/at-spi2-core/${VER:0:4}/at-spi2-core-$VER.tar.xz" -CHKSUMS="sha256::ebc9cdc4a1646c993735201426600c1f5432c694f95c69805ae16ad15065ccaf" +VER=2.52.0 +SRCS="https://download.gnome.org/sources/at-spi2-core/${VER:0:4}/at-spi2-core-$VER.tar.xz" +CHKSUMS="sha256::0ac3fc8320c8d01fa147c272ba7fa03806389c6b03d3c406d0823e30e35ff5ab" CHKUPDATE="anitya::id=7841" From 6dd840c05a8e2180173f86752d3194988dfa4af1 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 01:01:16 +0800 Subject: [PATCH 172/722] atk+32: drop, orphaned --- runtime-optenv32/atk+32/autobuild/build | 11 ----------- runtime-optenv32/atk+32/autobuild/defines | 9 --------- runtime-optenv32/atk+32/spec | 5 ----- 3 files changed, 25 deletions(-) delete mode 100644 runtime-optenv32/atk+32/autobuild/build delete mode 100644 runtime-optenv32/atk+32/autobuild/defines delete mode 100644 runtime-optenv32/atk+32/spec diff --git a/runtime-optenv32/atk+32/autobuild/build b/runtime-optenv32/atk+32/autobuild/build deleted file mode 100644 index c973ad9c04b..00000000000 --- a/runtime-optenv32/atk+32/autobuild/build +++ /dev/null @@ -1,11 +0,0 @@ -export PATH="/opt/32/bin:$PATH" - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu ${AUTOTOOLS_AFTER} \ - --prefix=/opt/32 PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/share diff --git a/runtime-optenv32/atk+32/autobuild/defines b/runtime-optenv32/atk+32/autobuild/defines deleted file mode 100644 index ddfdb49b879..00000000000 --- a/runtime-optenv32/atk+32/autobuild/defines +++ /dev/null @@ -1,9 +0,0 @@ -PKGNAME=atk+32 -PKGDEP="glib+32" -BUILDDEP="32subsystem" -PKGDES="A library providing a set of interfaces for accessibility (optenv32)" -PKGSEC=libs - -AUTOTOOLS_AFTER="--disable-introspection" -NOLTO=1 -ABHOST=noarch diff --git a/runtime-optenv32/atk+32/spec b/runtime-optenv32/atk+32/spec deleted file mode 100644 index 6624af2bbbe..00000000000 --- a/runtime-optenv32/atk+32/spec +++ /dev/null @@ -1,5 +0,0 @@ -VER=2.26.1 -SRCS="tbl::https://download.gnome.org/sources/atk/${VER:0:4}/atk-$VER.tar.xz" -CHKSUMS="sha256::ef00ff6b83851dddc8db38b4d9faeffb99572ba150b0664ee02e46f015ea97cb" -REL=1 -CHKUPDATE="anitya::id=130" From fb4c2b9a8d50453a9c20e80b093a1a7d4184f663 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 01:01:32 +0800 Subject: [PATCH 173/722] at-spi2-atk+32: drop, orphaned --- runtime-optenv32/at-spi2-atk+32/autobuild/build | 10 ---------- runtime-optenv32/at-spi2-atk+32/autobuild/defines | 9 --------- runtime-optenv32/at-spi2-atk+32/spec | 4 ---- 3 files changed, 23 deletions(-) delete mode 100644 runtime-optenv32/at-spi2-atk+32/autobuild/build delete mode 100644 runtime-optenv32/at-spi2-atk+32/autobuild/defines delete mode 100644 runtime-optenv32/at-spi2-atk+32/spec diff --git a/runtime-optenv32/at-spi2-atk+32/autobuild/build b/runtime-optenv32/at-spi2-atk+32/autobuild/build deleted file mode 100644 index 7256f58746f..00000000000 --- a/runtime-optenv32/at-spi2-atk+32/autobuild/build +++ /dev/null @@ -1,10 +0,0 @@ -export PATH="/opt/32/bin:$PATH" - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" diff --git a/runtime-optenv32/at-spi2-atk+32/autobuild/defines b/runtime-optenv32/at-spi2-atk+32/autobuild/defines deleted file mode 100644 index 1a34dd31446..00000000000 --- a/runtime-optenv32/at-spi2-atk+32/autobuild/defines +++ /dev/null @@ -1,9 +0,0 @@ -PKGNAME=at-spi2-atk+32 -PKGDES="A library that bridges ATK to At-Spi2 D-Bus service (optenv32)" -PKGDEP="at-spi2-core+32 atk+32" -BUILDDEP="32subsystem" -PKGSEC=gnome - -AUTOTOOLS_AFTER="--disable-schemas-compile --disable-introspection" -NOLTO=1 -ABHOST=noarch diff --git a/runtime-optenv32/at-spi2-atk+32/spec b/runtime-optenv32/at-spi2-atk+32/spec deleted file mode 100644 index faf49ed01c1..00000000000 --- a/runtime-optenv32/at-spi2-atk+32/spec +++ /dev/null @@ -1,4 +0,0 @@ -VER=2.26.3 -SRCS="tbl::https://download.gnome.org/sources/at-spi2-atk/${VER:0:4}/at-spi2-atk-$VER.tar.xz" -CHKSUMS="sha256::ca1a3ea03b6fe06402cebce6fc052b0526e8f8cc6e363737dd648f97eb2ce9c7" -CHKUPDATE="anitya::id=7840" From 69d86f1fd1237805700b01f0a8df511ef6f309c6 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 01:02:43 +0800 Subject: [PATCH 174/722] at-spi2-core+32: replace atk+32, at-spi2-atk+32 Upstream merged these projects into at-spi2-core. --- runtime-optenv32/at-spi2-core+32/autobuild/defines | 3 +++ 1 file changed, 3 insertions(+) diff --git a/runtime-optenv32/at-spi2-core+32/autobuild/defines b/runtime-optenv32/at-spi2-core+32/autobuild/defines index 5acb3ab8bc2..a6c39f77ab5 100644 --- a/runtime-optenv32/at-spi2-core+32/autobuild/defines +++ b/runtime-optenv32/at-spi2-core+32/autobuild/defines @@ -10,3 +10,6 @@ ABHOST=optenv32 MESON_AFTER=( '-Dintrospection=disabled' ) + +PKGBREAK="atk+32<=2.26.1-1 at-spi2-atk+32<=2.26.3" +PKGREP="atk+32<=2.26.1-1 at-spi2-atk+32<=2.26.3" From 027ba59eaebcaa50c37dd6f4450b7b350fa68859 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 01:21:18 +0800 Subject: [PATCH 175/722] lzo+32: new, 2.10 --- runtime-optenv32/lzo+32/autobuild/defines | 14 ++++++++++++++ runtime-optenv32/lzo+32/spec | 4 ++++ 2 files changed, 18 insertions(+) create mode 100644 runtime-optenv32/lzo+32/autobuild/defines create mode 100644 runtime-optenv32/lzo+32/spec diff --git a/runtime-optenv32/lzo+32/autobuild/defines b/runtime-optenv32/lzo+32/autobuild/defines new file mode 100644 index 00000000000..5908c1b3359 --- /dev/null +++ b/runtime-optenv32/lzo+32/autobuild/defines @@ -0,0 +1,14 @@ +PKGNAME=lzo+32 +PKGSEC=utils +PKGDEP="glibc+32" +BUILDDEP="devel-base+32" +PKGDES="LZO compression library (32-bit x86 runtime)" + +AB_FLAGS_O3=1 + +NOLTO=1 +ABHOST=optenv32 + +AUTOTOOLS_AFTER=( + '--enable-shared' +) diff --git a/runtime-optenv32/lzo+32/spec b/runtime-optenv32/lzo+32/spec new file mode 100644 index 00000000000..c9a75933b42 --- /dev/null +++ b/runtime-optenv32/lzo+32/spec @@ -0,0 +1,4 @@ +VER=2.10 +SRCS="tbl::https://www.oberhumer.com/opensource/lzo/download/lzo-$VER.tar.gz" +CHKSUMS="sha256::c0f892943208266f9b6543b3ae308fab6284c5c90e627931446fb49b4221a072" +CHKUPDATE="anitya::id=1868" From e687a51c45fac66228835b37066ec2e26d27aa31 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 01:26:03 +0800 Subject: [PATCH 176/722] cairo+32: improve packaging - Switch to Meson build options. - Drop some optional dependencies to break dependency loops. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/cairo+32/autobuild/defines | 17 +++++++++++------ runtime-optenv32/cairo+32/spec | 1 + 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/runtime-optenv32/cairo+32/autobuild/defines b/runtime-optenv32/cairo+32/autobuild/defines index 7aa79bf807e..cf5538298cb 100644 --- a/runtime-optenv32/cairo+32/autobuild/defines +++ b/runtime-optenv32/cairo+32/autobuild/defines @@ -1,10 +1,15 @@ PKGNAME=cairo+32 -PKGDEP="x11-lib+32 libdrm+32 libpng-1.6+32 fontconfig+32 glib+32 pixman+32 libspectre+32 poppler+32 librsvg+32" -BUILDDEP="32subsystem" PKGSEC=libs -PKGDES="A 2D graphics library with support for multiple output devices." +PKGDEP="fontconfig+32 glib+32 libdrm+32 libpng-1.6+32 libspectre+32 \ + lzo+32 pixman+32 x11-lib+32" +BUILDDEP="devel-base+32" +PKGDES="A 2D graphics library with support for multiple output devices (32-bit x86 runtime)" +NOLTO=1 ABHOST=optenv32 -AUTOTOOLS_AFTER="--enable-gl --enable-tee --disable-static --enable-egl \ - --enable-svg --enable-ps --enable-pdf --enable-gobject --disable-lto \ - --disable-test-surfaces --disable-full-testing" + +# FIXME: Tests sources were unable to find cairo.h... +# Well it's not installed yet. +MESON_AFTER=( + '-Dtests=disabled' +) diff --git a/runtime-optenv32/cairo+32/spec b/runtime-optenv32/cairo+32/spec index 2c3054f4220..f944785204d 100644 --- a/runtime-optenv32/cairo+32/spec +++ b/runtime-optenv32/cairo+32/spec @@ -1,4 +1,5 @@ VER=1.18.2 +REL=1 SRCS="git::commit=tags/$VER::https://gitlab.freedesktop.org/cairo/cairo" CHKSUMS="SKIP" CHKUPDATE="anitya::id=247" From acf314af9468e79bcac2ef0c14eaef5dba9be3a2 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 13:01:22 +0800 Subject: [PATCH 177/722] librsvg+32: improve packaging - Use optenv32 template and devel-base+32 as base build dep. - Fix build with 32-bit Rust. Co-authored-by: liushuyu --- runtime-optenv32/librsvg+32/autobuild/defines | 19 ++++++++++++------- .../0001-fix-rsvg-rust-optimizations.patch | 11 +++++++++++ runtime-optenv32/librsvg+32/autobuild/prepare | 4 ++++ 3 files changed, 27 insertions(+), 7 deletions(-) create mode 100644 runtime-optenv32/librsvg+32/autobuild/patches/0001-fix-rsvg-rust-optimizations.patch create mode 100644 runtime-optenv32/librsvg+32/autobuild/prepare diff --git a/runtime-optenv32/librsvg+32/autobuild/defines b/runtime-optenv32/librsvg+32/autobuild/defines index 3955108202b..8960c12dc97 100644 --- a/runtime-optenv32/librsvg+32/autobuild/defines +++ b/runtime-optenv32/librsvg+32/autobuild/defines @@ -1,11 +1,16 @@ PKGNAME=librsvg+32 -PKGDES="SVG rendering and manipulation library (optenv32)" PKGSEC=libs -PKGDEP="libxml2+32 pango+32 cairo+32 glib+32 freetype+32" -BUILDDEP="32subsystem rustc cargo-c" +PKGDEP="cairo+32 freetype+32 glib+32 libxml2+32 pango+32" +BUILDDEP="devel-base+32 rustc+32 cargo-c" +PKGDES="SVG rendering and manipulation library (32-bit x86 runtime)" + +MESON_AFTER=( + '-Dvala=disabled' + '-Dintrospection=disabled' + '-Davif=disabled' + '-Dtriplet=i686-unknown-linux-gnu' +) -MESON_AFTER="-Dvala=disabled \ - -Dintrospection=disabled \ - -Davif=disabled" -ABSHADOW=no ABHOST=optenv32 + +USECLANG=1 diff --git a/runtime-optenv32/librsvg+32/autobuild/patches/0001-fix-rsvg-rust-optimizations.patch b/runtime-optenv32/librsvg+32/autobuild/patches/0001-fix-rsvg-rust-optimizations.patch new file mode 100644 index 00000000000..c8fbf451dc4 --- /dev/null +++ b/runtime-optenv32/librsvg+32/autobuild/patches/0001-fix-rsvg-rust-optimizations.patch @@ -0,0 +1,11 @@ +--- a/meson.build 2025-01-01 07:23:59.968444330 +0800 ++++ a/meson.build 2025-01-01 07:24:13.280463226 +0800 +@@ -445,7 +445,7 @@ + ] + + if not get_option('debug') or \ +- (is_msvc_style and get_option('buildtype') == 'debugoptimized') ++ (get_option('buildtype') == 'debugoptimized') + cargo_wrapper_args += ['--release'] + endif + diff --git a/runtime-optenv32/librsvg+32/autobuild/prepare b/runtime-optenv32/librsvg+32/autobuild/prepare new file mode 100644 index 00000000000..0673993cd1d --- /dev/null +++ b/runtime-optenv32/librsvg+32/autobuild/prepare @@ -0,0 +1,4 @@ +abinfo 'Setting LDFLAGS to use LLVM lld ...' +export LDFLAGS="$LDFLAGS -fuse-ld=lld" + +export PATH=/usr/bin:"$PATH" From e4f918ef6087c43371f1dcf0cc2df893719bb7e6 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 13:04:07 +0800 Subject: [PATCH 178/722] gtk-3+32: update to 3.24.38 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/gtk-3+32/autobuild/build | 12 ---------- runtime-optenv32/gtk-3+32/autobuild/defines | 25 +++++++++------------ runtime-optenv32/gtk-3+32/spec | 7 +++--- 3 files changed, 13 insertions(+), 31 deletions(-) delete mode 100644 runtime-optenv32/gtk-3+32/autobuild/build diff --git a/runtime-optenv32/gtk-3+32/autobuild/build b/runtime-optenv32/gtk-3+32/autobuild/build deleted file mode 100644 index 13792a4dc3e..00000000000 --- a/runtime-optenv32/gtk-3+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{etc,bin,share} diff --git a/runtime-optenv32/gtk-3+32/autobuild/defines b/runtime-optenv32/gtk-3+32/autobuild/defines index 512e80bdada..afc49f2c403 100644 --- a/runtime-optenv32/gtk-3+32/autobuild/defines +++ b/runtime-optenv32/gtk-3+32/autobuild/defines @@ -1,19 +1,14 @@ PKGNAME=gtk-3+32 PKGSEC=x11 -PKGDEP="adwaita-icon-theme atk+32 cairo+32 x11-lib+32 pango+32 shared-mime-info \ - at-spi2-atk+32 libxkbcommon+32 libepoxy+32" -BUILDDEP="gtk-doc 32subsystem" -PKGDES="GIMP toolkit version 3 (optenv32)" +PKGDEP="adwaita-icon-theme at-spi2-core+32 cairo+32 gdk-pixbuf+32 libepoxy+32 \ + libxkbcommon+32 pango+32 shared-mime-info+32 wayland+32 x11-lib+32" +BUILDDEP="devel-base+32 gtk-doc" +PKGDES="GIMP toolkit version 3 (32-bit x86 runtime)" + +MESON_AFTER=( + '-Dintrospection=false' + '-Dgtk_doc=false' +) -AUTOTOOLS_AFTER="--enable-gtk2-dependency \ - --disable-schemas-compile \ - --enable-x11-backend \ - --enable-broadway-backend \ - --disable-wayland-backend \ - --disable-introspection \ - --disable-gtk-doc --disable-cups \ - --disable-libcanberra --disable-colord \ - --disable-modules --includedir=/opt/32/include" -ABSHADOW=no NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/gtk-3+32/spec b/runtime-optenv32/gtk-3+32/spec index 591bda63ea8..d6d86cfcab8 100644 --- a/runtime-optenv32/gtk-3+32/spec +++ b/runtime-optenv32/gtk-3+32/spec @@ -1,5 +1,4 @@ -VER=3.22.30 -REL=2 -SRCS="tbl::https://download.gnome.org/sources/gtk+/${VER:0:4}/gtk+-$VER.tar.xz" -CHKSUMS="sha256::a1a4a5c12703d4e1ccda28333b87ff462741dc365131fbc94c218ae81d9a6567" +VER=3.24.38 +SRCS="https://download.gnome.org/sources/gtk+/${VER:0:4}/gtk+-$VER.tar.xz" +CHKSUMS="sha256::ce11decf018b25bdd8505544a4f87242854ec88be054d9ade5f3a20444dd8ee7" CHKUPDATE="anitya::id=10018" From 85d51153cfbfd61a3af67febf4747b736a1e9138 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 13:04:45 +0800 Subject: [PATCH 179/722] poppler+32: drop, orphaned --- runtime-optenv32/poppler+32/autobuild/build | 10 --- runtime-optenv32/poppler+32/autobuild/defines | 9 --- .../0001-workaround-a-bug-in-nss-header.patch | 50 ------------- .../autobuild/patches/CVE-2018-13988.patch | 31 -------- .../autobuild/patches/CVE-2018-16646.patch | 53 ------------- .../autobuild/patches/CVE-2018-19058.patch | 21 ------ .../autobuild/patches/CVE-2018-19059.patch | 39 ---------- .../autobuild/patches/CVE-2018-19060.patch | 74 ------------------- .../autobuild/patches/CVE-2018-19149.patch | 71 ------------------ .../autobuild/patches/CVE-2018-20481.patch | 57 -------------- .../autobuild/patches/CVE-2018-20551.patch | 45 ----------- .../autobuild/patches/CVE-2018-20650.patch | 32 -------- .../autobuild/patches/CVE-2019-7310.patch | 22 ------ .../autobuild/patches/CVE-2019-9200.patch | 27 ------- runtime-optenv32/poppler+32/autobuild/prepare | 2 - runtime-optenv32/poppler+32/spec | 5 -- 16 files changed, 548 deletions(-) delete mode 100644 runtime-optenv32/poppler+32/autobuild/build delete mode 100644 runtime-optenv32/poppler+32/autobuild/defines delete mode 100644 runtime-optenv32/poppler+32/autobuild/patches/0001-workaround-a-bug-in-nss-header.patch delete mode 100644 runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-13988.patch delete mode 100644 runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-16646.patch delete mode 100644 runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-19058.patch delete mode 100644 runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-19059.patch delete mode 100644 runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-19060.patch delete mode 100644 runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-19149.patch delete mode 100644 runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-20481.patch delete mode 100644 runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-20551.patch delete mode 100644 runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-20650.patch delete mode 100644 runtime-optenv32/poppler+32/autobuild/patches/CVE-2019-7310.patch delete mode 100644 runtime-optenv32/poppler+32/autobuild/patches/CVE-2019-9200.patch delete mode 100644 runtime-optenv32/poppler+32/autobuild/prepare delete mode 100644 runtime-optenv32/poppler+32/spec diff --git a/runtime-optenv32/poppler+32/autobuild/build b/runtime-optenv32/poppler+32/autobuild/build deleted file mode 100644 index 521c85a8152..00000000000 --- a/runtime-optenv32/poppler+32/autobuild/build +++ /dev/null @@ -1,10 +0,0 @@ -export PATH=/opt/32/bin:$PATH -cmake . -DCMAKE_INSTALL_PREFIX=/opt/32 -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_C_COMPILER=/opt/32/bin/i686-pc-linux-gnu-gcc \ - -DCMAKE_CXX_COMPILER=/opt/32/bin/i686-pc-linux-gnu-g++ \ - -DCMAKE_FIND_ROOT_PATH=/opt/32 \ - ${CMAKE_AFTER} -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/poppler+32/autobuild/defines b/runtime-optenv32/poppler+32/autobuild/defines deleted file mode 100644 index 1569728f79f..00000000000 --- a/runtime-optenv32/poppler+32/autobuild/defines +++ /dev/null @@ -1,9 +0,0 @@ -PKGNAME=poppler+32 -PKGSEC=libs -PKGDES="A PDF rendering library and command line tools used to manipulate PDF files (optenv32)" -PKGDEP="freetype+32 fontconfig+32 glib+32 cairo+32" -BUILDDEP="32subsystem" - -CMAKE_AFTER="-DENABLE_XPDF_HEADERS=ON -DENABLE_LIBOPENJPEG=none" -NOLTO=1 -ABHOST=noarch diff --git a/runtime-optenv32/poppler+32/autobuild/patches/0001-workaround-a-bug-in-nss-header.patch b/runtime-optenv32/poppler+32/autobuild/patches/0001-workaround-a-bug-in-nss-header.patch deleted file mode 100644 index af48315a61f..00000000000 --- a/runtime-optenv32/poppler+32/autobuild/patches/0001-workaround-a-bug-in-nss-header.patch +++ /dev/null @@ -1,50 +0,0 @@ -From 004cb512cdd1349a247955ecbed7814ea60e909f Mon Sep 17 00:00:00 2001 -From: David Tardon -Date: Mon, 4 Sep 2017 14:59:01 +0200 -Subject: [PATCH] workaround a bug in nss header - ---- - poppler/SignatureInfo.cc | 1 + - qt5/src/poppler-form.cc | 1 + - utils/pdfsig.cc | 1 + - 3 files changed, 3 insertions(+) - -diff --git a/poppler/SignatureInfo.cc b/poppler/SignatureInfo.cc -index 7ca8b96..254d42e 100644 ---- a/poppler/SignatureInfo.cc -+++ b/poppler/SignatureInfo.cc -@@ -19,6 +19,7 @@ - #include - - #ifdef ENABLE_NSS3 -+ #include - #include - #else - static const int HASH_AlgNULL = -1; -diff --git a/qt5/src/poppler-form.cc b/qt5/src/poppler-form.cc -index 02c3a5d..17d4097 100644 ---- a/qt5/src/poppler-form.cc -+++ b/qt5/src/poppler-form.cc -@@ -39,6 +39,7 @@ - #include - - #ifdef ENABLE_NSS3 -+ #include - #include - #endif - -diff --git a/utils/pdfsig.cc b/utils/pdfsig.cc -index 8b5182d..2e0ce7d 100644 ---- a/utils/pdfsig.cc -+++ b/utils/pdfsig.cc -@@ -19,6 +19,7 @@ - #include - #include - #include -+#include - #include - #include "parseargs.h" - #include "Object.h" --- -2.13.5 - diff --git a/runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-13988.patch b/runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-13988.patch deleted file mode 100644 index 7d994e82be6..00000000000 --- a/runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-13988.patch +++ /dev/null @@ -1,31 +0,0 @@ -From 004e3c10df0abda214f0c293f9e269fdd979c5ee Mon Sep 17 00:00:00 2001 -From: Albert Astals Cid -Date: Wed, 18 Jul 2018 20:31:27 +0200 -Subject: Fix crash when Object has negative number - -Spec says object number has to be > 0 and gen has to be >= 0 - -Reported by email ---- - poppler/Parser.cc | 5 +++++ - 1 file changed, 5 insertions(+) - -diff --git a/poppler/Parser.cc b/poppler/Parser.cc -index 39c9a96..8b0093e 100644 ---- a/poppler/Parser.cc -+++ b/poppler/Parser.cc -@@ -154,6 +154,11 @@ Object Parser::getObj(GBool simpleOnly, - const int gen = buf1.getInt(); - shift(); - shift(); -+ -+ if (unlikely(num <= 0 || gen < 0)) { -+ return Object(); -+ } -+ - return Object(num, gen); - } else { - return Object(num); --- -cgit v1.1 - diff --git a/runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-16646.patch b/runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-16646.patch deleted file mode 100644 index aa32100a5c9..00000000000 --- a/runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-16646.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 3d35d209c19c1d3b09b794a0c863ba5de44a9c0a Mon Sep 17 00:00:00 2001 -From: Marek Kasik -Date: Mon, 29 Oct 2018 17:44:47 +0100 -Subject: [PATCH] Avoid cycles in PDF parsing - -Mark objects being processed in Parser::makeStream() as being processed -and check the mark when entering this method to avoid processing -of the same object recursively. -Index: poppler-0.68.0/poppler/Parser.cc -=================================================================== ---- poppler-0.68.0.orig/poppler/Parser.cc -+++ poppler-0.68.0/poppler/Parser.cc -@@ -202,6 +202,18 @@ Stream *Parser::makeStream(Object &&dict - Stream *str; - Goffset length; - Goffset pos, endPos; -+ XRefEntry *entry; -+ -+ if (xref && (entry = xref->getEntry(objNum, false))) { -+ if (!entry->getFlag(XRefEntry::Parsing) || -+ (objNum == 0 && objGen == 0)) { -+ entry->setFlag(XRefEntry::Parsing, true); -+ } else { -+ error(errSyntaxError, getPos(), -+ "Object '{0:d} {1:d} obj' is being already parsed", objNum, objGen); -+ return nullptr; -+ } -+ } - - // get stream start position - lexer->skipToNextLine(); -@@ -283,6 +295,9 @@ Stream *Parser::makeStream(Object &&dict - // get filters - str = str->addFilters(str->getDict(), recursion); - -+ if (entry) -+ entry->setFlag(XRefEntry::Parsing, false); -+ - return str; - } - -Index: poppler-0.68.0/poppler/XRef.h -=================================================================== ---- poppler-0.68.0.orig/poppler/XRef.h -+++ poppler-0.68.0/poppler/XRef.h -@@ -70,6 +70,7 @@ struct XRefEntry { - enum Flag { - // Regular flags - Updated, // Entry was modified -+ Parsing, // Entry is currently being parsed - - // Special flags -- available only after xref->scanSpecialFlags() is run - Unencrypted, // Entry is stored in unencrypted form (meaningless in unencrypted documents) diff --git a/runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-19058.patch b/runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-19058.patch deleted file mode 100644 index 8250887ce86..00000000000 --- a/runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-19058.patch +++ /dev/null @@ -1,21 +0,0 @@ -From 6912e06d9ab19ba28991b5cab3319d61d856bd6d Mon Sep 17 00:00:00 2001 -From: Adam Reichold -Date: Tue, 6 Nov 2018 09:00:02 +0100 -Subject: [PATCH] Check for stream before calling stream methods when saving an - embedded file. - -Closes #659 -Index: poppler-0.68.0/poppler/FileSpec.cc -=================================================================== ---- poppler-0.68.0.orig/poppler/FileSpec.cc -+++ poppler-0.68.0/poppler/FileSpec.cc -@@ -93,6 +93,9 @@ GBool EmbFile::save(const char *path) { - GBool EmbFile::save2(FILE *f) { - int c; - -+ if (unlikely(!m_objStr.isStream())) -+ return false; -+ - m_objStr.streamReset(); - while ((c = m_objStr.streamGetChar()) != EOF) { - fputc(c, f); diff --git a/runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-19059.patch b/runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-19059.patch deleted file mode 100644 index 049b9049ffe..00000000000 --- a/runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-19059.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 77a30e94d96220d7e22dff5b3f0a7f296f01b118 Mon Sep 17 00:00:00 2001 -From: Adam Reichold -Date: Tue, 6 Nov 2018 09:13:41 +0100 -Subject: [PATCH] pdfdetach: Check for valid embedded file before trying to - save it. - -Closes #661 -Index: poppler-0.68.0/utils/pdfdetach.cc -=================================================================== ---- poppler-0.68.0.orig/utils/pdfdetach.cc -+++ poppler-0.68.0/utils/pdfdetach.cc -@@ -250,7 +250,12 @@ int main(int argc, char *argv[]) { - } - *p = '\0'; - -- if (!fileSpec->getEmbeddedFile()->save(path)) { -+ auto *embFile = fileSpec->getEmbeddedFile(); -+ if (!embFile || !embFile->isOk()) { -+ exitCode = 3; -+ goto err2; -+ } -+ if (!embFile->save(path)) { - error(errIO, -1, "Error saving embedded file as '{0:s}'", p); - exitCode = 2; - goto err2; -@@ -295,7 +300,12 @@ int main(int argc, char *argv[]) { - p = path; - } - -- if (!fileSpec->getEmbeddedFile()->save(p)) { -+ auto *embFile = fileSpec->getEmbeddedFile(); -+ if (!embFile || !embFile->isOk()) { -+ exitCode = 3; -+ goto err2; -+ } -+ if (!embFile->save(p)) { - error(errIO, -1, "Error saving embedded file as '{0:s}'", p); - exitCode = 2; - goto err2; diff --git a/runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-19060.patch b/runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-19060.patch deleted file mode 100644 index b2450d32002..00000000000 --- a/runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-19060.patch +++ /dev/null @@ -1,74 +0,0 @@ -From d2f5d424ba8752f9a9e9dad410546ec1b46caa0a Mon Sep 17 00:00:00 2001 -From: Adam Reichold -Date: Tue, 6 Nov 2018 09:08:06 +0100 -Subject: [PATCH] pdfdetach: Check for valid file name of embedded file before - using it to determine save path. - -Closes #660 -Index: poppler-0.68.0/utils/pdfdetach.cc -=================================================================== ---- poppler-0.68.0.orig/utils/pdfdetach.cc -+++ poppler-0.68.0/utils/pdfdetach.cc -@@ -190,14 +190,18 @@ int main(int argc, char *argv[]) { - fileSpec = static_cast(embeddedFiles->get(i)); - printf("%d: ", i+1); - s1 = fileSpec->getFileName(); -- if ((s1->getChar(0) & 0xff) == 0xfe && (s1->getChar(1) & 0xff) == 0xff) { -+ if (!s1) { -+ exitCode = 3; -+ goto err2; -+ } -+ if (s1->hasUnicodeMarker()) { - isUnicode = gTrue; - j = 2; - } else { - isUnicode = gFalse; - j = 0; - } -- while (j < fileSpec->getFileName()->getLength()) { -+ while (j < s1->getLength()) { - if (isUnicode) { - u = ((s1->getChar(j) & 0xff) << 8) | (s1->getChar(j+1) & 0xff); - j += 2; -@@ -227,14 +231,18 @@ int main(int argc, char *argv[]) { - p = path; - } - s1 = fileSpec->getFileName(); -- if ((s1->getChar(0) & 0xff) == 0xfe && (s1->getChar(1) & 0xff) == 0xff) { -+ if (!s1) { -+ exitCode = 3; -+ goto err2; -+ } -+ if (s1->hasUnicodeMarker()) { - isUnicode = gTrue; - j = 2; - } else { - isUnicode = gFalse; - j = 0; - } -- while (j < fileSpec->getFileName()->getLength()) { -+ while (j < s1->getLength()) { - if (isUnicode) { - u = ((s1->getChar(j) & 0xff) << 8) | (s1->getChar(j+1) & 0xff); - j += 2; -@@ -275,14 +283,18 @@ int main(int argc, char *argv[]) { - } else { - p = path; - s1 = fileSpec->getFileName(); -- if ((s1->getChar(0) & 0xff) == 0xfe && (s1->getChar(1) & 0xff) == 0xff) { -+ if (!s1) { -+ exitCode = 3; -+ goto err2; -+ } -+ if (s1->hasUnicodeMarker()) { - isUnicode = gTrue; - j = 2; - } else { - isUnicode = gFalse; - j = 0; - } -- while (j < fileSpec->getFileName()->getLength()) { -+ while (j < s1->getLength()) { - if (isUnicode) { - u = ((s1->getChar(j) & 0xff) << 8) | (s1->getChar(j+1) & 0xff); - j += 2; diff --git a/runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-19149.patch b/runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-19149.patch deleted file mode 100644 index ea1aaaed5e7..00000000000 --- a/runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-19149.patch +++ /dev/null @@ -1,71 +0,0 @@ -From f162ecdea0dda5dbbdb45503c1d55d9afaa41d44 Mon Sep 17 00:00:00 2001 -From: Marek Kasik -Date: Fri, 20 Apr 2018 11:38:13 +0200 -Subject: [PATCH] Fix crash on missing embedded file - -Check whether an embedded file is actually present in the PDF -and show warning in that case. - -https://bugs.freedesktop.org/show_bug.cgi?id=106137 -https://gitlab.freedesktop.org/poppler/poppler/issues/236 ---- - glib/poppler-attachment.cc | 26 +++++++++++++++++--------- - glib/poppler-document.cc | 3 ++- - 2 files changed, 19 insertions(+), 10 deletions(-) - -diff --git a/glib/poppler-attachment.cc b/glib/poppler-attachment.cc -index c6502e9d..11ba5bb5 100644 ---- a/glib/poppler-attachment.cc -+++ b/glib/poppler-attachment.cc -@@ -111,17 +111,25 @@ _poppler_attachment_new (FileSpec *emb_file) - attachment->description = _poppler_goo_string_to_utf8 (emb_file->getDescription ()); - - embFile = emb_file->getEmbeddedFile(); -- attachment->size = embFile->size (); -+ if (embFile != NULL && embFile->streamObject()->isStream()) -+ { -+ attachment->size = embFile->size (); - -- if (embFile->createDate ()) -- _poppler_convert_pdf_date_to_gtime (embFile->createDate (), (time_t *)&attachment->ctime); -- if (embFile->modDate ()) -- _poppler_convert_pdf_date_to_gtime (embFile->modDate (), (time_t *)&attachment->mtime); -+ if (embFile->createDate ()) -+ _poppler_convert_pdf_date_to_gtime (embFile->createDate (), (time_t *)&attachment->ctime); -+ if (embFile->modDate ()) -+ _poppler_convert_pdf_date_to_gtime (embFile->modDate (), (time_t *)&attachment->mtime); - -- if (embFile->checksum () && embFile->checksum ()->getLength () > 0) -- attachment->checksum = g_string_new_len (embFile->checksum ()->getCString (), -- embFile->checksum ()->getLength ()); -- priv->obj_stream = embFile->streamObject()->copy(); -+ if (embFile->checksum () && embFile->checksum ()->getLength () > 0) -+ attachment->checksum = g_string_new_len (embFile->checksum ()->getCString (), -+ embFile->checksum ()->getLength ()); -+ priv->obj_stream = embFile->streamObject()->copy(); -+ } -+ else -+ { -+ g_warning ("Missing stream object for embedded file"); -+ g_clear_object (&attachment); -+ } - - return attachment; - } -diff --git a/glib/poppler-document.cc b/glib/poppler-document.cc -index 83f6aea6..ea319344 100644 ---- a/glib/poppler-document.cc -+++ b/glib/poppler-document.cc -@@ -670,7 +670,8 @@ poppler_document_get_attachments (PopplerDocument *document) - attachment = _poppler_attachment_new (emb_file); - delete emb_file; - -- retval = g_list_prepend (retval, attachment); -+ if (attachment != NULL) -+ retval = g_list_prepend (retval, attachment); - } - return g_list_reverse (retval); - } --- -2.18.1 - diff --git a/runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-20481.patch b/runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-20481.patch deleted file mode 100644 index e3cad975cd0..00000000000 --- a/runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-20481.patch +++ /dev/null @@ -1,57 +0,0 @@ -Backported of: - -From 39a251b1b3a3343400a08e2f03c5518a26624626 Mon Sep 17 00:00:00 2001 -From: Adam Reichold -Date: Mon, 24 Dec 2018 15:40:38 +0100 -Subject: [PATCH] Do not try to parse into unallocated XRef entry and return - pointer to dummy entry instead. Closes #692 and oss-fuzz/12330 -diff --git a/poppler/XRef.cc b/poppler/XRef.cc -index 4352146..f70bed7 100644 ---- a/poppler/XRef.cc -+++ b/poppler/XRef.cc -@@ -1616,11 +1616,31 @@ void XRef::readXRefUntil(int untilEntryNum, std::vector *xrefStreamObjsNum) - } - } - -+namespace { -+ -+struct DummyXRefEntry : XRefEntry { -+ DummyXRefEntry() { -+ offset = 0; -+ gen = -1; -+ type = xrefEntryNone; -+ flags = 0; -+ } -+}; -+ -+DummyXRefEntry dummyXRefEntry; -+ -+} -+ - XRefEntry *XRef::getEntry(int i, GBool complainIfMissing) - { - if (i >= size || entries[i].type == xrefEntryNone) { - - if ((!xRefStream) && mainXRefEntriesOffset) { -+ if (unlikely(i >= capacity)) { -+ error(errInternal, -1, "Request for out-of-bounds XRef entry [{0:d}]", i); -+ return &dummyXRefEntry; -+ } -+ - if (!parseEntry(mainXRefEntriesOffset + 20*i, &entries[i])) { - error(errSyntaxError, -1, "Failed to parse XRef entry [{0:d}].", i); - } -@@ -1631,12 +1651,7 @@ XRefEntry *XRef::getEntry(int i, GBool complainIfMissing) - // We might have reconstructed the xref - // Check again i is in bounds - if (unlikely(i >= size)) { -- static XRefEntry dummy; -- dummy.offset = 0; -- dummy.gen = -1; -- dummy.type = xrefEntryNone; -- dummy.flags = 0; -- return &dummy; -+ return &dummyXRefEntry; - } - - if (entries[i].type == xrefEntryNone) { diff --git a/runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-20551.patch b/runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-20551.patch deleted file mode 100644 index 7127490c4ac..00000000000 --- a/runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-20551.patch +++ /dev/null @@ -1,45 +0,0 @@ -Backported of: - -From 7f87dc10b6adccd6d1b977a28b064add254aa2da Mon Sep 17 00:00:00 2001 -From: Adam Reichold -Date: Thu, 27 Dec 2018 11:54:53 +0100 -Subject: [PATCH] Do not try to construct invalid rich media annotation assets. - Closes #703 - -Index: poppler-0.68.0/poppler/Annot.cc -=================================================================== ---- poppler-0.68.0.orig/poppler/Annot.cc -+++ poppler-0.68.0/poppler/Annot.cc -@@ -6517,19 +6517,22 @@ AnnotRichMedia::Content::Content(Dict *d - if (obj1.isDict()) { - Object obj2 = obj1.getDict()->lookup("Names"); - if (obj2.isArray()) { -- nAssets = obj2.arrayGetLength() / 2; -+ const int length = obj2.arrayGetLength() / 2; - -- assets = (Asset **)gmallocn(nAssets, sizeof(Asset *)); -+ assets = (Asset **)gmallocn(length, sizeof(Asset *)); -+ for (int i = 0; i < length; ++i) { -+ Object objKey = obj2.arrayGet(2 * i); -+ Object objVal = obj2.arrayGet(2 * i + 1); - -- int counter = 0; -- for (int i = 0; i < nAssets; ++i) { -- assets[counter] = new AnnotRichMedia::Asset; -+ if (!objKey.isString() || objVal.isNull()) { -+ error(errSyntaxError, -1, "Bad Annot Asset"); -+ continue; -+ } - -- Object objKey = obj2.arrayGet(i * 2); -- assets[counter]->fileSpec = obj2.arrayGet(i * 2 + 1); -- -- assets[counter]->name = new GooString( objKey.getString() ); -- ++counter; -+ assets[nAssets] = new AnnotRichMedia::Asset; -+ assets[nAssets]->name = new GooString( objKey.getString() ); -+ assets[nAssets]->fileSpec = std::move(objVal); -+ ++nAssets; - - } - } diff --git a/runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-20650.patch b/runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-20650.patch deleted file mode 100644 index 35eab1e4f42..00000000000 --- a/runtime-optenv32/poppler+32/autobuild/patches/CVE-2018-20650.patch +++ /dev/null @@ -1,32 +0,0 @@ -From de0c0b8324e776f0b851485e0fc9622fc35695b7 Mon Sep 17 00:00:00 2001 -From: Albert Astals Cid -Date: Sat, 29 Dec 2018 01:25:17 +0100 -Subject: [PATCH] FileSpec: Move the fileSpec.dictLookup call inside - fileSpec.isDict if - -Fixes #704 ---- - poppler/FileSpec.cc | 9 +++++---- - 1 file changed, 5 insertions(+), 4 deletions(-) - -Index: poppler-0.68.0/poppler/FileSpec.cc -=================================================================== ---- poppler-0.68.0.orig/poppler/FileSpec.cc -+++ poppler-0.68.0/poppler/FileSpec.cc -@@ -132,11 +132,12 @@ FileSpec::FileSpec(const Object *fileSpe - return; - } - } -- } - -- obj1 = fileSpec.dictLookup("Desc"); -- if (obj1.isString()) -- desc = obj1.getString()->copy(); -+ obj1 = fileSpec.dictLookup("Desc"); -+ if (obj1.isString()) { -+ desc = obj1.getString()->copy(); -+ } -+ } - } - - FileSpec::~FileSpec() diff --git a/runtime-optenv32/poppler+32/autobuild/patches/CVE-2019-7310.patch b/runtime-optenv32/poppler+32/autobuild/patches/CVE-2019-7310.patch deleted file mode 100644 index 33bab7eb0f8..00000000000 --- a/runtime-optenv32/poppler+32/autobuild/patches/CVE-2019-7310.patch +++ /dev/null @@ -1,22 +0,0 @@ -From b54e1fc3e0d2600621a28d50f9f085b9e38619c2 Mon Sep 17 00:00:00 2001 -From: Adam Reichold -Date: Fri, 1 Feb 2019 08:42:27 +0100 -Subject: [PATCH] Also defend against requests for negative XRef indices. - oss-fuzz/12797 - -Index: poppler-0.68.0/poppler/XRef.cc -=================================================================== ---- poppler-0.68.0.orig/poppler/XRef.cc -+++ poppler-0.68.0/poppler/XRef.cc -@@ -1633,6 +1633,11 @@ DummyXRefEntry dummyXRefEntry; - - XRefEntry *XRef::getEntry(int i, GBool complainIfMissing) - { -+ if (unlikely(i < 0)) { -+ error(errInternal, -1, "Request for invalid XRef entry [{0:d}]", i); -+ return &dummyXRefEntry; -+ } -+ - if (i >= size || entries[i].type == xrefEntryNone) { - - if ((!xRefStream) && mainXRefEntriesOffset) { diff --git a/runtime-optenv32/poppler+32/autobuild/patches/CVE-2019-9200.patch b/runtime-optenv32/poppler+32/autobuild/patches/CVE-2019-9200.patch deleted file mode 100644 index d7f1d3c8a1e..00000000000 --- a/runtime-optenv32/poppler+32/autobuild/patches/CVE-2019-9200.patch +++ /dev/null @@ -1,27 +0,0 @@ -From f4136a6353162db249f63ddb0f20611622ab61b4 Mon Sep 17 00:00:00 2001 -From: Albert Astals Cid -Date: Wed, 27 Feb 2019 19:43:22 +0100 -Subject: [PATCH] ImageStream::getLine: fix crash on broken files - -Fixes #728 ---- - poppler/Stream.cc | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/poppler/Stream.cc b/poppler/Stream.cc -index 33537b0e..a41435ab 100644 ---- a/poppler/Stream.cc -+++ b/poppler/Stream.cc -@@ -496,6 +496,9 @@ unsigned char *ImageStream::getLine() { - } - - int readChars = str->doGetChars(inputLineSize, inputLine); -+ if (unlikely(readChars == -1)) { -+ readChars = 0; -+ } - for ( ; readChars < inputLineSize; readChars++) inputLine[readChars] = EOF; - if (nBits == 1) { - unsigned char *p = inputLine; --- -2.18.1 - diff --git a/runtime-optenv32/poppler+32/autobuild/prepare b/runtime-optenv32/poppler+32/autobuild/prepare deleted file mode 100644 index c098495da05..00000000000 --- a/runtime-optenv32/poppler+32/autobuild/prepare +++ /dev/null @@ -1,2 +0,0 @@ -export LDFLAGS="${LDFLAGS}" -export PKG_CONFIG_PATH=/opt/32/lib/pkgconfig:/opt/32/share/pkgconfig diff --git a/runtime-optenv32/poppler+32/spec b/runtime-optenv32/poppler+32/spec deleted file mode 100644 index 703829b1f0c..00000000000 --- a/runtime-optenv32/poppler+32/spec +++ /dev/null @@ -1,5 +0,0 @@ -VER=0.66.0 -REL=6 -SRCS="tbl::https://poppler.freedesktop.org/poppler-$VER.tar.xz" -CHKSUMS="sha256::2c096431adfb74bc2f53be466889b7646e1b599f28fa036094f3f7235cc9eae7" -CHKUPDATE="anitya::id=3686" From 1dffb11d018db28f1ecd9b66bee872754cd18039 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 16:45:18 +0800 Subject: [PATCH 180/722] libtiff+32: update to 4.4.0 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libtiff+32/autobuild/build | 9 - runtime-optenv32/libtiff+32/autobuild/defines | 7 +- .../autobuild/patches/CVE-2019-6128.patch | 49 -- .../patches/libtiff-CVE-2019-14973.patch | 424 ------------------ runtime-optenv32/libtiff+32/spec | 5 +- 5 files changed, 6 insertions(+), 488 deletions(-) delete mode 100644 runtime-optenv32/libtiff+32/autobuild/build delete mode 100644 runtime-optenv32/libtiff+32/autobuild/patches/CVE-2019-6128.patch delete mode 100644 runtime-optenv32/libtiff+32/autobuild/patches/libtiff-CVE-2019-14973.patch diff --git a/runtime-optenv32/libtiff+32/autobuild/build b/runtime-optenv32/libtiff+32/autobuild/build deleted file mode 100644 index a7a3c358f4d..00000000000 --- a/runtime-optenv32/libtiff+32/autobuild/build +++ /dev/null @@ -1,9 +0,0 @@ -export PATH=/opt/32/bin:$PATH -CC=i686-pc-linux-gnu-gcc -CXX=i686-pc-linux-gnu-g++ -./configure --host=i686-pc-linux-gnu --build=i686-pc-linux-gnu \ - --enable-shared --prefix=/opt/32 --disable-static -make -make DESTDIR="$PKGDIR" install - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/libtiff+32/autobuild/defines b/runtime-optenv32/libtiff+32/autobuild/defines index 44b927db2c7..5712c9bc112 100644 --- a/runtime-optenv32/libtiff+32/autobuild/defines +++ b/runtime-optenv32/libtiff+32/autobuild/defines @@ -1,7 +1,8 @@ PKGNAME=libtiff+32 -PKGDES="Library for manipulation of TIFF images (optenv32)" PKGSEC=libs PKGDEP="glibc+32 libjpeg-turbo+32 x11-lib+32" -BUILDDEP="32subsystem" +BUILDDEP="devel-base+32" +PKGDES="Library for manipulation of TIFF images (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libtiff+32/autobuild/patches/CVE-2019-6128.patch b/runtime-optenv32/libtiff+32/autobuild/patches/CVE-2019-6128.patch deleted file mode 100644 index cd425950799..00000000000 --- a/runtime-optenv32/libtiff+32/autobuild/patches/CVE-2019-6128.patch +++ /dev/null @@ -1,49 +0,0 @@ -From 0c74a9f49b8d7a36b17b54a7428b3526d20f88a8 Mon Sep 17 00:00:00 2001 -From: Scott Gayou -Date: Wed, 23 Jan 2019 15:03:53 -0500 -Subject: [PATCH] Fix for simple memory leak that was assigned CVE-2019-6128. - -pal2rgb failed to free memory on a few errors. This was reported -here: http://bugzilla.maptools.org/show_bug.cgi?id=2836. ---- - tools/pal2rgb.c | 7 ++++++- - 1 file changed, 6 insertions(+), 1 deletion(-) - -diff --git a/tools/pal2rgb.c b/tools/pal2rgb.c -index 01d8502e..9492f1cf 100644 ---- a/tools/pal2rgb.c -+++ b/tools/pal2rgb.c -@@ -118,12 +118,14 @@ main(int argc, char* argv[]) - shortv != PHOTOMETRIC_PALETTE) { - fprintf(stderr, "%s: Expecting a palette image.\n", - argv[optind]); -+ (void) TIFFClose(in); - return (-1); - } - if (!TIFFGetField(in, TIFFTAG_COLORMAP, &rmap, &gmap, &bmap)) { - fprintf(stderr, - "%s: No colormap (not a valid palette image).\n", - argv[optind]); -+ (void) TIFFClose(in); - return (-1); - } - bitspersample = 0; -@@ -131,11 +133,14 @@ main(int argc, char* argv[]) - if (bitspersample != 8) { - fprintf(stderr, "%s: Sorry, can only handle 8-bit images.\n", - argv[optind]); -+ (void) TIFFClose(in); - return (-1); - } - out = TIFFOpen(argv[optind+1], "w"); -- if (out == NULL) -+ if (out == NULL) { -+ (void) TIFFClose(in); - return (-2); -+ } - cpTags(in, out); - TIFFGetField(in, TIFFTAG_IMAGEWIDTH, &imagewidth); - TIFFGetField(in, TIFFTAG_IMAGELENGTH, &imagelength); --- -2.18.1 - diff --git a/runtime-optenv32/libtiff+32/autobuild/patches/libtiff-CVE-2019-14973.patch b/runtime-optenv32/libtiff+32/autobuild/patches/libtiff-CVE-2019-14973.patch deleted file mode 100644 index f98ea1e2dcc..00000000000 --- a/runtime-optenv32/libtiff+32/autobuild/patches/libtiff-CVE-2019-14973.patch +++ /dev/null @@ -1,424 +0,0 @@ -From 218c3753fba788c78a9b5e515e884043f6e2ba28 Mon Sep 17 00:00:00 2001 -From: Even Rouault -Date: Sat, 10 Aug 2019 18:25:03 +0200 -Subject: [PATCH] Fix integer overflow in _TIFFCheckMalloc() and other - implementation-defined behaviour (CVE-2019-14973) - -_TIFFCheckMalloc()/_TIFFCheckRealloc() used a unsafe way to detect overflow -in the multiplication of nmemb and elem_size (which are of type tmsize_t, thus -signed), which was especially easily triggered on 32-bit builds (with recent -enough compilers that assume that signed multiplication cannot overflow, since -this is undefined behaviour by the C standard). The original issue which lead to -this fix was trigged from tif_fax3.c - -There were also unsafe (implementation defied), and broken in practice on 64bit -builds, ways of checking that a uint64 fits of a (signed) tmsize_t by doing -(uint64)(tmsize_t)uint64_var != uint64_var comparisons. Those have no known -at that time exploits, but are better to fix in a more bullet-proof way. -Or similarly use of (int64)uint64_var <= 0. ---- - libtiff/tif_aux.c | 49 +++++++++++++++++++++++++++++++++++++----- - libtiff/tif_getimage.c | 6 ++---- - libtiff/tif_luv.c | 8 +------ - libtiff/tif_pixarlog.c | 7 +----- - libtiff/tif_read.c | 38 +++++++++----------------------- - libtiff/tif_strip.c | 35 ++++-------------------------- - libtiff/tif_tile.c | 27 +++-------------------- - libtiff/tiffiop.h | 7 +++++- - 8 files changed, 71 insertions(+), 106 deletions(-) - -diff --git a/libtiff/tif_aux.c b/libtiff/tif_aux.c -index 10b8d00..38a98b6 100644 ---- a/libtiff/tif_aux.c -+++ b/libtiff/tif_aux.c -@@ -59,18 +59,57 @@ _TIFFMultiply64(TIFF* tif, uint64 first, uint64 second, const char* where) - return bytes; - } - -+tmsize_t -+_TIFFMultiplySSize(TIFF* tif, tmsize_t first, tmsize_t second, const char* where) -+{ -+ if( first <= 0 || second <= 0 ) -+ { -+ if( tif != NULL && where != NULL ) -+ { -+ TIFFErrorExt(tif->tif_clientdata, where, -+ "Invalid argument to _TIFFMultiplySSize() in %s", where); -+ } -+ return 0; -+ } -+ -+ if( first > TIFF_TMSIZE_T_MAX / second ) -+ { -+ if( tif != NULL && where != NULL ) -+ { -+ TIFFErrorExt(tif->tif_clientdata, where, -+ "Integer overflow in %s", where); -+ } -+ return 0; -+ } -+ return first * second; -+} -+ -+tmsize_t _TIFFCastUInt64ToSSize(TIFF* tif, uint64 val, const char* module) -+{ -+ if( val > (uint64)TIFF_TMSIZE_T_MAX ) -+ { -+ if( tif != NULL && module != NULL ) -+ { -+ TIFFErrorExt(tif->tif_clientdata,module,"Integer overflow"); -+ } -+ return 0; -+ } -+ return (tmsize_t)val; -+} -+ - void* - _TIFFCheckRealloc(TIFF* tif, void* buffer, - tmsize_t nmemb, tmsize_t elem_size, const char* what) - { - void* cp = NULL; -- tmsize_t bytes = nmemb * elem_size; -- -+ tmsize_t count = _TIFFMultiplySSize(tif, nmemb, elem_size, NULL); - /* -- * XXX: Check for integer overflow. -+ * Check for integer overflow. - */ -- if (nmemb && elem_size && bytes / elem_size == nmemb) -- cp = _TIFFrealloc(buffer, bytes); -+ if (count != 0) -+ { -+ cp = _TIFFrealloc(buffer, count); -+ } - - if (cp == NULL) { - TIFFErrorExt(tif->tif_clientdata, tif->tif_name, -diff --git a/libtiff/tif_getimage.c b/libtiff/tif_getimage.c -index fc554cc..ec09fea 100644 ---- a/libtiff/tif_getimage.c -+++ b/libtiff/tif_getimage.c -@@ -757,9 +757,8 @@ gtTileSeparate(TIFFRGBAImage* img, uint32* raster, uint32 w, uint32 h) - uint32 leftmost_tw; - - tilesize = TIFFTileSize(tif); -- bufsize = TIFFSafeMultiply(tmsize_t,alpha?4:3,tilesize); -+ bufsize = _TIFFMultiplySSize(tif, alpha?4:3,tilesize, "gtTileSeparate"); - if (bufsize == 0) { -- TIFFErrorExt(tif->tif_clientdata, TIFFFileName(tif), "Integer overflow in %s", "gtTileSeparate"); - return (0); - } - -@@ -1021,9 +1020,8 @@ gtStripSeparate(TIFFRGBAImage* img, uint32* raster, uint32 w, uint32 h) - uint16 colorchannels; - - stripsize = TIFFStripSize(tif); -- bufsize = TIFFSafeMultiply(tmsize_t,alpha?4:3,stripsize); -+ bufsize = _TIFFMultiplySSize(tif,alpha?4:3,stripsize, "gtStripSeparate"); - if (bufsize == 0) { -- TIFFErrorExt(tif->tif_clientdata, TIFFFileName(tif), "Integer overflow in %s", "gtStripSeparate"); - return (0); - } - -diff --git a/libtiff/tif_luv.c b/libtiff/tif_luv.c -index 4b25244..c4cb73a 100644 ---- a/libtiff/tif_luv.c -+++ b/libtiff/tif_luv.c -@@ -1264,16 +1264,10 @@ LogL16GuessDataFmt(TIFFDirectory *td) - return (SGILOGDATAFMT_UNKNOWN); - } - -- --#define TIFF_SIZE_T_MAX ((size_t) ~ ((size_t)0)) --#define TIFF_TMSIZE_T_MAX (tmsize_t)(TIFF_SIZE_T_MAX >> 1) -- - static tmsize_t - multiply_ms(tmsize_t m1, tmsize_t m2) - { -- if( m1 == 0 || m2 > TIFF_TMSIZE_T_MAX / m1 ) -- return 0; -- return m1 * m2; -+ return _TIFFMultiplySSize(NULL, m1, m2, NULL); - } - - static int -diff --git a/libtiff/tif_pixarlog.c b/libtiff/tif_pixarlog.c -index 979858d..8e9eaa1 100644 ---- a/libtiff/tif_pixarlog.c -+++ b/libtiff/tif_pixarlog.c -@@ -636,15 +636,10 @@ PixarLogGuessDataFmt(TIFFDirectory *td) - return guess; - } - --#define TIFF_SIZE_T_MAX ((size_t) ~ ((size_t)0)) --#define TIFF_TMSIZE_T_MAX (tmsize_t)(TIFF_SIZE_T_MAX >> 1) -- - static tmsize_t - multiply_ms(tmsize_t m1, tmsize_t m2) - { -- if( m1 == 0 || m2 > TIFF_TMSIZE_T_MAX / m1 ) -- return 0; -- return m1 * m2; -+ return _TIFFMultiplySSize(NULL, m1, m2, NULL); - } - - static tmsize_t -diff --git a/libtiff/tif_read.c b/libtiff/tif_read.c -index 04100f4..9a0e6e9 100644 ---- a/libtiff/tif_read.c -+++ b/libtiff/tif_read.c -@@ -31,9 +31,6 @@ - #include "tiffiop.h" - #include - --#define TIFF_SIZE_T_MAX ((size_t) ~ ((size_t)0)) --#define TIFF_TMSIZE_T_MAX (tmsize_t)(TIFF_SIZE_T_MAX >> 1) -- - int TIFFFillStrip(TIFF* tif, uint32 strip); - int TIFFFillTile(TIFF* tif, uint32 tile); - static int TIFFStartStrip(TIFF* tif, uint32 strip); -@@ -51,6 +48,8 @@ TIFFReadRawTile1(TIFF* tif, uint32 tile, void* buf, tmsize_t size, const char* m - #define THRESHOLD_MULTIPLIER 10 - #define MAX_THRESHOLD (THRESHOLD_MULTIPLIER * THRESHOLD_MULTIPLIER * THRESHOLD_MULTIPLIER * INITIAL_THRESHOLD) - -+#define TIFF_INT64_MAX ((((int64)0x7FFFFFFF) << 32) | 0xFFFFFFFF) -+ - /* Read 'size' bytes in tif_rawdata buffer starting at offset 'rawdata_offset' - * Returns 1 in case of success, 0 otherwise. */ - static int TIFFReadAndRealloc( TIFF* tif, tmsize_t size, -@@ -735,23 +734,8 @@ TIFFReadRawStrip(TIFF* tif, uint32 strip, void* buf, tmsize_t size) - return ((tmsize_t)(-1)); - } - bytecount = td->td_stripbytecount[strip]; -- if ((int64)bytecount <= 0) { --#if defined(__WIN32__) && (defined(_MSC_VER) || defined(__MINGW32__)) -- TIFFErrorExt(tif->tif_clientdata, module, -- "%I64u: Invalid strip byte count, strip %lu", -- (unsigned __int64) bytecount, -- (unsigned long) strip); --#else -- TIFFErrorExt(tif->tif_clientdata, module, -- "%llu: Invalid strip byte count, strip %lu", -- (unsigned long long) bytecount, -- (unsigned long) strip); --#endif -- return ((tmsize_t)(-1)); -- } -- bytecountm = (tmsize_t)bytecount; -- if ((uint64)bytecountm!=bytecount) { -- TIFFErrorExt(tif->tif_clientdata, module, "Integer overflow"); -+ bytecountm = _TIFFCastUInt64ToSSize(tif, bytecount, module); -+ if (bytecountm == 0) { - return ((tmsize_t)(-1)); - } - if (size != (tmsize_t)(-1) && size < bytecountm) -@@ -775,7 +759,7 @@ TIFFFillStrip(TIFF* tif, uint32 strip) - if ((tif->tif_flags&TIFF_NOREADRAW)==0) - { - uint64 bytecount = td->td_stripbytecount[strip]; -- if ((int64)bytecount <= 0) { -+ if( bytecount == 0 || bytecount > (uint64)TIFF_INT64_MAX ) { - #if defined(__WIN32__) && (defined(_MSC_VER) || defined(__MINGW32__)) - TIFFErrorExt(tif->tif_clientdata, module, - "Invalid strip byte count %I64u, strip %lu", -@@ -802,7 +786,7 @@ TIFFFillStrip(TIFF* tif, uint32 strip) - (bytecount - 4096) / 10 > (uint64)stripsize ) - { - uint64 newbytecount = (uint64)stripsize * 10 + 4096; -- if( (int64)newbytecount >= 0 ) -+ if( newbytecount == 0 || newbytecount > (uint64)TIFF_INT64_MAX ) - { - #if defined(__WIN32__) && (defined(_MSC_VER) || defined(__MINGW32__)) - TIFFWarningExt(tif->tif_clientdata, module, -@@ -1197,10 +1181,8 @@ TIFFReadRawTile(TIFF* tif, uint32 tile, void* buf, tmsize_t size) - bytecount64 = td->td_stripbytecount[tile]; - if (size != (tmsize_t)(-1) && (uint64)size < bytecount64) - bytecount64 = (uint64)size; -- bytecountm = (tmsize_t)bytecount64; -- if ((uint64)bytecountm!=bytecount64) -- { -- TIFFErrorExt(tif->tif_clientdata,module,"Integer overflow"); -+ bytecountm = _TIFFCastUInt64ToSSize(tif, bytecount64, module); -+ if( bytecountm == 0 ) { - return ((tmsize_t)(-1)); - } - return (TIFFReadRawTile1(tif, tile, buf, bytecountm, module)); -@@ -1222,7 +1204,7 @@ TIFFFillTile(TIFF* tif, uint32 tile) - if ((tif->tif_flags&TIFF_NOREADRAW)==0) - { - uint64 bytecount = td->td_stripbytecount[tile]; -- if ((int64)bytecount <= 0) { -+ if( bytecount == 0 || bytecount > (uint64)TIFF_INT64_MAX ) { - #if defined(__WIN32__) && (defined(_MSC_VER) || defined(__MINGW32__)) - TIFFErrorExt(tif->tif_clientdata, module, - "%I64u: Invalid tile byte count, tile %lu", -@@ -1249,7 +1231,7 @@ TIFFFillTile(TIFF* tif, uint32 tile) - (bytecount - 4096) / 10 > (uint64)stripsize ) - { - uint64 newbytecount = (uint64)stripsize * 10 + 4096; -- if( (int64)newbytecount >= 0 ) -+ if( newbytecount == 0 || newbytecount > (uint64)TIFF_INT64_MAX ) - { - #if defined(__WIN32__) && (defined(_MSC_VER) || defined(__MINGW32__)) - TIFFWarningExt(tif->tif_clientdata, module, -diff --git a/libtiff/tif_strip.c b/libtiff/tif_strip.c -index 6e9f2ef..321ad6b 100644 ---- a/libtiff/tif_strip.c -+++ b/libtiff/tif_strip.c -@@ -131,15 +131,8 @@ TIFFVStripSize(TIFF* tif, uint32 nrows) - { - static const char module[] = "TIFFVStripSize"; - uint64 m; -- tmsize_t n; - m=TIFFVStripSize64(tif,nrows); -- n=(tmsize_t)m; -- if ((uint64)n!=m) -- { -- TIFFErrorExt(tif->tif_clientdata,module,"Integer overflow"); -- n=0; -- } -- return(n); -+ return _TIFFCastUInt64ToSSize(tif, m, module); - } - - /* -@@ -213,15 +206,8 @@ TIFFStripSize(TIFF* tif) - { - static const char module[] = "TIFFStripSize"; - uint64 m; -- tmsize_t n; - m=TIFFStripSize64(tif); -- n=(tmsize_t)m; -- if ((uint64)n!=m) -- { -- TIFFErrorExt(tif->tif_clientdata,module,"Integer overflow"); -- n=0; -- } -- return(n); -+ return _TIFFCastUInt64ToSSize(tif, m, module); - } - - /* -@@ -332,14 +318,8 @@ TIFFScanlineSize(TIFF* tif) - { - static const char module[] = "TIFFScanlineSize"; - uint64 m; -- tmsize_t n; - m=TIFFScanlineSize64(tif); -- n=(tmsize_t)m; -- if ((uint64)n!=m) { -- TIFFErrorExt(tif->tif_clientdata,module,"Integer arithmetic overflow"); -- n=0; -- } -- return(n); -+ return _TIFFCastUInt64ToSSize(tif, m, module); - } - - /* -@@ -368,15 +348,8 @@ TIFFRasterScanlineSize(TIFF* tif) - { - static const char module[] = "TIFFRasterScanlineSize"; - uint64 m; -- tmsize_t n; - m=TIFFRasterScanlineSize64(tif); -- n=(tmsize_t)m; -- if ((uint64)n!=m) -- { -- TIFFErrorExt(tif->tif_clientdata,module,"Integer arithmetic overflow"); -- n=0; -- } -- return(n); -+ return _TIFFCastUInt64ToSSize(tif, m, module); - } - - /* vim: set ts=8 sts=8 sw=8 noet: */ -diff --git a/libtiff/tif_tile.c b/libtiff/tif_tile.c -index 388e168..7d05750 100644 ---- a/libtiff/tif_tile.c -+++ b/libtiff/tif_tile.c -@@ -183,15 +183,8 @@ TIFFTileRowSize(TIFF* tif) - { - static const char module[] = "TIFFTileRowSize"; - uint64 m; -- tmsize_t n; - m=TIFFTileRowSize64(tif); -- n=(tmsize_t)m; -- if ((uint64)n!=m) -- { -- TIFFErrorExt(tif->tif_clientdata,module,"Integer overflow"); -- n=0; -- } -- return(n); -+ return _TIFFCastUInt64ToSSize(tif, m, module); - } - - /* -@@ -250,15 +243,8 @@ TIFFVTileSize(TIFF* tif, uint32 nrows) - { - static const char module[] = "TIFFVTileSize"; - uint64 m; -- tmsize_t n; - m=TIFFVTileSize64(tif,nrows); -- n=(tmsize_t)m; -- if ((uint64)n!=m) -- { -- TIFFErrorExt(tif->tif_clientdata,module,"Integer overflow"); -- n=0; -- } -- return(n); -+ return _TIFFCastUInt64ToSSize(tif, m, module); - } - - /* -@@ -274,15 +260,8 @@ TIFFTileSize(TIFF* tif) - { - static const char module[] = "TIFFTileSize"; - uint64 m; -- tmsize_t n; - m=TIFFTileSize64(tif); -- n=(tmsize_t)m; -- if ((uint64)n!=m) -- { -- TIFFErrorExt(tif->tif_clientdata,module,"Integer overflow"); -- n=0; -- } -- return(n); -+ return _TIFFCastUInt64ToSSize(tif, m, module); - } - - /* -diff --git a/libtiff/tiffiop.h b/libtiff/tiffiop.h -index 08e5dc4..d4b8631 100644 ---- a/libtiff/tiffiop.h -+++ b/libtiff/tiffiop.h -@@ -79,6 +79,9 @@ extern int snprintf(char* str, size_t size, const char* format, ...); - #define FALSE 0 - #endif - -+#define TIFF_SIZE_T_MAX ((size_t) ~ ((size_t)0)) -+#define TIFF_TMSIZE_T_MAX (tmsize_t)(TIFF_SIZE_T_MAX >> 1) -+ - typedef struct client_info { - struct client_info *next; - void *data; -@@ -260,7 +263,7 @@ struct tiff { - #define TIFFhowmany8_64(x) (((x)&0x07)?((uint64)(x)>>3)+1:(uint64)(x)>>3) - #define TIFFroundup_64(x, y) (TIFFhowmany_64(x,y)*(y)) - --/* Safe multiply which returns zero if there is an integer overflow */ -+/* Safe multiply which returns zero if there is an *unsigned* integer overflow. This macro is not safe for *signed* integer types */ - #define TIFFSafeMultiply(t,v,m) ((((t)(m) != (t)0) && (((t)(((v)*(m))/(m))) == (t)(v))) ? (t)((v)*(m)) : (t)0) - - #define TIFFmax(A,B) ((A)>(B)?(A):(B)) -@@ -366,6 +369,8 @@ extern TIFFErrorHandlerExt _TIFFerrorHandlerExt; - - extern uint32 _TIFFMultiply32(TIFF*, uint32, uint32, const char*); - extern uint64 _TIFFMultiply64(TIFF*, uint64, uint64, const char*); -+extern tmsize_t _TIFFMultiplySSize(TIFF*, tmsize_t, tmsize_t, const char*); -+extern tmsize_t _TIFFCastUInt64ToSSize(TIFF*, uint64, const char*); - extern void* _TIFFCheckMalloc(TIFF*, tmsize_t, tmsize_t, const char*); - extern void* _TIFFCheckRealloc(TIFF*, void*, tmsize_t, tmsize_t, const char*); - --- -2.21.0 - diff --git a/runtime-optenv32/libtiff+32/spec b/runtime-optenv32/libtiff+32/spec index e490b8dfc77..06abaeef7bc 100644 --- a/runtime-optenv32/libtiff+32/spec +++ b/runtime-optenv32/libtiff+32/spec @@ -1,5 +1,4 @@ -VER=4.0.10 -REL=5 +VER=4.4.0 SRCS="tbl::https://download.osgeo.org/libtiff/tiff-$VER.tar.gz" -CHKSUMS="sha256::2c52d11ccaf767457db0c46795d9c7d1a8d8f76f68b0b800a3dfe45786b996e4" +CHKSUMS="sha256::917223b37538959aca3b790d2d73aa6e626b688e02dcda272aec24c2f498abed" CHKUPDATE="anitya::id=1738" From 36d0cf2a7f1188428acd520f1f4fa8d426896702 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 16:56:10 +0800 Subject: [PATCH 181/722] libjpeg-turbo+32: update to 3.0.3 - Use optenv32 template. - Use multi-ABI build per the mainline. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- .../libjpeg-turbo+32/autobuild/beyond | 1 - .../libjpeg-turbo+32/autobuild/build | 45 ++++++++++++++++--- .../libjpeg-turbo+32/autobuild/defines | 8 ++-- runtime-optenv32/libjpeg-turbo+32/spec | 6 +-- 4 files changed, 45 insertions(+), 15 deletions(-) delete mode 100644 runtime-optenv32/libjpeg-turbo+32/autobuild/beyond diff --git a/runtime-optenv32/libjpeg-turbo+32/autobuild/beyond b/runtime-optenv32/libjpeg-turbo+32/autobuild/beyond deleted file mode 100644 index 5fad7ba96af..00000000000 --- a/runtime-optenv32/libjpeg-turbo+32/autobuild/beyond +++ /dev/null @@ -1 +0,0 @@ -install -m644 jpegint.h "$PKGDIR"/opt/32/include diff --git a/runtime-optenv32/libjpeg-turbo+32/autobuild/build b/runtime-optenv32/libjpeg-turbo+32/autobuild/build index 256404a7c3d..32391e8c34d 100644 --- a/runtime-optenv32/libjpeg-turbo+32/autobuild/build +++ b/runtime-optenv32/libjpeg-turbo+32/autobuild/build @@ -1,9 +1,40 @@ -export PATH=/opt/32/bin:$PATH -export PKG_CONFIG_PATH=/opt/32/lib/pkg-config +for _JPEG_ABI in 6 7 8; do + case ${_JPEG_ABI} in + 6) + CMAKE_AFTER__JPEG_ABI=" \ + -DWITH_JPEG7=OFF \ + -DWITH_JPEG8=OFF" + ;; + 7) + CMAKE_AFTER__JPEG_ABI=" \ + -DWITH_JPEG7=ON \ + -DWITH_JPEG8=OFF" + ;; + 8) + CMAKE_AFTER__JPEG_ABI=" \ + -DWITH_JPEG7=OFF \ + -DWITH_JPEG8=ON" + ;; + esac -cmake . -DCMAKE_INSTALL_PREFIX=/opt/32 -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_C_COMPILER=/opt/32/bin/i686-pc-linux-gnu-gcc -make -make install DESTDIR="$PKGDIR" + abinfo "Preparing build environment (ABI: ${_JPEG_ABI}) ..." + mkdir -v "$SRCDIR"/build${_JPEG_ABI} + cd "$SRCDIR"/build${_JPEG_ABI} -rm -rf "$PKGDIR"/opt/32/{bin,share} + abinfo "Configuring libjpeg-turbo (ABI: ${_JPEG_ABI}) ..." + cmake "$SRCDIR" \ + -GNinja \ + ${CMAKE_DEF[@]} ${CMAKE_AFTER[@]} \ + ${CMAKE_AFTER__JPEG_ABI} + + abinfo "Building libjpeg-turbo (ABI: ${_JPEG_ABI}) ..." + ninja + + abinfo "Installing libjpeg-turbo (ABI: ${_JPEG_ABI}) ..." + DESTDIR="$PKGDIR" \ + ninja install +done + +abinfo "Installing jpegint.h ..." +install -vm644 "$SRCDIR"/jpegint.h \ + "$PKGDIR"/opt/32/include diff --git a/runtime-optenv32/libjpeg-turbo+32/autobuild/defines b/runtime-optenv32/libjpeg-turbo+32/autobuild/defines index 49bd5253fed..e2137ae0dd5 100644 --- a/runtime-optenv32/libjpeg-turbo+32/autobuild/defines +++ b/runtime-optenv32/libjpeg-turbo+32/autobuild/defines @@ -1,8 +1,8 @@ PKGNAME=libjpeg-turbo+32 -PKGDES="JPEG image codec with accelerated baseline compression and decompression (optenv32)" -PKGDEP="glibc" -BUILDDEP="32subsystem" PKGSEC=libs +PKGDEP="glibc+32" +BUILDDEP="devel-base+32" +PKGDES="JPEG image codec with accelerated baseline compression and decompression (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libjpeg-turbo+32/spec b/runtime-optenv32/libjpeg-turbo+32/spec index bfd637c553f..71a47445eb0 100644 --- a/runtime-optenv32/libjpeg-turbo+32/spec +++ b/runtime-optenv32/libjpeg-turbo+32/spec @@ -1,4 +1,4 @@ -VER=2.0.5 -SRCS="tbl::https://github.com/libjpeg-turbo/libjpeg-turbo/archive/$VER.tar.gz" -CHKSUMS="sha256::b3090cd37b5a8b3e4dbd30a1311b3989a894e5d3c668f14cbc6739d77c9402b7" +VER=3.0.3 +SRCS="git::commit=tags/$VER::https://github.com/libjpeg-turbo/libjpeg-turbo" +CHKSUMS="SKIP" CHKUPDATE="anitya::id=1648" From ba635e18dae1575998e778678e75e6d05e65d257 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 16:59:11 +0800 Subject: [PATCH 182/722] libpng-1.6+32: drop, orphaned --- .../libpng-1.6+32/autobuild/defines | 18 - .../0001-Import-APNG-patch-1.6.43.patch | 1728 ----------------- runtime-optenv32/libpng-1.6+32/spec | 5 - 3 files changed, 1751 deletions(-) delete mode 100644 runtime-optenv32/libpng-1.6+32/autobuild/defines delete mode 100644 runtime-optenv32/libpng-1.6+32/autobuild/patches/0001-Import-APNG-patch-1.6.43.patch delete mode 100644 runtime-optenv32/libpng-1.6+32/spec diff --git a/runtime-optenv32/libpng-1.6+32/autobuild/defines b/runtime-optenv32/libpng-1.6+32/autobuild/defines deleted file mode 100644 index 53c7fbff88e..00000000000 --- a/runtime-optenv32/libpng-1.6+32/autobuild/defines +++ /dev/null @@ -1,18 +0,0 @@ -PKGNAME=libpng-1.6+32 -PKGEPOCH=1 -PKGDES="Library and programs for reading and writing PNG files (optenv32)" -PKGDEP="zlib+32" -BUILDDEP="32subsystem" -PKGSEC=libs - -AUTOTOOLS_AFTER="--includedir=/opt/32/include/libpng16" - -PKGBREAK="libpng+32<=1:1.2.52-1" - -ABHOST=optenv32 - -# FIXME: autogen.sh is intended only to generate 'configure' on systems -# that do not have it. You have a complete 'configure', if you -# need to change Makefile.am or configure.ac you also need to -# run configure with the --enable-maintainer-mode option. -RECONF=0 diff --git a/runtime-optenv32/libpng-1.6+32/autobuild/patches/0001-Import-APNG-patch-1.6.43.patch b/runtime-optenv32/libpng-1.6+32/autobuild/patches/0001-Import-APNG-patch-1.6.43.patch deleted file mode 100644 index 3b0b6a72a95..00000000000 --- a/runtime-optenv32/libpng-1.6+32/autobuild/patches/0001-Import-APNG-patch-1.6.43.patch +++ /dev/null @@ -1,1728 +0,0 @@ -diff -Naru libpng-1.6.43.org/png.h libpng-1.6.43/png.h ---- libpng-1.6.43.org/png.h 2024-02-25 09:17:31.833108085 +0900 -+++ libpng-1.6.43/png.h 2024-02-25 09:21:42.311278288 +0900 -@@ -329,6 +329,10 @@ - # include "pnglibconf.h" - #endif - -+#define PNG_APNG_SUPPORTED -+#define PNG_READ_APNG_SUPPORTED -+#define PNG_WRITE_APNG_SUPPORTED -+ - #ifndef PNG_VERSION_INFO_ONLY - /* Machine specific configuration. */ - # include "pngconf.h" -@@ -424,6 +428,17 @@ - * See pngconf.h for base types that vary by machine/system - */ - -+#ifdef PNG_APNG_SUPPORTED -+/* dispose_op flags from inside fcTL */ -+#define PNG_DISPOSE_OP_NONE 0x00U -+#define PNG_DISPOSE_OP_BACKGROUND 0x01U -+#define PNG_DISPOSE_OP_PREVIOUS 0x02U -+ -+/* blend_op flags from inside fcTL */ -+#define PNG_BLEND_OP_SOURCE 0x00U -+#define PNG_BLEND_OP_OVER 0x01U -+#endif /* PNG_APNG_SUPPORTED */ -+ - /* This triggers a compiler error in png.c, if png.c and png.h - * do not agree upon the version number. - */ -@@ -745,6 +760,10 @@ - #define PNG_INFO_sCAL 0x4000U /* ESR, 1.0.6 */ - #define PNG_INFO_IDAT 0x8000U /* ESR, 1.0.6 */ - #define PNG_INFO_eXIf 0x10000U /* GR-P, 1.6.31 */ -+#ifdef PNG_APNG_SUPPORTED -+#define PNG_INFO_acTL 0x20000U -+#define PNG_INFO_fcTL 0x40000U -+#endif - - /* This is used for the transformation routines, as some of them - * change these values for the row. It also should enable using -@@ -782,6 +801,10 @@ - #ifdef PNG_PROGRESSIVE_READ_SUPPORTED - typedef PNG_CALLBACK(void, *png_progressive_info_ptr, (png_structp, png_infop)); - typedef PNG_CALLBACK(void, *png_progressive_end_ptr, (png_structp, png_infop)); -+#ifdef PNG_APNG_SUPPORTED -+typedef PNG_CALLBACK(void, *png_progressive_frame_ptr, (png_structp, -+ png_uint_32)); -+#endif - - /* The following callback receives png_uint_32 row_number, int pass for the - * png_bytep data of the row. When transforming an interlaced image the -@@ -3229,6 +3252,74 @@ - /******************************************************************************* - * END OF HARDWARE AND SOFTWARE OPTIONS - ******************************************************************************/ -+#ifdef PNG_APNG_SUPPORTED -+PNG_EXPORT(250, png_uint_32, png_get_acTL, (png_structp png_ptr, -+ png_infop info_ptr, png_uint_32 *num_frames, png_uint_32 *num_plays)); -+ -+PNG_EXPORT(251, png_uint_32, png_set_acTL, (png_structp png_ptr, -+ png_infop info_ptr, png_uint_32 num_frames, png_uint_32 num_plays)); -+ -+PNG_EXPORT(252, png_uint_32, png_get_num_frames, (png_structp png_ptr, -+ png_infop info_ptr)); -+ -+PNG_EXPORT(253, png_uint_32, png_get_num_plays, (png_structp png_ptr, -+ png_infop info_ptr)); -+ -+PNG_EXPORT(254, png_uint_32, png_get_next_frame_fcTL, -+ (png_structp png_ptr, png_infop info_ptr, png_uint_32 *width, -+ png_uint_32 *height, png_uint_32 *x_offset, png_uint_32 *y_offset, -+ png_uint_16 *delay_num, png_uint_16 *delay_den, png_byte *dispose_op, -+ png_byte *blend_op)); -+ -+PNG_EXPORT(255, png_uint_32, png_set_next_frame_fcTL, -+ (png_structp png_ptr, png_infop info_ptr, png_uint_32 width, -+ png_uint_32 height, png_uint_32 x_offset, png_uint_32 y_offset, -+ png_uint_16 delay_num, png_uint_16 delay_den, png_byte dispose_op, -+ png_byte blend_op)); -+ -+PNG_EXPORT(256, png_uint_32, png_get_next_frame_width, -+ (png_structp png_ptr, png_infop info_ptr)); -+PNG_EXPORT(257, png_uint_32, png_get_next_frame_height, -+ (png_structp png_ptr, png_infop info_ptr)); -+PNG_EXPORT(258, png_uint_32, png_get_next_frame_x_offset, -+ (png_structp png_ptr, png_infop info_ptr)); -+PNG_EXPORT(259, png_uint_32, png_get_next_frame_y_offset, -+ (png_structp png_ptr, png_infop info_ptr)); -+PNG_EXPORT(260, png_uint_16, png_get_next_frame_delay_num, -+ (png_structp png_ptr, png_infop info_ptr)); -+PNG_EXPORT(261, png_uint_16, png_get_next_frame_delay_den, -+ (png_structp png_ptr, png_infop info_ptr)); -+PNG_EXPORT(262, png_byte, png_get_next_frame_dispose_op, -+ (png_structp png_ptr, png_infop info_ptr)); -+PNG_EXPORT(263, png_byte, png_get_next_frame_blend_op, -+ (png_structp png_ptr, png_infop info_ptr)); -+PNG_EXPORT(264, png_byte, png_get_first_frame_is_hidden, -+ (png_structp png_ptr, png_infop info_ptr)); -+PNG_EXPORT(265, png_uint_32, png_set_first_frame_is_hidden, -+ (png_structp png_ptr, png_infop info_ptr, png_byte is_hidden)); -+ -+#ifdef PNG_READ_APNG_SUPPORTED -+PNG_EXPORT(266, void, png_read_frame_head, (png_structp png_ptr, -+ png_infop info_ptr)); -+#ifdef PNG_PROGRESSIVE_READ_SUPPORTED -+PNG_EXPORT(267, void, png_set_progressive_frame_fn, (png_structp png_ptr, -+ png_progressive_frame_ptr frame_info_fn, -+ png_progressive_frame_ptr frame_end_fn)); -+#endif /* PNG_PROGRESSIVE_READ_SUPPORTED */ -+#endif /* PNG_READ_APNG_SUPPORTED */ -+ -+#ifdef PNG_WRITE_APNG_SUPPORTED -+PNG_EXPORT(268, void, png_write_frame_head, (png_structp png_ptr, -+ png_infop info_ptr, png_bytepp row_pointers, -+ png_uint_32 width, png_uint_32 height, -+ png_uint_32 x_offset, png_uint_32 y_offset, -+ png_uint_16 delay_num, png_uint_16 delay_den, png_byte dispose_op, -+ png_byte blend_op)); -+ -+PNG_EXPORT(269, void, png_write_frame_tail, (png_structp png_ptr, -+ png_infop info_ptr)); -+#endif /* PNG_WRITE_APNG_SUPPORTED */ -+#endif /* PNG_APNG_SUPPORTED */ - - /* Maintainer: Put new public prototypes here ^, in libpng.3, in project - * defs, and in scripts/symbols.def. -@@ -3238,7 +3329,11 @@ - * one to use is one more than this.) - */ - #ifdef PNG_EXPORT_LAST_ORDINAL -+#ifdef PNG_APNG_SUPPORTED -+ PNG_EXPORT_LAST_ORDINAL(269); -+#else - PNG_EXPORT_LAST_ORDINAL(249); -+#endif /* PNG_APNG_SUPPORTED */ - #endif - - #ifdef __cplusplus -diff -Naru libpng-1.6.43.org/pngget.c libpng-1.6.43/pngget.c ---- libpng-1.6.43.org/pngget.c 2024-02-24 21:30:16.161079410 +0900 -+++ libpng-1.6.43/pngget.c 2024-02-25 09:14:28.958714231 +0900 -@@ -1264,4 +1264,166 @@ - # endif - #endif - -+#ifdef PNG_APNG_SUPPORTED -+png_uint_32 PNGAPI -+png_get_acTL(png_structp png_ptr, png_infop info_ptr, -+ png_uint_32 *num_frames, png_uint_32 *num_plays) -+{ -+ png_debug1(1, "in %s retrieval function", "acTL"); -+ -+ if (png_ptr != NULL && info_ptr != NULL && -+ (info_ptr->valid & PNG_INFO_acTL) && -+ num_frames != NULL && num_plays != NULL) -+ { -+ *num_frames = info_ptr->num_frames; -+ *num_plays = info_ptr->num_plays; -+ return (1); -+ } -+ -+ return (0); -+} -+ -+png_uint_32 PNGAPI -+png_get_num_frames(png_structp png_ptr, png_infop info_ptr) -+{ -+ png_debug(1, "in png_get_num_frames()"); -+ -+ if (png_ptr != NULL && info_ptr != NULL) -+ return (info_ptr->num_frames); -+ return (0); -+} -+ -+png_uint_32 PNGAPI -+png_get_num_plays(png_structp png_ptr, png_infop info_ptr) -+{ -+ png_debug(1, "in png_get_num_plays()"); -+ -+ if (png_ptr != NULL && info_ptr != NULL) -+ return (info_ptr->num_plays); -+ return (0); -+} -+ -+png_uint_32 PNGAPI -+png_get_next_frame_fcTL(png_structp png_ptr, png_infop info_ptr, -+ png_uint_32 *width, png_uint_32 *height, -+ png_uint_32 *x_offset, png_uint_32 *y_offset, -+ png_uint_16 *delay_num, png_uint_16 *delay_den, -+ png_byte *dispose_op, png_byte *blend_op) -+{ -+ png_debug1(1, "in %s retrieval function", "fcTL"); -+ -+ if (png_ptr != NULL && info_ptr != NULL && -+ (info_ptr->valid & PNG_INFO_fcTL) && -+ width != NULL && height != NULL && -+ x_offset != NULL && y_offset != NULL && -+ delay_num != NULL && delay_den != NULL && -+ dispose_op != NULL && blend_op != NULL) -+ { -+ *width = info_ptr->next_frame_width; -+ *height = info_ptr->next_frame_height; -+ *x_offset = info_ptr->next_frame_x_offset; -+ *y_offset = info_ptr->next_frame_y_offset; -+ *delay_num = info_ptr->next_frame_delay_num; -+ *delay_den = info_ptr->next_frame_delay_den; -+ *dispose_op = info_ptr->next_frame_dispose_op; -+ *blend_op = info_ptr->next_frame_blend_op; -+ return (1); -+ } -+ -+ return (0); -+} -+ -+png_uint_32 PNGAPI -+png_get_next_frame_width(png_structp png_ptr, png_infop info_ptr) -+{ -+ png_debug(1, "in png_get_next_frame_width()"); -+ -+ if (png_ptr != NULL && info_ptr != NULL) -+ return (info_ptr->next_frame_width); -+ return (0); -+} -+ -+png_uint_32 PNGAPI -+png_get_next_frame_height(png_structp png_ptr, png_infop info_ptr) -+{ -+ png_debug(1, "in png_get_next_frame_height()"); -+ -+ if (png_ptr != NULL && info_ptr != NULL) -+ return (info_ptr->next_frame_height); -+ return (0); -+} -+ -+png_uint_32 PNGAPI -+png_get_next_frame_x_offset(png_structp png_ptr, png_infop info_ptr) -+{ -+ png_debug(1, "in png_get_next_frame_x_offset()"); -+ -+ if (png_ptr != NULL && info_ptr != NULL) -+ return (info_ptr->next_frame_x_offset); -+ return (0); -+} -+ -+png_uint_32 PNGAPI -+png_get_next_frame_y_offset(png_structp png_ptr, png_infop info_ptr) -+{ -+ png_debug(1, "in png_get_next_frame_y_offset()"); -+ -+ if (png_ptr != NULL && info_ptr != NULL) -+ return (info_ptr->next_frame_y_offset); -+ return (0); -+} -+ -+png_uint_16 PNGAPI -+png_get_next_frame_delay_num(png_structp png_ptr, png_infop info_ptr) -+{ -+ png_debug(1, "in png_get_next_frame_delay_num()"); -+ -+ if (png_ptr != NULL && info_ptr != NULL) -+ return (info_ptr->next_frame_delay_num); -+ return (0); -+} -+ -+png_uint_16 PNGAPI -+png_get_next_frame_delay_den(png_structp png_ptr, png_infop info_ptr) -+{ -+ png_debug(1, "in png_get_next_frame_delay_den()"); -+ -+ if (png_ptr != NULL && info_ptr != NULL) -+ return (info_ptr->next_frame_delay_den); -+ return (0); -+} -+ -+png_byte PNGAPI -+png_get_next_frame_dispose_op(png_structp png_ptr, png_infop info_ptr) -+{ -+ png_debug(1, "in png_get_next_frame_dispose_op()"); -+ -+ if (png_ptr != NULL && info_ptr != NULL) -+ return (info_ptr->next_frame_dispose_op); -+ return (0); -+} -+ -+png_byte PNGAPI -+png_get_next_frame_blend_op(png_structp png_ptr, png_infop info_ptr) -+{ -+ png_debug(1, "in png_get_next_frame_blend_op()"); -+ -+ if (png_ptr != NULL && info_ptr != NULL) -+ return (info_ptr->next_frame_blend_op); -+ return (0); -+} -+ -+png_byte PNGAPI -+png_get_first_frame_is_hidden(png_structp png_ptr, png_infop info_ptr) -+{ -+ png_debug(1, "in png_first_frame_is_hidden()"); -+ -+ if (png_ptr != NULL) -+ return (png_byte)(png_ptr->apng_flags & PNG_FIRST_FRAME_HIDDEN); -+ -+ PNG_UNUSED(info_ptr) -+ -+ return 0; -+} -+#endif /* PNG_APNG_SUPPORTED */ - #endif /* READ || WRITE */ -diff -Naru libpng-1.6.43.org/pnginfo.h libpng-1.6.43/pnginfo.h ---- libpng-1.6.43.org/pnginfo.h 2022-11-24 08:37:51.507052183 +0900 -+++ libpng-1.6.43/pnginfo.h 2024-02-25 09:14:28.958714231 +0900 -@@ -263,5 +263,18 @@ - png_bytepp row_pointers; /* the image bits */ - #endif - -+#ifdef PNG_APNG_SUPPORTED -+ png_uint_32 num_frames; /* including default image */ -+ png_uint_32 num_plays; -+ png_uint_32 next_frame_width; -+ png_uint_32 next_frame_height; -+ png_uint_32 next_frame_x_offset; -+ png_uint_32 next_frame_y_offset; -+ png_uint_16 next_frame_delay_num; -+ png_uint_16 next_frame_delay_den; -+ png_byte next_frame_dispose_op; -+ png_byte next_frame_blend_op; -+#endif -+ - }; - #endif /* PNGINFO_H */ -diff -Naru libpng-1.6.43.org/pngpread.c libpng-1.6.43/pngpread.c ---- libpng-1.6.43.org/pngpread.c 2024-02-25 09:17:31.833108085 +0900 -+++ libpng-1.6.43/pngpread.c 2024-02-25 09:14:28.959714228 +0900 -@@ -195,6 +195,106 @@ - - chunk_name = png_ptr->chunk_name; - -+#ifdef PNG_READ_APNG_SUPPORTED -+ if (png_ptr->num_frames_read > 0 && -+ png_ptr->num_frames_read < info_ptr->num_frames) -+ { -+ if (chunk_name == png_IDAT) -+ { -+ /* Discard trailing IDATs for the first frame */ -+ if (png_ptr->mode & PNG_HAVE_fcTL || png_ptr->num_frames_read > 1) -+ png_error(png_ptr, "out of place IDAT"); -+ -+ if (png_ptr->push_length + 4 > png_ptr->buffer_size) -+ { -+ png_push_save_buffer(png_ptr); -+ return; -+ } -+ -+ png_ptr->mode &= ~PNG_HAVE_CHUNK_HEADER; -+ return; -+ } -+ else if (chunk_name == png_fdAT) -+ { -+ if (png_ptr->buffer_size < 4) -+ { -+ png_push_save_buffer(png_ptr); -+ return; -+ } -+ -+ png_ensure_sequence_number(png_ptr, 4); -+ -+ if (!(png_ptr->mode & PNG_HAVE_fcTL)) -+ { -+ /* Discard trailing fdATs for frames other than the first */ -+ if (png_ptr->num_frames_read < 2) -+ png_error(png_ptr, "out of place fdAT"); -+ -+ if (png_ptr->push_length + 4 > png_ptr->buffer_size) -+ { -+ png_push_save_buffer(png_ptr); -+ return; -+ } -+ -+ png_ptr->mode &= ~PNG_HAVE_CHUNK_HEADER; -+ return; -+ } -+ -+ else -+ { -+ /* frame data follows */ -+ png_ptr->idat_size = png_ptr->push_length - 4; -+ png_ptr->mode |= PNG_HAVE_IDAT; -+ png_ptr->process_mode = PNG_READ_IDAT_MODE; -+ -+ return; -+ } -+ } -+ -+ else if (chunk_name == png_fcTL) -+ { -+ if (png_ptr->push_length + 4 > png_ptr->buffer_size) -+ { -+ png_push_save_buffer(png_ptr); -+ return; -+ } -+ -+ png_read_reset(png_ptr); -+ png_ptr->mode &= ~PNG_HAVE_fcTL; -+ -+ png_handle_fcTL(png_ptr, info_ptr, png_ptr->push_length); -+ -+ if (!(png_ptr->mode & PNG_HAVE_fcTL)) -+ png_error(png_ptr, "missing required fcTL chunk"); -+ -+ png_read_reinit(png_ptr, info_ptr); -+ png_progressive_read_reset(png_ptr); -+ -+ if (png_ptr->frame_info_fn != NULL) -+ (*(png_ptr->frame_info_fn))(png_ptr, png_ptr->num_frames_read); -+ -+ png_ptr->mode &= ~PNG_HAVE_CHUNK_HEADER; -+ -+ return; -+ } -+ -+ else -+ { -+ if (png_ptr->push_length + 4 > png_ptr->buffer_size) -+ { -+ png_push_save_buffer(png_ptr); -+ return; -+ } -+ png_warning(png_ptr, "Skipped (ignored) a chunk " -+ "between APNG chunks"); -+ png_ptr->mode &= ~PNG_HAVE_CHUNK_HEADER; -+ return; -+ } -+ -+ return; -+ } -+#endif /* PNG_READ_APNG_SUPPORTED */ -+ - if (chunk_name == png_IDAT) - { - if ((png_ptr->mode & PNG_AFTER_IDAT) != 0) -@@ -261,6 +361,9 @@ - - else if (chunk_name == png_IDAT) - { -+#ifdef PNG_READ_APNG_SUPPORTED -+ png_have_info(png_ptr, info_ptr); -+#endif - png_ptr->idat_size = png_ptr->push_length; - png_ptr->process_mode = PNG_READ_IDAT_MODE; - png_push_have_info(png_ptr, info_ptr); -@@ -414,6 +517,30 @@ - png_handle_iTXt(png_ptr, info_ptr, png_ptr->push_length); - } - #endif -+#ifdef PNG_READ_APNG_SUPPORTED -+ else if (chunk_name == png_acTL) -+ { -+ if (png_ptr->push_length + 4 > png_ptr->buffer_size) -+ { -+ png_push_save_buffer(png_ptr); -+ return; -+ } -+ -+ png_handle_acTL(png_ptr, info_ptr, png_ptr->push_length); -+ } -+ -+ else if (chunk_name == png_fcTL) -+ { -+ if (png_ptr->push_length + 4 > png_ptr->buffer_size) -+ { -+ png_push_save_buffer(png_ptr); -+ return; -+ } -+ -+ png_handle_fcTL(png_ptr, info_ptr, png_ptr->push_length); -+ } -+ -+#endif /* PNG_READ_APNG_SUPPORTED */ - - else - { -@@ -547,7 +674,11 @@ - png_byte chunk_tag[4]; - - /* TODO: this code can be commoned up with the same code in push_read */ -+#ifdef PNG_READ_APNG_SUPPORTED -+ PNG_PUSH_SAVE_BUFFER_IF_LT(12) -+#else - PNG_PUSH_SAVE_BUFFER_IF_LT(8) -+#endif - png_push_fill_buffer(png_ptr, chunk_length, 4); - png_ptr->push_length = png_get_uint_31(png_ptr, chunk_length); - png_reset_crc(png_ptr); -@@ -555,17 +686,64 @@ - png_ptr->chunk_name = PNG_CHUNK_FROM_STRING(chunk_tag); - png_ptr->mode |= PNG_HAVE_CHUNK_HEADER; - -+#ifdef PNG_READ_APNG_SUPPORTED -+ if (png_ptr->chunk_name != png_fdAT && png_ptr->num_frames_read > 0) -+ { -+ if (png_ptr->flags & PNG_FLAG_ZSTREAM_ENDED) -+ { -+ png_ptr->process_mode = PNG_READ_CHUNK_MODE; -+ if (png_ptr->frame_end_fn != NULL) -+ (*(png_ptr->frame_end_fn))(png_ptr, png_ptr->num_frames_read); -+ png_ptr->num_frames_read++; -+ return; -+ } -+ else -+ { -+ if (png_ptr->chunk_name == png_IEND) -+ png_error(png_ptr, "Not enough image data"); -+ if (png_ptr->push_length + 4 > png_ptr->buffer_size) -+ { -+ png_push_save_buffer(png_ptr); -+ return; -+ } -+ png_warning(png_ptr, "Skipping (ignoring) a chunk between " -+ "APNG chunks"); -+ png_crc_finish(png_ptr, png_ptr->push_length); -+ png_ptr->mode &= ~PNG_HAVE_CHUNK_HEADER; -+ return; -+ } -+ } -+ else -+#endif -+#ifdef PNG_READ_APNG_SUPPORTED -+ if (png_ptr->chunk_name != png_IDAT && png_ptr->num_frames_read == 0) -+#else - if (png_ptr->chunk_name != png_IDAT) -+#endif - { - png_ptr->process_mode = PNG_READ_CHUNK_MODE; - - if ((png_ptr->flags & PNG_FLAG_ZSTREAM_ENDED) == 0) - png_error(png_ptr, "Not enough compressed data"); - -+#ifdef PNG_READ_APNG_SUPPORTED -+ if (png_ptr->frame_end_fn != NULL) -+ (*(png_ptr->frame_end_fn))(png_ptr, png_ptr->num_frames_read); -+ png_ptr->num_frames_read++; -+#endif -+ - return; - } - - png_ptr->idat_size = png_ptr->push_length; -+ -+#ifdef PNG_READ_APNG_SUPPORTED -+ if (png_ptr->num_frames_read > 0) -+ { -+ png_ensure_sequence_number(png_ptr, 4); -+ png_ptr->idat_size -= 4; -+ } -+#endif - } - - if (png_ptr->idat_size != 0 && png_ptr->save_buffer_size != 0) -@@ -639,6 +817,15 @@ - if (!(buffer_length > 0) || buffer == NULL) - png_error(png_ptr, "No IDAT data (internal error)"); - -+#ifdef PNG_READ_APNG_SUPPORTED -+ /* If the app is not APNG-aware, decode only the first frame */ -+ if (!(png_ptr->apng_flags & PNG_APNG_APP) && png_ptr->num_frames_read > 0) -+ { -+ png_ptr->flags |= PNG_FLAG_ZSTREAM_ENDED; -+ return; -+ } -+#endif -+ - /* This routine must process all the data it has been given - * before returning, calling the row callback as required to - * handle the uncompressed results. -@@ -1093,6 +1280,18 @@ - png_set_read_fn(png_ptr, progressive_ptr, png_push_fill_buffer); - } - -+#ifdef PNG_READ_APNG_SUPPORTED -+void PNGAPI -+png_set_progressive_frame_fn(png_structp png_ptr, -+ png_progressive_frame_ptr frame_info_fn, -+ png_progressive_frame_ptr frame_end_fn) -+{ -+ png_ptr->frame_info_fn = frame_info_fn; -+ png_ptr->frame_end_fn = frame_end_fn; -+ png_ptr->apng_flags |= PNG_APNG_APP; -+} -+#endif -+ - png_voidp PNGAPI - png_get_progressive_ptr(png_const_structrp png_ptr) - { -diff -Naru libpng-1.6.43.org/pngpriv.h libpng-1.6.43/pngpriv.h ---- libpng-1.6.43.org/pngpriv.h 2024-02-25 09:11:25.434324144 +0900 -+++ libpng-1.6.43/pngpriv.h 2024-02-25 09:14:28.959714228 +0900 -@@ -662,6 +662,10 @@ - #define PNG_HAVE_CHUNK_AFTER_IDAT 0x2000U /* Have another chunk after IDAT */ - #define PNG_WROTE_eXIf 0x4000U - #define PNG_IS_READ_STRUCT 0x8000U /* Else is a write struct */ -+#ifdef PNG_APNG_SUPPORTED -+#define PNG_HAVE_acTL 0x10000U -+#define PNG_HAVE_fcTL 0x20000U -+#endif - - /* Flags for the transformations the PNG library does on the image data */ - #define PNG_BGR 0x0001U -@@ -898,6 +902,16 @@ - #define png_tRNS PNG_U32(116, 82, 78, 83) - #define png_zTXt PNG_U32(122, 84, 88, 116) - -+#ifdef PNG_APNG_SUPPORTED -+#define png_acTL PNG_U32( 97, 99, 84, 76) -+#define png_fcTL PNG_U32(102, 99, 84, 76) -+#define png_fdAT PNG_U32(102, 100, 65, 84) -+ -+/* For png_struct.apng_flags: */ -+#define PNG_FIRST_FRAME_HIDDEN 0x0001U -+#define PNG_APNG_APP 0x0002U -+#endif -+ - /* The following will work on (signed char*) strings, whereas the get_uint_32 - * macro will fail on top-bit-set values because of the sign extension. - */ -@@ -1703,6 +1717,47 @@ - */ - #endif - -+#ifdef PNG_APNG_SUPPORTED -+PNG_INTERNAL_FUNCTION(void,png_ensure_fcTL_is_valid,(png_structp png_ptr, -+ png_uint_32 width, png_uint_32 height, -+ png_uint_32 x_offset, png_uint_32 y_offset, -+ png_uint_16 delay_num, png_uint_16 delay_den, -+ png_byte dispose_op, png_byte blend_op), PNG_EMPTY); -+ -+#ifdef PNG_READ_APNG_SUPPORTED -+PNG_INTERNAL_FUNCTION(void,png_handle_acTL,(png_structp png_ptr, png_infop info_ptr, -+ png_uint_32 length),PNG_EMPTY); -+PNG_INTERNAL_FUNCTION(void,png_handle_fcTL,(png_structp png_ptr, png_infop info_ptr, -+ png_uint_32 length),PNG_EMPTY); -+PNG_INTERNAL_FUNCTION(void,png_handle_fdAT,(png_structp png_ptr, png_infop info_ptr, -+ png_uint_32 length),PNG_EMPTY); -+PNG_INTERNAL_FUNCTION(void,png_have_info,(png_structp png_ptr, png_infop info_ptr),PNG_EMPTY); -+PNG_INTERNAL_FUNCTION(void,png_ensure_sequence_number,(png_structp png_ptr, -+ png_uint_32 length),PNG_EMPTY); -+PNG_INTERNAL_FUNCTION(void,png_read_reset,(png_structp png_ptr),PNG_EMPTY); -+PNG_INTERNAL_FUNCTION(void,png_read_reinit,(png_structp png_ptr, -+ png_infop info_ptr),PNG_EMPTY); -+#ifdef PNG_PROGRESSIVE_READ_SUPPORTED -+PNG_INTERNAL_FUNCTION(void,png_progressive_read_reset,(png_structp png_ptr),PNG_EMPTY); -+#endif /* PNG_PROGRESSIVE_READ_SUPPORTED */ -+#endif /* PNG_READ_APNG_SUPPORTED */ -+ -+#ifdef PNG_WRITE_APNG_SUPPORTED -+PNG_INTERNAL_FUNCTION(void,png_write_acTL,(png_structp png_ptr, -+ png_uint_32 num_frames, png_uint_32 num_plays),PNG_EMPTY); -+PNG_INTERNAL_FUNCTION(void,png_write_fcTL,(png_structp png_ptr, -+ png_uint_32 width, png_uint_32 height, -+ png_uint_32 x_offset, png_uint_32 y_offset, -+ png_uint_16 delay_num, png_uint_16 delay_den, -+ png_byte dispose_op, png_byte blend_op),PNG_EMPTY); -+PNG_INTERNAL_FUNCTION(void,png_write_fdAT,(png_structp png_ptr, -+ png_const_bytep data, png_size_t length),PNG_EMPTY); -+PNG_INTERNAL_FUNCTION(void,png_write_reset,(png_structp png_ptr),PNG_EMPTY); -+PNG_INTERNAL_FUNCTION(void,png_write_reinit,(png_structp png_ptr, -+ png_infop info_ptr, png_uint_32 width, png_uint_32 height),PNG_EMPTY); -+#endif /* PNG_WRITE_APNG_SUPPORTED */ -+#endif /* PNG_APNG_SUPPORTED */ -+ - /* Added at libpng version 1.4.0 */ - #ifdef PNG_COLORSPACE_SUPPORTED - /* These internal functions are for maintaining the colorspace structure within -diff -Naru libpng-1.6.43.org/pngread.c libpng-1.6.43/pngread.c ---- libpng-1.6.43.org/pngread.c 2024-02-25 09:17:31.833108085 +0900 -+++ libpng-1.6.43/pngread.c 2024-02-25 09:14:28.959714228 +0900 -@@ -161,6 +161,9 @@ - - else if (chunk_name == png_IDAT) - { -+#ifdef PNG_READ_APNG_SUPPORTED -+ png_have_info(png_ptr, info_ptr); -+#endif - png_ptr->idat_size = length; - break; - } -@@ -255,6 +258,17 @@ - png_handle_iTXt(png_ptr, info_ptr, length); - #endif - -+#ifdef PNG_READ_APNG_SUPPORTED -+ else if (chunk_name == png_acTL) -+ png_handle_acTL(png_ptr, info_ptr, length); -+ -+ else if (chunk_name == png_fcTL) -+ png_handle_fcTL(png_ptr, info_ptr, length); -+ -+ else if (chunk_name == png_fdAT) -+ png_handle_fdAT(png_ptr, info_ptr, length); -+#endif -+ - else - png_handle_unknown(png_ptr, info_ptr, length, - PNG_HANDLE_CHUNK_AS_DEFAULT); -@@ -262,6 +276,72 @@ - } - #endif /* SEQUENTIAL_READ */ - -+#ifdef PNG_READ_APNG_SUPPORTED -+void PNGAPI -+png_read_frame_head(png_structp png_ptr, png_infop info_ptr) -+{ -+ png_byte have_chunk_after_DAT; /* after IDAT or after fdAT */ -+ -+ png_debug(0, "Reading frame head"); -+ -+ if (!(png_ptr->mode & PNG_HAVE_acTL)) -+ png_error(png_ptr, "attempt to png_read_frame_head() but " -+ "no acTL present"); -+ -+ /* do nothing for the main IDAT */ -+ if (png_ptr->num_frames_read == 0) -+ return; -+ -+ png_read_reset(png_ptr); -+ png_ptr->flags &= ~PNG_FLAG_ROW_INIT; -+ png_ptr->mode &= ~PNG_HAVE_fcTL; -+ -+ have_chunk_after_DAT = 0; -+ for (;;) -+ { -+ png_uint_32 length = png_read_chunk_header(png_ptr); -+ -+ if (png_ptr->chunk_name == png_IDAT) -+ { -+ /* discard trailing IDATs for the first frame */ -+ if (have_chunk_after_DAT || png_ptr->num_frames_read > 1) -+ png_error(png_ptr, "png_read_frame_head(): out of place IDAT"); -+ png_crc_finish(png_ptr, length); -+ } -+ -+ else if (png_ptr->chunk_name == png_fcTL) -+ { -+ png_handle_fcTL(png_ptr, info_ptr, length); -+ have_chunk_after_DAT = 1; -+ } -+ -+ else if (png_ptr->chunk_name == png_fdAT) -+ { -+ png_ensure_sequence_number(png_ptr, length); -+ -+ /* discard trailing fdATs for frames other than the first */ -+ if (!have_chunk_after_DAT && png_ptr->num_frames_read > 1) -+ png_crc_finish(png_ptr, length - 4); -+ else if(png_ptr->mode & PNG_HAVE_fcTL) -+ { -+ png_ptr->idat_size = length - 4; -+ png_ptr->mode |= PNG_HAVE_IDAT; -+ -+ break; -+ } -+ else -+ png_error(png_ptr, "png_read_frame_head(): out of place fdAT"); -+ } -+ else -+ { -+ png_warning(png_ptr, "Skipped (ignored) a chunk " -+ "between APNG chunks"); -+ png_crc_finish(png_ptr, length); -+ } -+ } -+} -+#endif /* PNG_READ_APNG_SUPPORTED */ -+ - /* Optional call to update the users info_ptr structure */ - void PNGAPI - png_read_update_info(png_structrp png_ptr, png_inforp info_ptr) -diff -Naru libpng-1.6.43.org/pngrutil.c libpng-1.6.43/pngrutil.c ---- libpng-1.6.43.org/pngrutil.c 2024-02-24 21:30:16.164079400 +0900 -+++ libpng-1.6.43/pngrutil.c 2024-02-25 09:14:28.960714224 +0900 -@@ -863,6 +863,11 @@ - filter_type = buf[11]; - interlace_type = buf[12]; - -+#ifdef PNG_READ_APNG_SUPPORTED -+ png_ptr->first_frame_width = width; -+ png_ptr->first_frame_height = height; -+#endif -+ - /* Set internal variables */ - png_ptr->width = width; - png_ptr->height = height; -@@ -2857,6 +2862,179 @@ - } - #endif - -+#ifdef PNG_READ_APNG_SUPPORTED -+void /* PRIVATE */ -+png_handle_acTL(png_structp png_ptr, png_infop info_ptr, png_uint_32 length) -+{ -+ png_byte data[8]; -+ png_uint_32 num_frames; -+ png_uint_32 num_plays; -+ png_uint_32 didSet; -+ -+ png_debug(1, "in png_handle_acTL"); -+ -+ if (!(png_ptr->mode & PNG_HAVE_IHDR)) -+ { -+ png_error(png_ptr, "Missing IHDR before acTL"); -+ } -+ else if (png_ptr->mode & PNG_HAVE_IDAT) -+ { -+ png_warning(png_ptr, "Invalid acTL after IDAT skipped"); -+ png_crc_finish(png_ptr, length); -+ return; -+ } -+ else if (png_ptr->mode & PNG_HAVE_acTL) -+ { -+ png_warning(png_ptr, "Duplicate acTL skipped"); -+ png_crc_finish(png_ptr, length); -+ return; -+ } -+ else if (length != 8) -+ { -+ png_warning(png_ptr, "acTL with invalid length skipped"); -+ png_crc_finish(png_ptr, length); -+ return; -+ } -+ -+ png_crc_read(png_ptr, data, 8); -+ png_crc_finish(png_ptr, 0); -+ -+ num_frames = png_get_uint_31(png_ptr, data); -+ num_plays = png_get_uint_31(png_ptr, data + 4); -+ -+ /* the set function will do error checking on num_frames */ -+ didSet = png_set_acTL(png_ptr, info_ptr, num_frames, num_plays); -+ if(didSet) -+ png_ptr->mode |= PNG_HAVE_acTL; -+} -+ -+void /* PRIVATE */ -+png_handle_fcTL(png_structp png_ptr, png_infop info_ptr, png_uint_32 length) -+{ -+ png_byte data[22]; -+ png_uint_32 width; -+ png_uint_32 height; -+ png_uint_32 x_offset; -+ png_uint_32 y_offset; -+ png_uint_16 delay_num; -+ png_uint_16 delay_den; -+ png_byte dispose_op; -+ png_byte blend_op; -+ -+ png_debug(1, "in png_handle_fcTL"); -+ -+ png_ensure_sequence_number(png_ptr, length); -+ -+ if (!(png_ptr->mode & PNG_HAVE_IHDR)) -+ { -+ png_error(png_ptr, "Missing IHDR before fcTL"); -+ } -+ else if (png_ptr->mode & PNG_HAVE_IDAT) -+ { -+ /* for any frames other then the first this message may be misleading, -+ * but correct. PNG_HAVE_IDAT is unset before the frame head is read -+ * i can't think of a better message */ -+ png_warning(png_ptr, "Invalid fcTL after IDAT skipped"); -+ png_crc_finish(png_ptr, length-4); -+ return; -+ } -+ else if (png_ptr->mode & PNG_HAVE_fcTL) -+ { -+ png_warning(png_ptr, "Duplicate fcTL within one frame skipped"); -+ png_crc_finish(png_ptr, length-4); -+ return; -+ } -+ else if (length != 26) -+ { -+ png_warning(png_ptr, "fcTL with invalid length skipped"); -+ png_crc_finish(png_ptr, length-4); -+ return; -+ } -+ -+ png_crc_read(png_ptr, data, 22); -+ png_crc_finish(png_ptr, 0); -+ -+ width = png_get_uint_31(png_ptr, data); -+ height = png_get_uint_31(png_ptr, data + 4); -+ x_offset = png_get_uint_31(png_ptr, data + 8); -+ y_offset = png_get_uint_31(png_ptr, data + 12); -+ delay_num = png_get_uint_16(data + 16); -+ delay_den = png_get_uint_16(data + 18); -+ dispose_op = data[20]; -+ blend_op = data[21]; -+ -+ if (png_ptr->num_frames_read == 0 && (x_offset != 0 || y_offset != 0)) -+ { -+ png_warning(png_ptr, "fcTL for the first frame must have zero offset"); -+ return; -+ } -+ -+ if (info_ptr != NULL) -+ { -+ if (png_ptr->num_frames_read == 0 && -+ (width != info_ptr->width || height != info_ptr->height)) -+ { -+ png_warning(png_ptr, "size in first frame's fcTL must match " -+ "the size in IHDR"); -+ return; -+ } -+ -+ /* The set function will do more error checking */ -+ png_set_next_frame_fcTL(png_ptr, info_ptr, width, height, -+ x_offset, y_offset, delay_num, delay_den, -+ dispose_op, blend_op); -+ -+ png_read_reinit(png_ptr, info_ptr); -+ -+ png_ptr->mode |= PNG_HAVE_fcTL; -+ } -+} -+ -+void /* PRIVATE */ -+png_have_info(png_structp png_ptr, png_infop info_ptr) -+{ -+ if((info_ptr->valid & PNG_INFO_acTL) && !(info_ptr->valid & PNG_INFO_fcTL)) -+ { -+ png_ptr->apng_flags |= PNG_FIRST_FRAME_HIDDEN; -+ info_ptr->num_frames++; -+ } -+} -+ -+void /* PRIVATE */ -+png_handle_fdAT(png_structp png_ptr, png_infop info_ptr, png_uint_32 length) -+{ -+ png_ensure_sequence_number(png_ptr, length); -+ -+ /* This function is only called from png_read_end(), png_read_info(), -+ * and png_push_read_chunk() which means that: -+ * - the user doesn't want to read this frame -+ * - or this is an out-of-place fdAT -+ * in either case it is safe to ignore the chunk with a warning */ -+ png_warning(png_ptr, "ignoring fdAT chunk"); -+ png_crc_finish(png_ptr, length - 4); -+ PNG_UNUSED(info_ptr) -+} -+ -+void /* PRIVATE */ -+png_ensure_sequence_number(png_structp png_ptr, png_uint_32 length) -+{ -+ png_byte data[4]; -+ png_uint_32 sequence_number; -+ -+ if (length < 4) -+ png_error(png_ptr, "invalid fcTL or fdAT chunk found"); -+ -+ png_crc_read(png_ptr, data, 4); -+ sequence_number = png_get_uint_31(png_ptr, data); -+ -+ if (sequence_number != png_ptr->next_seq_num) -+ png_error(png_ptr, "fcTL or fdAT chunk with out-of-order sequence " -+ "number found"); -+ -+ png_ptr->next_seq_num++; -+} -+#endif /* PNG_READ_APNG_SUPPORTED */ -+ - #ifdef PNG_READ_UNKNOWN_CHUNKS_SUPPORTED - /* Utility function for png_handle_unknown; set up png_ptr::unknown_chunk */ - static int -@@ -4165,7 +4343,38 @@ - { - uInt avail_in; - png_bytep buffer; -+#ifdef PNG_READ_APNG_SUPPORTED -+ png_uint_32 bytes_to_skip = 0; -+ -+ while (png_ptr->idat_size == 0 || bytes_to_skip != 0) -+ { -+ png_crc_finish(png_ptr, bytes_to_skip); -+ bytes_to_skip = 0; - -+ png_ptr->idat_size = png_read_chunk_header(png_ptr); -+ if (png_ptr->num_frames_read == 0) -+ { -+ if (png_ptr->chunk_name != png_IDAT) -+ png_error(png_ptr, "Not enough image data"); -+ } -+ else -+ { -+ if (png_ptr->chunk_name == png_IEND) -+ png_error(png_ptr, "Not enough image data"); -+ if (png_ptr->chunk_name != png_fdAT) -+ { -+ png_warning(png_ptr, "Skipped (ignored) a chunk " -+ "between APNG chunks"); -+ bytes_to_skip = png_ptr->idat_size; -+ continue; -+ } -+ -+ png_ensure_sequence_number(png_ptr, png_ptr->idat_size); -+ -+ png_ptr->idat_size -= 4; -+ } -+ } -+#else - while (png_ptr->idat_size == 0) - { - png_crc_finish(png_ptr, 0); -@@ -4177,7 +4386,7 @@ - if (png_ptr->chunk_name != png_IDAT) - png_error(png_ptr, "Not enough image data"); - } -- -+#endif /* PNG_READ_APNG_SUPPORTED */ - avail_in = png_ptr->IDAT_read_size; - - if (avail_in > png_ptr->idat_size) -@@ -4240,6 +4449,9 @@ - - png_ptr->mode |= PNG_AFTER_IDAT; - png_ptr->flags |= PNG_FLAG_ZSTREAM_ENDED; -+#ifdef PNG_READ_APNG_SUPPORTED -+ png_ptr->num_frames_read++; -+#endif - - if (png_ptr->zstream.avail_in > 0 || png_ptr->idat_size > 0) - png_chunk_benign_error(png_ptr, "Extra compressed data"); -@@ -4677,4 +4889,80 @@ - - png_ptr->flags |= PNG_FLAG_ROW_INIT; - } -+ -+#ifdef PNG_READ_APNG_SUPPORTED -+/* This function is to be called after the main IDAT set has been read and -+ * before a new IDAT is read. It resets some parts of png_ptr -+ * to make them usable by the read functions again */ -+void /* PRIVATE */ -+png_read_reset(png_structp png_ptr) -+{ -+ png_ptr->mode &= ~PNG_HAVE_IDAT; -+ png_ptr->mode &= ~PNG_AFTER_IDAT; -+ png_ptr->row_number = 0; -+ png_ptr->pass = 0; -+} -+ -+void /* PRIVATE */ -+png_read_reinit(png_structp png_ptr, png_infop info_ptr) -+{ -+ png_ptr->width = info_ptr->next_frame_width; -+ png_ptr->height = info_ptr->next_frame_height; -+ png_ptr->rowbytes = PNG_ROWBYTES(png_ptr->pixel_depth,png_ptr->width); -+ png_ptr->info_rowbytes = PNG_ROWBYTES(info_ptr->pixel_depth, -+ png_ptr->width); -+ if (png_ptr->prev_row) -+ memset(png_ptr->prev_row, 0, png_ptr->rowbytes + 1); -+} -+ -+#ifdef PNG_PROGRESSIVE_READ_SUPPORTED -+/* same as png_read_reset() but for the progressive reader */ -+void /* PRIVATE */ -+png_progressive_read_reset(png_structp png_ptr) -+{ -+#ifdef PNG_READ_INTERLACING_SUPPORTED -+ /* Arrays to facilitate easy interlacing - use pass (0 - 6) as index */ -+ -+ /* Start of interlace block */ -+ const int png_pass_start[] = {0, 4, 0, 2, 0, 1, 0}; -+ -+ /* Offset to next interlace block */ -+ const int png_pass_inc[] = {8, 8, 4, 4, 2, 2, 1}; -+ -+ /* Start of interlace block in the y direction */ -+ const int png_pass_ystart[] = {0, 0, 4, 0, 2, 0, 1}; -+ -+ /* Offset to next interlace block in the y direction */ -+ const int png_pass_yinc[] = {8, 8, 8, 4, 4, 2, 2}; -+ -+ if (png_ptr->interlaced) -+ { -+ if (!(png_ptr->transformations & PNG_INTERLACE)) -+ png_ptr->num_rows = (png_ptr->height + png_pass_yinc[0] - 1 - -+ png_pass_ystart[0]) / png_pass_yinc[0]; -+ else -+ png_ptr->num_rows = png_ptr->height; -+ -+ png_ptr->iwidth = (png_ptr->width + -+ png_pass_inc[png_ptr->pass] - 1 - -+ png_pass_start[png_ptr->pass]) / -+ png_pass_inc[png_ptr->pass]; -+ } -+ else -+#endif /* PNG_READ_INTERLACING_SUPPORTED */ -+ { -+ png_ptr->num_rows = png_ptr->height; -+ png_ptr->iwidth = png_ptr->width; -+ } -+ png_ptr->flags &= ~PNG_FLAG_ZSTREAM_ENDED; -+ if (inflateReset(&(png_ptr->zstream)) != Z_OK) -+ png_error(png_ptr, "inflateReset failed"); -+ png_ptr->zstream.avail_in = 0; -+ png_ptr->zstream.next_in = 0; -+ png_ptr->zstream.next_out = png_ptr->row_buf; -+ png_ptr->zstream.avail_out = (uInt)PNG_ROWBYTES(png_ptr->pixel_depth, -+ png_ptr->iwidth) + 1; -+} -+#endif /* PNG_PROGRESSIVE_READ_SUPPORTED */ -+#endif /* PNG_READ_APNG_SUPPORTED */ - #endif /* READ */ -diff -Naru libpng-1.6.43.org/pngset.c libpng-1.6.43/pngset.c ---- libpng-1.6.43.org/pngset.c 2024-02-24 21:30:16.164079400 +0900 -+++ libpng-1.6.43/pngset.c 2024-02-25 09:21:42.296278337 +0900 -@@ -280,6 +280,11 @@ - info_ptr->pixel_depth = (png_byte)(info_ptr->channels * info_ptr->bit_depth); - - info_ptr->rowbytes = PNG_ROWBYTES(info_ptr->pixel_depth, width); -+ -+#ifdef PNG_APNG_SUPPORTED -+ /* for non-animated png. this may be overwritten from an acTL chunk later */ -+ info_ptr->num_frames = 1; -+#endif - } - - #ifdef PNG_oFFs_SUPPORTED -@@ -1151,6 +1156,147 @@ - } - #endif /* sPLT */ - -+#ifdef PNG_APNG_SUPPORTED -+png_uint_32 PNGAPI -+png_set_acTL(png_structp png_ptr, png_infop info_ptr, -+ png_uint_32 num_frames, png_uint_32 num_plays) -+{ -+ png_debug1(1, "in %s storage function", "acTL"); -+ -+ if (png_ptr == NULL || info_ptr == NULL) -+ { -+ png_warning(png_ptr, -+ "Call to png_set_acTL() with NULL png_ptr " -+ "or info_ptr ignored"); -+ return (0); -+ } -+ if (num_frames == 0) -+ { -+ png_warning(png_ptr, -+ "Ignoring attempt to set acTL with num_frames zero"); -+ return (0); -+ } -+ if (num_frames > PNG_UINT_31_MAX) -+ { -+ png_warning(png_ptr, -+ "Ignoring attempt to set acTL with num_frames > 2^31-1"); -+ return (0); -+ } -+ if (num_plays > PNG_UINT_31_MAX) -+ { -+ png_warning(png_ptr, -+ "Ignoring attempt to set acTL with num_plays " -+ "> 2^31-1"); -+ return (0); -+ } -+ -+ info_ptr->num_frames = num_frames; -+ info_ptr->num_plays = num_plays; -+ -+ info_ptr->valid |= PNG_INFO_acTL; -+ -+ return (1); -+} -+ -+/* delay_num and delay_den can hold any 16-bit values including zero */ -+png_uint_32 PNGAPI -+png_set_next_frame_fcTL(png_structp png_ptr, png_infop info_ptr, -+ png_uint_32 width, png_uint_32 height, -+ png_uint_32 x_offset, png_uint_32 y_offset, -+ png_uint_16 delay_num, png_uint_16 delay_den, -+ png_byte dispose_op, png_byte blend_op) -+{ -+ png_debug1(1, "in %s storage function", "fcTL"); -+ -+ if (png_ptr == NULL || info_ptr == NULL) -+ { -+ png_warning(png_ptr, -+ "Call to png_set_fcTL() with NULL png_ptr or info_ptr " -+ "ignored"); -+ return (0); -+ } -+ -+ png_ensure_fcTL_is_valid(png_ptr, width, height, x_offset, y_offset, -+ delay_num, delay_den, dispose_op, blend_op); -+ -+ if (blend_op == PNG_BLEND_OP_OVER) -+ { -+ if (!(png_ptr->color_type & PNG_COLOR_MASK_ALPHA) && -+ !(png_get_valid(png_ptr, info_ptr, PNG_INFO_tRNS))) -+ { -+ png_warning(png_ptr, "PNG_BLEND_OP_OVER is meaningless " -+ "and wasteful for opaque images, ignored"); -+ blend_op = PNG_BLEND_OP_SOURCE; -+ } -+ } -+ -+ info_ptr->next_frame_width = width; -+ info_ptr->next_frame_height = height; -+ info_ptr->next_frame_x_offset = x_offset; -+ info_ptr->next_frame_y_offset = y_offset; -+ info_ptr->next_frame_delay_num = delay_num; -+ info_ptr->next_frame_delay_den = delay_den; -+ info_ptr->next_frame_dispose_op = dispose_op; -+ info_ptr->next_frame_blend_op = blend_op; -+ -+ info_ptr->valid |= PNG_INFO_fcTL; -+ -+ return (1); -+} -+ -+void /* PRIVATE */ -+png_ensure_fcTL_is_valid(png_structp png_ptr, -+ png_uint_32 width, png_uint_32 height, -+ png_uint_32 x_offset, png_uint_32 y_offset, -+ png_uint_16 delay_num, png_uint_16 delay_den, -+ png_byte dispose_op, png_byte blend_op) -+{ -+ if (width == 0 || width > PNG_UINT_31_MAX) -+ png_error(png_ptr, "invalid width in fcTL (> 2^31-1)"); -+ if (height == 0 || height > PNG_UINT_31_MAX) -+ png_error(png_ptr, "invalid height in fcTL (> 2^31-1)"); -+ if (x_offset > PNG_UINT_31_MAX) -+ png_error(png_ptr, "invalid x_offset in fcTL (> 2^31-1)"); -+ if (y_offset > PNG_UINT_31_MAX) -+ png_error(png_ptr, "invalid y_offset in fcTL (> 2^31-1)"); -+ if (width + x_offset > png_ptr->first_frame_width || -+ height + y_offset > png_ptr->first_frame_height) -+ png_error(png_ptr, "dimensions of a frame are greater than" -+ "the ones in IHDR"); -+ -+ if (dispose_op != PNG_DISPOSE_OP_NONE && -+ dispose_op != PNG_DISPOSE_OP_BACKGROUND && -+ dispose_op != PNG_DISPOSE_OP_PREVIOUS) -+ png_error(png_ptr, "invalid dispose_op in fcTL"); -+ -+ if (blend_op != PNG_BLEND_OP_SOURCE && -+ blend_op != PNG_BLEND_OP_OVER) -+ png_error(png_ptr, "invalid blend_op in fcTL"); -+ -+ PNG_UNUSED(delay_num) -+ PNG_UNUSED(delay_den) -+} -+ -+png_uint_32 PNGAPI -+png_set_first_frame_is_hidden(png_structp png_ptr, png_infop info_ptr, -+ png_byte is_hidden) -+{ -+ png_debug(1, "in png_first_frame_is_hidden()"); -+ -+ if (png_ptr == NULL) -+ return 0; -+ -+ if (is_hidden) -+ png_ptr->apng_flags |= PNG_FIRST_FRAME_HIDDEN; -+ else -+ png_ptr->apng_flags &= ~PNG_FIRST_FRAME_HIDDEN; -+ -+ PNG_UNUSED(info_ptr) -+ -+ return 1; -+} -+#endif /* PNG_APNG_SUPPORTED */ -+ - #ifdef PNG_STORE_UNKNOWN_CHUNKS_SUPPORTED - static png_byte - check_location(png_const_structrp png_ptr, int location) -diff -Naru libpng-1.6.43.org/pngstruct.h libpng-1.6.43/pngstruct.h ---- libpng-1.6.43.org/pngstruct.h 2022-11-24 08:37:51.510052177 +0900 -+++ libpng-1.6.43/pngstruct.h 2024-02-25 09:14:28.960714224 +0900 -@@ -399,6 +399,27 @@ - png_byte filter_type; - #endif - -+#ifdef PNG_APNG_SUPPORTED -+ png_uint_32 apng_flags; -+ png_uint_32 next_seq_num; /* next fcTL/fdAT chunk sequence number */ -+ png_uint_32 first_frame_width; -+ png_uint_32 first_frame_height; -+ -+#ifdef PNG_READ_APNG_SUPPORTED -+ png_uint_32 num_frames_read; /* incremented after all image data of */ -+ /* a frame is read */ -+#ifdef PNG_PROGRESSIVE_READ_SUPPORTED -+ png_progressive_frame_ptr frame_info_fn; /* frame info read callback */ -+ png_progressive_frame_ptr frame_end_fn; /* frame data read callback */ -+#endif -+#endif -+ -+#ifdef PNG_WRITE_APNG_SUPPORTED -+ png_uint_32 num_frames_to_write; -+ png_uint_32 num_frames_written; -+#endif -+#endif /* PNG_APNG_SUPPORTED */ -+ - /* New members added in libpng-1.2.0 */ - - /* New members added in libpng-1.0.2 but first enabled by default in 1.2.0 */ -diff -Naru libpng-1.6.43.org/pngtest.c libpng-1.6.43/pngtest.c ---- libpng-1.6.43.org/pngtest.c 2024-02-25 09:17:31.835108078 +0900 -+++ libpng-1.6.43/pngtest.c 2024-02-25 09:20:08.014590616 +0900 -@@ -882,6 +882,10 @@ - int bit_depth, color_type; - user_chunk_info my_user_chunk_data; - int pass, num_passes; -+#ifdef PNG_APNG_SUPPORTED -+ png_uint_32 num_frames; -+ png_uint_32 num_plays; -+#endif - - row_buf = NULL; - error_parameters.file_name = inname; -@@ -1380,6 +1384,22 @@ - } - } - #endif -+ -+#ifdef PNG_APNG_SUPPORTED -+ if (png_get_valid(read_ptr, read_info_ptr, PNG_INFO_acTL)) -+ { -+ if (png_get_acTL(read_ptr, read_info_ptr, &num_frames, &num_plays)) -+ { -+ png_byte is_hidden; -+ pngtest_debug2("Handling acTL chunks (frames %ld, plays %ld)", -+ num_frames, num_plays); -+ png_set_acTL(write_ptr, write_info_ptr, num_frames, num_plays); -+ is_hidden = png_get_first_frame_is_hidden(read_ptr, read_info_ptr); -+ png_set_first_frame_is_hidden(write_ptr, write_info_ptr, is_hidden); -+ } -+ } -+#endif -+ - #ifdef PNG_WRITE_UNKNOWN_CHUNKS_SUPPORTED - { - png_unknown_chunkp unknowns; -@@ -1439,6 +1459,110 @@ - t_misc += (t_stop - t_start); - t_start = t_stop; - #endif -+#ifdef PNG_APNG_SUPPORTED -+ if (png_get_valid(read_ptr, read_info_ptr, PNG_INFO_acTL)) -+ { -+ png_uint_32 frame; -+ for (frame = 0; frame < num_frames; frame++) -+ { -+ png_uint_32 frame_width; -+ png_uint_32 frame_height; -+ png_uint_32 x_offset; -+ png_uint_32 y_offset; -+ png_uint_16 delay_num; -+ png_uint_16 delay_den; -+ png_byte dispose_op; -+ png_byte blend_op; -+ png_read_frame_head(read_ptr, read_info_ptr); -+ if (png_get_valid(read_ptr, read_info_ptr, PNG_INFO_fcTL)) -+ { -+ png_get_next_frame_fcTL(read_ptr, read_info_ptr, -+ &frame_width, &frame_height, -+ &x_offset, &y_offset, -+ &delay_num, &delay_den, -+ &dispose_op, &blend_op); -+ } -+ else -+ { -+ frame_width = width; -+ frame_height = height; -+ x_offset = 0; -+ y_offset = 0; -+ delay_num = 1; -+ delay_den = 1; -+ dispose_op = PNG_DISPOSE_OP_NONE; -+ blend_op = PNG_BLEND_OP_SOURCE; -+ } -+#ifdef PNG_WRITE_APNG_SUPPORTED -+ png_write_frame_head(write_ptr, write_info_ptr, (png_bytepp)&row_buf, -+ frame_width, frame_height, -+ x_offset, y_offset, -+ delay_num, delay_den, -+ dispose_op, blend_op); -+#endif -+ for (pass = 0; pass < num_passes; pass++) -+ { -+# ifdef calc_pass_height -+ png_uint_32 pass_height; -+ -+ if (num_passes == 7) /* interlaced */ -+ { -+ if (PNG_PASS_COLS(frame_width, pass) > 0) -+ pass_height = PNG_PASS_ROWS(frame_height, pass); -+ -+ else -+ pass_height = 0; -+ } -+ -+ else /* not interlaced */ -+ pass_height = frame_height; -+# else -+# define pass_height frame_height -+# endif -+ -+ pngtest_debug1("Writing row data for pass %d", pass); -+ for (y = 0; y < pass_height; y++) -+ { -+#ifndef SINGLE_ROWBUF_ALLOC -+ pngtest_debug2("Allocating row buffer (pass %d, y = %u)...", pass, y); -+ -+ row_buf = (png_bytep)png_malloc(read_ptr, -+ png_get_rowbytes(read_ptr, read_info_ptr)); -+ -+ pngtest_debug2("\t0x%08lx (%lu bytes)", (unsigned long)row_buf, -+ (unsigned long)png_get_rowbytes(read_ptr, read_info_ptr)); -+ -+#endif /* !SINGLE_ROWBUF_ALLOC */ -+ png_read_rows(read_ptr, (png_bytepp)&row_buf, NULL, 1); -+ -+#ifdef PNG_WRITE_SUPPORTED -+#ifdef PNGTEST_TIMING -+ t_stop = (float)clock(); -+ t_decode += (t_stop - t_start); -+ t_start = t_stop; -+#endif -+ png_write_rows(write_ptr, (png_bytepp)&row_buf, 1); -+#ifdef PNGTEST_TIMING -+ t_stop = (float)clock(); -+ t_encode += (t_stop - t_start); -+ t_start = t_stop; -+#endif -+#endif /* PNG_WRITE_SUPPORTED */ -+ -+#ifndef SINGLE_ROWBUF_ALLOC -+ pngtest_debug2("Freeing row buffer (pass %d, y = %u)", pass, y); -+ png_free(read_ptr, row_buf); -+ row_buf = NULL; -+#endif /* !SINGLE_ROWBUF_ALLOC */ -+ } -+ } -+#ifdef PNG_WRITE_APNG_SUPPORTED -+ png_write_frame_tail(write_ptr, write_info_ptr); -+#endif -+ } -+ } -+ else -+#endif - for (pass = 0; pass < num_passes; pass++) - { - # ifdef calc_pass_height -diff -Naru libpng-1.6.43.org/pngwrite.c libpng-1.6.43/pngwrite.c ---- libpng-1.6.43.org/pngwrite.c 2024-02-24 21:30:16.165079396 +0900 -+++ libpng-1.6.43/pngwrite.c 2024-02-25 09:14:28.961714221 +0900 -@@ -128,6 +128,10 @@ - * the application continues writing the PNG. So check the 'invalid' - * flag here too. - */ -+#ifdef PNG_WRITE_APNG_SUPPORTED -+ if (info_ptr->valid & PNG_INFO_acTL) -+ png_write_acTL(png_ptr, info_ptr->num_frames, info_ptr->num_plays); -+#endif - #ifdef PNG_GAMMA_SUPPORTED - # ifdef PNG_WRITE_gAMA_SUPPORTED - if ((info_ptr->colorspace.flags & PNG_COLORSPACE_INVALID) == 0 && -@@ -374,6 +378,11 @@ - png_benign_error(png_ptr, "Wrote palette index exceeding num_palette"); - #endif - -+#ifdef PNG_WRITE_APNG_SUPPORTED -+ if (png_ptr->num_frames_written != png_ptr->num_frames_to_write) -+ png_error(png_ptr, "Not enough frames written"); -+#endif -+ - /* See if user wants us to write information chunks */ - if (info_ptr != NULL) - { -@@ -1484,6 +1493,43 @@ - } - #endif - -+#ifdef PNG_WRITE_APNG_SUPPORTED -+void PNGAPI -+png_write_frame_head(png_structp png_ptr, png_infop info_ptr, -+ png_bytepp row_pointers, png_uint_32 width, png_uint_32 height, -+ png_uint_32 x_offset, png_uint_32 y_offset, -+ png_uint_16 delay_num, png_uint_16 delay_den, png_byte dispose_op, -+ png_byte blend_op) -+{ -+ png_debug(1, "in png_write_frame_head"); -+ -+ /* there is a chance this has been set after png_write_info was called, -+ * so it would be set but not written. is there a way to be sure? */ -+ if (!(info_ptr->valid & PNG_INFO_acTL)) -+ png_error(png_ptr, "png_write_frame_head(): acTL not set"); -+ -+ png_write_reset(png_ptr); -+ -+ png_write_reinit(png_ptr, info_ptr, width, height); -+ -+ if ( !(png_ptr->num_frames_written == 0 && -+ (png_ptr->apng_flags & PNG_FIRST_FRAME_HIDDEN) ) ) -+ png_write_fcTL(png_ptr, width, height, x_offset, y_offset, -+ delay_num, delay_den, dispose_op, blend_op); -+ -+ PNG_UNUSED(row_pointers) -+} -+ -+void PNGAPI -+png_write_frame_tail(png_structp png_ptr, png_infop info_ptr) -+{ -+ png_debug(1, "in png_write_frame_tail"); -+ -+ png_ptr->num_frames_written++; -+ -+ PNG_UNUSED(info_ptr) -+} -+#endif /* PNG_WRITE_APNG_SUPPORTED */ - - #ifdef PNG_SIMPLIFIED_WRITE_SUPPORTED - /* Initialize the write structure - general purpose utility. */ -diff -Naru libpng-1.6.43.org/pngwutil.c libpng-1.6.43/pngwutil.c ---- libpng-1.6.43.org/pngwutil.c 2024-02-24 21:30:16.166079393 +0900 -+++ libpng-1.6.43/pngwutil.c 2024-02-25 09:21:42.305278308 +0900 -@@ -821,6 +821,11 @@ - /* Write the chunk */ - png_write_complete_chunk(png_ptr, png_IHDR, buf, 13); - -+#ifdef PNG_WRITE_APNG_SUPPORTED -+ png_ptr->first_frame_width = width; -+ png_ptr->first_frame_height = height; -+#endif -+ - if ((png_ptr->do_filter) == PNG_NO_FILTERS) - { - if (png_ptr->color_type == PNG_COLOR_TYPE_PALETTE || -@@ -1002,8 +1007,17 @@ - optimize_cmf(data, png_image_size(png_ptr)); - #endif - -- if (size > 0) -- png_write_complete_chunk(png_ptr, png_IDAT, data, size); -+ if (size > 0) -+#ifdef PNG_WRITE_APNG_SUPPORTED -+ { -+ if (png_ptr->num_frames_written == 0) -+#endif -+ png_write_complete_chunk(png_ptr, png_IDAT, data, size); -+#ifdef PNG_WRITE_APNG_SUPPORTED -+ else -+ png_write_fdAT(png_ptr, data, size); -+ } -+#endif /* PNG_WRITE_APNG_SUPPORTED */ - png_ptr->mode |= PNG_HAVE_IDAT; - - png_ptr->zstream.next_out = data; -@@ -1050,7 +1064,17 @@ - #endif - - if (size > 0) -+#ifdef PNG_WRITE_APNG_SUPPORTED -+ { -+ if (png_ptr->num_frames_written == 0) -+#endif - png_write_complete_chunk(png_ptr, png_IDAT, data, size); -+#ifdef PNG_WRITE_APNG_SUPPORTED -+ else -+ png_write_fdAT(png_ptr, data, size); -+ } -+#endif /* PNG_WRITE_APNG_SUPPORTED */ -+ - png_ptr->zstream.avail_out = 0; - png_ptr->zstream.next_out = NULL; - png_ptr->mode |= PNG_HAVE_IDAT | PNG_AFTER_IDAT; -@@ -1885,6 +1909,82 @@ - } - #endif - -+#ifdef PNG_WRITE_APNG_SUPPORTED -+void /* PRIVATE */ -+png_write_acTL(png_structp png_ptr, -+ png_uint_32 num_frames, png_uint_32 num_plays) -+{ -+ png_byte buf[8]; -+ -+ png_debug(1, "in png_write_acTL"); -+ -+ png_ptr->num_frames_to_write = num_frames; -+ -+ if (png_ptr->apng_flags & PNG_FIRST_FRAME_HIDDEN) -+ num_frames--; -+ -+ png_save_uint_32(buf, num_frames); -+ png_save_uint_32(buf + 4, num_plays); -+ -+ png_write_complete_chunk(png_ptr, png_acTL, buf, (png_size_t)8); -+} -+ -+void /* PRIVATE */ -+png_write_fcTL(png_structp png_ptr, png_uint_32 width, png_uint_32 height, -+ png_uint_32 x_offset, png_uint_32 y_offset, -+ png_uint_16 delay_num, png_uint_16 delay_den, png_byte dispose_op, -+ png_byte blend_op) -+{ -+ png_byte buf[26]; -+ -+ png_debug(1, "in png_write_fcTL"); -+ -+ if (png_ptr->num_frames_written == 0 && (x_offset != 0 || y_offset != 0)) -+ png_error(png_ptr, "x and/or y offset for the first frame aren't 0"); -+ if (png_ptr->num_frames_written == 0 && -+ (width != png_ptr->first_frame_width || -+ height != png_ptr->first_frame_height)) -+ png_error(png_ptr, "width and/or height in the first frame's fcTL " -+ "don't match the ones in IHDR"); -+ -+ /* more error checking */ -+ png_ensure_fcTL_is_valid(png_ptr, width, height, x_offset, y_offset, -+ delay_num, delay_den, dispose_op, blend_op); -+ -+ png_save_uint_32(buf, png_ptr->next_seq_num); -+ png_save_uint_32(buf + 4, width); -+ png_save_uint_32(buf + 8, height); -+ png_save_uint_32(buf + 12, x_offset); -+ png_save_uint_32(buf + 16, y_offset); -+ png_save_uint_16(buf + 20, delay_num); -+ png_save_uint_16(buf + 22, delay_den); -+ buf[24] = dispose_op; -+ buf[25] = blend_op; -+ -+ png_write_complete_chunk(png_ptr, png_fcTL, buf, (png_size_t)26); -+ -+ png_ptr->next_seq_num++; -+} -+ -+void /* PRIVATE */ -+png_write_fdAT(png_structp png_ptr, -+ png_const_bytep data, png_size_t length) -+{ -+ png_byte buf[4]; -+ -+ png_write_chunk_header(png_ptr, png_fdAT, (png_uint_32)(4 + length)); -+ -+ png_save_uint_32(buf, png_ptr->next_seq_num); -+ png_write_chunk_data(png_ptr, buf, 4); -+ -+ png_write_chunk_data(png_ptr, data, length); -+ -+ png_write_chunk_end(png_ptr); -+ -+ png_ptr->next_seq_num++; -+} -+#endif /* PNG_WRITE_APNG_SUPPORTED */ -+ - /* Initializes the row writing capability of libpng */ - void /* PRIVATE */ - png_write_start_row(png_structrp png_ptr) -@@ -2778,4 +2878,39 @@ - } - #endif /* WRITE_FLUSH */ - } -+ -+#ifdef PNG_WRITE_APNG_SUPPORTED -+void /* PRIVATE */ -+png_write_reset(png_structp png_ptr) -+{ -+ png_ptr->row_number = 0; -+ png_ptr->pass = 0; -+ png_ptr->mode &= ~PNG_HAVE_IDAT; -+} -+ -+void /* PRIVATE */ -+png_write_reinit(png_structp png_ptr, png_infop info_ptr, -+ png_uint_32 width, png_uint_32 height) -+{ -+ if (png_ptr->num_frames_written == 0 && -+ (width != png_ptr->first_frame_width || -+ height != png_ptr->first_frame_height)) -+ png_error(png_ptr, "width and/or height in the first frame's fcTL " -+ "don't match the ones in IHDR"); -+ if (width > png_ptr->first_frame_width || -+ height > png_ptr->first_frame_height) -+ png_error(png_ptr, "width and/or height for a frame greater than" -+ "the ones in IHDR"); -+ -+ png_set_IHDR(png_ptr, info_ptr, width, height, -+ info_ptr->bit_depth, info_ptr->color_type, -+ info_ptr->interlace_type, info_ptr->compression_type, -+ info_ptr->filter_type); -+ -+ png_ptr->width = width; -+ png_ptr->height = height; -+ png_ptr->rowbytes = PNG_ROWBYTES(png_ptr->pixel_depth, width); -+ png_ptr->usr_width = png_ptr->width; -+} -+#endif /* PNG_WRITE_APNG_SUPPORTED */ - #endif /* WRITE */ -diff -Naru libpng-1.6.43.org/scripts/symbols.def libpng-1.6.43/scripts/symbols.def ---- libpng-1.6.43.org/scripts/symbols.def 2022-11-24 08:37:51.515052168 +0900 -+++ libpng-1.6.43/scripts/symbols.def 2024-02-25 09:14:28.961714221 +0900 -@@ -253,3 +253,23 @@ - png_set_eXIf @247 - png_get_eXIf_1 @248 - png_set_eXIf_1 @249 -+ png_get_acTL @250 -+ png_set_acTL @251 -+ png_get_num_frames @252 -+ png_get_num_plays @253 -+ png_get_next_frame_fcTL @254 -+ png_set_next_frame_fcTL @255 -+ png_get_next_frame_width @256 -+ png_get_next_frame_height @257 -+ png_get_next_frame_x_offset @258 -+ png_get_next_frame_y_offset @259 -+ png_get_next_frame_delay_num @260 -+ png_get_next_frame_delay_den @261 -+ png_get_next_frame_dispose_op @262 -+ png_get_next_frame_blend_op @263 -+ png_get_first_frame_is_hidden @264 -+ png_set_first_frame_is_hidden @265 -+ png_read_frame_head @266 -+ png_set_progressive_frame_fn @267 -+ png_write_frame_head @268 -+ png_write_frame_tail @269 diff --git a/runtime-optenv32/libpng-1.6+32/spec b/runtime-optenv32/libpng-1.6+32/spec deleted file mode 100644 index cc3aee4c936..00000000000 --- a/runtime-optenv32/libpng-1.6+32/spec +++ /dev/null @@ -1,5 +0,0 @@ -VER=1.6.43 -SRCS="git::commit=tags/v$VER::https://github.com/pnggroup/libpng" -CHKSUMS="SKIP" -REL=1 -CHKUPDATE="anitya::id=1705" From ae2dff0acd637acd0f7fc8883f387accb30a295f Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 17:02:21 +0800 Subject: [PATCH 183/722] libpng+32: update to 1.6.43 - Replace libpng+32 (libpng 1.2). - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libpng+32/autobuild/build | 10 ---------- runtime-optenv32/libpng+32/autobuild/defines | 21 ++++++++++++++------ runtime-optenv32/libpng+32/spec | 7 +++---- 3 files changed, 18 insertions(+), 20 deletions(-) delete mode 100644 runtime-optenv32/libpng+32/autobuild/build diff --git a/runtime-optenv32/libpng+32/autobuild/build b/runtime-optenv32/libpng+32/autobuild/build deleted file mode 100644 index 967df88b2af..00000000000 --- a/runtime-optenv32/libpng+32/autobuild/build +++ /dev/null @@ -1,10 +0,0 @@ -export PATH=/opt/32/bin:$PATH -./configure --prefix=/opt/32 --enable-shared \ - --disable-static --sysconfdir=/etc \ - CC=i686-pc-linux-gnu-gcc CXX=i686-pc-linux-gnu-g++ -make -make install DESTDIR=$PKGDIR - -rm -rf $PKGDIR/opt/32/{bin,share} -rm -rf $PKGDIR/opt/32/lib/{libpng.so,libpng.a} -rm -fr $PKGDIR/opt/32/lib/pkgconfig/libpng.pc diff --git a/runtime-optenv32/libpng+32/autobuild/defines b/runtime-optenv32/libpng+32/autobuild/defines index 9f4fedc54b4..0d43281a8c9 100644 --- a/runtime-optenv32/libpng+32/autobuild/defines +++ b/runtime-optenv32/libpng+32/autobuild/defines @@ -1,10 +1,19 @@ PKGNAME=libpng+32 -PKGEPOCH=2 -PKGDES="Libraries used by other programs for reading and writing PNG files" -PKGDEP="zlib+32" -BUILDDEP="32subsystem" PKGSEC=libs +PKGDEP="zlib+32" +BUILDDEP="devel-base+32" +PKGDES="Libraries used by other programs for reading and writing PNG files (32-bit x86 runtime)" + +PKGEPOCH=2 + +# FIXME: autogen.sh is intended only to generate 'configure' on systems +# that do not have it. You have a complete 'configure', if you need to +# change Makefile.am or configure.ac you also need to run configure with +# the --enable-maintainer-mode option. +RECONF=0 + +PKGBREAK="libpng-1.6+32" +PKGREP="libpng-1.6+32" -PKGBREAK="libpng-1.6+32<=1.6.18-1" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libpng+32/spec b/runtime-optenv32/libpng+32/spec index 9e2a7b42b05..af71f869778 100644 --- a/runtime-optenv32/libpng+32/spec +++ b/runtime-optenv32/libpng+32/spec @@ -1,5 +1,4 @@ -VER=1.2.57 -REL=2 -SRCS="tbl::https://prdownloads.sourceforge.net/libpng/libpng-$VER.tar.gz" -CHKSUMS="sha256::09ec37869fc5b130f5eb06ffb9bf949796e8d2d78e0788f78ab1c78624c6e9da" +VER=1.6.43 +SRCS="git::commit=tags/v$VER::https://github.com/pnggroup/libpng" +CHKSUMS="SKIP" CHKUPDATE="anitya::id=1705" From 9637993b37fd1c9992e401bf8c2f0cf394acabaa Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 17:08:27 +0800 Subject: [PATCH 184/722] freetype+32: update to 2.13.3 - Use optenv32 template. - Use libpng+32 as libpng dependency. - Introduce stage2 recipe. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/freetype+32/autobuild/build | 17 -------------- .../freetype+32/autobuild/defines | 23 +++++++++++-------- .../freetype+32/autobuild/defines.stage2 | 17 ++++++++++++++ runtime-optenv32/freetype+32/spec | 6 ++--- 4 files changed, 33 insertions(+), 30 deletions(-) delete mode 100644 runtime-optenv32/freetype+32/autobuild/build create mode 100644 runtime-optenv32/freetype+32/autobuild/defines.stage2 diff --git a/runtime-optenv32/freetype+32/autobuild/build b/runtime-optenv32/freetype+32/autobuild/build deleted file mode 100644 index c829032acab..00000000000 --- a/runtime-optenv32/freetype+32/autobuild/build +++ /dev/null @@ -1,17 +0,0 @@ -export PKG_CONFIG_PATH=/opt/32/lib/pkgconfig:/usr/share/pkgconfig -export PATH=/opt/32/bin:$PATH - -export CC="i686-pc-linux-gnu-gcc -m32" -export CXX="i686-pc-linux-gnu-g++ -m32" -export CCAS=i686-pc-linux-gnu-as -export LLVM_CONFIG=/opt/32/bin/llvm-config - -mkdir "$SRCDIR"/build -cd "$SRCDIR"/build -meson "$SRCDIR" --prefix=/opt/32 -ninja -DESTDIR="$PKGDIR" ninja install - -cd "$SRCDIR" - -rm -rfv "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/freetype+32/autobuild/defines b/runtime-optenv32/freetype+32/autobuild/defines index ecde0003472..c10fd9f9970 100644 --- a/runtime-optenv32/freetype+32/autobuild/defines +++ b/runtime-optenv32/freetype+32/autobuild/defines @@ -1,14 +1,17 @@ PKGNAME=freetype+32 -PKGDES="Font rendering engine (optenv32)" -PKGDEP="libpng-1.6+32 zlib+32 bzip2+32 x11-lib+32 harfbuzz+32" -BUILDDEP="32subsystem" PKGSEC=libs +PKGDEP="brotli+32 bzip2+32 harfbuzz+32 libpng+32 x11-lib+32 zlib+32" +BUILDDEP="devel-base+32" +PKGDES="Font rendering engine (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 -MESON_AFTER="-Dbrotli=disabled \ - -Dbzip2=enabled \ - -Dharfbuzz=enabled \ - -Dmmap=enabled \ - -Dpng=enabled \ - -Dzlib=system" +MESON_AFTER=( + '-Dbrotli=enabled' + '-Dbzip2=enabled' + '-Dharfbuzz=enabled' + '-Dmmap=enabled' + '-Dpng=enabled' + '-Dzlib=system' +) diff --git a/runtime-optenv32/freetype+32/autobuild/defines.stage2 b/runtime-optenv32/freetype+32/autobuild/defines.stage2 new file mode 100644 index 00000000000..03d2acbefd8 --- /dev/null +++ b/runtime-optenv32/freetype+32/autobuild/defines.stage2 @@ -0,0 +1,17 @@ +PKGNAME=freetype+32 +PKGSEC=libs +PKGDEP="brotli+32 bzip2+32 libpng+32 x11-lib+32 zlib+32" +BUILDDEP="devel-base+32" +PKGDES="Font rendering engine (32-bit x86 runtime)" + +NOLTO=1 +ABHOST=optenv32 + +MESON_AFTER=( + '-Dbrotli=enabled' + '-Dbzip2=enabled' + '-Dharfbuzz=disabled' + '-Dmmap=enabled' + '-Dpng=enabled' + '-Dzlib=system' +) diff --git a/runtime-optenv32/freetype+32/spec b/runtime-optenv32/freetype+32/spec index 9a13d04ac93..e9717aa938b 100644 --- a/runtime-optenv32/freetype+32/spec +++ b/runtime-optenv32/freetype+32/spec @@ -1,4 +1,4 @@ -VER=2.12.1 -SRCS="tbl::https://downloads.sourceforge.net/freetype/freetype-$VER.tar.xz" -CHKSUMS="sha256::4766f20157cc4cf0cd292f80bf917f92d1c439b243ac3018debf6b9140c41a7f" +VER=2.13.3 +SRCS="tbl::https://download-mirror.savannah.gnu.org/releases/freetype/freetype-$VER.tar.xz" +CHKSUMS="sha256::0550350666d427c74daeb85d5ac7bb353acba5f76956395995311a9c6f063289" CHKUPDATE="anitya::id=854" From a8cdf59b5b170169d53c60d7a1f24d8eebefeb49 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 17:32:35 +0800 Subject: [PATCH 185/722] x11-proto+32: update to 2024.1 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/x11-proto+32/autobuild/beyond | 3 --- runtime-optenv32/x11-proto+32/autobuild/defines | 15 +++++++++------ runtime-optenv32/x11-proto+32/autobuild/prepare | 3 --- runtime-optenv32/x11-proto+32/spec | 7 +++---- 4 files changed, 12 insertions(+), 16 deletions(-) delete mode 100644 runtime-optenv32/x11-proto+32/autobuild/beyond delete mode 100644 runtime-optenv32/x11-proto+32/autobuild/prepare diff --git a/runtime-optenv32/x11-proto+32/autobuild/beyond b/runtime-optenv32/x11-proto+32/autobuild/beyond deleted file mode 100644 index 8d046914b88..00000000000 --- a/runtime-optenv32/x11-proto+32/autobuild/beyond +++ /dev/null @@ -1,3 +0,0 @@ -mkdir -pv "$PKGDIR"/opt/32/lib/ -mv -v "$PKGDIR"/opt/32/{share,lib}/pkgconfig -rm -rv "$PKGDIR"/opt/32/share diff --git a/runtime-optenv32/x11-proto+32/autobuild/defines b/runtime-optenv32/x11-proto+32/autobuild/defines index 193140b746c..92e9e36bd1e 100644 --- a/runtime-optenv32/x11-proto+32/autobuild/defines +++ b/runtime-optenv32/x11-proto+32/autobuild/defines @@ -1,13 +1,16 @@ PKGNAME=x11-proto+32 PKGSEC=x11 -PKGDES="X11R7 Protocols" PKGDEP="" -BUILDDEP="32subsystem" +BUILDDEP="devel-base+32" +PKGDES="X11 protocols and development headers (32-bit x86 runtime)" ABTYPE=meson -MESON_AFTER="--prefix=/opt/32 \ - --sbindir=/opt/32/bin \ - -Dlegacy=true" +MESON_AFTER=( + '-Dlegacy=true' +) NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 + +# Note: Header only. +ABSPLITDBG=0 diff --git a/runtime-optenv32/x11-proto+32/autobuild/prepare b/runtime-optenv32/x11-proto+32/autobuild/prepare deleted file mode 100644 index cea1d029162..00000000000 --- a/runtime-optenv32/x11-proto+32/autobuild/prepare +++ /dev/null @@ -1,3 +0,0 @@ -export PATH=/opt/32/bin:$PATH -export CC=i686-pc-linux-gnu-gcc - diff --git a/runtime-optenv32/x11-proto+32/spec b/runtime-optenv32/x11-proto+32/spec index 8cfd1949903..4ee93585344 100644 --- a/runtime-optenv32/x11-proto+32/spec +++ b/runtime-optenv32/x11-proto+32/spec @@ -1,5 +1,4 @@ -VER=2019.2 -REL=1 -SRCS="tbl::https://xorg.freedesktop.org/archive/individual/proto/xorgproto-$VER.tar.bz2" -CHKSUMS="sha256::46ecd0156c561d41e8aa87ce79340910cdf38373b759e737fcbba5df508e7b8e" +VER=2024.1 +SRCS="tbl::https://xorg.freedesktop.org/archive/individual/proto/xorgproto-$VER.tar.xz" +CHKSUMS="sha256::372225fd40815b8423547f5d890c5debc72e88b91088fbfb13158c20495ccb59" CHKUPDATE="anitya::id=17190" From d30da5f950daeaecd6422fb90571991b750d5f6a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 17:36:28 +0800 Subject: [PATCH 186/722] x11-lib+32: update to 7.7.20240731 - Use multi-source spec. - Use optenv32 template. - Introduce stage2 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/x11-lib+32/autobuild/build | 74 ++++++++---- .../x11-lib+32/autobuild/build-order | 35 ++++++ .../x11-lib+32/autobuild/build-order.stage2 | 31 +++++ .../x11-lib+32/autobuild/build.stage2 | 58 +++++++++ runtime-optenv32/x11-lib+32/autobuild/defines | 10 +- .../x11-lib+32/autobuild/defines.stage2 | 11 ++ runtime-optenv32/x11-lib+32/autobuild/patch | 48 -------- runtime-optenv32/x11-lib+32/spec | 112 +++++++++++++++++- 8 files changed, 298 insertions(+), 81 deletions(-) create mode 100644 runtime-optenv32/x11-lib+32/autobuild/build-order create mode 100644 runtime-optenv32/x11-lib+32/autobuild/build-order.stage2 create mode 100644 runtime-optenv32/x11-lib+32/autobuild/build.stage2 create mode 100644 runtime-optenv32/x11-lib+32/autobuild/defines.stage2 delete mode 100644 runtime-optenv32/x11-lib+32/autobuild/patch diff --git a/runtime-optenv32/x11-lib+32/autobuild/build b/runtime-optenv32/x11-lib+32/autobuild/build index 4aeb8da0e25..feef6de056e 100644 --- a/runtime-optenv32/x11-lib+32/autobuild/build +++ b/runtime-optenv32/x11-lib+32/autobuild/build @@ -1,36 +1,58 @@ -export PATH=/opt/32/bin:$PATH -CC=i686-pc-linux-gnu-gcc -export PKG_CONFIG_PATH=/opt/32/lib/pkgconfig:/opt/32/share/pkgconfig +for package in `cat "$SRCDIR"/autobuild/build-order`; do + abinfo "Starting to build $package ..." + pushd "$package"-* -XORG_CONFIG="--prefix=/opt/32 --disable-static --enable-shared" + abinfo "Configuring ${package} ..." + case $package in + libXfont ) + ./configure \ + ${AUTOTOOLS_DEF[@]} \ + --disable-devel-docs + ;; + libXt ) + ./configure \ + ${AUTOTOOLS_DEF[@]} \ + --with-appdefaultdir=/etc/X11/app-defaults + ;; + libX11 ) + ./configure \ + ${AUTOTOOLS_DEF[@]} \ + --disable-xf86bigfont + ;; + libpciaccess ) + meson setup "$BLDDIR" ${MESON_DEF[@]} + ;; + * ) + ./configure ${AUTOTOOLS_DEF[@]} + ;; + esac -for package in $(grep -v '^#' lib-7.7.md5 | awk '{print $2}') -do - packagedir=${package%.tar.bz2} - pushd $packagedir - case $packagedir in - libXfont-[0-9]* ) - ./configure $XORG_CONFIG --disable-devel-docs \ - || exit 1 - ;; - libXt-[0-9]* ) - ./configure $XORG_CONFIG \ - --with-appdefaultdir=/etc/X11/app-defaults \ - || exit 1 + abinfo "Building ${package} ..." + case $package in + libpciaccess ) + ninja -C "$BLDDIR" ;; * ) - ./configure $XORG_CONFIG \ - || exit 1 + make + ;; + esac + + abinfo "Installing ${package} ..." + case $package in + libpciaccess ) + ninja -C "$BLDDIR" + DESTDIR="$PKGDIR" ninja -C "$BLDDIR" install + ;; + * ) + make install + make install \ + DESTDIR="$PKGDIR" ;; esac - make || exit 1 - make DESTDIR="$PKGDIR" install || exit 1 popd done -rm -rf "$PKGDIR"/etc -rm -rf "$PKGDIR"/opt/32/{bin,share} - abinfo "Removing some files found in x11-proto..." -rm -v "$PKGDIR"/opt/32/include/X11/extensions/XKBgeom.h -rm -v "$PKGDIR"/opt/32/include/X11/extensions/vldXvMC.h +rm -v \ + "$PKGDIR"/opt/32/include/X11/extensions/XKBgeom.h \ + "$PKGDIR"/opt/32/include/X11/extensions/vldXvMC.h diff --git a/runtime-optenv32/x11-lib+32/autobuild/build-order b/runtime-optenv32/x11-lib+32/autobuild/build-order new file mode 100644 index 00000000000..86975ba567e --- /dev/null +++ b/runtime-optenv32/x11-lib+32/autobuild/build-order @@ -0,0 +1,35 @@ +xtrans +libX11 +libXext +libFS +libICE +libSM +libXScrnSaver +libXt +libXmu +libXpm +libXaw +libXfixes +libXcomposite +libXrender +libXcursor +libXdamage +libfontenc +libXfont2 +libXft +libXi +libXinerama +libXrandr +libXres +libXtst +libXv +libXvMC +libXxf86dga +libXxf86vm +libdmx +libpciaccess +libxkbfile +libxshmfence +libXfont +libXp +libXpresent diff --git a/runtime-optenv32/x11-lib+32/autobuild/build-order.stage2 b/runtime-optenv32/x11-lib+32/autobuild/build-order.stage2 new file mode 100644 index 00000000000..317d2870021 --- /dev/null +++ b/runtime-optenv32/x11-lib+32/autobuild/build-order.stage2 @@ -0,0 +1,31 @@ +xtrans +libX11 +libXext +libFS +libICE +libSM +libXScrnSaver +libXt +libXmu +libXpm +libXaw +libXfixes +libXcomposite +libXrender +libXcursor +libXdamage +libXi +libXinerama +libXrandr +libXres +libXtst +libXv +libXvMC +libXxf86dga +libXxf86vm +libdmx +libpciaccess +libxkbfile +libxshmfence +libXp +libXpresent diff --git a/runtime-optenv32/x11-lib+32/autobuild/build.stage2 b/runtime-optenv32/x11-lib+32/autobuild/build.stage2 new file mode 100644 index 00000000000..4674659ff82 --- /dev/null +++ b/runtime-optenv32/x11-lib+32/autobuild/build.stage2 @@ -0,0 +1,58 @@ +for package in `cat "$SRCDIR"/autobuild/build-order.stage2`; do + abinfo "Starting to build $package ..." + pushd "$package"-* + + abinfo "Configuring ${package} ..." + case $package in + libXfont ) + ./configure \ + ${AUTOTOOLS_DEF[@]} \ + --disable-devel-docs + ;; + libXt ) + ./configure \ + ${AUTOTOOLS_DEF[@]} \ + --with-appdefaultdir=/etc/X11/app-defaults + ;; + libX11 ) + ./configure \ + ${AUTOTOOLS_DEF[@]} \ + --disable-xf86bigfont + ;; + libpciaccess ) + meson setup $BLDDIR ${MESON_DEF[@]} + ;; + * ) + ./configure ${AUTOTOOLS_DEF[@]} + ;; + esac + + abinfo "Building ${package} ..." + case $package in + libpciaccess ) + ninja -C "$BLDDIR" + ;; + * ) + make + ;; + esac + + abinfo "Installing ${package} ..." + case $package in + libpciaccess ) + ninja -C "$BLDDIR" install + DESTDIR="$PKGDIR" ninja -C "$BLDDIR" install + ;; + * ) + make install + make install \ + DESTDIR="$PKGDIR" + ;; + esac + popd +done + +abinfo "Removing some files found in x11-proto..." +rm -v \ + "$PKGDIR"/opt/32/include/X11/extensions/XKBgeom.h \ + "$PKGDIR"/opt/32/include/X11/extensions/vldXvMC.h diff --git a/runtime-optenv32/x11-lib+32/autobuild/defines b/runtime-optenv32/x11-lib+32/autobuild/defines index 9c45d891eec..52e54e8510a 100644 --- a/runtime-optenv32/x11-lib+32/autobuild/defines +++ b/runtime-optenv32/x11-lib+32/autobuild/defines @@ -1,11 +1,11 @@ PKGNAME=x11-lib+32 PKGSEC=x11 -PKGDES="X11R7 Libraries" -PKGDEP="fontconfig+32 libxcb+32" -BUILDDEP="x11-lib+32 32subsystem" +PKGDEP="fontconfig+32 libxcb+32 util-linux+32" +BUILDDEP="devel-base+32 x11-lib+32" +PKGDES="X11 runtime libraries (32-bit x86 runtime)" PKGREP="libxp" PKGPROV="libxp" -NOLTO=1 -ABHOST=noarch +NOLTO=1 +ABHOST=optenv32 diff --git a/runtime-optenv32/x11-lib+32/autobuild/defines.stage2 b/runtime-optenv32/x11-lib+32/autobuild/defines.stage2 new file mode 100644 index 00000000000..2896173c520 --- /dev/null +++ b/runtime-optenv32/x11-lib+32/autobuild/defines.stage2 @@ -0,0 +1,11 @@ +PKGNAME=x11-lib+32 +PKGSEC=x11 +PKGDEP="libxcb+32 util-linux+32" +BUILDDEP="devel-base+32" +PKGDES="X11 runtime libraries (32-bit x86 runtime)" + +PKGREP="libxp" +PKGPROV="libxp" + +NOLTO=1 +ABHOST=optenv32 diff --git a/runtime-optenv32/x11-lib+32/autobuild/patch b/runtime-optenv32/x11-lib+32/autobuild/patch deleted file mode 100644 index eac8255e031..00000000000 --- a/runtime-optenv32/x11-lib+32/autobuild/patch +++ /dev/null @@ -1,48 +0,0 @@ -cat > lib-7.7.md5 << "EOF" -377c4491593c417946efcd2c7600d1e62639f7a8bbca391887e2c4679807d773 xtrans-1.4.0.tar.bz2 -f108227469419ac04d196df0f3b80ce1f7f65059bb54c0de811f4d8e03fd6ec7 libX11-1.6.12.tar.bz2 -59ad6fcce98deaecc14d39a672cf218ca37aba617c9a0f691cac3bcd28edf82b libXext-1.3.4.tar.bz2 -c8e13727149b2ddfe40912027459b2522042e3844c5cd228c3300fe5eef6bd0f libFS-1.0.8.tar.bz2 -6f86dce12cf4bcaf5c37dddd8b1b64ed2ddf1ef7b218f22b9942595fb747c348 libICE-1.0.10.tar.bz2 -2d264499dcb05f56438dee12a1b4b71d76736ce7ba7aa6efbf15ebb113769cbb libSM-1.2.3.tar.bz2 -f917075a1b7b5a38d67a8b0238eaab14acd2557679835b154cf2bca576e89bf8 libXScrnSaver-1.2.3.tar.bz2 -b31df531dabed9f4611fc8980bc51d7782967e2aff44c4105251a1acb5a77831 libXt-1.2.0.tar.bz2 -9c343225e7c3dc0904f2122b562278da5fed639b1b5e880d25111561bac5b731 libXmu-1.1.3.tar.bz2 -9cd1da57588b6cb71450eff2273ef6b657537a9ac4d02d0014228845b935ac25 libXpm-3.5.13.tar.bz2 -8ef8067312571292ccc2bbe94c41109dcf022ea5a4ec71656a83d8cce9edb0cd libXaw-1.0.13.tar.bz2 -de1cd33aff226e08cefd0e6759341c2c8e8c9faf8ce9ac6ec38d43e287b22ad6 libXfixes-5.0.3.tar.bz2 -b3218a2c15bab8035d16810df5b8251ffc7132ff3aa70651a1fba0bfe9634e8f libXcomposite-0.4.5.tar.bz2 -c06d5979f86e64cabbde57c223938db0b939dff49fdb5a793a1d3d0396650949 libXrender-0.9.10.tar.bz2 -3ad3e9f8251094af6fe8cb4afcf63e28df504d46bfa5a5529db74a505d628782 libXcursor-1.2.0.tar.bz2 -b734068643cac3b5f3d2c8279dd366b5bf28c7219d9e9d8717e1383995e0ea45 libXdamage-1.1.5.tar.bz2 -2cfcce810ddd48f2e5dc658d28c1808e86dcf303eaff16728b9aa3dbc0092079 libfontenc-1.1.4.tar.bz2 -6d151b3368e5035efede4b6264c0fdc6662c1c99dbc2de425e3480cababc69e6 libXfont2-2.0.4.tar.bz2 -225c68e616dd29dbb27809e45e9eadf18e4d74c50be43020ef20015274529216 libXft-2.3.3.tar.bz2 -36a30d8f6383a72e7ce060298b4b181fd298bc3a135c8e201b7ca847f5f81061 libXi-1.7.10.tar.bz2 -0008dbd7ecf717e1e507eed1856ab0d9cf946d03201b85d5dcf61489bb02d720 libXinerama-1.1.4.tar.bz2 -8aea0ebe403d62330bb741ed595b53741acf45033d3bda1792f1d4cc3daee023 libXrandr-1.5.2.tar.bz2 -ff75c1643488e64a7cfbced27486f0f944801319c84c18d3bd3da6bf28c812d4 libXres-1.2.0.tar.bz2 -4655498a1b8e844e3d6f21f3b2c4e2b571effb5fd83199d428a6ba7ea4bf5204 libXtst-1.2.3.tar.bz2 -d26c13eac99ac4504c532e8e76a1c8e4bd526471eb8a0a4ff2a88db60cb0b088 libXv-1.0.11.tar.bz2 -6b3da7977b3f7eaf4f0ac6470ab1e562298d82c4e79077765787963ab7966dcd libXvMC-1.0.12.tar.bz2 -2b98bc5f506c6140d4eddd3990842d30f5dae733b64f198a504f07461bdb7203 libXxf86dga-1.1.5.tar.bz2 -afee27f93c5f31c0ad582852c0fb36d50e4de7cd585fcf655e278a633d85cd57 libXxf86vm-1.1.4.tar.bz2 -253f90005d134fa7a209fbcbc5a3024335367c930adf0f3203e754cf32747243 libdmx-1.1.4.tar.bz2 -214c9d0d884fdd7375ec8da8dcb91a8d3169f263294c9a90c575bf1938b9f489 libpciaccess-0.16.tar.bz2 -758dbdaa20add2db4902df0b1b7c936564b7376c02a0acd1f2a331bd334b38c7 libxkbfile-1.1.0.tar.bz2 -b884300d26a14961a076fbebc762a39831cb75f92bed5ccf9836345b459220c7 libxshmfence-1.3.tar.bz2 -1a7f7490774c87f2052d146d1e0e64518d32e6848184a18654e8d0bb57883242 libXfont-1.5.4.tar.bz2 -7f360c9905849c3587d48efc0f0ecbc852c19f61a52b18530d6b005cb9148c57 libXp-1.0.3.tar.bz2 -c11ae015141a9afbe10f4f2b8ee00b11adca6373dc1b9808d7c6c138b2da7b8a libXpresent-1.0.0.tar.bz2 -EOF - -for i in $(grep -v '^#' lib-7.7.md5 | awk '{print $2}') -do - wget https://xorg.freedesktop.org/releases/individual/lib/"$i" || abdie "xFailed fetching $i." -done && -sha256sum -c lib-7.7.md5 || abdie "Failed checksuming." - -for package in $(grep -v '^#' lib-7.7.md5 | awk '{print $2}') -do - tar -xf "$package" -done diff --git a/runtime-optenv32/x11-lib+32/spec b/runtime-optenv32/x11-lib+32/spec index e0aa66d8dc7..df9e0a1a8d6 100644 --- a/runtime-optenv32/x11-lib+32/spec +++ b/runtime-optenv32/x11-lib+32/spec @@ -1,2 +1,110 @@ -VER=7.7.20200908 -DUMMYSRC=1 +VER=7.7.20240731 +__XTRANS_VER=1.5.0 +__LIBX11_VER=1.8.10 +__LIBXEXT_VER=1.3.5 +__LIBFS_VER=1.0.9 +__LIBICE_VER=1.1.1 +__LIBSM_VER=1.2.4 +__LIBXSCRNSAVER_VER=1.2.4 +__LIBXT_VER=1.3.0 +__LIBXMU_VER=1.2.0 +__LIBXPM_VER=3.5.17 +__LIBXAW_VER=1.0.16 +__LIBXFIXES_VER=6.0.1 +__LIBXCOMPOSITE_VER=0.4.6 +__LIBXRENDER_VER=0.9.11 +__LIBXCURSOR_VER=1.2.2 +__LIBXDAMAGE_VER=1.1.6 +__LIBFONTENC_VER=1.1.8 +__LIBXFONT2_VER=2.0.6 +__LIBXFT_VER=2.3.8 +__LIBXI_VER=1.8.1 +__LIBXINERAMA_VER=1.1.5 +__LIBXRANDR_VER=1.5.4 +__LIBXRES_VER=1.2.2 +__LIBXTST_VER=1.2.4 +__LIBXV_VER=1.0.12 +__LIBXVMC_VER=1.0.14 +__LIBXXF86DGA_VER=1.1.6 +__LIBXXF86VM_VER=1.1.5 +__LIBDMX_VER=1.1.5 +__LIBPCIACCESS_VER=0.18.1 +__LIBXKBFILE_VER=1.1.3 +__LIBXSHMFENCE_VER=1.3.2 +__LIBXFONT_VER=1.5.4 +__LIBXP_VER=1.0.4 +__LIBXPRESENT_VER=1.0.1 + +__BASE_URL="https://xorg.freedesktop.org/releases/individual/lib/" +SRCS="tbl::${__BASE_URL}/xtrans-${__XTRANS_VER}.tar.gz \ + tbl::${__BASE_URL}/libX11-${__LIBX11_VER}.tar.gz \ + tbl::${__BASE_URL}/libXext-${__LIBXEXT_VER}.tar.gz \ + tbl::${__BASE_URL}/libFS-${__LIBFS_VER}.tar.gz \ + tbl::${__BASE_URL}/libICE-${__LIBICE_VER}.tar.gz \ + tbl::${__BASE_URL}/libSM-${__LIBSM_VER}.tar.gz \ + tbl::${__BASE_URL}/libXScrnSaver-${__LIBXSCRNSAVER_VER}.tar.gz \ + tbl::${__BASE_URL}/libXt-${__LIBXT_VER}.tar.gz \ + tbl::${__BASE_URL}/libXmu-${__LIBXMU_VER}.tar.gz \ + tbl::${__BASE_URL}/libXpm-${__LIBXPM_VER}.tar.gz \ + tbl::${__BASE_URL}/libXaw-${__LIBXAW_VER}.tar.gz \ + tbl::${__BASE_URL}/libXfixes-${__LIBXFIXES_VER}.tar.gz \ + tbl::${__BASE_URL}/libXcomposite-${__LIBXCOMPOSITE_VER}.tar.gz \ + tbl::${__BASE_URL}/libXrender-${__LIBXRENDER_VER}.tar.gz \ + tbl::${__BASE_URL}/libXcursor-${__LIBXCURSOR_VER}.tar.gz \ + tbl::${__BASE_URL}/libXdamage-${__LIBXDAMAGE_VER}.tar.gz \ + tbl::${__BASE_URL}/libfontenc-${__LIBFONTENC_VER}.tar.gz \ + tbl::${__BASE_URL}/libXfont2-${__LIBXFONT2_VER}.tar.gz \ + tbl::${__BASE_URL}/libXft-${__LIBXFT_VER}.tar.gz \ + tbl::${__BASE_URL}/libXi-${__LIBXI_VER}.tar.gz \ + tbl::${__BASE_URL}/libXinerama-${__LIBXINERAMA_VER}.tar.gz \ + tbl::${__BASE_URL}/libXrandr-${__LIBXRANDR_VER}.tar.gz \ + tbl::${__BASE_URL}/libXres-${__LIBXRES_VER}.tar.gz \ + tbl::${__BASE_URL}/libXtst-${__LIBXTST_VER}.tar.gz \ + tbl::${__BASE_URL}/libXv-${__LIBXV_VER}.tar.gz \ + tbl::${__BASE_URL}/libXvMC-${__LIBXVMC_VER}.tar.gz \ + tbl::${__BASE_URL}/libXxf86dga-${__LIBXXF86DGA_VER}.tar.gz \ + tbl::${__BASE_URL}/libXxf86vm-${__LIBXXF86VM_VER}.tar.gz \ + tbl::${__BASE_URL}/libdmx-${__LIBDMX_VER}.tar.gz \ + tbl::${__BASE_URL}/libpciaccess-${__LIBPCIACCESS_VER}.tar.xz \ + tbl::${__BASE_URL}/libxkbfile-${__LIBXKBFILE_VER}.tar.gz \ + tbl::${__BASE_URL}/libxshmfence-${__LIBXSHMFENCE_VER}.tar.gz \ + tbl::${__BASE_URL}/libXfont-${__LIBXFONT_VER}.tar.gz \ + tbl::${__BASE_URL}/libXp-${__LIBXP_VER}.tar.gz \ + tbl::${__BASE_URL}/libXpresent-${__LIBXPRESENT_VER}.tar.gz" +CHKSUMS="sha256::a806f8a92f879dcd0146f3f1153fdffe845f2fc0df9b1a26c19312b7b0a29c86 \ + sha256::b7a1a90d881bb7b94df5cf31509e6b03f15c0972d3ac25ab0441f5fbc789650f \ + sha256::1a3dcda154f803be0285b46c9338515804b874b5ccc7a2b769ab7fd76f1035bd \ + sha256::8bc2762f63178905228a28670539badcfa2c8793f7b6ce3f597b7741b932054a \ + sha256::04fbd34a11ba08b9df2e3cdb2055c2e3c1c51b3257f683d7fcf42dabcf8e1210 \ + sha256::51464ce1abce323d5b6707ceecf8468617106e1a8a98522f8342db06fd024c15 \ + sha256::0656b2630475104d6df75d91ebb8e0153e61d14e9871ef1f403bcda4a62a838a \ + sha256::de4a80c4cc7785b9620e572de71026805f68e85a2bf16c386009ef0e50be3f77 \ + sha256::b4686c4b4570044bcfc35bfaa3edbe68185ddf8e3250387f74a140c8e45afb2f \ + sha256::959466c7dfcfcaa8a65055bfc311f74d4c43d9257900f85ab042604d286df0c6 \ + sha256::012f90adf8739f2f023d63a5fee1528949cf2aba92ef7ac1abcfc2ae9cf28798 \ + sha256::e69eaa321173c748ba6e2f15c7cf8da87f911d3ea1b6af4b547974aef6366bec \ + sha256::3599dfcd96cd48d45e6aeb08578aa27636fa903f480f880c863622c2b352d076 \ + sha256::6aec3ca02e4273a8cbabf811ff22106f641438eb194a12c0ae93c7e08474b667 \ + sha256::98c3a30a3f85274c167d1ac5419d681ce41f14e27bfa5fe3003c8172cd8af104 \ + sha256::2afcc139eb6eb926ffe344494b1fc023da25def42874496e6e6d3aa8acef8595 \ + sha256::b55039f70959a1b2f02f4ec8db071e5170528d2c9180b30575dccf7510d7fb9f \ + sha256::a944df7b6837c8fa2067f6a5fc25d89b0acc4011cd0bc085106a03557fb502fc \ + sha256::32e48fe2d844422e64809e4e99b9d8aed26c1b541a5acf837c5037b8d9f278a8 \ + sha256::3b5f47c223e4b63d7f7fe758886b8bf665b20a7edb6962c423892fd150e326ea \ + sha256::2efa855cb42dc620eff3b77700d8655695e09aaa318f791f201fa60afa72b95c \ + sha256::c72c94dc3373512ceb67f578952c5d10915b38cc9ebb0fd176a49857b8048e22 \ + sha256::8abce597ced4a7ab89032aee91f6f784d9960adc772b2b59f17e515cd4127950 \ + sha256::01366506aeb033f6dffca5326af85f670746b0cabbfd092aabefb046cf48c445 \ + sha256::ce706619a970a580a0e35e9b5c98bdd2af243ac6494c65f44608a89a86100126 \ + sha256::3ad5d2b991219e2bf9b2f85d40b12c16f1afec038715e462f6058af73a9b5ef8 \ + sha256::87c7482b1e29b4eeb415815641c4f69c00545a8138e1b73ff1f361f7d9c22ac4 \ + sha256::f3f1c29fef8accb0adbd854900c03c6c42f1804f2bc1e4f3ad7b2e1f3b878128 \ + sha256::070e82cc1daa1b21ee1339aef56a909eab04cbe7d430fabfbb01ecd21b2dd9f3 \ + sha256::4af43444b38adb5545d0ed1c2ce46d9608cc47b31c2387fc5181656765a6fa76 \ + sha256::c4c2687729d1f920f165ebb96557a1ead2ef655809ab5eaa66a1ad36dc31050d \ + sha256::e93a85099604beb244ee756dcaf70e18b08701c1ca84c4de0126cd71bd6c8181 \ + sha256::59be6eab53f7b0feb6b7933c11d67d076ae2c0fd8921229c703fc7a4e9a80d6e \ + sha256::05e46af1ccb68f1752cca5879774a4fb9bf3b19fe088eb745034956e0c6fadba \ + sha256::8ebf8567a8f6afe5a64275a2ecfd4c84e957970c27299d964350f60be9f3541d" +# FIXME: No point in specifying CHKUPDATE for multi-version package. +SUBDIR=. From f9d3f8aee58d5c799457eab6685a348abbe32b7f Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 17:45:36 +0800 Subject: [PATCH 187/722] freetype+32: explicitly declare meson build type --- runtime-optenv32/freetype+32/autobuild/defines | 1 + runtime-optenv32/freetype+32/autobuild/defines.stage2 | 1 + 2 files changed, 2 insertions(+) diff --git a/runtime-optenv32/freetype+32/autobuild/defines b/runtime-optenv32/freetype+32/autobuild/defines index c10fd9f9970..86c70eee318 100644 --- a/runtime-optenv32/freetype+32/autobuild/defines +++ b/runtime-optenv32/freetype+32/autobuild/defines @@ -7,6 +7,7 @@ PKGDES="Font rendering engine (32-bit x86 runtime)" NOLTO=1 ABHOST=optenv32 +ABTYPE=meson MESON_AFTER=( '-Dbrotli=enabled' '-Dbzip2=enabled' diff --git a/runtime-optenv32/freetype+32/autobuild/defines.stage2 b/runtime-optenv32/freetype+32/autobuild/defines.stage2 index 03d2acbefd8..99204eb48a9 100644 --- a/runtime-optenv32/freetype+32/autobuild/defines.stage2 +++ b/runtime-optenv32/freetype+32/autobuild/defines.stage2 @@ -7,6 +7,7 @@ PKGDES="Font rendering engine (32-bit x86 runtime)" NOLTO=1 ABHOST=optenv32 +ABTYPE=meson MESON_AFTER=( '-Dbrotli=enabled' '-Dbzip2=enabled' From 450c5f09f8187a65db2c125e0f22f793b6537944 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 17:46:13 +0800 Subject: [PATCH 188/722] ghostscript+32: drop, orphaned --- .../ghostscript+32/autobuild/build | 19 --------------- .../ghostscript+32/autobuild/defines | 8 ------- .../ghostscript+32/autobuild/patches/series | 1 - .../autobuild/patches/system-zlib.patch | 24 ------------------- .../ghostscript+32/autobuild/prepare | 3 --- runtime-optenv32/ghostscript+32/spec | 5 ---- 6 files changed, 60 deletions(-) delete mode 100644 runtime-optenv32/ghostscript+32/autobuild/build delete mode 100644 runtime-optenv32/ghostscript+32/autobuild/defines delete mode 100644 runtime-optenv32/ghostscript+32/autobuild/patches/series delete mode 100644 runtime-optenv32/ghostscript+32/autobuild/patches/system-zlib.patch delete mode 100644 runtime-optenv32/ghostscript+32/autobuild/prepare delete mode 100644 runtime-optenv32/ghostscript+32/spec diff --git a/runtime-optenv32/ghostscript+32/autobuild/build b/runtime-optenv32/ghostscript+32/autobuild/build deleted file mode 100644 index 593e4f89c85..00000000000 --- a/runtime-optenv32/ghostscript+32/autobuild/build +++ /dev/null @@ -1,19 +0,0 @@ -export PATH=/opt/32/bin:$PATH -CC=/opt/32/bin/i686-pc-linux-gnu-gcc -CXX=/opt/32/bin/i686-pc-linux-gnu-g++ - -./configure --build=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --target=i686-pc-linux-gnu\ - --prefix=/opt/32 \ - --disable-compile-inits \ - --enable-dynamic \ - --with-system-libtiff \ - --disable-gtk \ - PKG_CONFIG_PATH="/opt/32/lib/pkgconfig" -make - -make install DESTDIR="$PKGDIR" cups_serverroot="$PKGDIR"/etc/cups \ - cups_serverbin="$PKGDIR"/opt/32/lib/cups install install-so - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/ghostscript+32/autobuild/defines b/runtime-optenv32/ghostscript+32/autobuild/defines deleted file mode 100644 index babf87989ce..00000000000 --- a/runtime-optenv32/ghostscript+32/autobuild/defines +++ /dev/null @@ -1,8 +0,0 @@ -PKGNAME=ghostscript+32 -PKGSEC=doc -PKGDEP="x11-lib+32 fontconfig+32 zlib+32 libpng+32 libjpeg-turbo+32 \ - libtiff+32 dbus+32" -BUILDDEP="32subsystem" -PKGDES="An interpreter for the PostScript language (optenv32)" -NOLTO=1 -ABHOST=noarch diff --git a/runtime-optenv32/ghostscript+32/autobuild/patches/series b/runtime-optenv32/ghostscript+32/autobuild/patches/series deleted file mode 100644 index 4f3ef5dff14..00000000000 --- a/runtime-optenv32/ghostscript+32/autobuild/patches/series +++ /dev/null @@ -1 +0,0 @@ -system-zlib.patch diff --git a/runtime-optenv32/ghostscript+32/autobuild/patches/system-zlib.patch b/runtime-optenv32/ghostscript+32/autobuild/patches/system-zlib.patch deleted file mode 100644 index d33895a678d..00000000000 --- a/runtime-optenv32/ghostscript+32/autobuild/patches/system-zlib.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -up ghostscript-9.12/configure.ac.sys-zlib ghostscript-9.12/configure.ac ---- ghostscript-9.12/configure.ac.sys-zlib 2014-03-26 11:48:54.983972222 +0000 -+++ ghostscript-9.12/configure.ac 2014-03-26 11:49:36.807230531 +0000 -@@ -854,7 +854,7 @@ AC_MSG_CHECKING([for local zlib source]) - dnl zlib is needed for language level 3, and libpng - # we must define ZLIBDIR regardless because png.mak does a -I$(ZLIBDIR) - # this seems a harmless default --ZLIBDIR=src -+ZLIBDIR=$includedir - AUX_SHARED_ZLIB= - - if test -d $srcdir/zlib; then -diff -up ghostscript-9.12/configure.sys-zlib ghostscript-9.12/configure ---- ghostscript-9.12/configure.sys-zlib 2014-03-26 11:49:45.547284521 +0000 -+++ ghostscript-9.12/configure 2014-03-26 11:49:56.171350127 +0000 -@@ -6254,7 +6254,7 @@ fi - $as_echo_n "checking for local zlib source... " >&6; } - # we must define ZLIBDIR regardless because png.mak does a -I$(ZLIBDIR) - # this seems a harmless default --ZLIBDIR=src -+ZLIBDIR=$includedir - AUX_SHARED_ZLIB= - - if test -d $srcdir/zlib; then diff --git a/runtime-optenv32/ghostscript+32/autobuild/prepare b/runtime-optenv32/ghostscript+32/autobuild/prepare deleted file mode 100644 index b7d28cb2c7e..00000000000 --- a/runtime-optenv32/ghostscript+32/autobuild/prepare +++ /dev/null @@ -1,3 +0,0 @@ -autoreconf -fi - -rm -rf freetype jpeg libpng tiff zlib expat diff --git a/runtime-optenv32/ghostscript+32/spec b/runtime-optenv32/ghostscript+32/spec deleted file mode 100644 index 8cf4ba47f62..00000000000 --- a/runtime-optenv32/ghostscript+32/spec +++ /dev/null @@ -1,5 +0,0 @@ -VER=9.27 -REL=1 -SRCS="tbl::https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs${VER//./}/ghostscript-$VER.tar.gz" -CHKSUMS="sha256::9760e8bdd07a08dbd445188a6557cb70e60ccb6a5601f7dbfba0d225e28ce285" -CHKUPDATE="anitya::id=1157" From f7892568eb6ac0210846e573701e0e25c1044324 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 17:46:22 +0800 Subject: [PATCH 189/722] libspectre+32: drop, orphaned --- runtime-optenv32/libspectre+32/autobuild/build | 8 -------- runtime-optenv32/libspectre+32/autobuild/defines | 6 ------ runtime-optenv32/libspectre+32/spec | 4 ---- 3 files changed, 18 deletions(-) delete mode 100644 runtime-optenv32/libspectre+32/autobuild/build delete mode 100644 runtime-optenv32/libspectre+32/autobuild/defines delete mode 100644 runtime-optenv32/libspectre+32/spec diff --git a/runtime-optenv32/libspectre+32/autobuild/build b/runtime-optenv32/libspectre+32/autobuild/build deleted file mode 100644 index d97dd14c70b..00000000000 --- a/runtime-optenv32/libspectre+32/autobuild/build +++ /dev/null @@ -1,8 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" diff --git a/runtime-optenv32/libspectre+32/autobuild/defines b/runtime-optenv32/libspectre+32/autobuild/defines deleted file mode 100644 index a2331b8cded..00000000000 --- a/runtime-optenv32/libspectre+32/autobuild/defines +++ /dev/null @@ -1,6 +0,0 @@ -PKGNAME=libspectre+32 -PKGSEC=libs -PKGDEP="ghostscript+32" -PKGDES="Library for rendering PostScript documents (optenv32)" -NOLTO=1 -ABHOST=noarch diff --git a/runtime-optenv32/libspectre+32/spec b/runtime-optenv32/libspectre+32/spec deleted file mode 100644 index 218e2992bf2..00000000000 --- a/runtime-optenv32/libspectre+32/spec +++ /dev/null @@ -1,4 +0,0 @@ -VER=0.2.9 -SRCS="tbl::https://libspectre.freedesktop.org/releases/libspectre-$VER.tar.gz" -CHKSUMS="sha256::49ae9c52b5af81b405455c19fe24089d701761da2c45d22164a99576ceedfbed" -CHKUPDATE="anitya::id=1724" From a118b550d6fcfca4c68a663ad07f7c2a4f6f0c04 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 17:47:58 +0800 Subject: [PATCH 190/722] cairo+32: drop unused libspectre+32 dep --- runtime-optenv32/cairo+32/autobuild/defines | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/cairo+32/autobuild/defines b/runtime-optenv32/cairo+32/autobuild/defines index cf5538298cb..c1521a83a77 100644 --- a/runtime-optenv32/cairo+32/autobuild/defines +++ b/runtime-optenv32/cairo+32/autobuild/defines @@ -1,7 +1,7 @@ PKGNAME=cairo+32 PKGSEC=libs -PKGDEP="fontconfig+32 glib+32 libdrm+32 libpng-1.6+32 libspectre+32 \ - lzo+32 pixman+32 x11-lib+32" +PKGDEP="fontconfig+32 glib+32 libdrm+32 libpng+32 lzo+32 \ + pixman+32 x11-lib+32" BUILDDEP="devel-base+32" PKGDES="A 2D graphics library with support for multiple output devices (32-bit x86 runtime)" From 207de69a95f7c7dc3035f01efc58b32e5871bef1 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 17:49:29 +0800 Subject: [PATCH 191/722] libtheora+32: use libpng+32 to provide libpng --- runtime-optenv32/libtheora+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libtheora+32/autobuild/defines b/runtime-optenv32/libtheora+32/autobuild/defines index e8dadc0bb4f..503210b5513 100644 --- a/runtime-optenv32/libtheora+32/autobuild/defines +++ b/runtime-optenv32/libtheora+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libtheora+32 PKGSEC=libs -PKGDEP="libogg+32 libpng-1.6+32 libvorbis+32" +PKGDEP="libogg+32 libpng+32 libvorbis+32" BUILDDEP="devel-base+32" PKGDES="An open video codec developed by the Xiph.org (32-bit x86 runtime)" From 4b999f97085e75763528c6bb4b2c32c203596c36 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 17:52:23 +0800 Subject: [PATCH 192/722] pixman+32: update to 0.43.0 - Use optenv32 template. - Add libpng+32 dep. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/pixman+32/autobuild/build | 10 - runtime-optenv32/pixman+32/autobuild/defines | 8 +- .../patches/pixman-gamma-correction.patch | 406 ------------------ runtime-optenv32/pixman+32/spec | 4 +- 4 files changed, 6 insertions(+), 422 deletions(-) delete mode 100644 runtime-optenv32/pixman+32/autobuild/build delete mode 100644 runtime-optenv32/pixman+32/autobuild/patches/pixman-gamma-correction.patch diff --git a/runtime-optenv32/pixman+32/autobuild/build b/runtime-optenv32/pixman+32/autobuild/build deleted file mode 100644 index b1144f3b6af..00000000000 --- a/runtime-optenv32/pixman+32/autobuild/build +++ /dev/null @@ -1,10 +0,0 @@ -export PATH=/opt/32/bin:$PATH -export CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --prefix=/opt/32 \ - --disable-gtk \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" diff --git a/runtime-optenv32/pixman+32/autobuild/defines b/runtime-optenv32/pixman+32/autobuild/defines index 28fee1f8c9b..6d6695b2dd4 100644 --- a/runtime-optenv32/pixman+32/autobuild/defines +++ b/runtime-optenv32/pixman+32/autobuild/defines @@ -1,8 +1,8 @@ PKGNAME=pixman+32 -PKGDES="Pixel manipulation library for X and Cairo (optenv32)" -PKGDEP="glibc+32" -BUILDDEP="32subsystem" PKGSEC=libs +PKGDEP="glibc+32 libpng+32" +BUILDDEP="devel-base+32" +PKGDES="Pixel manipulation library for X and Cairo (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/pixman+32/autobuild/patches/pixman-gamma-correction.patch b/runtime-optenv32/pixman+32/autobuild/patches/pixman-gamma-correction.patch deleted file mode 100644 index f27ca0a9057..00000000000 --- a/runtime-optenv32/pixman+32/autobuild/patches/pixman-gamma-correction.patch +++ /dev/null @@ -1,406 +0,0 @@ -/pixman/pixman-glyph.c 2014-04-24 06:34:14.000000000 +0200 -+++ b/pixman/pixman-glyph.c 2015-08-07 22:34:08.457721370 +0200 -@@ -32,4 +31,263 @@ - #include - -+static unsigned char actable[65536] = { -+0,0,1,2,2,3,4,4,5,5,6,7,7,8,9,9,10,11,11,12,13,13,13,14,15,15,16,17,17,18,19,19,20,21,21,22,23,23,24,24,25,26,27,28,28,29,29,30,31,31,32,33,33,34,34,35,36,37,37,38,39,39,40,41,41,42,43,43,44,45,45,46,47,47,48,49,49,50,51,52,52,53,53,55,55,56,57,57,58,58,59,60,61,62,62,63,64,64,65,66,66,67,68,69,70,70,71,72,72,73,74,74,75,76,76,77,78,79,79,80,81,82,83,84,84,85,86,87,88,88,89,90,91,91,91,92,93,94,95,95,96,97,98,99,100,100,101,102,103,104,105,106,107,107,107,108,109,110,111,112,113,114,115,116,116,117,118,119,120,121,122,123,124,124,125,126,127,128,129,129,130,131,132,134,135,135,136,137,138,140,141,141,142,143,144,146,146,147,148,150,150,151,152,154,155,155,157,158,160,160,161,163,164,164,166,168,168,169,171,173,173,175,176,176,178,180,182,182,184,186,186,189,191,191,193,196,196,199,201,201,204,207,207,210,214,214,218,222,222,226,226,232,238,238,246,255, -+0,0,1,2,2,3,4,4,5,5,6,7,7,8,9,9,10,11,11,12,13,13,14,15,15,16,16,17,17,18,19,19,20,21,22,22,23,24,24,25,26,26,27,28,28,29,29,30,31,31,32,33,34,34,35,35,36,37,37,38,39,40,40,41,41,42,43,44,44,45,45,47,47,48,48,49,49,51,51,52,52,53,54,55,56,56,57,57,58,59,59,60,61,62,63,63,64,64,65,66,66,67,68,69,70,71,71,72,73,73,74,75,75,76,77,78,78,79,80,80,81,82,83,84,85,86,86,87,88,89,89,90,91,92,92,93,93,94,95,96,97,97,98,99,100,101,102,103,103,104,105,106,107,108,108,109,110,111,112,113,113,114,115,116,116,117,118,119,120,121,122,123,124,124,125,126,128,129,130,130,131,132,133,134,135,135,136,138,139,140,141,141,142,144,145,146,146,148,149,150,150,152,153,154,156,156,157,159,160,160,162,163,165,165,167,168,168,170,172,173,173,175,177,177,179,181,183,183,185,187,187,189,192,192,194,196,196,199,202,202,205,208,208,211,214,214,218,222,222,227,227,232,238,238,246,255, -+0,0,1,2,2,3,4,4,5,5,6,7,7,8,9,9,10,11,11,12,13,13,14,15,15,16,17,17,18,19,19,20,20,21,22,22,23,24,24,25,26,26,27,28,28,29,29,30,31,32,32,33,34,34,35,35,36,37,38,38,39,40,40,41,42,43,43,44,44,45,46,47,47,48,49,49,50,51,52,52,53,53,54,55,56,56,57,58,58,59,60,60,62,62,63,63,64,65,65,66,67,67,69,69,70,71,72,72,73,74,74,75,76,76,77,78,79,79,80,81,81,82,84,84,85,86,87,88,88,89,90,91,91,92,92,93,94,95,95,96,97,98,99,100,100,101,102,103,104,105,106,107,107,108,108,109,110,111,112,113,114,115,116,117,117,118,119,120,121,122,123,124,125,125,126,127,128,129,130,130,131,132,134,135,136,136,137,138,139,141,142,142,143,144,146,147,147,148,149,151,151,152,154,155,156,156,158,159,161,161,162,164,165,165,167,169,169,170,172,174,174,176,178,178,180,181,183,183,186,188,188,190,192,192,195,197,197,200,202,202,205,208,208,211,215,215,219,223,223,227,227,232,238,238,246,255, -+0,0,1,2,2,3,4,4,5,6,6,7,7,8,9,9,10,11,11,12,13,13,14,15,15,16,17,17,18,19,19,20,20,21,22,22,23,24,24,25,26,26,27,27,28,29,30,30,31,32,32,33,34,34,35,36,37,37,38,38,39,40,41,41,42,42,43,44,45,45,46,46,48,48,49,49,50,51,52,52,53,54,54,55,55,57,57,58,59,59,60,61,61,62,63,64,64,65,66,66,67,68,68,69,70,71,72,73,73,74,75,75,76,77,77,78,79,80,80,81,82,83,83,84,85,86,86,87,88,89,89,90,91,92,93,93,94,95,96,97,98,98,99,100,101,102,103,104,104,105,106,106,107,108,109,110,111,112,113,113,114,115,115,116,117,118,119,120,121,122,123,123,124,125,126,128,129,130,130,131,132,133,134,135,135,136,138,139,140,141,141,142,144,145,146,146,147,149,150,151,151,153,154,156,156,157,158,160,160,161,163,165,165,166,168,169,169,171,173,175,175,176,178,178,180,182,184,184,186,188,188,190,193,193,195,198,198,200,203,203,206,209,209,212,215,215,219,223,223,227,227,233,238,238,246,255, -+0,0,1,2,2,3,4,4,5,6,6,7,7,8,9,9,10,11,11,12,13,13,14,15,15,16,17,17,18,19,19,20,20,21,22,22,23,24,24,25,26,26,27,28,29,29,30,30,31,32,32,33,34,35,35,36,37,37,38,38,39,40,41,41,42,42,44,44,45,45,46,47,48,48,49,50,50,51,52,53,53,54,54,55,56,57,58,58,59,59,60,61,61,62,63,64,65,65,66,67,67,68,69,69,70,71,72,73,74,74,75,76,76,77,78,79,79,80,81,81,82,83,84,84,85,86,87,88,88,89,90,91,91,92,93,94,95,96,96,97,98,99,100,101,101,102,103,104,105,106,107,107,108,108,109,110,111,112,113,114,115,116,116,117,118,119,120,121,122,123,124,124,125,126,127,128,129,130,130,131,132,134,135,136,136,137,138,139,141,142,142,143,144,145,147,147,148,149,151,152,152,153,155,156,156,158,159,161,161,162,164,165,165,167,168,170,170,172,173,175,175,177,179,179,181,183,185,185,187,189,189,191,193,193,196,198,198,201,203,203,206,209,209,212,216,216,219,223,223,228,228,233,239,239,246,255, -+0,0,1,2,2,3,4,4,5,6,6,7,7,8,9,9,10,11,11,12,13,13,14,15,15,16,16,17,18,18,19,20,20,21,22,22,23,24,25,25,26,27,27,28,29,29,30,30,31,32,33,33,34,35,35,36,36,38,38,39,39,40,41,42,42,43,43,44,45,46,46,47,47,49,49,50,50,51,52,53,53,54,55,55,56,57,57,59,59,60,60,61,62,62,63,64,65,66,66,67,68,68,69,70,70,71,72,72,73,75,75,76,77,77,78,79,80,80,81,82,83,83,84,85,86,86,87,88,89,89,90,91,92,93,93,94,95,96,97,98,98,99,100,101,102,103,104,104,104,105,106,107,108,109,110,111,112,113,114,114,114,115,116,117,118,119,120,121,122,122,123,124,125,126,128,129,130,130,131,132,133,134,135,135,136,138,139,140,141,141,142,144,145,146,146,147,149,150,151,151,153,154,155,155,157,158,160,161,161,163,164,166,166,167,169,169,171,172,174,174,176,178,180,180,181,183,183,185,188,188,190,192,194,194,196,199,199,201,204,204,207,210,210,213,216,216,220,220,224,228,228,233,239,239,246,255, -+0,0,1,2,2,3,4,4,5,6,6,7,8,8,9,9,10,11,11,12,13,13,14,15,15,16,16,17,18,18,19,20,20,22,22,23,23,24,25,25,26,27,27,28,29,29,30,31,32,32,33,33,34,35,35,36,37,38,38,39,39,40,41,42,42,43,43,45,45,46,46,47,48,49,49,50,51,51,52,53,54,54,55,56,56,57,57,59,59,60,61,61,62,63,63,64,65,66,67,67,68,69,69,70,71,71,72,73,74,75,76,76,77,78,79,79,80,81,81,82,83,84,84,85,86,87,88,88,89,90,91,91,92,93,94,95,96,96,97,98,99,100,101,101,102,103,104,104,105,106,107,108,108,109,110,111,112,113,114,115,115,116,117,118,119,120,121,122,123,123,124,125,126,127,128,129,130,130,131,132,134,135,136,136,137,138,139,141,142,142,143,144,145,147,147,148,149,151,152,152,153,155,156,156,157,159,160,162,162,163,165,166,166,168,170,170,171,173,175,175,177,178,180,180,182,184,184,186,188,188,190,192,195,195,197,200,200,202,205,205,208,211,211,214,217,217,221,221,224,229,229,234,239,239,246,255, -+0,0,1,2,2,3,4,4,5,6,6,7,8,8,9,9,10,11,11,12,13,13,14,15,15,16,16,17,18,19,20,20,21,22,22,23,23,24,25,25,26,27,27,28,29,30,30,31,32,32,33,33,34,35,36,36,37,38,38,39,40,40,41,42,43,43,44,45,45,46,47,47,48,49,50,50,51,52,52,53,54,55,55,56,56,57,58,59,60,60,61,62,62,63,64,64,66,66,67,68,68,69,70,70,71,72,72,73,74,75,76,77,77,78,79,80,80,81,82,83,83,84,85,86,86,87,88,89,90,90,91,92,93,94,94,95,96,97,98,98,99,100,101,102,103,104,104,104,105,106,107,108,109,110,111,112,113,114,115,115,115,116,117,118,119,120,121,122,123,123,124,125,127,128,129,130,131,131,132,133,134,135,136,136,138,139,140,141,142,142,144,145,146,147,147,149,150,151,153,153,154,155,157,157,158,160,161,163,163,164,166,167,167,169,170,170,172,174,175,175,177,179,181,181,183,185,185,187,189,189,191,193,195,195,198,200,200,203,205,205,208,211,211,214,218,218,221,221,225,229,229,234,240,240,246,255, -+0,0,1,2,2,3,4,4,5,6,6,7,8,8,9,10,10,11,12,12,13,14,14,15,16,16,17,18,18,19,20,20,21,21,22,23,23,24,25,25,26,27,28,28,29,30,30,31,31,32,33,34,34,35,36,36,37,38,39,39,40,40,41,42,43,43,44,44,46,46,47,47,48,49,50,51,51,52,52,53,54,55,56,56,57,57,58,59,59,61,61,62,63,63,64,65,65,66,67,68,69,69,70,71,71,72,73,74,74,75,76,76,77,78,79,80,81,82,82,83,84,85,85,86,87,88,88,89,90,91,92,92,93,94,95,96,96,97,98,99,100,101,101,101,102,103,104,105,106,107,108,109,109,110,111,112,113,114,114,115,116,117,118,119,120,121,122,122,123,124,125,126,127,128,129,129,130,131,132,134,135,136,136,137,138,139,141,142,142,143,144,145,147,147,148,149,151,152,152,153,155,156,157,157,159,160,162,162,163,165,166,166,168,169,171,171,173,174,176,176,178,180,180,182,183,185,185,187,190,190,192,194,194,196,198,201,201,203,206,206,209,212,212,215,218,218,222,222,226,230,230,234,240,240,246,255, -+0,0,1,2,2,3,4,4,5,6,6,7,8,8,9,10,10,11,12,12,13,14,14,15,16,16,17,18,18,19,20,20,21,21,22,23,23,24,25,26,26,27,28,28,29,30,30,31,32,33,33,34,34,35,36,37,37,38,39,39,40,41,41,42,43,44,44,45,46,47,47,48,48,49,50,51,51,52,53,53,54,55,56,56,57,58,58,59,60,61,62,62,63,64,64,65,66,66,68,68,69,70,70,71,72,72,73,74,75,75,76,77,77,78,80,80,81,82,83,83,84,85,86,86,87,88,89,90,90,91,92,93,94,94,95,96,97,98,99,99,100,101,101,102,103,104,105,105,106,107,108,109,110,111,112,113,114,115,115,116,117,117,118,119,120,121,122,122,123,125,126,127,128,129,130,130,131,132,133,134,135,136,136,138,139,140,141,142,142,144,145,146,147,147,149,150,151,152,152,154,155,157,158,158,159,161,162,162,164,165,167,167,169,170,172,172,173,175,177,177,179,180,180,182,184,186,186,188,190,190,192,195,195,197,199,202,202,204,207,207,210,212,212,216,219,219,222,222,226,230,230,235,240,240,247,255, -+0,0,1,2,2,3,4,4,5,6,6,7,8,8,9,10,10,11,12,12,13,14,14,15,16,16,17,18,18,19,19,20,21,21,22,23,24,24,25,26,26,27,28,28,29,29,31,31,32,32,33,34,34,35,36,37,37,38,38,40,40,41,41,42,43,44,44,45,46,46,47,48,49,49,50,50,52,52,53,54,54,55,55,57,57,58,59,59,60,61,61,63,63,64,65,65,66,67,67,68,69,70,71,71,72,73,74,74,75,76,76,77,78,79,79,80,81,82,82,83,84,85,86,87,88,88,89,90,91,92,92,93,94,95,95,96,96,97,98,99,100,101,102,102,103,104,105,106,107,108,109,110,110,111,112,112,113,114,115,116,117,118,119,120,121,121,122,123,124,125,126,127,128,128,129,130,131,133,134,135,135,136,137,138,139,141,141,142,143,144,145,147,147,148,149,150,152,152,153,155,156,157,157,159,160,162,162,163,165,166,166,168,169,171,171,172,174,176,176,178,179,181,181,183,185,185,187,189,191,191,193,195,195,198,200,200,202,205,205,207,210,210,213,216,216,219,223,223,227,231,231,235,241,241,247,255, -+0,0,1,2,2,3,4,4,5,6,6,7,8,8,9,10,10,11,12,12,13,14,14,15,16,16,17,18,18,19,19,20,21,22,23,23,24,24,25,26,26,27,28,29,29,30,31,31,32,32,34,34,35,35,36,37,37,38,39,40,40,41,42,42,43,44,45,45,46,46,48,48,49,49,50,51,52,53,53,54,54,55,56,57,58,58,59,60,60,61,62,63,64,64,65,66,66,67,68,68,69,70,71,72,72,73,74,75,75,76,77,77,78,79,80,80,81,82,83,83,84,85,87,87,88,89,90,90,91,92,93,94,94,95,95,96,97,98,99,99,100,101,102,103,104,105,106,106,107,108,109,110,111,112,113,113,114,115,116,117,118,119,120,121,122,122,123,124,125,126,127,128,129,129,130,131,132,133,134,135,135,137,138,139,140,141,141,142,144,145,146,147,147,149,150,151,153,153,154,155,157,158,158,159,161,162,162,164,165,167,167,168,170,171,171,173,175,177,177,178,180,182,182,184,186,186,188,190,192,192,194,196,196,198,201,201,203,206,206,208,211,211,214,217,217,220,224,224,227,231,231,236,241,241,247,255, -+0,0,1,2,2,3,4,4,5,6,6,7,8,8,9,10,10,11,12,12,13,14,14,15,16,16,17,18,18,19,19,21,21,22,23,23,24,24,25,26,26,27,28,29,29,30,31,31,32,33,34,34,35,35,37,37,38,38,39,40,41,41,42,42,44,44,45,45,46,47,48,48,49,50,50,51,52,53,53,54,55,55,56,57,58,59,59,60,61,61,62,63,64,64,65,66,67,67,68,69,69,71,71,72,73,74,74,75,76,76,77,78,79,79,80,81,82,82,83,84,85,85,87,88,88,89,90,91,92,92,93,94,95,96,96,97,97,98,99,100,101,102,103,103,104,105,106,107,108,109,110,111,111,112,113,113,114,115,116,117,118,119,120,121,122,122,123,124,125,126,127,128,129,129,130,132,133,134,135,136,136,137,138,139,141,142,142,143,144,145,147,148,148,149,151,152,153,153,154,156,157,159,159,160,161,163,163,164,166,167,167,169,171,172,172,174,175,177,177,179,181,183,183,184,186,186,188,190,192,192,195,197,197,199,201,201,204,206,206,209,212,212,215,218,218,221,224,224,228,232,232,236,241,241,247,255, -+0,0,1,2,2,3,4,4,5,6,6,7,8,8,9,10,10,11,12,12,13,14,14,15,16,16,17,18,19,19,20,21,21,22,23,23,24,24,25,26,27,27,28,29,29,30,31,32,32,33,34,34,35,36,36,37,38,38,39,40,41,41,42,43,43,44,45,46,46,47,47,49,49,50,51,51,52,53,54,54,55,56,56,57,58,59,59,60,61,61,62,63,63,65,65,66,67,68,68,69,70,70,71,72,73,74,75,75,76,77,77,78,79,80,80,81,82,83,83,84,85,86,87,87,88,89,90,90,91,92,93,94,95,95,96,97,98,99,100,100,101,102,103,104,105,106,107,107,108,109,110,111,111,112,113,114,115,116,117,118,119,120,121,121,122,123,124,125,126,127,128,129,129,130,131,132,133,134,135,135,137,138,139,140,141,141,142,144,145,146,147,147,149,150,151,152,152,154,155,156,158,158,159,161,162,164,164,165,167,168,168,170,171,173,173,174,176,178,178,180,181,183,183,185,187,187,189,191,193,193,195,197,197,200,202,202,204,207,207,210,212,212,215,218,218,221,225,225,228,232,232,237,242,242,248,255, -+0,0,1,2,2,3,4,4,5,6,6,7,8,8,9,10,10,11,12,12,13,14,14,15,16,17,17,18,19,19,20,21,21,22,23,23,24,25,26,26,27,27,28,29,29,30,31,32,32,33,34,35,35,36,36,37,38,39,39,40,41,42,42,43,43,45,45,46,46,47,48,49,49,50,51,51,52,53,54,55,55,56,56,57,58,59,60,60,61,62,62,63,64,65,66,66,67,68,69,69,70,71,71,72,73,74,75,76,76,77,78,79,79,80,81,82,82,83,84,85,85,86,87,88,89,89,90,91,92,93,93,94,95,96,97,97,98,99,100,101,102,103,103,104,105,106,107,108,109,110,111,112,112,112,113,114,115,116,117,118,119,120,121,121,122,123,124,125,126,127,128,129,129,131,132,133,134,135,136,136,137,138,139,141,142,142,143,144,145,147,148,148,149,150,152,153,153,154,156,157,158,158,160,161,163,164,164,166,167,169,169,170,172,174,174,175,177,179,179,180,182,184,184,186,188,188,190,192,194,194,196,198,198,200,203,203,205,208,208,210,213,213,216,219,219,222,225,225,229,233,233,237,242,242,248,255, -+0,0,1,2,2,3,4,4,5,6,6,7,8,8,9,10,10,11,12,12,13,14,15,15,16,17,17,18,19,19,20,21,21,22,22,24,24,25,25,26,27,27,28,29,30,30,31,32,32,33,34,35,35,36,36,37,38,39,39,40,41,42,42,43,44,44,45,46,47,47,48,48,50,50,51,52,52,53,54,55,55,56,57,57,58,59,60,61,61,62,63,63,64,65,65,67,67,68,69,70,70,71,72,72,73,74,75,75,77,77,78,79,80,80,81,82,83,83,84,85,86,87,87,88,89,90,91,91,92,93,94,95,95,96,97,98,99,100,100,101,102,103,104,105,106,107,107,108,108,109,110,111,112,113,114,115,116,117,118,119,120,120,121,122,123,124,125,126,127,128,128,129,130,131,132,133,134,136,136,137,138,139,140,141,141,142,144,145,146,147,147,149,150,151,152,152,154,155,156,158,158,159,161,162,163,163,165,166,168,168,169,171,173,173,174,176,178,178,179,181,183,183,185,187,188,188,190,192,192,194,197,199,199,201,203,203,206,208,208,211,214,214,216,219,219,223,226,226,230,234,234,238,243,243,248,255, -+0,0,1,2,2,3,4,4,5,6,6,7,8,8,9,10,10,11,12,13,13,14,15,15,16,17,17,18,19,19,20,21,21,22,23,24,24,25,25,26,27,28,28,29,30,30,31,32,33,33,34,35,35,36,37,37,38,39,40,40,41,42,43,43,44,44,46,46,47,47,48,49,50,51,51,52,53,53,54,55,56,56,57,58,58,59,60,61,62,62,63,64,64,65,66,67,68,68,69,70,71,71,72,73,73,74,75,76,77,78,79,79,80,81,82,82,83,84,85,85,86,87,88,89,89,90,91,92,93,93,94,95,96,97,97,98,99,100,101,102,103,104,104,105,106,107,108,109,109,110,111,112,113,113,114,115,116,117,118,119,120,120,121,122,123,124,125,126,127,128,128,129,131,132,133,134,135,136,136,137,138,140,141,142,142,143,144,145,147,148,148,149,150,152,153,153,154,156,157,158,158,160,161,163,164,164,166,167,169,169,170,172,173,173,175,177,178,178,180,182,183,183,185,187,189,189,191,193,193,195,197,199,199,202,204,204,206,209,209,211,214,214,217,220,220,223,227,227,230,234,234,238,243,243,248,255, -+0,0,1,2,2,3,4,4,5,6,6,7,8,8,9,10,10,11,12,13,13,14,15,15,16,17,17,18,19,19,20,21,22,22,23,24,24,25,25,27,27,28,28,29,30,30,31,32,33,33,34,35,36,36,37,37,39,39,40,40,41,42,43,43,44,45,46,46,47,48,48,49,50,51,51,52,53,53,55,55,56,57,57,58,59,59,61,61,62,63,63,64,65,65,66,67,68,69,70,70,71,72,72,73,74,75,75,76,77,78,79,80,80,81,82,83,83,84,85,86,87,87,88,89,90,91,91,92,93,94,95,95,96,97,98,99,100,100,101,102,103,104,105,106,107,108,108,109,109,110,111,112,113,114,115,116,117,118,119,120,121,121,122,123,124,125,126,127,128,129,129,130,131,132,133,134,136,137,137,138,139,140,141,142,142,144,145,146,147,149,149,150,151,152,154,154,155,156,158,159,159,160,162,163,165,165,166,168,169,169,171,172,174,174,176,177,179,179,181,182,184,184,186,188,190,190,192,194,194,196,198,200,200,202,205,205,207,210,210,212,215,215,218,221,221,224,227,227,231,234,234,239,243,243,249,255, -+0,0,1,2,2,3,4,4,5,6,6,7,8,8,9,10,11,11,12,13,13,14,15,15,16,17,17,18,19,20,20,21,22,22,23,24,24,25,26,27,27,28,28,29,30,31,31,32,33,34,34,35,36,36,37,38,38,39,40,41,41,42,43,44,44,45,45,47,47,48,49,49,50,51,52,52,53,54,54,55,56,57,58,58,59,60,60,61,62,63,64,64,65,66,66,67,68,68,70,71,71,72,73,73,74,75,76,76,77,78,79,79,80,82,82,83,84,85,85,86,87,88,89,89,90,91,92,93,93,94,95,96,97,98,98,99,100,101,102,103,104,104,105,105,106,107,108,109,110,111,112,113,114,115,115,116,117,118,118,119,120,121,122,123,124,125,126,127,127,129,130,131,132,133,134,135,135,136,137,138,140,141,142,142,143,144,145,147,148,148,149,150,152,153,153,154,156,157,158,158,160,161,162,164,164,165,167,168,170,170,171,173,175,175,176,178,180,180,181,183,185,185,187,188,188,190,192,194,194,196,199,199,201,203,205,205,208,210,210,213,215,215,218,221,221,224,228,228,231,235,235,239,244,244,249,255, -+0,0,1,2,2,3,4,4,5,6,6,7,8,9,9,10,11,11,12,13,13,14,15,15,16,17,17,18,19,20,20,21,22,22,23,24,25,25,26,27,27,28,28,30,30,31,31,33,33,34,34,35,36,37,37,38,38,40,40,41,41,42,43,44,44,45,46,47,48,48,49,49,50,51,52,53,53,54,55,55,57,57,58,58,59,60,60,61,63,63,64,65,65,66,67,67,68,69,70,71,72,72,73,74,74,75,76,77,77,78,79,80,80,82,83,83,84,85,86,87,87,88,89,90,91,91,92,93,94,95,95,96,97,98,99,100,101,101,102,103,104,105,106,106,107,108,108,109,110,111,112,113,114,115,116,117,118,119,119,120,121,122,123,124,125,126,127,128,128,129,130,131,132,133,134,136,136,137,138,139,140,141,142,142,144,145,146,147,148,148,150,151,152,154,154,155,156,158,159,159,160,162,163,165,165,166,167,169,170,170,172,174,175,175,177,178,180,180,182,184,185,185,187,189,189,191,193,195,195,197,199,199,201,204,206,206,208,211,211,213,216,216,219,222,222,225,228,228,232,235,235,239,244,244,249,255, -+0,0,1,2,2,3,4,4,5,6,7,7,8,9,9,10,11,11,12,13,13,14,15,15,16,17,18,18,19,20,20,21,22,22,23,24,25,25,26,26,27,28,29,29,30,31,32,32,33,34,34,35,36,37,37,38,39,40,40,41,42,42,43,44,45,45,46,46,48,48,49,50,50,51,52,53,54,54,55,55,56,57,58,59,59,60,61,61,62,63,64,65,66,66,67,68,68,69,70,70,71,73,73,74,75,76,76,77,78,79,79,80,81,82,82,83,84,85,85,86,87,89,89,90,91,92,93,93,94,95,96,97,98,98,99,99,100,101,102,103,104,104,105,106,107,108,109,110,111,112,113,114,115,115,116,116,117,118,119,120,121,122,123,124,125,126,126,127,128,130,131,132,133,134,135,135,136,137,138,139,141,142,142,143,144,145,147,148,148,149,150,152,153,153,154,155,157,158,160,160,161,162,164,164,165,167,168,170,170,171,173,174,174,176,177,179,179,181,183,184,184,186,188,190,190,192,194,196,196,198,200,200,202,204,204,206,209,211,211,214,217,217,219,222,222,225,229,229,232,236,236,240,244,244,249,255, -+0,0,1,2,2,3,4,4,5,6,7,7,8,9,9,10,11,11,12,13,13,14,15,15,16,17,18,18,19,20,20,21,22,23,23,24,25,25,26,26,28,28,29,29,31,31,32,32,33,34,35,35,36,37,38,38,39,40,41,41,42,42,43,44,45,45,46,47,48,49,49,50,51,51,52,53,54,54,55,56,56,58,58,59,60,60,61,62,62,63,64,65,66,67,67,68,69,69,70,71,72,73,74,74,75,76,77,77,78,79,80,80,81,82,83,83,84,85,86,87,87,89,90,91,91,92,93,94,95,95,96,97,98,99,100,100,101,101,102,103,104,105,106,107,108,108,109,110,111,112,113,114,115,116,117,117,118,119,120,121,122,123,124,125,126,127,127,128,129,130,131,132,133,134,136,136,137,138,139,140,141,142,142,144,145,146,147,148,148,150,151,152,153,153,155,156,157,159,160,160,162,163,164,164,166,167,169,170,170,172,173,175,175,176,178,180,180,181,183,185,185,187,189,190,190,192,194,196,196,198,200,200,203,205,205,207,209,212,212,214,217,217,220,223,223,226,229,229,232,236,236,240,244,244,249,255, -+0,0,1,2,2,3,4,5,5,6,7,7,8,9,9,10,11,11,12,13,13,14,15,16,16,17,18,18,19,20,20,21,22,23,23,24,25,25,26,27,28,28,29,29,31,31,32,32,34,34,35,35,36,37,38,38,39,40,41,41,42,43,43,44,45,46,46,47,48,49,49,50,51,51,53,53,54,55,55,56,57,58,59,59,60,61,61,62,63,63,65,65,66,67,68,68,69,70,70,71,72,73,74,75,75,76,77,78,78,79,80,81,82,82,83,84,85,85,86,87,88,89,90,91,92,93,93,94,95,96,97,98,98,99,100,100,101,102,103,104,104,105,106,107,108,109,110,111,112,113,114,115,115,116,117,117,118,119,120,121,122,123,124,125,126,127,127,129,130,131,132,133,134,135,136,136,137,138,139,141,142,143,143,144,145,147,148,149,149,150,151,153,154,154,155,157,158,159,161,161,162,163,165,165,166,168,169,171,171,172,174,175,175,177,179,180,180,182,184,186,186,187,189,191,191,193,195,197,197,199,201,201,203,205,205,208,210,212,212,215,218,218,220,223,223,226,230,230,233,237,237,240,245,245,249,255, -+0,0,1,2,2,3,4,5,5,6,7,7,8,9,9,10,11,11,12,13,13,14,15,16,16,17,18,18,19,20,21,21,22,23,23,24,25,26,26,27,28,28,29,30,31,31,32,33,33,34,35,35,36,37,38,39,39,40,41,42,42,43,43,44,45,46,47,47,48,49,50,50,51,52,52,53,54,55,56,56,57,58,58,60,60,61,62,62,63,64,64,65,66,67,68,69,69,70,71,71,72,73,74,74,76,77,77,78,79,80,80,81,82,83,83,84,85,86,87,87,88,89,90,91,91,92,93,94,95,95,96,97,98,99,100,101,101,102,103,104,105,106,107,108,108,109,110,111,112,113,114,115,115,116,117,118,119,120,121,122,123,124,125,126,126,127,128,129,130,131,132,133,134,134,136,137,138,139,140,141,141,142,143,145,146,147,148,148,150,151,152,153,153,155,156,157,159,160,160,161,163,164,166,166,167,168,170,170,171,173,175,176,176,178,179,181,181,183,184,186,186,188,190,192,192,194,195,195,197,199,202,202,204,206,206,208,211,211,213,216,218,218,221,224,224,227,230,230,233,237,237,241,245,245,250,255, -+0,0,1,2,3,3,4,5,5,6,7,7,8,9,9,10,11,11,12,13,14,14,15,16,16,17,18,18,19,20,21,21,22,23,23,24,25,26,26,27,28,29,29,30,31,32,32,33,33,34,35,36,36,37,38,39,39,40,41,42,42,43,44,44,45,46,47,47,48,49,50,51,51,52,53,53,54,55,56,56,57,58,59,60,61,61,62,63,63,64,65,65,67,67,68,69,70,70,71,72,73,73,74,75,76,77,78,78,79,80,81,81,82,83,84,85,85,86,87,88,89,89,90,91,92,93,93,94,95,96,97,98,98,99,100,101,102,103,104,104,105,106,107,108,109,110,111,112,113,114,115,116,116,116,117,118,119,120,121,122,123,124,125,126,126,127,129,130,131,132,133,134,135,135,136,137,138,139,141,142,142,143,144,145,147,148,149,149,150,151,153,154,154,155,157,158,159,161,161,162,163,165,166,166,168,169,171,171,172,174,175,177,177,178,180,182,182,183,185,187,187,189,190,192,192,194,196,196,198,200,202,202,204,207,207,209,211,211,214,216,219,219,221,224,224,227,230,230,234,237,237,241,245,245,250,255, -+0,0,1,2,3,3,4,5,5,6,7,7,8,9,9,10,11,11,12,13,14,14,15,16,16,17,18,19,19,20,21,21,22,23,24,24,25,26,26,27,28,29,29,30,31,32,32,33,33,35,35,36,36,37,38,39,39,40,41,42,43,43,44,44,45,46,47,48,48,49,50,51,51,52,53,53,54,55,56,57,57,58,59,59,60,62,62,63,64,64,65,66,66,67,69,69,70,71,71,72,73,74,74,75,76,77,77,78,80,80,81,82,83,83,84,85,86,87,87,88,89,90,91,91,92,93,94,95,95,96,97,98,99,100,101,101,102,103,104,105,106,107,108,109,109,110,111,112,112,113,114,115,116,117,118,119,120,121,122,123,124,125,125,126,127,128,129,130,131,132,133,133,134,136,137,138,139,140,141,141,142,143,145,146,147,147,148,149,151,152,153,153,155,156,157,158,160,160,161,163,164,165,165,167,168,170,171,171,173,174,176,176,177,179,181,181,182,184,186,186,187,189,191,191,193,195,197,197,199,201,201,203,205,207,207,209,212,212,214,217,217,219,222,225,225,228,231,231,234,238,238,241,245,245,250,255, -+0,0,1,2,3,3,4,5,5,6,7,7,8,9,9,10,11,12,12,13,14,14,15,16,16,17,18,19,19,20,21,21,22,23,24,24,25,26,27,27,28,29,29,30,31,32,32,33,34,35,35,36,37,37,38,39,40,40,41,42,43,43,44,45,45,47,47,48,48,49,50,51,52,52,53,54,54,56,56,57,58,58,59,60,60,62,62,63,64,65,65,66,67,67,69,70,70,71,72,72,73,74,75,75,76,77,78,78,80,81,81,82,83,84,85,85,86,87,88,88,89,90,91,92,93,93,94,95,96,97,98,98,99,100,101,102,103,104,105,105,106,107,108,109,110,111,112,113,113,114,115,116,117,117,118,119,120,121,122,123,124,125,125,126,127,129,130,131,132,133,134,134,135,136,137,138,139,141,142,142,143,144,145,146,148,148,149,150,151,153,154,154,155,156,158,159,160,160,162,163,165,166,166,167,169,170,172,172,173,175,176,176,178,180,181,181,183,184,186,186,188,190,192,192,193,195,197,197,199,201,201,203,205,208,208,210,212,212,215,217,217,220,222,225,225,228,231,231,235,238,238,242,246,246,250,255, -+0,0,1,2,3,3,4,5,5,6,7,7,8,9,9,10,11,12,12,13,14,14,15,16,16,17,18,19,19,20,21,22,22,23,24,24,25,26,27,27,28,29,30,30,31,32,33,33,34,35,36,36,37,37,39,39,40,40,41,42,43,44,44,45,46,47,47,48,49,49,50,51,52,53,53,54,55,56,57,57,58,59,59,60,61,62,63,63,64,65,66,66,67,68,69,70,71,71,72,73,74,74,75,76,76,77,78,79,80,81,82,83,83,84,85,86,87,87,88,89,90,91,91,92,93,94,95,95,96,97,98,99,100,101,101,102,103,104,105,106,107,108,109,109,110,111,112,113,113,114,115,116,117,118,119,120,121,122,123,124,125,126,126,127,128,129,130,131,132,133,134,134,135,137,138,139,140,141,142,142,143,145,146,147,148,148,149,151,152,153,154,154,156,157,158,160,161,161,162,164,165,166,166,168,169,171,172,172,174,175,177,177,178,180,182,182,183,185,187,187,189,190,192,192,194,196,198,198,200,202,202,204,206,208,208,210,213,213,215,218,218,220,223,226,226,229,232,232,235,238,238,242,246,246,250,255, -+0,0,1,2,3,3,4,5,5,6,7,7,8,9,9,10,11,12,12,13,14,14,15,16,17,17,18,19,19,20,21,22,22,23,24,25,25,26,27,27,28,29,30,30,31,32,33,33,34,35,36,36,37,38,38,39,40,41,41,42,43,44,44,45,46,46,48,48,49,50,50,51,52,53,54,54,55,56,56,58,58,59,60,60,61,62,62,64,64,65,66,67,67,68,69,69,70,72,72,73,74,75,75,76,77,78,78,79,80,81,81,82,83,84,85,86,87,88,88,89,90,91,92,93,93,94,95,96,97,98,98,99,100,101,102,103,104,105,105,106,107,108,109,109,110,111,112,113,114,115,116,117,117,118,119,120,121,122,123,123,124,125,126,127,128,130,131,132,133,133,134,135,136,137,138,139,140,140,142,143,144,145,146,147,147,149,150,151,152,154,154,155,156,158,159,160,160,162,163,164,166,166,167,168,170,171,171,173,174,176,176,178,179,181,182,182,184,186,187,187,189,191,193,193,195,196,198,198,200,202,202,204,207,209,209,211,213,213,216,218,218,221,223,226,226,229,232,232,235,239,239,242,246,246,250,255, -+0,0,1,2,3,3,4,5,5,6,7,7,8,9,10,10,11,12,12,13,14,14,16,16,17,17,18,19,19,21,21,22,22,23,24,25,25,26,27,28,28,29,30,30,31,32,33,33,34,35,36,37,37,38,38,40,40,41,41,42,43,44,45,45,46,47,48,48,49,50,50,51,52,53,54,54,55,56,56,58,58,59,60,61,61,62,63,64,65,65,66,67,68,68,69,70,70,72,73,73,74,75,76,76,77,78,79,79,80,81,82,83,83,85,86,86,87,88,89,90,90,91,92,93,94,95,95,96,97,98,99,100,101,101,102,103,104,105,106,107,108,109,109,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,124,125,126,127,128,129,130,131,132,133,133,134,135,137,138,139,140,141,141,142,143,144,146,147,148,148,149,151,152,153,154,154,155,157,158,159,161,161,162,163,165,166,166,168,169,171,172,172,173,175,177,177,178,180,181,183,183,185,186,188,188,190,191,193,193,195,197,199,199,201,203,203,205,207,209,209,212,214,214,216,219,219,221,224,227,227,229,232,232,236,239,239,242,246,246,250,255, -+0,0,1,2,3,3,4,5,5,6,7,7,8,9,10,10,11,12,12,13,14,15,15,16,17,17,18,19,20,20,21,22,22,23,24,25,25,26,27,28,28,29,30,31,31,32,33,34,34,35,35,37,37,38,39,39,40,41,42,42,43,44,45,46,46,47,47,49,49,50,51,51,52,53,54,55,55,56,57,57,59,59,60,61,62,62,63,64,64,66,66,67,68,69,69,70,71,72,72,73,74,75,76,77,77,78,79,80,81,81,82,83,84,84,85,86,87,88,88,89,91,92,92,93,94,95,96,97,98,98,99,100,101,102,103,104,104,104,105,106,107,108,109,110,111,112,113,114,115,115,116,117,118,119,120,121,121,122,123,124,125,126,127,128,130,131,132,132,133,134,135,136,137,138,139,140,140,142,143,144,145,146,147,147,149,150,151,152,154,154,155,156,157,159,160,160,161,163,164,165,165,167,168,170,171,171,173,174,176,177,177,179,180,182,182,183,185,187,187,189,190,192,192,194,196,198,198,199,201,204,204,206,208,208,210,212,214,214,217,219,219,222,224,224,227,230,233,233,236,239,239,243,246,246,250,255, -+0,0,1,2,3,3,4,5,5,6,7,7,8,9,10,10,11,12,12,13,14,15,15,16,17,17,19,19,20,20,21,22,23,23,24,25,25,26,27,28,28,29,30,31,31,32,33,34,34,35,36,37,38,38,39,39,41,41,42,42,43,44,45,46,46,47,48,49,50,50,51,52,52,54,54,55,56,56,57,58,59,60,60,61,62,63,63,64,65,66,67,67,68,69,70,70,71,72,73,73,75,76,76,77,78,79,79,80,81,82,82,83,84,85,86,86,87,88,89,90,91,92,93,94,95,95,96,97,98,99,100,101,101,102,103,104,104,105,106,107,108,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,122,123,124,125,126,127,128,129,130,131,132,132,133,134,135,136,138,139,140,141,141,142,143,144,146,147,148,148,149,150,152,153,154,154,155,157,158,159,161,161,162,163,165,166,166,167,169,170,172,172,173,175,176,178,178,179,181,182,182,184,186,187,187,189,191,193,193,194,196,198,198,200,202,204,204,206,208,208,210,213,215,215,217,220,220,222,225,225,227,230,233,233,236,239,239,243,247,247,251,255, -+0,0,1,2,3,3,4,5,5,6,7,7,8,9,10,10,11,12,12,14,14,15,15,16,17,17,19,19,20,20,21,22,23,23,24,25,26,26,27,28,29,29,30,31,32,32,33,34,35,35,36,37,38,38,39,40,41,41,42,43,43,45,45,46,47,47,48,49,50,51,51,52,52,54,55,55,56,57,57,58,59,60,61,61,62,63,64,64,65,66,67,68,68,69,70,71,71,72,73,74,75,76,77,77,78,79,80,80,81,82,83,84,84,85,86,87,88,88,89,90,92,92,93,94,95,96,97,97,98,99,100,101,102,103,104,104,104,105,106,107,108,109,110,111,112,113,114,114,115,116,117,118,119,120,121,122,122,123,124,125,126,127,128,129,131,132,133,133,134,135,136,137,138,139,140,141,141,143,144,145,146,147,148,148,150,151,152,153,155,155,156,157,158,160,161,161,162,164,165,166,166,168,169,171,172,172,174,175,177,178,178,180,181,183,183,185,186,188,188,190,191,193,193,195,197,199,199,201,203,204,204,207,209,209,211,213,215,215,218,220,220,223,225,225,228,231,233,233,237,240,240,243,247,247,251,255, -+0,0,1,2,3,3,4,5,5,6,7,7,8,9,10,10,11,12,12,14,14,15,15,16,17,18,18,19,20,20,22,22,23,23,25,25,26,26,27,28,29,29,30,31,32,32,33,34,35,35,36,37,38,38,39,40,40,42,42,43,44,44,46,46,47,47,48,49,50,51,51,52,53,53,54,55,56,57,57,58,59,60,61,62,62,63,64,64,65,66,67,68,69,70,70,71,72,72,73,74,75,75,76,78,78,79,80,81,82,82,83,84,85,86,86,87,88,89,90,90,91,92,93,94,95,95,96,97,98,99,100,100,101,102,103,104,105,106,107,108,108,109,110,111,112,113,114,115,116,117,118,119,120,120,121,122,123,124,125,126,127,128,129,130,131,131,132,133,134,135,136,137,139,140,140,141,142,143,144,145,147,147,148,149,150,151,153,154,154,155,156,158,159,160,160,162,163,164,166,166,167,169,170,171,171,173,174,176,177,177,179,180,182,184,184,185,187,188,188,190,192,194,194,195,197,199,199,201,203,203,205,207,209,209,211,213,216,216,218,220,220,223,226,226,228,231,231,234,237,240,240,243,247,247,251,255, -+0,0,1,2,3,3,4,5,5,6,7,8,8,9,10,10,11,12,13,14,14,15,15,17,17,18,18,19,20,21,22,22,23,23,25,25,26,26,28,28,29,29,31,31,32,32,33,34,35,36,36,37,38,39,39,40,41,42,42,43,44,44,46,46,47,48,48,49,50,51,52,52,53,54,54,56,56,57,58,58,59,60,61,62,63,63,64,65,65,66,67,68,69,70,71,71,72,73,74,74,75,76,77,78,79,80,80,81,82,83,84,84,85,86,87,87,88,89,90,91,92,92,93,94,95,96,97,97,98,99,100,101,102,103,104,104,105,106,107,108,109,110,111,112,113,114,115,115,116,117,118,119,120,120,121,122,123,124,125,126,127,128,129,130,131,131,133,134,135,136,137,138,139,140,140,141,143,144,145,146,147,147,148,150,151,152,153,154,154,156,157,158,160,161,161,162,163,165,166,166,168,169,170,172,172,173,175,176,178,178,179,181,182,184,184,186,187,189,189,191,192,194,194,196,198,200,200,202,204,204,206,208,210,210,212,214,216,216,219,221,221,223,226,226,229,231,231,234,237,240,240,244,247,247,251,255, -+0,0,1,2,3,3,4,5,5,6,7,8,8,9,10,10,11,12,13,13,14,15,15,17,17,18,18,19,20,21,21,22,23,24,24,25,26,27,27,28,29,30,30,31,32,33,33,34,35,36,36,37,38,39,39,40,41,41,43,43,44,45,45,47,47,48,49,49,50,51,52,53,53,54,55,55,57,57,58,59,59,60,61,62,63,64,64,65,66,67,67,68,69,70,71,72,72,73,74,75,75,76,77,78,78,79,80,82,82,83,84,85,85,86,87,88,89,90,90,91,92,93,94,94,95,96,97,98,99,100,100,101,102,103,104,105,106,107,108,108,109,110,111,112,113,114,115,116,117,117,118,119,120,121,122,123,124,125,126,127,128,129,130,130,131,132,133,134,135,136,137,138,138,140,141,142,143,144,145,147,147,148,149,150,151,153,154,154,155,156,158,159,160,160,161,163,164,165,165,167,168,170,171,172,172,174,175,177,177,178,180,181,183,183,185,186,188,188,190,191,193,193,195,197,198,198,200,202,204,204,206,208,210,210,212,214,214,217,219,221,221,224,226,226,229,232,232,234,237,237,241,244,247,247,251,255, -+0,0,1,2,3,3,4,5,5,6,7,8,8,9,10,10,12,12,13,13,14,15,16,17,17,18,18,20,20,21,21,23,23,24,24,25,26,27,27,29,29,30,30,32,32,33,33,34,35,36,37,37,38,39,40,40,41,42,43,44,44,45,45,47,47,48,49,49,50,51,52,53,53,54,55,56,57,58,58,59,60,60,61,62,63,64,65,65,66,67,68,68,69,70,71,72,73,73,74,75,76,76,77,78,79,80,80,82,83,83,84,85,86,87,87,88,89,90,91,92,92,93,94,95,96,97,97,98,99,100,101,102,103,103,104,105,106,107,108,109,110,111,112,113,114,114,115,116,117,117,118,119,120,121,122,123,124,125,126,127,128,129,130,130,131,133,134,135,136,137,138,139,139,140,141,142,144,145,146,147,147,148,149,151,152,153,154,154,156,157,158,159,161,161,162,163,165,166,166,167,169,170,172,173,173,174,176,177,177,179,180,182,184,184,185,187,188,188,190,192,194,194,195,197,199,199,201,203,205,205,207,209,211,211,213,215,215,217,219,222,222,224,227,227,229,232,232,235,238,238,241,244,247,247,251,255, -+0,0,1,2,3,3,4,5,5,6,7,8,8,9,10,10,12,12,13,13,14,15,16,17,17,18,19,20,20,21,21,23,23,24,24,26,26,27,27,29,29,30,30,32,32,33,34,34,35,36,37,37,39,39,40,41,41,42,43,44,44,45,46,47,48,48,49,50,50,52,52,53,54,54,55,56,57,58,59,59,60,61,61,62,64,64,65,66,66,67,68,69,69,71,72,72,73,74,75,75,76,77,78,78,79,80,81,82,83,84,85,85,86,87,88,89,89,90,91,92,93,94,94,95,96,97,98,99,100,100,101,102,103,104,105,106,107,108,108,109,110,111,112,113,114,115,116,117,118,118,119,120,121,122,123,124,125,126,127,128,129,130,131,131,132,133,134,135,136,137,138,140,140,141,142,143,144,145,146,148,148,149,150,151,152,154,155,155,156,157,159,160,161,161,163,164,165,167,167,168,169,171,172,174,174,175,176,178,178,179,181,183,184,184,186,187,189,189,191,192,194,194,196,198,199,199,201,203,205,205,207,209,211,211,213,215,215,218,220,222,222,225,227,227,230,232,232,235,238,238,241,244,248,248,251,255, -+0,0,1,2,3,3,4,5,5,6,7,8,8,9,10,11,12,12,13,13,15,15,16,17,17,18,19,20,20,21,22,23,23,24,25,26,26,27,28,29,29,30,31,31,32,33,34,34,36,36,37,38,38,39,40,41,41,42,43,44,45,45,46,47,48,49,49,50,51,51,52,53,54,55,55,56,57,57,59,60,60,61,62,62,63,64,65,66,67,67,68,69,70,70,71,72,73,74,75,76,76,77,78,79,79,80,81,82,83,83,84,85,87,87,88,89,90,91,91,92,93,94,95,96,97,97,98,99,100,101,102,103,103,104,105,106,107,108,109,110,111,112,113,114,114,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,128,129,130,131,132,134,135,136,137,138,138,139,140,141,142,143,145,146,146,147,148,149,150,152,153,153,154,155,157,158,159,160,160,162,163,164,166,166,167,168,170,171,173,173,174,176,177,178,178,180,182,183,183,185,186,188,190,190,191,193,195,195,196,198,200,200,202,204,206,206,208,210,212,212,214,216,216,218,220,223,223,225,227,227,230,233,233,235,238,238,241,244,244,248,251,255, -+0,0,1,2,3,3,4,5,5,6,7,8,8,9,10,11,12,12,13,13,15,15,16,17,18,18,19,20,20,21,22,23,23,24,25,26,27,27,28,29,30,30,31,31,33,33,34,35,36,36,37,38,38,40,40,41,42,42,43,44,45,45,46,47,48,49,49,50,51,52,52,54,54,55,56,56,57,58,59,60,61,61,62,63,63,64,66,66,67,68,68,69,70,71,71,72,74,74,75,76,77,77,78,79,80,81,81,82,83,84,85,85,87,88,89,89,90,91,92,93,94,94,95,96,97,98,99,100,100,101,102,103,104,105,106,107,107,108,109,110,111,112,113,114,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,129,130,131,132,133,134,135,136,137,138,138,139,141,142,143,144,145,146,146,147,149,150,151,152,153,153,155,156,157,158,160,161,161,162,164,165,166,166,168,169,170,172,173,173,175,176,178,179,179,181,182,184,184,185,187,188,190,190,192,193,195,195,197,199,200,200,202,204,206,206,208,210,212,212,214,216,216,218,221,223,223,225,228,228,230,233,233,236,239,239,241,245,245,248,251,255, -+0,0,1,2,3,3,4,5,6,6,7,8,8,10,10,11,11,12,13,14,15,15,16,16,18,18,19,19,21,21,22,23,24,24,25,25,27,27,28,28,30,30,31,32,33,33,34,35,35,37,37,38,39,39,40,41,42,42,43,44,45,46,46,47,48,49,50,50,51,52,52,53,55,55,56,57,57,58,59,60,61,62,62,63,64,64,65,66,67,68,69,70,70,71,72,72,73,74,75,76,77,78,79,79,80,81,82,83,83,84,85,86,87,87,88,89,90,91,91,92,94,95,96,96,97,98,99,100,101,102,103,103,104,105,106,107,107,108,109,110,111,112,113,113,114,115,116,117,118,119,120,121,122,123,124,125,126,126,127,128,129,130,131,132,133,135,136,137,137,138,139,140,141,142,143,144,146,146,147,148,149,150,152,153,153,154,155,156,158,159,160,160,161,163,164,165,165,167,168,169,171,172,172,174,175,177,178,178,180,181,183,184,184,186,187,189,189,190,192,194,194,196,197,199,201,201,203,205,205,207,208,210,210,212,215,217,217,219,221,221,223,226,228,228,231,233,233,236,239,239,242,245,245,248,251,255, -+0,1,1,2,3,3,4,5,6,6,7,8,8,10,10,11,11,12,13,14,15,15,16,17,18,18,19,20,21,21,22,23,24,24,25,26,27,27,28,29,30,30,31,32,33,34,34,35,35,37,37,38,39,39,41,41,42,43,43,44,45,46,47,47,48,49,50,51,51,52,53,53,55,56,56,57,58,58,59,60,61,62,63,63,64,65,65,66,68,68,69,70,71,71,72,73,74,74,75,77,77,78,79,80,80,81,82,83,84,85,85,86,87,88,89,89,90,91,92,93,94,95,96,97,98,99,99,100,101,102,103,104,105,106,107,107,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,127,128,129,130,131,132,133,134,135,136,137,137,138,139,140,142,143,144,145,146,146,147,148,150,151,152,153,153,154,156,157,158,159,161,161,162,163,165,166,166,167,169,170,171,173,173,174,176,177,179,179,180,182,183,185,185,186,188,189,189,191,193,194,194,196,198,200,201,201,203,205,205,207,209,211,211,213,215,217,217,219,221,221,224,226,229,229,231,234,234,236,239,239,242,245,245,248,251,255, -+0,1,1,2,3,3,4,5,6,6,7,8,8,10,10,11,11,13,13,14,15,15,16,17,18,18,19,20,21,21,22,23,24,24,25,26,27,28,28,29,30,31,31,32,33,34,34,35,36,37,38,38,39,40,41,42,42,43,44,44,45,46,47,48,48,50,50,51,52,52,53,54,55,56,56,57,58,59,59,61,61,62,63,64,64,65,66,66,68,69,69,70,71,72,72,73,74,75,75,77,78,79,79,80,81,82,83,83,84,85,86,86,87,88,89,90,91,91,92,93,95,96,96,97,98,99,100,101,102,103,103,104,105,106,107,108,108,109,110,111,112,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,127,128,129,130,131,132,133,134,135,137,138,138,139,140,141,142,143,144,145,147,147,148,149,150,151,153,154,154,155,156,157,159,160,161,161,163,164,165,166,166,168,169,171,172,173,173,175,176,178,179,179,181,182,184,185,185,187,188,190,190,192,193,195,195,197,198,200,202,202,204,206,206,207,209,211,211,213,215,218,218,220,222,222,224,226,229,229,231,234,234,237,239,239,242,245,245,248,251,255, -+0,1,1,2,3,3,4,5,6,6,7,8,8,10,10,11,11,13,13,14,15,16,16,17,18,19,19,20,21,22,22,23,24,25,25,26,27,28,28,29,30,31,31,32,33,34,35,35,36,37,38,38,39,40,40,42,42,43,44,44,45,46,47,48,48,49,50,51,52,53,53,54,55,56,57,57,58,59,60,60,61,62,63,64,65,65,66,67,67,68,70,70,71,72,73,73,74,75,76,77,77,78,80,80,81,82,83,84,84,85,86,87,88,88,89,90,91,92,93,93,94,95,96,97,98,99,99,100,101,102,103,104,105,106,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,125,126,127,128,129,130,131,132,133,134,135,136,136,137,138,139,140,141,143,144,145,145,146,147,148,150,151,152,153,153,154,155,157,158,159,159,160,162,163,164,166,166,167,168,170,171,172,172,174,175,177,178,178,180,181,183,184,184,186,187,189,190,190,192,194,195,195,197,199,201,201,202,204,206,206,208,210,212,212,214,216,218,218,220,222,222,224,227,229,229,232,234,234,237,239,239,242,245,245,248,252,255, -+0,1,1,2,3,3,4,5,6,6,7,8,9,10,10,11,11,13,13,14,15,16,16,17,18,19,19,20,21,22,22,23,24,25,25,26,27,28,28,29,30,31,32,32,33,34,35,35,36,37,38,39,39,40,41,42,43,43,44,45,45,47,47,48,49,49,50,51,52,53,53,54,55,56,57,58,58,59,60,61,61,63,63,64,65,66,66,67,68,69,70,71,72,72,73,74,75,75,76,77,78,78,80,81,82,82,83,84,85,86,86,87,88,89,90,91,91,92,93,94,95,96,96,97,98,99,100,101,102,102,103,104,105,106,107,108,109,110,111,112,113,113,114,115,116,117,118,119,120,121,122,123,124,125,125,126,127,128,129,130,131,132,133,134,135,136,136,138,139,140,141,142,143,144,145,145,147,148,149,150,151,152,154,154,155,156,157,159,160,160,161,162,164,165,166,166,167,169,170,172,173,173,174,176,177,179,179,180,182,183,185,185,186,188,189,191,191,193,194,196,196,198,199,201,201,203,205,206,206,208,210,212,212,214,216,218,218,220,223,223,225,227,230,230,232,234,234,237,240,240,242,245,245,248,252,255, -+0,1,1,2,3,3,4,5,6,6,7,8,9,9,10,11,12,13,13,14,15,16,16,17,18,19,19,20,21,22,22,23,24,25,25,26,27,28,29,29,30,31,32,32,33,34,35,36,36,37,38,39,40,40,41,42,43,43,44,45,46,46,48,48,49,50,50,51,52,53,54,54,55,56,57,58,59,59,60,61,62,62,63,64,65,66,67,67,68,69,70,70,71,73,73,74,75,76,76,77,78,79,80,80,81,82,84,84,85,86,87,88,88,89,90,91,92,93,93,94,95,96,97,98,99,99,100,101,102,103,104,105,106,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,122,123,124,125,125,127,128,129,130,131,132,133,134,134,135,136,137,138,139,140,141,143,144,144,145,146,147,148,149,150,152,152,153,154,155,156,158,159,159,160,162,163,164,165,165,167,168,169,171,172,172,173,175,176,178,178,179,181,182,184,184,185,187,188,190,190,191,193,195,195,196,198,200,201,201,203,205,207,207,209,211,213,213,215,217,217,219,221,223,223,225,227,227,230,232,235,235,237,240,240,243,246,246,249,252,255, -+0,1,1,2,3,3,4,5,6,6,7,8,9,9,10,11,12,13,13,14,15,16,16,17,18,19,19,20,21,22,23,23,24,25,26,26,27,28,29,29,30,31,32,33,33,34,35,36,36,37,38,39,40,40,41,42,43,44,44,45,46,46,48,48,49,50,50,51,53,53,54,55,55,56,57,58,59,60,60,61,62,63,63,65,65,66,67,68,68,69,70,71,71,73,74,74,75,76,77,78,78,79,80,81,82,82,84,85,86,86,87,88,89,90,90,91,92,93,94,95,95,96,97,98,99,100,101,102,102,103,104,105,106,107,108,109,110,111,112,112,113,114,115,116,117,118,119,120,121,122,122,123,124,125,126,127,128,129,130,131,132,133,134,134,135,136,138,139,140,141,142,143,144,144,145,146,148,149,150,151,152,152,153,155,156,157,158,160,160,161,162,163,165,166,166,167,169,170,171,173,173,174,175,177,178,178,180,181,183,184,184,186,187,189,190,190,192,193,195,195,197,198,200,202,202,204,206,207,207,209,211,213,213,215,217,217,219,221,223,223,226,228,228,230,233,235,235,238,240,240,243,246,246,249,252,255, -+0,1,1,2,3,3,4,5,6,6,8,8,9,9,10,11,12,13,14,14,15,16,17,17,18,19,20,20,21,22,23,23,25,25,26,26,27,28,29,30,30,31,32,33,33,34,35,36,37,37,38,39,40,41,41,42,43,44,45,45,46,47,48,49,49,50,51,51,53,54,54,55,56,56,57,59,59,60,61,61,62,63,64,65,66,66,67,68,69,70,70,71,72,73,74,75,76,76,77,78,79,79,80,81,82,83,84,85,86,87,88,88,89,90,91,92,93,93,94,95,96,97,98,99,99,100,101,102,103,104,105,106,106,107,108,109,110,111,112,113,114,115,116,117,118,119,119,121,122,122,122,123,124,125,126,127,129,130,131,132,133,134,135,135,136,137,138,139,140,141,142,143,145,145,146,147,148,149,150,152,153,153,154,155,156,158,159,160,160,161,163,164,165,166,166,168,169,170,172,173,173,174,176,177,179,179,180,182,183,185,185,186,188,189,191,191,192,194,196,196,197,199,201,202,202,204,206,208,208,210,212,213,213,215,217,217,219,222,224,224,226,228,228,230,233,235,235,238,240,240,243,246,246,249,252,255, -+0,1,1,2,3,3,4,5,6,6,8,8,9,9,11,11,12,13,14,14,15,16,17,17,18,19,20,20,21,22,23,23,24,25,26,27,27,28,29,30,30,31,32,33,34,34,36,36,37,37,38,39,40,41,41,42,43,44,45,46,46,47,48,49,50,50,51,52,52,54,55,55,56,57,57,58,60,60,61,62,62,63,64,65,65,67,68,68,69,70,71,71,72,73,74,75,76,77,77,78,79,80,81,81,82,83,84,85,85,86,87,88,90,90,91,92,93,94,95,95,96,97,98,99,100,101,102,102,103,104,105,106,107,108,109,110,111,111,112,113,114,115,116,117,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,133,134,135,136,137,138,140,141,142,143,143,144,145,146,147,149,150,151,152,152,153,154,156,157,158,159,159,161,162,163,164,166,166,167,168,170,171,172,172,174,175,176,178,179,179,181,182,184,185,185,187,188,190,190,191,193,194,196,196,198,199,201,201,203,205,206,206,208,210,212,212,214,216,218,218,220,222,224,224,226,228,228,231,233,236,236,238,241,241,243,246,246,249,252,255, -+0,1,1,2,3,3,4,5,6,6,8,8,9,9,11,11,12,13,14,14,15,16,17,17,18,19,20,20,21,22,23,24,24,25,26,27,27,29,29,30,31,31,32,33,34,34,36,36,37,38,38,40,40,41,42,42,43,44,45,46,46,47,48,49,50,51,51,52,53,54,55,55,56,57,58,58,60,61,61,62,63,63,64,65,66,67,68,69,69,70,71,72,72,73,74,76,76,77,78,79,79,80,81,82,83,83,84,85,86,87,88,88,90,91,92,92,93,94,95,96,97,98,98,99,100,101,102,103,104,105,106,106,107,108,109,110,111,112,113,114,115,116,117,118,118,119,119,120,121,122,123,124,125,126,128,128,129,130,132,132,134,134,135,136,137,138,139,140,141,142,143,143,144,146,147,148,149,150,151,153,153,154,155,156,157,159,160,160,161,162,164,165,166,166,167,169,170,171,173,173,174,176,177,178,180,180,181,183,184,186,186,187,189,190,190,192,193,195,197,197,198,200,202,202,203,205,207,207,209,210,212,212,214,216,218,218,220,222,224,224,227,229,229,231,233,236,236,238,241,241,243,246,246,249,252,255, -+0,1,1,2,3,3,4,5,6,6,8,8,9,9,11,11,12,13,14,14,15,16,17,17,18,19,20,21,21,22,23,24,24,26,26,27,27,28,29,30,31,31,33,33,34,35,35,37,37,38,39,39,41,41,42,43,43,44,45,46,47,47,48,49,50,51,52,52,53,54,55,56,56,57,58,59,59,60,62,62,63,64,64,65,66,67,67,69,70,71,71,72,73,74,74,75,76,77,78,79,80,81,81,82,83,84,85,85,86,87,88,89,90,90,91,92,93,94,95,96,97,98,99,100,101,102,102,103,104,105,106,107,108,109,110,110,111,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,131,132,133,134,135,136,137,138,139,141,142,142,143,144,145,146,147,148,149,151,151,152,153,154,155,157,158,159,159,160,162,163,164,165,165,167,168,169,171,172,172,173,175,176,177,179,179,180,182,183,185,185,186,188,189,191,191,192,194,195,195,197,199,200,202,202,204,206,207,207,209,211,213,213,215,217,219,219,221,223,225,225,227,229,229,231,234,236,236,238,241,241,244,246,246,249,252,255, -+0,1,1,2,3,4,4,5,6,7,8,8,9,10,11,11,12,13,14,14,15,16,17,18,18,19,20,21,21,23,23,24,24,26,26,27,28,28,30,30,31,32,33,33,34,35,35,37,37,38,39,39,41,41,42,43,43,44,46,46,47,48,48,49,50,51,52,53,53,54,55,56,57,58,58,59,60,60,62,63,63,64,65,66,66,67,68,69,70,71,72,72,73,74,75,75,76,77,79,79,80,81,82,83,83,84,85,86,87,87,88,89,90,91,92,92,93,94,95,97,98,98,99,100,101,102,103,104,105,106,106,107,108,109,110,111,112,112,113,114,115,116,117,118,118,119,120,121,122,123,124,125,126,127,128,129,130,131,131,132,134,135,136,137,138,139,140,141,142,142,143,144,145,147,148,149,150,151,151,152,154,155,156,157,158,160,160,161,162,163,165,166,166,167,168,170,171,172,172,174,175,177,178,179,179,181,182,184,185,185,187,188,190,191,191,193,194,196,196,197,199,201,202,202,204,206,208,208,209,211,213,213,215,217,219,219,221,223,225,225,227,229,229,232,234,236,236,239,241,241,244,246,246,249,252,255, -+0,1,1,2,3,4,4,5,6,7,8,8,9,10,11,11,12,13,14,15,15,16,17,18,18,20,20,21,21,23,23,24,25,26,27,27,28,28,30,30,31,32,33,34,34,35,36,37,38,38,39,40,41,42,42,43,44,44,46,47,47,48,49,49,51,51,52,53,53,54,56,56,57,58,59,59,60,61,62,63,64,64,65,66,67,67,68,70,70,71,72,73,73,74,75,76,77,77,79,80,81,81,82,83,84,85,85,86,87,88,89,90,90,91,92,93,94,95,95,97,98,99,100,101,101,102,103,104,105,106,107,108,109,110,110,111,112,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,132,133,134,135,136,137,138,139,140,142,143,143,144,145,146,147,148,149,151,152,152,153,154,155,156,158,159,160,160,161,163,164,165,166,166,168,169,170,172,173,173,174,176,177,178,180,180,181,183,184,186,186,187,189,190,192,192,193,195,196,196,198,200,201,203,203,205,206,208,208,210,212,214,214,215,217,219,219,221,223,225,225,228,230,230,232,234,236,236,239,241,241,244,247,247,249,252,255, -+0,1,1,2,3,4,4,5,6,7,7,8,9,10,11,12,12,13,14,15,15,16,17,18,18,20,20,21,22,23,23,24,25,25,27,27,28,29,30,31,31,32,33,34,35,35,36,37,38,39,39,40,41,42,43,43,44,45,45,47,47,48,49,50,50,52,52,53,54,54,55,56,57,58,59,60,60,61,62,62,64,65,65,66,67,68,68,69,70,71,72,73,74,75,75,76,77,78,79,79,80,81,83,83,84,85,86,87,87,88,89,90,91,92,92,93,94,95,96,97,98,98,99,100,101,102,103,104,104,105,106,107,108,109,110,111,112,113,114,115,116,116,117,118,119,120,121,122,123,124,125,126,127,128,128,129,130,131,132,133,135,136,137,138,139,140,141,141,142,143,144,145,146,148,149,150,150,151,152,153,155,156,157,158,158,159,161,162,163,164,166,166,167,168,169,171,172,172,173,175,176,178,179,179,180,182,183,185,185,186,188,189,191,191,192,194,195,197,197,198,200,202,202,203,205,207,209,209,210,212,214,214,216,218,218,220,222,224,224,226,228,230,230,232,234,234,237,239,242,242,244,247,247,249,252,255, -+0,1,1,2,3,4,4,5,6,7,7,8,9,10,11,12,12,13,14,15,15,16,17,18,19,20,20,21,22,23,24,24,25,26,27,27,28,29,30,31,31,32,33,34,35,35,36,37,38,39,39,40,41,42,43,44,44,45,46,47,48,48,49,50,50,52,53,53,54,55,56,56,58,58,59,60,61,61,62,63,64,65,66,66,67,68,69,70,70,72,73,73,74,75,76,76,77,78,79,80,80,81,83,84,85,85,86,87,88,89,89,90,91,92,93,94,95,95,96,97,98,99,100,101,101,102,103,104,105,106,107,108,109,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,129,130,131,132,133,134,135,136,137,138,139,140,141,141,143,144,145,146,147,148,149,150,150,152,153,154,155,156,157,159,159,160,161,162,164,165,166,166,167,169,170,171,173,173,174,175,177,178,179,179,181,182,184,185,185,187,188,189,191,191,193,194,196,197,197,199,201,202,202,204,205,207,209,209,211,213,214,214,216,218,218,220,222,224,224,226,228,230,230,232,235,235,237,239,242,242,244,247,247,249,252,255, -+0,1,1,2,3,4,4,5,6,7,7,9,9,10,11,12,12,13,14,15,15,16,17,18,19,19,21,21,22,22,24,24,25,26,27,28,28,29,30,31,32,32,33,34,35,36,36,37,38,39,40,40,41,42,43,44,44,45,46,47,48,49,49,50,51,51,53,54,54,55,56,57,57,59,59,60,61,62,62,63,64,65,66,67,68,68,69,70,71,71,72,73,75,75,76,77,78,79,79,80,81,82,82,83,84,85,87,87,88,89,90,91,92,92,93,94,95,96,97,97,98,99,100,101,102,103,104,104,105,106,107,108,109,110,111,112,113,114,115,115,116,117,118,119,120,121,122,123,124,125,125,126,127,128,129,130,131,132,133,134,136,137,138,139,139,140,141,142,143,144,145,146,148,149,149,150,151,152,153,154,156,157,158,158,159,160,162,163,164,165,165,167,168,169,170,172,172,173,174,176,177,178,178,180,181,183,184,184,186,187,188,190,190,191,193,195,196,196,198,199,201,203,203,204,206,208,208,209,211,213,213,215,217,218,218,220,222,224,224,226,228,231,231,233,235,235,237,239,242,242,244,247,247,249,252,255, -+0,1,1,2,3,4,4,6,6,7,7,9,9,10,11,12,12,13,14,15,16,16,17,18,19,19,21,21,22,23,24,25,25,26,27,28,28,29,30,31,32,32,33,34,35,36,36,37,38,39,40,41,41,42,43,44,45,45,46,47,48,49,50,50,51,52,53,54,55,55,56,57,58,59,60,61,61,62,63,63,64,65,66,67,68,69,70,70,71,72,73,73,75,76,76,77,78,79,80,80,81,82,83,84,84,85,87,88,89,89,90,91,92,93,94,95,95,96,97,98,99,100,101,101,102,103,104,105,106,107,108,109,110,111,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,126,127,128,129,130,131,132,133,134,135,136,137,138,139,139,140,141,142,144,145,146,147,148,149,149,150,151,152,154,155,156,157,158,158,160,161,162,163,165,166,166,167,168,170,171,172,172,174,175,176,178,179,179,180,182,183,185,185,186,187,189,190,190,192,193,195,197,197,198,200,201,203,203,205,206,208,208,210,211,213,213,215,217,219,219,221,223,225,225,227,229,231,231,233,235,235,237,240,242,242,244,247,247,250,252,255, -+0,1,1,2,3,4,4,6,6,7,7,9,9,10,11,12,13,13,14,15,16,16,18,18,19,20,21,21,22,23,24,25,25,26,27,28,29,29,30,31,32,33,33,34,35,36,37,37,38,39,40,41,42,42,44,44,45,46,46,47,48,49,50,51,51,52,53,54,55,56,56,57,58,59,60,61,62,62,63,64,65,65,67,68,68,69,70,71,71,72,73,74,75,76,77,78,78,79,80,81,82,82,83,84,85,86,87,88,89,90,91,91,92,93,94,95,96,97,97,98,99,100,101,102,103,104,104,105,106,107,108,109,110,111,112,113,114,115,116,116,117,118,119,120,121,122,123,124,125,126,126,127,128,129,130,131,132,133,134,136,137,138,139,140,140,141,142,143,144,145,146,147,148,150,150,151,152,153,154,155,157,158,159,159,160,161,163,164,165,166,166,168,169,170,171,173,173,174,175,177,178,180,180,181,182,184,185,185,186,188,189,191,191,192,194,195,197,197,199,200,202,203,203,205,207,208,208,210,212,214,214,215,217,219,219,221,223,225,225,227,229,231,231,233,235,235,238,240,242,242,245,247,247,250,252,255, -+0,1,1,2,3,4,4,6,6,7,8,9,9,10,11,12,13,13,15,15,16,16,18,18,19,20,21,22,22,23,24,25,26,26,27,28,29,30,30,32,32,33,34,34,36,36,37,38,38,40,40,41,42,42,43,45,45,46,47,47,48,49,50,51,52,52,53,54,55,56,57,57,58,59,60,61,62,63,63,64,65,66,66,67,69,69,70,71,72,73,73,74,75,76,77,78,79,80,80,81,82,83,84,84,85,86,87,88,89,89,90,92,93,94,94,95,96,97,98,99,100,100,101,102,103,104,105,106,107,108,109,110,110,111,112,113,114,115,116,117,118,119,120,121,122,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,138,139,140,141,142,143,144,146,147,148,148,149,150,151,152,153,155,156,157,157,158,159,161,162,163,164,164,166,167,168,169,171,172,172,173,175,176,177,179,179,180,181,183,184,186,186,187,188,190,191,191,193,194,196,197,197,199,201,202,202,204,205,207,209,209,211,212,214,214,216,218,219,219,221,223,225,225,227,229,231,231,233,236,236,238,240,242,242,245,247,247,250,252,255, -+0,1,1,2,3,4,4,6,6,7,8,9,9,10,11,12,13,13,15,15,16,17,18,18,19,20,21,22,22,23,24,25,26,26,27,28,29,30,30,32,32,33,34,34,36,37,37,38,39,40,41,41,42,43,43,45,46,46,47,48,48,50,50,51,52,53,53,54,56,56,57,58,58,59,60,61,62,63,64,64,65,66,67,68,69,70,71,71,72,73,74,75,75,76,78,78,79,80,81,82,82,83,84,85,86,86,88,88,89,90,91,92,93,94,95,96,97,98,98,99,100,101,102,103,104,105,105,106,107,108,109,110,111,112,113,114,115,116,116,117,118,119,120,121,122,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,138,140,141,142,143,144,145,146,147,148,148,150,151,152,153,154,155,156,158,158,159,160,161,162,164,165,165,166,167,169,170,171,172,172,174,175,176,178,179,179,180,182,183,185,186,186,187,189,190,192,192,193,195,196,198,198,199,201,203,203,204,206,208,209,209,211,213,214,214,216,218,220,220,222,224,226,226,228,230,232,232,234,236,236,238,240,243,243,245,247,247,250,252,255, -+0,1,1,2,3,4,4,6,6,7,8,9,10,10,11,12,13,13,15,15,16,17,18,19,19,20,21,22,23,23,24,25,26,27,27,29,29,30,31,31,33,33,34,35,35,37,37,38,39,40,41,42,42,43,44,44,46,46,47,48,49,49,51,52,52,53,54,54,55,57,57,58,59,60,60,61,62,63,64,65,66,66,67,68,69,69,71,72,72,73,74,75,76,76,77,78,79,80,81,82,83,84,84,85,86,87,88,89,90,90,91,92,93,94,95,95,96,97,98,100,100,101,102,103,104,105,106,107,108,109,109,110,111,112,113,114,115,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,136,137,138,139,140,141,142,143,144,146,147,147,148,149,150,151,152,153,155,156,156,157,158,159,160,162,163,164,164,165,167,168,169,170,172,172,173,174,176,177,178,178,180,181,182,184,185,185,187,188,189,191,191,192,194,195,197,197,198,200,201,203,203,205,206,208,208,210,211,213,213,215,217,218,220,220,222,224,226,226,228,230,230,232,234,236,236,238,240,243,243,245,247,247,250,252,255, -+0,1,1,2,3,4,4,6,6,7,8,9,10,10,11,12,13,14,15,16,16,17,18,19,20,20,21,22,23,23,24,25,26,27,27,29,30,30,31,31,33,33,34,35,36,37,38,38,39,40,41,42,43,43,44,45,46,47,47,48,49,50,51,52,53,53,54,55,55,57,58,58,59,60,61,61,62,64,64,65,66,67,67,68,69,70,71,72,73,74,74,75,76,77,78,78,79,81,82,82,83,84,85,86,87,87,88,89,90,91,92,92,93,94,95,96,97,98,98,100,101,102,103,104,105,106,106,107,108,109,110,111,112,113,114,115,116,116,117,118,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,136,137,138,140,141,142,143,144,145,146,147,147,148,149,150,152,153,154,155,156,156,157,159,160,161,162,163,165,165,166,167,168,170,171,172,172,174,175,176,177,179,179,180,181,183,184,186,186,187,188,190,191,191,193,194,196,197,197,199,200,202,203,203,205,207,208,208,210,212,213,213,215,217,219,221,221,222,224,226,226,228,230,230,232,234,236,236,238,241,243,243,245,247,247,250,252,255, -+0,1,1,2,3,4,5,6,6,7,8,9,10,10,11,12,13,14,15,16,16,17,18,19,20,20,21,22,23,24,24,26,26,27,28,29,30,30,31,32,33,34,34,35,36,37,38,39,39,40,41,42,43,44,44,45,46,47,48,49,49,50,51,52,53,54,54,55,56,57,58,59,59,60,61,62,62,64,65,66,66,67,68,69,69,70,72,72,73,74,75,76,76,77,78,79,80,81,82,83,84,84,85,86,87,88,89,90,90,91,92,93,94,95,95,96,97,98,99,101,102,102,103,104,105,106,107,108,109,110,110,111,112,113,114,115,116,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,137,138,139,140,141,142,143,144,145,147,148,148,149,150,151,152,153,154,156,157,157,158,159,160,161,163,164,165,165,166,168,169,170,171,173,173,174,175,176,178,179,179,181,182,183,185,186,186,187,189,190,192,192,193,195,196,198,198,199,201,202,204,204,206,207,209,209,210,212,214,214,216,217,219,221,221,223,225,226,226,228,230,230,232,234,237,237,239,241,243,243,245,248,248,250,252,255, -+0,1,1,2,3,4,5,6,7,7,8,9,10,10,11,12,13,14,14,16,16,17,18,19,20,20,21,22,23,24,24,26,26,27,28,29,30,31,31,32,32,34,35,35,36,37,38,39,40,40,41,42,43,44,45,45,46,47,48,49,50,50,51,52,53,54,55,55,56,57,58,59,60,61,61,62,63,64,65,66,67,67,68,69,70,70,71,72,74,74,75,76,77,78,78,79,80,81,82,82,83,85,86,87,87,88,89,90,91,91,92,93,94,95,96,97,98,98,99,100,101,102,103,104,105,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,133,134,135,136,137,138,139,141,142,143,144,145,146,146,147,148,149,150,152,153,154,155,156,156,157,158,160,161,162,163,164,164,166,167,168,169,171,172,172,173,174,176,177,178,178,180,181,182,184,185,185,187,188,189,191,191,192,194,195,197,197,198,200,201,203,203,204,206,208,209,209,211,212,214,214,216,218,219,219,221,223,225,225,227,229,231,231,233,235,237,237,239,241,243,243,245,248,248,250,252,255, -+0,1,1,2,3,4,5,6,7,7,8,9,10,11,11,13,13,14,15,16,17,17,18,19,20,21,21,23,23,24,25,26,27,27,28,29,30,31,32,32,33,34,35,36,36,37,38,39,40,41,41,43,43,44,45,46,46,48,48,49,50,51,51,53,54,54,55,56,57,57,59,59,60,61,62,62,63,64,65,66,67,68,69,69,70,71,72,72,74,75,76,76,77,78,79,80,80,81,82,83,84,85,86,87,88,89,90,90,91,92,93,94,95,95,96,97,98,99,100,101,102,102,103,104,105,106,107,108,109,110,110,112,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,134,135,136,137,138,139,140,141,142,143,144,145,147,147,148,149,150,151,152,153,154,155,157,157,158,159,160,161,162,164,165,165,166,167,169,170,171,172,172,174,175,176,177,179,179,180,182,183,184,186,186,187,188,190,191,191,193,194,196,197,197,199,200,202,203,203,205,206,208,210,210,211,213,215,215,216,218,220,220,222,223,225,225,227,229,231,231,233,235,237,237,239,241,243,243,245,248,248,250,253,255, -+0,1,1,2,3,4,5,5,7,7,8,9,10,11,11,13,13,14,15,16,17,17,18,19,20,21,21,23,23,24,25,26,27,28,28,29,30,31,32,32,33,34,35,36,37,37,39,39,40,41,42,42,44,44,45,46,46,47,49,49,50,51,52,52,53,55,55,56,57,58,58,59,60,61,62,63,64,64,65,66,67,68,69,70,70,71,72,73,74,74,75,77,78,78,79,80,81,82,82,83,84,85,86,87,87,89,90,91,92,93,93,94,95,96,97,98,99,99,100,101,102,103,104,105,106,107,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,121,122,123,124,125,126,127,128,129,130,130,131,132,133,134,135,136,137,138,139,141,142,143,144,144,145,146,147,148,149,150,151,153,154,155,155,156,157,158,159,161,162,163,163,164,165,167,168,169,170,170,172,173,174,175,177,178,178,179,181,182,183,185,185,186,187,189,190,192,192,193,195,196,197,197,199,200,202,204,204,205,207,208,208,210,212,213,215,215,217,218,220,220,222,224,225,225,227,229,231,231,233,235,237,237,239,241,241,243,246,248,248,250,253,255, -+0,1,1,2,3,4,5,5,7,7,8,9,10,11,11,13,13,14,15,16,17,18,18,20,20,21,22,23,24,24,25,26,27,28,28,29,31,31,32,33,33,35,35,36,37,38,39,40,40,41,42,42,44,45,45,46,47,48,49,50,51,51,52,53,53,55,56,56,57,58,59,59,61,62,62,63,64,65,66,66,68,69,69,70,71,72,73,73,74,75,76,77,78,79,80,81,81,82,83,84,85,85,86,87,88,90,90,91,92,93,94,95,95,96,97,98,99,100,101,102,102,103,104,105,106,107,108,109,110,111,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,131,132,133,134,135,136,137,138,139,140,141,142,143,144,144,145,146,147,149,150,151,152,153,154,155,155,156,158,159,160,161,162,163,163,165,166,167,168,170,171,171,172,173,175,176,177,179,179,180,181,182,184,185,185,187,188,189,191,192,192,194,195,196,198,198,199,201,202,204,204,206,207,209,209,210,212,214,215,215,217,219,220,220,222,224,226,226,228,230,231,231,233,235,237,237,239,241,241,244,246,248,248,250,253,255, -+0,1,1,2,3,4,5,5,7,7,8,10,10,11,12,13,14,14,15,16,17,18,18,20,20,21,22,23,24,25,25,26,27,28,29,29,31,32,32,33,34,35,36,36,37,38,39,40,41,41,42,43,44,45,46,47,47,48,49,50,51,51,52,53,54,55,56,57,57,58,59,60,61,62,63,64,64,65,66,67,68,69,70,70,71,72,73,74,74,75,76,78,78,79,80,81,82,83,83,84,85,86,87,87,88,90,91,92,92,93,94,95,96,97,98,98,99,100,101,102,103,104,105,106,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,120,121,122,123,124,125,126,127,128,129,130,131,131,132,133,134,135,136,137,139,140,141,142,143,144,145,145,146,147,148,149,150,151,152,154,155,156,156,157,158,159,161,162,163,164,164,165,166,168,169,170,171,171,173,174,175,176,178,179,179,180,182,183,184,186,186,187,188,190,191,193,193,194,195,197,198,198,200,201,203,204,204,206,207,209,209,211,212,214,216,216,217,219,221,221,222,224,226,226,228,230,232,232,234,236,238,238,240,242,242,244,246,248,248,250,253,255, -+0,1,1,2,3,4,5,5,7,8,8,10,10,11,12,13,14,14,15,16,17,18,19,20,21,21,22,23,24,25,25,26,27,28,29,30,30,32,32,33,34,35,36,37,37,38,39,40,41,42,42,43,44,45,46,47,47,48,49,50,51,52,53,53,54,55,56,57,58,58,59,60,61,62,63,64,65,65,66,67,68,69,70,71,72,72,73,74,75,76,76,77,78,80,81,81,82,83,84,85,85,86,87,88,89,90,90,91,92,93,95,96,96,97,98,99,100,101,102,102,103,104,105,106,107,108,109,110,111,112,113,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,143,144,145,146,148,149,150,151,152,153,154,154,155,156,158,159,160,161,162,163,163,164,166,167,168,169,171,171,172,173,174,176,177,178,178,180,181,182,184,185,185,186,187,189,190,192,192,193,194,196,197,197,199,200,202,203,203,205,206,208,209,209,211,213,214,214,216,218,219,221,221,223,225,226,226,228,230,232,232,234,236,238,238,240,242,242,244,246,248,248,250,253,255, -+0,1,1,2,3,4,5,6,7,8,8,10,10,11,12,13,14,15,15,17,17,18,19,20,21,21,22,23,24,25,26,26,28,28,29,30,30,32,33,33,34,35,36,37,38,38,39,41,41,42,43,43,44,46,46,47,48,49,49,51,51,52,53,54,54,55,57,57,58,59,60,60,61,63,64,64,65,66,67,68,68,69,71,71,72,73,74,75,75,76,77,78,79,80,81,82,83,83,84,85,86,87,88,88,89,90,91,92,93,93,95,96,97,98,99,99,100,101,102,103,104,105,106,107,108,108,109,110,111,112,113,114,115,116,117,118,119,120,120,122,122,123,124,125,126,127,127,128,129,130,131,132,133,134,135,136,137,138,140,141,142,142,144,144,145,146,147,148,149,150,151,152,154,155,155,156,157,158,159,160,161,163,164,164,165,166,167,169,170,171,171,172,174,175,176,177,179,179,180,181,182,184,185,185,187,188,189,191,192,192,193,195,196,198,198,199,201,202,204,204,205,207,208,210,210,211,213,215,215,216,218,220,221,221,223,225,227,227,228,230,232,232,234,236,238,238,240,242,242,244,246,248,248,250,253,255, -+0,1,1,2,3,4,5,6,7,8,8,9,11,11,12,13,14,15,15,16,17,18,19,20,21,22,22,23,24,25,26,27,27,29,29,30,31,31,33,34,34,35,36,37,38,39,39,40,41,42,43,44,44,45,47,47,48,49,50,50,52,52,53,54,55,56,56,58,59,59,60,61,62,62,63,65,65,66,67,68,69,69,70,71,72,73,74,75,76,77,77,78,79,80,81,81,83,84,85,85,86,87,88,89,90,91,91,92,93,94,95,96,96,97,98,99,100,101,103,104,104,105,106,107,108,109,110,111,112,113,114,114,115,116,117,118,119,120,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,141,142,143,144,145,146,148,149,150,151,152,152,153,154,155,156,158,159,160,161,162,162,163,164,166,167,168,169,170,170,172,173,174,175,177,178,178,179,180,182,183,184,184,186,187,188,190,191,191,193,194,195,197,197,198,200,201,203,203,204,206,207,209,209,210,212,213,215,215,217,218,220,220,222,223,225,225,227,229,231,232,232,234,236,236,238,240,242,242,244,246,248,248,250,253,255, -+0,1,1,2,4,4,5,6,7,8,9,9,11,11,12,13,14,15,16,16,18,18,19,20,21,22,23,23,25,25,26,27,28,29,30,30,31,32,33,34,35,35,36,38,38,39,40,40,42,42,43,44,45,46,47,48,48,49,50,51,52,53,54,54,55,56,57,58,59,60,61,61,62,63,64,65,66,67,67,68,69,70,71,71,72,74,75,75,76,77,78,79,79,80,81,82,84,84,85,86,87,88,89,89,90,91,92,93,94,95,95,96,97,98,99,100,101,101,103,104,105,106,107,108,109,109,111,111,112,113,114,115,116,117,118,119,120,121,121,122,122,123,124,126,126,127,128,129,130,131,132,133,134,135,137,137,139,140,141,142,142,143,144,145,146,147,148,149,150,151,152,152,153,155,156,157,158,159,160,161,163,163,164,165,166,167,168,170,171,171,172,173,175,176,177,178,178,180,181,182,183,185,185,186,188,189,190,192,192,193,194,196,197,197,199,200,202,203,203,205,206,208,209,209,211,212,214,215,215,217,219,220,220,222,224,225,225,227,229,231,233,233,235,236,236,238,240,242,242,244,246,248,248,251,253,255, -+0,1,1,2,4,4,5,6,7,8,9,9,11,11,12,14,14,15,16,16,18,18,19,20,21,22,23,23,25,26,26,27,28,29,30,31,31,32,33,34,35,36,36,38,38,39,40,41,42,43,44,44,45,46,47,48,49,50,50,51,53,53,54,55,55,56,57,59,59,60,61,62,62,63,64,66,66,67,68,69,69,70,71,72,73,74,75,76,77,77,78,79,80,81,81,82,84,85,86,86,87,88,89,90,91,92,92,93,94,95,96,97,98,98,99,100,101,102,104,105,105,106,107,108,109,110,111,112,113,114,115,116,116,117,118,119,120,121,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,142,143,144,145,146,147,149,150,151,152,153,153,154,155,156,157,159,160,161,162,163,163,164,165,167,168,169,170,171,171,173,174,175,176,177,179,179,180,181,183,184,185,185,187,188,189,191,192,192,193,195,196,198,198,199,201,202,204,204,205,206,208,209,209,211,213,214,216,216,217,219,221,221,222,224,226,226,227,229,231,233,233,235,237,237,238,240,242,242,244,246,248,248,251,253,255, -+0,1,1,2,4,4,5,6,7,8,9,9,11,12,12,13,14,15,16,17,18,19,19,20,22,22,23,24,24,26,27,27,28,29,30,31,32,32,34,34,35,36,37,38,39,40,40,41,42,43,44,45,45,46,47,48,49,50,51,51,52,54,54,55,56,57,57,58,59,61,61,62,63,64,64,65,66,67,68,69,70,71,71,72,73,74,75,76,77,78,79,79,80,81,82,83,84,84,85,86,88,89,89,90,91,92,93,94,95,95,96,97,98,99,100,101,102,102,103,104,105,106,107,108,109,110,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,127,129,129,131,131,132,133,134,136,137,138,138,138,140,141,142,143,144,145,146,147,148,149,150,151,151,152,153,155,156,157,158,159,160,161,161,162,164,165,166,167,168,170,170,171,172,173,174,176,177,178,178,179,181,182,183,185,185,186,187,188,190,191,191,193,194,195,197,198,198,200,201,202,204,204,205,207,208,210,210,211,213,214,214,216,218,219,221,221,223,224,226,226,228,229,231,231,233,235,237,237,239,241,243,243,244,246,249,249,251,253,255, -+0,1,1,2,4,4,5,6,7,8,9,10,11,12,12,13,15,15,16,17,18,19,20,20,22,23,23,24,25,26,27,28,28,30,30,31,32,33,34,35,36,36,37,38,39,40,41,41,42,43,44,45,46,46,47,49,49,50,51,52,53,54,55,56,56,57,58,59,59,61,62,63,63,64,65,65,66,68,69,70,70,71,72,73,74,74,75,77,78,78,79,80,81,82,82,83,84,85,86,87,88,89,90,91,92,93,93,94,95,96,97,98,98,99,100,101,102,103,104,105,106,106,107,108,109,110,111,112,113,114,115,116,117,118,119,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,139,140,141,142,143,144,145,146,148,148,150,151,152,152,153,154,155,156,157,158,160,161,162,162,163,164,165,167,168,169,170,170,171,173,174,175,176,177,179,179,180,181,182,184,185,185,186,188,189,190,192,192,193,194,196,197,199,199,200,201,203,204,204,206,207,209,210,210,212,213,215,215,216,218,220,221,221,223,225,226,226,228,230,232,232,233,235,237,237,239,241,243,243,245,247,249,249,251,253,255, -+0,1,1,2,4,4,5,6,7,8,9,10,11,12,13,13,15,15,16,17,18,19,20,21,22,23,23,24,25,26,27,28,29,29,31,31,32,33,34,35,36,36,37,38,39,40,41,42,42,43,45,45,46,47,48,48,50,51,51,52,53,54,54,56,57,58,58,59,60,61,62,63,64,64,65,66,67,68,69,70,71,72,72,73,74,75,76,76,77,79,80,80,81,82,83,84,85,85,86,87,88,89,90,90,92,93,94,95,96,96,97,98,99,100,101,102,103,104,104,105,106,107,108,109,110,111,112,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,128,130,131,132,133,134,135,136,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,150,151,152,153,155,156,157,158,159,160,160,161,162,163,165,166,167,168,169,169,171,172,173,174,175,177,177,178,179,180,182,183,184,184,185,187,188,189,191,191,192,193,195,196,198,198,199,200,202,203,203,205,206,208,209,209,211,212,214,215,215,217,218,220,222,222,223,225,227,227,228,230,232,232,234,235,237,237,239,241,243,243,245,247,249,249,251,253,255, -+0,1,1,2,4,5,5,6,8,8,9,10,11,12,13,13,15,16,16,17,19,19,20,21,22,23,24,24,25,27,27,28,29,30,31,32,32,33,34,35,36,37,38,38,40,41,41,42,43,44,45,46,47,47,48,49,50,51,52,53,53,54,55,56,57,58,59,60,60,61,62,63,64,65,66,66,67,68,69,71,71,72,73,74,74,75,76,77,78,79,80,81,82,83,83,84,85,86,87,88,89,89,90,91,93,94,94,95,96,97,98,99,100,101,101,102,103,104,105,106,107,108,109,110,110,111,112,113,114,115,116,117,118,119,120,120,121,123,123,124,125,126,127,128,129,130,131,132,133,134,135,136,136,137,138,139,140,141,142,143,145,145,147,148,149,150,151,151,152,153,154,155,156,157,158,160,161,161,162,163,164,165,166,168,169,170,170,171,172,174,175,176,177,177,178,180,181,182,183,185,185,186,187,189,190,191,191,193,194,195,197,198,198,199,201,202,204,204,205,207,208,210,210,211,213,214,216,216,217,219,220,222,222,224,225,227,227,229,230,232,232,234,236,237,237,239,241,243,243,245,247,249,249,251,253,255, -+0,1,2,2,4,5,5,6,8,8,9,10,11,12,13,14,15,16,17,17,19,19,20,21,22,23,24,25,25,27,28,28,29,30,31,32,33,33,34,36,36,37,38,39,40,41,42,42,43,44,46,46,47,48,49,49,51,52,52,53,54,54,55,57,58,58,59,60,61,62,63,64,65,65,66,67,68,69,69,71,72,73,73,74,75,76,77,77,78,80,81,82,82,83,84,85,85,86,87,88,89,90,91,91,93,94,95,96,97,98,98,99,100,101,102,103,104,105,106,106,107,108,109,110,111,112,113,114,115,116,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,151,152,153,155,156,157,158,159,160,161,161,162,163,164,166,167,168,169,171,171,172,173,174,175,176,178,178,179,180,181,183,184,185,185,186,188,189,190,192,192,193,194,196,197,199,199,200,201,203,204,204,205,207,208,210,210,211,213,214,216,216,218,219,221,222,222,224,226,227,227,229,231,232,232,234,236,238,238,239,241,243,243,245,247,249,249,251,253,255, -+0,1,2,2,4,5,5,6,8,8,9,10,11,12,13,14,15,16,17,17,19,20,20,21,22,23,24,25,26,27,28,29,29,30,32,32,33,34,34,35,37,38,38,39,40,41,42,43,44,44,45,47,47,48,49,49,50,52,52,53,54,55,56,56,58,59,59,60,61,62,63,63,65,66,67,68,68,69,70,71,71,73,74,75,75,76,77,78,79,80,80,81,83,84,85,85,86,87,88,89,89,90,91,92,93,94,95,96,96,97,99,100,101,102,102,103,104,105,106,107,108,109,110,110,111,112,113,114,115,116,117,118,119,120,121,122,122,124,124,125,126,127,128,129,130,131,131,132,133,134,135,136,137,138,139,140,142,142,144,144,146,147,148,149,149,150,151,152,153,154,155,156,157,158,160,160,161,162,163,164,165,166,167,169,169,170,171,172,173,175,176,177,177,178,179,181,182,183,184,184,186,187,188,190,191,191,192,193,195,196,198,198,199,200,202,203,203,204,206,207,209,210,210,212,213,215,216,216,218,219,221,221,223,224,226,227,227,229,231,233,233,234,236,238,238,240,241,243,243,245,247,249,249,251,253,255, -+0,1,2,2,4,5,5,6,8,9,9,10,12,12,13,14,15,16,17,18,19,20,21,21,22,24,24,25,26,27,28,29,30,30,32,33,33,34,35,36,37,38,39,39,40,42,42,43,44,45,45,47,48,48,49,50,51,52,53,54,55,55,56,57,58,59,60,61,62,62,63,64,66,66,67,68,69,70,70,71,72,73,74,75,76,77,78,78,79,80,81,82,83,84,85,86,87,87,88,89,90,91,92,93,93,94,95,96,97,98,100,101,101,102,103,104,105,106,107,107,108,109,110,111,112,113,114,115,116,117,118,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,149,150,151,152,154,155,156,157,158,159,160,160,161,162,164,164,166,167,168,169,169,170,172,173,174,175,176,177,177,179,180,181,182,184,185,185,186,187,189,190,191,191,193,194,195,197,198,198,199,201,202,204,204,205,206,208,209,211,211,212,214,215,217,217,218,220,221,221,223,224,226,228,228,229,231,233,233,234,236,238,238,240,242,243,243,245,247,249,249,251,253,255, -+0,1,2,2,4,5,6,6,8,9,10,10,12,13,13,14,16,16,17,18,19,20,21,22,22,24,25,25,26,27,28,29,30,31,31,33,34,34,35,36,37,38,39,40,40,41,43,43,44,45,46,47,48,49,50,50,51,52,54,54,55,56,57,57,58,60,60,61,62,63,64,64,65,66,68,68,69,70,71,72,72,73,74,76,76,77,78,79,80,80,81,82,83,84,85,86,87,88,89,90,90,91,92,93,94,95,96,97,98,98,99,100,101,102,103,104,104,105,107,108,109,110,111,112,113,113,114,115,116,117,118,119,120,121,122,123,124,125,125,126,127,128,129,130,130,132,132,133,134,135,136,137,138,140,141,141,143,144,144,146,147,147,148,149,150,151,152,153,154,155,156,157,158,158,160,161,162,163,164,165,166,167,167,169,170,171,172,173,174,176,177,177,178,179,180,182,183,184,184,185,187,188,189,190,190,192,193,195,196,197,197,198,200,201,202,204,204,205,207,208,210,210,211,212,214,215,215,217,219,220,222,222,223,225,226,226,228,230,231,233,233,235,236,238,238,240,242,244,244,245,247,249,249,251,253,255, -+0,1,2,2,4,5,6,6,8,9,10,10,12,13,13,14,16,17,17,18,19,20,21,22,23,24,25,26,26,27,29,29,30,31,32,33,34,35,35,36,38,39,39,40,41,42,43,44,45,45,46,47,49,49,50,51,52,52,54,55,56,56,57,58,58,60,61,62,63,63,64,65,66,66,68,69,69,70,71,72,73,74,75,76,77,78,79,79,80,81,82,83,84,84,85,87,88,88,90,90,91,92,93,94,95,96,96,97,98,99,100,100,101,102,103,104,105,106,108,109,109,110,111,112,113,114,115,116,117,118,119,120,120,122,123,123,124,125,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,147,148,149,151,151,153,154,155,156,157,158,159,159,160,161,162,164,165,166,167,168,168,169,170,171,173,174,175,176,177,177,179,180,181,182,183,185,185,186,187,189,190,191,191,192,194,195,196,198,198,199,200,202,203,204,204,206,207,209,210,210,211,213,214,216,216,217,219,220,222,222,223,225,227,227,228,230,232,233,233,235,237,238,238,240,242,244,244,245,247,249,249,251,253,255, -+0,1,2,2,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,18,19,21,21,22,23,24,25,26,27,27,29,30,31,31,32,34,34,35,36,37,38,39,40,40,41,42,44,44,45,46,47,47,49,50,50,51,52,53,54,55,56,57,57,58,59,61,61,62,63,64,64,65,66,67,69,70,70,71,72,73,73,74,75,77,78,78,79,80,81,82,82,83,84,85,86,88,88,89,90,91,92,93,93,94,95,96,97,97,99,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,117,118,119,120,121,122,123,124,125,126,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,148,149,150,151,152,153,154,155,156,158,159,160,160,161,162,163,164,165,166,167,169,169,170,171,172,173,174,176,177,178,178,179,180,182,183,184,185,185,186,188,189,190,192,192,193,194,195,197,198,198,199,201,202,203,205,205,206,208,209,210,210,212,213,215,216,216,218,219,221,222,222,224,225,227,227,229,230,232,233,233,235,237,238,238,240,242,244,244,246,247,249,249,251,253,255, -+0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,15,17,18,19,19,21,22,22,23,24,25,26,27,28,29,30,31,32,32,33,35,36,36,37,38,39,40,41,41,43,43,45,45,46,47,48,49,50,51,52,53,53,54,55,56,57,58,59,59,60,61,63,64,64,65,66,67,67,68,70,71,72,72,73,74,75,76,76,77,78,80,81,81,82,83,84,85,85,86,87,88,89,90,92,92,93,94,95,96,97,97,98,99,100,101,102,103,104,104,105,106,107,108,109,110,111,112,113,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,127,129,129,130,132,132,133,134,135,136,137,138,139,140,142,142,143,144,144,145,146,147,148,150,151,152,153,153,155,156,157,157,158,159,160,161,162,164,165,166,167,168,168,169,170,171,173,174,175,176,176,177,178,180,181,182,183,183,185,186,187,188,189,191,191,192,193,194,196,197,197,198,200,201,202,204,204,205,207,208,209,209,211,212,214,215,217,217,218,219,221,221,223,224,226,227,227,229,230,232,232,234,235,237,239,239,240,242,244,244,246,247,249,249,251,253,255, -+0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,23,24,26,26,27,28,30,30,31,32,33,33,35,36,37,37,38,40,40,41,42,43,43,45,46,47,47,48,49,51,51,52,53,54,54,55,57,58,58,59,60,61,61,63,64,65,66,66,67,68,69,70,71,72,73,74,74,75,76,77,78,79,80,81,82,83,84,84,85,86,87,88,89,89,90,92,93,94,95,95,96,97,98,99,100,101,102,102,103,104,105,106,107,108,109,110,110,111,112,113,114,115,116,117,118,119,120,121,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,145,146,147,148,149,150,151,152,153,154,155,156,157,157,159,160,161,162,163,164,165,166,167,169,169,170,171,172,173,174,175,177,177,178,179,180,181,183,184,184,185,186,187,189,190,191,191,193,194,195,196,198,198,199,200,202,203,204,204,206,207,208,210,210,211,213,214,216,217,217,218,220,221,221,223,224,226,227,227,229,231,232,232,234,235,237,239,239,241,242,244,244,246,248,249,249,251,253,255, -+0,1,2,3,4,5,6,7,9,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,24,26,27,28,28,29,31,31,32,33,34,35,36,37,38,38,39,41,42,42,43,44,45,46,47,48,49,49,50,52,52,53,54,55,56,57,58,59,60,60,61,62,63,64,65,66,67,68,69,69,70,71,72,73,74,75,76,77,77,78,79,80,81,83,83,84,85,86,87,87,88,89,90,91,92,93,94,94,96,97,98,99,99,100,101,102,103,104,105,106,107,107,108,109,110,111,112,113,114,115,116,117,118,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,134,135,136,137,138,139,141,142,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,156,157,158,159,160,161,162,163,165,166,167,167,168,169,170,171,172,174,175,176,176,177,178,179,181,182,183,183,184,186,187,188,189,191,191,192,193,194,196,197,197,198,199,201,202,204,204,205,206,207,209,210,210,212,213,214,216,216,217,219,220,222,222,223,225,226,228,228,229,231,232,232,234,236,237,237,239,241,242,244,244,246,248,249,249,251,253,255, -+0,1,2,3,4,5,6,7,9,9,10,11,12,14,14,15,16,18,18,19,20,22,22,23,24,25,26,27,28,29,30,31,32,33,33,34,36,36,37,38,39,40,41,42,43,44,44,45,47,48,48,49,50,51,52,53,54,55,56,56,57,59,60,60,61,62,63,64,65,66,67,68,68,69,70,71,72,73,74,75,76,76,77,78,79,80,81,81,83,84,85,86,86,87,88,89,90,91,92,92,93,94,95,97,97,98,99,100,101,102,103,104,104,105,106,107,108,109,110,111,112,112,113,114,115,116,117,118,119,120,121,122,123,123,125,126,126,127,129,129,130,131,132,133,134,135,136,137,138,139,140,141,142,142,143,144,145,146,147,148,149,150,151,152,153,154,155,157,157,158,159,160,161,162,163,164,165,166,168,168,169,170,171,172,173,174,175,177,177,178,179,180,181,182,184,184,185,186,187,189,190,191,191,192,193,195,196,197,197,199,200,201,203,204,204,205,207,208,209,211,211,212,213,215,216,216,218,219,221,222,222,224,225,227,228,228,230,231,233,233,234,236,238,238,239,241,243,244,244,246,248,249,249,251,253,255, -+0,1,2,3,4,5,6,7,9,10,11,11,12,14,15,15,16,18,19,19,20,22,23,23,24,25,26,27,28,29,30,32,32,33,34,34,36,37,38,38,39,40,42,43,43,44,45,46,47,48,49,49,50,51,53,53,54,55,56,57,57,59,60,61,62,62,63,64,65,66,67,68,69,70,70,71,72,74,75,75,76,77,78,79,80,80,81,82,84,84,85,86,87,88,89,90,90,91,92,93,94,95,95,97,98,99,100,101,102,103,103,104,105,106,107,108,109,110,111,111,112,113,114,115,116,117,118,119,120,121,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,157,158,159,160,162,162,164,165,166,167,168,168,169,170,171,173,174,175,176,177,177,178,180,181,182,183,184,184,185,187,188,189,190,191,191,193,194,195,196,198,198,199,200,202,203,204,204,206,207,208,210,211,211,212,214,215,217,217,218,220,221,222,222,224,225,227,228,228,230,231,233,233,235,236,238,238,239,241,243,244,244,246,248,250,250,251,253,255, -+0,1,2,3,5,5,6,7,8,10,11,11,12,14,15,16,17,18,19,20,21,21,23,24,25,25,26,28,29,29,30,31,33,33,34,35,36,37,38,39,40,40,42,43,44,45,45,46,47,48,49,50,51,52,52,54,55,56,56,57,58,59,61,61,62,63,64,64,65,66,68,69,69,70,71,72,72,74,74,76,77,77,78,79,80,81,82,82,83,84,85,87,87,88,89,90,91,92,93,93,94,95,96,97,98,99,99,100,102,103,104,105,106,106,108,108,109,110,111,112,113,114,115,116,117,117,119,119,120,121,122,123,124,125,126,127,128,129,130,131,131,132,134,134,136,136,137,137,138,139,140,142,143,143,145,145,146,147,148,149,151,152,152,154,155,155,156,157,158,159,160,161,162,163,164,165,167,167,168,169,170,171,172,173,174,175,175,177,178,179,180,181,182,184,184,185,186,187,188,189,191,191,192,193,194,196,197,198,198,200,201,202,203,205,205,206,207,209,210,210,211,213,214,216,216,217,218,220,221,221,223,224,226,227,227,229,230,232,233,233,235,236,238,238,240,241,243,243,245,246,248,250,250,251,253,255, -+0,1,2,3,5,6,6,7,8,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,26,28,29,30,31,31,33,34,35,36,36,38,39,39,40,41,43,43,44,45,46,47,48,49,50,50,51,52,53,54,55,56,57,58,58,59,61,62,63,63,64,65,66,67,68,69,70,71,72,73,73,74,75,76,77,78,79,80,81,81,82,83,84,85,85,87,88,89,90,91,92,92,93,94,95,96,97,98,99,100,100,101,102,104,105,106,106,107,108,109,110,111,112,113,114,114,116,116,117,118,119,120,121,122,123,124,125,125,127,127,128,129,130,131,132,133,134,135,136,137,138,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,155,156,157,159,159,161,162,163,164,165,166,167,167,168,169,170,172,173,174,175,176,176,177,178,179,181,182,183,184,184,185,187,188,189,190,191,191,193,194,195,196,197,199,199,200,201,203,204,205,205,206,208,209,210,210,212,213,215,216,216,217,219,220,222,222,223,225,226,227,227,229,230,232,233,233,235,237,238,238,240,241,243,243,245,246,248,250,250,251,253,255, -+0,1,2,3,4,6,7,7,8,10,11,12,13,14,15,16,17,19,19,20,21,22,24,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,41,42,44,45,45,46,47,48,49,50,51,52,52,54,54,56,57,57,58,59,60,61,62,63,64,65,66,66,67,68,69,70,71,72,73,74,75,76,76,77,78,80,81,81,82,83,84,85,85,86,87,88,89,91,91,92,93,94,95,96,96,98,98,99,100,101,102,103,104,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,123,124,126,126,127,128,129,130,131,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,153,154,155,156,157,158,159,160,161,162,163,164,164,165,166,168,169,170,171,172,173,174,174,175,177,178,179,180,181,182,182,183,185,186,187,188,189,190,190,192,193,194,195,197,198,198,199,201,202,203,204,204,206,207,208,210,211,211,212,214,215,216,216,218,219,220,222,222,223,225,226,228,228,229,231,232,234,234,235,237,238,238,240,242,243,243,245,246,248,248,250,251,253,255, -+0,1,2,3,4,6,7,8,8,10,11,12,13,15,16,16,17,19,20,21,21,22,24,25,26,26,27,29,30,30,31,32,34,34,35,36,37,39,39,40,41,42,43,44,45,46,47,48,48,50,50,52,52,53,54,55,56,57,58,59,59,60,61,62,64,64,65,66,67,68,69,69,71,72,72,74,74,75,76,77,78,79,80,81,82,83,84,85,85,86,87,88,89,89,91,92,93,94,95,96,96,97,98,99,100,101,101,102,103,104,105,106,107,108,109,109,110,112,113,114,115,116,117,118,119,120,120,121,122,123,124,125,126,127,128,129,130,131,132,132,133,134,135,136,136,138,139,139,140,141,142,144,144,145,147,147,148,149,150,151,152,153,153,155,156,157,158,159,160,161,162,163,164,165,165,166,167,168,169,170,172,173,174,175,175,176,177,178,180,181,182,183,183,184,185,186,187,189,190,191,191,192,193,195,196,197,199,199,200,201,202,204,205,205,206,207,209,210,211,211,213,214,215,217,217,218,219,221,222,222,224,225,227,228,228,229,231,232,234,234,235,237,238,238,240,242,243,243,245,246,248,248,250,252,253,255, -+0,1,2,3,4,6,7,8,9,10,11,12,13,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,32,34,35,36,37,37,39,40,41,41,42,43,45,45,46,47,48,49,51,51,52,53,53,54,55,57,58,59,59,60,61,62,63,64,65,66,67,67,68,69,70,72,72,73,74,75,76,77,77,78,79,81,82,83,83,84,85,86,87,87,88,89,90,92,93,94,94,95,96,97,98,99,100,101,101,102,103,104,105,106,107,108,109,109,110,111,113,114,115,116,117,118,118,120,120,121,122,123,124,125,126,127,127,129,130,130,131,132,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,154,155,156,157,158,159,160,161,163,164,165,165,165,167,168,169,170,171,172,173,174,176,176,177,178,179,180,181,182,183,183,185,186,187,188,189,190,192,192,193,194,195,196,198,199,199,200,201,203,204,205,205,206,208,209,210,212,212,213,214,216,217,217,218,220,221,223,223,224,225,227,228,228,230,231,233,234,234,236,237,239,239,240,242,243,243,245,247,248,248,250,252,253,255, -+0,1,2,3,4,6,7,8,9,11,11,12,13,15,16,17,18,19,20,21,22,23,25,25,26,27,28,30,30,31,32,33,34,35,36,37,38,38,40,41,42,43,44,44,46,47,48,49,49,50,52,53,53,54,55,56,57,58,59,60,61,62,62,63,64,66,66,67,68,69,70,71,71,73,74,74,76,76,77,78,79,80,81,82,83,84,85,86,87,87,88,89,90,91,92,93,93,94,96,97,98,99,99,100,101,102,103,104,105,105,106,107,108,109,110,111,112,113,114,114,115,116,117,118,119,120,121,122,123,124,124,126,127,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,151,152,153,154,155,156,157,158,159,160,161,162,163,164,164,165,166,167,168,170,171,172,173,174,174,175,176,177,178,180,181,182,183,183,184,185,186,187,189,190,191,191,192,193,194,196,197,198,198,199,201,202,203,204,204,206,207,208,210,211,211,212,213,215,216,216,218,219,220,221,223,223,224,226,227,229,229,230,231,233,233,234,236,237,239,239,240,242,244,244,245,247,248,248,250,252,253,255, -+0,1,2,3,4,6,7,8,9,11,12,13,13,15,16,17,18,19,21,21,22,23,25,26,27,27,28,30,31,32,33,33,34,36,37,37,38,39,41,42,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,56,57,59,60,60,61,62,63,64,64,66,67,68,69,70,70,71,72,73,75,76,77,77,78,79,80,81,82,82,84,85,86,86,87,88,89,90,91,92,93,93,94,95,97,97,98,99,100,101,102,103,103,104,105,106,107,108,109,110,111,112,112,113,114,115,116,117,118,119,120,121,122,122,124,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,142,143,144,145,146,147,148,150,151,151,151,152,153,155,156,156,158,159,160,161,162,163,164,165,165,166,167,168,169,170,171,172,173,175,175,176,177,178,179,180,181,182,183,183,184,186,187,188,189,190,192,192,193,194,195,196,198,199,199,200,201,202,204,205,205,206,207,209,210,211,211,212,214,215,217,217,218,219,221,222,223,223,225,226,227,229,229,230,232,233,233,235,236,238,239,239,241,242,244,244,245,247,248,248,250,252,253,255, -+0,1,2,3,4,6,7,8,9,11,12,13,14,16,16,17,18,19,21,22,23,24,24,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,40,42,43,44,44,45,46,48,49,50,50,51,52,54,54,55,56,57,58,59,59,61,62,63,64,64,65,66,67,68,69,70,71,72,73,73,75,75,77,78,78,79,80,81,82,83,84,84,85,87,88,89,90,90,91,92,93,94,95,96,97,97,98,99,101,102,102,103,104,105,106,107,108,109,110,111,111,112,113,114,115,116,117,118,119,120,120,121,122,123,125,125,126,127,128,129,130,131,132,133,134,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,162,163,165,166,166,168,169,170,171,172,173,173,174,175,176,177,178,180,181,182,182,183,184,185,186,187,189,190,190,191,192,193,194,196,197,198,198,199,201,202,203,204,204,205,207,208,209,210,210,212,213,214,216,217,217,218,220,221,222,222,224,225,226,228,228,229,231,232,233,233,235,236,238,239,239,241,242,244,244,245,247,248,248,250,252,253,255, -+0,1,2,3,4,6,7,8,9,11,12,13,14,16,17,18,19,19,21,22,23,24,25,26,27,28,29,30,32,32,33,34,35,37,37,38,39,40,41,43,43,44,45,46,47,48,49,50,51,52,52,54,55,56,57,58,58,59,60,62,62,63,64,65,66,67,67,69,70,71,72,72,73,74,75,76,78,78,79,80,81,82,83,84,84,85,86,88,89,90,90,91,92,93,94,95,96,96,97,98,99,100,101,102,103,104,105,106,107,107,109,110,110,111,112,113,114,115,116,117,118,119,119,120,121,122,123,124,125,126,127,127,129,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,163,164,165,166,167,168,169,170,171,172,174,174,175,176,177,178,179,180,181,182,182,184,185,186,187,188,189,190,190,191,193,194,195,196,197,198,198,200,201,202,203,205,205,206,207,208,210,211,211,212,213,215,216,217,217,219,220,221,223,223,224,225,227,228,228,229,231,232,234,234,235,236,238,239,239,241,242,244,244,245,247,249,249,250,252,253,255, -+0,1,2,3,4,6,7,8,9,11,12,13,14,16,17,18,19,20,22,22,23,24,25,27,28,28,29,30,32,33,34,35,35,37,38,39,40,40,41,43,44,45,46,46,47,49,50,50,51,52,53,55,56,56,57,58,59,60,61,62,63,64,65,66,66,67,68,70,71,71,72,73,74,75,76,76,78,79,80,81,82,82,83,84,85,86,87,89,89,90,91,92,93,94,95,95,96,97,98,99,100,101,102,103,104,105,106,107,108,108,109,110,111,112,113,114,115,116,116,117,118,119,120,121,122,123,124,125,126,127,127,129,129,130,131,132,133,134,135,136,137,138,139,140,141,141,143,144,145,146,147,147,149,150,150,151,151,152,154,155,155,156,158,158,160,161,162,163,164,164,165,165,167,168,169,170,171,172,173,174,174,175,176,177,178,180,181,182,183,183,184,185,186,187,189,190,191,191,192,193,194,195,197,198,199,199,200,202,203,204,205,205,206,208,209,210,211,211,213,214,215,216,218,218,219,220,222,223,223,224,226,227,228,228,230,231,232,234,234,235,237,238,240,240,241,243,244,244,246,247,249,249,250,252,253,255, -+0,1,2,3,4,7,8,9,10,12,13,13,14,15,17,18,19,20,22,23,24,24,25,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,54,55,57,58,59,59,60,61,62,64,65,65,66,67,68,69,70,71,72,73,74,75,76,76,77,78,79,81,81,82,83,84,85,86,86,87,88,89,90,92,93,93,94,95,96,97,98,99,100,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,116,117,118,119,120,121,122,123,123,125,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,140,141,142,143,144,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,161,162,163,164,165,166,167,168,170,171,172,173,173,174,175,176,177,178,179,180,181,182,182,184,185,186,187,188,189,190,190,191,193,194,195,196,197,197,198,200,201,202,203,204,204,205,207,208,209,210,210,212,213,214,215,217,217,218,219,221,222,223,223,225,226,227,229,229,230,231,233,234,234,235,237,238,238,240,241,243,244,244,246,247,249,249,250,252,253,255, -+0,1,2,3,5,7,8,9,10,12,13,14,15,16,18,18,19,20,22,23,24,25,26,28,28,29,30,31,33,34,35,36,36,37,39,40,41,41,42,43,45,46,46,47,48,49,51,52,53,53,54,55,56,58,59,59,60,61,62,63,65,65,66,67,68,68,69,70,72,73,74,74,75,76,77,78,79,80,81,82,83,84,85,85,86,87,88,89,90,91,92,93,94,95,96,97,97,99,99,100,101,101,103,104,105,106,107,107,109,110,111,112,113,114,114,115,116,117,118,119,120,121,121,122,124,124,125,126,127,128,129,130,131,132,133,134,134,135,136,137,138,139,140,141,142,143,144,145,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,162,163,164,165,166,167,168,169,170,171,172,173,173,175,175,177,178,179,180,181,182,183,183,184,185,186,187,189,190,191,191,192,193,194,196,197,198,198,199,200,201,202,204,205,205,206,207,208,210,211,211,212,213,215,216,217,217,218,220,221,222,224,224,225,226,228,229,229,230,232,233,234,234,236,237,239,239,240,241,243,244,244,246,247,249,249,250,252,253,255, -+0,1,2,3,5,7,8,9,10,12,13,14,15,16,18,19,20,21,22,23,24,25,26,27,29,30,31,32,32,34,35,36,37,38,39,40,41,42,43,44,46,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,62,64,64,66,66,68,69,69,70,71,72,73,74,75,76,77,78,78,79,80,81,82,84,85,86,86,87,88,89,90,91,91,93,93,94,96,96,98,98,99,100,101,102,103,104,105,105,106,107,108,109,110,111,112,112,114,114,115,117,118,119,120,121,121,122,123,124,125,126,127,128,129,130,131,132,133,134,134,136,136,137,138,138,139,140,141,142,143,144,145,146,147,147,149,150,151,152,152,154,155,156,157,158,159,160,160,160,162,163,164,165,166,167,168,169,170,171,172,172,173,174,175,176,177,178,179,180,182,182,183,184,185,186,187,188,189,190,190,192,193,194,195,196,197,197,198,199,200,202,203,204,204,205,206,208,209,210,211,211,212,214,215,216,216,218,219,220,221,223,223,224,225,227,228,228,229,231,232,233,233,235,236,237,239,239,240,242,243,244,244,246,247,249,249,250,252,253,255, -+0,1,2,4,5,7,8,9,10,12,13,14,15,16,18,19,20,21,22,24,25,26,27,27,29,30,31,32,33,35,35,36,37,38,39,41,42,43,43,44,46,47,48,49,50,50,51,53,54,54,55,56,57,58,60,61,61,62,63,64,65,66,67,68,69,70,71,72,72,73,75,76,77,78,79,80,80,81,82,83,84,85,86,87,88,89,89,91,91,92,93,94,95,97,98,98,99,100,101,102,102,104,104,105,106,107,108,109,110,110,111,113,113,114,115,116,118,119,120,121,121,122,123,124,125,126,127,127,129,130,131,131,132,133,134,135,136,137,138,139,139,140,141,142,143,144,144,146,147,148,148,149,151,151,152,153,154,155,156,158,158,159,160,160,162,162,163,165,165,166,167,168,169,170,171,172,172,174,174,176,177,178,179,180,181,182,182,183,184,185,186,188,189,190,191,191,192,193,194,195,196,198,198,199,200,201,202,203,204,204,206,207,208,209,211,212,212,213,214,215,217,217,218,219,220,222,223,223,224,226,227,228,228,230,231,232,233,233,235,236,238,239,239,240,242,243,245,245,246,248,249,249,250,252,253,255, -+0,1,2,4,5,7,8,9,10,12,13,14,16,16,18,19,20,21,22,24,25,26,27,28,30,31,31,32,33,35,36,37,38,39,40,42,42,43,44,45,47,47,48,49,50,51,52,54,54,55,56,57,58,59,60,61,62,63,64,65,65,67,68,69,70,71,71,72,73,74,76,77,77,78,79,80,81,82,83,83,85,86,87,88,89,89,90,91,92,93,94,95,95,97,98,99,100,101,102,103,103,104,105,106,107,108,109,109,110,111,112,113,114,115,116,117,119,119,120,121,122,123,124,125,126,127,128,129,129,130,131,132,133,134,135,136,137,138,139,140,140,141,142,142,143,145,145,147,148,148,149,150,151,152,153,154,155,156,157,158,159,160,161,161,162,163,164,165,166,167,168,169,170,171,172,173,173,174,175,176,178,179,179,181,181,183,183,184,185,186,187,188,189,190,192,192,192,194,195,196,197,198,198,199,200,201,203,204,205,205,206,208,209,210,211,212,212,213,215,216,217,217,218,219,221,222,223,223,225,226,227,228,228,230,231,232,234,234,235,236,238,239,239,241,242,243,245,245,246,248,249,249,251,252,253,255, -+0,1,2,4,5,7,8,9,10,13,14,15,16,17,19,20,21,22,23,25,25,26,27,28,30,31,32,33,34,36,36,38,38,39,40,42,43,44,45,45,46,48,49,50,51,52,52,53,55,56,57,57,58,59,60,62,63,64,64,65,66,67,68,70,70,71,72,73,74,75,76,76,78,79,80,81,82,83,83,84,85,86,87,89,89,90,91,92,93,94,94,95,97,97,98,99,100,102,103,103,104,105,106,107,108,109,109,110,111,112,113,114,115,116,116,118,119,119,120,121,122,123,124,125,126,127,127,128,129,130,131,132,133,134,135,136,137,138,139,139,140,142,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,158,159,160,161,162,163,164,165,166,167,168,169,170,171,171,172,173,174,175,176,177,178,179,180,181,181,182,183,184,185,186,188,189,190,190,191,192,193,194,195,196,198,198,199,200,201,202,203,204,204,206,207,208,209,210,211,211,213,214,215,216,217,217,219,220,221,222,224,224,225,226,227,229,229,230,231,233,234,234,235,237,238,239,239,241,242,243,245,245,246,248,249,249,251,252,253,255, -+0,1,3,4,5,7,8,10,11,13,14,15,16,17,19,20,21,22,23,25,26,27,28,29,30,32,32,33,34,36,37,38,39,40,40,42,43,44,45,46,47,49,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,68,70,71,72,73,74,75,75,76,77,79,80,80,81,83,83,84,85,86,87,88,89,90,91,92,93,94,95,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,109,110,111,112,113,114,115,116,116,118,118,119,120,121,122,123,124,125,126,127,127,128,129,130,131,132,133,134,135,136,137,138,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,153,155,156,157,158,158,158,159,161,161,162,163,165,165,166,167,168,169,171,172,172,173,174,175,176,177,178,179,180,181,182,182,183,184,185,186,187,188,189,190,190,191,193,194,195,196,197,198,198,199,200,201,202,204,205,205,206,207,208,210,211,212,212,213,214,215,217,218,218,219,220,222,223,224,224,225,227,228,229,229,230,232,233,234,234,236,237,238,240,240,241,242,244,245,245,246,248,249,249,251,252,254,255, -+0,1,3,4,5,7,9,10,11,12,14,15,16,17,19,20,21,22,23,25,26,27,28,29,30,32,33,34,35,36,37,38,39,40,41,42,44,45,46,47,47,48,50,51,52,53,54,55,55,57,58,59,60,61,61,62,64,65,66,67,68,68,69,70,72,72,73,75,75,76,77,78,79,80,81,82,83,84,84,86,87,87,88,89,90,92,93,93,94,95,96,97,98,99,100,101,101,102,103,104,105,107,108,109,109,110,111,112,113,114,115,116,116,117,118,119,120,121,122,123,124,125,126,127,127,128,129,130,131,132,133,134,134,136,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,152,153,155,155,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,170,171,172,173,174,175,176,177,179,180,181,181,182,183,183,185,186,187,188,189,190,190,191,192,193,194,195,197,198,198,199,200,201,202,203,204,204,205,207,208,209,210,211,211,212,214,215,216,217,217,218,220,221,222,223,223,224,226,227,228,228,229,231,232,233,234,234,236,237,238,240,240,241,242,244,244,245,246,248,249,249,251,252,254,255, -+0,1,3,4,5,8,9,10,11,12,14,15,17,17,20,21,22,23,24,26,27,28,28,30,30,32,33,34,35,36,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,58,59,60,61,61,62,63,65,66,67,67,68,69,70,71,73,74,75,75,76,77,78,79,80,80,82,83,84,85,86,86,87,88,89,90,91,92,94,94,95,96,97,98,99,100,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,115,116,117,118,119,120,121,122,123,123,124,126,126,127,128,129,130,131,132,133,133,134,136,136,137,138,139,140,141,142,143,144,145,146,147,147,148,150,150,151,152,153,154,155,156,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,171,172,173,174,175,176,177,178,179,180,181,181,182,183,184,185,186,187,188,190,190,190,192,193,194,195,196,197,198,198,199,200,202,203,204,205,205,206,207,208,209,210,212,212,213,214,215,216,218,218,219,220,221,222,223,223,225,226,227,228,228,230,231,232,234,235,235,236,237,239,240,240,241,243,244,244,245,247,248,249,249,251,252,254,255, -+0,1,3,4,5,8,9,10,11,12,15,16,17,18,20,21,22,23,24,26,27,28,29,30,31,33,34,35,35,37,39,39,40,41,42,43,45,46,47,47,49,49,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,78,79,80,81,83,84,85,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,100,101,102,103,103,105,106,107,108,109,110,111,112,113,114,115,115,116,117,118,119,120,121,122,122,123,124,125,126,127,128,129,130,131,132,133,133,135,135,136,138,138,139,140,141,142,143,144,145,146,146,147,148,149,150,151,152,153,154,155,156,157,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,172,172,173,175,176,177,178,179,180,181,182,182,183,184,185,186,187,188,189,190,191,191,192,193,194,195,196,198,199,199,200,201,202,203,204,205,205,206,208,209,210,211,212,212,213,214,216,217,218,218,219,220,221,223,224,224,225,226,228,229,229,230,231,232,234,235,235,236,238,239,240,240,241,243,244,244,245,247,248,249,249,251,252,254,255, -+0,1,3,4,5,8,9,10,11,13,15,16,17,18,19,21,22,23,24,25,27,28,29,30,31,33,34,35,36,37,38,40,41,42,43,44,44,46,47,48,49,50,51,53,54,54,56,56,57,58,60,61,62,63,64,64,65,66,68,68,70,70,71,72,74,75,76,77,77,78,79,80,81,82,83,83,86,86,87,88,89,90,91,92,92,93,94,95,97,98,99,100,100,101,102,102,104,105,105,106,107,108,109,110,111,112,113,114,116,116,117,118,119,120,121,121,122,123,124,125,126,127,128,129,130,131,132,132,133,134,135,136,137,138,139,140,140,142,143,143,144,145,146,147,148,149,150,151,152,152,153,154,155,156,157,158,159,160,161,161,162,164,165,165,166,167,168,170,170,170,171,172,174,174,175,176,177,178,179,180,180,181,182,184,184,186,186,188,189,190,190,191,192,193,194,195,196,197,197,198,199,200,202,203,204,205,205,206,207,208,209,210,211,211,213,214,215,216,217,217,218,220,221,222,223,223,224,225,227,228,229,229,230,232,233,234,234,235,236,238,239,239,240,242,243,244,244,245,247,248,250,250,251,252,254,255, -+0,1,3,4,6,8,9,11,12,13,15,16,17,18,20,22,23,24,25,26,28,29,30,31,32,34,35,36,37,38,39,40,41,42,43,44,45,47,48,49,50,51,51,53,54,55,56,57,58,59,61,61,63,63,64,65,66,67,69,70,70,71,72,73,74,75,76,78,78,79,80,81,82,83,84,85,86,87,88,89,90,91,91,92,93,94,95,96,98,99,99,100,101,102,103,103,105,106,107,107,108,109,110,111,112,113,113,115,116,117,118,119,120,121,122,122,123,124,126,126,127,128,129,130,131,131,132,133,134,135,136,137,138,139,140,141,142,142,143,144,146,147,147,148,149,150,151,152,153,153,154,155,156,157,158,158,159,160,161,162,163,164,165,166,167,168,169,170,170,171,172,173,174,175,176,177,178,179,180,181,181,182,184,184,185,186,187,188,189,190,190,191,192,194,194,196,197,198,198,199,200,201,202,203,204,205,205,206,207,208,210,211,212,212,213,214,215,216,218,218,219,220,221,222,223,223,225,226,227,228,229,229,231,232,233,234,234,235,237,238,239,239,241,242,243,244,244,246,247,248,250,250,251,252,254,255, -+0,1,3,4,6,8,10,11,12,13,15,17,18,19,20,22,23,24,25,26,28,30,30,31,32,34,35,36,37,38,39,41,42,43,44,45,46,47,48,49,50,51,52,53,55,56,57,58,59,60,60,62,63,64,65,66,67,68,68,70,71,72,73,74,75,76,77,77,79,80,81,82,83,84,84,85,86,87,89,90,91,91,92,93,94,95,96,97,98,99,99,100,102,103,104,104,106,106,107,108,109,110,111,112,112,114,114,115,116,117,118,119,120,121,121,123,124,125,126,127,128,129,129,130,131,132,133,134,135,136,137,138,139,140,141,142,142,143,144,145,146,146,147,148,149,150,151,152,153,154,154,156,156,157,158,159,160,161,162,163,164,165,166,167,167,168,169,170,171,172,173,174,174,176,177,178,179,180,180,181,182,183,184,185,186,187,188,189,189,190,191,192,193,194,195,196,197,197,198,199,200,201,202,204,205,205,206,207,208,209,210,211,211,212,214,215,216,217,218,218,219,220,221,223,224,224,225,226,227,228,230,230,231,232,233,234,234,236,237,238,239,239,241,242,243,244,244,246,247,248,250,250,251,252,254,255, -+0,1,3,4,6,8,10,11,12,13,16,17,18,19,20,22,24,25,26,27,29,30,31,32,33,35,36,37,38,39,40,42,42,44,45,45,46,48,49,50,51,52,53,54,56,57,58,58,59,60,61,63,64,65,65,67,67,68,69,71,71,73,74,75,76,76,77,78,80,81,82,83,83,84,85,86,87,88,90,91,91,92,93,94,95,96,97,97,98,99,100,101,102,104,105,105,106,107,108,109,110,111,112,113,113,114,115,116,117,118,119,120,120,122,122,124,125,126,127,128,129,130,131,131,132,133,134,135,136,137,137,139,139,140,141,142,143,144,145,146,147,147,148,149,150,151,152,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,166,168,168,169,170,170,172,173,173,174,176,176,177,178,179,180,180,182,183,184,185,186,186,187,189,189,189,190,191,193,194,195,195,197,198,198,199,200,201,202,203,204,205,205,206,207,208,210,211,212,212,213,214,215,216,217,218,218,219,221,222,223,224,224,225,226,228,229,230,230,231,232,234,235,235,236,237,238,240,240,241,242,243,245,245,246,247,248,250,250,251,252,254,255, -+0,2,3,4,6,9,10,11,12,14,16,17,18,20,20,23,24,25,26,27,29,30,31,32,33,35,36,37,38,39,40,42,43,44,45,46,47,49,50,51,52,53,54,54,56,57,58,59,60,61,62,64,65,66,66,67,68,69,70,72,73,74,74,76,76,77,78,79,81,82,83,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,98,99,100,101,101,104,105,105,106,107,108,109,110,111,112,112,113,114,115,116,117,118,119,119,121,121,122,123,125,126,127,128,129,129,130,131,132,133,134,135,136,137,138,138,139,140,141,142,143,144,145,146,147,148,148,149,150,150,151,152,154,154,155,156,157,158,159,160,161,162,163,164,165,166,167,167,168,168,169,171,171,172,173,174,176,176,177,178,179,180,181,181,182,183,184,185,186,187,188,189,190,190,191,192,193,194,195,196,197,198,198,199,200,202,202,204,205,206,206,207,208,209,210,211,212,212,213,214,216,217,218,219,219,220,221,222,223,224,224,226,227,228,229,230,230,231,233,234,235,235,236,237,239,240,240,241,242,244,245,245,246,247,249,250,250,251,252,254,255, -+0,2,3,5,6,9,10,11,13,14,16,17,19,20,21,23,24,25,26,28,30,31,32,33,34,35,37,38,39,40,41,42,44,45,46,47,47,49,50,51,52,53,54,55,56,58,59,60,61,62,63,64,65,66,67,68,69,70,71,71,73,74,75,76,77,78,79,80,80,81,83,84,85,86,86,88,89,89,90,91,92,94,95,96,96,98,98,99,100,101,102,103,104,105,106,106,108,109,110,111,112,113,114,114,115,116,117,118,119,120,121,121,122,123,124,125,126,127,128,128,130,130,131,132,133,134,135,136,137,137,139,139,140,141,142,143,144,145,146,147,148,149,150,150,151,152,153,154,155,156,157,158,159,160,160,162,163,164,164,165,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,179,180,181,182,183,184,185,186,187,188,189,189,190,191,192,193,194,195,196,197,197,198,199,200,201,202,203,204,205,205,206,207,208,209,211,212,212,213,214,215,216,217,218,218,219,220,221,223,224,224,225,226,227,228,229,229,231,232,233,234,235,235,236,238,239,240,240,241,242,244,245,245,246,247,249,250,250,251,252,254,255, -+0,2,3,5,6,9,10,12,13,14,17,18,19,20,21,23,25,26,27,28,30,31,32,33,34,35,37,38,39,40,41,42,44,45,46,47,48,49,51,52,53,54,55,56,57,59,60,60,62,62,63,64,66,67,68,69,70,71,71,73,73,75,76,77,78,79,79,81,81,82,84,85,86,87,88,88,89,90,91,92,93,95,96,97,97,98,99,100,101,102,103,104,105,105,106,107,109,110,111,112,112,113,114,115,116,117,118,119,119,120,121,122,123,124,125,125,127,127,129,130,130,131,132,133,134,135,136,136,138,138,139,140,141,142,143,144,145,146,147,148,148,149,150,151,152,153,154,155,156,157,158,159,160,160,161,162,163,164,165,166,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,180,181,181,182,184,185,185,187,187,188,189,189,190,191,193,193,194,195,196,197,197,198,199,201,201,203,204,205,206,206,207,208,209,210,211,212,212,213,215,215,217,218,219,219,220,221,222,223,224,224,225,226,227,229,230,230,231,232,233,234,235,235,237,238,239,240,240,241,243,244,245,245,246,247,249,250,250,251,252,254,255, -+0,2,3,5,6,9,10,12,13,14,17,18,19,20,22,24,25,26,27,28,29,31,33,34,35,36,37,39,40,41,42,43,44,46,47,48,49,50,51,53,54,55,55,57,57,58,60,61,62,63,64,65,66,67,69,69,71,71,72,73,74,75,77,77,78,79,81,81,82,83,84,85,87,88,88,90,90,91,92,93,94,95,95,97,98,99,100,101,102,103,104,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,120,121,122,123,124,125,125,127,128,128,129,130,131,132,133,134,135,136,136,138,138,139,140,141,142,143,144,145,146,146,148,149,149,150,151,152,153,154,155,156,156,158,158,159,160,161,162,163,163,164,165,166,167,168,169,170,171,172,173,174,174,175,176,177,177,178,179,180,181,182,183,185,185,186,187,188,188,189,190,191,192,193,194,195,196,197,197,198,199,200,201,202,203,204,204,205,206,207,208,209,210,212,212,213,214,215,216,217,218,218,219,220,221,222,223,223,224,226,227,228,229,229,230,231,232,233,235,235,236,237,238,239,240,240,242,243,244,245,245,246,248,249,250,250,251,252,254,255, -+0,2,3,5,6,9,11,12,13,15,17,18,20,21,22,24,25,26,28,29,30,32,33,34,35,36,37,39,40,42,43,43,44,46,47,48,49,51,51,53,54,55,56,57,58,59,61,62,63,64,65,65,67,67,69,70,71,72,73,74,75,76,77,79,79,80,81,82,83,84,85,86,88,88,89,90,91,92,93,94,94,96,96,98,99,100,101,102,102,104,104,105,106,107,108,109,110,111,112,112,114,115,116,117,118,119,119,121,121,122,123,124,125,126,127,128,129,130,130,131,132,133,134,135,135,137,138,138,139,140,141,142,143,144,145,146,146,148,149,149,150,151,152,153,154,155,156,156,157,158,159,160,161,162,163,164,164,165,166,167,168,168,169,171,172,173,173,174,175,176,177,178,178,179,180,181,182,183,184,185,186,187,188,189,189,190,191,192,193,194,195,196,197,198,198,199,200,201,202,203,204,205,205,206,207,208,209,210,211,212,212,213,214,215,216,217,218,218,220,221,222,223,224,224,225,226,227,228,229,229,230,231,233,234,235,235,236,237,238,239,241,241,242,243,244,245,245,246,248,249,250,250,251,253,254,255, -+0,2,3,5,7,9,11,12,14,15,17,19,20,21,22,25,26,26,28,29,30,33,34,35,36,37,38,40,41,42,43,44,45,47,48,49,50,51,52,54,55,56,57,58,59,60,62,62,63,65,65,66,67,68,70,71,72,73,74,75,76,76,78,79,80,81,82,83,84,85,86,87,89,89,90,91,92,93,94,94,95,97,97,98,100,101,102,103,103,105,105,106,107,108,109,110,111,111,113,113,115,116,117,118,119,120,120,121,123,123,124,125,126,127,127,129,129,130,131,132,133,134,134,135,136,137,138,139,140,141,142,143,144,144,145,146,148,148,149,150,151,152,153,154,155,155,157,157,158,159,160,161,162,163,164,164,164,166,166,168,168,169,171,171,172,173,174,175,176,177,178,179,179,180,181,182,183,184,185,185,186,187,188,189,189,190,191,192,193,194,195,196,197,198,198,199,200,201,202,203,204,206,206,207,207,208,209,210,211,213,213,214,215,216,217,218,219,219,220,221,222,223,224,224,225,226,227,228,230,230,231,232,233,234,235,235,236,237,239,240,241,241,242,243,244,245,245,247,248,249,250,250,251,253,254,255, -+0,2,3,5,7,10,11,13,14,15,18,19,20,21,23,24,26,27,28,30,31,33,34,35,36,37,38,40,42,43,44,45,46,48,48,50,51,51,53,54,56,57,58,58,59,60,62,63,64,65,66,67,68,69,70,72,73,74,74,76,77,77,78,79,81,82,83,84,85,86,86,88,88,89,91,92,93,93,95,95,96,97,98,99,100,101,102,104,104,106,106,107,108,109,110,111,111,113,113,114,115,116,117,118,118,120,121,122,123,124,125,126,126,127,129,129,130,131,132,133,134,135,136,136,138,138,139,140,141,142,143,144,145,145,147,147,148,149,150,151,151,152,153,154,156,156,158,158,159,160,160,161,162,163,164,165,165,166,167,168,169,170,171,172,173,174,175,176,177,177,178,179,180,180,181,183,183,184,185,186,187,188,188,189,190,191,192,193,194,195,196,197,197,198,199,200,201,202,203,204,205,205,206,207,208,209,210,211,212,212,213,214,215,216,217,218,218,219,220,221,222,223,225,225,226,227,228,229,230,230,231,232,233,234,235,235,237,238,239,240,240,241,242,243,244,246,246,247,248,249,250,250,251,253,254,255, -+0,2,4,5,7,10,11,13,14,15,18,19,21,22,23,25,27,28,29,30,31,34,35,36,37,38,39,41,42,43,44,45,46,48,49,50,51,52,53,54,56,57,58,59,60,61,62,64,65,66,67,68,69,70,71,73,74,74,75,77,77,78,79,80,82,83,84,85,85,86,87,88,89,90,92,93,94,94,95,97,97,98,99,100,101,101,102,104,105,106,107,108,109,110,111,112,112,114,114,115,116,117,118,119,120,120,122,123,124,124,126,127,127,129,129,130,131,132,133,134,135,135,137,137,139,139,140,141,141,143,144,145,145,146,147,148,149,150,151,151,152,153,154,155,156,157,158,159,160,161,161,162,163,163,165,165,167,167,168,169,170,171,172,173,174,175,175,176,177,177,178,179,180,181,182,183,184,185,186,187,188,189,189,190,191,192,193,194,195,196,197,198,198,198,199,200,201,202,203,204,206,206,206,207,208,209,210,212,212,212,213,214,215,217,218,219,219,219,221,222,223,224,225,225,226,227,228,229,230,230,231,232,233,234,236,236,237,238,239,240,240,241,242,243,245,246,246,247,248,249,250,250,251,253,254,255, -+0,2,4,5,7,10,11,13,14,16,17,20,21,22,23,25,27,28,29,31,32,33,35,36,38,38,39,40,43,44,45,46,47,48,50,51,52,53,54,55,56,58,59,60,61,62,63,63,66,66,68,69,70,71,72,72,74,75,76,77,78,79,80,81,82,83,85,86,87,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,101,102,103,104,105,106,108,109,110,111,111,112,113,114,115,116,117,118,119,120,121,121,122,123,124,125,126,127,127,128,129,131,132,133,134,135,136,137,137,139,139,140,141,142,142,144,144,146,147,147,148,149,150,151,152,153,153,153,154,155,156,157,158,159,160,160,162,163,163,164,165,166,167,168,169,170,171,172,173,174,174,175,175,176,177,178,179,180,181,182,183,184,185,186,187,188,188,189,189,190,192,192,193,194,195,196,196,197,198,199,200,201,202,203,204,205,205,206,207,208,209,210,211,212,212,213,214,215,216,217,218,218,219,220,221,222,223,224,224,225,226,227,228,229,229,231,232,233,234,235,235,236,237,238,239,240,240,241,242,244,245,245,246,247,248,249,250,250,252,253,254,255, -+0,2,4,5,7,10,12,13,15,16,17,20,21,23,24,25,27,29,30,31,32,33,36,37,38,39,40,41,43,44,45,47,47,48,51,52,53,54,55,56,57,59,60,61,62,63,64,65,67,68,68,69,70,71,72,73,75,76,77,78,79,80,81,81,83,83,86,86,87,88,89,90,91,92,93,93,95,96,97,98,99,100,101,101,102,104,105,105,106,107,109,110,111,111,113,113,114,115,116,117,118,119,120,121,122,122,123,124,125,126,127,127,129,129,130,132,133,134,135,136,136,138,138,139,140,141,142,143,144,145,145,146,147,148,149,150,151,151,152,153,154,154,155,156,157,158,159,160,161,162,162,163,164,165,166,167,168,169,170,171,172,172,173,175,175,176,176,177,178,179,180,181,181,183,184,184,185,186,187,188,188,189,190,191,192,193,194,195,196,197,197,198,199,200,201,202,203,203,204,206,206,207,208,208,210,210,211,212,212,213,215,215,216,217,218,218,219,220,222,223,223,225,225,226,227,228,229,230,230,231,232,233,234,235,235,236,237,238,239,240,240,242,243,244,245,245,246,247,248,249,250,250,252,253,254,255, -+0,2,4,5,7,10,12,13,15,16,18,20,22,23,24,26,28,29,30,31,33,34,36,37,38,39,40,42,44,45,46,47,48,49,51,52,53,54,55,56,57,60,61,61,62,64,64,65,67,68,69,70,71,72,73,74,76,77,78,79,80,81,82,83,83,84,86,87,88,89,90,91,92,93,94,94,96,97,98,99,100,100,102,103,104,104,105,106,107,108,110,110,112,113,113,114,115,116,117,118,118,119,121,121,122,123,124,125,126,127,128,129,130,130,131,133,134,135,135,137,137,138,139,140,141,142,143,144,144,145,146,147,148,149,150,151,152,153,153,154,155,155,156,157,158,159,160,161,161,162,163,165,165,166,167,168,169,169,171,171,172,173,174,175,176,177,177,178,179,179,181,182,182,184,184,185,186,187,188,189,189,190,191,192,193,193,195,196,197,197,197,198,199,200,201,202,203,204,205,206,206,207,208,209,210,211,212,213,213,214,215,216,217,218,219,219,220,221,222,223,224,225,225,226,227,228,229,230,230,231,232,233,234,235,235,236,237,239,240,241,241,242,243,244,245,245,246,247,248,249,250,250,252,253,254,255, -+0,2,4,6,7,9,12,14,15,16,18,21,22,23,25,26,28,29,31,32,33,34,37,38,39,40,41,42,44,46,47,47,49,50,51,53,54,55,56,57,58,59,61,62,63,64,65,66,67,69,70,71,72,73,74,75,75,77,78,80,80,81,82,83,84,85,86,87,89,90,91,92,93,93,94,95,96,97,98,100,101,102,103,103,104,105,106,107,108,109,110,111,112,112,114,115,116,117,118,119,120,121,122,122,123,124,125,126,127,127,128,130,130,131,132,133,134,135,136,136,137,138,139,140,141,142,143,143,144,145,147,147,148,149,150,150,151,152,153,154,155,156,157,158,159,160,161,161,162,163,164,165,166,167,168,168,169,170,171,172,173,174,174,175,176,177,178,179,179,180,182,182,184,184,185,186,187,187,188,189,190,191,191,192,193,194,195,196,196,197,198,199,200,201,202,203,204,204,204,206,207,208,209,210,210,211,213,213,214,215,215,216,217,218,218,219,220,221,222,223,224,224,225,226,227,228,229,230,230,231,232,233,235,236,236,237,238,239,240,241,241,242,243,244,245,245,246,247,248,249,249,251,252,253,254,255, -+0,2,4,6,7,9,12,14,15,17,18,21,22,24,25,26,29,30,31,32,33,35,37,38,39,41,42,43,45,46,47,49,49,51,52,53,54,56,57,58,59,60,61,63,64,65,66,67,68,70,71,71,73,74,74,76,76,77,79,80,81,82,83,84,85,86,87,88,89,91,91,92,93,94,95,96,97,98,99,101,101,102,104,104,105,106,107,108,109,110,111,111,112,114,115,116,117,118,119,120,121,122,122,123,124,125,126,127,127,128,129,130,131,132,133,134,135,135,136,137,138,139,140,141,142,143,143,144,145,146,147,148,149,150,151,151,153,153,154,155,156,157,157,158,159,160,161,162,163,164,165,165,166,168,168,169,170,171,172,173,174,175,175,176,177,177,178,179,180,181,182,183,184,185,186,187,187,187,189,189,190,191,192,193,194,195,196,197,197,198,198,200,200,202,202,203,204,205,205,206,207,208,209,210,211,212,213,213,214,215,216,217,218,219,219,220,221,222,223,224,225,225,226,227,228,229,230,231,231,232,233,234,235,236,236,237,238,239,240,241,241,242,243,244,245,245,246,247,248,250,250,251,252,253,254,255, -+0,2,4,6,8,9,13,14,16,17,18,21,23,24,25,27,28,31,31,33,34,35,36,39,40,41,42,43,44,47,48,49,50,51,52,53,55,56,58,58,59,61,61,64,65,66,67,67,68,70,70,72,73,74,76,76,77,78,79,80,82,83,84,85,86,87,88,89,89,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,111,113,114,114,115,115,117,118,119,121,122,122,123,124,125,126,127,127,128,129,130,131,132,133,134,135,135,137,138,138,139,140,141,142,143,143,144,146,146,147,148,149,150,150,151,152,153,154,155,156,157,158,159,159,160,161,162,163,164,164,165,167,168,168,169,170,171,171,172,173,174,175,176,176,177,178,179,180,181,182,183,184,184,186,186,186,187,188,189,190,191,192,193,194,195,196,196,196,197,198,199,200,201,202,203,204,204,205,206,207,208,209,210,211,211,211,213,214,214,215,216,217,218,218,219,220,221,222,223,224,224,225,226,227,228,229,230,230,231,232,233,234,235,235,236,237,238,239,240,240,241,242,243,244,245,245,246,247,249,250,250,251,252,253,254,255, -+0,2,4,6,8,10,13,14,16,17,19,22,23,25,26,27,28,31,32,33,35,36,37,39,40,42,43,44,45,47,48,50,50,52,53,54,56,57,58,59,60,61,62,64,65,66,67,68,69,70,71,73,74,75,76,77,78,79,80,81,83,84,85,86,87,88,88,89,90,91,93,94,95,96,97,98,99,100,101,102,103,103,105,106,107,108,109,109,110,112,113,114,114,115,116,117,118,118,119,121,122,123,124,125,126,127,128,128,130,130,131,132,133,134,135,135,136,137,138,139,140,141,142,143,144,144,145,146,146,148,149,150,151,152,152,153,154,155,156,157,157,158,159,160,161,162,163,164,164,166,167,167,168,169,170,171,172,172,173,173,175,175,176,177,178,179,180,181,182,183,183,184,185,186,186,187,188,189,190,191,192,193,193,194,195,196,196,197,198,199,200,201,202,203,204,204,204,205,206,207,208,209,210,211,212,212,213,214,215,216,217,218,219,219,220,221,222,223,223,224,224,225,226,227,228,229,230,230,231,232,233,234,235,235,236,237,238,239,240,240,241,242,243,244,246,246,247,248,249,250,250,251,252,253,254,255, -+0,2,4,6,8,10,13,15,16,18,19,22,23,25,26,27,29,31,32,34,35,36,37,40,41,42,43,45,45,48,49,50,51,52,53,54,57,58,59,60,61,62,63,65,66,67,68,69,70,71,72,74,75,76,77,78,79,80,81,82,84,84,86,86,88,88,90,90,91,92,94,95,96,97,98,98,100,101,102,103,104,104,106,107,108,108,109,110,111,112,113,114,115,116,117,118,119,119,120,122,123,124,125,126,127,127,129,129,130,131,132,133,134,135,135,136,137,138,139,140,141,142,143,143,145,146,146,147,148,149,149,150,151,152,153,154,155,156,157,158,158,159,160,161,162,163,164,164,166,166,168,168,169,170,171,172,172,172,173,174,175,176,177,178,179,180,181,181,182,183,184,185,186,187,187,188,189,189,190,191,192,193,194,195,196,197,197,198,199,200,200,201,203,203,204,205,205,206,207,208,209,210,211,212,213,213,213,214,215,216,217,218,219,219,220,221,222,223,224,225,225,226,227,228,229,230,231,231,232,233,234,235,236,236,237,238,239,240,241,241,242,243,244,245,246,246,247,248,249,250,250,251,252,253,254,255, -+0,2,4,6,8,10,13,15,16,18,19,22,23,25,26,28,29,32,33,35,35,37,38,40,42,43,44,45,46,49,50,51,52,53,54,55,57,58,60,61,62,62,64,65,66,68,69,70,71,72,73,73,76,77,78,79,80,81,81,82,84,85,86,87,88,89,90,91,92,93,94,95,97,98,98,99,101,101,102,103,104,105,106,107,108,110,110,111,112,114,114,115,116,117,118,119,119,120,121,122,123,124,125,125,127,128,129,130,131,132,133,133,135,135,136,137,138,139,140,141,142,142,144,144,145,146,146,148,149,150,151,152,152,153,154,155,156,157,158,158,159,160,161,162,163,164,164,165,166,167,168,168,169,170,171,172,172,174,174,175,176,177,178,178,180,180,181,182,183,184,185,185,186,187,188,188,189,190,191,192,193,194,194,196,196,197,197,198,199,200,201,202,203,204,205,205,206,207,208,208,209,210,211,212,212,213,214,215,216,217,218,219,219,220,220,222,222,223,224,225,225,226,227,228,229,230,231,231,232,233,234,235,236,236,237,238,239,240,241,241,242,243,244,245,246,246,247,248,249,250,250,251,252,253,254,255, -+0,2,4,6,8,10,13,15,17,18,20,23,24,25,27,28,30,32,33,35,36,37,38,41,42,43,44,46,47,49,50,51,52,53,54,56,58,59,60,61,62,63,64,65,67,68,69,71,71,72,74,74,76,78,79,80,80,82,82,83,84,86,87,88,89,90,91,92,93,94,95,96,98,98,99,100,102,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,119,120,121,122,123,124,125,126,126,128,129,130,131,132,133,134,134,135,136,137,138,139,140,141,142,142,143,144,145,146,147,148,149,150,150,151,152,153,153,155,156,157,157,158,159,160,161,162,163,164,164,165,166,167,168,169,169,170,170,172,172,173,174,175,176,177,178,178,179,180,181,182,183,184,184,185,185,186,187,188,189,190,191,192,193,193,194,195,196,196,197,198,199,200,201,201,203,203,204,205,205,206,207,208,209,210,211,212,213,213,213,214,215,216,217,218,219,219,220,221,222,223,224,225,226,226,226,227,228,229,230,231,231,232,233,234,235,236,236,237,238,239,240,241,241,242,243,244,245,246,246,247,248,249,250,250,251,252,253,254,255, -+0,2,4,6,8,10,14,15,17,18,20,23,25,26,27,28,30,32,34,35,37,38,39,40,43,44,45,46,47,49,51,52,53,55,55,57,57,60,61,62,63,64,65,66,67,69,70,71,72,73,74,75,76,78,79,80,81,82,83,84,85,86,87,89,90,91,92,93,94,95,96,96,97,99,100,101,102,103,104,105,106,106,107,109,110,111,111,112,113,115,116,117,117,118,119,120,121,122,123,124,125,126,127,128,128,129,130,131,132,133,134,135,135,136,138,139,140,141,142,142,143,144,145,146,147,148,148,149,150,151,152,153,154,155,155,156,157,158,159,160,161,162,162,162,163,164,165,166,167,168,169,170,170,171,172,173,174,175,176,176,178,178,179,180,181,182,183,183,184,184,186,186,187,188,189,190,191,191,192,193,194,195,195,196,197,198,199,199,201,201,202,203,204,204,205,206,207,207,208,209,210,211,212,212,213,214,215,216,217,218,218,218,219,221,221,222,223,224,225,225,226,227,228,229,230,231,231,232,232,233,234,235,235,236,237,238,239,240,241,241,242,243,244,245,246,246,247,248,249,250,250,251,252,253,254,255, -+0,2,4,6,8,10,14,16,17,19,20,23,25,26,28,29,30,33,34,36,37,38,39,41,43,44,46,47,48,49,52,53,53,55,56,57,58,60,61,62,63,64,65,66,68,70,71,72,73,74,75,76,77,79,80,81,82,83,84,85,86,87,88,90,90,91,92,93,95,95,97,98,98,99,101,102,103,104,105,105,106,107,109,109,110,111,112,113,114,116,117,117,118,119,120,122,122,123,124,125,126,126,128,129,129,130,131,132,133,134,135,135,136,137,139,140,140,142,143,144,144,145,146,147,147,149,149,150,151,152,153,154,155,156,156,157,158,159,160,161,162,162,162,163,164,165,166,167,168,169,169,170,171,172,173,174,174,176,176,177,178,179,180,181,182,182,183,183,184,185,186,187,188,188,189,190,191,192,193,194,195,196,196,197,197,199,199,200,201,202,203,204,205,205,205,206,207,208,209,210,211,212,213,213,214,214,215,216,217,218,219,219,220,221,222,222,224,224,225,225,226,227,228,229,230,231,231,232,233,234,235,236,236,237,238,238,239,240,241,241,242,243,244,245,246,246,247,248,249,250,250,251,252,253,254,255, -+0,2,5,7,9,10,14,16,17,19,21,24,25,27,28,29,31,33,35,36,38,39,40,41,44,45,46,47,48,49,52,53,54,55,56,58,59,61,62,63,64,65,66,67,68,70,72,72,74,75,76,76,78,80,81,82,83,84,84,86,87,88,89,91,91,92,93,94,95,96,97,98,99,100,102,103,104,105,105,106,107,108,109,110,111,112,113,114,115,117,117,119,119,120,121,122,123,123,125,125,127,127,128,129,130,131,132,133,134,134,136,136,137,138,140,140,141,142,143,144,145,146,147,148,148,149,150,151,152,153,154,154,155,156,157,158,159,160,161,162,162,163,163,164,165,166,167,168,168,169,170,171,172,173,174,174,176,176,177,178,179,179,181,182,183,183,184,184,185,186,187,187,188,189,190,191,192,193,193,194,195,196,196,197,198,199,200,201,202,202,203,204,205,205,206,207,208,209,210,211,211,212,213,213,214,215,216,217,218,218,219,219,220,221,222,223,224,225,226,226,227,228,228,229,230,231,231,232,233,234,235,236,236,237,238,239,240,241,241,241,242,243,244,245,246,246,247,248,249,250,250,251,252,253,254,255, -+0,2,5,7,9,11,14,16,18,19,21,22,26,27,28,30,31,32,35,37,38,39,40,42,44,45,47,48,49,50,52,54,55,56,57,59,59,60,63,64,65,66,67,68,69,70,72,73,74,75,77,77,78,79,80,82,83,85,85,87,87,88,89,91,91,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,110,110,111,112,113,113,115,116,116,118,118,119,121,122,123,124,125,125,126,127,128,129,130,131,132,133,133,134,135,136,137,138,139,140,141,142,142,143,144,145,146,147,148,149,149,150,151,152,153,153,154,155,156,157,158,159,160,161,162,163,163,164,165,166,167,168,168,169,170,171,172,172,173,174,175,176,177,178,179,180,180,181,181,182,183,184,185,186,186,187,188,189,190,191,192,193,194,194,194,195,196,197,198,199,199,200,201,202,203,204,204,205,206,207,207,208,209,210,211,212,212,213,213,215,215,216,217,218,219,219,220,221,222,223,223,224,225,225,226,227,228,229,230,231,231,232,233,233,234,235,236,236,237,238,239,240,241,241,242,243,244,245,245,245,246,247,248,249,250,250,251,252,253,254,255, -+0,2,5,7,9,11,14,16,18,20,21,23,26,27,29,30,32,33,36,37,38,40,41,42,45,46,47,48,50,51,52,54,55,56,58,59,60,61,63,64,65,67,67,69,70,71,73,74,75,76,77,78,79,80,81,83,84,85,86,87,88,89,90,91,92,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,115,117,117,118,119,120,122,123,123,124,125,127,127,128,129,130,131,132,133,133,134,135,136,137,138,139,140,141,141,142,143,144,145,146,146,147,148,149,150,151,152,153,154,155,155,156,157,158,159,160,161,161,162,163,164,165,166,167,167,168,169,170,171,172,173,173,174,175,176,177,178,179,179,180,181,182,182,183,184,184,185,186,187,188,189,190,191,191,192,193,194,195,195,196,197,197,198,199,200,201,202,202,204,204,204,205,206,207,208,209,210,210,211,212,212,213,214,215,216,217,218,218,219,219,220,221,222,223,224,225,226,226,226,227,228,229,230,231,231,232,233,234,235,235,236,236,237,238,239,240,241,241,242,243,244,245,246,246,246,247,248,249,250,250,251,252,253,254,255, -+0,2,5,7,9,11,15,16,18,20,22,23,26,28,29,31,32,34,36,38,39,40,42,43,44,46,48,49,50,51,53,54,56,57,58,59,61,62,63,65,66,67,68,69,70,72,73,75,76,77,78,79,80,81,82,83,84,86,87,88,89,90,91,92,93,94,95,97,98,99,100,101,102,103,103,104,105,106,107,108,110,111,112,113,113,115,115,117,117,118,119,120,121,122,123,123,124,125,127,128,129,130,131,131,133,134,135,135,136,137,138,138,140,140,142,142,143,144,145,146,146,147,148,149,150,151,152,153,154,154,155,156,157,158,159,160,160,161,162,163,164,165,166,167,168,168,169,170,171,171,172,173,174,175,176,177,177,178,178,179,180,181,182,183,184,184,185,186,187,188,189,189,190,191,192,193,193,194,195,196,196,197,198,199,200,200,201,203,203,203,204,205,206,207,208,208,209,210,211,211,212,213,214,214,215,216,217,218,219,219,220,221,222,222,223,224,225,225,226,227,228,229,229,230,230,231,232,233,234,235,236,236,237,237,238,239,240,241,241,242,243,244,245,246,246,247,248,249,249,250,250,251,252,253,254,255, -+0,2,5,7,9,11,15,17,18,20,22,23,27,28,29,31,33,34,36,38,39,41,42,43,44,47,48,49,51,52,53,54,57,57,59,60,61,62,63,66,67,68,69,70,71,73,73,76,76,77,79,79,81,82,83,84,85,87,88,89,90,90,92,93,93,95,96,98,99,99,101,101,102,103,104,105,106,107,108,109,111,112,113,114,114,115,116,117,118,119,120,121,122,123,124,124,125,126,128,129,130,131,131,133,133,134,135,136,137,138,139,140,140,141,142,143,144,145,145,147,147,148,149,150,151,151,153,153,155,155,156,157,158,159,160,160,161,162,163,163,164,165,166,167,168,169,170,171,171,172,173,174,175,176,176,177,178,179,179,180,181,182,182,183,184,185,186,187,188,188,189,190,191,192,193,194,194,194,195,196,197,198,199,199,200,201,202,203,204,204,205,206,206,207,208,209,210,211,211,211,212,213,214,215,216,217,218,218,219,219,220,221,222,223,224,225,225,225,226,227,228,229,230,231,231,232,232,233,234,235,236,236,237,238,239,240,240,241,241,242,243,244,245,246,246,247,248,249,250,250,250,251,252,253,254,255, -+0,3,5,7,9,11,15,17,19,21,22,24,27,28,30,31,33,34,37,38,40,41,42,44,45,48,49,50,51,53,54,55,57,59,59,61,62,63,64,66,68,69,70,71,72,73,74,76,77,78,79,80,81,82,83,84,85,88,88,89,90,91,92,93,95,96,96,98,99,100,101,103,103,104,105,106,107,108,109,110,112,112,113,114,116,116,117,118,119,120,121,121,122,123,124,125,126,127,129,130,131,132,132,133,135,135,136,137,138,139,140,141,141,142,143,144,145,145,146,147,148,149,150,151,152,153,153,154,155,156,157,157,158,159,160,161,162,163,164,164,165,166,167,168,169,170,170,171,172,173,174,174,175,176,177,178,179,180,180,181,181,182,183,184,185,185,187,187,188,189,190,191,192,193,193,194,194,195,196,197,197,198,199,200,201,202,202,204,204,204,205,206,207,208,209,210,210,211,212,212,213,214,215,215,216,217,218,219,220,220,221,221,222,223,224,225,226,226,227,227,228,229,230,231,231,232,233,234,234,235,236,236,237,238,239,240,241,241,241,242,243,244,245,246,246,247,248,249,250,250,250,251,252,253,254,255, -+0,3,5,7,9,11,15,17,19,21,22,24,27,29,30,32,33,35,36,39,40,42,43,44,45,48,49,50,52,53,54,55,58,59,60,61,63,64,65,66,68,69,70,71,73,73,75,76,77,79,80,81,82,83,84,85,86,87,89,90,91,92,93,94,95,96,97,98,99,101,102,103,104,105,106,107,108,108,109,110,112,112,113,115,116,117,118,119,120,121,122,122,124,124,125,126,127,128,129,129,130,131,132,133,135,136,137,138,138,139,140,141,142,143,144,145,145,146,147,148,149,150,151,152,152,154,154,155,156,157,157,158,159,160,161,162,163,163,164,165,166,167,168,169,169,170,171,172,173,173,174,175,175,176,177,178,179,180,180,181,182,184,184,184,186,186,187,188,189,190,191,191,192,192,193,194,195,195,196,197,198,199,200,201,201,202,203,203,204,205,206,207,207,208,209,210,211,212,212,212,213,214,215,216,217,217,218,218,219,220,221,222,223,224,224,225,225,226,227,228,229,229,230,231,231,232,233,234,235,236,236,236,237,238,239,240,241,241,242,243,243,244,245,246,246,247,248,249,250,251,251,251,252,253,254,255, -+0,3,5,7,10,12,16,18,19,21,23,24,28,29,30,32,33,35,36,39,41,42,43,45,46,48,50,51,52,53,55,56,59,59,61,62,63,64,65,67,69,70,71,72,73,74,75,76,78,80,81,82,83,84,85,86,87,88,90,91,92,93,94,95,96,97,98,99,100,101,103,103,104,106,106,108,108,110,110,111,112,113,114,116,117,118,119,120,120,121,122,123,124,125,126,127,128,129,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,144,145,146,147,148,149,150,151,151,152,153,154,155,156,156,157,158,159,160,161,162,163,163,164,165,166,167,168,169,169,170,171,172,173,173,174,175,176,176,177,178,179,179,180,181,182,183,184,185,185,186,187,188,189,189,190,191,192,193,193,194,194,195,196,197,198,199,200,200,201,202,203,204,204,204,205,206,207,208,209,209,210,211,212,212,213,214,215,215,216,217,218,219,219,219,220,221,222,223,224,225,226,226,226,227,228,229,230,231,232,232,232,233,234,235,236,237,237,238,238,239,240,241,241,242,243,244,244,245,246,246,247,248,249,250,251,251,251,252,253,254,255, -+0,3,5,8,10,12,16,18,19,21,23,25,28,29,31,33,34,35,37,40,41,42,44,45,46,48,50,52,53,54,55,56,58,60,61,62,64,65,66,67,68,70,72,73,73,75,76,77,78,79,81,82,83,85,85,86,87,88,90,91,93,93,95,96,97,97,98,99,101,101,102,103,105,106,107,108,109,110,111,112,113,114,115,116,116,118,118,120,122,122,123,124,125,126,127,128,128,130,130,131,132,133,134,135,136,137,137,138,139,140,141,142,142,144,145,146,147,148,148,150,150,151,152,153,154,155,155,156,157,158,159,160,161,162,162,163,164,165,166,167,168,168,169,169,170,171,172,173,174,174,175,176,177,178,179,179,180,181,182,183,184,184,185,186,187,188,188,189,190,190,191,192,192,193,194,195,196,197,197,198,199,200,201,202,202,203,203,204,205,206,207,208,208,209,210,211,211,212,213,213,214,215,216,217,218,218,218,219,220,221,222,223,223,224,225,225,226,227,228,228,229,230,231,231,232,233,233,234,235,236,236,237,238,239,239,240,241,241,242,243,244,245,245,246,246,247,248,249,250,251,251,252,252,253,254,255, -+0,3,5,8,10,12,16,18,20,21,23,25,28,30,31,33,34,36,37,40,42,43,44,46,47,48,51,52,53,55,56,57,58,61,62,63,64,65,67,68,69,71,72,73,74,76,77,78,79,80,82,83,84,85,86,87,88,90,90,92,93,94,95,96,97,98,99,100,101,102,103,104,106,107,108,109,110,111,112,113,114,114,116,116,117,118,119,121,122,123,124,125,126,126,127,128,129,130,131,132,133,134,135,136,136,137,138,139,140,141,142,143,143,145,146,147,148,149,149,150,151,152,153,154,154,155,156,157,158,159,160,161,161,162,163,164,165,166,166,167,168,169,170,170,171,171,172,173,174,175,176,177,177,178,179,180,181,182,182,183,184,185,186,187,188,188,189,190,191,191,191,192,193,194,195,195,197,197,198,199,200,201,201,202,202,203,204,205,205,206,207,208,209,210,210,211,211,212,213,214,215,215,216,217,218,219,219,220,220,221,222,223,224,225,225,225,226,227,228,229,230,230,231,231,232,233,234,235,235,236,236,237,238,239,240,241,241,241,242,243,244,245,246,246,246,247,248,249,250,251,251,252,252,253,254,255, -+0,3,5,8,10,12,16,18,20,22,23,25,29,30,32,33,35,36,38,40,42,43,45,46,47,49,51,52,54,55,56,57,59,61,62,64,65,66,67,68,69,72,73,74,75,76,77,78,79,80,82,84,85,86,87,88,89,90,91,92,94,95,96,97,98,99,100,101,102,103,104,105,107,108,109,110,111,112,113,113,114,115,116,117,118,119,120,122,123,123,125,126,127,128,128,129,130,131,132,133,134,135,135,136,137,138,139,140,141,141,142,143,144,146,147,148,148,150,150,151,152,153,154,154,156,156,157,158,159,160,160,161,162,163,164,165,166,166,167,168,169,170,171,171,172,172,173,174,174,176,176,177,178,179,180,181,181,182,183,184,185,186,186,187,188,189,189,190,191,191,192,193,194,195,195,196,197,198,198,199,200,201,202,203,203,204,204,205,206,207,208,208,209,210,211,212,212,212,213,214,215,216,216,217,218,219,219,220,221,222,222,223,224,225,226,226,227,227,228,229,230,231,232,232,232,233,234,235,236,236,236,237,238,239,240,241,241,241,242,243,244,245,246,247,247,247,248,249,250,251,251,252,252,253,254,255, -+0,3,5,8,10,12,16,18,20,22,24,26,27,30,32,34,35,37,38,41,42,44,45,46,48,49,50,53,54,56,57,58,59,61,63,64,65,67,68,69,70,71,73,74,76,77,78,79,80,81,82,83,86,86,87,89,90,90,92,93,94,95,97,98,99,100,100,102,103,104,104,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,123,125,126,127,128,129,130,131,132,133,133,134,135,136,137,138,139,140,141,141,142,143,144,145,146,147,148,148,149,150,151,152,153,154,154,155,156,157,158,159,159,160,161,162,163,163,164,165,166,167,168,169,170,170,171,172,173,173,175,176,176,177,178,179,179,180,181,182,183,183,184,185,186,187,188,189,189,189,190,191,192,193,193,194,195,196,197,198,199,199,200,201,201,202,202,203,204,205,206,206,207,208,209,210,210,210,211,212,213,214,215,215,216,217,218,218,219,220,220,221,222,223,224,224,225,225,226,227,228,229,229,230,231,231,232,233,233,234,235,236,236,237,238,238,239,240,241,242,242,242,243,244,245,246,246,247,247,248,249,250,251,251,252,252,253,254,255, -+0,3,5,8,10,13,17,19,20,22,24,26,28,31,32,34,36,37,39,41,43,44,46,47,48,50,51,54,55,56,57,59,60,61,64,65,66,67,68,69,71,72,74,75,76,77,79,80,81,82,83,84,86,87,88,89,90,91,92,93,94,95,97,98,99,101,102,102,103,104,105,106,107,109,109,111,112,113,114,115,116,117,118,118,120,121,121,122,123,124,125,127,128,129,129,131,131,132,133,134,135,136,137,138,139,140,140,141,142,143,144,145,146,146,147,148,149,150,150,152,152,153,154,155,156,157,158,159,159,160,161,162,163,163,164,165,166,167,168,168,169,170,171,172,172,173,174,175,176,177,178,179,179,180,181,182,183,183,184,185,186,187,187,188,189,189,190,191,191,192,193,194,195,196,197,197,198,199,200,201,201,201,202,203,204,205,205,206,207,208,208,210,210,211,211,212,213,213,214,215,216,217,217,218,218,219,220,221,221,222,223,224,225,226,226,226,227,228,229,230,230,231,231,232,233,234,234,235,236,236,237,238,239,239,240,241,242,242,243,243,244,245,246,246,247,248,248,249,250,251,251,252,253,253,254,255, -+0,3,6,8,10,13,15,19,21,23,24,26,28,31,33,34,36,37,39,40,43,45,46,48,49,50,52,54,55,57,58,59,61,62,63,65,66,68,69,70,71,72,73,75,77,78,79,80,81,83,84,85,85,88,89,90,91,92,93,94,95,96,97,98,100,101,102,103,104,105,106,107,108,109,110,111,112,113,115,116,117,117,119,119,120,121,122,123,124,125,126,127,128,128,129,130,132,133,134,135,136,137,138,138,139,140,141,142,143,144,144,145,146,147,148,149,150,151,151,152,153,154,155,156,156,158,158,159,160,161,162,162,163,164,165,166,167,167,168,169,170,171,172,173,173,174,175,176,177,177,178,179,180,181,182,183,183,184,185,185,185,186,187,188,189,190,191,191,192,193,194,195,195,196,197,198,199,199,199,200,201,202,202,203,204,205,206,207,207,208,209,210,210,211,211,212,213,214,215,215,216,217,218,218,219,219,220,221,222,223,223,224,224,225,226,227,228,228,229,230,231,231,231,232,233,234,235,235,236,236,237,238,239,240,240,241,241,242,243,244,244,245,246,246,247,248,248,249,250,250,251,252,253,253,254,255, -+0,3,6,8,11,13,15,19,21,23,25,26,28,31,33,35,36,38,39,41,44,45,46,48,49,51,52,55,56,57,59,60,61,62,64,66,67,68,69,71,72,73,74,75,78,79,80,81,82,83,84,85,86,89,90,90,92,92,94,94,96,97,98,99,101,101,103,104,105,106,107,108,109,110,111,112,112,113,116,116,117,118,119,120,121,122,123,123,125,125,126,127,128,129,130,131,133,134,135,136,136,137,138,139,140,141,142,143,144,144,145,146,147,148,149,149,150,151,152,153,154,155,155,156,157,158,159,160,160,162,162,163,164,165,166,166,167,168,169,170,171,171,172,173,174,175,176,177,177,178,179,180,180,181,182,183,183,184,185,186,186,187,188,188,189,190,191,192,193,193,194,195,196,197,198,198,199,200,200,201,202,202,203,204,205,206,206,207,208,209,209,210,210,211,212,213,213,214,215,216,217,217,218,218,219,220,221,221,222,223,224,225,225,225,226,227,228,228,229,230,231,231,232,233,233,234,235,236,237,237,237,238,239,240,241,241,241,242,243,244,245,245,246,246,247,248,249,249,250,250,251,252,253,253,254,255, -+0,3,6,8,11,13,15,19,21,23,25,27,28,32,33,35,36,38,40,41,44,45,47,48,50,51,52,55,56,58,59,60,61,63,64,66,67,69,70,71,72,73,75,76,78,79,80,81,82,84,85,86,87,89,90,91,92,93,94,95,96,97,98,100,101,103,103,105,105,106,107,108,110,110,111,112,113,114,116,117,118,119,120,121,122,123,124,124,125,126,127,128,129,130,131,132,133,135,135,136,137,138,139,140,141,142,142,143,144,145,146,147,148,148,149,150,151,152,153,154,155,155,156,157,158,159,160,160,161,162,163,164,165,166,166,167,168,169,170,170,171,172,173,174,175,175,176,177,178,178,179,180,181,182,183,183,184,185,186,187,187,187,188,189,190,191,192,192,193,194,195,196,196,197,198,199,200,200,200,201,202,203,203,204,205,206,207,208,208,209,210,211,211,211,212,213,214,215,215,216,217,218,218,218,219,220,221,222,223,223,224,225,225,226,226,227,228,229,230,230,231,231,232,233,234,234,235,236,237,237,237,238,239,240,241,241,241,242,243,244,245,245,246,246,247,248,249,249,250,250,251,252,253,253,254,255, -+0,3,6,8,11,13,15,19,21,23,25,27,29,32,34,35,37,38,40,41,44,46,47,49,50,52,53,54,57,58,60,61,62,63,65,66,68,69,70,72,73,74,75,76,77,80,81,82,83,84,85,86,87,88,90,92,93,94,95,96,97,98,99,100,101,102,103,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,132,133,134,135,136,137,138,140,141,141,142,143,144,145,146,147,147,148,149,150,151,152,152,153,154,155,156,157,158,158,159,160,161,162,163,164,164,165,166,167,168,168,169,170,171,172,173,174,174,175,176,177,178,179,179,180,181,182,182,182,183,184,185,186,186,187,188,189,190,191,191,192,193,194,194,195,196,197,198,198,198,199,200,201,202,202,203,204,205,206,206,207,208,209,209,209,210,211,212,213,213,214,215,216,217,217,217,218,219,220,220,221,222,223,224,224,224,225,226,227,228,228,229,230,231,231,231,232,233,234,235,235,236,236,237,238,239,239,240,241,242,242,242,243,244,245,246,246,246,247,248,249,250,250,250,251,252,253,253,254,255, -+0,3,6,8,11,13,15,20,21,23,25,27,29,32,34,35,37,39,40,42,45,46,48,49,51,52,53,55,57,58,60,61,62,64,65,66,69,70,71,72,73,75,76,77,78,81,82,83,83,84,86,87,88,89,90,92,93,94,95,96,98,99,100,101,101,103,104,106,107,108,109,110,111,112,113,113,115,115,116,117,118,120,121,122,123,124,125,126,127,128,129,129,130,131,132,133,134,135,136,137,138,138,141,141,142,143,144,145,145,146,147,148,149,150,151,151,152,153,154,155,156,157,157,158,159,160,161,161,163,163,164,165,166,167,168,168,169,170,171,172,173,173,174,175,176,176,177,178,179,180,180,181,182,183,183,184,185,186,186,187,188,189,189,190,191,192,193,193,194,195,196,196,197,198,199,199,200,201,201,202,203,204,204,205,206,207,208,208,209,209,210,211,211,212,213,214,215,215,216,217,218,218,219,219,220,221,222,222,223,224,225,225,225,226,227,228,229,229,230,231,231,232,233,233,234,235,235,236,236,237,238,239,239,240,241,242,242,243,243,244,245,246,246,246,247,248,249,250,250,250,251,252,253,253,254,255, -+0,3,6,9,11,13,16,20,22,24,25,27,29,31,34,36,38,39,41,42,44,47,48,49,51,52,53,55,56,59,60,62,63,64,65,67,68,70,72,73,74,75,76,77,79,79,82,83,84,85,86,87,89,90,91,92,93,95,96,97,98,99,100,101,102,103,104,105,106,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,125,125,126,127,128,129,130,131,132,133,134,135,135,136,138,138,139,140,141,142,143,144,144,145,146,147,148,149,150,151,152,153,154,155,156,157,157,158,159,160,161,161,162,163,164,165,166,166,167,168,169,170,170,171,172,173,174,174,175,175,176,177,178,179,179,180,181,182,183,184,184,185,186,187,187,188,189,190,191,191,192,193,194,195,196,196,196,197,198,199,199,200,201,202,203,203,204,205,206,206,207,208,208,209,210,210,211,212,213,214,214,215,216,217,217,217,218,219,220,220,221,222,223,223,224,224,225,226,226,227,228,229,230,230,230,231,232,233,234,234,235,236,236,237,237,238,239,240,240,241,241,242,243,243,244,245,246,246,246,247,248,249,250,250,250,251,252,253,253,254,255, -+0,3,6,9,11,14,16,20,22,24,26,28,29,31,35,36,38,39,41,43,44,47,48,50,51,53,54,56,57,59,61,62,63,65,66,67,68,71,72,74,74,76,77,78,79,80,83,84,85,86,87,88,89,90,91,92,93,96,97,98,99,100,101,102,103,104,105,106,107,109,110,111,112,113,114,115,116,117,118,119,120,121,122,122,123,125,126,127,128,129,130,131,132,133,133,134,136,136,137,138,139,140,141,141,142,143,144,145,146,147,148,148,150,151,152,153,154,154,155,156,157,158,159,160,161,161,162,163,164,165,166,166,167,168,169,169,170,171,172,173,173,174,175,176,176,177,178,179,179,180,181,182,183,183,184,185,186,186,187,188,189,189,190,191,192,193,193,194,195,196,197,197,197,198,199,200,201,201,202,203,204,204,205,206,207,208,208,208,209,210,211,211,212,213,214,215,215,216,217,217,218,218,219,220,221,222,222,223,224,225,225,225,226,227,228,228,229,230,231,231,231,232,233,234,234,235,236,236,237,237,238,239,240,240,241,241,242,243,244,244,245,246,246,247,247,248,249,250,250,250,251,252,253,254,254,255, -+0,3,6,9,11,14,16,20,22,24,26,28,30,31,35,36,38,40,41,43,45,47,49,50,52,53,54,56,57,60,61,62,64,65,66,68,69,71,72,74,75,76,77,78,80,81,83,84,85,86,88,88,90,91,92,93,94,96,97,98,99,100,101,103,103,104,106,106,107,109,110,112,112,113,114,115,116,117,118,119,120,121,122,123,124,126,127,128,128,129,131,131,132,133,134,135,136,137,137,138,139,140,141,142,143,144,144,146,146,147,148,149,151,152,152,154,154,155,156,157,158,158,159,160,161,162,163,164,164,165,166,167,168,168,169,170,171,172,172,173,174,175,176,177,177,177,178,179,180,181,181,182,183,184,185,185,186,187,188,188,189,190,191,192,192,193,194,195,196,196,197,197,198,199,200,200,201,202,202,203,204,205,206,206,207,208,209,209,210,210,211,212,213,213,214,215,216,216,217,217,218,219,219,220,221,222,223,223,224,225,225,226,226,227,228,228,229,230,231,231,232,232,233,234,235,235,236,236,237,238,238,239,240,241,241,241,242,243,244,244,245,246,246,247,247,248,249,250,250,250,251,252,253,254,254,255, -+0,3,6,9,11,14,16,20,23,24,26,28,30,32,35,37,39,40,42,43,45,46,49,51,52,54,55,56,58,60,62,63,65,66,67,68,69,70,73,74,76,77,78,79,80,81,82,84,86,87,88,89,90,91,93,93,95,96,97,99,100,101,102,103,104,105,106,107,108,109,110,111,113,114,115,116,117,118,119,120,121,122,122,123,124,126,126,127,128,130,131,132,133,134,135,135,136,137,138,139,140,141,142,143,143,145,145,146,147,148,149,150,150,151,152,153,154,155,156,156,157,158,159,160,161,161,162,163,164,165,166,167,167,168,169,170,171,171,172,173,174,175,175,176,177,178,179,180,180,181,182,183,183,184,185,186,187,187,188,189,190,191,191,192,193,194,194,194,195,196,197,198,198,199,200,201,202,202,203,204,205,205,206,207,207,208,208,209,210,211,212,212,213,214,215,215,216,216,217,217,218,219,220,220,221,222,223,224,224,224,225,226,227,227,228,229,229,230,230,231,232,233,233,234,235,236,236,236,237,238,239,239,240,241,241,242,242,243,244,245,245,246,246,247,248,248,249,250,251,251,251,252,253,254,254,255, -+0,3,6,9,12,14,16,21,23,25,27,28,30,32,35,37,39,40,42,43,45,47,50,51,52,54,55,57,58,61,62,63,65,66,67,69,70,71,74,75,76,77,78,79,81,82,83,84,86,87,89,90,91,92,93,94,95,96,97,99,100,101,102,103,105,106,107,108,109,110,111,112,113,115,116,117,118,119,119,120,121,122,123,124,125,126,127,128,129,131,132,132,133,134,135,136,137,138,139,140,141,142,142,143,144,145,146,147,147,149,149,150,151,152,153,154,154,155,156,157,158,159,159,160,162,162,163,164,164,165,166,167,168,169,169,170,171,172,173,173,174,175,176,177,178,178,179,180,181,182,182,183,184,185,185,186,187,188,189,190,190,191,192,192,193,194,195,195,196,197,197,198,199,200,200,201,202,203,203,204,205,206,206,207,207,208,209,210,210,211,212,213,213,214,215,216,216,216,217,218,219,219,220,221,222,222,223,224,224,225,225,226,227,228,228,229,230,231,231,231,232,233,234,234,235,236,237,237,237,238,239,239,240,241,241,242,242,243,244,245,245,246,246,247,248,248,249,250,251,251,251,252,253,254,254,255, -+0,3,6,9,12,14,16,21,23,25,27,29,30,32,36,37,39,41,42,44,46,47,50,51,53,54,56,57,58,60,62,64,65,66,68,69,70,72,73,75,76,78,79,80,81,83,83,85,86,88,89,90,91,92,94,94,96,97,98,99,100,102,103,104,105,106,107,108,109,110,111,112,113,114,115,117,118,119,120,121,122,123,124,125,126,127,128,128,129,130,131,132,133,134,136,137,138,139,139,140,141,142,143,144,144,146,146,147,148,149,150,151,151,152,154,154,155,156,157,157,158,159,160,161,162,163,164,164,165,166,167,168,169,169,170,171,172,172,173,174,175,176,176,177,178,179,180,181,181,182,183,184,184,185,186,187,188,188,189,190,191,191,191,192,193,194,195,195,196,197,198,199,199,200,201,202,202,203,204,205,205,205,206,207,208,208,209,210,211,211,212,213,214,214,215,215,216,217,217,218,219,220,220,221,222,223,223,223,224,225,226,226,227,228,228,229,230,230,231,232,232,233,234,235,235,236,236,237,237,238,239,240,240,241,241,242,243,243,244,245,246,246,246,247,248,248,249,250,251,251,251,252,253,254,254,255, -+0,3,6,9,12,14,17,21,23,25,27,29,31,33,36,38,39,41,43,44,46,48,50,52,53,55,56,57,59,60,63,64,65,67,68,69,71,72,73,76,77,78,79,80,82,83,84,85,86,88,89,91,92,93,94,95,96,97,98,99,100,102,104,105,105,107,108,109,110,111,112,113,114,115,116,118,119,119,120,121,122,123,124,126,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,142,144,144,145,146,147,148,149,150,150,151,152,153,154,155,156,157,157,158,159,160,160,161,162,163,164,164,165,166,167,168,169,170,170,171,172,173,174,174,175,176,177,178,178,179,180,181,182,183,183,184,185,186,186,187,188,189,190,190,191,192,192,193,194,194,195,196,196,197,198,199,200,200,201,202,203,204,204,205,206,206,206,207,208,209,209,210,211,212,213,213,214,215,215,215,216,217,218,218,219,220,221,221,222,223,224,224,224,225,226,227,227,228,229,230,230,230,231,232,232,233,234,235,235,236,236,237,238,238,239,240,240,241,241,242,243,243,244,245,246,246,246,247,248,248,249,250,251,251,251,252,253,254,254,255, -+0,3,6,9,12,14,17,21,23,25,27,29,31,33,36,38,40,41,43,45,46,48,51,52,54,55,57,58,59,61,63,65,66,67,69,70,71,73,74,76,78,79,80,81,82,83,84,86,87,89,90,91,92,93,94,96,97,98,99,100,101,103,104,105,106,107,108,109,110,111,112,113,114,115,116,118,119,120,121,122,123,124,125,126,127,128,129,130,131,131,132,133,134,135,137,138,139,140,140,141,142,143,144,145,145,147,148,148,149,150,151,152,153,153,154,156,156,157,158,159,160,160,161,162,163,164,165,165,166,167,168,169,170,170,171,172,173,173,174,175,176,177,177,178,179,180,181,181,182,183,184,185,185,186,187,188,188,189,190,191,192,192,192,193,194,194,195,196,197,198,198,199,200,201,201,202,203,204,205,205,206,206,207,208,208,209,210,211,211,212,213,214,214,215,216,216,216,217,218,219,220,220,221,222,222,223,224,224,225,225,226,227,228,228,229,230,230,230,231,232,233,233,234,235,236,236,236,237,238,239,239,240,241,241,241,242,243,243,244,245,246,246,246,247,248,249,249,250,251,251,251,252,253,254,254,255, -+0,3,6,9,12,14,17,21,23,26,27,29,31,33,35,38,40,41,43,45,46,48,50,53,54,55,57,58,60,61,62,65,66,68,69,70,71,73,74,75,76,79,80,81,82,84,85,86,87,88,89,92,93,94,95,96,97,98,99,100,101,102,103,105,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,125,125,126,127,128,129,130,131,132,133,134,135,136,136,138,138,139,140,141,142,144,144,145,146,147,148,149,150,151,151,153,153,154,155,156,156,158,158,159,160,161,161,162,163,164,165,166,167,167,168,169,170,171,171,172,173,174,175,176,176,177,178,179,180,180,181,182,183,183,184,185,186,187,187,187,188,189,190,190,191,192,193,194,194,195,196,197,197,198,199,200,200,201,202,202,203,204,204,205,206,206,207,208,209,209,210,211,212,212,213,214,215,215,215,216,217,218,218,219,220,220,221,222,223,223,223,224,225,226,226,227,228,228,229,229,230,231,231,232,233,234,234,235,236,236,236,237,238,239,239,240,241,241,242,242,243,244,244,245,246,246,246,247,248,249,249,250,251,251,251,252,253,254,254,255, -+0,3,7,9,12,15,17,21,24,26,28,30,31,33,35,39,40,42,44,45,47,48,50,53,54,56,57,59,60,61,63,66,67,68,69,71,72,73,74,76,77,79,81,82,83,84,85,86,88,89,90,92,93,94,95,96,98,99,100,101,102,103,104,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,122,123,124,125,126,127,128,129,130,131,131,132,133,134,135,136,137,138,139,139,141,141,142,144,145,146,147,147,148,149,150,151,152,153,154,155,155,156,157,158,159,160,161,161,162,163,164,164,165,166,167,168,169,170,170,171,172,173,174,174,175,176,177,178,178,179,180,181,181,182,183,184,185,185,186,187,188,188,188,189,190,191,191,192,193,194,195,195,196,197,198,198,199,200,201,201,202,203,204,205,205,205,206,207,207,208,209,210,210,211,212,213,213,214,215,215,216,216,217,218,219,219,220,221,221,222,223,223,224,224,225,226,227,227,228,229,229,229,230,231,232,232,233,234,234,235,236,236,237,237,238,239,239,240,241,241,242,242,243,244,244,245,246,246,247,247,248,249,249,250,251,251,251,252,253,254,254,255, -+0,3,7,10,12,15,17,19,24,26,28,30,32,34,35,39,41,42,44,45,47,48,50,53,55,56,58,59,60,62,63,64,67,69,70,71,72,73,75,76,77,79,81,82,83,84,86,87,88,89,90,91,93,95,96,97,98,99,100,101,103,103,105,105,106,108,110,111,112,113,114,115,116,117,118,119,120,121,121,122,124,124,126,127,128,129,130,131,132,133,134,135,136,137,137,138,139,140,141,142,143,144,145,145,147,147,148,149,150,151,152,153,154,155,156,157,157,158,159,160,161,162,163,163,164,165,166,167,168,168,169,170,171,172,173,173,174,175,176,176,177,178,179,180,180,181,181,182,183,184,184,185,186,187,187,188,189,190,191,191,192,193,193,194,195,196,197,197,198,199,200,200,201,202,202,203,203,204,205,206,206,207,208,209,209,210,211,211,212,213,213,214,214,215,216,217,217,218,219,220,220,221,222,222,222,223,224,225,225,226,227,228,228,229,229,230,230,231,232,232,233,234,235,235,235,236,237,237,238,239,240,240,241,241,242,242,243,244,245,245,246,246,247,247,248,249,249,250,250,251,252,252,253,254,254,255, -+0,3,7,10,12,15,17,20,24,26,28,30,32,34,35,39,41,42,44,46,47,49,50,53,55,56,58,59,61,62,63,65,67,69,70,72,73,74,76,77,78,79,81,83,84,85,86,87,88,90,91,92,93,95,96,97,98,100,101,102,103,104,105,106,107,108,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,127,128,129,130,131,132,132,134,134,135,136,137,138,139,140,141,141,142,143,144,145,146,147,148,149,149,150,151,153,153,154,156,156,157,158,159,160,160,162,162,163,164,164,166,166,167,168,169,169,170,171,172,173,174,174,175,176,177,178,178,179,180,181,182,182,182,183,184,185,185,186,187,188,189,189,190,191,191,192,193,194,195,196,196,197,198,198,199,200,201,202,202,202,203,204,204,205,206,207,208,208,209,209,210,211,212,212,213,213,214,215,215,216,217,218,218,219,220,221,221,222,222,223,223,224,225,226,226,227,228,228,229,229,230,231,231,232,233,233,234,235,236,236,236,237,238,238,239,240,240,241,241,242,242,243,244,245,245,246,246,247,247,248,249,249,250,250,251,252,252,253,254,254,255, -+0,4,7,10,12,15,17,20,24,26,28,30,32,34,36,39,41,43,44,46,47,49,51,54,55,57,58,59,61,62,64,65,68,69,71,72,73,74,75,77,78,79,82,83,84,85,87,87,89,90,91,92,93,96,97,98,99,100,101,102,103,104,105,106,107,109,111,112,112,114,115,115,117,118,119,120,121,122,123,124,125,125,127,128,129,130,131,132,133,134,135,136,137,137,138,139,140,141,142,143,144,144,146,147,147,148,149,150,151,151,153,154,155,156,157,158,158,159,160,161,162,162,163,164,165,166,167,168,168,169,170,171,171,172,173,174,175,176,176,177,178,179,180,180,181,182,182,183,183,184,185,186,187,187,188,189,190,191,191,192,193,194,194,195,196,197,197,198,199,199,200,201,202,202,202,203,204,205,205,206,207,208,209,209,210,211,211,212,213,214,214,214,215,216,217,217,218,219,219,220,221,221,222,222,223,224,224,225,226,227,227,228,228,229,229,230,231,231,232,233,234,234,235,236,236,236,237,238,238,239,240,241,241,241,242,243,243,244,245,245,246,246,247,247,248,249,250,250,250,251,252,252,253,254,254,255, -+0,4,7,10,12,15,18,20,24,26,28,30,32,34,36,38,41,43,45,46,48,50,51,53,56,57,59,60,61,63,64,65,67,69,71,72,73,75,76,77,79,80,81,83,85,86,87,88,89,90,92,93,94,95,96,98,100,100,102,103,104,105,106,107,108,109,110,111,112,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,129,131,133,133,134,135,136,137,138,139,140,140,142,143,143,144,145,146,147,148,149,149,150,151,152,153,154,155,155,156,157,158,159,160,161,161,162,163,164,165,165,166,167,168,169,169,170,171,172,173,174,175,175,176,177,178,178,179,180,181,182,182,183,184,184,185,186,187,188,189,189,190,191,192,192,193,194,195,195,196,197,198,198,199,199,200,201,201,202,203,203,204,205,206,207,207,208,209,209,210,211,212,212,212,213,214,215,215,216,217,217,218,219,220,220,221,221,222,222,223,224,224,225,226,227,227,228,229,229,229,230,231,232,232,233,234,234,235,235,236,236,237,238,239,239,240,241,241,241,242,243,243,244,245,245,245,246,247,248,248,249,250,250,250,251,252,252,253,254,254,255, -+0,4,7,10,13,15,18,20,24,26,29,31,32,34,36,38,41,43,45,46,48,50,51,53,56,57,59,60,62,63,64,66,67,70,71,72,74,75,76,78,79,80,81,84,85,86,87,88,89,91,92,93,94,95,97,98,100,101,102,103,104,105,106,107,108,109,110,112,112,115,116,116,117,118,119,120,121,123,123,124,125,126,127,128,129,130,131,133,134,134,136,136,138,138,139,140,141,142,143,144,145,146,146,147,148,149,150,151,152,153,153,154,155,156,157,158,158,159,160,161,162,163,164,164,165,166,167,167,168,169,170,171,172,172,173,174,175,176,177,177,178,179,179,180,181,182,183,184,184,185,186,187,187,188,189,190,190,191,192,193,193,194,195,196,196,197,198,199,200,200,200,201,202,202,203,204,205,205,206,207,207,208,209,210,210,211,212,212,213,213,214,215,216,216,217,218,218,219,220,220,221,221,222,223,223,224,225,225,226,227,228,228,229,229,230,230,231,232,232,233,234,235,235,235,236,237,237,238,239,239,240,241,241,241,242,243,243,244,245,246,246,246,247,248,248,249,250,250,250,251,252,252,253,254,254,255, -+0,4,7,10,13,15,18,20,25,27,29,31,33,34,36,38,42,44,45,47,48,50,51,53,55,58,59,60,62,63,65,66,68,69,71,73,74,75,77,78,79,80,82,83,84,87,88,89,90,91,92,93,95,96,97,98,99,101,102,104,105,106,107,108,109,110,111,112,113,114,115,116,118,119,120,121,122,123,124,125,125,127,128,129,129,131,131,132,133,134,135,136,138,139,140,141,141,142,143,144,145,146,147,148,148,149,150,151,152,153,154,155,155,156,157,158,159,160,161,161,162,163,164,165,166,167,167,168,169,170,171,171,172,173,174,174,175,176,177,178,178,179,180,181,182,182,183,184,185,185,186,187,188,188,189,190,191,191,192,193,194,195,195,196,196,197,197,198,199,200,200,201,202,203,204,204,205,206,206,207,208,208,209,210,210,211,211,212,213,214,214,215,216,216,217,218,219,219,220,220,221,221,222,223,224,224,225,226,226,227,228,228,228,229,230,230,231,232,233,233,234,235,235,235,236,237,237,238,239,239,240,240,241,242,242,243,244,244,245,246,246,246,247,248,248,249,250,250,250,251,252,252,253,254,254,255, -+0,4,7,10,13,15,18,20,25,27,29,31,33,35,37,38,42,44,45,47,49,50,52,54,55,58,59,61,62,64,65,66,68,69,72,73,74,75,77,78,80,81,82,83,84,87,88,89,90,92,93,94,95,96,97,98,99,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,118,119,120,121,122,123,124,126,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,145,146,147,148,149,150,151,152,153,153,154,155,156,157,157,158,159,160,161,162,162,163,164,165,166,167,168,168,169,170,171,171,172,173,174,175,175,176,177,178,179,179,180,181,182,183,183,184,185,186,186,187,188,189,189,190,191,192,193,193,194,195,196,196,196,197,198,199,199,200,201,202,202,203,204,204,205,206,207,207,208,209,209,210,210,211,212,212,213,214,214,215,216,217,217,218,219,220,220,220,221,222,222,223,224,224,225,226,226,227,228,228,229,229,230,231,231,232,233,233,234,235,235,235,236,237,238,238,239,240,240,240,241,242,242,243,244,244,245,246,246,246,247,248,248,249,250,250,250,251,252,252,253,254,254,255, -+0,4,7,10,13,16,18,20,25,27,29,31,33,35,37,39,42,44,46,47,49,50,52,53,55,58,60,61,63,64,65,67,68,69,72,73,75,76,77,79,80,81,82,84,85,87,88,89,91,92,93,94,95,96,98,99,100,102,103,104,105,106,107,109,109,110,112,113,114,115,116,117,119,120,121,122,123,124,125,126,127,128,128,129,130,131,132,133,134,135,136,137,139,140,141,141,142,144,144,145,146,147,148,149,149,150,151,152,153,154,155,155,156,157,158,159,160,161,161,162,163,164,164,165,166,167,168,169,169,170,171,172,173,173,174,175,176,177,178,178,179,180,180,181,182,183,184,185,185,186,187,188,188,189,190,191,191,192,193,194,194,195,196,197,197,197,198,199,199,200,201,202,202,203,204,205,205,206,207,208,208,209,210,210,210,211,212,213,213,214,215,216,216,217,218,218,219,220,220,220,221,222,223,223,224,225,225,226,227,227,228,228,229,229,230,231,232,232,233,234,234,235,235,236,236,237,238,238,239,240,240,240,241,242,242,243,244,244,245,246,246,246,247,248,248,249,250,250,250,251,252,252,253,254,254,255, -+0,4,7,10,13,16,18,20,25,27,29,31,33,35,37,39,41,44,46,47,49,51,52,54,55,57,60,61,63,64,66,67,68,70,71,72,75,76,78,79,80,81,83,84,85,86,88,90,91,92,93,95,96,97,98,99,100,101,102,104,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,122,123,124,125,126,127,128,129,130,131,132,133,134,135,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,151,152,153,154,155,156,157,158,158,159,160,161,162,163,163,164,165,166,167,167,168,169,170,171,171,172,173,174,175,175,176,177,178,179,179,180,181,182,182,183,184,185,186,186,187,188,189,189,190,191,192,192,192,193,194,195,196,196,197,198,198,199,200,201,201,202,203,204,204,205,206,207,207,208,209,209,209,210,211,211,212,213,214,214,215,216,216,217,218,219,219,219,220,221,221,222,223,223,224,225,226,226,227,227,227,228,229,230,230,231,232,232,233,234,234,234,235,236,236,237,238,238,239,240,240,241,241,242,242,243,244,244,245,245,246,246,247,248,248,249,250,250,250,251,252,252,253,254,254,255, -+0,4,7,10,13,16,18,21,25,27,29,31,33,35,37,39,41,44,46,47,49,51,53,54,56,57,60,62,63,65,66,67,69,70,71,73,75,77,78,79,81,82,83,84,85,87,88,90,91,93,94,95,96,97,98,99,100,102,102,104,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,123,123,125,125,126,127,128,129,130,131,132,133,134,135,136,137,138,138,140,141,141,142,143,144,146,146,147,148,149,150,151,152,153,154,154,155,156,157,158,159,160,160,161,162,163,164,164,165,166,167,168,169,170,170,171,172,173,173,174,175,176,177,177,178,179,180,181,181,182,183,184,184,185,186,187,188,188,189,190,190,191,192,192,193,193,194,195,196,196,197,198,199,200,200,201,202,202,203,204,204,205,206,207,207,208,209,209,210,210,211,212,212,213,214,214,215,216,217,217,218,219,219,219,220,221,222,222,223,224,224,225,226,226,227,227,228,228,229,230,231,231,232,233,233,234,234,235,235,236,236,237,238,239,239,240,240,241,241,242,243,243,244,245,245,245,246,247,247,248,248,249,250,250,250,251,252,252,253,254,254,255, -+0,4,7,10,13,16,18,21,23,27,30,32,34,36,37,39,41,45,46,48,50,51,53,54,56,57,59,62,63,65,66,67,69,70,72,73,74,77,78,79,81,82,83,85,86,87,88,89,92,93,94,95,97,97,99,100,101,102,103,104,105,106,108,109,110,112,113,114,115,116,117,118,119,120,121,122,123,124,125,127,128,129,129,130,131,132,133,134,135,136,137,138,139,140,141,142,142,143,144,146,146,147,148,149,150,151,151,152,153,155,156,156,158,158,159,160,161,162,162,163,164,165,166,166,167,168,169,170,171,171,172,173,174,175,175,176,177,178,178,179,180,181,182,182,183,184,185,185,186,186,187,188,188,189,190,191,191,192,193,194,195,195,196,197,197,198,199,200,200,201,202,203,203,204,205,205,206,206,207,208,208,209,210,210,211,212,213,213,214,215,215,216,217,218,218,218,219,220,220,221,222,222,223,224,224,225,226,227,227,227,228,229,229,230,231,231,232,233,233,233,234,235,235,236,237,237,238,239,239,239,240,241,241,242,243,243,244,245,245,245,246,247,247,248,249,249,250,250,251,251,252,252,253,254,254,255, -+0,4,7,10,13,16,18,21,23,28,30,32,34,36,38,39,41,45,47,48,50,51,53,55,56,58,59,62,64,65,66,68,69,71,72,73,75,77,79,80,81,82,84,85,86,87,88,90,92,93,94,96,97,98,99,100,101,102,104,105,106,107,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,127,128,129,130,131,132,133,133,135,136,136,137,138,139,140,141,142,143,144,144,146,146,147,148,149,150,151,152,153,153,155,156,157,158,159,160,160,161,162,162,164,164,165,166,167,168,168,169,170,171,172,172,173,174,175,176,176,177,178,179,180,180,181,182,183,183,184,185,185,186,186,187,188,189,190,190,191,192,193,193,194,195,196,196,197,198,198,199,200,201,201,202,203,204,204,205,205,207,207,207,208,209,209,210,211,211,212,213,213,214,215,216,216,217,218,218,218,219,220,220,221,222,223,223,224,225,225,226,227,227,227,228,229,229,230,231,231,232,233,233,233,234,235,235,236,237,237,238,239,239,239,240,241,241,242,243,243,244,245,245,245,246,247,247,248,249,249,250,250,251,251,252,252,253,254,254,255, -+0,4,7,10,13,16,19,21,23,28,30,32,34,36,38,40,41,45,47,48,50,52,53,55,56,58,60,62,64,65,67,68,69,71,72,73,75,78,79,80,81,83,84,85,86,88,89,90,92,93,95,96,97,98,99,101,102,103,104,105,106,107,109,110,111,112,113,114,115,116,117,119,119,120,121,122,123,124,125,128,128,129,130,131,132,133,134,135,136,137,137,139,140,140,141,142,143,144,145,146,147,148,149,149,150,151,152,153,154,155,156,157,158,159,160,161,162,162,163,164,164,165,166,167,168,169,169,170,171,172,173,174,174,175,176,177,178,178,179,180,181,181,182,183,184,184,185,185,186,187,187,188,189,190,191,191,192,193,194,194,195,196,196,197,198,199,199,200,201,202,202,203,204,204,205,206,207,207,207,208,209,209,210,211,212,212,213,214,214,215,216,217,217,218,218,219,219,220,221,221,222,223,223,224,225,225,226,227,227,227,228,229,230,230,231,232,232,233,234,234,234,235,236,236,237,237,238,239,240,240,240,241,241,242,243,243,244,245,245,245,246,247,247,248,249,249,250,250,251,251,252,252,253,254,254,255, -+0,4,7,10,13,16,19,21,23,28,30,32,34,36,38,40,42,43,47,49,50,52,53,55,56,58,60,63,64,66,67,68,70,71,72,74,75,76,79,80,82,83,84,85,87,88,89,90,91,92,95,96,97,98,99,101,102,103,104,105,106,107,108,109,111,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,128,129,131,132,133,134,135,136,137,138,139,140,141,141,143,144,144,145,146,147,148,149,150,150,151,152,153,154,155,156,156,157,158,159,160,161,162,162,164,164,165,166,167,167,168,169,170,171,171,172,173,174,175,175,176,177,178,178,179,180,181,182,183,183,184,185,186,186,187,188,188,189,190,191,192,192,193,194,195,195,196,197,197,198,199,200,200,201,202,203,203,203,204,205,205,206,207,208,208,209,210,210,211,212,212,213,214,215,215,216,216,217,217,218,219,219,220,221,222,222,223,224,224,225,226,226,226,227,228,228,229,230,230,231,232,232,233,233,234,234,235,236,236,237,238,238,239,240,240,240,241,242,242,243,243,244,245,245,245,246,247,247,248,249,249,250,250,251,251,252,252,253,254,254,255, -+0,4,7,11,13,16,19,21,24,28,30,32,34,36,38,40,42,43,47,49,50,52,54,55,57,58,60,63,64,66,67,68,70,71,73,74,75,77,79,81,82,83,84,86,87,88,89,90,92,93,95,96,97,99,100,101,102,103,104,105,106,108,109,110,111,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,133,134,135,135,137,137,138,139,140,141,142,143,144,145,145,146,147,148,149,150,151,151,152,153,154,155,156,157,158,158,159,160,161,162,163,163,164,165,166,167,168,168,169,170,171,172,173,173,174,175,176,176,177,178,179,180,180,181,182,183,183,184,185,186,187,187,188,189,190,190,191,192,193,193,194,195,195,196,197,198,198,199,200,201,201,202,203,204,204,204,205,206,206,207,208,208,209,210,211,211,212,213,213,214,215,215,216,216,217,217,218,219,220,220,221,222,222,223,224,224,225,226,226,226,227,228,228,229,230,230,231,232,232,233,233,234,234,235,236,236,237,238,238,239,240,240,240,241,242,242,243,244,244,245,245,245,246,247,247,248,249,249,250,250,251,251,252,253,253,254,254,255, -+0,4,7,11,13,16,19,21,24,28,30,32,34,36,38,40,42,44,47,49,51,52,54,56,57,58,60,61,65,66,67,69,70,72,73,74,76,77,78,80,82,84,85,86,87,88,90,91,92,93,94,96,97,99,100,101,102,103,104,106,107,108,109,110,111,112,113,114,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,139,139,141,141,142,143,144,145,146,147,147,148,149,150,151,152,153,154,155,156,156,157,158,159,160,160,161,162,163,164,165,166,166,167,168,169,169,170,171,172,173,174,174,175,176,177,178,178,179,180,181,182,182,183,184,184,185,186,187,187,188,189,190,191,191,192,193,193,194,195,196,196,197,198,199,199,199,200,201,201,202,203,204,204,205,206,207,207,208,209,209,210,211,211,212,213,214,214,214,215,216,216,217,218,218,219,220,220,221,222,223,223,224,224,224,225,226,227,227,228,228,229,230,230,231,232,232,233,233,234,235,235,236,236,237,238,238,239,239,240,240,241,242,242,243,244,244,245,245,246,246,247,247,248,249,249,250,250,251,251,252,253,253,254,254,255, -+0,4,7,11,14,16,19,21,24,28,30,32,34,36,38,40,42,44,47,49,51,52,54,56,57,59,60,62,65,66,68,69,70,72,73,74,76,77,79,80,82,84,85,86,88,89,90,91,92,93,95,96,97,99,100,102,103,103,105,106,107,108,109,110,111,112,113,115,117,118,119,120,121,122,123,124,125,125,127,128,129,130,130,132,132,133,134,135,136,137,139,140,141,142,143,143,144,145,146,147,148,149,150,151,152,152,153,154,155,156,157,157,158,159,160,161,162,162,163,164,165,165,166,167,168,169,170,171,171,172,173,174,175,175,176,177,178,179,179,180,181,182,182,183,184,185,185,186,187,188,188,189,190,191,191,192,193,194,194,195,196,197,197,198,199,199,199,200,201,202,202,203,204,205,205,206,207,207,208,209,210,210,211,212,212,213,214,214,214,215,216,217,217,218,219,219,220,221,221,222,223,223,224,224,225,225,226,227,227,228,229,229,230,231,231,232,232,233,233,234,235,235,236,237,237,238,239,239,239,240,240,241,242,242,243,244,244,245,245,246,246,247,247,248,249,249,250,250,251,251,252,253,253,254,254,255, -+0,4,7,11,14,16,19,22,24,28,31,33,35,37,38,40,42,44,48,49,51,53,54,56,57,59,60,62,65,66,68,69,71,72,73,75,76,77,79,80,83,84,85,86,88,89,90,91,93,94,95,96,97,100,101,102,103,104,105,106,107,108,110,111,112,113,114,115,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,133,134,136,136,137,139,140,141,142,143,144,145,145,146,147,148,149,150,151,152,153,153,154,155,156,157,158,159,159,160,161,162,163,164,164,165,166,167,168,168,169,170,171,172,173,173,174,175,176,176,177,178,179,179,180,181,182,183,183,184,185,186,186,187,188,189,190,190,191,192,192,193,194,195,196,196,197,198,198,199,200,200,201,201,202,203,203,204,205,205,206,207,208,208,209,210,210,211,212,212,213,214,215,215,215,216,217,217,218,219,219,220,221,221,222,223,223,224,224,225,225,226,227,227,228,229,229,230,231,231,232,232,233,233,234,235,235,236,237,237,238,239,239,239,240,241,241,242,242,243,244,244,245,245,246,246,247,248,248,249,249,250,250,251,251,252,253,253,254,254,255, -+0,4,8,11,14,16,19,22,24,28,31,33,35,37,39,41,42,44,46,49,51,53,54,56,57,59,61,62,64,67,68,70,71,72,74,75,76,78,79,80,82,84,85,87,88,89,90,92,93,94,95,96,97,99,100,102,103,104,105,106,108,109,110,111,112,113,114,115,116,117,118,119,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,137,138,139,140,141,142,143,144,146,146,148,148,149,150,151,152,153,154,154,155,156,157,158,159,160,161,161,162,163,164,165,165,166,167,168,169,170,170,171,172,173,174,174,175,176,177,177,178,179,180,181,181,182,183,183,184,185,186,187,187,188,189,190,190,191,192,193,193,194,195,195,195,196,197,198,199,199,200,201,201,202,203,204,204,205,206,206,207,208,208,209,210,211,211,212,212,213,213,214,215,215,216,217,218,218,219,220,220,221,222,222,223,223,224,224,225,226,226,227,228,228,229,230,230,231,232,232,232,233,233,234,235,235,236,237,237,238,239,239,239,240,241,241,242,243,243,244,244,244,245,246,246,247,248,248,249,249,250,250,251,251,252,253,253,254,254,255, -+0,4,8,11,14,17,19,22,24,29,31,33,35,37,39,41,43,44,46,50,51,53,54,56,58,59,61,62,64,67,68,70,71,72,74,75,77,78,79,81,82,84,86,87,88,89,91,92,93,94,95,97,98,99,100,102,103,104,106,107,108,109,110,111,112,113,114,115,116,117,118,119,121,122,123,125,126,126,128,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,142,143,144,146,147,148,149,150,150,151,152,153,154,155,156,156,157,158,159,160,161,162,162,163,164,165,166,167,167,168,169,170,171,171,172,173,174,175,175,176,177,178,178,179,180,181,182,182,183,184,185,185,186,187,188,188,189,190,191,191,192,193,194,194,195,195,196,196,197,198,199,199,200,201,201,202,203,204,204,205,206,207,207,208,209,209,210,211,212,212,212,213,214,214,215,216,216,217,218,218,219,220,220,221,222,222,223,223,224,224,225,226,226,227,228,228,229,230,230,231,232,232,232,233,234,234,235,236,236,237,237,238,239,239,239,240,241,241,242,243,243,244,244,244,245,246,246,247,248,248,249,249,250,250,251,251,252,253,253,254,254,255, -+0,4,8,11,14,17,19,22,24,26,31,33,35,37,39,41,43,45,46,48,52,53,55,56,58,59,61,63,64,66,67,70,71,73,74,75,77,78,79,81,82,83,84,87,88,90,91,92,93,95,96,97,98,99,100,101,102,104,106,107,108,109,110,111,112,113,114,115,117,117,119,120,121,122,123,124,126,126,128,129,129,131,131,132,134,134,135,136,137,138,139,140,141,142,143,144,145,145,146,147,148,149,150,151,152,152,153,155,156,157,158,158,159,160,161,162,162,164,164,165,166,167,168,168,169,170,171,171,172,173,174,175,176,176,177,178,179,179,180,181,182,183,183,184,185,186,186,187,188,188,189,189,190,191,192,192,193,194,195,195,196,197,197,198,199,200,200,201,202,203,203,204,205,205,206,207,207,208,209,209,209,210,211,212,212,213,214,214,215,216,216,217,218,218,219,220,220,221,221,222,222,223,224,224,225,226,226,227,228,228,229,230,230,230,231,232,232,233,234,234,235,236,236,237,238,238,238,239,239,240,241,241,242,243,243,244,244,245,245,246,246,247,248,248,249,250,250,250,251,251,252,253,253,254,254,255, -+0,4,8,11,14,17,19,22,24,27,31,33,35,37,39,41,43,45,46,48,52,53,55,56,58,60,61,63,64,66,67,70,71,73,74,76,77,78,80,81,82,84,85,87,89,90,91,92,93,95,96,97,98,99,100,102,102,104,106,107,108,109,110,111,113,114,115,116,117,118,119,120,121,122,123,124,126,127,128,129,130,131,132,133,134,135,135,136,137,138,139,140,141,142,143,144,145,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,159,160,161,162,163,163,164,165,166,167,168,169,169,170,171,172,172,173,174,175,176,177,177,178,179,180,180,181,182,183,183,184,185,186,187,187,188,188,189,190,190,191,192,192,193,194,195,195,196,197,198,198,199,200,200,201,202,203,203,204,205,205,206,207,208,208,209,210,210,210,211,212,212,213,214,215,215,216,217,217,218,219,219,220,221,221,221,222,223,223,224,225,225,226,227,227,228,229,229,230,230,230,231,232,232,233,234,234,235,236,236,237,238,238,238,239,239,240,241,241,242,243,243,244,244,245,245,246,246,247,248,248,249,250,250,250,251,251,252,253,253,254,254,255, -+0,4,8,11,14,17,19,22,24,27,31,33,35,37,39,41,43,45,47,48,52,53,55,57,58,60,61,63,65,66,67,70,72,73,74,76,77,78,80,81,82,84,85,88,89,90,91,92,94,95,96,97,98,100,101,102,103,104,106,107,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,126,127,128,129,130,131,132,133,134,135,136,137,138,138,139,140,141,142,143,144,145,146,147,148,148,149,150,151,152,153,154,155,156,157,158,159,160,160,161,162,163,164,165,165,166,167,168,169,169,170,171,172,173,174,174,175,176,177,178,178,179,180,181,181,182,183,184,184,185,186,187,187,188,188,189,190,190,191,192,193,193,194,195,196,196,197,198,199,199,200,201,201,202,203,203,204,205,206,206,207,208,208,209,210,210,210,211,212,213,213,214,215,215,216,217,217,218,219,219,220,221,221,221,222,223,223,224,225,225,226,227,227,228,229,229,230,231,231,231,232,233,233,234,234,235,236,236,237,238,238,238,239,240,240,241,241,242,243,243,244,244,245,245,246,246,247,248,248,249,250,250,250,251,251,252,253,253,254,254,255, -+0,4,8,11,14,17,20,22,24,27,31,33,35,37,39,41,43,45,47,48,52,54,55,57,58,60,61,63,65,66,68,69,72,73,75,76,77,79,80,81,83,84,85,87,88,90,91,92,94,95,96,97,99,100,101,102,103,104,105,106,108,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,131,132,133,134,135,136,137,138,139,140,141,141,142,143,144,145,146,147,148,149,150,150,151,152,153,154,155,156,157,157,158,159,160,161,162,162,163,164,165,166,167,167,168,169,170,171,171,172,173,174,175,175,176,177,178,178,179,180,181,181,182,183,184,185,185,186,187,188,188,189,190,191,191,192,193,194,194,195,196,197,197,198,199,199,200,201,201,202,203,204,204,205,206,206,206,207,208,209,209,210,211,211,212,213,213,214,215,215,216,217,217,218,219,220,220,220,221,222,222,223,223,224,225,225,226,227,227,228,229,229,229,230,231,231,232,233,233,234,235,235,236,236,237,237,238,238,239,240,240,241,242,242,243,243,244,244,245,245,246,246,247,248,248,249,250,250,250,251,251,252,253,253,254,254,255, -+0,4,8,11,14,17,20,22,24,27,31,33,35,37,39,41,43,45,47,49,52,54,55,57,58,60,62,63,65,66,68,69,72,73,75,76,78,79,80,81,83,84,85,87,88,90,92,93,94,95,96,97,99,100,101,102,103,104,106,107,108,110,111,112,113,114,115,116,117,118,120,120,122,123,123,125,126,126,128,128,129,131,132,133,134,135,136,137,138,139,140,141,142,143,144,144,145,146,147,148,149,150,151,151,152,153,154,155,156,157,158,158,159,160,161,162,163,163,164,165,166,167,168,168,169,170,171,172,172,173,174,175,176,176,177,178,179,179,180,181,182,182,183,184,185,186,186,187,188,189,189,190,191,192,192,193,194,194,195,196,197,197,198,199,200,200,201,202,202,203,204,204,205,206,207,207,207,208,209,209,210,211,211,212,213,213,214,215,216,216,217,218,218,219,220,220,220,221,222,222,223,224,224,225,226,226,227,228,228,229,229,229,230,231,231,232,233,233,234,235,235,236,237,237,237,238,238,239,240,240,241,242,242,243,243,244,244,245,245,246,247,247,248,248,249,250,250,250,251,251,252,253,253,254,254,255, -+0,4,8,11,14,17,20,22,25,27,31,33,36,38,40,42,43,45,47,49,51,54,55,57,59,60,62,63,65,66,68,69,71,74,75,76,78,79,81,82,83,84,86,87,88,89,91,93,94,95,97,98,99,100,101,102,103,105,106,107,108,109,110,111,113,114,116,116,118,119,120,121,122,123,124,125,126,126,128,129,130,131,132,133,134,134,135,138,138,139,140,141,142,143,144,145,146,147,147,148,149,150,151,152,153,153,154,155,156,157,158,159,159,160,161,162,163,164,164,165,166,167,168,169,169,170,171,172,173,173,174,175,176,177,177,178,179,180,180,181,182,183,183,184,185,186,187,187,188,189,190,190,191,192,193,193,194,195,195,196,197,197,198,199,200,200,201,202,203,203,203,204,205,205,206,207,207,208,209,210,210,211,212,212,213,214,214,215,216,216,217,218,218,218,219,220,220,221,222,222,223,224,224,225,226,226,227,228,228,228,229,230,230,231,231,232,233,233,234,235,235,236,237,237,237,238,238,239,240,240,241,242,242,243,243,243,244,245,245,246,247,247,248,248,249,250,250,250,251,251,252,253,253,254,254,255, -+0,4,8,11,14,17,20,22,25,27,31,34,36,38,40,42,43,45,47,49,51,54,56,57,59,60,62,64,65,67,68,69,71,74,75,76,78,79,81,82,83,84,86,87,88,89,91,93,94,96,97,98,99,100,101,103,104,105,106,107,108,109,110,111,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,147,148,149,150,151,152,153,154,155,155,156,157,158,159,160,160,161,162,163,164,165,165,166,167,168,169,170,170,171,172,173,174,174,175,176,177,177,178,179,180,180,181,182,183,183,184,185,186,187,187,188,189,190,190,191,192,193,193,194,195,196,196,197,198,198,199,200,201,201,202,203,203,203,204,205,205,206,207,208,208,209,210,210,211,212,212,213,214,214,215,216,216,217,218,218,218,219,220,220,221,222,222,223,224,224,225,226,226,227,228,228,228,229,230,230,231,232,232,233,233,234,235,235,236,237,237,237,238,239,239,240,240,241,242,242,243,243,243,244,245,245,246,247,247,248,248,249,250,250,250,251,251,252,253,253,254,254,255, -+0,4,8,11,14,17,20,22,25,27,31,34,36,38,40,42,44,45,47,49,51,54,56,58,59,60,62,64,65,67,68,70,71,74,75,76,78,79,81,82,83,85,86,87,89,90,91,93,95,96,97,98,99,100,102,103,104,105,106,107,108,109,111,112,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,138,139,139,140,141,142,143,144,145,146,147,148,149,149,150,151,152,153,154,155,156,156,157,158,159,160,161,161,162,163,164,165,166,166,167,168,169,170,171,171,172,173,174,175,175,176,177,177,178,179,180,181,181,182,183,184,184,185,186,187,187,188,189,190,191,191,192,193,193,194,195,196,196,197,198,198,199,200,201,201,202,203,203,203,204,205,206,206,207,208,208,209,210,210,211,212,212,213,214,214,215,216,217,217,218,218,219,219,220,221,221,222,223,223,224,224,225,226,226,227,228,228,228,229,230,230,231,232,232,233,234,234,235,235,236,237,237,237,238,239,239,240,240,241,242,242,243,244,244,244,245,245,246,247,247,248,248,249,250,250,250,251,251,252,253,253,254,254,255, -+0,4,8,11,14,17,20,22,25,27,29,34,36,38,40,42,44,46,47,49,51,52,56,57,59,61,62,64,65,67,68,70,71,73,74,77,78,80,81,82,84,85,86,87,89,90,91,92,93,96,97,98,99,101,102,103,104,105,106,107,109,110,111,112,113,114,115,116,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,142,144,145,146,147,148,149,150,150,151,152,153,154,155,156,157,157,158,159,160,161,162,163,163,164,165,166,167,168,168,169,170,171,171,172,173,174,175,175,176,177,178,178,179,180,181,182,182,183,184,184,185,186,187,188,188,189,190,191,191,192,193,193,194,195,196,196,197,198,198,199,199,200,201,201,202,203,204,204,205,206,206,207,208,209,209,210,211,211,212,213,213,214,215,215,215,216,217,217,218,219,219,220,221,221,222,223,223,224,225,225,226,227,227,227,228,228,229,230,230,231,232,232,233,234,234,235,235,235,236,237,237,238,239,239,240,241,241,242,242,243,243,244,244,245,245,246,247,247,248,248,249,249,250,250,251,251,252,253,253,254,254,255, -+0,4,8,11,14,17,20,22,25,27,29,34,36,38,40,42,44,46,48,49,51,53,56,58,59,61,62,64,65,67,68,70,71,73,74,77,78,80,81,82,84,85,86,87,89,90,91,92,94,96,97,98,99,101,102,103,104,105,106,108,109,110,111,112,113,114,115,116,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,152,153,154,155,156,157,157,158,159,160,161,162,163,163,164,165,166,167,168,168,169,170,171,172,172,173,174,175,176,176,177,178,179,179,180,181,182,182,183,184,185,185,186,187,188,189,189,190,191,191,192,193,194,194,195,196,197,197,198,198,199,199,200,201,202,202,203,204,204,205,206,207,207,208,209,209,210,211,211,212,213,213,214,215,215,215,216,217,217,218,219,219,220,221,221,222,223,223,224,225,225,226,227,227,227,228,229,229,230,230,231,232,232,233,234,234,235,236,236,236,237,237,238,239,239,240,241,241,242,242,243,243,244,244,245,245,246,247,247,248,248,249,249,250,250,251,251,252,253,253,254,254,255, -+0,4,8,11,14,17,20,22,25,27,30,34,36,38,40,42,44,46,48,49,51,53,54,58,59,61,62,64,66,67,68,70,71,73,74,76,78,80,81,83,84,85,86,88,89,90,91,93,94,95,96,97,100,101,102,103,104,105,107,108,109,110,111,112,113,114,115,116,117,118,120,120,122,124,125,126,127,128,128,130,130,132,133,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,147,148,149,150,151,152,153,154,155,156,157,158,159,159,160,161,162,163,164,164,165,166,167,168,168,169,170,171,172,173,173,174,175,176,177,177,178,179,180,180,181,182,183,183,184,185,186,186,187,188,189,189,190,190,191,192,192,193,194,194,195,196,197,197,198,199,200,200,201,202,202,203,204,205,205,206,207,207,208,209,209,210,211,211,212,213,213,213,214,215,215,216,217,218,218,219,219,220,221,221,222,223,223,224,225,225,225,226,227,227,228,229,229,230,231,231,232,232,233,234,234,235,235,236,236,237,237,238,239,239,240,241,241,242,242,242,243,244,244,245,245,246,247,247,248,248,249,249,250,250,251,251,252,253,253,254,254,255, -+0,4,8,11,14,17,20,22,25,27,30,34,36,38,40,42,44,46,48,49,51,53,55,58,59,61,63,64,66,67,69,70,72,73,74,76,79,80,81,83,84,85,86,88,89,90,91,93,94,95,96,97,100,101,102,103,104,105,107,108,109,110,111,112,113,114,115,117,118,119,120,121,123,124,125,126,127,128,129,130,131,132,133,134,135,135,136,137,138,139,140,141,142,143,144,145,146,147,148,148,149,150,151,152,153,154,155,156,157,158,159,160,160,161,162,163,164,165,165,166,167,168,169,170,170,171,172,173,173,174,175,176,177,177,178,179,180,181,181,182,183,184,184,185,186,187,187,188,189,190,190,190,191,192,193,193,194,195,195,196,197,198,198,199,200,200,201,202,202,203,204,205,205,206,207,207,208,209,209,210,211,212,212,213,213,214,214,215,216,216,217,218,218,219,220,220,221,221,222,223,224,224,225,225,225,226,227,227,228,229,229,230,231,231,232,232,233,234,234,235,235,236,236,237,237,238,239,239,240,241,241,242,242,242,243,244,244,245,245,246,247,247,248,249,249,249,250,250,251,251,252,253,253,254,254,255, -+0,4,8,11,14,17,20,23,25,27,30,34,36,38,40,42,44,46,48,49,51,53,55,58,59,61,63,64,66,67,69,70,72,73,75,76,79,80,81,83,84,85,87,88,89,90,92,93,94,95,97,98,100,101,102,104,105,106,107,108,109,110,111,113,113,114,116,117,118,119,120,121,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,138,139,140,141,142,143,144,145,146,147,148,149,149,150,151,152,153,155,155,156,157,158,159,160,161,161,162,163,164,165,166,166,167,168,169,170,170,171,172,173,174,174,175,176,177,177,178,179,180,181,181,182,183,184,184,185,186,187,187,188,189,190,190,190,191,192,193,193,194,195,196,196,197,198,198,199,200,201,201,202,203,203,204,205,205,206,207,207,208,209,210,210,211,212,212,213,213,214,214,215,216,216,217,218,218,219,220,220,221,222,222,223,224,224,225,225,225,226,227,227,228,229,229,230,231,231,232,233,233,234,234,235,235,236,236,237,238,238,239,239,240,241,241,242,243,243,243,244,244,245,246,246,247,247,248,249,249,249,250,250,251,252,252,253,253,254,254,255, -+0,4,8,11,14,17,20,23,25,27,30,32,36,38,40,42,44,46,48,50,51,53,55,56,60,61,63,64,66,67,69,70,72,73,75,76,77,79,82,83,84,85,87,88,89,91,92,93,94,96,97,98,99,100,101,104,105,106,107,108,109,110,111,112,114,115,116,117,118,119,120,121,122,123,124,125,126,128,129,130,131,132,133,134,135,136,137,138,139,140,141,141,142,143,144,145,146,147,148,149,150,150,151,152,153,154,155,155,156,157,158,159,160,161,162,162,163,164,165,166,167,167,168,169,170,170,171,172,173,174,175,175,176,177,178,178,179,180,181,182,182,183,184,185,185,186,187,188,188,189,190,190,191,192,193,193,194,195,196,196,197,198,198,199,200,201,201,202,203,203,204,205,206,206,207,208,208,209,210,210,210,211,212,212,213,214,214,215,216,216,217,218,218,219,220,220,221,222,222,223,224,224,224,225,226,226,227,228,228,229,229,230,231,231,232,233,233,234,234,234,235,236,236,237,238,238,239,239,240,241,241,242,242,243,243,244,244,245,246,246,247,247,248,249,249,249,250,250,251,252,252,253,253,254,254,255, -+0,4,8,11,14,17,20,23,25,28,30,32,36,38,40,42,44,46,48,50,51,53,55,56,60,61,63,65,66,67,69,70,72,73,75,76,77,79,82,83,84,86,87,88,89,91,92,93,94,96,97,98,99,100,101,104,105,106,107,108,109,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,142,143,144,145,146,147,148,149,150,151,151,152,153,154,155,156,157,157,158,159,160,161,162,162,163,164,165,166,166,167,168,169,170,171,172,172,173,174,175,175,176,177,178,179,179,180,181,182,182,183,184,185,185,186,187,188,188,189,190,191,191,192,193,194,194,195,196,197,197,198,199,199,200,201,201,202,203,203,204,205,206,206,207,208,208,209,210,210,210,211,212,212,213,214,215,215,216,217,217,218,218,219,220,220,221,222,222,223,224,224,224,225,226,226,227,228,228,229,229,230,231,231,232,233,233,234,234,235,235,236,236,237,238,238,239,239,240,241,241,242,242,243,243,244,244,245,246,246,247,247,248,249,249,249,250,250,251,252,252,253,253,254,254,255, -+0,4,8,11,15,17,20,23,25,28,30,32,36,39,41,42,44,46,48,50,52,53,55,57,58,61,63,65,66,68,69,71,72,73,75,76,78,79,80,82,84,86,87,88,89,91,92,93,95,96,97,98,99,100,102,103,104,105,107,108,109,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,134,135,136,137,138,139,140,141,142,143,143,144,145,146,147,148,149,150,151,152,152,153,154,155,156,157,157,158,159,160,161,162,163,163,164,165,166,167,167,168,169,170,171,172,172,173,174,175,176,176,177,178,179,179,180,181,182,183,183,184,185,186,186,187,188,189,189,190,191,191,192,193,194,194,195,196,197,197,198,199,199,200,201,201,202,203,204,204,205,206,206,206,207,208,208,209,210,211,211,212,212,213,214,215,215,216,217,217,218,218,219,220,220,221,222,222,223,223,224,224,225,226,226,227,228,228,229,229,230,231,231,232,233,233,233,234,235,235,236,236,237,238,238,239,240,240,241,241,241,242,243,243,244,244,245,246,246,247,247,248,249,249,249,250,250,251,252,252,253,253,254,254,255, -+0,4,8,11,15,17,20,23,25,28,30,32,36,39,41,42,45,46,48,50,52,53,55,57,58,62,63,65,66,68,69,71,72,74,75,76,78,79,80,82,84,86,87,88,89,91,92,93,95,96,97,98,99,100,102,103,104,105,107,108,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,127,127,128,129,130,131,132,134,135,136,137,138,139,140,141,142,143,144,145,145,146,147,148,149,150,151,152,153,153,154,155,156,157,158,159,159,160,161,162,163,164,164,165,166,167,168,169,169,170,171,172,172,173,174,175,176,176,177,178,179,180,180,181,182,183,183,184,185,186,186,187,188,189,189,190,191,191,192,193,194,194,195,196,197,197,198,199,199,200,201,202,202,203,204,204,205,206,206,206,207,208,209,209,210,211,211,212,213,213,214,215,215,216,217,217,218,219,219,220,221,221,222,222,223,223,224,224,225,226,226,227,228,228,229,230,230,231,231,232,233,233,233,234,235,235,236,236,237,238,238,239,240,240,241,241,241,242,243,243,244,244,245,246,246,247,247,248,249,249,249,250,250,251,252,252,253,253,254,254,255, -+0,4,8,12,15,18,20,23,25,28,30,32,37,39,41,43,45,46,48,50,52,53,55,57,58,62,63,65,66,68,69,71,72,74,75,77,78,79,81,82,84,86,87,89,90,91,92,93,95,96,97,98,99,101,102,103,104,105,108,109,110,111,112,113,114,115,116,117,118,119,120,121,123,124,125,126,126,128,129,129,130,132,132,134,135,136,137,138,139,140,141,142,143,144,145,145,147,147,148,149,150,151,152,153,154,154,155,156,157,158,159,159,160,161,162,163,164,165,165,166,167,168,169,169,170,171,172,173,173,174,175,176,177,177,178,179,180,180,181,182,183,183,184,185,186,186,187,188,189,189,190,191,192,192,193,194,195,195,196,197,197,198,199,200,200,201,202,202,203,204,204,205,206,206,207,207,208,209,209,210,211,211,212,213,213,214,215,215,216,217,217,218,219,219,220,221,221,222,222,223,223,224,225,225,226,226,227,228,228,229,230,230,231,232,232,233,233,233,234,235,235,236,237,237,238,238,239,240,240,241,241,241,242,243,243,244,244,245,246,246,247,247,248,249,249,249,250,250,251,252,252,253,253,254,254,255, -+0,4,8,12,15,18,20,23,25,28,30,32,34,39,41,43,45,46,48,50,52,53,55,57,59,60,62,65,66,68,69,71,72,74,75,77,78,79,81,82,83,85,87,89,90,91,92,94,95,96,97,98,100,101,102,103,104,105,107,108,109,110,112,113,114,115,116,117,119,120,120,122,123,124,125,126,127,128,129,130,131,132,133,134,134,135,136,137,138,139,140,142,143,144,145,146,146,148,148,149,150,151,152,153,154,154,155,156,157,158,159,160,160,161,162,163,164,165,165,166,167,168,169,169,170,171,172,173,173,174,175,176,177,177,178,179,180,180,181,182,183,183,184,185,186,187,187,188,189,189,190,191,192,193,193,194,195,195,196,197,197,198,199,200,200,200,201,202,202,203,204,204,205,206,207,207,208,209,209,210,211,211,212,213,213,214,215,215,216,217,217,218,219,219,219,220,221,221,222,223,223,224,225,225,226,226,227,228,228,229,230,230,231,232,232,232,233,233,234,235,235,236,237,237,238,238,239,240,240,240,241,241,242,243,243,244,244,245,246,246,247,247,248,248,249,249,250,250,251,252,252,253,253,254,254,255, -+0,4,8,12,15,18,20,23,25,28,30,32,35,39,41,43,45,47,48,50,52,54,55,57,59,60,62,65,66,68,69,71,72,74,75,77,78,79,81,82,84,85,87,89,90,91,92,94,95,96,97,99,100,101,102,103,104,105,107,108,109,110,112,113,114,115,116,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,137,138,139,140,142,143,144,145,146,146,147,148,149,150,151,152,153,154,155,155,156,157,158,159,160,161,161,162,163,164,165,165,166,167,168,169,170,170,171,172,173,174,174,175,176,177,178,178,179,180,181,181,182,183,184,184,185,186,187,187,188,189,190,190,191,192,193,193,194,195,195,196,197,198,198,199,200,200,200,201,202,203,203,204,205,205,206,207,207,208,209,209,210,211,211,212,213,213,214,215,215,216,217,217,218,219,219,219,220,221,221,222,223,223,224,225,225,226,226,227,228,228,229,230,230,231,232,232,232,233,233,234,235,235,236,237,237,238,238,239,240,240,240,241,241,242,243,243,244,244,245,246,246,247,247,248,248,249,249,250,250,251,252,252,253,253,254,254,255, -+0,4,8,12,15,18,20,23,25,28,30,32,35,39,41,43,45,47,48,50,52,54,55,57,59,60,62,63,67,68,70,71,72,74,75,77,78,79,81,82,83,85,86,87,89,91,93,94,95,96,97,99,100,101,102,103,104,105,107,108,109,110,111,112,113,114,115,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,138,139,140,141,142,143,144,145,146,147,148,148,149,150,152,153,154,155,156,156,157,158,159,160,161,162,162,163,164,165,166,167,167,168,169,170,171,171,172,173,174,174,175,176,177,178,178,179,180,181,181,182,183,184,185,185,186,187,188,188,189,190,190,191,192,193,193,193,194,195,195,196,197,198,198,199,200,201,201,202,203,203,204,205,205,206,207,207,208,209,209,210,211,212,212,213,213,214,215,215,216,216,217,217,218,219,219,220,221,221,222,223,223,224,225,225,226,227,227,228,228,229,230,230,230,231,232,232,233,233,234,235,235,236,237,237,238,238,239,240,240,240,241,241,242,243,243,244,244,245,246,246,247,247,248,248,249,249,250,250,251,252,252,253,253,254,254,255, -+0,4,8,12,15,18,20,23,26,28,30,33,35,39,41,43,45,47,48,50,52,54,56,57,59,60,62,63,67,68,70,71,73,74,75,77,78,80,81,82,83,85,86,88,89,91,93,94,95,96,98,99,100,101,102,103,104,106,107,108,109,110,111,112,113,115,116,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,139,140,141,142,143,144,145,146,147,148,149,150,150,152,153,154,155,156,157,157,158,159,160,161,161,162,163,164,165,166,167,167,168,169,170,171,171,172,173,174,175,175,176,177,178,178,179,180,181,181,182,183,184,184,185,186,187,188,188,189,190,191,191,192,193,193,193,194,195,196,196,197,198,198,199,200,201,201,202,203,203,204,205,205,206,207,208,208,209,210,210,211,212,212,213,214,214,215,216,216,216,217,218,218,219,220,220,221,221,222,223,223,224,225,225,226,227,227,228,229,229,230,230,230,231,232,232,233,234,234,235,235,236,237,237,238,238,239,240,240,240,241,241,242,243,243,244,245,245,246,246,247,247,248,248,249,249,250,250,251,252,252,253,253,254,254,255, -+0,4,8,12,15,18,20,23,26,28,30,33,35,39,41,43,45,47,48,50,52,54,56,57,59,60,62,64,67,68,70,71,73,74,76,77,78,80,81,82,84,85,86,88,89,91,93,94,95,96,98,99,100,101,102,104,105,106,107,108,109,110,111,112,114,115,116,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,141,142,143,144,145,146,147,148,149,150,150,152,153,154,155,156,157,157,158,159,160,161,162,163,163,164,165,166,166,167,168,169,170,171,171,172,173,174,175,175,176,177,178,178,179,180,181,182,182,183,184,185,185,186,187,188,188,189,190,191,191,192,193,193,193,194,195,196,196,197,198,198,199,200,201,201,202,203,203,204,205,205,206,207,208,208,209,210,210,211,212,212,213,214,214,215,216,216,216,217,218,218,219,220,220,221,221,222,223,223,224,225,225,226,227,227,228,229,229,230,230,230,231,232,232,233,234,234,235,235,236,237,237,238,238,239,240,240,240,241,242,242,243,243,244,245,245,246,246,247,247,248,248,249,249,250,250,251,252,252,253,253,254,254,255, -+0,4,8,12,15,18,20,23,26,28,30,33,35,37,41,43,45,47,48,50,52,54,56,57,59,61,62,64,65,68,70,71,73,74,76,77,78,80,81,82,84,85,86,88,89,90,92,93,95,97,98,99,100,101,102,104,105,106,107,108,109,110,112,113,114,115,116,117,118,119,120,121,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,142,143,144,145,146,147,148,149,150,151,151,152,153,154,155,156,157,158,158,159,160,161,162,163,163,164,165,166,167,167,168,169,170,171,172,172,173,174,175,175,176,177,178,179,179,180,181,182,182,183,184,185,185,186,187,188,188,189,190,191,191,192,193,194,194,195,196,196,197,198,199,199,200,201,201,202,203,203,204,205,206,206,207,208,208,209,210,210,211,212,212,213,213,214,214,215,216,216,217,218,218,219,220,220,221,222,222,223,223,224,225,225,226,227,227,228,228,229,229,230,230,231,232,232,233,234,234,235,235,236,237,237,238,238,239,239,240,240,241,242,242,243,243,244,245,245,246,246,247,247,247,248,249,249,250,250,251,252,252,253,253,254,254,255, -+0,4,8,12,15,18,20,23,26,28,30,33,35,37,41,43,45,47,49,50,52,54,56,57,59,61,62,64,65,68,70,71,73,74,76,77,78,80,81,83,84,85,87,88,89,90,92,93,95,97,98,99,100,101,102,104,105,106,107,108,109,110,112,113,114,115,116,117,118,119,120,121,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,143,144,145,146,147,148,149,150,151,151,152,153,154,155,156,157,158,158,159,160,161,162,163,163,164,165,166,167,168,168,169,170,171,172,172,173,174,175,176,176,177,178,179,179,180,181,182,182,183,184,185,186,186,187,188,188,189,190,191,191,192,193,194,194,195,196,196,197,198,199,199,200,201,201,202,203,204,204,205,206,206,207,208,208,209,210,210,211,212,212,213,213,214,214,215,216,216,217,218,218,219,220,220,221,222,222,223,223,224,225,225,226,227,227,228,228,229,229,230,230,231,232,232,233,234,234,235,235,236,237,237,238,238,239,239,240,240,241,242,242,243,243,244,245,245,246,246,247,247,247,248,249,249,250,250,251,252,252,253,253,254,254,255, -+0,4,8,12,15,18,21,23,26,28,30,33,35,37,39,43,45,47,49,51,52,54,56,58,59,61,62,64,65,67,68,71,73,74,76,77,79,80,81,83,84,85,87,88,89,90,92,93,94,95,97,99,100,101,103,104,105,106,107,108,109,111,111,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,143,144,145,146,147,148,149,150,151,152,152,153,154,155,156,157,158,159,159,160,161,162,163,164,164,165,166,167,168,168,169,170,171,172,172,173,174,175,176,176,177,178,179,179,180,181,182,183,183,184,185,186,186,187,188,189,189,190,191,191,192,193,194,194,195,196,197,197,198,199,199,200,201,201,202,203,204,204,205,206,206,207,208,208,209,209,210,210,211,212,212,213,214,214,215,216,216,217,218,218,219,220,220,221,222,222,223,224,224,225,225,226,226,227,227,228,229,229,230,231,231,232,232,233,234,234,235,235,236,237,237,238,238,239,239,240,240,241,242,242,243,243,244,245,245,246,246,247,247,248,248,249,249,250,250,251,252,252,253,253,254,254,255, -+0,4,8,12,15,18,21,23,26,28,31,33,35,37,39,43,45,47,49,51,52,54,56,58,59,61,62,64,66,67,68,71,73,74,76,77,79,80,81,83,84,85,87,88,89,90,92,93,94,95,97,99,100,101,103,104,105,106,107,108,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,145,146,147,148,149,150,151,152,153,153,154,155,156,157,158,159,159,160,161,162,163,163,164,165,166,167,168,168,169,170,171,172,173,173,174,175,176,176,177,178,179,179,180,181,182,183,183,184,185,186,186,187,188,189,189,190,191,192,192,193,194,194,195,196,197,197,198,199,199,200,201,202,202,203,204,204,205,206,206,207,208,208,209,209,210,210,211,212,212,213,214,214,215,216,216,217,218,218,219,220,220,221,222,222,223,224,224,225,226,226,226,227,227,228,229,229,230,231,231,232,232,233,234,234,235,236,236,237,237,238,238,239,239,240,240,241,242,242,243,243,244,245,245,246,246,247,247,248,248,249,249,250,250,251,252,252,253,253,254,254,255, -+0,5,8,12,15,18,21,23,26,28,31,33,35,37,39,43,45,47,49,50,52,54,56,57,59,61,62,64,66,67,69,72,73,74,76,77,79,80,81,83,84,86,87,88,89,91,92,93,94,96,97,99,100,101,103,104,105,106,107,108,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,145,146,147,148,149,150,151,152,153,153,154,155,156,157,158,159,159,160,161,162,163,164,165,165,166,167,168,169,169,170,171,172,173,173,174,175,176,177,177,178,179,180,180,181,182,183,183,184,185,186,186,187,188,189,189,190,191,192,192,193,194,194,195,196,197,197,198,199,199,200,201,202,202,203,204,204,205,206,206,207,208,208,209,209,210,210,211,212,212,213,214,215,215,216,216,217,218,218,219,220,220,221,222,222,223,224,224,225,226,226,226,227,227,228,229,229,230,231,231,232,232,233,234,234,235,236,236,237,237,238,238,239,239,240,240,241,242,242,243,243,244,245,245,246,246,247,247,248,248,249,249,250,250,251,252,252,253,253,254,254,255, -+0,5,8,12,15,18,21,23,26,28,31,33,35,37,39,41,45,47,49,51,52,54,56,58,59,61,62,64,66,67,69,70,72,75,76,77,79,80,81,83,84,86,87,88,89,91,92,93,94,96,97,98,99,101,102,104,105,106,107,108,110,111,112,113,114,115,116,117,118,119,120,121,123,124,124,125,126,128,128,130,131,131,132,133,134,135,136,138,139,140,141,142,143,144,145,146,147,147,148,149,150,151,152,153,154,154,155,156,157,158,159,160,160,161,162,163,164,165,165,166,167,168,169,169,170,171,172,173,174,174,175,176,177,177,178,179,180,180,181,182,183,184,184,185,186,186,187,188,189,189,190,191,192,192,193,194,195,195,196,197,197,198,199,199,200,201,202,202,203,203,204,204,205,206,206,207,208,209,209,210,211,211,212,213,213,214,215,215,216,216,217,218,218,219,220,220,221,222,222,223,224,224,224,225,226,226,227,227,228,229,229,230,231,231,232,232,233,234,234,235,236,236,237,237,237,238,239,239,240,240,241,242,242,243,243,244,245,245,246,246,246,247,248,248,249,249,250,250,251,252,252,253,253,254,254,255, -+0,5,8,12,15,18,21,23,26,28,31,33,35,37,39,41,45,47,49,51,53,54,56,58,59,61,62,64,66,67,69,70,72,75,76,77,79,80,82,83,84,86,87,88,90,91,92,93,94,96,97,98,99,101,102,104,105,106,107,108,110,111,112,113,114,115,116,117,118,120,120,122,123,123,125,126,127,128,129,130,130,132,132,134,134,135,136,138,139,140,141,142,143,144,145,146,147,148,148,149,150,151,152,153,154,155,155,156,157,158,159,160,160,161,162,163,164,165,165,166,167,168,169,170,170,171,172,173,173,174,175,176,177,177,178,179,180,181,181,182,183,184,184,185,186,187,187,188,189,190,190,191,192,192,193,194,195,195,196,197,197,198,199,200,200,201,202,202,203,203,204,205,205,206,207,207,208,209,209,210,211,211,212,213,213,214,215,215,216,217,217,218,219,219,220,220,221,222,222,223,224,224,224,225,226,226,227,228,228,229,229,230,231,231,232,232,233,234,234,235,236,236,237,237,237,238,239,239,240,240,241,242,242,243,243,244,245,245,246,246,246,247,248,248,249,249,250,250,251,252,252,253,253,254,254,255, -+0,5,8,12,15,18,21,23,26,28,31,33,35,37,39,41,43,47,49,51,52,54,56,58,59,61,62,64,66,67,69,70,72,73,75,76,79,80,82,83,84,86,87,88,89,91,92,93,95,96,97,98,99,101,102,103,104,105,106,108,110,111,112,113,114,115,116,117,118,119,121,122,123,124,125,126,127,128,129,130,131,132,133,134,134,136,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,155,156,157,158,159,160,161,161,162,163,164,165,165,166,167,168,169,170,170,171,172,173,174,174,175,176,177,177,178,179,180,181,181,182,183,184,184,185,186,187,187,188,189,190,190,191,192,192,193,194,195,195,195,196,197,197,198,199,200,200,201,202,202,203,204,205,205,206,207,207,208,209,209,210,211,211,212,213,213,214,215,215,216,217,217,218,219,219,220,220,220,221,222,222,223,224,224,225,226,226,227,228,228,229,229,230,231,231,232,233,233,234,234,235,235,236,236,237,237,238,239,239,240,240,241,242,242,243,243,244,245,245,246,246,246,247,248,248,249,249,250,250,251,252,252,253,253,254,254,255, -+0,5,8,12,15,18,21,23,26,28,31,33,35,37,39,41,43,47,49,51,53,54,56,58,59,61,63,64,66,67,69,70,72,73,75,76,79,80,82,83,84,86,87,88,90,91,92,94,95,96,97,98,100,101,102,103,104,105,106,108,110,111,112,113,114,115,116,117,118,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,156,157,158,159,160,161,161,162,163,164,165,166,166,167,168,169,170,170,171,172,173,174,174,175,176,177,177,178,179,180,181,181,182,183,184,184,185,186,187,187,188,189,190,190,191,192,192,193,194,195,195,195,196,197,198,198,199,200,200,201,202,202,203,204,205,205,206,207,207,208,209,209,210,211,211,212,213,213,214,215,215,216,217,217,218,219,219,220,221,221,221,222,222,223,224,224,225,226,226,227,228,228,229,229,230,231,231,232,233,233,234,234,235,235,236,236,237,237,238,239,239,240,240,241,242,242,243,243,244,245,245,246,246,246,247,248,248,249,249,250,250,251,252,252,253,253,254,254,255, -+0,5,8,12,15,18,21,24,26,28,31,33,35,37,39,41,43,47,49,51,53,54,56,58,59,61,63,64,66,67,69,70,72,73,75,76,79,80,82,83,84,86,87,88,90,91,92,94,95,96,97,98,99,101,102,103,104,106,107,108,110,111,112,113,114,115,116,118,118,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,156,157,158,159,160,161,161,162,163,164,165,166,166,167,168,169,170,170,171,172,173,174,174,175,176,177,178,178,179,180,181,181,182,183,184,184,185,186,187,187,188,189,190,190,191,192,193,193,194,195,195,195,196,197,198,198,199,200,200,201,202,202,203,204,205,205,206,207,207,208,209,209,210,211,211,212,213,213,214,215,215,216,217,217,218,219,219,220,221,221,221,222,222,223,224,224,225,226,226,227,228,228,229,229,230,231,231,232,233,233,234,234,235,235,236,236,237,237,238,239,239,240,240,241,242,242,243,243,244,245,245,246,246,246,247,248,248,249,249,250,250,251,252,252,253,253,254,254,255, -+0,5,8,12,15,18,21,24,26,28,31,33,35,37,39,42,43,45,49,51,53,54,56,58,59,61,63,64,66,67,69,71,72,73,75,76,78,79,82,83,85,86,87,88,90,91,92,93,95,96,97,98,100,101,102,103,104,105,107,108,109,110,111,112,113,115,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,140,141,142,143,144,145,146,147,148,149,150,150,151,152,153,154,155,156,156,157,158,159,160,161,162,162,163,164,165,166,166,167,168,169,170,171,171,172,173,174,175,175,176,177,178,178,179,180,181,182,182,183,184,184,185,186,187,188,188,189,190,190,191,192,193,193,194,195,195,196,197,198,198,199,200,200,201,202,203,203,204,205,205,206,207,207,208,209,209,210,211,211,212,213,213,214,215,215,216,217,217,217,218,219,219,220,221,221,222,222,223,224,224,225,226,226,227,228,228,229,229,230,231,231,232,233,233,234,234,234,235,236,236,237,237,238,239,239,240,240,241,242,242,243,243,244,245,245,245,246,246,247,248,248,249,249,250,250,251,252,252,253,253,254,254,255, -+0,5,9,12,15,18,21,24,26,28,31,33,35,37,39,42,43,45,49,51,53,54,56,58,59,61,63,64,66,67,69,71,72,73,75,76,78,79,82,83,84,86,87,88,90,91,92,94,95,96,97,98,100,101,102,103,104,105,107,108,109,110,111,112,113,115,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,139,140,141,142,143,144,145,146,147,148,149,149,150,151,152,153,154,155,156,157,157,158,159,160,161,162,162,163,164,165,166,167,167,168,169,170,171,171,172,173,174,175,175,176,177,178,178,179,180,181,181,182,183,184,185,185,186,187,188,188,189,190,190,191,192,193,193,194,195,196,196,197,198,198,199,200,200,201,202,203,203,204,205,205,206,207,207,208,209,209,210,211,211,212,213,213,214,215,215,216,217,217,217,218,219,219,220,221,221,222,223,223,224,224,225,226,226,227,228,228,229,230,230,231,231,232,233,233,234,234,234,235,236,236,237,237,238,239,239,240,240,241,242,242,243,243,244,245,245,245,246,246,247,248,248,249,249,250,250,251,252,252,253,253,254,254,255, -+0,5,9,12,15,18,21,24,26,29,31,33,35,37,40,42,44,45,47,51,53,54,56,58,60,61,63,64,66,68,69,71,72,73,75,76,78,79,81,82,83,86,87,88,90,91,92,94,95,96,97,99,100,101,102,103,104,106,107,108,109,110,111,112,113,114,116,117,118,119,120,121,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,141,142,143,144,145,146,147,148,149,150,150,151,152,153,154,155,156,157,157,158,159,160,161,162,162,163,164,165,166,167,167,168,169,170,171,171,172,173,174,175,175,176,177,178,178,179,180,181,182,182,183,184,185,185,186,187,188,188,189,190,190,191,192,193,193,194,195,195,196,197,198,198,199,200,201,201,202,203,203,204,205,205,206,207,207,208,209,209,210,211,211,212,213,213,213,214,215,215,216,217,217,218,219,219,220,221,221,222,223,223,224,224,225,226,226,227,228,228,229,230,230,231,231,232,232,233,233,234,234,235,236,236,237,237,238,239,239,240,241,241,242,242,243,243,244,245,245,245,246,246,247,248,248,249,249,250,250,251,252,252,253,253,254,254,255, -+0,5,9,12,15,18,21,24,26,29,31,33,35,37,40,42,44,45,47,51,53,54,56,58,60,61,63,64,66,68,69,71,72,74,75,76,78,79,81,82,83,86,87,88,90,91,92,94,95,96,97,99,100,101,102,103,104,106,107,108,109,110,111,112,113,114,116,117,118,119,120,121,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,140,141,142,143,144,145,146,147,148,149,150,150,151,152,153,154,155,156,157,157,158,159,160,161,162,162,163,164,165,166,167,167,168,169,170,171,171,172,173,174,175,175,176,177,178,179,179,180,181,182,182,183,184,185,185,186,187,188,188,189,190,191,191,192,193,193,194,195,196,196,197,198,198,199,200,201,201,202,203,203,204,205,205,206,207,207,208,209,209,210,211,211,212,213,213,213,214,215,215,216,217,217,218,219,219,220,221,221,222,223,223,224,224,225,226,226,227,228,228,229,230,230,231,231,232,232,233,233,234,234,235,236,236,237,238,238,239,239,240,240,241,242,242,243,243,244,245,245,245,246,246,247,248,248,249,249,250,250,251,252,252,253,253,254,254,255, -+0,5,9,12,15,18,21,24,26,29,31,33,35,38,40,42,44,45,47,51,53,55,56,58,60,61,63,65,66,68,69,71,72,74,75,76,78,79,81,82,83,86,87,89,90,91,92,94,95,96,97,99,100,101,102,103,104,106,107,108,109,110,111,112,114,114,116,117,118,119,120,121,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,142,143,144,145,146,147,148,149,150,151,151,152,153,154,155,156,157,157,158,159,160,161,162,163,163,164,165,166,167,167,168,169,170,171,172,172,173,174,175,175,176,177,178,179,179,180,181,182,182,183,184,185,185,186,187,188,188,189,190,191,191,192,193,193,194,195,196,196,197,198,198,199,200,201,201,202,203,203,204,205,205,206,207,207,208,209,209,210,211,211,212,213,213,213,214,215,215,216,217,217,218,219,219,220,221,221,222,223,223,224,225,225,226,226,227,228,228,229,230,230,231,231,232,232,233,233,234,234,235,236,236,237,238,238,239,239,240,241,241,242,242,243,243,244,245,245,245,246,246,247,248,248,249,249,250,250,251,252,252,253,253,254,254,255, -+0,5,9,12,15,18,21,24,26,29,31,33,35,37,40,42,44,46,47,49,53,55,56,58,60,61,63,65,66,67,69,71,72,74,75,76,78,79,81,82,83,85,86,87,89,91,93,94,95,96,97,99,100,101,102,103,105,106,107,108,109,110,111,112,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,132,133,134,135,136,137,138,139,140,141,142,142,143,144,145,146,147,148,149,150,151,151,152,153,154,155,156,157,158,158,159,160,161,162,163,163,164,165,166,167,168,168,169,170,171,172,172,173,174,175,175,176,177,178,179,179,180,181,182,182,183,184,185,185,186,187,188,188,189,190,191,191,192,193,193,194,195,196,196,197,198,198,199,200,201,201,202,203,203,204,205,205,206,207,207,207,208,209,210,210,211,211,212,213,214,214,215,215,216,217,217,218,219,219,220,221,221,222,223,223,224,225,225,226,226,227,228,228,229,230,230,230,231,231,232,233,233,234,235,235,236,236,237,238,238,239,239,240,241,241,242,242,243,243,244,244,245,245,246,246,247,248,248,249,249,250,250,251,252,252,253,253,254,254,255, -+0,5,9,12,15,18,21,24,26,29,31,33,35,38,40,42,44,46,48,49,53,55,56,58,60,61,63,65,66,68,69,71,72,74,75,76,78,79,81,82,83,85,86,88,89,91,93,94,95,96,97,99,100,101,102,103,105,106,107,108,109,110,111,112,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,132,133,134,135,136,137,138,139,140,141,142,143,144,144,145,146,147,148,149,150,151,152,152,153,154,155,156,157,158,159,159,160,161,162,163,163,164,165,166,167,168,168,169,170,171,172,172,173,174,175,175,176,177,178,179,179,180,181,182,182,183,184,185,185,186,187,188,188,189,190,191,191,192,193,194,194,195,196,196,197,198,199,199,200,201,201,202,203,203,204,205,205,206,207,207,207,208,209,210,210,211,212,212,213,214,214,215,215,216,217,217,218,219,219,220,221,221,222,223,223,224,225,225,226,226,227,228,228,229,230,230,230,231,231,232,233,233,234,234,235,236,236,237,238,238,239,239,240,241,241,242,242,243,243,244,244,245,245,246,246,247,248,248,249,249,250,250,251,252,252,253,253,254,254,255, -+0,5,9,12,15,18,21,24,26,29,31,33,35,38,40,42,44,46,48,49,51,53,56,58,60,61,63,65,66,68,69,71,72,74,75,77,78,79,81,82,83,85,86,88,89,90,91,92,94,96,97,99,100,101,102,103,105,106,107,108,109,110,111,113,113,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,152,153,154,155,156,157,158,158,159,160,161,162,163,163,164,165,166,167,168,168,169,170,171,172,172,173,174,175,175,176,177,178,179,179,180,181,182,182,183,184,185,185,186,187,188,188,189,190,191,191,192,193,194,194,195,196,196,197,198,198,199,199,200,201,201,202,203,203,204,205,206,206,207,208,208,209,210,210,211,212,212,213,214,214,215,216,216,217,218,218,219,219,220,221,221,222,223,223,224,225,225,226,226,227,227,228,228,229,230,230,231,231,232,233,233,234,234,235,236,236,237,238,238,239,239,240,241,241,242,242,243,243,243,244,245,245,246,246,247,248,248,249,249,250,250,251,252,252,253,253,254,254,255, -+0,5,9,12,15,18,21,24,26,29,31,33,36,38,40,42,44,46,47,49,51,53,56,58,60,61,63,65,66,68,69,71,72,74,75,77,78,79,81,82,83,85,86,87,89,90,91,93,94,96,97,99,100,101,102,103,105,106,107,108,109,110,111,112,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,152,153,154,155,156,157,158,158,159,160,161,162,163,164,164,165,166,167,168,168,169,170,171,172,172,173,174,175,176,176,177,178,179,179,180,181,182,182,183,184,185,185,186,187,188,188,189,190,191,191,192,193,194,194,195,196,196,197,198,198,199,199,200,201,201,202,203,203,204,205,205,206,207,208,208,209,210,210,211,212,212,213,214,214,215,216,216,217,218,218,219,219,220,221,221,222,223,223,224,225,225,226,226,227,227,228,228,229,230,230,231,231,232,233,233,234,235,235,236,236,237,238,238,239,239,240,241,241,242,242,243,243,244,244,245,245,246,246,247,248,248,249,249,250,250,251,252,252,253,253,254,254,255, -+0,5,9,12,15,18,21,24,26,29,31,33,36,38,40,42,44,46,48,49,51,53,56,58,60,61,63,65,66,68,69,71,72,74,75,77,78,79,81,82,84,85,86,87,89,90,91,93,94,96,98,99,100,101,102,104,105,106,107,108,109,110,111,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,153,154,155,156,157,158,159,159,160,161,162,163,163,164,165,166,167,168,168,169,170,171,172,173,173,174,175,176,176,177,178,179,179,180,181,182,182,183,184,185,186,186,187,188,188,189,190,191,191,192,193,194,194,195,196,196,197,198,198,199,199,200,201,201,202,203,203,204,205,206,206,207,208,208,209,210,210,211,212,212,213,214,214,215,216,216,217,218,218,219,219,220,221,221,222,223,223,224,225,225,226,226,227,227,228,228,229,230,230,231,231,232,233,233,234,235,235,236,236,237,238,238,239,239,240,241,241,242,242,243,243,244,244,245,245,246,246,247,248,248,249,249,250,250,251,252,252,253,253,254,254,255, -+0,5,9,12,15,18,21,24,26,29,31,33,36,38,40,42,44,46,48,49,51,53,55,57,60,62,63,65,66,68,69,71,72,74,75,77,78,79,81,82,84,85,86,87,89,90,91,93,94,95,96,98,99,100,101,104,105,106,107,108,109,110,111,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,145,146,147,148,149,150,151,152,152,153,154,155,156,157,158,159,159,160,161,162,163,164,164,165,166,167,168,168,169,170,171,172,173,173,174,175,176,176,177,178,179,180,180,181,182,183,183,184,185,186,186,187,188,189,189,190,191,191,192,193,194,194,195,196,196,197,198,199,199,200,201,201,202,203,203,204,205,206,206,207,208,208,209,210,210,211,212,212,213,214,214,215,216,216,217,218,218,219,219,220,221,221,222,223,223,223,224,225,225,226,226,227,228,228,229,230,230,231,231,232,233,233,234,235,235,236,236,237,238,238,239,239,240,241,241,242,242,242,243,244,244,245,245,246,246,247,248,248,249,249,250,250,251,252,252,253,253,254,254,255, -+0,5,9,12,15,18,21,24,26,29,31,33,36,38,40,42,44,46,48,50,51,53,55,57,60,62,63,65,66,68,69,71,72,74,75,77,78,80,81,82,84,85,86,88,89,90,92,93,94,95,96,98,99,100,101,104,105,106,107,108,109,110,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,145,146,147,148,149,150,151,152,153,153,154,155,156,157,158,159,159,160,161,162,163,164,164,165,166,167,168,169,169,170,171,172,173,173,174,175,176,176,177,178,179,179,180,181,182,183,183,184,185,186,186,187,188,189,189,190,191,191,192,193,194,194,195,196,196,197,198,199,199,200,201,201,202,203,203,204,205,206,206,207,208,208,209,210,210,211,212,212,213,214,214,215,216,216,217,218,218,219,219,220,221,221,222,223,223,223,224,225,225,226,227,227,228,228,229,230,230,231,231,232,233,233,234,235,235,236,236,237,238,238,239,239,240,241,241,242,242,242,243,244,244,245,245,246,246,247,248,248,249,249,250,250,251,252,252,253,253,254,254,255, -+0,5,9,12,15,18,21,24,26,29,31,33,36,38,40,42,44,46,48,50,51,53,55,57,58,60,62,65,66,68,69,71,72,74,75,77,78,80,81,82,84,85,86,88,89,90,91,93,94,95,96,98,99,100,101,102,104,105,106,107,108,109,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,146,147,148,149,150,151,152,153,153,154,155,156,157,158,159,160,160,161,162,163,164,164,165,166,167,168,169,169,170,171,172,173,173,174,175,176,176,177,178,179,180,180,181,182,183,183,184,185,186,186,187,188,189,189,190,191,192,192,193,194,194,195,196,197,197,198,199,199,200,201,201,202,203,203,204,205,206,206,207,208,208,209,210,210,211,212,212,213,214,214,215,216,216,217,218,218,219,219,220,220,221,221,222,223,223,224,225,225,226,227,227,228,228,229,230,230,231,231,232,233,233,234,235,235,236,236,237,238,238,239,239,240,240,241,241,242,242,243,244,244,245,245,246,246,247,248,248,249,249,250,250,251,252,252,253,253,254,254,255, -+0,5,9,12,15,18,21,24,26,29,31,33,36,38,40,42,44,46,48,50,51,53,55,57,58,60,62,65,66,68,69,71,72,74,75,77,78,80,81,82,84,85,86,88,89,90,92,93,94,95,97,98,99,100,101,103,104,105,106,107,108,109,111,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,145,146,147,148,149,150,151,152,153,153,154,155,156,157,158,159,160,160,161,162,163,164,165,165,166,167,168,169,169,170,171,172,173,173,174,175,176,176,177,178,179,180,180,181,182,183,183,184,185,186,186,187,188,189,189,190,191,191,192,193,194,194,195,196,197,197,198,199,199,200,201,201,202,203,203,204,205,206,206,207,208,208,209,210,210,211,212,212,213,214,214,215,216,216,217,218,218,219,219,220,220,221,221,222,223,223,224,225,225,226,227,227,228,228,229,230,230,231,232,232,233,233,234,235,235,236,236,237,238,238,239,239,240,240,241,241,242,242,243,244,244,245,245,246,246,247,248,248,249,249,250,251,251,252,252,253,253,254,254,255, -+0,5,9,12,15,18,21,24,26,29,31,33,36,38,40,42,44,46,48,50,51,53,55,57,58,60,62,65,66,68,70,71,73,74,75,77,78,80,81,82,84,85,86,88,89,90,92,93,94,95,97,98,99,100,101,103,104,105,106,107,108,109,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,146,147,148,149,150,151,152,153,154,154,155,156,157,158,159,159,160,161,162,163,164,164,165,166,167,168,169,169,170,171,172,173,173,174,175,176,177,177,178,179,180,180,181,182,183,183,184,185,186,186,187,188,189,189,190,191,192,192,193,194,194,195,196,197,197,198,199,199,200,201,201,202,203,204,204,205,206,206,207,208,208,209,210,210,211,212,212,213,214,214,215,216,216,217,218,218,219,219,220,220,221,221,222,223,223,224,225,225,226,227,227,228,228,229,230,230,231,232,232,233,233,234,235,235,236,236,237,238,238,239,239,240,240,241,241,242,242,243,244,244,245,245,246,246,247,248,248,249,249,250,251,251,252,252,253,253,254,254,255, -+0,5,9,12,15,18,21,24,26,29,31,33,36,38,40,42,44,46,48,50,51,53,55,57,58,60,62,63,65,68,69,71,73,74,75,77,78,80,81,82,84,85,86,88,89,90,92,93,94,95,97,98,99,100,101,103,104,105,106,107,108,109,111,112,113,114,115,116,117,118,119,120,122,123,124,125,127,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,146,147,148,149,150,151,152,153,154,154,155,156,157,158,159,159,160,161,162,163,164,165,165,166,167,168,169,169,170,171,172,173,173,174,175,176,176,177,178,179,180,180,181,182,183,183,184,185,186,186,187,188,189,189,190,191,191,192,193,194,194,195,196,197,197,198,199,199,200,201,201,202,203,204,204,205,206,206,207,208,208,209,210,210,211,212,212,212,213,214,214,215,216,216,217,218,218,219,220,220,221,221,222,223,223,224,225,225,226,227,227,228,228,229,230,230,231,231,232,233,233,234,235,235,236,236,237,238,238,239,239,239,240,241,241,242,242,243,244,244,245,245,246,246,247,248,248,249,249,250,251,251,252,252,253,253,254,254,255, -+0,5,9,12,15,18,21,24,26,29,31,33,36,38,40,42,44,46,48,50,52,53,55,57,58,60,62,63,65,68,70,71,73,74,76,77,78,80,81,82,84,85,87,88,89,90,92,93,94,95,97,98,99,100,101,103,104,105,106,107,108,109,111,112,113,114,115,116,117,118,119,120,122,123,124,125,127,127,128,130,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,147,148,149,150,151,152,153,154,154,155,156,157,158,159,160,160,161,162,163,164,164,165,166,167,168,169,169,170,171,172,173,173,174,175,176,177,177,178,179,180,180,181,182,183,183,184,185,186,186,187,188,189,189,190,191,192,192,193,194,194,195,196,197,197,198,199,199,200,201,202,202,203,204,204,205,206,206,207,208,208,209,210,210,211,212,212,212,213,214,214,215,216,216,217,218,218,219,220,220,221,221,222,223,223,224,225,225,226,227,227,228,228,229,230,230,231,231,232,233,233,234,235,235,236,236,237,238,238,239,239,239,240,241,241,242,242,243,244,244,245,245,246,246,247,248,248,249,249,250,251,251,252,252,253,253,254,254,255, -+0,5,9,12,15,18,21,24,26,29,31,33,36,38,40,42,44,46,48,50,52,53,55,57,58,60,62,63,65,67,68,70,71,74,75,77,78,80,81,82,84,85,87,88,89,90,92,93,94,95,97,98,99,100,101,103,104,105,106,107,108,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,126,126,128,129,130,131,132,132,133,134,135,137,138,139,140,141,142,143,144,145,146,147,148,148,149,150,151,152,153,154,155,155,156,157,158,159,160,160,161,162,163,164,165,165,166,167,168,169,169,170,171,172,173,173,174,175,176,177,177,178,179,180,180,181,182,183,183,184,185,186,186,187,188,189,189,190,191,191,192,193,194,195,195,196,197,197,198,199,199,200,201,201,202,202,203,204,204,205,206,206,207,208,208,209,210,210,211,212,212,213,214,214,215,216,216,217,218,218,219,220,220,221,221,222,223,223,224,225,225,226,227,227,228,228,229,230,230,231,232,232,233,233,234,235,235,236,236,236,237,238,238,239,239,240,241,241,242,242,243,244,244,245,245,246,246,247,248,248,249,249,250,251,251,252,252,253,253,254,254,255, -+0,5,9,12,15,18,21,24,26,29,31,34,36,38,40,42,44,46,48,50,52,53,55,57,58,60,62,63,65,67,68,70,71,74,75,77,78,80,81,83,84,85,86,88,89,91,92,93,94,96,97,98,99,100,102,103,104,105,106,107,108,110,111,112,113,114,115,116,117,118,119,120,121,122,123,125,125,126,128,129,130,131,132,133,133,134,135,137,138,139,140,141,142,143,144,145,146,147,147,148,149,150,151,152,153,154,154,155,156,157,158,159,160,160,161,162,163,164,165,165,166,167,168,169,169,170,171,172,173,173,174,175,176,177,177,178,179,180,180,181,182,183,183,184,185,186,186,187,188,189,189,190,191,192,192,193,194,194,195,196,197,197,198,199,199,200,201,202,202,202,203,204,204,205,206,206,207,208,208,209,210,210,211,212,212,213,214,214,215,216,216,217,218,218,219,220,220,221,221,222,223,223,224,225,225,226,227,227,228,228,229,230,230,231,232,232,233,233,234,235,235,236,236,236,237,238,238,239,239,240,241,241,242,242,243,244,244,245,245,246,246,247,248,248,249,249,250,251,251,252,252,253,253,254,254,255, -+0,5,9,12,15,18,21,24,26,29,31,34,36,38,40,42,44,46,48,50,52,53,55,57,59,60,62,63,65,66,68,70,71,74,75,77,78,80,81,82,84,85,87,88,89,91,92,93,94,95,97,98,99,100,101,103,104,105,106,107,108,109,111,112,113,114,115,116,117,118,119,120,121,123,123,125,126,127,128,129,129,131,131,132,133,134,135,137,138,139,140,141,142,143,144,145,146,147,147,148,149,150,151,152,153,154,154,155,156,157,158,159,160,161,161,162,163,164,165,165,166,167,168,169,170,170,171,172,173,173,174,175,176,177,177,178,179,180,181,181,182,183,183,184,185,186,186,187,188,189,189,190,191,192,192,193,194,195,195,196,197,197,198,199,199,200,201,201,202,202,203,204,204,205,206,206,207,208,208,209,210,210,211,212,212,213,214,214,215,216,216,217,218,218,219,220,220,221,222,222,223,223,224,225,225,226,227,227,228,228,229,230,230,231,232,232,233,233,234,235,235,236,236,236,237,238,238,239,239,240,241,241,242,242,243,244,244,245,245,246,246,247,248,248,249,249,250,251,251,252,252,253,253,254,254,255, -+0,5,9,12,16,18,21,24,26,29,31,34,36,38,40,42,44,46,48,50,52,53,55,57,59,60,62,63,65,67,68,70,71,73,74,76,77,78,81,83,84,85,87,88,89,90,92,93,94,95,97,98,99,100,102,103,104,105,106,107,108,110,111,112,113,114,115,116,117,118,119,120,121,122,124,124,126,127,128,129,130,131,132,132,133,135,135,136,137,138,139,140,141,142,143,144,145,146,147,148,148,149,150,151,152,153,154,155,155,156,157,158,159,160,160,161,162,163,164,165,166,166,167,168,169,170,170,171,172,173,173,174,175,176,177,177,178,179,180,180,181,182,183,183,184,185,186,186,187,188,189,189,190,191,192,192,193,194,194,195,196,197,197,198,199,199,200,201,202,202,203,204,204,205,206,206,207,208,208,209,210,210,211,212,212,213,214,214,215,216,216,217,218,218,219,220,220,221,222,222,223,223,224,225,225,226,227,227,228,228,229,230,230,231,232,232,233,233,233,234,235,235,236,236,237,238,238,239,239,240,241,241,242,242,243,244,244,245,245,246,246,247,248,248,249,249,250,251,251,252,252,253,253,254,254,255, -+0,5,9,12,15,19,21,24,27,29,31,34,36,38,40,42,44,46,48,50,52,53,55,57,58,60,62,63,65,67,68,70,71,73,74,76,77,78,81,83,84,85,87,88,89,90,92,93,94,95,97,98,99,100,102,103,104,105,106,107,109,110,111,112,113,114,115,116,117,118,119,120,121,122,124,125,125,127,128,129,130,131,131,133,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,148,149,150,151,152,153,154,155,155,156,157,158,159,160,161,161,162,163,164,165,165,166,167,168,169,170,170,171,172,173,174,174,175,176,177,177,178,179,180,181,181,182,183,184,184,185,186,187,187,188,189,189,190,191,192,192,193,194,194,195,196,197,197,198,199,199,200,201,202,202,203,204,204,205,206,206,207,208,208,209,210,210,211,212,212,213,214,214,215,216,216,217,218,218,219,220,220,221,222,222,223,223,224,225,225,226,227,227,228,228,229,230,230,231,232,232,233,233,233,234,235,235,236,236,237,238,238,239,239,240,241,241,242,242,243,244,244,245,245,246,246,247,248,248,249,249,250,251,251,252,252,253,253,254,254,255, -+0,5,9,12,16,19,21,24,27,29,31,34,36,38,40,42,44,46,48,50,52,53,55,57,59,60,62,63,65,67,68,70,71,73,74,76,77,79,80,81,83,84,85,87,88,90,92,93,94,96,97,98,99,100,102,103,104,105,106,107,109,110,111,112,113,114,115,116,117,118,119,120,122,123,124,125,126,127,128,129,130,131,132,133,134,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,148,149,150,151,152,153,154,155,155,156,157,158,159,160,161,161,162,163,164,165,166,166,167,168,169,170,170,171,172,173,173,174,175,176,177,177,178,179,180,181,181,182,183,184,184,185,186,187,187,188,189,190,190,191,192,192,193,194,195,195,196,197,197,198,199,199,200,201,202,202,203,204,204,205,206,206,207,208,208,209,210,210,211,212,212,213,214,214,215,216,216,217,218,218,219,220,220,221,222,222,223,223,224,225,225,226,227,227,228,228,229,229,230,230,231,232,232,233,233,234,235,235,236,236,237,238,238,239,239,240,241,241,242,242,243,244,244,245,245,246,246,247,248,248,249,249,250,251,251,252,252,253,253,254,254,255, -+0,5,9,12,16,19,21,24,27,29,31,34,36,38,40,42,44,46,48,50,52,53,55,57,59,60,62,64,65,67,68,70,71,73,74,76,77,78,80,81,83,84,85,87,88,90,92,93,94,96,97,98,99,100,102,103,104,105,106,107,109,110,111,112,113,114,115,116,117,118,119,120,121,123,124,125,126,127,128,129,130,131,132,133,134,135,136,136,137,138,139,140,141,142,143,144,145,146,147,148,148,149,150,151,152,153,154,155,155,156,157,158,159,160,161,161,162,163,164,165,166,166,167,168,169,170,170,171,172,173,174,174,175,176,177,177,178,179,180,181,181,182,183,184,184,185,186,187,187,188,189,189,190,191,192,192,193,194,195,195,196,197,197,198,199,199,200,201,202,202,203,204,204,205,206,206,207,208,208,209,210,210,211,212,212,213,214,214,215,216,216,217,218,218,219,220,220,221,222,222,223,223,224,225,225,226,227,227,228,228,229,229,230,230,231,232,232,233,233,234,235,235,236,236,237,238,238,239,239,240,241,241,242,242,243,244,244,245,245,246,246,247,248,248,249,249,250,251,251,252,252,253,253,254,254,255, -+0,5,9,12,16,18,21,24,27,29,31,34,36,38,40,42,44,46,48,50,52,53,55,57,59,60,62,64,65,67,68,70,71,73,74,76,77,78,80,81,83,84,85,87,88,90,92,93,94,96,97,98,99,100,102,103,104,105,106,107,109,110,111,112,113,114,115,116,117,118,119,121,122,122,124,125,126,127,128,129,130,131,132,133,134,135,135,136,137,138,139,140,141,142,143,144,145,146,147,148,148,149,150,151,152,153,154,155,155,156,157,158,159,160,161,161,162,163,164,165,166,166,167,168,169,170,170,171,172,173,174,174,175,176,177,177,178,179,180,180,181,182,183,184,184,185,186,187,187,188,189,189,190,191,192,192,193,194,195,195,196,197,197,198,199,200,200,201,202,202,203,204,204,205,206,206,207,208,208,209,210,210,211,212,213,213,214,214,215,216,216,217,218,218,219,220,220,221,222,222,223,223,224,225,225,226,227,227,228,228,229,229,230,230,231,232,232,233,233,234,235,235,236,236,237,238,238,239,239,240,241,241,242,242,243,244,244,245,245,246,246,247,248,248,249,249,250,251,251,252,252,253,253,254,254,255, -+0,5,9,12,16,19,21,24,27,29,31,34,36,38,40,42,44,46,48,50,52,54,55,57,59,60,62,64,65,67,68,70,71,73,74,76,77,79,80,81,83,84,85,87,88,89,91,92,93,94,96,97,98,99,100,103,104,105,106,107,108,110,111,112,113,114,115,116,117,118,119,121,122,122,124,125,126,127,128,129,130,131,132,133,134,135,135,137,137,138,139,140,141,142,143,144,145,146,147,148,148,149,150,151,152,153,154,155,155,156,157,158,159,160,161,161,162,163,164,165,166,166,167,168,169,170,170,171,172,173,174,174,175,176,177,177,178,179,180,181,181,182,183,184,184,185,186,187,187,188,189,189,190,191,192,192,193,194,195,195,196,197,197,198,199,200,200,201,202,202,203,204,204,205,206,206,207,208,208,209,210,210,211,212,212,213,214,214,215,216,216,217,218,218,219,220,220,221,222,222,223,223,223,224,225,225,226,227,227,228,228,229,230,230,231,232,232,233,233,234,235,235,236,236,237,238,238,239,239,240,241,241,242,242,243,244,244,245,245,246,246,247,248,248,249,249,250,251,251,252,252,253,253,254,254,255, -+0,5,9,12,16,19,21,24,27,29,31,34,36,38,40,42,44,46,48,50,52,53,55,57,59,60,62,64,65,67,68,70,71,73,74,76,77,79,80,81,83,84,85,87,88,89,91,92,93,94,96,97,98,99,100,103,104,105,106,107,108,110,111,112,113,114,115,116,117,118,119,120,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,137,138,139,140,141,142,143,144,145,146,147,148,148,149,150,151,152,153,154,155,155,156,157,158,159,160,161,161,162,163,164,165,166,166,167,168,169,170,170,171,172,173,174,174,175,176,177,178,178,179,180,180,181,182,183,184,184,185,186,187,187,188,189,190,190,191,192,192,193,194,195,195,196,197,197,198,199,200,200,201,202,202,203,204,204,205,206,206,207,208,208,209,210,210,211,212,212,213,214,214,215,216,216,217,218,218,219,220,220,221,222,222,223,223,223,224,225,225,226,227,227,228,228,229,230,230,231,232,232,233,233,234,235,235,236,236,237,238,238,239,239,240,241,241,242,242,243,244,244,245,245,246,246,247,248,248,249,249,250,251,251,252,252,253,253,254,254,255, -+0,5,9,12,16,19,21,24,27,29,31,34,36,38,40,42,44,46,48,50,52,53,55,57,59,60,62,64,65,67,68,70,71,73,74,76,77,79,80,81,83,84,85,87,88,89,91,92,93,94,96,97,98,99,100,102,103,104,105,106,107,109,110,111,112,113,114,115,116,117,118,119,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,137,138,139,140,141,142,143,144,145,146,147,148,148,149,150,151,152,153,154,155,155,156,157,158,159,160,161,161,162,163,164,165,166,166,167,168,169,170,170,171,172,173,174,174,175,176,177,177,178,179,180,181,181,182,183,184,184,185,186,187,187,188,189,190,190,191,192,192,193,194,195,195,196,197,197,198,199,199,200,201,202,202,203,204,204,205,206,206,207,208,208,209,210,210,211,212,212,212,213,214,214,215,216,216,217,218,218,219,220,220,221,222,222,223,223,224,225,225,226,227,227,228,228,229,230,230,231,232,232,233,233,234,235,235,236,236,237,238,238,239,239,240,241,241,242,242,243,244,244,245,245,246,246,247,248,248,249,249,250,251,251,252,252,253,253,254,254,255, -+0,5,9,12,16,19,21,24,27,29,31,34,36,38,40,42,44,46,48,50,52,53,55,57,59,60,62,64,65,67,68,70,71,73,74,76,77,79,80,81,83,84,85,87,88,89,91,92,93,94,96,97,98,99,100,102,103,104,105,106,107,109,110,111,112,113,114,115,116,117,118,120,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,138,139,140,141,142,143,144,145,146,147,148,148,150,150,151,152,153,154,155,156,156,157,158,159,160,161,161,162,163,164,165,166,166,167,168,169,170,170,171,172,173,174,174,175,176,177,178,178,179,180,181,181,182,183,184,184,185,186,187,187,188,189,190,190,191,192,192,193,194,195,195,196,197,197,198,199,200,200,201,202,202,203,204,204,205,206,206,207,208,208,209,210,210,211,212,212,212,213,214,214,215,216,216,217,218,218,219,220,220,221,222,222,223,223,224,225,225,226,227,227,228,229,229,230,230,231,232,232,233,233,234,235,235,236,236,237,238,238,239,239,240,241,241,242,242,243,244,244,245,245,246,246,247,248,248,249,249,250,251,251,252,252,253,253,254,254,255, -+0,5,9,12,16,19,21,24,27,29,32,34,36,38,40,42,44,46,48,50,52,54,55,57,59,60,62,64,65,67,68,70,71,73,74,76,77,79,80,81,83,84,85,87,88,89,91,92,93,94,96,97,98,99,101,102,103,104,105,106,107,109,110,111,112,113,114,115,116,117,119,120,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,138,139,140,141,142,143,144,145,146,147,148,148,149,150,151,152,153,154,155,156,156,157,158,159,160,161,161,162,163,164,165,166,166,167,168,169,170,170,171,172,173,174,174,175,176,177,178,178,179,180,181,181,182,183,184,184,185,186,187,187,188,189,190,190,191,192,192,193,194,195,195,196,197,197,198,199,200,200,201,202,202,203,204,204,205,206,206,207,208,208,209,210,210,211,212,212,212,213,214,214,215,216,216,217,218,218,219,220,220,221,222,222,223,223,224,225,225,226,227,227,228,228,229,230,230,231,232,232,233,233,234,235,235,236,236,237,238,238,239,239,240,241,241,242,242,243,244,244,245,245,246,246,247,248,248,249,249,250,251,251,252,252,253,253,254,254,255, -+0,5,9,12,16,19,21,24,27,29,32,34,36,38,40,42,44,46,48,50,52,54,55,57,59,60,62,64,65,67,68,70,71,73,74,76,77,79,80,81,83,84,85,87,88,89,91,92,93,94,96,97,98,99,101,102,103,104,105,106,107,109,110,111,112,113,114,115,116,117,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,138,139,140,141,142,143,144,145,146,147,148,149,149,150,151,152,153,154,155,156,156,157,158,159,160,161,161,162,163,164,165,166,166,167,168,169,170,171,171,172,173,174,174,175,176,177,178,178,179,180,181,181,182,183,184,184,185,186,187,187,188,189,190,190,191,192,192,193,194,195,195,196,197,197,198,199,200,200,201,202,202,203,204,204,205,206,206,207,208,208,209,210,210,211,212,212,213,214,214,215,216,216,217,218,218,219,220,220,221,222,222,223,223,224,225,225,226,227,227,228,229,229,230,230,231,232,232,233,233,234,235,235,236,236,237,238,238,239,239,240,241,241,242,242,243,244,244,245,245,246,246,247,248,248,249,249,250,251,251,252,252,253,253,254,254,255, -+0,5,9,12,16,19,21,24,27,29,32,34,36,38,40,42,44,46,48,50,52,54,55,57,59,60,62,64,65,67,68,70,71,73,74,76,77,79,80,81,83,84,85,87,88,89,91,92,93,94,96,97,98,99,101,102,103,104,105,106,108,109,110,111,112,113,114,115,116,117,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,136,138,138,139,140,141,142,143,144,145,146,147,148,149,149,150,151,152,153,154,155,156,156,157,158,159,160,161,161,162,163,164,165,166,166,167,168,169,170,170,171,172,173,174,174,175,176,177,178,178,179,180,181,181,182,183,184,184,185,186,187,187,188,189,190,190,191,192,192,193,194,195,195,196,197,197,198,199,200,200,201,202,202,203,204,204,205,206,206,207,208,209,209,210,210,211,212,212,213,214,214,215,216,216,217,218,218,219,220,220,221,222,222,223,223,224,225,225,226,227,227,228,229,229,230,230,231,232,232,233,233,234,235,235,236,236,237,238,238,239,239,240,241,241,242,242,243,244,244,245,245,246,246,247,248,248,249,249,250,251,251,252,252,253,253,254,254,255, -+0,5,9,12,16,19,21,24,27,29,32,34,36,38,40,42,44,46,48,50,52,54,55,57,59,60,62,64,65,67,68,70,71,73,74,76,77,79,80,81,83,84,86,87,88,89,91,92,93,95,96,97,98,99,101,102,103,104,105,106,108,109,110,111,112,113,114,115,116,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,139,140,141,142,143,144,145,146,147,148,149,150,150,151,152,153,154,155,156,156,157,158,159,160,161,161,162,163,164,165,166,166,167,168,169,170,170,171,172,173,174,174,175,176,177,178,178,179,180,181,181,182,183,184,184,185,186,187,187,188,189,190,190,191,192,192,193,194,195,195,196,197,198,198,199,200,200,201,202,202,203,204,204,205,206,206,207,208,208,209,210,210,211,212,213,213,214,214,215,216,216,217,218,218,219,220,220,221,222,222,223,224,224,225,225,226,227,227,228,229,229,230,230,231,232,232,233,233,234,235,235,236,236,237,238,238,239,239,240,241,241,242,242,243,244,244,245,245,246,247,247,248,248,249,249,250,251,251,252,252,253,253,254,254,255, -+0,5,9,12,16,19,22,24,27,29,32,34,36,38,40,42,44,46,48,50,52,54,55,57,59,60,62,64,65,67,69,70,71,73,74,76,77,79,80,82,83,84,86,87,88,89,91,92,93,94,96,97,98,99,101,102,103,104,105,107,108,109,110,111,112,113,114,115,116,117,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,139,140,141,142,143,144,145,146,147,148,149,149,150,151,152,153,154,155,156,156,157,158,159,160,161,162,162,163,164,165,166,166,167,168,169,170,171,171,172,173,174,174,175,176,177,178,178,179,180,181,181,182,183,184,184,185,186,187,187,188,189,190,190,191,192,193,193,194,195,195,196,197,197,198,199,200,200,201,202,202,203,204,204,205,206,206,207,208,208,209,210,210,211,212,212,213,214,214,215,216,216,217,218,218,219,220,220,221,222,222,223,223,224,225,225,226,227,227,228,229,229,230,230,231,232,232,233,233,234,235,235,236,236,237,238,238,239,239,240,241,241,242,242,243,244,244,245,245,246,247,247,248,248,249,249,250,251,251,252,252,253,253,254,254,255, -+0,5,9,12,16,19,22,24,27,29,32,34,36,38,40,42,44,46,48,50,52,54,55,57,59,60,62,64,65,67,68,70,71,73,74,76,77,79,80,81,83,84,85,87,88,89,91,92,93,94,96,97,98,99,101,102,103,104,105,106,108,109,110,111,112,113,114,115,116,117,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,138,139,140,141,142,143,144,145,146,147,148,149,150,150,151,152,153,154,155,156,157,157,158,159,160,161,162,162,163,164,165,166,166,167,168,169,170,171,171,172,173,174,174,175,176,177,178,178,179,180,181,181,182,183,184,184,185,186,187,187,188,189,190,190,191,192,192,193,194,195,195,196,197,197,198,199,200,200,201,202,202,203,204,204,205,206,207,207,208,209,209,210,210,211,212,213,213,214,214,215,216,216,217,218,218,219,220,220,221,222,222,223,224,224,225,225,226,227,227,228,229,229,230,230,231,232,232,233,233,234,235,235,236,236,237,238,238,239,239,240,241,241,242,242,243,244,244,245,245,246,246,247,248,248,249,249,250,251,251,252,252,253,253,254,254,255, -+0,5,9,12,16,19,21,24,27,29,32,34,36,38,40,42,44,46,48,50,52,54,55,57,59,61,62,64,65,67,68,70,72,73,74,76,77,79,80,81,83,84,86,87,88,89,91,92,93,95,96,97,98,99,101,102,103,104,105,106,108,109,110,111,112,113,114,115,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,139,140,141,142,143,144,145,146,147,148,149,149,150,151,152,153,154,155,156,157,157,158,159,160,161,161,162,163,164,165,166,166,167,168,169,170,170,171,172,173,174,174,175,176,177,178,178,179,180,181,181,182,183,184,184,185,186,187,187,188,189,190,190,191,192,193,193,194,195,195,196,197,197,198,199,200,200,201,202,202,203,204,204,205,206,206,207,208,208,209,210,211,211,212,213,213,214,214,215,216,216,217,218,218,219,220,220,221,222,222,223,223,224,225,225,226,227,227,228,229,229,230,230,231,232,232,233,233,234,235,235,236,236,237,238,238,239,239,240,241,241,242,242,243,244,244,245,245,246,246,247,248,248,249,249,250,251,251,252,252,253,253,254,254,255, -+0,5,9,12,16,19,22,24,27,29,32,34,36,38,40,42,44,46,48,50,52,54,55,57,59,60,62,64,65,67,69,70,72,73,74,76,77,79,80,82,83,84,86,87,88,89,91,92,93,95,96,97,98,99,101,102,103,104,105,107,108,109,110,111,112,113,114,115,116,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,139,140,141,142,143,144,145,146,147,148,149,150,150,151,152,153,154,155,156,157,157,158,159,160,161,162,162,163,164,165,166,167,167,168,169,170,171,171,172,173,174,175,175,176,177,178,178,179,180,181,181,182,183,184,184,185,186,187,187,188,189,190,190,191,192,192,193,194,195,195,196,197,197,198,199,200,200,201,202,202,203,204,204,205,206,206,207,208,208,209,210,211,211,212,213,213,214,214,215,216,216,217,218,218,219,220,220,221,222,222,223,224,224,225,225,226,227,227,228,229,229,230,230,231,232,232,233,233,234,235,235,236,236,237,238,238,239,239,240,241,241,242,242,243,244,244,245,245,246,246,247,248,248,249,249,250,251,251,252,252,253,253,254,254,255, -+0,5,9,12,16,19,22,24,27,29,32,34,36,38,40,42,44,46,48,50,52,54,55,57,59,60,62,64,65,67,68,70,71,73,74,76,77,79,80,82,83,84,86,87,88,90,91,92,93,95,96,97,98,99,101,102,103,104,105,107,108,109,110,111,112,113,114,115,116,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,138,140,140,141,142,143,144,145,146,147,148,149,150,150,151,152,153,154,155,156,157,157,158,159,160,161,162,162,163,164,165,166,166,167,168,169,170,171,171,172,173,174,175,175,176,177,178,178,179,180,181,181,182,183,184,184,185,186,187,187,188,189,190,190,191,192,192,193,194,195,195,196,197,198,198,199,200,200,201,202,202,203,204,204,205,206,207,207,208,209,209,210,211,211,212,213,213,214,215,215,216,216,217,218,218,219,220,220,221,222,222,223,224,224,225,225,226,227,227,228,229,229,230,230,231,232,232,233,233,234,235,235,236,236,237,238,238,239,239,240,241,241,242,242,243,244,244,245,245,246,246,247,248,248,249,249,250,251,251,252,252,253,253,254,254,255, -+0,5,9,13,16,19,22,24,27,29,32,34,36,38,40,42,44,46,48,50,52,54,56,57,59,60,62,64,65,67,69,70,72,73,74,76,77,79,80,81,83,84,86,87,88,90,91,92,93,95,96,97,98,100,101,102,103,104,105,107,108,109,110,111,112,113,114,115,116,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,139,140,141,142,143,144,145,146,147,148,149,150,150,151,152,153,154,155,156,157,157,158,159,160,161,162,162,163,164,165,166,167,167,168,169,170,171,171,172,173,174,175,175,176,177,178,178,179,180,181,181,182,183,184,184,185,186,187,187,188,189,190,190,191,192,192,193,194,195,195,196,197,198,198,199,200,200,201,202,202,203,204,204,205,206,207,207,208,209,209,210,211,211,212,213,213,214,215,215,216,216,217,218,218,219,220,220,221,222,222,223,224,224,225,225,226,227,227,228,229,229,230,230,231,232,232,233,233,234,235,235,236,236,237,238,238,239,239,240,241,241,242,242,243,244,244,245,245,246,247,247,248,248,249,249,250,251,251,252,252,253,253,254,254,255, -+0,5,9,12,16,19,22,24,27,29,32,34,36,38,40,42,44,46,48,50,52,54,55,57,59,61,62,64,65,67,68,70,72,73,75,76,77,79,80,82,83,84,86,87,88,89,91,92,93,95,96,97,98,100,101,102,103,104,105,107,108,109,110,111,112,113,114,115,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,141,142,143,144,145,146,147,148,149,150,151,151,152,153,154,155,156,157,157,158,159,160,161,162,162,163,164,165,166,167,167,168,169,170,171,171,172,173,174,175,175,176,177,178,178,179,180,181,181,182,183,184,184,185,186,187,187,188,189,190,190,191,192,193,193,194,195,195,196,197,198,198,199,200,200,201,202,202,203,204,204,205,206,207,207,208,209,209,210,211,211,212,213,213,214,215,215,216,216,217,218,218,219,220,220,221,222,222,223,224,224,225,225,226,227,227,228,229,229,230,230,231,232,232,233,233,234,235,235,236,236,237,238,238,239,239,240,241,241,242,242,243,244,244,245,245,246,246,247,248,248,249,249,250,251,251,252,252,253,253,254,254,255, -+0,5,9,13,16,19,22,24,27,29,32,34,36,38,40,42,44,46,48,50,52,54,55,57,59,61,62,64,65,67,68,70,72,73,74,76,77,79,80,82,83,84,86,87,88,90,91,92,93,95,96,97,98,100,101,102,103,104,105,107,108,109,110,111,112,113,114,115,116,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,140,141,142,143,144,145,146,147,148,149,150,150,151,152,153,154,155,156,156,157,158,159,160,161,162,162,163,164,165,166,167,167,168,169,170,171,171,172,173,174,175,175,176,177,178,178,179,180,181,181,182,183,184,184,185,186,187,187,188,189,190,190,191,192,193,193,194,195,195,196,197,198,198,199,200,200,201,202,202,203,204,204,205,206,207,207,208,209,209,210,211,211,212,213,213,214,214,215,216,216,217,218,218,219,220,220,221,222,222,223,224,224,225,225,226,227,227,228,229,229,230,230,231,232,232,233,233,234,235,235,236,236,237,238,238,239,239,240,241,241,242,242,243,244,244,245,245,246,246,247,248,248,249,249,250,251,251,252,252,253,253,254,254,255, -+0,5,9,13,16,19,22,24,27,29,32,34,36,38,40,42,44,46,48,50,52,54,55,57,59,61,62,64,65,67,69,70,71,73,75,76,77,79,80,82,83,84,86,87,88,90,91,92,94,95,96,97,98,100,101,102,103,104,105,107,108,109,110,111,112,113,114,115,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,140,141,142,143,144,145,146,147,148,149,150,151,151,152,153,154,155,156,157,157,158,159,160,161,162,162,163,164,165,166,167,167,168,169,170,171,171,172,173,174,175,175,176,177,178,178,179,180,181,181,182,183,184,184,185,186,187,187,188,189,190,190,191,192,193,193,194,195,195,196,197,198,198,199,200,200,201,202,202,203,204,204,205,206,207,207,208,209,209,210,211,211,212,213,213,214,215,215,216,216,217,218,218,219,220,220,221,222,222,223,224,224,225,225,226,227,227,228,229,229,230,230,231,232,232,233,233,234,235,235,236,236,237,238,238,239,239,240,241,241,242,242,243,244,244,245,245,246,247,247,248,248,249,249,250,251,251,252,252,253,253,254,254,255, -+0,5,9,13,16,19,22,24,27,29,32,34,36,38,40,42,44,46,48,50,52,54,56,57,59,61,62,64,65,67,69,70,72,73,75,76,77,79,80,82,83,84,86,87,88,90,91,92,93,95,96,97,98,100,101,102,103,104,105,107,108,109,110,111,112,113,114,115,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,140,141,142,143,144,145,146,147,148,149,150,150,151,152,153,154,155,156,157,157,158,159,160,161,162,163,163,164,165,166,167,167,168,169,170,171,171,172,173,174,175,175,176,177,178,178,179,180,181,181,182,183,184,184,185,186,187,187,188,189,190,190,191,192,193,193,194,195,195,196,197,198,198,199,200,200,201,202,202,203,204,205,205,206,207,207,208,209,209,210,211,211,212,213,213,214,215,215,216,216,217,218,218,219,220,220,221,222,222,223,224,224,225,225,226,227,227,228,229,229,230,230,231,232,232,233,233,234,235,235,236,236,237,238,238,239,239,240,241,241,242,242,243,244,244,245,245,246,247,247,248,248,249,249,250,251,251,252,252,253,253,254,254,255, -+}; -+ - typedef struct glyph_metrics_t glyph_metrics_t; - typedef struct glyph_t glyph_t; -@@ -407,94 +665,8 @@ - const pixman_glyph_t *glyphs) - { -- pixman_region32_t region; -- pixman_format_code_t glyph_format = PIXMAN_null; -- uint32_t glyph_flags = 0; -- pixman_format_code_t dest_format; -- uint32_t dest_flags; -- pixman_composite_func_t func = NULL; -- pixman_implementation_t *implementation = NULL; -- pixman_composite_info_t info; -- int i; -- -- _pixman_image_validate (src); -- _pixman_image_validate (dest); -- -- dest_format = dest->common.extended_format_code; -- dest_flags = dest->common.flags; -- -- pixman_region32_init (®ion); -- if (!_pixman_compute_composite_region32 ( -- ®ion, -- src, NULL, dest, -- src_x - dest_x, src_y - dest_y, 0, 0, 0, 0, -- dest->bits.width, dest->bits.height)) -- { -- goto out; -- } -- -- info.op = op; -- info.src_image = src; -- info.dest_image = dest; -- info.src_flags = src->common.flags; -- info.dest_flags = dest->common.flags; -- -- for (i = 0; i < n_glyphs; ++i) -- { -- glyph_t *glyph = (glyph_t *)glyphs[i].glyph; -- pixman_image_t *glyph_img = glyph->image; -- pixman_box32_t glyph_box; -- pixman_box32_t *pbox; -- uint32_t extra = FAST_PATH_SAMPLES_COVER_CLIP_NEAREST; -- pixman_box32_t composite_box; -- int n; -- -- glyph_box.x1 = dest_x + glyphs[i].x - glyph->origin_x; -- glyph_box.y1 = dest_y + glyphs[i].y - glyph->origin_y; -- glyph_box.x2 = glyph_box.x1 + glyph->image->bits.width; -- glyph_box.y2 = glyph_box.y1 + glyph->image->bits.height; -- -- pbox = pixman_region32_rectangles (®ion, &n); -- -- info.mask_image = glyph_img; -- -- while (n--) -- { -- if (box32_intersect (&composite_box, pbox, &glyph_box)) -- { -- if (glyph_img->common.extended_format_code != glyph_format || -- glyph_img->common.flags != glyph_flags) -- { -- glyph_format = glyph_img->common.extended_format_code; -- glyph_flags = glyph_img->common.flags; -- -- _pixman_implementation_lookup_composite ( -- get_implementation(), op, -- src->common.extended_format_code, src->common.flags, -- glyph_format, glyph_flags | extra, -- dest_format, dest_flags, -- &implementation, &func); -- } -- -- info.src_x = src_x + composite_box.x1 - dest_x; -- info.src_y = src_y + composite_box.y1 - dest_y; -- info.mask_x = composite_box.x1 - (dest_x + glyphs[i].x - glyph->origin_x); -- info.mask_y = composite_box.y1 - (dest_y + glyphs[i].y - glyph->origin_y); -- info.dest_x = composite_box.x1; -- info.dest_y = composite_box.y1; -- info.width = composite_box.x2 - composite_box.x1; -- info.height = composite_box.y2 - composite_box.y1; -- -- info.mask_flags = glyph_flags; -- -- func (implementation, &info); -- } -- -- pbox++; -- } -- pixman_list_move_to_front (&cache->mru, &glyph->mru_link); -- } -- --out: -- pixman_region32_fini (®ion); -+ int f = pixman_glyph_get_mask_format(cache, n_glyphs, glyphs); -+ int w = pixman_image_get_width(dest); -+ int h = pixman_image_get_height(dest); -+ pixman_composite_glyphs(op, src, dest, f, src_x, src_y, 0, 0, dest_x, dest_y, w, h, cache, n_glyphs, glyphs); - } - -@@ -618,4 +790,9 @@ - } - -+static unsigned char -+alpha_correct(unsigned char a, unsigned char foreground) { -+ return actable[(foreground << 8) | a]; -+} -+ - /* Conceptually, for each glyph, (white IN glyph) is PIXMAN_OP_ADDed to an - * infinitely big mask image at the position such that the glyph origin point -@@ -667,4 +844,29 @@ - add_glyphs (cache, mask, - mask_x, - mask_y, n_glyphs, glyphs); - -+ /* Can we do alpha correction? */ -+ if (op == PIXMAN_OP_OVER && src->type == SOLID) { -+ /* FIXME: are src->solid values premultiplied? */ -+ unsigned char fg_r = src->solid.color.red >> 8; -+ unsigned char fg_g = src->solid.color.green >> 8; -+ unsigned char fg_b = src->solid.color.blue >> 8; -+ -+ unsigned int *mdata = pixman_image_get_data(mask); -+ int mheight = pixman_image_get_height(mask); -+ int mstride = pixman_image_get_stride(mask) >> 2; -+ int y; -+ for (y = 0; y < mheight; y ++) { -+ int x; -+ for (x = 0; x < mstride; x ++) { -+ unsigned int pc = mdata[y * mstride + x]; -+ /* for alpha, use green as stand-in for intensity */ -+ unsigned char a = alpha_correct(pc >> 24, fg_g); -+ unsigned char r = alpha_correct(pc >> 16, fg_r); -+ unsigned char g = alpha_correct(pc >> 8, fg_g); -+ unsigned char b = alpha_correct(pc, fg_b); -+ mdata[y * mstride + x] = (a << 24) | (r << 16) | (g << 8) | b; -+ } -+ } -+ } -+ - pixman_image_composite32 (op, src, mask, dest, - src_x, src_y, - diff --git a/runtime-optenv32/pixman+32/spec b/runtime-optenv32/pixman+32/spec index dff7fb009a7..0d47ec0e17e 100644 --- a/runtime-optenv32/pixman+32/spec +++ b/runtime-optenv32/pixman+32/spec @@ -1,4 +1,4 @@ -VER=0.40.0 +VER=0.43.0 SRCS="tbl::https://cairographics.org/releases/pixman-$VER.tar.gz" -CHKSUMS="sha256::6d200dec3740d9ec4ec8d1180e25779c00bc749f94278c8b9021f5534db223fc" +CHKSUMS="sha256::a65c28209858fb16bee50d809c80f90a8e415c0e4fd8321078a1822785a5560a" CHKUPDATE="anitya::id=3648" From f9b125d4112bc8c015af3fc5f983c22788436e41 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 17:55:30 +0800 Subject: [PATCH 193/722] libdrm+32: improve packaging - Use optenv32 template and devel-base+32 build dep. - Add cairo+32 dep. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libdrm+32/autobuild/defines | 15 +++++++++------ runtime-optenv32/libdrm+32/spec | 1 + 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/runtime-optenv32/libdrm+32/autobuild/defines b/runtime-optenv32/libdrm+32/autobuild/defines index 6318fcab821..31694c76659 100644 --- a/runtime-optenv32/libdrm+32/autobuild/defines +++ b/runtime-optenv32/libdrm+32/autobuild/defines @@ -1,11 +1,14 @@ PKGNAME=libdrm+32 -PKGDES="Direct Rendering Manager runtime library (optenv32)" -PKGDEP="x11-lib+32" -BUILDDEP="32subsystem" PKGSEC=x11 +PKGDEP="cairo+32 x11-lib+32" +BUILDDEP="devel-base+32" +PKGDES="Direct Rendering Manager runtime library (32-bit x86 runtime)" +NOLTO=1 ABHOST=optenv32 ABTYPE=meson -MESON_AFTER="-Dudev=true \ - -Dintel=enabled \ - -Dvalgrind=disabled" +MESON_AFTER=( + '-Dudev=true' + '-Dintel=enabled' + '-Dvalgrind=disabled' +) diff --git a/runtime-optenv32/libdrm+32/spec b/runtime-optenv32/libdrm+32/spec index 35633a116f9..51066698862 100644 --- a/runtime-optenv32/libdrm+32/spec +++ b/runtime-optenv32/libdrm+32/spec @@ -1,4 +1,5 @@ VER=2.4.123 +REL=1 SRCS="tbl::https://dri.freedesktop.org/libdrm/libdrm-$VER.tar.xz" CHKSUMS="sha256::a2b98567a149a74b0f50e91e825f9c0315d86e7be9b74394dae8b298caadb79e" CHKUPDATE="anitya::id=1596" From 1787f1633fdc740363ec4bc1efce7cff2082e556 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 17:57:51 +0800 Subject: [PATCH 194/722] speex+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/speex+32/autobuild/build | 12 ------------ runtime-optenv32/speex+32/autobuild/defines | 10 ++++++---- runtime-optenv32/speex+32/spec | 2 +- 3 files changed, 7 insertions(+), 17 deletions(-) delete mode 100644 runtime-optenv32/speex+32/autobuild/build diff --git a/runtime-optenv32/speex+32/autobuild/build b/runtime-optenv32/speex+32/autobuild/build deleted file mode 100644 index ba31af99ffe..00000000000 --- a/runtime-optenv32/speex+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -./configure --prefix=/opt/32 \ - --sysconfdir=/etc --localstatedir=/var \ - --disable-static \ - CC=i686-pc-linux-gnu-gcc CXX=i686-pc-linux-gnu-g++ \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig - -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/speex+32/autobuild/defines b/runtime-optenv32/speex+32/autobuild/defines index 519cc291c8b..4a67feed26c 100644 --- a/runtime-optenv32/speex+32/autobuild/defines +++ b/runtime-optenv32/speex+32/autobuild/defines @@ -1,8 +1,10 @@ PKGNAME=speex+32 -PKGDES="An audio compression format designed especially for speech (optenv32)" -PKGDEP="libogg+32" PKGSEC=libs +PKGDEP="libogg+32" +BUILDDEP="devel-base+32" +PKGDES="An audio compression format designed especially for speech (32-bit x86 runtime)" -NOLTO=1 PKGEPOCH=1 -ABHOST=noarch + +NOLTO=1 +ABHOST=optenv32 diff --git a/runtime-optenv32/speex+32/spec b/runtime-optenv32/speex+32/spec index fc01e4f54c5..590c57995f4 100644 --- a/runtime-optenv32/speex+32/spec +++ b/runtime-optenv32/speex+32/spec @@ -1,5 +1,5 @@ VER=1.2.0 +REL=3 SRCS="tbl::https://downloads.us.xiph.org/releases/speex/speex-$VER.tar.gz" CHKSUMS="sha256::eaae8af0ac742dc7d542c9439ac72f1f385ce838392dc849cae4536af9210094" -REL=2 CHKUPDATE="anitya::id=14498" From 620c07a533c05685a76f8dc1124ad81a7d97aaf6 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 17:59:37 +0800 Subject: [PATCH 195/722] json-c+32: update to 0.16 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/json-c+32/autobuild/build | 9 -- runtime-optenv32/json-c+32/autobuild/defines | 9 +- .../autobuild/patches/CVE-2020-12762-1.patch | 29 ------- .../autobuild/patches/CVE-2020-12762-2.patch | 32 ------- .../autobuild/patches/CVE-2020-12762-3.patch | 86 ------------------- runtime-optenv32/json-c+32/autobuild/prepare | 2 - runtime-optenv32/json-c+32/spec | 5 +- 7 files changed, 7 insertions(+), 165 deletions(-) delete mode 100644 runtime-optenv32/json-c+32/autobuild/build delete mode 100644 runtime-optenv32/json-c+32/autobuild/patches/CVE-2020-12762-1.patch delete mode 100644 runtime-optenv32/json-c+32/autobuild/patches/CVE-2020-12762-2.patch delete mode 100644 runtime-optenv32/json-c+32/autobuild/patches/CVE-2020-12762-3.patch delete mode 100644 runtime-optenv32/json-c+32/autobuild/prepare diff --git a/runtime-optenv32/json-c+32/autobuild/build b/runtime-optenv32/json-c+32/autobuild/build deleted file mode 100644 index 7a7a9b90230..00000000000 --- a/runtime-optenv32/json-c+32/autobuild/build +++ /dev/null @@ -1,9 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --prefix=/opt/32 --disable-static \ - --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu --host=i686-pc-linux-gnu \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" diff --git a/runtime-optenv32/json-c+32/autobuild/defines b/runtime-optenv32/json-c+32/autobuild/defines index bad5b8d5068..aa4ffde2b00 100644 --- a/runtime-optenv32/json-c+32/autobuild/defines +++ b/runtime-optenv32/json-c+32/autobuild/defines @@ -1,7 +1,8 @@ PKGNAME=json-c+32 -PKGDES="A JSON implementation in C" PKGSEC=libs -PKGDEP=glibc+32 -BUILDDEP="32subsystem" +PKGDEP="glibc+32" +BUILDDEP="devel-base+32" +PKGDES="A JSON implementation in C (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/json-c+32/autobuild/patches/CVE-2020-12762-1.patch b/runtime-optenv32/json-c+32/autobuild/patches/CVE-2020-12762-1.patch deleted file mode 100644 index 1f642106b9e..00000000000 --- a/runtime-optenv32/json-c+32/autobuild/patches/CVE-2020-12762-1.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 099016b7e8d70a6d5dd814e788bba08d33d48426 Mon Sep 17 00:00:00 2001 -From: Tobias Stoeckmann -Date: Mon, 4 May 2020 19:41:16 +0200 -Subject: [PATCH] Protect array_list_del_idx against size_t overflow. - -If the assignment of stop overflows due to idx and count being -larger than SIZE_T_MAX in sum, out of boundary access could happen. - -It takes invalid usage of this function for this to happen, but -I decided to add this check so array_list_del_idx is as safe against -bad usage as the other arraylist functions. ---- - arraylist.c | 3 +++ - 1 file changed, 3 insertions(+) - -Index: json-c-0.13.1+dfsg/arraylist.c -=================================================================== ---- json-c-0.13.1+dfsg.orig/arraylist.c -+++ json-c-0.13.1+dfsg/arraylist.c -@@ -135,6 +135,9 @@ array_list_del_idx( struct array_list *a - { - size_t i, stop; - -+ /* Avoid overflow in calculation with large indices. */ -+ if (idx > SIZE_T_MAX - count) -+ return -1; - stop = idx + count; - if ( idx >= arr->length || stop > arr->length ) return -1; - for ( i = idx; i < stop; ++i ) { diff --git a/runtime-optenv32/json-c+32/autobuild/patches/CVE-2020-12762-2.patch b/runtime-optenv32/json-c+32/autobuild/patches/CVE-2020-12762-2.patch deleted file mode 100644 index c6e812560fc..00000000000 --- a/runtime-optenv32/json-c+32/autobuild/patches/CVE-2020-12762-2.patch +++ /dev/null @@ -1,32 +0,0 @@ -Backported of: - -From 77d935b7ae7871a1940cd827e850e6063044ec45 Mon Sep 17 00:00:00 2001 -From: Tobias Stoeckmann -Date: Mon, 4 May 2020 19:46:45 +0200 -Subject: [PATCH] Prevent division by zero in linkhash. - -If a linkhash with a size of zero is created, then modulo operations -are prone to division by zero operations. - -Purely protective measure against bad usage. -diff --git a/linkhash.c b/linkhash.c -index 5497061..c48c8d6 100644 ---- a/linkhash.c -+++ b/linkhash.c -@@ -12,6 +12,7 @@ - - #include "config.h" - -+#include - #include - #include - #include -@@ -498,6 +499,8 @@ struct lh_table* lh_table_new(int size, - int i; - struct lh_table *t; - -+ /* Allocate space for elements to avoid divisions by zero. */ -+ assert(size > 0); - t = (struct lh_table*)calloc(1, sizeof(struct lh_table)); - if (!t) - return NULL; diff --git a/runtime-optenv32/json-c+32/autobuild/patches/CVE-2020-12762-3.patch b/runtime-optenv32/json-c+32/autobuild/patches/CVE-2020-12762-3.patch deleted file mode 100644 index 2eaf66c9cfc..00000000000 --- a/runtime-optenv32/json-c+32/autobuild/patches/CVE-2020-12762-3.patch +++ /dev/null @@ -1,86 +0,0 @@ -Backported of: - -From d07b91014986900a3a75f306d302e13e005e9d67 Mon Sep 17 00:00:00 2001 -From: Tobias Stoeckmann -Date: Mon, 4 May 2020 19:47:25 +0200 -Subject: [PATCH] Fix integer overflows. - -The data structures linkhash and printbuf are limited to 2 GB in size -due to a signed integer being used to track their current size. - -If too much data is added, then size variable can overflow, which is -an undefined behaviour in C programming language. - -Assuming that a signed int overflow just leads to a negative value, -like it happens on many sytems (Linux i686/amd64 with gcc), then -printbuf is vulnerable to an out of boundary write on 64 bit systems. -diff --git a/linkhash.c b/linkhash.c -index c48c8d6..e924d7f 100644 ---- a/linkhash.c -+++ b/linkhash.c -@@ -579,9 +579,12 @@ int lh_table_insert_w_hash(struct lh_table *t, const void *k, const void *v, con - { - unsigned long n; - -- if (t->count >= t->size * LH_LOAD_FACTOR) -- if (lh_table_resize(t, t->size * 2) != 0) -+ if (t->count >= t->size * LH_LOAD_FACTOR) { -+ /* Avoid signed integer overflow with large tables. */ -+ int new_size = INT_MAX / 2 < t->size ? t->size * 2 : INT_MAX; -+ if (t->size == INT_MAX || lh_table_resize(t, new_size) != 0) - return -1; -+ } - - n = h % t->size; - -diff --git a/printbuf.c b/printbuf.c -index 6c77b5d..a8bb42e 100644 ---- a/printbuf.c -+++ b/printbuf.c -@@ -15,6 +15,7 @@ - - #include "config.h" - -+#include - #include - #include - #include -@@ -65,9 +66,16 @@ static int printbuf_extend(struct printbuf *p, int min_size) - if (p->size >= min_size) - return 0; - -- new_size = p->size * 2; -- if (new_size < min_size + 8) -+ /* Prevent signed integer overflows with large buffers. */ -+ if (min_size > INT_MAX - 8) -+ return -1; -+ if (p->size > INT_MAX / 2) - new_size = min_size + 8; -+ else { -+ new_size = p->size * 2; -+ if (new_size < min_size + 8) -+ new_size = min_size + 8; -+ } - #ifdef PRINTBUF_DEBUG - MC_DEBUG("printbuf_memappend: realloc " - "bpos=%d min_size=%d old_size=%d new_size=%d\n", -@@ -82,6 +90,9 @@ static int printbuf_extend(struct printbuf *p, int min_size) - - int printbuf_memappend(struct printbuf *p, const char *buf, int size) - { -+ /* Prevent signed integer overflows with large buffers. */ -+ if (size > INT_MAX - p->bpos - 1) -+ return -1; - if (p->size <= p->bpos + size + 1) { - if (printbuf_extend(p, p->bpos + size + 1) < 0) - return -1; -@@ -98,6 +109,9 @@ int printbuf_memset(struct printbuf *pb, int offset, int charvalue, int len) - - if (offset == -1) - offset = pb->bpos; -+ /* Prevent signed integer overflows with large buffers. */ -+ if (len > INT_MAX - offset) -+ return -1; - size_needed = offset + len; - if (pb->size < size_needed) - { diff --git a/runtime-optenv32/json-c+32/autobuild/prepare b/runtime-optenv32/json-c+32/autobuild/prepare deleted file mode 100644 index d5b38ebb8ef..00000000000 --- a/runtime-optenv32/json-c+32/autobuild/prepare +++ /dev/null @@ -1,2 +0,0 @@ -abinfo "Regenerating autotools scripts ..." -autoreconf -fvi diff --git a/runtime-optenv32/json-c+32/spec b/runtime-optenv32/json-c+32/spec index c2dbcc98a20..84cb79c33a8 100644 --- a/runtime-optenv32/json-c+32/spec +++ b/runtime-optenv32/json-c+32/spec @@ -1,5 +1,4 @@ -VER=0.13.1+20180305 -REL=2 +VER=0.16 SRCS="tbl::https://github.com/json-c/json-c/archive/json-c-${VER/+/-}.tar.gz" -CHKSUMS="sha256::5d867baeb7f540abe8f3265ac18ed7a24f91fe3c5f4fd99ac3caba0708511b90" +CHKSUMS="sha256::c169436bd63a30fce4f9560befccb6bad3d375c8c7e9905ceb4e1f28f2cb24f7" CHKUPDATE="anitya::id=1477" From bac24754a20e4cf014b469a6836155c154153a4b Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 18:01:34 +0800 Subject: [PATCH 196/722] libvorbis+32: improve PKGDES - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libvorbis+32/autobuild/build | 8 -------- runtime-optenv32/libvorbis+32/autobuild/defines | 7 ++++--- runtime-optenv32/libvorbis+32/spec | 1 + 3 files changed, 5 insertions(+), 11 deletions(-) delete mode 100644 runtime-optenv32/libvorbis+32/autobuild/build diff --git a/runtime-optenv32/libvorbis+32/autobuild/build b/runtime-optenv32/libvorbis+32/autobuild/build deleted file mode 100644 index cefbc20c7d9..00000000000 --- a/runtime-optenv32/libvorbis+32/autobuild/build +++ /dev/null @@ -1,8 +0,0 @@ -export PATH=/opt/32/bin:$PATH -./configure --prefix=/opt/32 --disable-static \ - CC=i686-pc-linux-gnu-gcc \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR=$PKGDIR - -rm -rf $PKGDIR/opt/32/share diff --git a/runtime-optenv32/libvorbis+32/autobuild/defines b/runtime-optenv32/libvorbis+32/autobuild/defines index 8eb0040975d..b696e39717d 100644 --- a/runtime-optenv32/libvorbis+32/autobuild/defines +++ b/runtime-optenv32/libvorbis+32/autobuild/defines @@ -1,7 +1,8 @@ PKGNAME=libvorbis+32 -PKGDES="Vorbis codec library (optenv32)" PKGSEC=libs PKGDEP="libogg+32" -BUILDDEP="32subsystem" +BUILDDEP="devel-base+32" +PKGDES="Vorbis codec library (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libvorbis+32/spec b/runtime-optenv32/libvorbis+32/spec index a702890f8d4..3bd3d84bc90 100644 --- a/runtime-optenv32/libvorbis+32/spec +++ b/runtime-optenv32/libvorbis+32/spec @@ -1,4 +1,5 @@ VER=1.3.7 +REL=1 SRCS="tbl::https://downloads.xiph.org/releases/vorbis/libvorbis-$VER.tar.xz" CHKSUMS="sha256::b33cc4934322bcbf6efcbacf49e3ca01aadbea4114ec9589d1b1e9d20f72954b" CHKUPDATE="anitya::id=1758" From d551876f90794bcc463b76f6d0b6a6d9374d3182 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 21:55:21 +0800 Subject: [PATCH 197/722] libogg+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libogg+32/autobuild/build | 7 ------- runtime-optenv32/libogg+32/autobuild/defines | 9 +++++---- runtime-optenv32/libogg+32/spec | 2 +- 3 files changed, 6 insertions(+), 12 deletions(-) delete mode 100644 runtime-optenv32/libogg+32/autobuild/build diff --git a/runtime-optenv32/libogg+32/autobuild/build b/runtime-optenv32/libogg+32/autobuild/build deleted file mode 100644 index 2ffbfcaf1ea..00000000000 --- a/runtime-optenv32/libogg+32/autobuild/build +++ /dev/null @@ -1,7 +0,0 @@ -export PATH=/opt/32/bin:$PATH -./configure --prefix=/opt/32 \ - CC=i686-pc-linux-gnu-gcc CXX=i686-pc-linux-gnu-g++ -make -make install DESTDIR=$PKGDIR - -rm -rf $PKGDIR/opt/32/share diff --git a/runtime-optenv32/libogg+32/autobuild/defines b/runtime-optenv32/libogg+32/autobuild/defines index 5b5d77f4ca6..e008047d4e2 100644 --- a/runtime-optenv32/libogg+32/autobuild/defines +++ b/runtime-optenv32/libogg+32/autobuild/defines @@ -1,7 +1,8 @@ PKGNAME=libogg+32 -PKGDES="Ogg analyzing library for 32Subsystem" -PKGDEP=glibc+32 -BUILDDEP="32subsystem" PKGSEC=libs +PKGDEP="glibc+32" +BUILDDEP="devel-base+32" +PKGDES="Ogg analyzing library (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libogg+32/spec b/runtime-optenv32/libogg+32/spec index 659cbb2d410..47f0c6a1071 100644 --- a/runtime-optenv32/libogg+32/spec +++ b/runtime-optenv32/libogg+32/spec @@ -1,5 +1,5 @@ VER=1.3.4 +REL=2 SRCS="tbl::https://downloads.xiph.org/releases/ogg/libogg-$VER.tar.xz" CHKSUMS="sha256::c163bc12bc300c401b6aa35907ac682671ea376f13ae0969a220f7ddf71893fe" -REL=1 CHKUPDATE="anitya::id=1694" From ebefa423fa37ab117430d90471d1471d84f6f623 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 1 Jan 2025 21:58:38 +0800 Subject: [PATCH 198/722] flac+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/flac+32/autobuild/build | 14 -------------- runtime-optenv32/flac+32/autobuild/defines | 8 ++++---- runtime-optenv32/flac+32/spec | 1 + 3 files changed, 5 insertions(+), 18 deletions(-) delete mode 100644 runtime-optenv32/flac+32/autobuild/build diff --git a/runtime-optenv32/flac+32/autobuild/build b/runtime-optenv32/flac+32/autobuild/build deleted file mode 100644 index 4f77d00f2d6..00000000000 --- a/runtime-optenv32/flac+32/autobuild/build +++ /dev/null @@ -1,14 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -./configure --prefix=/opt/32 \ - --enable-shared \ - --host=i686-aosc-linux-gnu \ - --build=i686-aosc-linux-gnu \ - --target=i686-aosc-linux-gnu \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig \ - CC=/opt/32/bin/gcc \ - CXX=/opt/32/bin/g++ -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{share,bin} diff --git a/runtime-optenv32/flac+32/autobuild/defines b/runtime-optenv32/flac+32/autobuild/defines index 10915dd9051..f8cfeda6406 100644 --- a/runtime-optenv32/flac+32/autobuild/defines +++ b/runtime-optenv32/flac+32/autobuild/defines @@ -1,11 +1,11 @@ PKGNAME=flac+32 -PKGDES="FLAC analyzing library" PKGSEC=libs PKGDEP="libogg+32" -BUILDDEP="32subsystem" +BUILDDEP="devel-base+32" +PKGDES="FLAC analyzing library (32-bit x86 runtime)" + PKGBREAK="gst-plugins-good-1-0+32<=1.16.2-1 libsndfile+32<=1.2.0 \ sdl-sound+32<=1.0.3-2" -ABSHADOW=no NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/flac+32/spec b/runtime-optenv32/flac+32/spec index 22771dc9322..805d8fb9274 100644 --- a/runtime-optenv32/flac+32/spec +++ b/runtime-optenv32/flac+32/spec @@ -1,4 +1,5 @@ VER=1.4.3 +REL=1 SRCS="tbl::https://downloads.xiph.org/releases/flac/flac-$VER.tar.xz" CHKSUMS="sha256::6c58e69cd22348f441b861092b825e591d0b822e106de6eb0ee4d05d27205b70" CHKUPDATE="anitya::id=817" From 619a080c4604c18c078a7e337da355676ad22c3f Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 2 Jan 2025 12:11:54 +0800 Subject: [PATCH 199/722] libcap+32: update to 2.69 - Use optenv32 template. - Lint build script in accordance with the Styling Manual. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libcap+32/autobuild/build | 23 ++++++++++---------- runtime-optenv32/libcap+32/autobuild/defines | 7 +++--- runtime-optenv32/libcap+32/autobuild/prepare | 4 ---- runtime-optenv32/libcap+32/spec | 4 ++-- 4 files changed, 17 insertions(+), 21 deletions(-) delete mode 100644 runtime-optenv32/libcap+32/autobuild/prepare diff --git a/runtime-optenv32/libcap+32/autobuild/build b/runtime-optenv32/libcap+32/autobuild/build index f6e9782ced6..a284b4159a5 100644 --- a/runtime-optenv32/libcap+32/autobuild/build +++ b/runtime-optenv32/libcap+32/autobuild/build @@ -1,12 +1,13 @@ -export PATH=/opt/32/bin:$PATH -CC=i686-pc-linux-gnu-gcc -CXX=i686-pc-linux-gnu-g++ -PKG_CONFIG_PATH="/opt/32/lib/pkgconfig:/usr/lib/pkgconfig" +abinfo "Building libcap+32 ..." +make \ + PAM_CAP=no \ + GOLANG=no -make PAM_CAP=no GOLANG=no -make prefix=/opt/32 lib=lib RAISE_SETFCAP=no \ - PAM_CAP=no GOLANG=no DESTDIR="$PKGDIR" install - -chmod 755 "$PKGDIR"/opt/32/lib/*.so* - -rm -rf "$PKGDIR"/opt/32/{sbin,share} +abinfo "Installing libcap+32 ..." +make install \ + prefix=/opt/32 \ + lib=lib \ + RAISE_SETFCAP=no \ + PAM_CAP=no \ + GOLANG=no \ + DESTDIR="$PKGDIR" diff --git a/runtime-optenv32/libcap+32/autobuild/defines b/runtime-optenv32/libcap+32/autobuild/defines index e8c19bf7e2d..cc6059c7668 100644 --- a/runtime-optenv32/libcap+32/autobuild/defines +++ b/runtime-optenv32/libcap+32/autobuild/defines @@ -1,9 +1,8 @@ PKGNAME=libcap+32 PKGSEC=libs -PKGDES="POSIX 1003.1e capabilities (optenv32)" PKGDEP="attr+32 glibc+32" -BUILDDEP="32subsystem" +BUILDDEP="devel-base+32" +PKGDES="POSIX 1003.1e capabilities (32-bit x86 runtime)" NOLTO=1 -NOPARALLEL=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libcap+32/autobuild/prepare b/runtime-optenv32/libcap+32/autobuild/prepare deleted file mode 100644 index 85ff934807b..00000000000 --- a/runtime-optenv32/libcap+32/autobuild/prepare +++ /dev/null @@ -1,4 +0,0 @@ -abinfo "(Arch Linux) use distribution build flags..." -sed -e "s/CFLAGS :=/CFLAGS += \$(CPPFLAGS) /" \ - -e "s/LDFLAGS :=/LDFLAGS +=/" \ - -i "$SRCDIR"/Make.Rules diff --git a/runtime-optenv32/libcap+32/spec b/runtime-optenv32/libcap+32/spec index 772eec4d2b9..5db9b294457 100644 --- a/runtime-optenv32/libcap+32/spec +++ b/runtime-optenv32/libcap+32/spec @@ -1,4 +1,4 @@ -VER=2.31 +VER=2.69 SRCS="tbl::https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/libcap-$VER.tar.xz" -CHKSUMS="sha256::c6088de41e1c97fa8047e2e7de0e4ee0cd13e6cc16538022230ae76727a87c46" +CHKSUMS="sha256::f311f8f3dad84699d0566d1d6f7ec943a9298b28f714cae3c931dfd57492d7eb" CHKUPDATE="anitya::id=1569" From 70027092678e8268f25249fc4b7a9a2d3a36d5eb Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Thu, 2 Jan 2025 13:55:07 +0800 Subject: [PATCH 200/722] libasyncns+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libasyncns+32/autobuild/build | 12 ------------ runtime-optenv32/libasyncns+32/autobuild/defines | 7 ++++--- runtime-optenv32/libasyncns+32/spec | 2 +- 3 files changed, 5 insertions(+), 16 deletions(-) delete mode 100644 runtime-optenv32/libasyncns+32/autobuild/build diff --git a/runtime-optenv32/libasyncns+32/autobuild/build b/runtime-optenv32/libasyncns+32/autobuild/build deleted file mode 100644 index 32abdbea34b..00000000000 --- a/runtime-optenv32/libasyncns+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --prefix=/opt/32 --disable-static \ - --host=i686-pc-linux-gnu --target=i686-pc-linux-gnu --build=i686-pc-linux-gnu \ - --disable-lynx \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR=$PKGDIR - -rm -rf $PKGDIR/opt/32/share diff --git a/runtime-optenv32/libasyncns+32/autobuild/defines b/runtime-optenv32/libasyncns+32/autobuild/defines index 405d622d822..aa49e3df7d4 100644 --- a/runtime-optenv32/libasyncns+32/autobuild/defines +++ b/runtime-optenv32/libasyncns+32/autobuild/defines @@ -1,7 +1,8 @@ PKGNAME=libasyncns+32 PKGSEC=libs -PKGDES="A C library for executing name service queries asynchronously" PKGDEP="glibc+32" -BUILDDEP="32subsystem" +BUILDDEP="devel-base+32" +PKGDES="A C library for executing name service queries asynchronously (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libasyncns+32/spec b/runtime-optenv32/libasyncns+32/spec index addc1133c7c..d3047874856 100644 --- a/runtime-optenv32/libasyncns+32/spec +++ b/runtime-optenv32/libasyncns+32/spec @@ -1,5 +1,5 @@ VER=0.8 -REL=4 +REL=5 SRCS="tbl::https://0pointer.de/lennart/projects/libasyncns/libasyncns-$VER.tar.gz" CHKSUMS="sha256::4f1a66e746cbe54ff3c2fbada5843df4fbbbe7481d80be003e8d11161935ab74" CHKUPDATE="anitya::id=14598" From 5e0b62854b2268ad81c53bc3574beaff15c56610 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 4 Jan 2025 21:44:32 +0800 Subject: [PATCH 201/722] libmd+32: new, 1.1.0 --- runtime-optenv32/libmd+32/autobuild/defines | 8 ++++++++ runtime-optenv32/libmd+32/spec | 4 ++++ 2 files changed, 12 insertions(+) create mode 100644 runtime-optenv32/libmd+32/autobuild/defines create mode 100644 runtime-optenv32/libmd+32/spec diff --git a/runtime-optenv32/libmd+32/autobuild/defines b/runtime-optenv32/libmd+32/autobuild/defines new file mode 100644 index 00000000000..26e0a33aa18 --- /dev/null +++ b/runtime-optenv32/libmd+32/autobuild/defines @@ -0,0 +1,8 @@ +PKGNAME=libmd+32 +PKGSEC=libs +PKGDEP="glibc+32" +BUILDDEP="devel-base+32" +PKGDES="A message digest functions library (32-bit x86 runtime)" + +NOLTO=1 +ABHOST=optenv32 diff --git a/runtime-optenv32/libmd+32/spec b/runtime-optenv32/libmd+32/spec new file mode 100644 index 00000000000..1cd4f4c366b --- /dev/null +++ b/runtime-optenv32/libmd+32/spec @@ -0,0 +1,4 @@ +VER=1.1.0 +SRCS="tbl::https://archive.hadrons.org/software/libmd/libmd-$VER.tar.xz" +CHKSUMS="sha256::1bd6aa42275313af3141c7cf2e5b964e8b1fd488025caf2f971f43b00776b332" +CHKUPDATE="anitya::id=15525" From 3ceb3639c5a3cc99a7dedb675dc9fd967a3db2ac Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 4 Jan 2025 22:08:33 +0800 Subject: [PATCH 202/722] libbsd+32: new, 0.12.2 --- runtime-optenv32/libbsd+32/autobuild/defines | 14 ++++++++++++++ runtime-optenv32/libbsd+32/spec | 4 ++++ 2 files changed, 18 insertions(+) create mode 100644 runtime-optenv32/libbsd+32/autobuild/defines create mode 100644 runtime-optenv32/libbsd+32/spec diff --git a/runtime-optenv32/libbsd+32/autobuild/defines b/runtime-optenv32/libbsd+32/autobuild/defines new file mode 100644 index 00000000000..887ac9fe837 --- /dev/null +++ b/runtime-optenv32/libbsd+32/autobuild/defines @@ -0,0 +1,14 @@ +PKGNAME=libbsd+32 +PKGSEC=libs +PKGDEP="glibc+32 libmd+32" +BUILDDEP="devel-base+32" +PKGDES="Utility functions from BSD systems (32-bit x86 runtime)" + +# Excerpt from Fedora: +# This package uses top level ASM constructs which are incompatible with LTO. +# Top level ASMs are often used to implement symbol versioning. gcc-10 +# introduces a new mechanism for symbol versioning which works with LTO. +# Converting packages to use that mechanism instead of toplevel ASMs is +# recommended. +NOLTO=1 +ABHOST=optenv32 diff --git a/runtime-optenv32/libbsd+32/spec b/runtime-optenv32/libbsd+32/spec new file mode 100644 index 00000000000..3e3ee824457 --- /dev/null +++ b/runtime-optenv32/libbsd+32/spec @@ -0,0 +1,4 @@ +VER=0.12.2 +SRCS="tbl::https://libbsd.freedesktop.org/releases/libbsd-$VER.tar.xz" +CHKSUMS="sha256::b88cc9163d0c652aaf39a99991d974ddba1c3a9711db8f1b5838af2a14731014" +CHKUPDATE="anitya::id=1567" From 4d8755fc261270e40d424fc748601646b9743e3e Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 4 Jan 2025 23:17:23 +0800 Subject: [PATCH 203/722] pulseaudio+32: update to 17.0 - Use optenv32 template. - Clean up dependencies. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- .../pulseaudio+32/autobuild/build | 24 ------------------- .../pulseaudio+32/autobuild/defines | 23 ++++++++++++++---- runtime-optenv32/pulseaudio+32/spec | 7 +++--- 3 files changed, 22 insertions(+), 32 deletions(-) delete mode 100644 runtime-optenv32/pulseaudio+32/autobuild/build diff --git a/runtime-optenv32/pulseaudio+32/autobuild/build b/runtime-optenv32/pulseaudio+32/autobuild/build deleted file mode 100644 index 8f35793e830..00000000000 --- a/runtime-optenv32/pulseaudio+32/autobuild/build +++ /dev/null @@ -1,24 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc -CXX=i686-pc-linux-gnu-g++ - -./configure --prefix=/opt/32 \ - --localstatedir=/var \ - --disable-tcpwrap \ - --disable-bluez4 --disable-bluez5 \ - --disable-default-build-tests \ - --disable-avahi --disable-samplerate \ - --disable-systemd --disable-systemd-journal \ - --disable-systemd-daemon --disable-systemd-login \ - --with-database=simple --without-fftw \ - --disable-jack --enable-webrtc-aec=no \ - --enable-orc=no --disable-gconf \ - --without-soxr --without-speex \ - --host=i686-pc-linux-gnu --target=i686-pc-linux-gnu --build=i686-pc-linux-gnu \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/lib -rm -rf "$PKGDIR"/opt/32/{bin,etc,share} diff --git a/runtime-optenv32/pulseaudio+32/autobuild/defines b/runtime-optenv32/pulseaudio+32/autobuild/defines index 1de1e6551da..b707f66a302 100644 --- a/runtime-optenv32/pulseaudio+32/autobuild/defines +++ b/runtime-optenv32/pulseaudio+32/autobuild/defines @@ -1,7 +1,22 @@ PKGNAME=pulseaudio+32 PKGSEC=sound -PKGDEP="libasyncns+32 dbus+32 libcap+32 x11-lib+32 libsndfile+32 json-c+32 alsa-lib+32" -PKGDES="A featureful, general-purpose sound server (optenv32)" -BUILDDEP="perl-xml-parser" +PKGDEP="alsa-lib+32 dbus+32 eudev+32 gdbm+32 json-c+32 libasyncns+32 \ + libcap+32 libsndfile+32 libtool+32 libxcb+32 openssl+32 x11-lib+32" +BUILDDEP="devel-base+32" +PKGDES="A featureful, general-purpose sound server (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 + +# Note: Using gdbm as tdb's waf build system would require nothing less +# than a 32-bit Python 3 toolchain. +MESON_AFTER=( + '-Dudevrulesdir=/usr/lib/udev/rules.d' + '-Dtcpwrap=disabled' + '-Ddatabase=gdbm' + '-Dbluez5=disabled' + '-Dtests=false' + '-Ddoxygen=false' + '-Dman=false' + '-Dsystemd=disabled' +) diff --git a/runtime-optenv32/pulseaudio+32/spec b/runtime-optenv32/pulseaudio+32/spec index 4b897e956f8..9432aa8bb0d 100644 --- a/runtime-optenv32/pulseaudio+32/spec +++ b/runtime-optenv32/pulseaudio+32/spec @@ -1,5 +1,4 @@ -VER=13.0 -SRCS="tbl::https://freedesktop.org/software/pulseaudio/releases/pulseaudio-$VER.tar.xz" -CHKSUMS="sha256::961b23ca1acfd28f2bc87414c27bb40e12436efcf2158d29721b1e89f3f28057" -REL=1 +VER=17.0 +SRCS="tbl::https://freedesktop.org/software/pulseaudio/releases/pulseaudio-${VER}.tar.xz" +CHKSUMS="sha256::053794d6671a3e397d849e478a80b82a63cb9d8ca296bd35b73317bb5ceb87b5" CHKUPDATE="anitya::id=3729" From d44daa05b9894c4d7cfc829fba10f06e6af46a8c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 4 Jan 2025 23:21:12 +0800 Subject: [PATCH 204/722] alsa-plugins+32: update to 1.2.12 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/alsa-plugins+32/autobuild/build | 11 ----------- runtime-optenv32/alsa-plugins+32/autobuild/defines | 9 +++++---- runtime-optenv32/alsa-plugins+32/spec | 4 ++-- 3 files changed, 7 insertions(+), 17 deletions(-) delete mode 100644 runtime-optenv32/alsa-plugins+32/autobuild/build diff --git a/runtime-optenv32/alsa-plugins+32/autobuild/build b/runtime-optenv32/alsa-plugins+32/autobuild/build deleted file mode 100644 index 695b6d85f14..00000000000 --- a/runtime-optenv32/alsa-plugins+32/autobuild/build +++ /dev/null @@ -1,11 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -./configure --prefix=/opt/32 \ - --disable-jack \ - --disable-samplerate --disable-libav \ - --with-speex=builtin \ - LDFLAGS="${LDFLAGS} -L/opt/32/lib" \ - CC=i686-pc-linux-gnu-gcc CXX=i686-pc-linux-gnu-g++ \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" diff --git a/runtime-optenv32/alsa-plugins+32/autobuild/defines b/runtime-optenv32/alsa-plugins+32/autobuild/defines index 685134caa7e..e09e60417fe 100644 --- a/runtime-optenv32/alsa-plugins+32/autobuild/defines +++ b/runtime-optenv32/alsa-plugins+32/autobuild/defines @@ -1,7 +1,8 @@ PKGNAME=alsa-plugins+32 -PKGDES="Extra ALSA plugins (optenv32)" PKGSEC=libs -PKGDEP="alsa-lib+32 pulseaudio+32" -BUILDDEP="32subsystem speex+32" +PKGDEP="alsa-lib+32 pulseaudio+32 speex+32" +BUILDDEP="devel-base+32" +PKGDES="Extra ALSA plugins (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/alsa-plugins+32/spec b/runtime-optenv32/alsa-plugins+32/spec index 11a1c2ef850..5307630e937 100644 --- a/runtime-optenv32/alsa-plugins+32/spec +++ b/runtime-optenv32/alsa-plugins+32/spec @@ -1,4 +1,4 @@ -VER=1.2.7.1 +VER=1.2.12 SRCS="tbl::https://www.alsa-project.org/files/pub/plugins/alsa-plugins-$VER.tar.bz2" -CHKSUMS="sha256::8c337814954bb7c167456733a6046142a2931f12eccba3ec2a4ae618a3432511" +CHKSUMS="sha256::7bd8a83d304e8e2d86a25895d8dcb0ef0245a8df32e271959cdbdc6af39b66f2" CHKUPDATE="anitya::id=41" From dcbd6139caf27128b195e42bec91fe67605f8cc2 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 4 Jan 2025 23:24:05 +0800 Subject: [PATCH 205/722] alsa-lib+32: update to 1.2.12 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/alsa-lib+32/autobuild/build | 11 ----------- runtime-optenv32/alsa-lib+32/autobuild/defines | 7 ++++--- runtime-optenv32/alsa-lib+32/spec | 4 ++-- 3 files changed, 6 insertions(+), 16 deletions(-) delete mode 100644 runtime-optenv32/alsa-lib+32/autobuild/build diff --git a/runtime-optenv32/alsa-lib+32/autobuild/build b/runtime-optenv32/alsa-lib+32/autobuild/build deleted file mode 100644 index 67d748ce540..00000000000 --- a/runtime-optenv32/alsa-lib+32/autobuild/build +++ /dev/null @@ -1,11 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -./configure --prefix=/opt/32 --disable-python \ - --disable-static \ - LDFLAGS="${LDFLAGS}" \ - CC=i686-pc-linux-gnu-gcc CXX=i686-pc-linux-gnu-g++ \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/alsa-lib+32/autobuild/defines b/runtime-optenv32/alsa-lib+32/autobuild/defines index 0acc00de912..152fd2b7def 100644 --- a/runtime-optenv32/alsa-lib+32/autobuild/defines +++ b/runtime-optenv32/alsa-lib+32/autobuild/defines @@ -1,7 +1,8 @@ PKGNAME=alsa-lib+32 PKGSEC=libs -PKGDES="The ALSA interface library (optenv32)" PKGDEP="glibc+32" -BUILDDEP="32subsystem" +BUILDDEP="devel-base+32" +PKGDES="The ALSA interface library (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/alsa-lib+32/spec b/runtime-optenv32/alsa-lib+32/spec index d5ef2312dc1..152db776b46 100644 --- a/runtime-optenv32/alsa-lib+32/spec +++ b/runtime-optenv32/alsa-lib+32/spec @@ -1,4 +1,4 @@ -VER=1.2.5.1 +VER=1.2.12 SRCS="tbl::https://www.alsa-project.org/files/pub/lib/alsa-lib-$VER.tar.bz2" -CHKSUMS="sha256::628421d950cecaf234de3f899d520c0a6923313c964ad751ffac081df331438e" +CHKSUMS="sha256::4868cd908627279da5a634f468701625be8cc251d84262c7e5b6a218391ad0d2" CHKUPDATE="anitya::id=38" From fa532ee4c4b2a7f909f27f59475271be4d8f769c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 4 Jan 2025 23:28:05 +0800 Subject: [PATCH 206/722] attr+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/attr+32/autobuild/build | 9 --------- runtime-optenv32/attr+32/autobuild/defines | 6 +++--- runtime-optenv32/attr+32/autobuild/patch | 2 -- runtime-optenv32/attr+32/spec | 2 +- 4 files changed, 4 insertions(+), 15 deletions(-) delete mode 100644 runtime-optenv32/attr+32/autobuild/build delete mode 100644 runtime-optenv32/attr+32/autobuild/patch diff --git a/runtime-optenv32/attr+32/autobuild/build b/runtime-optenv32/attr+32/autobuild/build deleted file mode 100644 index d06372a9c6c..00000000000 --- a/runtime-optenv32/attr+32/autobuild/build +++ /dev/null @@ -1,9 +0,0 @@ -export PATH=/opt/32/bin:$PATH -CC=i686-pc-linux-gnu-gcc -CXX=i686-pc-linux-gnu-g++ - -./configure --enable-shared --prefix=/opt/32 --disable-static -make -make DESTDIR="$PKGDIR" install - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/attr+32/autobuild/defines b/runtime-optenv32/attr+32/autobuild/defines index 2925961197a..26ef7eab895 100644 --- a/runtime-optenv32/attr+32/autobuild/defines +++ b/runtime-optenv32/attr+32/autobuild/defines @@ -1,8 +1,8 @@ PKGNAME=attr+32 -PKGDES="Attr for 32Subsystem" PKGSEC=libs PKGDEP="glibc+32" -BUILDDEP="32subsystem" +BUILDDEP="devel-base+32" +PKGDES="Extended attribute support library for ACL support (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/attr+32/autobuild/patch b/runtime-optenv32/attr+32/autobuild/patch deleted file mode 100644 index a87c84a5d19..00000000000 --- a/runtime-optenv32/attr+32/autobuild/patch +++ /dev/null @@ -1,2 +0,0 @@ -sed -i -e 's|/@pkg_name@|&-@pkg_version@|' include/builddefs.in -export INSTALL_USER=root INSTALL_GROUP=root diff --git a/runtime-optenv32/attr+32/spec b/runtime-optenv32/attr+32/spec index f3ee6614a0d..65de5f8fd9b 100644 --- a/runtime-optenv32/attr+32/spec +++ b/runtime-optenv32/attr+32/spec @@ -1,5 +1,5 @@ VER=2.4.48 -REL=2 +REL=3 SRCS="tbl::https://download.savannah.gnu.org/releases/attr/attr-$VER.tar.gz" CHKSUMS="sha256::5ead72b358ec709ed00bbf7a9eaef1654baad937c001c044fe8b74c57f5324e7" CHKUPDATE="anitya::id=137" From 9761d05989e8a28a6c800db80bb8d336d1fa0b97 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 4 Jan 2025 23:29:42 +0800 Subject: [PATCH 207/722] acl+32: update to 2.3.1 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/acl+32/autobuild/build | 13 ------------- runtime-optenv32/acl+32/autobuild/defines | 6 ++++-- runtime-optenv32/acl+32/spec | 8 +++----- 3 files changed, 7 insertions(+), 20 deletions(-) delete mode 100644 runtime-optenv32/acl+32/autobuild/build diff --git a/runtime-optenv32/acl+32/autobuild/build b/runtime-optenv32/acl+32/autobuild/build deleted file mode 100644 index 2357b588113..00000000000 --- a/runtime-optenv32/acl+32/autobuild/build +++ /dev/null @@ -1,13 +0,0 @@ -export PATH=/opt/32/bin:$PATH -INSTALL_USER=root \ -INSTALL_GROUP=root \ -./configure --prefix=/opt/32 --libexecdir=/opt/32/lib \ - CC=i686-pc-linux-gnu-gcc CXX=i686-pc-linux-gnu-g++ \ - LDFLAGS="${LDFLAGS} -L/opt/32/lib" \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig - -make -make install-dev install-lib DIST_ROOT=$PKGDIR - -chmod -v 755 $PKGDIR/opt/32/lib/libacl.so.1.1.0 -rm -rf $PKGDIR/opt/32/share diff --git a/runtime-optenv32/acl+32/autobuild/defines b/runtime-optenv32/acl+32/autobuild/defines index 74234991179..4a80d65721f 100644 --- a/runtime-optenv32/acl+32/autobuild/defines +++ b/runtime-optenv32/acl+32/autobuild/defines @@ -1,6 +1,8 @@ PKGNAME=acl+32 -PKGDES="Access Control List for 32Subsystem" PKGSEC=utils PKGDEP="attr+32" +BUILDDEP="devel-base+32" +PKGDES="Access Control List (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/acl+32/spec b/runtime-optenv32/acl+32/spec index 50f6a9d7034..607ca0e5c09 100644 --- a/runtime-optenv32/acl+32/spec +++ b/runtime-optenv32/acl+32/spec @@ -1,6 +1,4 @@ -VER=2.2.52 -REL=5 - -SRCS="tbl::https://download.savannah.gnu.org/releases/acl/acl-$VER.src.tar.gz" -CHKSUMS="sha256::179074bb0580c06c4b4137be4c5a92a701583277967acdb5546043c7874e0d23" +VER=2.3.1 +SRCS="tbl::https://download.savannah.gnu.org/releases/acl/acl-$VER.tar.gz" +CHKSUMS="sha256::760c61c68901b37fdd5eefeeaf4c0c7a26bdfdd8ac747a1edff1ce0e243c11af" CHKUPDATE="anitya::id=16" From 8bffa6b5dcb543595743aa0fcb16ada648569f9a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 4 Jan 2025 23:31:55 +0800 Subject: [PATCH 208/722] libgpg-error+32: update to 1.50 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- .../libgpg-error+32/autobuild/build | 22 ------------------- .../libgpg-error+32/autobuild/defines | 6 ++--- runtime-optenv32/libgpg-error+32/spec | 4 ++-- 3 files changed, 5 insertions(+), 27 deletions(-) delete mode 100644 runtime-optenv32/libgpg-error+32/autobuild/build diff --git a/runtime-optenv32/libgpg-error+32/autobuild/build b/runtime-optenv32/libgpg-error+32/autobuild/build deleted file mode 100644 index 0662f330bdc..00000000000 --- a/runtime-optenv32/libgpg-error+32/autobuild/build +++ /dev/null @@ -1,22 +0,0 @@ -abinfo "Re-generating Autotools scripts ..." -autoreconf -fvi - -abinfo "Configuring $PKGNAME ..." -export PATH="/opt/32/bin:$PATH" -"$SRCDIR"/configure \ - --prefix=/opt/32 \ - --build=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --target=i686-pc-linux-gnu \ - CC=i686-pc-linux-gnu-gcc \ - CXX=i686-pc-linux-gnu-g++ \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig - -abinfo "Building $PKGNAME ..." -make - -abinfo "Installing $PKGNAME ..." -make install DESTDIR="$PKGDIR" - -abinfo "Dropping executables and shared data ..." -rm -rfv "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/libgpg-error+32/autobuild/defines b/runtime-optenv32/libgpg-error+32/autobuild/defines index 7e0237ce719..9933489e57e 100644 --- a/runtime-optenv32/libgpg-error+32/autobuild/defines +++ b/runtime-optenv32/libgpg-error+32/autobuild/defines @@ -1,8 +1,8 @@ PKGNAME=libgpg-error+32 -PKGDES="Support library for libgcrypt (optenv32)" PKGSEC=libs PKGDEP="glibc+32" -BUILDDEP="32subsystem" +BUILDDEP="devel-base+32" +PKGDES="Support library for GnuPG components (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libgpg-error+32/spec b/runtime-optenv32/libgpg-error+32/spec index c0fd515a444..0fb82b6e14c 100644 --- a/runtime-optenv32/libgpg-error+32/spec +++ b/runtime-optenv32/libgpg-error+32/spec @@ -1,4 +1,4 @@ -VER=1.41 +VER=1.50 SRCS="tbl::https://www.gnupg.org/ftp/gcrypt/libgpg-error/libgpg-error-$VER.tar.bz2" -CHKSUMS="sha256::64b078b45ac3c3003d7e352a5e05318880a5778c42331ce1ef33d1a0d9922742" +CHKSUMS="sha256::69405349e0a633e444a28c5b35ce8f14484684518a508dc48a089992fe93e20a" CHKUPDATE="anitya::id=1628" From ade4b45e649f7365bc5d968a255d37c32112e5d2 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 4 Jan 2025 23:35:04 +0800 Subject: [PATCH 209/722] libgcrypt+32: update to 1.11.0 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libgcrypt+32/autobuild/build | 19 ------------------- .../libgcrypt+32/autobuild/defines | 8 ++++---- runtime-optenv32/libgcrypt+32/spec | 4 ++-- 3 files changed, 6 insertions(+), 25 deletions(-) delete mode 100644 runtime-optenv32/libgcrypt+32/autobuild/build diff --git a/runtime-optenv32/libgcrypt+32/autobuild/build b/runtime-optenv32/libgcrypt+32/autobuild/build deleted file mode 100644 index f9c215d58a3..00000000000 --- a/runtime-optenv32/libgcrypt+32/autobuild/build +++ /dev/null @@ -1,19 +0,0 @@ -abinfo "Configuring $PKGNAME ..." -export PATH="/opt/32/bin:$PATH" -"$SRCDIR"/configure \ - --prefix=/opt/32 \ - --disable-static \ - --disable-padlock-support \ - --build=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --target=i686-pc-linux-gnu \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig - -abinfo "Building $PKGNAME ..." -make - -abinfo "Installing $PKGNAME ..." -make install DESTDIR="$PKGDIR" - -abinfo "Dropping executables and shared data ..." -rm -rfv "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/libgcrypt+32/autobuild/defines b/runtime-optenv32/libgcrypt+32/autobuild/defines index 839b985c84a..863d6ce73d1 100644 --- a/runtime-optenv32/libgcrypt+32/autobuild/defines +++ b/runtime-optenv32/libgcrypt+32/autobuild/defines @@ -1,8 +1,8 @@ PKGNAME=libgcrypt+32 -PKGDES="General purpose cryptographic library based on the code from GnuPG (optenv32)" -PKGDEP="libgpg-error+32" -BUILDDEP="32subsystem" PKGSEC=libs +PKGDEP="libgpg-error+32" +BUILDDEP="devel-base+32" +PKGDES="General purpose cryptographic library based on the code from GnuPG (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libgcrypt+32/spec b/runtime-optenv32/libgcrypt+32/spec index 3f5e2501911..3aa6c551a2c 100644 --- a/runtime-optenv32/libgcrypt+32/spec +++ b/runtime-optenv32/libgcrypt+32/spec @@ -1,4 +1,4 @@ -VER=1.9.1 +VER=1.11.0 SRCS="tbl::https://www.gnupg.org/ftp/gcrypt/libgcrypt/libgcrypt-$VER.tar.bz2" -CHKSUMS="sha256::c5a67a8b9b2bd370fb415ed1ee31c7172e5683076493cf4a3678a0fbdf0265d9" +CHKSUMS="sha256::09120c9867ce7f2081d6aaa1775386b98c2f2f246135761aae47d81f58685b9c" CHKUPDATE="anitya::id=1623" From 975e1a4a2c1674830c301626fd14b3a46bc7073c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 4 Jan 2025 23:40:36 +0800 Subject: [PATCH 210/722] libxslt+32: update to 1.1.42 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libxslt+32/autobuild/build | 11 ----------- runtime-optenv32/libxslt+32/autobuild/defines | 11 ++++++++--- runtime-optenv32/libxslt+32/spec | 7 +++---- 3 files changed, 11 insertions(+), 18 deletions(-) delete mode 100644 runtime-optenv32/libxslt+32/autobuild/build diff --git a/runtime-optenv32/libxslt+32/autobuild/build b/runtime-optenv32/libxslt+32/autobuild/build deleted file mode 100644 index b255ddf9e28..00000000000 --- a/runtime-optenv32/libxslt+32/autobuild/build +++ /dev/null @@ -1,11 +0,0 @@ -export PATH=/opt/32/bin:$PATH -./configure --host=i686-pc-linux-gnu \ - --enable-shared \ - --prefix=/opt/32 --disable-static --without-python \ - --with-crypto \ - CC=i686-pc-linux-gnu-gcc CXX=i686-pc-linux-gnu-g++ \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make DESTDIR=$PKGDIR install - -rm -rf $PKGDIR/opt/32/{bin,share} diff --git a/runtime-optenv32/libxslt+32/autobuild/defines b/runtime-optenv32/libxslt+32/autobuild/defines index 1c6b1091f01..8e9569ee418 100644 --- a/runtime-optenv32/libxslt+32/autobuild/defines +++ b/runtime-optenv32/libxslt+32/autobuild/defines @@ -1,7 +1,12 @@ PKGNAME=libxslt+32 -PKGDES="Extensible Stylesheet Language Transformations(XSLT) C library developed for the GNOME project on 32subsystem" PKGSEC=libs PKGDEP="glibc+32 libxml2+32 libgcrypt+32 python-2+32" -BUILDDEP="32subsystem" +BUILDDEP="devel-base+32" +PKGDES="C library for eXtensible Stylesheet Language Transformations (XSLT) (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 + +AUTOTOOLS_AFTER=( + '--without-python' +) diff --git a/runtime-optenv32/libxslt+32/spec b/runtime-optenv32/libxslt+32/spec index cc883910759..d845d7961e4 100644 --- a/runtime-optenv32/libxslt+32/spec +++ b/runtime-optenv32/libxslt+32/spec @@ -1,5 +1,4 @@ -VER=1.1.34 -SRCS="tbl::ftp://xmlsoft.org/libxslt/libxslt-$VER.tar.gz" -CHKSUMS="SHA256::98b1bd46d6792925ad2dfe9a87452ea2adebf69dcb9919ffd55bf926a7f93f7f" -REL=1 +VER=1.1.42 +SRCS="git::commit=tags/v$VER::https://github.com/GNOME/libxslt.git" +CHKSUMS="SKIP" CHKUPDATE="anitya::id=13301" From e9c67b7ffbe5851cccc76d13ae6cb44b47c9fc10 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 4 Jan 2025 23:42:52 +0800 Subject: [PATCH 211/722] libxdmcp+32: update to 1.1.5 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libxdmcp+32/autobuild/beyond | 1 - runtime-optenv32/libxdmcp+32/autobuild/build | 9 --------- runtime-optenv32/libxdmcp+32/autobuild/defines | 6 +++--- runtime-optenv32/libxdmcp+32/spec | 6 +++--- 4 files changed, 6 insertions(+), 16 deletions(-) delete mode 100644 runtime-optenv32/libxdmcp+32/autobuild/beyond delete mode 100644 runtime-optenv32/libxdmcp+32/autobuild/build diff --git a/runtime-optenv32/libxdmcp+32/autobuild/beyond b/runtime-optenv32/libxdmcp+32/autobuild/beyond deleted file mode 100644 index 9f8e169bebc..00000000000 --- a/runtime-optenv32/libxdmcp+32/autobuild/beyond +++ /dev/null @@ -1 +0,0 @@ -rm -rf "$PKGDIR"/opt/32/share/info/dir diff --git a/runtime-optenv32/libxdmcp+32/autobuild/build b/runtime-optenv32/libxdmcp+32/autobuild/build deleted file mode 100644 index 4fd005b4416..00000000000 --- a/runtime-optenv32/libxdmcp+32/autobuild/build +++ /dev/null @@ -1,9 +0,0 @@ -export PATH=/opt/32/bin:$PATH -CC=i686-pc-linux-gnu-gcc -CXX=i686-pc-linux-gnu-g++ - -./configure --enable-shared --prefix=/opt/32 --disable-static -make -make DESTDIR="$PKGDIR" install - -rm -rf "$PKGDIR"/opt/32/share diff --git a/runtime-optenv32/libxdmcp+32/autobuild/defines b/runtime-optenv32/libxdmcp+32/autobuild/defines index c1dbe154e4b..45d67b95562 100644 --- a/runtime-optenv32/libxdmcp+32/autobuild/defines +++ b/runtime-optenv32/libxdmcp+32/autobuild/defines @@ -1,8 +1,8 @@ PKGNAME=libxdmcp+32 -PKGDES="LibXdmcp on 32subsystem" PKGSEC=libs PKGDEP="glibc+32 x11-proto+32" -BUILDDEP="32subsystem" +BUILDDEP="devel-base+32" +PKGDES="The X Display Manager Control Protocol Library (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libxdmcp+32/spec b/runtime-optenv32/libxdmcp+32/spec index 347c1c02663..90165b00969 100644 --- a/runtime-optenv32/libxdmcp+32/spec +++ b/runtime-optenv32/libxdmcp+32/spec @@ -1,4 +1,4 @@ -VER=1.1.3 -SRCS="tbl::https://xorg.freedesktop.org/releases/individual/lib/libXdmcp-$VER.tar.bz2" -CHKSUMS="sha256::20523b44aaa513e17c009e873ad7bbc301507a3224c232610ce2e099011c6529" +VER=1.1.5 +SRCS="tbl::https://xorg.freedesktop.org/releases/individual/lib/libXdmcp-$VER.tar.xz" +CHKSUMS="sha256::d8a5222828c3adab70adf69a5583f1d32eb5ece04304f7f8392b6a353aa2228c" CHKUPDATE="anitya::id=1772" From e1c096f7951f58a0c4c87748fefd83bec42ce7c7 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 4 Jan 2025 23:46:29 +0800 Subject: [PATCH 212/722] libxau+32: update to 1.0.11 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libxau+32/autobuild/build | 9 --------- runtime-optenv32/libxau+32/autobuild/defines | 6 ++++-- runtime-optenv32/libxau+32/spec | 7 +++---- 3 files changed, 7 insertions(+), 15 deletions(-) delete mode 100644 runtime-optenv32/libxau+32/autobuild/build diff --git a/runtime-optenv32/libxau+32/autobuild/build b/runtime-optenv32/libxau+32/autobuild/build deleted file mode 100644 index 8777742d852..00000000000 --- a/runtime-optenv32/libxau+32/autobuild/build +++ /dev/null @@ -1,9 +0,0 @@ -export PATH=/opt/32/bin:$PATH -CC=i686-pc-linux-gnu-gcc -CXX=i686-pc-linux-gnu-g++ - -./configure --enable-shared --prefix=/opt/32 --disable-static -make -make DESTDIR=$PKGDIR install - -rm -rf $PKGDIR/opt/32/share diff --git a/runtime-optenv32/libxau+32/autobuild/defines b/runtime-optenv32/libxau+32/autobuild/defines index 5d50181c0b4..0c9ea82da57 100644 --- a/runtime-optenv32/libxau+32/autobuild/defines +++ b/runtime-optenv32/libxau+32/autobuild/defines @@ -1,6 +1,8 @@ PKGNAME=libxau+32 -PKGDES="LibXau on 32subsystem" PKGSEC=libs PKGDEP="glibc+32 x11-proto+32" +BUILDDEP="devel-base+32" +PKGDES="X11 Authorization Library (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libxau+32/spec b/runtime-optenv32/libxau+32/spec index ae5a347fedc..209983537bc 100644 --- a/runtime-optenv32/libxau+32/spec +++ b/runtime-optenv32/libxau+32/spec @@ -1,5 +1,4 @@ -VER=1.0.9 -SRCS="tbl::https://xorg.freedesktop.org/releases/individual/lib/libXau-$VER.tar.bz2" -CHKSUMS="sha256::ccf8cbf0dbf676faa2ea0a6d64bcc3b6746064722b606c8c52917ed00dcb73ec" -REL=1 +VER=1.0.11 +SRCS="tbl::https://xorg.freedesktop.org/releases/individual/lib/libXau-$VER.tar.xz" +CHKSUMS="sha256::f3fa3282f5570c3f6bd620244438dbfbdd580fc80f02f549587a0f8ab329bbeb" CHKUPDATE="anitya::id=1765" From 9023f36a6e3cfc135200cf33748700d07836ae74 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 4 Jan 2025 23:49:34 +0800 Subject: [PATCH 213/722] xcb-proto+32: update to 1.16.0 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/xcb-proto+32/autobuild/build | 12 ------------ runtime-optenv32/xcb-proto+32/autobuild/defines | 12 ++++++++---- runtime-optenv32/xcb-proto+32/spec | 5 ++--- 3 files changed, 10 insertions(+), 19 deletions(-) delete mode 100644 runtime-optenv32/xcb-proto+32/autobuild/build diff --git a/runtime-optenv32/xcb-proto+32/autobuild/build b/runtime-optenv32/xcb-proto+32/autobuild/build deleted file mode 100644 index 65246991303..00000000000 --- a/runtime-optenv32/xcb-proto+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH -CC=i686-pc-linux-gnu-gcc CXX=i686-pc-linux-gnu-g++ \ -AS=i686-pc-linux-gnu-as LD=i686-pc-linux-gnu-ld \ -AR=i686-pc-linux-gnu-ar \ -RANLIB=i686-pc-linux-gnu-ranlib \ -./configure --host=i686-pc-linux-gnu --build=i686-pc-linux-gnu \ - --target=i686-pc-linux-gnu \ - --enable-shared --prefix=/opt/32 --disable-static -make -make DESTDIR=$PKGDIR install - -rm -rf $PKGDIR/opt/32/share diff --git a/runtime-optenv32/xcb-proto+32/autobuild/defines b/runtime-optenv32/xcb-proto+32/autobuild/defines index 9eaae2665db..122243649f1 100644 --- a/runtime-optenv32/xcb-proto+32/autobuild/defines +++ b/runtime-optenv32/xcb-proto+32/autobuild/defines @@ -1,7 +1,11 @@ PKGNAME=xcb-proto+32 -PKGDES="XCB protocol on 32subsystem" -PKGSEC=libs +PKGSEC=x11 PKGDEP="glibc+32" -BUILDDEP="python-2 32subsystem" +BUILDDEP="devel-base+32" +PKGDES="XCB protocol headers (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 + +# Note: Header-only package. +ABSPLITDBG=0 diff --git a/runtime-optenv32/xcb-proto+32/spec b/runtime-optenv32/xcb-proto+32/spec index 64153f6a0bc..382e4f49e24 100644 --- a/runtime-optenv32/xcb-proto+32/spec +++ b/runtime-optenv32/xcb-proto+32/spec @@ -1,5 +1,4 @@ -VER=1.14 +VER=1.16.0 SRCS="tbl::https://xorg.freedesktop.org/archive/individual/proto/xcb-proto-$VER.tar.gz" -CHKSUMS="sha256::1c3fa23d091fb5e4f1e9bf145a902161cec00d260fabf880a7a248b02ab27031" -REL=1 +CHKSUMS="sha256::d9c7f010b1105fc3858bf07b5169b2dd8e7493c6652b1fe45f3321d874f291d7" CHKUPDATE="anitya::id=13646" From 901fd51e591eb093589f472b409727cecef18152 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 00:00:30 +0800 Subject: [PATCH 214/722] xcb-proto+32: drop, orphaned --- runtime-optenv32/xcb-proto+32/autobuild/defines | 11 ----------- runtime-optenv32/xcb-proto+32/spec | 4 ---- 2 files changed, 15 deletions(-) delete mode 100644 runtime-optenv32/xcb-proto+32/autobuild/defines delete mode 100644 runtime-optenv32/xcb-proto+32/spec diff --git a/runtime-optenv32/xcb-proto+32/autobuild/defines b/runtime-optenv32/xcb-proto+32/autobuild/defines deleted file mode 100644 index 122243649f1..00000000000 --- a/runtime-optenv32/xcb-proto+32/autobuild/defines +++ /dev/null @@ -1,11 +0,0 @@ -PKGNAME=xcb-proto+32 -PKGSEC=x11 -PKGDEP="glibc+32" -BUILDDEP="devel-base+32" -PKGDES="XCB protocol headers (32-bit x86 runtime)" - -NOLTO=1 -ABHOST=optenv32 - -# Note: Header-only package. -ABSPLITDBG=0 diff --git a/runtime-optenv32/xcb-proto+32/spec b/runtime-optenv32/xcb-proto+32/spec deleted file mode 100644 index 382e4f49e24..00000000000 --- a/runtime-optenv32/xcb-proto+32/spec +++ /dev/null @@ -1,4 +0,0 @@ -VER=1.16.0 -SRCS="tbl::https://xorg.freedesktop.org/archive/individual/proto/xcb-proto-$VER.tar.gz" -CHKSUMS="sha256::d9c7f010b1105fc3858bf07b5169b2dd8e7493c6652b1fe45f3321d874f291d7" -CHKUPDATE="anitya::id=13646" From 6ae540e4bba6d519b5ee4f74ae008d960d1db6c2 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 00:13:36 +0800 Subject: [PATCH 215/722] libxcb+32: update to 1.16.1 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libxcb+32/autobuild/build | 10 ---------- runtime-optenv32/libxcb+32/autobuild/defines | 6 +++--- runtime-optenv32/libxcb+32/autobuild/patch | 2 -- runtime-optenv32/libxcb+32/spec | 7 +++---- 4 files changed, 6 insertions(+), 19 deletions(-) delete mode 100644 runtime-optenv32/libxcb+32/autobuild/build delete mode 100644 runtime-optenv32/libxcb+32/autobuild/patch diff --git a/runtime-optenv32/libxcb+32/autobuild/build b/runtime-optenv32/libxcb+32/autobuild/build deleted file mode 100644 index ae0f25c47d2..00000000000 --- a/runtime-optenv32/libxcb+32/autobuild/build +++ /dev/null @@ -1,10 +0,0 @@ -export PATH=/opt/32/bin:$PATH -CC=i686-pc-linux-gnu-gcc -CXX=i686-pc-linux-gnu-g++ - -./configure --enable-shared --prefix=/opt/32 \ - --disable-static --enable-xinput -make -make DESTDIR="$PKGDIR" install - -rm -rf "$PKGDIR"/opt/32/share diff --git a/runtime-optenv32/libxcb+32/autobuild/defines b/runtime-optenv32/libxcb+32/autobuild/defines index 3e24f8200ec..73c7577fa15 100644 --- a/runtime-optenv32/libxcb+32/autobuild/defines +++ b/runtime-optenv32/libxcb+32/autobuild/defines @@ -1,8 +1,8 @@ PKGNAME=libxcb+32 -PKGDES="XCB library (optenv32)" PKGSEC=libs PKGDEP="glibc+32 xcb-proto+32 libxau+32 libxdmcp+32 libxslt+32" -BUILDDEP="32subsystem" +BUILDDEP="devel-base+32 xcb-proto" +PKGDES="XCB library (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/libxcb+32/autobuild/patch b/runtime-optenv32/libxcb+32/autobuild/patch deleted file mode 100644 index 0e2de69566b..00000000000 --- a/runtime-optenv32/libxcb+32/autobuild/patch +++ /dev/null @@ -1,2 +0,0 @@ -sed -e "s/pthread-stubs//" -i configure.ac -autoreconf -fi diff --git a/runtime-optenv32/libxcb+32/spec b/runtime-optenv32/libxcb+32/spec index 7692a69a6d1..b55f9ed735b 100644 --- a/runtime-optenv32/libxcb+32/spec +++ b/runtime-optenv32/libxcb+32/spec @@ -1,5 +1,4 @@ -VER=1.13 -SRCS="tbl::https://xcb.freedesktop.org/dist/libxcb-$VER.tar.bz2" -CHKSUMS="sha256::188c8752193c50ff2dbe89db4554c63df2e26a2e47b0fa415a70918b5b851daa" -REL=1 +VER=1.16.1 +SRCS="tbl::https://xorg.freedesktop.org/releases/individual/lib/libxcb-$VER.tar.gz" +CHKSUMS="sha256::830c58758d814213e338fd1bb454be3787a7ef2aff9b9e4b721d9adef2662536" CHKUPDATE="anitya::id=1767" From 9afc1998102109607ee5a9e97294f0c9689f7a3f Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 00:30:37 +0800 Subject: [PATCH 216/722] fontconfig+32: update to 2.15.0 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- .../fontconfig+32/autobuild/build | 25 ----------------- .../fontconfig+32/autobuild/defines | 28 +++++++++++-------- .../fontconfig+32/autobuild/postinst | 3 +- runtime-optenv32/fontconfig+32/spec | 4 +-- 4 files changed, 20 insertions(+), 40 deletions(-) delete mode 100644 runtime-optenv32/fontconfig+32/autobuild/build diff --git a/runtime-optenv32/fontconfig+32/autobuild/build b/runtime-optenv32/fontconfig+32/autobuild/build deleted file mode 100644 index dbb557ae5c4..00000000000 --- a/runtime-optenv32/fontconfig+32/autobuild/build +++ /dev/null @@ -1,25 +0,0 @@ -export PKG_CONFIG_PATH=/opt/32/lib/pkgconfig:/usr/share/pkgconfig -export PATH=/opt/32/bin:$PATH - -export CC="i686-pc-linux-gnu-gcc -m32" -export CXX="i686-pc-linux-gnu-g++ -m32" -export CCAS=i686-pc-linux-gnu-as -export LLVM_CONFIG=/opt/32/bin/llvm-config - -mkdir "$SRCDIR"/build -cd "$SRCDIR"/build -meson "$SRCDIR" --prefix=/opt/32 \ - ${MESON_AFTER} -ninja -DESTDIR="$PKGDIR" ninja install - -cd "$SRCDIR" - -rm -rfv "$PKGDIR"/opt/32/share - -for i in "$PKGDIR"/opt/32/bin/*; do - mv -v $i ${i}-32 -done - -sed -e 's|-I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/harfbuzz -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include||g' \ - -i "$PKGDIR"/opt/32/lib/pkgconfig/*.pc diff --git a/runtime-optenv32/fontconfig+32/autobuild/defines b/runtime-optenv32/fontconfig+32/autobuild/defines index e7c149f2b7d..594abb985eb 100644 --- a/runtime-optenv32/fontconfig+32/autobuild/defines +++ b/runtime-optenv32/fontconfig+32/autobuild/defines @@ -1,17 +1,21 @@ PKGNAME=fontconfig+32 -PKGDES="A library for configuring and customizing font access (optenv32)" PKGSEC=libs -PKGDEP="glibc+32 freetype+32 expat+32 libxml2+32 util-linux+32" -BUILDDEP="32subsystem gperf" +PKGDEP="expat+32 freetype+32 glibc+32 json-c+32 libxml2+32 util-linux+32" +BUILDDEP="devel-base+32 gperf" +PKGDES="A library for configuring and customizing font access (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 -MESON_AFTER="-Ddoc=disabled \ - -Ddoc-txt=disabled \ - -Ddoc-man=disabled \ - -Ddoc-pdf=disabled \ - -Ddoc-html=disabled \ - -Dnls=disabled \ - -Dtools=enabled \ - -Dcache-build=disabled" +ABTYPE=meson +MESON_AFTER=( + '-Ddoc=disabled' + '-Ddoc-txt=disabled' + '-Ddoc-man=disabled' + '-Ddoc-pdf=disabled' + '-Ddoc-html=disabled' + '-Dnls=disabled' + '-Dtools=enabled' + '-Dcache-build=disabled' + '-Dbaseconfig-dir=/etc' +) diff --git a/runtime-optenv32/fontconfig+32/autobuild/postinst b/runtime-optenv32/fontconfig+32/autobuild/postinst index 3060c495929..e3550bc3379 100644 --- a/runtime-optenv32/fontconfig+32/autobuild/postinst +++ b/runtime-optenv32/fontconfig+32/autobuild/postinst @@ -1,2 +1,3 @@ echo "Generating fontconfig cache (optenv32) ..." -BOX86_EMULATED_LIBS=libfontconfig.so.1 /opt/32/bin/fc-cache-32 -s +BOX86_EMULATED_LIBS=libfontconfig.so.1 \ +/opt/32/bin/fc-cache -s diff --git a/runtime-optenv32/fontconfig+32/spec b/runtime-optenv32/fontconfig+32/spec index 8f42637f6a7..c0be997af9c 100644 --- a/runtime-optenv32/fontconfig+32/spec +++ b/runtime-optenv32/fontconfig+32/spec @@ -1,4 +1,4 @@ -VER=2.14.0 +VER=2.15.0 SRCS="tbl::https://www.freedesktop.org/software/fontconfig/release/fontconfig-$VER.tar.xz" -CHKSUMS="sha256::dcbeb84c9c74bbfdb133d535fe1c7bedc9f2221a8daf3914b984c44c520e9bac" +CHKSUMS="sha256::63a0658d0e06e0fa886106452b58ef04f21f58202ea02a94c39de0d3335d7c0e" CHKUPDATE="anitya::id=827" From a30445aa7c68cdea50e7118a8f367248a0eb73fd Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 14:22:34 +0800 Subject: [PATCH 217/722] aalib+32: update to 1.4~rc5 - Use optenv32 template. - Sort patches with patch-series-rename. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/aalib+32/autobuild/build | 12 ------------ runtime-optenv32/aalib+32/autobuild/defines | 19 ++++++++++++++----- runtime-optenv32/aalib+32/autobuild/patch | 6 ------ ...Gimp-produce-better-man-page-output.patch} | 0 ...n-0002-Typo-fix-KEY_MOUDE-KEY_MOUSE.patch} | 0 ...r-aalib-config-and-aafire-1-updates.patch} | 0 ... => 0004-Debian-0004-Fix-linux_init.patch} | 0 ...n-0005-Fix-the-info-file-s-direntry.patch} | 0 ...e-has-errors-from-man-l-not-defined.patch} | 0 ...0007-Debian-0007-Better-Dim-support.patch} | 0 ... 0008-Debian-0008-Symbol-versioning.patch} | 0 ...n-0009-Various-build-system-changes.patch} | 0 ...> 0010-Debian-0010-Gpm_GetEvent-fix.patch} | 0 ... 0011-Debian-0011-Fix-TexInfo-error.patch} | 0 ...linuxkbd-Always-return-with-a-value.patch} | 0 .../aalib+32/autobuild/patches/series | 12 ------------ runtime-optenv32/aalib+32/autobuild/prepare | 3 ++- runtime-optenv32/aalib+32/spec | 6 +++--- 18 files changed, 19 insertions(+), 39 deletions(-) delete mode 100644 runtime-optenv32/aalib+32/autobuild/build delete mode 100644 runtime-optenv32/aalib+32/autobuild/patch rename runtime-optenv32/aalib+32/autobuild/patches/{0001-Make-Gimp-produce-better-man-page-output.patch => 0001-Debian-0001-Make-Gimp-produce-better-man-page-output.patch} (100%) rename runtime-optenv32/aalib+32/autobuild/patches/{0002-Typo-fix-KEY_MOUDE-KEY_MOUSE.patch => 0002-Debian-0002-Typo-fix-KEY_MOUDE-KEY_MOUSE.patch} (100%) rename runtime-optenv32/aalib+32/autobuild/patches/{0003-Manual-page-for-aalib-config-and-aafire-1-updates.patch => 0003-Debian-0003-Manual-page-for-aalib-config-and-aafire-1-updates.patch} (100%) rename runtime-optenv32/aalib+32/autobuild/patches/{0004-Fix-linux_init.patch => 0004-Debian-0004-Fix-linux_init.patch} (100%) rename runtime-optenv32/aalib+32/autobuild/patches/{0005-Fix-the-info-file-s-direntry.patch => 0005-Debian-0005-Fix-the-info-file-s-direntry.patch} (100%) rename runtime-optenv32/aalib+32/autobuild/patches/{0006-Fixes-manpage-has-errors-from-man-l-not-defined.patch => 0006-Debian-0006-Fixes-manpage-has-errors-from-man-l-not-defined.patch} (100%) rename runtime-optenv32/aalib+32/autobuild/patches/{0007-Better-Dim-support.patch => 0007-Debian-0007-Better-Dim-support.patch} (100%) rename runtime-optenv32/aalib+32/autobuild/patches/{0008-Symbol-versioning.patch => 0008-Debian-0008-Symbol-versioning.patch} (100%) rename runtime-optenv32/aalib+32/autobuild/patches/{0009-Various-build-system-changes.patch => 0009-Debian-0009-Various-build-system-changes.patch} (100%) rename runtime-optenv32/aalib+32/autobuild/patches/{0010-Gpm_GetEvent-fix.patch => 0010-Debian-0010-Gpm_GetEvent-fix.patch} (100%) rename runtime-optenv32/aalib+32/autobuild/patches/{0011-Fix-TexInfo-error.patch => 0011-Debian-0011-Fix-TexInfo-error.patch} (100%) rename runtime-optenv32/aalib+32/autobuild/patches/{0012-aalinuxkbd-Always-return-with-a-value.patch => 0012-Debian-0012-aalinuxkbd-Always-return-with-a-value.patch} (100%) delete mode 100644 runtime-optenv32/aalib+32/autobuild/patches/series diff --git a/runtime-optenv32/aalib+32/autobuild/build b/runtime-optenv32/aalib+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/aalib+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/aalib+32/autobuild/defines b/runtime-optenv32/aalib+32/autobuild/defines index 5650e1aa52f..c5848473e35 100644 --- a/runtime-optenv32/aalib+32/autobuild/defines +++ b/runtime-optenv32/aalib+32/autobuild/defines @@ -1,9 +1,18 @@ PKGNAME=aalib+32 PKGSEC=libs -PKGDES="ASCII Art Library (optenv32)" -PKGDEP="x11-lib+32" +PKGDEP="ncurses+32 x11-lib+32" +BUILDDEP="devel-base+32" +PKGDES="ASCII Art Library (32-bit x86 runtime)" + +# FIXME: /opt/32/bin/ld: cannot open linker script file aalib.1.4.ver: +# No such file or directory +ABSHADOW=0 + +AUTOTOOLS_AFTER=( + '--with-ncurses=/opt/32' +) -ABSHADOW=no -AUTOTOOLS_AFTER="--with-ncurses=/opt/32" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 + +PKGEPOCH=1 diff --git a/runtime-optenv32/aalib+32/autobuild/patch b/runtime-optenv32/aalib+32/autobuild/patch deleted file mode 100644 index 0759e9a7ce5..00000000000 --- a/runtime-optenv32/aalib+32/autobuild/patch +++ /dev/null @@ -1,6 +0,0 @@ -for i in `cat autobuild/patches/series`; do - patch -Np1 -i autobuild/patches/$i -done - -sed -i -e '/AM_PATH_AALIB,/s/AM_PATH_AALIB/[&]/' aalib.m4 -autoreconf -fi diff --git a/runtime-optenv32/aalib+32/autobuild/patches/0001-Make-Gimp-produce-better-man-page-output.patch b/runtime-optenv32/aalib+32/autobuild/patches/0001-Debian-0001-Make-Gimp-produce-better-man-page-output.patch similarity index 100% rename from runtime-optenv32/aalib+32/autobuild/patches/0001-Make-Gimp-produce-better-man-page-output.patch rename to runtime-optenv32/aalib+32/autobuild/patches/0001-Debian-0001-Make-Gimp-produce-better-man-page-output.patch diff --git a/runtime-optenv32/aalib+32/autobuild/patches/0002-Typo-fix-KEY_MOUDE-KEY_MOUSE.patch b/runtime-optenv32/aalib+32/autobuild/patches/0002-Debian-0002-Typo-fix-KEY_MOUDE-KEY_MOUSE.patch similarity index 100% rename from runtime-optenv32/aalib+32/autobuild/patches/0002-Typo-fix-KEY_MOUDE-KEY_MOUSE.patch rename to runtime-optenv32/aalib+32/autobuild/patches/0002-Debian-0002-Typo-fix-KEY_MOUDE-KEY_MOUSE.patch diff --git a/runtime-optenv32/aalib+32/autobuild/patches/0003-Manual-page-for-aalib-config-and-aafire-1-updates.patch b/runtime-optenv32/aalib+32/autobuild/patches/0003-Debian-0003-Manual-page-for-aalib-config-and-aafire-1-updates.patch similarity index 100% rename from runtime-optenv32/aalib+32/autobuild/patches/0003-Manual-page-for-aalib-config-and-aafire-1-updates.patch rename to runtime-optenv32/aalib+32/autobuild/patches/0003-Debian-0003-Manual-page-for-aalib-config-and-aafire-1-updates.patch diff --git a/runtime-optenv32/aalib+32/autobuild/patches/0004-Fix-linux_init.patch b/runtime-optenv32/aalib+32/autobuild/patches/0004-Debian-0004-Fix-linux_init.patch similarity index 100% rename from runtime-optenv32/aalib+32/autobuild/patches/0004-Fix-linux_init.patch rename to runtime-optenv32/aalib+32/autobuild/patches/0004-Debian-0004-Fix-linux_init.patch diff --git a/runtime-optenv32/aalib+32/autobuild/patches/0005-Fix-the-info-file-s-direntry.patch b/runtime-optenv32/aalib+32/autobuild/patches/0005-Debian-0005-Fix-the-info-file-s-direntry.patch similarity index 100% rename from runtime-optenv32/aalib+32/autobuild/patches/0005-Fix-the-info-file-s-direntry.patch rename to runtime-optenv32/aalib+32/autobuild/patches/0005-Debian-0005-Fix-the-info-file-s-direntry.patch diff --git a/runtime-optenv32/aalib+32/autobuild/patches/0006-Fixes-manpage-has-errors-from-man-l-not-defined.patch b/runtime-optenv32/aalib+32/autobuild/patches/0006-Debian-0006-Fixes-manpage-has-errors-from-man-l-not-defined.patch similarity index 100% rename from runtime-optenv32/aalib+32/autobuild/patches/0006-Fixes-manpage-has-errors-from-man-l-not-defined.patch rename to runtime-optenv32/aalib+32/autobuild/patches/0006-Debian-0006-Fixes-manpage-has-errors-from-man-l-not-defined.patch diff --git a/runtime-optenv32/aalib+32/autobuild/patches/0007-Better-Dim-support.patch b/runtime-optenv32/aalib+32/autobuild/patches/0007-Debian-0007-Better-Dim-support.patch similarity index 100% rename from runtime-optenv32/aalib+32/autobuild/patches/0007-Better-Dim-support.patch rename to runtime-optenv32/aalib+32/autobuild/patches/0007-Debian-0007-Better-Dim-support.patch diff --git a/runtime-optenv32/aalib+32/autobuild/patches/0008-Symbol-versioning.patch b/runtime-optenv32/aalib+32/autobuild/patches/0008-Debian-0008-Symbol-versioning.patch similarity index 100% rename from runtime-optenv32/aalib+32/autobuild/patches/0008-Symbol-versioning.patch rename to runtime-optenv32/aalib+32/autobuild/patches/0008-Debian-0008-Symbol-versioning.patch diff --git a/runtime-optenv32/aalib+32/autobuild/patches/0009-Various-build-system-changes.patch b/runtime-optenv32/aalib+32/autobuild/patches/0009-Debian-0009-Various-build-system-changes.patch similarity index 100% rename from runtime-optenv32/aalib+32/autobuild/patches/0009-Various-build-system-changes.patch rename to runtime-optenv32/aalib+32/autobuild/patches/0009-Debian-0009-Various-build-system-changes.patch diff --git a/runtime-optenv32/aalib+32/autobuild/patches/0010-Gpm_GetEvent-fix.patch b/runtime-optenv32/aalib+32/autobuild/patches/0010-Debian-0010-Gpm_GetEvent-fix.patch similarity index 100% rename from runtime-optenv32/aalib+32/autobuild/patches/0010-Gpm_GetEvent-fix.patch rename to runtime-optenv32/aalib+32/autobuild/patches/0010-Debian-0010-Gpm_GetEvent-fix.patch diff --git a/runtime-optenv32/aalib+32/autobuild/patches/0011-Fix-TexInfo-error.patch b/runtime-optenv32/aalib+32/autobuild/patches/0011-Debian-0011-Fix-TexInfo-error.patch similarity index 100% rename from runtime-optenv32/aalib+32/autobuild/patches/0011-Fix-TexInfo-error.patch rename to runtime-optenv32/aalib+32/autobuild/patches/0011-Debian-0011-Fix-TexInfo-error.patch diff --git a/runtime-optenv32/aalib+32/autobuild/patches/0012-aalinuxkbd-Always-return-with-a-value.patch b/runtime-optenv32/aalib+32/autobuild/patches/0012-Debian-0012-aalinuxkbd-Always-return-with-a-value.patch similarity index 100% rename from runtime-optenv32/aalib+32/autobuild/patches/0012-aalinuxkbd-Always-return-with-a-value.patch rename to runtime-optenv32/aalib+32/autobuild/patches/0012-Debian-0012-aalinuxkbd-Always-return-with-a-value.patch diff --git a/runtime-optenv32/aalib+32/autobuild/patches/series b/runtime-optenv32/aalib+32/autobuild/patches/series deleted file mode 100644 index 144972df4e6..00000000000 --- a/runtime-optenv32/aalib+32/autobuild/patches/series +++ /dev/null @@ -1,12 +0,0 @@ -0001-Make-Gimp-produce-better-man-page-output.patch -0002-Typo-fix-KEY_MOUDE-KEY_MOUSE.patch -0003-Manual-page-for-aalib-config-and-aafire-1-updates.patch -0004-Fix-linux_init.patch -0005-Fix-the-info-file-s-direntry.patch -0006-Fixes-manpage-has-errors-from-man-l-not-defined.patch -0007-Better-Dim-support.patch -0008-Symbol-versioning.patch -0009-Various-build-system-changes.patch -0010-Gpm_GetEvent-fix.patch -0011-Fix-TexInfo-error.patch -0012-aalinuxkbd-Always-return-with-a-value.patch diff --git a/runtime-optenv32/aalib+32/autobuild/prepare b/runtime-optenv32/aalib+32/autobuild/prepare index 95a3b995e1f..84f2a0156a9 100644 --- a/runtime-optenv32/aalib+32/autobuild/prepare +++ b/runtime-optenv32/aalib+32/autobuild/prepare @@ -1 +1,2 @@ -export CFLAGS+="-I/opt/32/include/ncursesw" +abinfo "Appending /opt/32/include/ncursesw to include path ..." +export CFLAGS="${CFLAGS} -I/opt/32/include/ncursesw" diff --git a/runtime-optenv32/aalib+32/spec b/runtime-optenv32/aalib+32/spec index f615dd885d1..c82022d01da 100644 --- a/runtime-optenv32/aalib+32/spec +++ b/runtime-optenv32/aalib+32/spec @@ -1,5 +1,5 @@ -VER=1.4rc5 -SRCS="tbl::https://sourceforge.net/projects/aa-project/files/aa-lib/$VER/aalib-$VER.tar.gz" +UPSTREAM_VER=1.4rc5 +VER=${UPSTREAM_VER/rc/~rc} +SRCS="tbl::https://sourceforge.net/projects/aa-project/files/aa-lib/${UPSTREAM_VER}/aalib-${UPSTREAM_VER}.tar.gz" CHKSUMS="sha256::fbddda9230cf6ee2a4f5706b4b11e2190ae45f5eda1f0409dc4f99b35e0a70ee" -REL=2 CHKUPDATE="anitya::id=7921" From 053c5751ba22741245e7cc2062c60f02e26c5d6d Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 14:28:25 +0800 Subject: [PATCH 218/722] pcre+32: update to 8.45 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/pcre+32/autobuild/build | 12 ------------ runtime-optenv32/pcre+32/autobuild/defines | 17 ++++++++++++++--- runtime-optenv32/pcre+32/spec | 6 +++--- 3 files changed, 17 insertions(+), 18 deletions(-) delete mode 100644 runtime-optenv32/pcre+32/autobuild/build diff --git a/runtime-optenv32/pcre+32/autobuild/build b/runtime-optenv32/pcre+32/autobuild/build deleted file mode 100644 index 13a6de548aa..00000000000 --- a/runtime-optenv32/pcre+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH -./configure --prefix=/opt/32 --enable-utf --enable-unicode-properties \ - --enable-pcregrep-libz --enable-pcregrep-libbz2 \ - --enable-pcretest-libreadline --enable-pcre16 \ - --enable-pcre32 --enable-jit \ - CC=i686-pc-linux-gnu-gcc CXX=i686-pc-linux-gnu-g++ \ - PKG_CONFIG_PATH=/opt/32/lib/pkconfig - -make -make install DESTDIR=$PKGDIR - -rm -rf $PKGDIR/opt/32/{bin,share} diff --git a/runtime-optenv32/pcre+32/autobuild/defines b/runtime-optenv32/pcre+32/autobuild/defines index c71ed04849a..79839a08651 100644 --- a/runtime-optenv32/pcre+32/autobuild/defines +++ b/runtime-optenv32/pcre+32/autobuild/defines @@ -1,8 +1,19 @@ PKGNAME=pcre+32 -PKGDES="Perl Compatible Regular Expression (optenv32)" PKGSEC=libs PKGDEP="zlib+32 bzip2+32 readline+32 glibc+32" -BUILDDEP="32subsystem" +BUILDDEP="devel-base+32" +PKGDES="Perl Compatible Regular Expression (32-bit x86 runtime)" NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 + +AUTOTOOLS_AFTER=( + '--enable-utf' + '--enable-unicode-properties' + '--enable-pcregrep-libz' + '--enable-pcregrep-libbz2' + '--enable-pcretest-libreadline' + '--enable-pcre16' + '--enable-pcre32' + '--enable-jit' +) diff --git a/runtime-optenv32/pcre+32/spec b/runtime-optenv32/pcre+32/spec index 1060fab4fad..47c68758b7c 100644 --- a/runtime-optenv32/pcre+32/spec +++ b/runtime-optenv32/pcre+32/spec @@ -1,4 +1,4 @@ -VER=8.44 -SRCS="tbl::https://ftp.pcre.org/pub/pcre/pcre-$VER.tar.gz" -CHKSUMS="sha256::aecafd4af3bd0f3935721af77b889d9024b2e01d96b58471bd91a3063fb47728" +VER=8.45 +SRCS="tbl::https://ftp.exim.org/pub/pcre/pcre-$VER.tar.gz" +CHKSUMS="sha256::4e6ce03e0336e8b4a3d6c2b70b1c5e18590a5673a98186da90d4f33c23defc09" CHKUPDATE="anitya::id=2610" From 670d5bd2951e9ecd060de3e0746cc9c36bcb3e0b Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 14:45:06 +0800 Subject: [PATCH 219/722] harfbuzz+32: update to 8.4.0 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/harfbuzz+32/autobuild/build | 14 -------------- runtime-optenv32/harfbuzz+32/autobuild/defines | 17 +++++++++++++---- runtime-optenv32/harfbuzz+32/autobuild/prepare | 3 --- runtime-optenv32/harfbuzz+32/spec | 6 +++--- 4 files changed, 16 insertions(+), 24 deletions(-) delete mode 100644 runtime-optenv32/harfbuzz+32/autobuild/build delete mode 100644 runtime-optenv32/harfbuzz+32/autobuild/prepare diff --git a/runtime-optenv32/harfbuzz+32/autobuild/build b/runtime-optenv32/harfbuzz+32/autobuild/build deleted file mode 100644 index ac049d18e83..00000000000 --- a/runtime-optenv32/harfbuzz+32/autobuild/build +++ /dev/null @@ -1,14 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -./configure --enable-shared --prefix=/opt/32 \ - --build=i686-pc-linux-gnu --host=i686-pc-linux-gnu \ - --with-gobject --with-glib \ - --with-freetype \ - --with-icu --without-cairo \ - CC=i686-pc-linux-gnu-gcc CXX=i686-pc-linux-gnu-g++ \ - LDFLAGS="-L/opt/32/lib" PKG_CONFIG_PATH=/opt/32/lib/pkgconfig - -make -make DESTDIR="$PKGDIR" install - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/harfbuzz+32/autobuild/defines b/runtime-optenv32/harfbuzz+32/autobuild/defines index 43013df5391..237e557f61d 100644 --- a/runtime-optenv32/harfbuzz+32/autobuild/defines +++ b/runtime-optenv32/harfbuzz+32/autobuild/defines @@ -1,7 +1,16 @@ PKGNAME=harfbuzz+32 -PKGDES="OpenType text shaping engine (optenv32)" PKGSEC=libs -PKGDEP="glibc+32 glib+32 icu+32 freetype+32" -BUILDDEP="32subsystem" +PKGDEP="cairo+32 freetype+32 glibc+32 glib+32 icu+32" +BUILDDEP="devel-base+32" +PKGDES="OpenType text shaping engine (32-bit x86 runtime)" + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 + +AUTOTOOLS_AFTER=( + '--with-gobject' + '--with-glib' + '--with-freetype' + '--with-icu' + '--with-cairo' +) diff --git a/runtime-optenv32/harfbuzz+32/autobuild/prepare b/runtime-optenv32/harfbuzz+32/autobuild/prepare deleted file mode 100644 index 172e7acb64a..00000000000 --- a/runtime-optenv32/harfbuzz+32/autobuild/prepare +++ /dev/null @@ -1,3 +0,0 @@ -export CPPFLAGS="${CPPFLAGS} -DHB_NO_PRAGMA_GCC_DIAGNOSTIC_ERROR=1" -export CFLAGS="${CFLAGS} -Wno-error=redundant-decls" -export CXXFLAGS="${CXXFLAGS} -Wno-error=redundant-decls" diff --git a/runtime-optenv32/harfbuzz+32/spec b/runtime-optenv32/harfbuzz+32/spec index ab4fb99c4fa..384dbbe525d 100644 --- a/runtime-optenv32/harfbuzz+32/spec +++ b/runtime-optenv32/harfbuzz+32/spec @@ -1,4 +1,4 @@ -VER=2.6.7 -SRCS="tbl::https://www.freedesktop.org/software/harfbuzz/release/harfbuzz-$VER.tar.xz" -CHKSUMS="sha256::49e481d06cdff97bf68d99fa26bdf785331f411614485d892ea4c78eb479b218" +VER=8.4.0 +SRCS="git::commit=tags/$VER::https://github.com/harfbuzz/harfbuzz" +CHKSUMS="SKIP" CHKUPDATE="anitya::id=1299" From 0a0fd19aef786d2b83a14b50a09eaef0b84169a1 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 14:47:33 +0800 Subject: [PATCH 220/722] libmikmod+32: improve packaging - Use devel-base+32 as build dependency. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libmikmod+32/autobuild/defines | 4 ++-- runtime-optenv32/libmikmod+32/spec | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/libmikmod+32/autobuild/defines b/runtime-optenv32/libmikmod+32/autobuild/defines index 6c892863b3a..24136c55c4d 100644 --- a/runtime-optenv32/libmikmod+32/autobuild/defines +++ b/runtime-optenv32/libmikmod+32/autobuild/defines @@ -1,8 +1,8 @@ PKGNAME=libmikmod+32 PKGSEC=libs PKGDEP="pulseaudio+32" -BUILDDEP="32subsystem" -PKGDES="Modular music player and library (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="Modular music player and library (32-bit x86 runtime)" NOLTO=1 ABHOST=optenv32 diff --git a/runtime-optenv32/libmikmod+32/spec b/runtime-optenv32/libmikmod+32/spec index 94eff7d24ec..6e77f53d540 100644 --- a/runtime-optenv32/libmikmod+32/spec +++ b/runtime-optenv32/libmikmod+32/spec @@ -1,4 +1,5 @@ VER=3.3.11.1 +REL=1 SRCS="tbl::https://downloads.sourceforge.net/project/mikmod/libmikmod/$VER/libmikmod-$VER.tar.gz" CHKSUMS="sha256::ad9d64dfc8f83684876419ea7cd4ff4a41d8bcd8c23ef37ecb3a200a16b46d19" CHKUPDATE="anitya::id=1659" From 804a6bb62165eb233c27165861c37629b8b630fb Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 14:54:21 +0800 Subject: [PATCH 221/722] smpeg+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/smpeg+32/autobuild/build | 12 ------------ runtime-optenv32/smpeg+32/autobuild/defines | 7 +++---- runtime-optenv32/smpeg+32/autobuild/prepare | 2 +- runtime-optenv32/smpeg+32/spec | 2 +- 4 files changed, 5 insertions(+), 18 deletions(-) delete mode 100644 runtime-optenv32/smpeg+32/autobuild/build diff --git a/runtime-optenv32/smpeg+32/autobuild/build b/runtime-optenv32/smpeg+32/autobuild/build deleted file mode 100644 index 8ff97ea83bc..00000000000 --- a/runtime-optenv32/smpeg+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make ${MAKE_AFTER} -make install DESTDIR="$PKGDIR" ${MAKE_AFTER} - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/smpeg+32/autobuild/defines b/runtime-optenv32/smpeg+32/autobuild/defines index 9735408db4d..c303c25eab2 100644 --- a/runtime-optenv32/smpeg+32/autobuild/defines +++ b/runtime-optenv32/smpeg+32/autobuild/defines @@ -1,9 +1,8 @@ PKGNAME=smpeg+32 PKGSEC=x11 PKGDEP="sdl+32" -BUILDDEP="32subsystem" -PKGDES="SDL MPEG Player Library (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="SDL MPEG Player Library (32-bit x86 runtime)" -MAKE_AFTER='LIBS=-lX11' NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/smpeg+32/autobuild/prepare b/runtime-optenv32/smpeg+32/autobuild/prepare index e45ac7ce833..c1d1500cce7 100644 --- a/runtime-optenv32/smpeg+32/autobuild/prepare +++ b/runtime-optenv32/smpeg+32/autobuild/prepare @@ -1,2 +1,2 @@ +abinfo "Appending -Wno-narrowing to workaround build failure ..." export CFLAGS="${CFLAGS} -Wno-narrowing" -export LDFLAGS="${LDFLAGS} -lSDL" diff --git a/runtime-optenv32/smpeg+32/spec b/runtime-optenv32/smpeg+32/spec index 1e8cd581344..5e233e8484b 100644 --- a/runtime-optenv32/smpeg+32/spec +++ b/runtime-optenv32/smpeg+32/spec @@ -1,5 +1,5 @@ VER=0.4.5 +REL=3 SRCS="tbl::https://repo.aosc.io/aosc-repacks/smpeg-$VER.tar.xz" CHKSUMS="sha256::4238df675ebcbfb78cf1d5f2e7350896b34ace20ff6ac0f30ed5d1fbc7f064c0" -REL=2 CHKUPDATE="anitya::id=17787" From 322343077f61fdc2fe1646f9f277111b42018219 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 14:55:00 +0800 Subject: [PATCH 222/722] sdl-sound+32: drop, orphaned --- runtime-optenv32/sdl-sound+32/autobuild/build | 13 ------------- runtime-optenv32/sdl-sound+32/autobuild/defines | 7 ------- runtime-optenv32/sdl-sound+32/spec | 5 ----- 3 files changed, 25 deletions(-) delete mode 100644 runtime-optenv32/sdl-sound+32/autobuild/build delete mode 100644 runtime-optenv32/sdl-sound+32/autobuild/defines delete mode 100644 runtime-optenv32/sdl-sound+32/spec diff --git a/runtime-optenv32/sdl-sound+32/autobuild/build b/runtime-optenv32/sdl-sound+32/autobuild/build deleted file mode 100644 index beb84519216..00000000000 --- a/runtime-optenv32/sdl-sound+32/autobuild/build +++ /dev/null @@ -1,13 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -./configure --prefix=/opt/32 \ - --host=i686-aosc-linux-gnu \ - --build=i686-aosc-linux-gnu \ - --target=i686-aosc-linux-gnu \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig \ - CC=/opt/32/bin/gcc \ - CXX=/opt/32/bin/g++ -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{share,bin} diff --git a/runtime-optenv32/sdl-sound+32/autobuild/defines b/runtime-optenv32/sdl-sound+32/autobuild/defines deleted file mode 100644 index d38a53b39fd..00000000000 --- a/runtime-optenv32/sdl-sound+32/autobuild/defines +++ /dev/null @@ -1,7 +0,0 @@ -PKGNAME=sdl-sound+32 -PKGSEC=libs -PKGDEP="sdl+32 libmikmod+32 libvorbis+32 flac+32 speex+32 smpeg+32" -BUILDDEP="32subsystem" -PKGDES="A SDL library to decode several popular sound file formats (optenv32)" -NOLTO=1 -ABHOST=noarch diff --git a/runtime-optenv32/sdl-sound+32/spec b/runtime-optenv32/sdl-sound+32/spec deleted file mode 100644 index ee8024115f9..00000000000 --- a/runtime-optenv32/sdl-sound+32/spec +++ /dev/null @@ -1,5 +0,0 @@ -VER=1.0.3 -SRCS="tbl::https://www.icculus.org/SDL_sound/downloads/SDL_sound-$VER.tar.gz" -CHKSUMS="sha256::3999fd0bbb485289a52be14b2f68b571cb84e380cc43387eadf778f64c79e6df" -REL=3 -CHKUPDATE="anitya::id=10262" From cde91e11bfc67daf3b850e27f22bb7f0afc19822 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 14:56:17 +0800 Subject: [PATCH 223/722] nvidia+32: drop, orphaned --- runtime-optenv32/nvidia+32/autobuild/build | 1 - runtime-optenv32/nvidia+32/autobuild/defines | 11 ----------- runtime-optenv32/nvidia+32/spec | 3 --- 3 files changed, 15 deletions(-) delete mode 100644 runtime-optenv32/nvidia+32/autobuild/build delete mode 100644 runtime-optenv32/nvidia+32/autobuild/defines delete mode 100644 runtime-optenv32/nvidia+32/spec diff --git a/runtime-optenv32/nvidia+32/autobuild/build b/runtime-optenv32/nvidia+32/autobuild/build deleted file mode 100644 index e88246a7939..00000000000 --- a/runtime-optenv32/nvidia+32/autobuild/build +++ /dev/null @@ -1 +0,0 @@ -mkdir "${PKGDIR}" diff --git a/runtime-optenv32/nvidia+32/autobuild/defines b/runtime-optenv32/nvidia+32/autobuild/defines deleted file mode 100644 index f77011bb50d..00000000000 --- a/runtime-optenv32/nvidia+32/autobuild/defines +++ /dev/null @@ -1,11 +0,0 @@ -PKGNAME=nvidia+32 -PKGSEC=x11 -PKGDES="Transitional package for nvidia" -PKGCONFL="nvidia+340+32 nvidia+390+32" - -PKGDEP="nvidia" -PKGEPOCH=1 -PKGBREAK="nvidia<=510.47.03" - -FAIL_ARCH="!(amd64)" -ABSPLITDBG=0 diff --git a/runtime-optenv32/nvidia+32/spec b/runtime-optenv32/nvidia+32/spec deleted file mode 100644 index 34d3dfcdcf1..00000000000 --- a/runtime-optenv32/nvidia+32/spec +++ /dev/null @@ -1,3 +0,0 @@ -VER=0 -DUMMYSRC=1 -CHKUPDATE="anitya::id=5454" From ac01e4cfbf15fb5539c5cf918c815175588da4b3 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 14:57:52 +0800 Subject: [PATCH 224/722] allegro+32: drop, orphaned --- runtime-optenv32/allegro+32/autobuild/build | 12 ------------ runtime-optenv32/allegro+32/autobuild/defines | 9 --------- runtime-optenv32/allegro+32/spec | 5 ----- 3 files changed, 26 deletions(-) delete mode 100644 runtime-optenv32/allegro+32/autobuild/build delete mode 100644 runtime-optenv32/allegro+32/autobuild/defines delete mode 100644 runtime-optenv32/allegro+32/spec diff --git a/runtime-optenv32/allegro+32/autobuild/build b/runtime-optenv32/allegro+32/autobuild/build deleted file mode 100644 index 3d468c123ae..00000000000 --- a/runtime-optenv32/allegro+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH -export PKG_CONFIG_PATH=/opt/32/lib/pkg-config -export PKG_CONFIG=i686-pc-linux-gnu-pkg-config - -cmake . -DCMAKE_INSTALL_PREFIX=/opt/32 -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_C_COMPILER=/opt/32/bin/i686-pc-linux-gnu-gcc \ - -DCMAKE_FIND_ROOT_PATH=/opt/32 ${CMAKE_AFTER} - -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/allegro+32/autobuild/defines b/runtime-optenv32/allegro+32/autobuild/defines deleted file mode 100644 index 9b67816b6ba..00000000000 --- a/runtime-optenv32/allegro+32/autobuild/defines +++ /dev/null @@ -1,9 +0,0 @@ -PKGNAME=allegro+32 -PKGSEC=libs -PKGDEP="pulseaudio+32 gtk-2+32 mesa+32" -PKGDES="Portable library mainly aimed at video games and multimedia programs (optenv32)" - -BUILDDEP="cmake" -CMAKE_AFTER="-DWANT_PHYSFS=OFF -DWANT_JACK=OFF" -NOLTO=1 -ABHOST=noarch diff --git a/runtime-optenv32/allegro+32/spec b/runtime-optenv32/allegro+32/spec deleted file mode 100644 index 4bbc536b17a..00000000000 --- a/runtime-optenv32/allegro+32/spec +++ /dev/null @@ -1,5 +0,0 @@ -VER=4.4.2 -SRCS="tbl::https://sourceforge.net/projects/alleg/files/allegro/$VER/allegro-$VER.tar.gz" -CHKSUMS="sha256::1b21e7577dbfada02d85ca4510bd22fedaa6ce76fde7f4838c7c1276eb840fdc" -REL=2 -CHKUPDATE="anitya::id=13982" From ed31ce620ca4f8084b931bb37a5625b461705536 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 14:58:10 +0800 Subject: [PATCH 225/722] boost+32: drop, orphaned --- runtime-optenv32/boost+32/autobuild/build | 33 ---- runtime-optenv32/boost+32/autobuild/defines | 11 -- ...0002-boost-1.50.0-fix-non-utf8-files.patch | 22 --- .../0003-boost-1.48.0-add-bjam-man-page.patch | 150 ------------------ .../patches/0004-boost-1.58.0-pool.patch | 120 -------------- .../patches/0005-boost-1.57.0-mpl-print.patch | 31 ---- .../0007-boost-1.58.0-pool-test_linking.patch | 31 ---- ...008-oost-1.57.0-python-libpython_dep.patch | 13 -- ...0009-boost-1.57.0-python-abi_letters.patch | 62 -------- .../0011-boost-1.57.0-build-optflags.patch | 48 ------ .../patches/0012-boost-1.60.0-no-rpath.patch | 21 --- runtime-optenv32/boost+32/spec | 5 - 12 files changed, 547 deletions(-) delete mode 100644 runtime-optenv32/boost+32/autobuild/build delete mode 100644 runtime-optenv32/boost+32/autobuild/defines delete mode 100644 runtime-optenv32/boost+32/autobuild/patches/0002-boost-1.50.0-fix-non-utf8-files.patch delete mode 100644 runtime-optenv32/boost+32/autobuild/patches/0003-boost-1.48.0-add-bjam-man-page.patch delete mode 100644 runtime-optenv32/boost+32/autobuild/patches/0004-boost-1.58.0-pool.patch delete mode 100644 runtime-optenv32/boost+32/autobuild/patches/0005-boost-1.57.0-mpl-print.patch delete mode 100644 runtime-optenv32/boost+32/autobuild/patches/0007-boost-1.58.0-pool-test_linking.patch delete mode 100644 runtime-optenv32/boost+32/autobuild/patches/0008-oost-1.57.0-python-libpython_dep.patch delete mode 100644 runtime-optenv32/boost+32/autobuild/patches/0009-boost-1.57.0-python-abi_letters.patch delete mode 100644 runtime-optenv32/boost+32/autobuild/patches/0011-boost-1.57.0-build-optflags.patch delete mode 100644 runtime-optenv32/boost+32/autobuild/patches/0012-boost-1.60.0-no-rpath.patch delete mode 100644 runtime-optenv32/boost+32/spec diff --git a/runtime-optenv32/boost+32/autobuild/build b/runtime-optenv32/boost+32/autobuild/build deleted file mode 100644 index 99424483345..00000000000 --- a/runtime-optenv32/boost+32/autobuild/build +++ /dev/null @@ -1,33 +0,0 @@ -export _stagedir="$SRCDIR/stagedir" -export JOBS="$(sed -e 's/.*\(-j *[0-9]\+\).*/\1/' <<< ${MAKEFLAGS})" -export PATH=/opt/32/bin:$PATH - -./bootstrap.sh --with-toolset=gcc --with-icu=/opt/32 --with-python=/usr/bin/python2 - -# Extra features -# disable for optenv32 -# echo "using python : 3.6 : /usr/bin/python3 : /usr/include/python3.6m : /usr/lib ;" >> project-config.jam - -export _bindir="bin.linuxx86" - -install -Dm755 tools/build/src/engine/$_bindir/b2 "${_stagedir}"/bin/b2 - -"${_stagedir}"/bin/b2 \ - variant=release \ - debug-symbols=off \ - threading=multi \ - runtime-link=shared \ - link=shared,static \ - toolset=gcc \ - python=2.7 \ - cflags="${CPPFLAGS} ${CFLAGS} -O3" linkflags="${LDFLAGS}" \ - --layout=system \ - --prefix="${_stagedir}" \ - ${JOBS} -d+2 \ - install - -install -dm755 "$PKGDIR"/opt/32/ -cp -a "${_stagedir}"/{include,lib} "$PKGDIR"/opt/32/ - -install -d "$PKGDIR"/opt/32/lib -cp -a "${_stagedir}"/lib/*.a "$PKGDIR"/opt/32/lib/ diff --git a/runtime-optenv32/boost+32/autobuild/defines b/runtime-optenv32/boost+32/autobuild/defines deleted file mode 100644 index e9698e46fa6..00000000000 --- a/runtime-optenv32/boost+32/autobuild/defines +++ /dev/null @@ -1,11 +0,0 @@ -PKGNAME=boost+32 -PKGDES="Boost C++ libs (32subsystem)" -PKGDEP="python-2+32 bzip2+32 zlib+32 icu+32" -BUILDDEP="32subsystem" -PKGSEC=libs - -NOSTATIC=no - -ABHOST=noarch -AB_FLAGS_O3=1 -NOLTO=1 diff --git a/runtime-optenv32/boost+32/autobuild/patches/0002-boost-1.50.0-fix-non-utf8-files.patch b/runtime-optenv32/boost+32/autobuild/patches/0002-boost-1.50.0-fix-non-utf8-files.patch deleted file mode 100644 index b60a3ac49d3..00000000000 --- a/runtime-optenv32/boost+32/autobuild/patches/0002-boost-1.50.0-fix-non-utf8-files.patch +++ /dev/null @@ -1,22 +0,0 @@ -diff --git a/libs/units/example/autoprefixes.cpp b/libs/units/example/autoprefixes.cpp -index 8b2bc43..d04f2fe 100644 ---- a/libs/units/example/autoprefixes.cpp -+++ b/libs/units/example/autoprefixes.cpp -@@ -67,7 +67,7 @@ struct thing_base_unit : boost::units::base_unit - { - static const char* name() { return("EUR"); } -- static const char* symbol() { return(""); } -+ static const char* symbol() { return("€"); } - }; - - int main() -@@ -140,7 +140,7 @@ int main() - - quantity ce = 2048. * euro_base_unit::unit_type(); - cout << name_format << engineering_prefix << ce << endl; // 2.048 kiloEUR -- cout << symbol_format << engineering_prefix << ce << endl; // 2.048 k -+ cout << symbol_format << engineering_prefix << ce << endl; // 2.048 k€ - - - return 0; diff --git a/runtime-optenv32/boost+32/autobuild/patches/0003-boost-1.48.0-add-bjam-man-page.patch b/runtime-optenv32/boost+32/autobuild/patches/0003-boost-1.48.0-add-bjam-man-page.patch deleted file mode 100644 index ea3f19fb6ce..00000000000 --- a/runtime-optenv32/boost+32/autobuild/patches/0003-boost-1.48.0-add-bjam-man-page.patch +++ /dev/null @@ -1,150 +0,0 @@ -diff --git a/tools/build/v2/doc/bjam.1 b/tools/build/v2/doc/bjam.1 -new file mode 100644 -index 0000000..8a44af6 ---- /dev/null -+++ b/tools/build/v2/doc/bjam.1 -@@ -0,0 +1,144 @@ -+.TH "bjam" 1 "Sat Nov 19 2011" "Doxygen" \" -*- nroff -*- -+.ad l -+.nh -+.SH NAME -+bjam \- Command-line utility to build Boost-related C++ projects with Boost\&.Build -+.SH "SYNOPSIS" -+.PP -+\fBbjam\fP \fC[-a] [-dx] [-fx] [-jx] [-lx] [-n] [-ox] [-px] [-q] [-sx=y] [-tx] [-v] [--x]\fP -+.PP -+\fIbjam\fP accepts the following options: -+.PP -+\fB-a\fP -+.br -+ Build all targets, even if they are current -+.PP -+\fB-dx\fP -+.br -+ Set the debug level to x (0-9) -+.PP -+\fB-fx\fP -+.br -+ Read x instead of Jambase -+.PP -+\fB-jx\fP -+.br -+ Run up to x shell commands concurrently -+.PP -+\fB-lx\fP -+.br -+ Limit actions to x number of seconds after which they are stopped -+.PP -+\fB-n\fP -+.br -+ Don't actually execute the updating actions -+.PP -+\fB-ox\fP -+.br -+ Write the updating actions to file x -+.PP -+\fB-px\fP -+.br -+ x=0, pipes action stdout and stderr merged into action output -+.PP -+\fB-q\fP -+.br -+ Quit quickly as soon as a target fails -+.PP -+\fB-sx=y\fP -+.br -+ Set variable x=y, overriding environment -+.PP -+\fB-tx\fP -+.br -+ Rebuild x, even if it is up-to-date -+.PP -+\fB-v\fP -+.br -+ Print the version of jam and exit -+.PP -+\fB--x\fP -+.br -+ Option is ignored -+.SH "DESCRIPTION" -+.PP -+This section provides the information necessary to create your own projects using \fIBoost\&.Build\fP The information provided here is relatively high-level, and Chapter 6, Reference as well as the on-line help system must be used to obtain low-level documentation (see --help) -+.PP -+\fIBoost\&.Build\fP actually consists of two parts - \fIBoost\&.Jam\fP, a build engine with its own interpreted language, and \fIBoost\&.Build\fP itself, implemented in \fIBoost\&.Jam's\fP language\&. The chain of events when you type bjam on the command line is as follows: -+.IP "\(bu" 2 -+\fIBoost\&.Jam\fP tries to find \fIBoost\&.Build\fP and loads the top-level module\&. The exact process is described in the section called “Initialization” -+.PP -+.PP -+.IP "\(bu" 2 -+The top-level module loads user-defined configuration files, \fIuser-config\&.jam\fP and \fIsite-config\&.jam\fP, which define available toolsets -+.PP -+.PP -+.IP "\(bu" 2 -+The \fIJamfile\fP in the current directory is read That in turn might cause reading of further Jamfiles\&. As a result, a tree of projects is created, with targets inside projects -+.PP -+.PP -+.IP "\(bu" 2 -+Finally, using the build request specified on the command line, \fIBoost\&.Build\fP decides which targets should be built and how\&. That information is passed back to \fIBoost\&.Jam\fP, which takes care of actually running the scheduled build action commands -+.PP -+.PP -+So, to be able to successfully use \fIBoost\&.Build\fP, you need to know only four things: -+.IP "\(bu" 2 -+How to configure \fIBoost\&.Build\fP (http://www.boost.org/boost-build2/doc/html/bbv2/overview/configuration.html) -+.IP "\(bu" 2 -+How to declare targets in Jamfiles (http://www.boost.org/boost-build2/doc/html/bbv2/overview/targets.html) -+.IP "\(bu" 2 -+How the build process works (http://www.boost.org/boost-build2/doc/html/bbv2/overview/build_process.html) -+.PP -+.PP -+Some Basics about the \fIBoost\&.Jam\fP language\&. See the section called “Boost\&.Jam Language” (http://www.boost.org/boost-build2/doc/html/bbv2/overview/jam_language.html) -+.SH "CONCEPTS" -+.PP -+\fIBoost\&.Build\fP has a few unique concepts that are introduced in this section\&. The best way to explain the concepts is by comparison with more classical build tools -+.PP -+When using any flavour of make, you directly specify targets and commands that are used to create them from other target\&. The below example creates a\&.o from a\&.c using a hardcoded compiler invocation command -+.PP -+a\&.o: a\&.c -+.br -+ g++ -o a\&.o -g a\&.c -+.PP -+This is rather low-level description mechanism and it is hard to adjust commands, options, and sets of created targets depending on the used compiler and operating system\&. -+.PP -+To improve portability, most modern build system provide a set of higher-level functions that can be used in build description files\&. Consider this example: -+.PP -+add_program ('a', 'a\&.c') -+.br -+.PP -+This is a function call that creates targets necessary to create executable file from source file a\&.c\&. Depending on configured properties, different commands line may be used\&. However, \fIadd_program\fP is higher-level, but rather thin level All targets are created immediately when build description is parsed, which makes it impossible to perform multi-variant builds\&. Often, change in any build property requires complete reconfiguration of the build tree -+.PP -+In order to support true multivariant builds, Boost\&.Build introduces the concept of metatarget—object that is created when build description is parsed and can be later called with specific build properties to generate actual targets -+.PP -+Consider an example: -+.PP -+exe a : a\&.cpp ; -+.br -+.PP -+When this declaration is parsed, \fIBoost\&.Build\fP creates a metatarget, but does not yet decides what files must be created, or what commands must be used\&. After all build files are parsed, Boost\&.Build considers properties requested on the command line\&. Supposed you have invoked \fIBoost\&.Build\fP with: -+.PP -+\fIbjam\fP toolset=gcc toolset=msvc -+.br -+.PP -+In that case, the metatarget will be called twice, once with toolset=gcc and once with toolset=msvc\&. Both invocations will produce concrete targets, that will have different extensions and use different command lines\&. Another key concept is build property\&. Build property is a variable that affects the build process\&. It can be specified on the command line, and is passed when calling a metatarget -+.PP -+While all build tools have a similar mechanism, \fIBoost\&.Build\fP differs by requiring that all build properties are declared in advance, and providing a large set of properties with portable semantics -+.PP -+The final concept is property propagation\&. Boost\&.Build does not require that every metatarget is called with the same properties\&. Instead, the 'top-level' metatargets are called with the properties specified on the command line Each metatarget can elect to augment or override some properties (in particular, using the requirements mechanism, see the section called “Requirements”: http://www.boost.org/boost-build2/doc/html/bbv2/overview/targets.html#bbv2.overview.targets.requirements) Then, the dependency metatargets are called with modified properties and produce concrete targets that are then used in build process Of course, dependency metatargets maybe in turn modify build properties and have dependencies of their own\&. -+.PP -+For more in-depth treatment of the requirements and concepts, you may refer to SYRCoSE 2009 Boost\&.Build article (http://syrcose.ispras.ru/2009/files/04_paper.pdf)\&. -+.SH "SEE ALSO" -+.PP -+\fBboost-libraries\fP(3) -+.SH "SUPPORT" -+.PP -+Please report any bugs to https://svn.boost.org/trac/boost/ -+.SH "COPYRIGHT" -+.PP -+Boost Software License - Version 1\&.0 - August 17th, 2003 -+.PP -+See the LICENSE_1_0\&.txt file for more information on that license, or directly on Internet: -+.br -+ http://www.boost.org/LICENSE_1_0.txt diff --git a/runtime-optenv32/boost+32/autobuild/patches/0004-boost-1.58.0-pool.patch b/runtime-optenv32/boost+32/autobuild/patches/0004-boost-1.58.0-pool.patch deleted file mode 100644 index ef1c6597a65..00000000000 --- a/runtime-optenv32/boost+32/autobuild/patches/0004-boost-1.58.0-pool.patch +++ /dev/null @@ -1,120 +0,0 @@ -Index: boost-1.58.0/boost/pool/pool.hpp -=================================================================== ---- a/boost/pool/pool.hpp (revision 78317) -+++ b/boost/pool/pool.hpp (revision 78326) -@@ -27,4 +27,6 @@ - #include - -+// std::numeric_limits -+#include - // boost::integer::static_lcm - #include -@@ -358,4 +360,11 @@ - } - -+ size_type max_chunks() const -+ { //! Calculated maximum number of memory chunks that can be allocated in a single call by this Pool. -+ size_type partition_size = alloc_size(); -+ size_type POD_size = integer::static_lcm::value + sizeof(size_type); -+ return (std::numeric_limits::max() - POD_size) / alloc_size(); -+ } -+ - static void * & nextof(void * const ptr) - { //! \returns Pointer dereferenced. -@@ -377,5 +388,7 @@ - //! the first time that object needs to allocate system memory. - //! The default is 32. This parameter may not be 0. -- //! \param nmax_size is the maximum number of chunks to allocate in one block. -+ //! \param nmax_size is the maximum number of chunks to allocate in one block. -+ set_next_size(nnext_size); -+ set_max_size(nmax_size); - } - -@@ -400,7 +413,7 @@ - } - void set_next_size(const size_type nnext_size) -- { //! Set number of chunks to request from the system the next time that object needs to allocate system memory. This value should never be set to 0. -- //! \returns nnext_size. -- next_size = start_size = nnext_size; -+ { //! Set number of chunks to request from the system the next time that object needs to allocate system memory. This value should never be set to 0. -+ BOOST_USING_STD_MIN(); -+ next_size = start_size = min BOOST_PREVENT_MACRO_SUBSTITUTION(nnext_size, max_chunks()); - } - size_type get_max_size() const -@@ -410,5 +423,6 @@ - void set_max_size(const size_type nmax_size) - { //! Set max_size. -- max_size = nmax_size; -+ BOOST_USING_STD_MIN(); -+ max_size = min BOOST_PREVENT_MACRO_SUBSTITUTION(nmax_size, max_chunks()); - } - size_type get_requested_size() const -@@ -713,7 +727,7 @@ - BOOST_USING_STD_MIN(); - if(!max_size) -- next_size <<= 1; -+ set_next_size(next_size << 1); - else if( next_size*partition_size/requested_size < max_size) -- next_size = min BOOST_PREVENT_MACRO_SUBSTITUTION(next_size << 1, max_size*requested_size/ partition_size); -+ set_next_size(min BOOST_PREVENT_MACRO_SUBSTITUTION(next_size << 1, max_size * requested_size / partition_size)); - - // initialize it, -@@ -753,7 +767,7 @@ - BOOST_USING_STD_MIN(); - if(!max_size) -- next_size <<= 1; -+ set_next_size(next_size << 1); - else if( next_size*partition_size/requested_size < max_size) -- next_size = min BOOST_PREVENT_MACRO_SUBSTITUTION(next_size << 1, max_size*requested_size/ partition_size); -+ set_next_size(min BOOST_PREVENT_MACRO_SUBSTITUTION(next_size << 1, max_size * requested_size / partition_size)); - - // initialize it, -@@ -797,4 +811,6 @@ - //! \returns Address of chunk n if allocated ok. - //! \returns 0 if not enough memory for n chunks. -+ if (n > max_chunks()) -+ return 0; - - const size_type partition_size = alloc_size(); -@@ -845,7 +861,7 @@ - BOOST_USING_STD_MIN(); - if(!max_size) -- next_size <<= 1; -+ set_next_size(next_size << 1); - else if( next_size*partition_size/requested_size < max_size) -- next_size = min BOOST_PREVENT_MACRO_SUBSTITUTION(next_size << 1, max_size*requested_size/ partition_size); -+ set_next_size(min BOOST_PREVENT_MACRO_SUBSTITUTION(next_size << 1, max_size * requested_size / partition_size)); - - // insert it into the list, -Index: boost-1.58.0/libs/pool/test/test_bug_6701.cpp -=================================================================== ---- a/libs/pool/test/test_bug_6701.cpp (revision 78326) -+++ b/libs/pool/test/test_bug_6701.cpp (revision 78326) -@@ -0,0 +1,27 @@ -+/* Copyright (C) 2012 Étienne Dupuis -+* -+* Use, modification and distribution is subject to the -+* Boost Software License, Version 1.0. (See accompanying -+* file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt) -+*/ -+ -+// Test of bug #6701 (https://svn.boost.org/trac/boost/ticket/6701) -+ -+#include -+#include -+ -+int main() -+{ -+ boost::pool<> p(1024, std::numeric_limits::max() / 768); -+ -+ void *x = p.malloc(); -+ BOOST_ASSERT(!x); -+ -+ BOOST_ASSERT(std::numeric_limits::max() / 1024 >= p.get_next_size()); -+ BOOST_ASSERT(std::numeric_limits::max() / 1024 >= p.get_max_size()); -+ -+ void *y = p.ordered_malloc(std::numeric_limits::max() / 768); -+ BOOST_ASSERT(!y); -+ -+ return 0; -+} diff --git a/runtime-optenv32/boost+32/autobuild/patches/0005-boost-1.57.0-mpl-print.patch b/runtime-optenv32/boost+32/autobuild/patches/0005-boost-1.57.0-mpl-print.patch deleted file mode 100644 index 561cef19eb2..00000000000 --- a/runtime-optenv32/boost+32/autobuild/patches/0005-boost-1.57.0-mpl-print.patch +++ /dev/null @@ -1,31 +0,0 @@ -diff -up boost_1_57_0/boost/mpl/print.hpp\~ boost_1_57_0/boost/mpl/print.hpp ---- boost_1_57_0/boost/mpl/print.hpp~ 2014-07-09 23:12:31.000000000 +0200 -+++ boost_1_57_0/boost/mpl/print.hpp 2015-01-20 12:44:59.621400948 +0100 -@@ -52,16 +52,15 @@ struct print - enum { n = sizeof(T) + -1 }; - #elif defined(__MWERKS__) - void f(int); --#else -- enum { -- n = --# if defined(__EDG_VERSION__) -- aux::dependent_unsigned::value > -1 --# else -- sizeof(T) > -1 --# endif -- }; --#endif -+#elif defined(__EDG_VERSION__) -+ enum { n = aux::dependent_unsigned::value > -1 }; -+#elif defined(BOOST_GCC) -+ enum { n1 }; -+ enum { n2 }; -+ enum { n = n1 != n2 }; -+#else -+ enum { n = sizeof(T) > -1 }; -+#endif - }; - - #if defined(BOOST_MSVC) - -Diff finished. Tue Jan 20 12:45:03 2015 diff --git a/runtime-optenv32/boost+32/autobuild/patches/0007-boost-1.58.0-pool-test_linking.patch b/runtime-optenv32/boost+32/autobuild/patches/0007-boost-1.58.0-pool-test_linking.patch deleted file mode 100644 index a3813707c2a..00000000000 --- a/runtime-optenv32/boost+32/autobuild/patches/0007-boost-1.58.0-pool-test_linking.patch +++ /dev/null @@ -1,31 +0,0 @@ -diff -up boost_1_58_0/libs/pool/test/Jamfile.v2\~ boost_1_58_0/libs/pool/test/Jamfile.v2 ---- boost_1_57_0/libs/pool/test/Jamfile.v2~ 2015-07-17 11:36:16.362519826 +0100 -+++ boost_1_57_0/libs/pool/test/Jamfile.v2 2015-07-17 11:37:38.858847388 +0100 -@@ -28,17 +28,17 @@ - local Werr = gcc:on msvc:on ; - - test-suite pool : -- [ run test_simple_seg_storage.cpp : : : $(Werr) msvc:-wd4267 ] -- [ run test_pool_alloc.cpp : : : $(Werr) ] -- [ run pool_msvc_compiler_bug_test.cpp : : : $(Werr) msvc:-wd4512 ] -- [ run test_msvc_mem_leak_detect.cpp : : : $(Werr) ] -- [ run test_bug_3349.cpp : : : $(Werr) ] -- [ run test_bug_4960.cpp : : : $(Werr) ] -- [ run test_bug_1252.cpp : : : $(Werr) ] -- [ run test_bug_2696.cpp : : : $(Werr) ] -- [ run test_bug_5526.cpp : : : $(Werr) ] -+ [ run test_simple_seg_storage.cpp : : : $(Werr) msvc:-wd4267 /boost/system//boost_system ] -+ [ run test_pool_alloc.cpp : : : $(Werr) /boost/system//boost_system ] -+ [ run pool_msvc_compiler_bug_test.cpp : : : $(Werr) msvc:-wd4512 /boost/system//boost_system ] -+ [ run test_msvc_mem_leak_detect.cpp : : : $(Werr) /boost/system//boost_system ] -+ [ run test_bug_3349.cpp : : : $(Werr) /boost/system//boost_system ] -+ [ run test_bug_4960.cpp : : : $(Werr) /boost/system//boost_system ] -+ [ run test_bug_1252.cpp : : : $(Werr) /boost/system//boost_system ] -+ [ run test_bug_2696.cpp : : : $(Werr) /boost/system//boost_system ] -+ [ run test_bug_5526.cpp : : : $(Werr) /boost/system//boost_system ] - [ run test_threading.cpp : : : multi /boost/thread//boost_thread ] -- [ run ../example/time_pool_alloc.cpp : : : $(Werr) ] -+ [ run ../example/time_pool_alloc.cpp : : : $(Werr) /boost/system//boost_system ] - [ compile test_poisoned_macros.cpp : $(Werr) ] - - # diff --git a/runtime-optenv32/boost+32/autobuild/patches/0008-oost-1.57.0-python-libpython_dep.patch b/runtime-optenv32/boost+32/autobuild/patches/0008-oost-1.57.0-python-libpython_dep.patch deleted file mode 100644 index 57bfc26774e..00000000000 --- a/runtime-optenv32/boost+32/autobuild/patches/0008-oost-1.57.0-python-libpython_dep.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: boost_1_57_0/tools/build/src/tools/python.jam -=================================================================== ---- boost_1_57_0/tools/build/src/tools/python.jam (revision 50406) -+++ boost_1_57_0/tools/build/src/tools/python.jam (working copy) -@@ -994,7 +994,7 @@ - else - { - alias python_for_extensions -- : -+ : python - : $(target-requirements) - : - : $(usage-requirements) diff --git a/runtime-optenv32/boost+32/autobuild/patches/0009-boost-1.57.0-python-abi_letters.patch b/runtime-optenv32/boost+32/autobuild/patches/0009-boost-1.57.0-python-abi_letters.patch deleted file mode 100644 index 7df3ee7047d..00000000000 --- a/runtime-optenv32/boost+32/autobuild/patches/0009-boost-1.57.0-python-abi_letters.patch +++ /dev/null @@ -1,62 +0,0 @@ ---- boost_1_57_0/tools/build/src/tools/python.jam 2013-05-21 06:14:18.000000000 +0200 -+++ boost_1_55_0/tools/build/src/tools/python.jam 2014-05-29 19:09:12.115413877 +0200 -@@ -94,7 +94,7 @@ feature.feature pythonpath : : free opti - # using python : 2.3 : /usr/local/bin/python ; - # - rule init ( version ? : cmd-or-prefix ? : includes * : libraries ? -- : condition * : extension-suffix ? ) -+ : condition * : extension-suffix ? : abi-letters ? ) - { - project.push-current $(.project) ; - -@@ -107,7 +107,7 @@ rule init ( version ? : cmd-or-prefix ? - } - } - -- configure $(version) : $(cmd-or-prefix) : $(includes) : $(libraries) : $(condition) : $(extension-suffix) ; -+ configure $(version) : $(cmd-or-prefix) : $(includes) : $(libraries) : $(condition) : $(extension-suffix) : $(abi-letters) ; - - project.pop-current ; - } -@@ -653,7 +653,7 @@ local rule system-library-dependencies ( - - # Declare a target to represent Python's library. - # --local rule declare-libpython-target ( version ? : requirements * ) -+local rule declare-libpython-target ( version ? : requirements * : abi-letters ? ) - { - # Compute the representation of Python version in the name of Python's - # library file. -@@ -677,13 +677,13 @@ local rule declare-libpython-target ( ve - } - - # Declare it. -- lib python.lib : : python$(lib-version) $(requirements) ; -+ lib python.lib : : python$(lib-version)$(abi-letters) $(requirements) ; - } - - - # Implementation of init. - local rule configure ( version ? : cmd-or-prefix ? : includes * : libraries ? : -- condition * : extension-suffix ? ) -+ condition * : extension-suffix ? : abi-letters ? ) - { - local prefix ; - local exec-prefix ; -@@ -699,6 +699,7 @@ local rule configure ( version ? : cmd-o - extension-suffix ?= _d ; - } - extension-suffix ?= "" ; -+ abi-letters ?= "" ; - - # Normalize and dissect any version number. - local major-minor ; -@@ -922,7 +923,7 @@ local rule configure ( version ? : cmd-o - } - else - { -- declare-libpython-target $(version) : $(target-requirements) ; -+ declare-libpython-target $(version) : $(target-requirements) : $(abi-letters) ; - - # This is an evil hack. On, Windows, when Python is embedded, nothing - # seems to set up sys.path to include Python's standard library diff --git a/runtime-optenv32/boost+32/autobuild/patches/0011-boost-1.57.0-build-optflags.patch b/runtime-optenv32/boost+32/autobuild/patches/0011-boost-1.57.0-build-optflags.patch deleted file mode 100644 index d0b925fbbce..00000000000 --- a/runtime-optenv32/boost+32/autobuild/patches/0011-boost-1.57.0-build-optflags.patch +++ /dev/null @@ -1,48 +0,0 @@ -diff -up ./tools/build/src/tools/gcc.jam~ ./tools/build/src/tools/gcc.jam ---- ./tools/build/src/tools/gcc.jam~ 2015-02-09 15:01:04.850331626 +0100 -+++ ./tools/build/src/tools/gcc.jam 2015-02-09 15:44:29.122307134 +0100 -@@ -366,17 +366,17 @@ generators.override gcc.compile.c++.pch - toolset.flags gcc.compile PCH_FILE on : ; - - # Declare flags and action for compilation. --toolset.flags gcc.compile OPTIONS off : -O0 ; --toolset.flags gcc.compile OPTIONS speed : -O3 ; --toolset.flags gcc.compile OPTIONS space : -Os ; -+toolset.flags gcc.compile OPTIONS off : ; -+toolset.flags gcc.compile OPTIONS speed : ; -+toolset.flags gcc.compile OPTIONS space : ; - --toolset.flags gcc.compile OPTIONS off : -fno-inline ; --toolset.flags gcc.compile OPTIONS on : -Wno-inline ; --toolset.flags gcc.compile OPTIONS full : -finline-functions -Wno-inline ; -+toolset.flags gcc.compile OPTIONS off : ; -+toolset.flags gcc.compile OPTIONS on : ; -+toolset.flags gcc.compile OPTIONS full : ; - --toolset.flags gcc.compile OPTIONS off : -w ; --toolset.flags gcc.compile OPTIONS on : -Wall ; --toolset.flags gcc.compile OPTIONS all : -Wall -pedantic ; -+toolset.flags gcc.compile OPTIONS off : ; -+toolset.flags gcc.compile OPTIONS on : ; -+toolset.flags gcc.compile OPTIONS all : ; - toolset.flags gcc.compile OPTIONS on : -Werror ; - - toolset.flags gcc.compile OPTIONS on : -g ; -@@ -603,7 +603,7 @@ rule compile.fortran ( targets * : sourc - - actions compile.c++ bind PCH_FILE - { -- "$(CONFIG_COMMAND)" $(LANG) -ftemplate-depth-$(TEMPLATE_DEPTH) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(PCH_FILE:D)" -I"$(INCLUDES)" -c -o "$(<:W)" "$(>:W)" -+ "$(CONFIG_COMMAND)" $(LANG) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(PCH_FILE:D)" -I"$(INCLUDES)" -c -o "$(<:W)" "$(>:W)" - } - - actions compile.c bind PCH_FILE -@@ -613,7 +613,7 @@ actions compile.c bind PCH_FILE - - actions compile.c++.preprocess bind PCH_FILE - { -- "$(CONFIG_COMMAND)" $(LANG) -ftemplate-depth-$(TEMPLATE_DEPTH) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(PCH_FILE:D)" -I"$(INCLUDES)" "$(>:W)" -E >"$(<:W)" -+ "$(CONFIG_COMMAND)" $(LANG) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(PCH_FILE:D)" -I"$(INCLUDES)" "$(>:W)" -E >"$(<:W)" - } - - actions compile.c.preprocess bind PCH_FILE diff --git a/runtime-optenv32/boost+32/autobuild/patches/0012-boost-1.60.0-no-rpath.patch b/runtime-optenv32/boost+32/autobuild/patches/0012-boost-1.60.0-no-rpath.patch deleted file mode 100644 index 47ced537c2b..00000000000 --- a/runtime-optenv32/boost+32/autobuild/patches/0012-boost-1.60.0-no-rpath.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -up a/tools/build/src/tools/gcc.jam.rpath b/tools/build/src/tools/gcc.jam ---- a/tools/build/src/tools/gcc.jam.rpath 2016-05-27 13:30:01.092192721 -0500 -+++ b/tools/build/src/tools/gcc.jam 2016-05-27 13:30:46.686987585 -0500 -@@ -952,7 +952,7 @@ rule link ( targets * : sources * : prop - - actions link bind LIBRARIES - { -- "$(CONFIG_COMMAND)" -L"$(LINKPATH)" -Wl,$(RPATH_OPTION:E=-R)$(SPACE)-Wl,$(RPATH) -Wl,-rpath-link$(SPACE)-Wl,"$(RPATH_LINK)" -o "$(<)" $(START-GROUP) "$(>)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS) -+ "$(CONFIG_COMMAND)" -L"$(LINKPATH)" -o "$(<)" $(START-GROUP) "$(>)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS) - } - - -@@ -1018,7 +1018,7 @@ rule link.dll ( targets * : sources * : - # Differs from 'link' above only by -shared. - actions link.dll bind LIBRARIES - { -- "$(CONFIG_COMMAND)" -L"$(LINKPATH)" -Wl,$(RPATH_OPTION:E=-R)$(SPACE)-Wl,$(RPATH) "$(.IMPLIB-COMMAND)$(<[1])" -o "$(<[-1])" $(HAVE_SONAME)-Wl,$(SONAME_OPTION)$(SPACE)-Wl,$(<[-1]:D=) -shared $(START-GROUP) "$(>)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS) -+ "$(CONFIG_COMMAND)" -L"$(LINKPATH)" "$(.IMPLIB-COMMAND)$(<[1])" -o "$(<[-1])" $(HAVE_SONAME)-Wl,$(SONAME_OPTION)$(SPACE)-Wl,$(<[-1]:D=) -shared $(START-GROUP) "$(>)" "$(LIBRARIES)" $(FINDLIBS-ST-PFX) -l$(FINDLIBS-ST) $(FINDLIBS-SA-PFX) -l$(FINDLIBS-SA) $(END-GROUP) $(OPTIONS) $(USER_OPTIONS) - } - - rule setup-threading ( targets * : sources * : properties * ) diff --git a/runtime-optenv32/boost+32/spec b/runtime-optenv32/boost+32/spec deleted file mode 100644 index 4bf4da84ddb..00000000000 --- a/runtime-optenv32/boost+32/spec +++ /dev/null @@ -1,5 +0,0 @@ -VER=1.63.0 -REL=4 -SRCS="tbl::https://downloads.sourceforge.net/project/boost/boost/$VER/boost_${VER//./_}.tar.bz2" -CHKSUMS="sha256::beae2529f759f6b3bf3f4969a19c2e9d6f0c503edcb2de4a61d1428519fcb3b0" -CHKUPDATE="anitya::id=6845" From d77c4c3c8978f28030ca69ace08c2978171bba0a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 16:14:23 +0800 Subject: [PATCH 226/722] glslang+32: update to 13.1.1 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/glslang+32/autobuild/build | 18 ------------------ runtime-optenv32/glslang+32/autobuild/defines | 12 ++++++++---- runtime-optenv32/glslang+32/spec | 7 +++---- 3 files changed, 11 insertions(+), 26 deletions(-) delete mode 100644 runtime-optenv32/glslang+32/autobuild/build diff --git a/runtime-optenv32/glslang+32/autobuild/build b/runtime-optenv32/glslang+32/autobuild/build deleted file mode 100644 index 0f84e6548a2..00000000000 --- a/runtime-optenv32/glslang+32/autobuild/build +++ /dev/null @@ -1,18 +0,0 @@ -export PATH="/opt/32/bin:$PATH" -export PKG_CONFIG_PATH="/opt/32/lib/pkg-config" - -abinfo "Running CMake for $PKGNAME ..." -cmake "$SRCDIR" \ - -DCMAKE_INSTALL_PREFIX=/opt/32 \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_C_COMPILER=/opt/32/bin/i686-pc-linux-gnu-gcc \ - ${CMAKE_AFTER} - -abinfo "Building $i ..." -make - -abinfo "Installing $i ..." -make install DESTDIR="$PKGDIR" - -abinfo "Removing non-runtime data ..." -rm -rfv "$PKGDIR"/opt/32/share diff --git a/runtime-optenv32/glslang+32/autobuild/defines b/runtime-optenv32/glslang+32/autobuild/defines index c0c2b3b4dd6..fc3c3d407d4 100644 --- a/runtime-optenv32/glslang+32/autobuild/defines +++ b/runtime-optenv32/glslang+32/autobuild/defines @@ -1,9 +1,13 @@ PKGNAME=glslang+32 PKGSEC=graphics -PKGDEP="glibc+32" -BUILDDEP="bison 32subsystem" -PKGDES="An OpenGL and OpenGL ES shader front end and validator (optenv32)" +PKGDEP="glibc+32 spirv-tools+32" +BUILDDEP="devel-base+32" +PKGDES="An OpenGL and OpenGL ES shader front end and validator (32-bit x86 runtime)" NOLTO=1 +ABHOST=optenv32 -ABHOST=noarch +CMAKE_AFTER=( + '-DALLOW_EXTERNAL_SPIRV_TOOLS=ON' + '-DBUILD_SHARED_LIBS=ON' +) diff --git a/runtime-optenv32/glslang+32/spec b/runtime-optenv32/glslang+32/spec index 4ff8199fa67..c650d7a0624 100644 --- a/runtime-optenv32/glslang+32/spec +++ b/runtime-optenv32/glslang+32/spec @@ -1,5 +1,4 @@ -VER=7.11.3214 -REL=1 -SRCS="tbl::https://github.com/KhronosGroup/glslang/archive/$VER.tar.gz" -CHKSUMS="sha256::b30b4668734328d256e30c94037e60d3775b1055743c04d8fd709f2960f302a9" +VER=13.1.1 +SRCS="git::commit=tags/$VER::https://github.com/KhronosGroup/glslang" +CHKSUMS="SKIP" CHKUPDATE="anitya::id=205796" From 0ab34b0ad861138ba76039b0584fa056c28a471f Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 16:39:44 +0800 Subject: [PATCH 227/722] nlohmann-json+32: improve packaging - Drop unused CHKUPDATE. - Improve PKGDES optenv32 =< 32-bit x86 runtime. --- runtime-optenv32/nlohmann-json+32/autobuild/build | 3 ++- runtime-optenv32/nlohmann-json+32/autobuild/defines | 4 +++- runtime-optenv32/nlohmann-json+32/spec | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/runtime-optenv32/nlohmann-json+32/autobuild/build b/runtime-optenv32/nlohmann-json+32/autobuild/build index d14fcb9519b..4a537efc966 100644 --- a/runtime-optenv32/nlohmann-json+32/autobuild/build +++ b/runtime-optenv32/nlohmann-json+32/autobuild/build @@ -1,3 +1,4 @@ abinfo "Linking /opt/32/include/nlohmann -> /usr/include/nlohmann ..." install -dv "$PKGDIR"/opt/32/include -ln -sv ../../../usr/include/nlohmann "$PKGDIR"/opt/32/include/nlohmann +ln -sv ../../../usr/include/nlohmann \ + "$PKGDIR"/opt/32/include/nlohmann diff --git a/runtime-optenv32/nlohmann-json+32/autobuild/defines b/runtime-optenv32/nlohmann-json+32/autobuild/defines index 0d9c40fb450..d63b6d5d807 100644 --- a/runtime-optenv32/nlohmann-json+32/autobuild/defines +++ b/runtime-optenv32/nlohmann-json+32/autobuild/defines @@ -1,7 +1,9 @@ PKGNAME=nlohmann-json+32 PKGSEC=libs -PKGDES="JSON for Modern C++ (optenv32 symlink to nlohmann-json headers)" PKGDEP="nlohmann-json" +PKGDES="JSON for Modern C++ (32-bit x86 runtime)" ABHOST=optenv32 + +# Note: Header-only package. ABSPLITDBG=0 diff --git a/runtime-optenv32/nlohmann-json+32/spec b/runtime-optenv32/nlohmann-json+32/spec index d3d7277505a..10523e5c2f3 100644 --- a/runtime-optenv32/nlohmann-json+32/spec +++ b/runtime-optenv32/nlohmann-json+32/spec @@ -1,3 +1,3 @@ VER=3.11.3 +REL=1 DUMMYSRC=1 -CHKUPDATE="anitya::id=11152" From beb706d4969e6849161ada6ad5e782c0039a6566 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 16:42:57 +0800 Subject: [PATCH 228/722] mangohud+32: improve packaging - Fix up dependencies. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/mangohud+32/autobuild/defines | 16 +++++++++------- runtime-optenv32/mangohud+32/spec | 1 + 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/runtime-optenv32/mangohud+32/autobuild/defines b/runtime-optenv32/mangohud+32/autobuild/defines index cbe06b554c9..56f1e8962c2 100644 --- a/runtime-optenv32/mangohud+32/autobuild/defines +++ b/runtime-optenv32/mangohud+32/autobuild/defines @@ -1,13 +1,15 @@ PKGNAME=mangohud+32 PKGSEC=utils -PKGDEP="libglvnd+32 glslang+32 mesa+32 dbus+32 libxnvctrl+32 x11-lib+32 \ - wayland+32" -BUILDDEP="mako 32subsystem nvidia+32 nlohmann-json+32" -PKGDES="A Vulkan and OpenGL overlay for monitoring FPS, temperatures, CPU/GPU load and more (optenv32)" +PKGDEP="dbus+32 glslang+32 libglvnd+32 libxkbcommon+32 libxnvctrl+32 \ + mesa+32 wayland+32 x11-lib+32" +BUILDDEP="devel-base+32 mako nlohmann-json+32 nvidia+32 vulkan-headers+32" +PKGDES="A Vulkan and OpenGL overlay for monitoring FPS, temperatures, CPU/GPU load and more (32-bit x86 runtime)" ABTYPE=meson -MESON_AFTER="-Dappend_libdir_mangohud=false \ - -Ddynamic_string_tokens=false \ - -Dwith_xnvctrl=enabled" +MESON_AFTER=( + '-Dappend_libdir_mangohud=false' + '-Ddynamic_string_tokens=false' + '-Dwith_xnvctrl=enabled' +) ABHOST=optenv32 diff --git a/runtime-optenv32/mangohud+32/spec b/runtime-optenv32/mangohud+32/spec index 57e86b87b20..9a374606536 100644 --- a/runtime-optenv32/mangohud+32/spec +++ b/runtime-optenv32/mangohud+32/spec @@ -1,4 +1,5 @@ VER=0.7.2 +REL=1 SRCS="tbl::https://github.com/flightlessmango/MangoHud/releases/download/v${VER/\+/-}/MangoHud-v${VER/\+/-}-Source.tar.xz" CHKSUMS="sha256::114ad3ea87b1db7358816c7b8e7843aaee356ff048b9e15d6fff02d89414841b" CHKUPDATE="anitya::id=138139" From d460b9b33f620237f608cc266b5990323d70dcdf Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 16:54:00 +0800 Subject: [PATCH 229/722] openssl-1.1+32: update to 1.1.1w - Use optenv32 template. - Optimise for the linux-x86 + SSE2 target. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/openssl-1.1+32/autobuild/build | 13 +++++++------ runtime-optenv32/openssl-1.1+32/autobuild/defines | 10 ++++++---- runtime-optenv32/openssl-1.1+32/spec | 4 ++-- 3 files changed, 15 insertions(+), 12 deletions(-) diff --git a/runtime-optenv32/openssl-1.1+32/autobuild/build b/runtime-optenv32/openssl-1.1+32/autobuild/build index a8aa817da11..d8459161498 100644 --- a/runtime-optenv32/openssl-1.1+32/autobuild/build +++ b/runtime-optenv32/openssl-1.1+32/autobuild/build @@ -1,13 +1,14 @@ -abinfo "Setting up the environment ..." -export PATH="/opt/32/bin:$PATH" -export CC=i686-pc-linux-gnu-gcc +abinfo "Setting up build environment ..." export CPPFLAGS="${CPPFLAGS} ${CFLAGS}" abinfo "Configuring openssl-1.1+32 ..." # Disable tests to speed-up building process for optenv32 -"$SRCDIR"/Configure --prefix=/opt/32 --openssldir=/opt/32/etc/ssl --libdir=lib \ - shared zlib enable-ssl2 no-tests\ - -Wa,--noexecstack linux-elf +"$SRCDIR"/Configure \ + --prefix=/opt/32 \ + --openssldir=/opt/32/etc/ssl \ + --libdir=lib \ + shared zlib enable-ssl2 no-tests \ + -Wa,--noexecstack linux-x86 abinfo "Building openssl-1.1+32 ..." make diff --git a/runtime-optenv32/openssl-1.1+32/autobuild/defines b/runtime-optenv32/openssl-1.1+32/autobuild/defines index cb99dc93e9f..eb8b08498d5 100644 --- a/runtime-optenv32/openssl-1.1+32/autobuild/defines +++ b/runtime-optenv32/openssl-1.1+32/autobuild/defines @@ -1,9 +1,11 @@ PKGNAME=openssl-1.1+32 -PKGDEP="glibc+32 zlib+32 ca-certs" PKGSEC=libs -PKGDES="Open Source toolkit for Secure Sockets Layer and Transport Layer Security (1.1 compatibility runtime for optenv32)" -BUILDDEP="linux+api+32 32subsystem" +PKGDEP="ca-certs glibc+32 zlib+32" +BUILDDEP="devel-base+32" +PKGDES="Open Source toolkit for Secure Sockets Layer and Transport Layer Security (1.1, 32-bit x86 runtime)" +# FIXME: Installation may fail with parallelism. NOPARALLEL=1 + NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/openssl-1.1+32/spec b/runtime-optenv32/openssl-1.1+32/spec index dd29e2c7f32..6f4e1cce668 100644 --- a/runtime-optenv32/openssl-1.1+32/spec +++ b/runtime-optenv32/openssl-1.1+32/spec @@ -1,4 +1,4 @@ -VER=1.1.1q +VER=1.1.1w SRCS="tbl::https://openssl.org/source/openssl-$VER.tar.gz" -CHKSUMS="sha256::d7939ce614029cdff0b6c20f0e2e5703158a489a72b2507b8bd51bf8c8fd10ca" +CHKSUMS="sha256::cf3098950cb4d853ad95c0841f1f9c6d3dc102dccfcacd521d93925208b76ac8" CHKUPDATE="anitya::id=2566" From 0903f683c052a50cc83921dc54a5c32017aa2c75 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 17:03:38 +0800 Subject: [PATCH 230/722] openssl+32: fix optimisation target - Use linux-x86 + SSE2 target. - Drop unneeded PATH and CC settings. --- runtime-optenv32/openssl+32/autobuild/build | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/runtime-optenv32/openssl+32/autobuild/build b/runtime-optenv32/openssl+32/autobuild/build index 659dfcb55af..46b2f1c60cc 100644 --- a/runtime-optenv32/openssl+32/autobuild/build +++ b/runtime-optenv32/openssl+32/autobuild/build @@ -1,13 +1,14 @@ abinfo "Setting up the environment ..." -export PATH="/opt/32/bin:$PATH" -export CC="i686-aosc-linux-gnu-gcc" export CPPFLAGS="${CPPFLAGS} ${CFLAGS}" abinfo "Configuring openssl+32 ..." # Disable tests to speed-up building process for optenv32 -"$SRCDIR"/Configure --prefix=/opt/32 --openssldir=/opt/32/etc/ssl --libdir=lib \ - shared zlib enable-ssl2 no-tests\ - -Wa,--noexecstack linux-elf +"$SRCDIR"/Configure \ + --prefix=/opt/32 \ + --openssldir=/opt/32/etc/ssl \ + --libdir=lib \ + shared zlib enable-ssl2 no-tests\ + -Wa,--noexecstack linux-x86 abinfo "Building openssl+32 ..." make From 5a833ad3e385496cdf69f1546989a471968849c8 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 17:08:23 +0800 Subject: [PATCH 231/722] libusb-compat+32: improve packaging - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/libusb-compat+32/autobuild/build | 11 ----------- runtime-optenv32/libusb-compat+32/autobuild/defines | 7 ++++--- runtime-optenv32/libusb-compat+32/spec | 2 +- 3 files changed, 5 insertions(+), 15 deletions(-) delete mode 100644 runtime-optenv32/libusb-compat+32/autobuild/build diff --git a/runtime-optenv32/libusb-compat+32/autobuild/build b/runtime-optenv32/libusb-compat+32/autobuild/build deleted file mode 100644 index b323e645546..00000000000 --- a/runtime-optenv32/libusb-compat+32/autobuild/build +++ /dev/null @@ -1,11 +0,0 @@ -export PATH=/opt/32/bin:$PATH -./configure --prefix=/opt/32 \ - --build=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --target=i686-pc-linux-gnu \ - ${AUTOTOOLS_AFTER} \ - CC=i686-pc-linux-gnu-gcc -make -make install DESTDIR="$PKGDIR" - -rm -r "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/libusb-compat+32/autobuild/defines b/runtime-optenv32/libusb-compat+32/autobuild/defines index 7e1de87c142..37477e29dfe 100644 --- a/runtime-optenv32/libusb-compat+32/autobuild/defines +++ b/runtime-optenv32/libusb-compat+32/autobuild/defines @@ -1,7 +1,8 @@ PKGNAME=libusb-compat+32 PKGSEC=libs PKGDEP="libusb+32" -BUILDDEP="32subsystem" -PKGDES="A compatibility layer needed by packages that have not been upgraded to the libusb-1.0 API (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="A compatibility layer needed by packages that have not been upgraded to the libusb-1.0 API (32-bit x86 runtime)" -ABHOST=noarch +NOLTO=1 +ABHOST=optenv32 diff --git a/runtime-optenv32/libusb-compat+32/spec b/runtime-optenv32/libusb-compat+32/spec index fd2a4e2a72e..e0c54a085c2 100644 --- a/runtime-optenv32/libusb-compat+32/spec +++ b/runtime-optenv32/libusb-compat+32/spec @@ -1,5 +1,5 @@ VER=0.1.5 +REL=2 SRCS="tbl::https://downloads.sourceforge.net/libusb/libusb-compat-$VER.tar.bz2" CHKSUMS="sha256::404ef4b6b324be79ac1bfb3d839eac860fbc929e6acb1ef88793a6ea328bc55a" -REL=1 CHKUPDATE="anitya::id=1750" From 11f38e84a5135efcb32fda00385d226c8f535ff4 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 17:09:46 +0800 Subject: [PATCH 232/722] libjpeg+legacy+32: drop, orphaned libjpeg-turbo+32 now provides multiple ABIs. --- runtime-optenv32/libjpeg+legacy+32/autobuild/beyond | 1 - runtime-optenv32/libjpeg+legacy+32/autobuild/build | 12 ------------ runtime-optenv32/libjpeg+legacy+32/autobuild/defines | 7 ------- runtime-optenv32/libjpeg+legacy+32/spec | 4 ---- 4 files changed, 24 deletions(-) delete mode 100644 runtime-optenv32/libjpeg+legacy+32/autobuild/beyond delete mode 100644 runtime-optenv32/libjpeg+legacy+32/autobuild/build delete mode 100644 runtime-optenv32/libjpeg+legacy+32/autobuild/defines delete mode 100644 runtime-optenv32/libjpeg+legacy+32/spec diff --git a/runtime-optenv32/libjpeg+legacy+32/autobuild/beyond b/runtime-optenv32/libjpeg+legacy+32/autobuild/beyond deleted file mode 100644 index df7295d88d9..00000000000 --- a/runtime-optenv32/libjpeg+legacy+32/autobuild/beyond +++ /dev/null @@ -1 +0,0 @@ -# install -m644 jpegint.h "$PKGDIR"/opt/32/include diff --git a/runtime-optenv32/libjpeg+legacy+32/autobuild/build b/runtime-optenv32/libjpeg+legacy+32/autobuild/build deleted file mode 100644 index 5920274e8b3..00000000000 --- a/runtime-optenv32/libjpeg+legacy+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH -cp /usr/share/automake-1.16/config.* . -./configure --prefix=/opt/32 --enable-shared --disable-static \ - --host=i686-pc-linux-gnu --build=i686-pc-linux-gnu \ - CC=i686-pc-linux-gnu-gcc CXX=i686-pc-linux-g++ - -make -mkdir -p "$PKGDIR"/opt/32/{bin,share,include,man/man1,lib} -make install prefix="$PKGDIR"/opt/32 - -rm -rf "$PKGDIR"/opt/32/{bin,share,include,man} -rm "$PKGDIR"/opt/32/lib/libjpeg.so diff --git a/runtime-optenv32/libjpeg+legacy+32/autobuild/defines b/runtime-optenv32/libjpeg+legacy+32/autobuild/defines deleted file mode 100644 index 0c3071a555c..00000000000 --- a/runtime-optenv32/libjpeg+legacy+32/autobuild/defines +++ /dev/null @@ -1,7 +0,0 @@ -PKGNAME=libjpeg+legacy+32 -PKGDES="JPEG image codec with accelerated baseline compression and decompression (optenv32)" -PKGDEP="glibc" -PKGSEC=libs - -NOLTO=1 -ABHOST=noarch diff --git a/runtime-optenv32/libjpeg+legacy+32/spec b/runtime-optenv32/libjpeg+legacy+32/spec deleted file mode 100644 index be49566056a..00000000000 --- a/runtime-optenv32/libjpeg+legacy+32/spec +++ /dev/null @@ -1,4 +0,0 @@ -VER=6b -SRCS="tbl::https://sourceforge.net/projects/libjpeg/files/libjpeg/6b/jpegsrc.v$VER.tar.gz" -CHKSUMS="sha256::75c3ec241e9996504fe02a9ed4d12f16b74ade713972f3db9e65ce95cd27e35d" -REL=2 From 5add822203179090034cc5e3890ae966749b06d6 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 17:11:14 +0800 Subject: [PATCH 233/722] libjpeg-turbo+32: break + replace libjpeg+legacy+32 --- runtime-optenv32/libjpeg-turbo+32/autobuild/defines | 3 +++ 1 file changed, 3 insertions(+) diff --git a/runtime-optenv32/libjpeg-turbo+32/autobuild/defines b/runtime-optenv32/libjpeg-turbo+32/autobuild/defines index e2137ae0dd5..2df730de161 100644 --- a/runtime-optenv32/libjpeg-turbo+32/autobuild/defines +++ b/runtime-optenv32/libjpeg-turbo+32/autobuild/defines @@ -6,3 +6,6 @@ PKGDES="JPEG image codec with accelerated baseline compression and decompression NOLTO=1 ABHOST=optenv32 + +PKGBREAK="libjpeg+legacy+32<=6b-1" +PKGREP="libjpeg+legacy+32<=6b-1" From d547d5f233b64c08c71cebf76267e06038930dc9 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 17:14:45 +0800 Subject: [PATCH 234/722] mbedtls+32: improve packaging - Use optenv32 template. - Drop unused patch, prepare scripts. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/mbedtls+32/autobuild/build | 14 ++++++-------- runtime-optenv32/mbedtls+32/autobuild/defines | 7 +++---- runtime-optenv32/mbedtls+32/autobuild/patch | 4 ---- runtime-optenv32/mbedtls+32/autobuild/prepare | 4 ---- runtime-optenv32/mbedtls+32/spec | 1 + 5 files changed, 10 insertions(+), 20 deletions(-) delete mode 100644 runtime-optenv32/mbedtls+32/autobuild/patch delete mode 100644 runtime-optenv32/mbedtls+32/autobuild/prepare diff --git a/runtime-optenv32/mbedtls+32/autobuild/build b/runtime-optenv32/mbedtls+32/autobuild/build index d3b5a4748cd..f4b57e2698d 100644 --- a/runtime-optenv32/mbedtls+32/autobuild/build +++ b/runtime-optenv32/mbedtls+32/autobuild/build @@ -1,9 +1,7 @@ -export PATH=/opt/32/bin:$PATH -CC=i686-pc-linux-gnu-gcc CXX=i686-pc-linux-gnu-g++ \ -AS=i686-pc-linux-gnu-as LD=i686-pc-linux-gnu-ld AR=i686-pc-linux-gnu-ar \ -RANLIB=i686-pc-linux-gnu-ranlib make -j$(nproc) SHARED=1 no_test +abinfo "Building mbedtls+32 ..." +make no_test \ + SHARED=1 -make DESTDIR="${PKGDIR}/opt/32" install - -rm -rf $PKGDIR/opt/32/bin -rm -rf $PKGDIR/usr/share +abinfo "Installing mbedtls+32 ..." +make install \ + DESTDIR="${PKGDIR}/opt/32" diff --git a/runtime-optenv32/mbedtls+32/autobuild/defines b/runtime-optenv32/mbedtls+32/autobuild/defines index faf2279b6f4..b1b8482fec0 100644 --- a/runtime-optenv32/mbedtls+32/autobuild/defines +++ b/runtime-optenv32/mbedtls+32/autobuild/defines @@ -1,9 +1,8 @@ PKGNAME=mbedtls+32 PKGSEC=libs PKGDEP="glibc+32" -BUILDDEP="32subsystem" -PKGDES="Portable cryptographic and SSL/TLS library (32subsystem, library only)" +BUILDDEP="devel-base+32" +PKGDES="Portable cryptographic and SSL/TLS library (32-bit x86 runtime)" -NOSTATIC=no NOLTO=1 -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/mbedtls+32/autobuild/patch b/runtime-optenv32/mbedtls+32/autobuild/patch deleted file mode 100644 index 49a315055d3..00000000000 --- a/runtime-optenv32/mbedtls+32/autobuild/patch +++ /dev/null @@ -1,4 +0,0 @@ -sed -i 's|//\(#define MBEDTLS_THREADING_C\)|\1|' include/mbedtls/config.h -sed -i 's|//\(#define MBEDTLS_THREADING_PTHREAD\)|\1|' include/mbedtls/config.h - -sed -i 's||"platform.h"|' include/mbedtls/ssl.h diff --git a/runtime-optenv32/mbedtls+32/autobuild/prepare b/runtime-optenv32/mbedtls+32/autobuild/prepare deleted file mode 100644 index bfa64f13bc9..00000000000 --- a/runtime-optenv32/mbedtls+32/autobuild/prepare +++ /dev/null @@ -1,4 +0,0 @@ -# FIXME: weird workaround. -export LDFLAGS="${LDFLAGS} -I../include" - -chmod -R a-s "$SRCDIR" diff --git a/runtime-optenv32/mbedtls+32/spec b/runtime-optenv32/mbedtls+32/spec index 5c40cb4483c..c52dbb5bd96 100644 --- a/runtime-optenv32/mbedtls+32/spec +++ b/runtime-optenv32/mbedtls+32/spec @@ -1,4 +1,5 @@ VER=2.16.7 +REL=1 SRCS="tbl::https://github.com/ARMmbed/mbedtls/archive/mbedtls-$VER.tar.gz" CHKSUMS="sha256::4786b7d1676f5e4d248f3a7f2d28446876d64962634f060ff21b92c690cfbe86" CHKUPDATE="anitya::id=13824" From 081ee9a42c07954e27d9c0066f7917fa33cd8ba4 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 17:22:11 +0800 Subject: [PATCH 235/722] vkd3d+32: improve packaging - Use optenv32 template. - Fix up dependencies. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/vkd3d+32/autobuild/build | 17 ----------------- runtime-optenv32/vkd3d+32/autobuild/defines | 11 +++++++---- runtime-optenv32/vkd3d+32/spec | 1 + 3 files changed, 8 insertions(+), 21 deletions(-) delete mode 100644 runtime-optenv32/vkd3d+32/autobuild/build diff --git a/runtime-optenv32/vkd3d+32/autobuild/build b/runtime-optenv32/vkd3d+32/autobuild/build deleted file mode 100644 index 28d91deb1bf..00000000000 --- a/runtime-optenv32/vkd3d+32/autobuild/build +++ /dev/null @@ -1,17 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -autoreconf -fi -mkdir abbuild -( - cd abbuild - export CC=/opt/32/bin/i686-pc-linux-gnu-gcc - export CXX=/opt/32/bin/i686-pc-linux-gnu-g++ - export CFLAGS="$CFLAGS" - export LDFLAGS="$LDFLAGS -L/opt/32/lib" - ../configure \ - --prefix=/opt/32 \ - --exec-prefix=/opt/32 \ - --with-ncurses -) -make -C abbuild $MAKE_DEF -DESTDIR="$PKGDIR" make -C abbuild install diff --git a/runtime-optenv32/vkd3d+32/autobuild/defines b/runtime-optenv32/vkd3d+32/autobuild/defines index 77488760d57..048d7c8e0bd 100644 --- a/runtime-optenv32/vkd3d+32/autobuild/defines +++ b/runtime-optenv32/vkd3d+32/autobuild/defines @@ -1,5 +1,8 @@ PKGNAME=vkd3d+32 -PKGDES="Direct3D 12 to Vulkan translation library By WineHQ (optenv32)" -PKGDEP="glibc+32" -PKGSEC="libs" -BUILDDEP="32subsystem spirv-headers" +PKGSEC=libs +PKGDEP="glibc+32 vulkan-loader+32" +BUILDDEP="devel-base+32 spirv-headers vulkan-headers+32" +PKGDES="Direct3D 12 to Vulkan translation library By WineHQ (32-bit x86 runtime)" + +NOLTO=1 +ABHOST=optenv32 diff --git a/runtime-optenv32/vkd3d+32/spec b/runtime-optenv32/vkd3d+32/spec index ea1517ef90c..74b48dfec34 100644 --- a/runtime-optenv32/vkd3d+32/spec +++ b/runtime-optenv32/vkd3d+32/spec @@ -1,4 +1,5 @@ VER=1.9 +REL=1 SRCS="tbl::https://dl.winehq.org/vkd3d/source/vkd3d-${VER}.tar.xz" CHKSUMS="sha256::9d1ebc6f36cccf40cffda3176851f73a0501b90c4d04e782abe79ca703057a4b" CHKUPDATE="anitya::id=230555" From 0cf2e482ac2ddb5cf0f258fa6e7f795b2a9fa8b1 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 17:25:03 +0800 Subject: [PATCH 236/722] nvidia+390+32: drop, orphaned --- runtime-optenv32/nvidia+390+32/autobuild/build | 1 - runtime-optenv32/nvidia+390+32/autobuild/defines | 11 ----------- runtime-optenv32/nvidia+390+32/spec | 2 -- 3 files changed, 14 deletions(-) delete mode 100644 runtime-optenv32/nvidia+390+32/autobuild/build delete mode 100644 runtime-optenv32/nvidia+390+32/autobuild/defines delete mode 100644 runtime-optenv32/nvidia+390+32/spec diff --git a/runtime-optenv32/nvidia+390+32/autobuild/build b/runtime-optenv32/nvidia+390+32/autobuild/build deleted file mode 100644 index e88246a7939..00000000000 --- a/runtime-optenv32/nvidia+390+32/autobuild/build +++ /dev/null @@ -1 +0,0 @@ -mkdir "${PKGDIR}" diff --git a/runtime-optenv32/nvidia+390+32/autobuild/defines b/runtime-optenv32/nvidia+390+32/autobuild/defines deleted file mode 100644 index e127147017a..00000000000 --- a/runtime-optenv32/nvidia+390+32/autobuild/defines +++ /dev/null @@ -1,11 +0,0 @@ -PKGNAME=nvidia+390+32 -PKGSEC=x11 -PKGDES="Transitional package for nvidia 390 Legacy Branch)" -PKGCONFL="nvidia+340+32 nvidia+32" - -PKGDEP="nvidia+390" -PKGEPOCH=1 -PKGBREAK="nvidia+390<=390.147" - -ABSTRIP=no -NOLTO=1 diff --git a/runtime-optenv32/nvidia+390+32/spec b/runtime-optenv32/nvidia+390+32/spec deleted file mode 100644 index 16b35030be7..00000000000 --- a/runtime-optenv32/nvidia+390+32/spec +++ /dev/null @@ -1,2 +0,0 @@ -VER=0 -DUMMYSRC=1 From 07e3ea503b712804367e32a4f9b9acf70e53780d Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 17:25:23 +0800 Subject: [PATCH 237/722] virtualgl+32: drop, orphaned --- runtime-optenv32/virtualgl+32/autobuild/build | 7 ------- runtime-optenv32/virtualgl+32/autobuild/defines | 17 ----------------- runtime-optenv32/virtualgl+32/autobuild/prepare | 1 - runtime-optenv32/virtualgl+32/spec | 6 ------ 4 files changed, 31 deletions(-) delete mode 100644 runtime-optenv32/virtualgl+32/autobuild/build delete mode 100644 runtime-optenv32/virtualgl+32/autobuild/defines delete mode 100644 runtime-optenv32/virtualgl+32/autobuild/prepare delete mode 100644 runtime-optenv32/virtualgl+32/spec diff --git a/runtime-optenv32/virtualgl+32/autobuild/build b/runtime-optenv32/virtualgl+32/autobuild/build deleted file mode 100644 index e79e2d2e474..00000000000 --- a/runtime-optenv32/virtualgl+32/autobuild/build +++ /dev/null @@ -1,7 +0,0 @@ -export PATH=/opt/32/bin:$PATH -cmake . -DCMAKE_INSTALL_PREFIX=/opt/32 -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_C_COMPILER=/opt/32/bin/i686-pc-linux-gnu-gcc \ - -DCMAKE_CXX_COMPILER=/opt/32/bin/i686-pc-linux-gnu-g++ \ - ${CMAKE_AFTER} -make -make install DESTDIR=$PKGDIR diff --git a/runtime-optenv32/virtualgl+32/autobuild/defines b/runtime-optenv32/virtualgl+32/autobuild/defines deleted file mode 100644 index ef5d65e3c80..00000000000 --- a/runtime-optenv32/virtualgl+32/autobuild/defines +++ /dev/null @@ -1,17 +0,0 @@ -PKGNAME=virtualgl+32 -PKGSEC=x11 -PKGDEP="glu+32 libjpeg-turbo+32" -BUILDDEP="32subsystem" -PKGDES="Redirects 3D commands from an OpenGL application onto a server-side 3D graphics card" - -CMAKE_AFTER="-DTJPEG_INCLUDE_DIR=/opt/32/include \ - -DTJPEG_LIBRARY=/opt/32/lib/libturbojpeg.so \ - -DVGL_LIBDIR=/opt/32/lib \ - -DVGL_BINDIR=/opt/32/bin \ - -DVGL_DOCDIR=/usr/share/doc/$PKGNAME \ - -DX11_X11_LIB=/opt/32/lib/libX11.so \ - -DX11_Xext_LIB=/opt/32/lib/libXext.so \ - -DOPENGL_gl_LIBRARY=/opt/32/lib/libGL.so \ - -DVGL_FAKELIBDIR=/opt/32/share/fakelib" -NOLTO=1 -ABHOST=noarch diff --git a/runtime-optenv32/virtualgl+32/autobuild/prepare b/runtime-optenv32/virtualgl+32/autobuild/prepare deleted file mode 100644 index 6249c664a18..00000000000 --- a/runtime-optenv32/virtualgl+32/autobuild/prepare +++ /dev/null @@ -1 +0,0 @@ -export LDFLAGS="${LDFLAGS/,--as-needed/}" diff --git a/runtime-optenv32/virtualgl+32/spec b/runtime-optenv32/virtualgl+32/spec deleted file mode 100644 index ca28f434fd3..00000000000 --- a/runtime-optenv32/virtualgl+32/spec +++ /dev/null @@ -1,6 +0,0 @@ -VER=2.5.2 -REL=2 -SRCS="tbl::https://github.com/VirtualGL/virtualgl/archive/$VER.tar.gz" -CHKSUMS="sha256::e6105f579f25a77a4a190a80f9b239a9f70e007e5e9f4a5a69c9e7cce168d166" -SUBDIR="virtualgl-$VER" -CHKUPDATE="anitya::id=12329" From f8ebaee08d216086243b2f15b8cdda05708917cc Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 17:28:36 +0800 Subject: [PATCH 238/722] proxychains-ng+32: update to 4.17 - Use optenv32 template. - Lint build script in accordance with the Styling Manual. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- .../proxychains-ng+32/autobuild/build | 15 +++++++-------- .../proxychains-ng+32/autobuild/defines | 9 ++++++--- runtime-optenv32/proxychains-ng+32/spec | 4 ++-- 3 files changed, 15 insertions(+), 13 deletions(-) diff --git a/runtime-optenv32/proxychains-ng+32/autobuild/build b/runtime-optenv32/proxychains-ng+32/autobuild/build index 7a32f7aa053..6da0d6e47b0 100644 --- a/runtime-optenv32/proxychains-ng+32/autobuild/build +++ b/runtime-optenv32/proxychains-ng+32/autobuild/build @@ -1,11 +1,10 @@ -export PATH="/opt/32:$PATH" +abinfo "Building proxychains-ng+32 ..." +"$SRCDIR"/configure \ + --prefix=/opt/32 -export CC=i686-pc-linux-gnu-gcc -export CXX=i686-pc-linux-gnu-g++ - -./configure --prefix=/opt/32 +abinfo "Building proxychains-ng+32 ..." make -make DESTDIR="$PKGDIR" install -mv "$PKGDIR"/opt/32/bin/proxychains{4,32} -rm -rf "$PKGDIR"/opt/32/{etc,include} +abinfo "Installing proxychains-ng+32 ..." +make install \ + DESTDIR="$PKGDIR" diff --git a/runtime-optenv32/proxychains-ng+32/autobuild/defines b/runtime-optenv32/proxychains-ng+32/autobuild/defines index d93310116ed..2ca64f6b194 100644 --- a/runtime-optenv32/proxychains-ng+32/autobuild/defines +++ b/runtime-optenv32/proxychains-ng+32/autobuild/defines @@ -1,7 +1,10 @@ PKGNAME=proxychains-ng+32 PKGSEC=net PKGDEP="glibc+32" -BUILDDEP="32subsystem" -PKGDES="A hook preloader that allows redirecting TCP traffics of existing dynamically linked programs through one or more SOCKS or HTTP proxies (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="A hook preloader that allows redirecting TCP traffics of existing dynamically linked programs through one or more SOCKS or HTTP proxies (32-bit x86 runtime)" -ABHOST=noarch +NOLTO=1 +ABHOST=optenv32 + +PKGEPOCH=1 diff --git a/runtime-optenv32/proxychains-ng+32/spec b/runtime-optenv32/proxychains-ng+32/spec index 1960f9ae004..f2915c8e303 100644 --- a/runtime-optenv32/proxychains-ng+32/spec +++ b/runtime-optenv32/proxychains-ng+32/spec @@ -1,4 +1,4 @@ -VER=20161205 -SRCS="git::commit=83b535f86a3ac69c8273f328467d6c791c2ea794::https://github.com/xiaohui-zhangxh/proxychains" +VER=4.17 +SRCS="git::commit=tags/v$VER::https://github.com/rofl0r/proxychains-ng" CHKSUMS="SKIP" CHKUPDATE="anitya::id=6499" From 708c1b1841ec6e971b2920809287999c844a0153 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 17:28:55 +0800 Subject: [PATCH 239/722] gdk-pixbuf+32: use libpng+32 to provide libpng-1.6 --- runtime-optenv32/gdk-pixbuf+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/gdk-pixbuf+32/autobuild/defines b/runtime-optenv32/gdk-pixbuf+32/autobuild/defines index cb6d6820dbd..b3fd88215f9 100644 --- a/runtime-optenv32/gdk-pixbuf+32/autobuild/defines +++ b/runtime-optenv32/gdk-pixbuf+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=gdk-pixbuf+32 PKGSEC=libs -PKGDEP="glib+32 libpng-1.6+32 libtiff+32 libjpeg-turbo+32" +PKGDEP="glib+32 libpng+32 libtiff+32 libjpeg-turbo+32" BUILDDEP="devel-base+32 shared-mime-info+32" PKGDES="Toolkit for image loading and pixel buffer manipulation (32-bit x86 runtime)" From 7980e1070491edb3cd53fe4c65abc18fbc26c319 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 17:30:24 +0800 Subject: [PATCH 240/722] sdl-net+32: drop, orphaned --- runtime-optenv32/sdl-net+32/autobuild/build | 12 --- runtime-optenv32/sdl-net+32/autobuild/defines | 6 -- .../autobuild/patches/UDP_Bind.patch | 43 --------- .../sdl-net+32/autobuild/patches/arm.patch | 19 ---- .../sdl-net+32/autobuild/patches/endian.patch | 89 ------------------- .../sdl-net+32/autobuild/patches/series | 3 - runtime-optenv32/sdl-net+32/spec | 5 -- 7 files changed, 177 deletions(-) delete mode 100644 runtime-optenv32/sdl-net+32/autobuild/build delete mode 100644 runtime-optenv32/sdl-net+32/autobuild/defines delete mode 100644 runtime-optenv32/sdl-net+32/autobuild/patches/UDP_Bind.patch delete mode 100644 runtime-optenv32/sdl-net+32/autobuild/patches/arm.patch delete mode 100644 runtime-optenv32/sdl-net+32/autobuild/patches/endian.patch delete mode 100644 runtime-optenv32/sdl-net+32/autobuild/patches/series delete mode 100644 runtime-optenv32/sdl-net+32/spec diff --git a/runtime-optenv32/sdl-net+32/autobuild/build b/runtime-optenv32/sdl-net+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/sdl-net+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/sdl-net+32/autobuild/defines b/runtime-optenv32/sdl-net+32/autobuild/defines deleted file mode 100644 index ddd4edbe671..00000000000 --- a/runtime-optenv32/sdl-net+32/autobuild/defines +++ /dev/null @@ -1,6 +0,0 @@ -PKGNAME=sdl-net+32 -PKGSEC=libs -PKGDEP="sdl+32" -PKGDES="A lightweight cross platform networking library (optenv32)" -NOLTO=1 -ABHOST=noarch diff --git a/runtime-optenv32/sdl-net+32/autobuild/patches/UDP_Bind.patch b/runtime-optenv32/sdl-net+32/autobuild/patches/UDP_Bind.patch deleted file mode 100644 index 4faa017c879..00000000000 --- a/runtime-optenv32/sdl-net+32/autobuild/patches/UDP_Bind.patch +++ /dev/null @@ -1,43 +0,0 @@ -Description: SDLNet_UDP_Bind does not behave as described - Original bug report: - The comment, which is the same as in the header file, describes one behaviour. - The code implements another: if channel is -1, it binds to the first channel - that has not yet been bound to the maximum number of addresses. The if - (binding->numbound... line should be just if ( binding->numbound) { - (i.e. choose an unused channel). (Although this may break any apps using the - incorrect behaviour.) - . - Debian changelog: - * Changed comment for SDLNet_UDP_Bind to reflect implementation - - Since upstream has not responded to this (and seems dead), and a fair - number of packages use sdl-net, I don't want to change the behavior - just for debian, only properly document the actual behavior. - - (Closes: 211570) -Author: cph@cph.demon.co.uk -Last-Update: 2003-09-18 -Bug-Debian: http://bugs.debian.org/211570 - ---- a/SDL_net.h -+++ b/SDL_net.h -@@ -200,7 +200,8 @@ - extern DECLSPEC void SDLCALL SDLNet_UDP_SetPacketLoss(UDPsocket sock, int percent); - - /* Bind the address 'address' to the requested channel on the UDP socket. -- If the channel is -1, then the first unbound channel will be bound with -+ If the channel is -1, then the first unbound channel that has not yet -+ been bound to the maximum number of addresses will be bound with - the given address as it's primary address. - If the channel is already bound, this new address will be added to the - list of valid source addresses for packets arriving on the channel. ---- a/SDLnetUDP.c -+++ b/SDLnetUDP.c -@@ -246,7 +246,8 @@ - } - - /* Bind the address 'address' to the requested channel on the UDP socket. -- If the channel is -1, then the first unbound channel will be bound with -+ If the channel is -1, then the first unbound channel that has not yet -+ been bound to the maximum number of addresses will be bound with - the given address as it's primary address. - If the channel is already bound, this new address will be added to the - list of valid source addresses for packets arriving on the channel. diff --git a/runtime-optenv32/sdl-net+32/autobuild/patches/arm.patch b/runtime-optenv32/sdl-net+32/autobuild/patches/arm.patch deleted file mode 100644 index 023a6d5d1b3..00000000000 --- a/runtime-optenv32/sdl-net+32/autobuild/patches/arm.patch +++ /dev/null @@ -1,19 +0,0 @@ -Description: bad aligned access considerations on ARM - This patch is related with bug report #217221: - SDLNet_(Read|Write)(16|32) assume host endianness is always LE) - and the endian.patch -Author: Sam Hocevar -Last-Update: 2003-09-24 -Bug-Debian: http://bugs.debian.org/212570 - ---- a/SDL_net.h -+++ b/SDL_net.h -@@ -354,7 +354,7 @@ - /* Inline macro functions to read/write network data */ - - /* Warning, some systems have data access alignment restrictions */ --#if defined(sparc) || defined(mips) -+#if defined(sparc) || defined(mips) || defined(__arm__) - #define SDL_DATA_ALIGNED 1 - #endif - #ifndef SDL_DATA_ALIGNED diff --git a/runtime-optenv32/sdl-net+32/autobuild/patches/endian.patch b/runtime-optenv32/sdl-net+32/autobuild/patches/endian.patch deleted file mode 100644 index 6255c7476cd..00000000000 --- a/runtime-optenv32/sdl-net+32/autobuild/patches/endian.patch +++ /dev/null @@ -1,89 +0,0 @@ -Description: SDLNet_(Read|Write)(16|32) assume host endianness is always LE - This patch is related with bug report #212570 (bad aligned access - considerations on ARM), and the arm.patch -Author: Sam Hocevar -Last-Update: 2003-10-23 -Bug-Debian: http://bugs.debian.org/217221 - ---- a/SDL_net.h -+++ b/SDL_net.h -@@ -366,7 +366,6 @@ - #define SDLNet_Write16(value, areap) \ - (*SDL_reinterpret_cast(Uint16 *, areap) = SDL_SwapBE16(value)) - #else --#if SDL_BYTEORDER == SDL_BIG_ENDIAN - #define SDLNet_Write16(value, areap) \ - do \ - { \ -@@ -374,15 +373,6 @@ - area[0] = (value >> 8) & 0xFF; \ - area[1] = value & 0xFF; \ - } while ( 0 ) --#else --#define SDLNet_Write16(value, areap) \ --do \ --{ \ -- Uint8 *area = SDL_reinterpret_cast(Uint8 *, areap); \ -- area[1] = (value >> 8) & 0xFF; \ -- area[0] = value & 0xFF; \ --} while ( 0 ) --#endif - #endif /* !SDL_DATA_ALIGNED */ - - /* Write a 32 bit value to network packet buffer */ -@@ -390,7 +380,6 @@ - #define SDLNet_Write32(value, areap) \ - *SDL_reinterpret_cast(Uint32 *, areap) = SDL_SwapBE32(value); - #else --#if SDL_BYTEORDER == SDL_BIG_ENDIAN - #define SDLNet_Write32(value, areap) \ - do \ - { \ -@@ -400,17 +389,6 @@ - area[2] = (value >> 8) & 0xFF; \ - area[3] = value & 0xFF; \ - } while ( 0 ) --#else --#define SDLNet_Write32(value, areap) \ --do \ --{ \ -- Uint8 *area = SDL_reinterpret_cast(Uint8 *, areap); \ -- area[3] = (value >> 24) & 0xFF; \ -- area[2] = (value >> 16) & 0xFF; \ -- area[1] = (value >> 8) & 0xFF; \ -- area[0] = value & 0xFF; \ --} while ( 0 ) --#endif - #endif /* !SDL_DATA_ALIGNED */ - - /* Read a 16 bit value from network packet buffer */ -@@ -418,13 +396,8 @@ - #define SDLNet_Read16(areap) \ - (SDL_SwapBE16(*SDL_reinterpret_cast(Uint16 *, areap))) - #else --#if SDL_BYTEORDER == SDL_BIG_ENDIAN - #define SDLNet_Read16(areap) \ - (((SDL_reinterpret_cast(Uint8 *, areap))[0] << 8) | (SDL_reinterpret_cast(Uint8 *, areap))[1] << 0) --#else --#define SDLNet_Read16(areap) \ -- (((SDL_reinterpret_cast(Uint8 *, areap))[1] << 8) | (SDL_reinterpret_cast(Uint8 *, areap))[0] << 0) --#endif - #endif /* !SDL_DATA_ALIGNED */ - - /* Read a 32 bit value from network packet buffer */ -@@ -432,15 +405,9 @@ - #define SDLNet_Read32(areap) \ - (SDL_SwapBE32(*SDL_reinterpret_cast(Uint32 *, areap))) - #else --#if SDL_BYTEORDER == SDL_BIG_ENDIAN - #define SDLNet_Read32(areap) \ - (((SDL_reinterpret_cast(Uint8 *, areap))[0] << 24) | ((SDL_reinterpret_cast(Uint8 *, areap))[1] << 16) | \ - ((SDL_reinterpret_cast(Uint8 *, areap))[2] << 8) | (SDL_reinterpret_cast(Uint8 *, areap))[3] << 0) --#else --#define SDLNet_Read32(areap) \ -- (((SDL_reinterpret_cast(Uint8 *, areap))[3] << 24) | ((SDL_reinterpret_cast(Uint8 *, areap))[2] << 16) | \ -- ((SDL_reinterpret_cast(Uint8 *, areap))[1] << 8) | (SDL_reinterpret_cast(Uint8 *, areap))[0] << 0) --#endif - #endif /* !SDL_DATA_ALIGNED */ - - /* Ends C function definitions when using C++ */ diff --git a/runtime-optenv32/sdl-net+32/autobuild/patches/series b/runtime-optenv32/sdl-net+32/autobuild/patches/series deleted file mode 100644 index cd945624672..00000000000 --- a/runtime-optenv32/sdl-net+32/autobuild/patches/series +++ /dev/null @@ -1,3 +0,0 @@ -arm.patch -endian.patch -UDP_Bind.patch diff --git a/runtime-optenv32/sdl-net+32/spec b/runtime-optenv32/sdl-net+32/spec deleted file mode 100644 index dde83745a41..00000000000 --- a/runtime-optenv32/sdl-net+32/spec +++ /dev/null @@ -1,5 +0,0 @@ -VER=1.2.8 -SRCS="tbl::https://www.libsdl.org/projects/SDL_net/release/SDL_net-$VER.tar.gz" -CHKSUMS="sha256::5f4a7a8bb884f793c278ac3f3713be41980c5eedccecff0260411347714facb4" -REL=2 -CHKUPDATE="anitya::id=7983" From 04fd79230ac753e1165157340631cd4fd3393853 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 17:31:35 +0800 Subject: [PATCH 241/722] vulkan-loader+32: improve packaging - Use optenv32 template. - Fix up dependencies. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- .../vulkan-loader+32/autobuild/build | 19 ------------------- .../vulkan-loader+32/autobuild/defines | 9 +++++---- runtime-optenv32/vulkan-loader+32/spec | 1 + 3 files changed, 6 insertions(+), 23 deletions(-) delete mode 100644 runtime-optenv32/vulkan-loader+32/autobuild/build diff --git a/runtime-optenv32/vulkan-loader+32/autobuild/build b/runtime-optenv32/vulkan-loader+32/autobuild/build deleted file mode 100644 index be2c5944681..00000000000 --- a/runtime-optenv32/vulkan-loader+32/autobuild/build +++ /dev/null @@ -1,19 +0,0 @@ -export PATH="/opt/32/bin:$PATH" -export PKG_CONFIG_PATH="/opt/32/lib/pkg-config" - -abinfo "Running CMake for $PKGNAME ..." -cmake "$SRCDIR" \ - -DCMAKE_INSTALL_PREFIX=/opt/32 \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_C_COMPILER=/opt/32/bin/gcc \ - -DCMAKE_CXX_COMPILER=/opt/32/bin/g++ \ - ${CMAKE_AFTER} - -abinfo "Building $i ..." -make - -abinfo "Installing $i ..." -make install DESTDIR="$PKGDIR" - -abinfo "Removing non-runtime data ..." -rm -rfv "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/vulkan-loader+32/autobuild/defines b/runtime-optenv32/vulkan-loader+32/autobuild/defines index 5d137a77a4c..228203aeeaa 100644 --- a/runtime-optenv32/vulkan-loader+32/autobuild/defines +++ b/runtime-optenv32/vulkan-loader+32/autobuild/defines @@ -1,8 +1,10 @@ PKGNAME=vulkan-loader+32 PKGSEC=libs PKGDEP="libxkbcommon+32 mesa+32 x11-lib+32" -BUILDDEP="lxml vulkan-headers vulkan-headers+32 32subsystem" -PKGDES="Vulkan Installable Client Driver (ICD) Loader (optenv32)" +# FIXME: vulkan-headers is used to provide the CMake modules needed during the +# CMake configuration process. +BUILDDEP="devel-base+32 libxcb+32 lxml vulkan-headers vulkan-headers+32" +PKGDES="Vulkan Installable Client Driver (ICD) Loader (32-bit x86 runtime)" CMAKE_AFTER="-DBUILD_LOADER=ON \ -DBUILD_WSI_XCB_SUPPORT=ON \ @@ -15,5 +17,4 @@ PKGBREAK="vulkan+32<=1.1.70.1-3" PKGREP="vulkan+32<=1.1.70.1-3" NOLTO=1 - -ABHOST=noarch +ABHOST=optenv32 diff --git a/runtime-optenv32/vulkan-loader+32/spec b/runtime-optenv32/vulkan-loader+32/spec index 49ad979bb4c..45fc732e8a1 100644 --- a/runtime-optenv32/vulkan-loader+32/spec +++ b/runtime-optenv32/vulkan-loader+32/spec @@ -1,4 +1,5 @@ VER=1.3.283.0 +REL=1 SRCS="git::commit=tags/vulkan-sdk-$VER::https://github.com/KhronosGroup/Vulkan-Loader" CHKSUMS="SKIP" CHKUPDATE="anitya::id=230557" From 4b6d74447d57da442e5a673714d62709b43b8466 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 17:32:38 +0800 Subject: [PATCH 242/722] gst-libav-1-0+32: drop, orphaned --- runtime-optenv32/gst-libav-1-0+32/autobuild/build | 11 ----------- runtime-optenv32/gst-libav-1-0+32/autobuild/defines | 11 ----------- runtime-optenv32/gst-libav-1-0+32/spec | 4 ---- 3 files changed, 26 deletions(-) delete mode 100644 runtime-optenv32/gst-libav-1-0+32/autobuild/build delete mode 100644 runtime-optenv32/gst-libav-1-0+32/autobuild/defines delete mode 100644 runtime-optenv32/gst-libav-1-0+32/spec diff --git a/runtime-optenv32/gst-libav-1-0+32/autobuild/build b/runtime-optenv32/gst-libav-1-0+32/autobuild/build deleted file mode 100644 index d7e2209f649..00000000000 --- a/runtime-optenv32/gst-libav-1-0+32/autobuild/build +++ /dev/null @@ -1,11 +0,0 @@ -export PATH=/opt/32/bin:$PATH -./configure --prefix=/opt/32 \ - --build=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --target=i686-pc-linux-gnu \ - ${AUTOTOOLS_AFTER} \ - CC=i686-pc-linux-gnu-gcc -make -make install DESTDIR="$PKGDIR" - -rm -r "$PKGDIR"/opt/32/share diff --git a/runtime-optenv32/gst-libav-1-0+32/autobuild/defines b/runtime-optenv32/gst-libav-1-0+32/autobuild/defines deleted file mode 100644 index ee2dd79ff7f..00000000000 --- a/runtime-optenv32/gst-libav-1-0+32/autobuild/defines +++ /dev/null @@ -1,11 +0,0 @@ -PKGNAME=gst-libav-1-0+32 -PKGSEC=libs -PKGDEP="bzip2+32 gst-plugins-base-1-0+32" -BUILDDEP="python-3 yasm" # 32subsystem" -PKGDES="LibAV plugins for Gstreamer (optenv32)" - -AUTOTOOLS_AFTER="--without-system-libav \ - --with-libav-extra-configure=--enable-runtime-cpudetect" -NOLTO=1 -ABHOST=noarch -AB_FLAGS_SPECS=0 diff --git a/runtime-optenv32/gst-libav-1-0+32/spec b/runtime-optenv32/gst-libav-1-0+32/spec deleted file mode 100644 index a390237ef7f..00000000000 --- a/runtime-optenv32/gst-libav-1-0+32/spec +++ /dev/null @@ -1,4 +0,0 @@ -VER=1.16.2 -SRCS="tbl::https://gstreamer.freedesktop.org/src/gst-libav/gst-libav-$VER.tar.xz" -CHKSUMS="sha256::c724f612700c15a933c7356fbeabb0bb9571fb5538f8b1b54d4d2d94188deef2" -CHKUPDATE="anitya::id=21848" From 56eb9f23be50e87063fab3cc32302c224e833226 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 17:32:38 +0800 Subject: [PATCH 243/722] gst-plugins-bad-1-0+32: drop, orphaned --- .../gst-plugins-bad-1-0+32/autobuild/build | 12 ------------ .../gst-plugins-bad-1-0+32/autobuild/defines | 17 ----------------- runtime-optenv32/gst-plugins-bad-1-0+32/spec | 5 ----- 3 files changed, 34 deletions(-) delete mode 100644 runtime-optenv32/gst-plugins-bad-1-0+32/autobuild/build delete mode 100644 runtime-optenv32/gst-plugins-bad-1-0+32/autobuild/defines delete mode 100644 runtime-optenv32/gst-plugins-bad-1-0+32/spec diff --git a/runtime-optenv32/gst-plugins-bad-1-0+32/autobuild/build b/runtime-optenv32/gst-plugins-bad-1-0+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/gst-plugins-bad-1-0+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/gst-plugins-bad-1-0+32/autobuild/defines b/runtime-optenv32/gst-plugins-bad-1-0+32/autobuild/defines deleted file mode 100644 index b927731bd3b..00000000000 --- a/runtime-optenv32/gst-plugins-bad-1-0+32/autobuild/defines +++ /dev/null @@ -1,17 +0,0 @@ -PKGNAME=gst-plugins-bad-1-0+32 -PKGSEC=libs -PKGDEP="celt+32 curl+32 faac+32 faad2+32 game-music-emu+32 \ - glu+32 gnutls+32 gst-plugins-base-1-0+32 libdca+32 libdvdnav+32 libmms+32 libmodplug+32 \ - libofa+32 libwebp+32 mjpegtools+32 mpg123+32 neon+32 openjpeg-legacy+32 opus+32 \ - rtmpdump+32 sbc+32 soundtouch+32 srtp+32 wildmidi+32 python-3 x265+32 libdvdread+32 \ - libexif+32 libmpeg2+32 librsvg+32 libusb+32 libvdpau+32 openal-soft+32 schroedinger+32" -BUILDDEP="32subsystem" -PKGDES="GStreamer Multimedia Framework Bad Plugins" - -AUTOTOOLS_AFTER="--enable-experimental --disable-gtk-doc \ - --enable-gtk=3.0 --disable-cocoa \ - --disable-qt PYTHON=/usr/bin/python3" -ABSHADOW=0 -NOLTO=1 -ABHOST=noarch -AB_FLAGS_SPECS=0 diff --git a/runtime-optenv32/gst-plugins-bad-1-0+32/spec b/runtime-optenv32/gst-plugins-bad-1-0+32/spec deleted file mode 100644 index 53519e06381..00000000000 --- a/runtime-optenv32/gst-plugins-bad-1-0+32/spec +++ /dev/null @@ -1,5 +0,0 @@ -VER=1.16.2 -SRCS="tbl::https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-$VER.tar.xz" -CHKSUMS="sha256::f1cb7aa2389569a5343661aae473f0a940a90b872001824bc47fa8072a041e74" -REL=1 -CHKUPDATE="anitya::id=21849" From 8f875a713a2200b6b686f9d6c0a4a5ce28dc8208 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 17:32:38 +0800 Subject: [PATCH 244/722] gst-plugins-base-1-0+32: drop, orphaned --- .../gst-plugins-base-1-0+32/autobuild/build | 12 ------------ .../gst-plugins-base-1-0+32/autobuild/defines | 14 -------------- runtime-optenv32/gst-plugins-base-1-0+32/spec | 5 ----- 3 files changed, 31 deletions(-) delete mode 100644 runtime-optenv32/gst-plugins-base-1-0+32/autobuild/build delete mode 100644 runtime-optenv32/gst-plugins-base-1-0+32/autobuild/defines delete mode 100644 runtime-optenv32/gst-plugins-base-1-0+32/spec diff --git a/runtime-optenv32/gst-plugins-base-1-0+32/autobuild/build b/runtime-optenv32/gst-plugins-base-1-0+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/gst-plugins-base-1-0+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/gst-plugins-base-1-0+32/autobuild/defines b/runtime-optenv32/gst-plugins-base-1-0+32/autobuild/defines deleted file mode 100644 index 9568fd6af9d..00000000000 --- a/runtime-optenv32/gst-plugins-base-1-0+32/autobuild/defines +++ /dev/null @@ -1,14 +0,0 @@ -PKGNAME=gst-plugins-base-1-0+32 -PKGSEC=libs -PKGDEP="alsa-lib+32 cdparanoia+32 libtheora+32 libvorbis+32 libvisual+32 orc+32 \ - pango+32 gstreamer-1-0+32" -BUILDDEP="gobject-introspection 32subsystem" -PKGDES="GStremaer Multimedia Framework - Base Modules (optenv32)" - -AUTOTOOLS_AFTER="--enable-experimental" -NOLTO=1 -AB_FLAGS_SPECS=0 -ABHOST=noarch - -PKGREP="gst-plugins-bad-1-0+32<=1.14.4" -PKGBREAK="gst-plugins-bad-1-0+32<=1.14.4" diff --git a/runtime-optenv32/gst-plugins-base-1-0+32/spec b/runtime-optenv32/gst-plugins-base-1-0+32/spec deleted file mode 100644 index 8e57c26eec9..00000000000 --- a/runtime-optenv32/gst-plugins-base-1-0+32/spec +++ /dev/null @@ -1,5 +0,0 @@ -VER=1.16.2 -REL=1 -SRCS="tbl::https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-$VER.tar.xz" -CHKSUMS="sha256::ca6139490e48863e7706d870ff4e8ac9f417b56f3b9e4b3ce490c13b09a77461" -CHKUPDATE="anitya::id=21850" From 1ace10cfc6ca221f02da40fa5659604073c1677a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 17:32:39 +0800 Subject: [PATCH 245/722] gst-plugins-good-1-0+32: drop, orphaned --- .../gst-plugins-good-1-0+32/autobuild/build | 14 -------------- .../gst-plugins-good-1-0+32/autobuild/defines | 16 ---------------- runtime-optenv32/gst-plugins-good-1-0+32/spec | 5 ----- 3 files changed, 35 deletions(-) delete mode 100644 runtime-optenv32/gst-plugins-good-1-0+32/autobuild/build delete mode 100644 runtime-optenv32/gst-plugins-good-1-0+32/autobuild/defines delete mode 100644 runtime-optenv32/gst-plugins-good-1-0+32/spec diff --git a/runtime-optenv32/gst-plugins-good-1-0+32/autobuild/build b/runtime-optenv32/gst-plugins-good-1-0+32/autobuild/build deleted file mode 100644 index 03bca696b78..00000000000 --- a/runtime-optenv32/gst-plugins-good-1-0+32/autobuild/build +++ /dev/null @@ -1,14 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -./configure --prefix=/opt/32 \ - --host=i686-aosc-linux-gnu \ - --build=i686-aosc-linux-gnu \ - --target=i686-aosc-linux-gnu \ - ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig \ - CC=/opt/32/bin/gcc \ - CXX=/opt/32/bin/g++ -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{share,bin} diff --git a/runtime-optenv32/gst-plugins-good-1-0+32/autobuild/defines b/runtime-optenv32/gst-plugins-good-1-0+32/autobuild/defines deleted file mode 100644 index c2721047412..00000000000 --- a/runtime-optenv32/gst-plugins-good-1-0+32/autobuild/defines +++ /dev/null @@ -1,16 +0,0 @@ -PKGNAME=gst-plugins-good-1-0+32 -PKGSEC=libs -PKGDEP="aalib+32 cairo+32 flac+32 gdk-pixbuf+32 gst-plugins-base-1-0+32 libavc1394+32 \ - libcaca+32 libdv+32 libiec61883+32 libogg+32 libraw1394+32 libshout+32 \ - libvpx+32 pulseaudio+32 taglib+32 v4l-utils+32 wavpack+32 speex+32 twolame+32" -BUILDDEP="python-3 32subsystem" -PKGDES="GStreamer Multimedia Framework Good Plugins" - -AUTOTOOLS_AFTER="--enable-experimental --disable-gtk-doc \ - PYTHON=/usr/bin/python3" -NOLTO=1 -ABHOST=noarch -AB_FLAGS_SPECS=0 - -PKGBREAK="gst-plugins-ugly-1-0+32<=1.12.4" -PKGREP="gst-plugins-ugly-1-0+32<=1.12.4" diff --git a/runtime-optenv32/gst-plugins-good-1-0+32/spec b/runtime-optenv32/gst-plugins-good-1-0+32/spec deleted file mode 100644 index e4eebb6cacc..00000000000 --- a/runtime-optenv32/gst-plugins-good-1-0+32/spec +++ /dev/null @@ -1,5 +0,0 @@ -VER=1.16.2 -REL=2 -SRCS="tbl::https://gstreamer.freedesktop.org/src/gst-plugins-good/gst-plugins-good-$VER.tar.xz" -CHKSUMS="sha256::40bb3bafda25c0b739c8fc36e48380fccf61c4d3f83747e97ac3f9b0171b1319" -CHKUPDATE="anitya::id=21852" From d505fa6d1d05e1561f70b040f1e44fc084d5b8f5 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 17:32:39 +0800 Subject: [PATCH 246/722] gst-plugins-ugly-1-0+32: drop, orphaned --- .../gst-plugins-ugly-1-0+32/autobuild/build | 12 ------------ .../gst-plugins-ugly-1-0+32/autobuild/defines | 12 ------------ runtime-optenv32/gst-plugins-ugly-1-0+32/spec | 4 ---- 3 files changed, 28 deletions(-) delete mode 100644 runtime-optenv32/gst-plugins-ugly-1-0+32/autobuild/build delete mode 100644 runtime-optenv32/gst-plugins-ugly-1-0+32/autobuild/defines delete mode 100644 runtime-optenv32/gst-plugins-ugly-1-0+32/spec diff --git a/runtime-optenv32/gst-plugins-ugly-1-0+32/autobuild/build b/runtime-optenv32/gst-plugins-ugly-1-0+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/gst-plugins-ugly-1-0+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/gst-plugins-ugly-1-0+32/autobuild/defines b/runtime-optenv32/gst-plugins-ugly-1-0+32/autobuild/defines deleted file mode 100644 index 27680192361..00000000000 --- a/runtime-optenv32/gst-plugins-ugly-1-0+32/autobuild/defines +++ /dev/null @@ -1,12 +0,0 @@ -PKGNAME=gst-plugins-ugly-1-0+32 -PKGSEC=libs -PKGDEP="a52dec+32 gst-plugins-base-1-0+32 lame+32 libcdio+32 libdvdread+32 libmad+32 \ - libmpeg2+32 libsidplay+32 x264+32 opencore-amr+32 twolame+32" -BUILDDEP="python-3 32subsystem" -PKGDES="GStreamer Multimedia Framework Ugly Plugins (optenv32)" - -AUTOTOOLS_AFTER="--enable-experimental --disable-gtk-doc \ - PYTHON=/usr/bin/python3" -NOLTO=1 -ABHOST=noarch -AB_FLAGS_SPECS=0 diff --git a/runtime-optenv32/gst-plugins-ugly-1-0+32/spec b/runtime-optenv32/gst-plugins-ugly-1-0+32/spec deleted file mode 100644 index 900ff887fa7..00000000000 --- a/runtime-optenv32/gst-plugins-ugly-1-0+32/spec +++ /dev/null @@ -1,4 +0,0 @@ -VER=1.16.2 -SRCS="tbl::http://gstreamer.freedesktop.org/src/gst-plugins-ugly/gst-plugins-ugly-$VER.tar.xz" -CHKSUMS="sha256::5500415b865e8b62775d4742cbb9f37146a50caecfc0e7a6fc0160d3c560fbca" -CHKUPDATE="anitya::id=15187" From d10784325240d79246b34de32e7cf707efe3a010 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 5 Jan 2025 17:32:39 +0800 Subject: [PATCH 247/722] gstreamer-1-0+32: drop, orphaned --- runtime-optenv32/gstreamer-1-0+32/autobuild/build | 12 ------------ .../gstreamer-1-0+32/autobuild/defines | 14 -------------- runtime-optenv32/gstreamer-1-0+32/spec | 4 ---- 3 files changed, 30 deletions(-) delete mode 100644 runtime-optenv32/gstreamer-1-0+32/autobuild/build delete mode 100644 runtime-optenv32/gstreamer-1-0+32/autobuild/defines delete mode 100644 runtime-optenv32/gstreamer-1-0+32/spec diff --git a/runtime-optenv32/gstreamer-1-0+32/autobuild/build b/runtime-optenv32/gstreamer-1-0+32/autobuild/build deleted file mode 100644 index c50a30c11ed..00000000000 --- a/runtime-optenv32/gstreamer-1-0+32/autobuild/build +++ /dev/null @@ -1,12 +0,0 @@ -export PATH=/opt/32/bin:$PATH - -CC=i686-pc-linux-gnu-gcc - -./configure --build=i686-pc-linux-gnu --target=i686-pc-linux-gnu \ - --host=i686-pc-linux-gnu \ - --prefix=/opt/32 ${AUTOTOOLS_AFTER} \ - PKG_CONFIG_PATH=/opt/32/lib/pkgconfig -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/gstreamer-1-0+32/autobuild/defines b/runtime-optenv32/gstreamer-1-0+32/autobuild/defines deleted file mode 100644 index 31f82bb2fe2..00000000000 --- a/runtime-optenv32/gstreamer-1-0+32/autobuild/defines +++ /dev/null @@ -1,14 +0,0 @@ -PKGNAME=gstreamer-1-0+32 -PKGSEC=libs -PKGDES="GStreamer Multimedia Framework - 1.0 branch (optenv32)" -PKGDEP="glib+32 libxml2+32" -BUILDDEP="32subsystem" -AUTOTOOLS_AFTER="--disable-gtk-doc --disable-docbook" - -ABSHADOW=0 -NOLTO=1 -ABHOST=noarch -AB_FLAGS_SPECS=0 - -PKGBREAK="gst-plugins-bad-1-0+32<=1.12.4" -PKGREP="gst-plugins-bad-1-0+32<=1.12.4" diff --git a/runtime-optenv32/gstreamer-1-0+32/spec b/runtime-optenv32/gstreamer-1-0+32/spec deleted file mode 100644 index f993f080c55..00000000000 --- a/runtime-optenv32/gstreamer-1-0+32/spec +++ /dev/null @@ -1,4 +0,0 @@ -VER=1.16.2 -SRCS="tbl::http://gstreamer.freedesktop.org/src/gstreamer/gstreamer-$VER.tar.xz" -CHKSUMS="sha256::e3f044246783fd685439647373fa13ba14f7ab0b346eadd06437092f8419e94e" -CHKUPDATE="anitya::id=1263" From 6e9be3799684f27c16631bc3af41faca048320b6 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Fri, 24 Jan 2025 16:01:03 +0800 Subject: [PATCH 248/722] fluidsynth+32: update to 2.3.6 - Use optenv32 template. - Improve PKGDES optenv32 => 32-bit x86 runtime. --- runtime-optenv32/fluidsynth+32/autobuild/build | 11 ----------- runtime-optenv32/fluidsynth+32/autobuild/defines | 16 ++++++++++++---- runtime-optenv32/fluidsynth+32/spec | 7 +++---- 3 files changed, 15 insertions(+), 19 deletions(-) delete mode 100644 runtime-optenv32/fluidsynth+32/autobuild/build diff --git a/runtime-optenv32/fluidsynth+32/autobuild/build b/runtime-optenv32/fluidsynth+32/autobuild/build deleted file mode 100644 index d4026e68f70..00000000000 --- a/runtime-optenv32/fluidsynth+32/autobuild/build +++ /dev/null @@ -1,11 +0,0 @@ -export PATH=/opt/32/bin:$PATH -export PKG_CONFIG_PATH=/opt/32/lib/pkg-config -export PKG_CONFIG=i686-pc-linux-gnu-pkg-config - -cmake . -DCMAKE_INSTALL_PREFIX=/opt/32 -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_C_COMPILER=/opt/32/bin/i686-pc-linux-gnu-gcc \ - ${CMAKE_AFTER} -make -make install DESTDIR="$PKGDIR" - -rm -rf "$PKGDIR"/opt/32/{bin,share} diff --git a/runtime-optenv32/fluidsynth+32/autobuild/defines b/runtime-optenv32/fluidsynth+32/autobuild/defines index 6dca186f83d..1b1721129be 100644 --- a/runtime-optenv32/fluidsynth+32/autobuild/defines +++ b/runtime-optenv32/fluidsynth+32/autobuild/defines @@ -1,8 +1,16 @@ PKGNAME=fluidsynth+32 PKGSEC=sound PKGDEP="glib+32 pulseaudio+32" -PKGDES="A real-time software synthesizer based on the SoundFont 2 specifications (optenv32)" +BUILDDEP="devel-base+32" +PKGDES="A real-time software synthesizer based on the SoundFont 2 specifications (32-bit x86 runtime)" -CMAKE_AFTER="-Denable-ladspa=ON -DLIB_SUFFIX= -Denable-jack=OFF" -NOLTO=1 -ABHOST=noarch +CMAKE_AFTER=( + '-Denable-ladspa=ON' + '-Denable-jack=OFF' + '-DCMAKE_FIND_ROOT_PATH=/opt/32' + '-DCMAKE_FIND_ROOT_PATH_MODE_LIBRARY=ONLY' + '-DCMAKE_SHARED_LINKER_FLAGS_INIT=-lncursesw' + '-DFLUID_HOST_COMPILER=/opt/32/bin/i686-aosc-linux-gnu-gcc' +) + +ABHOST=optenv32 diff --git a/runtime-optenv32/fluidsynth+32/spec b/runtime-optenv32/fluidsynth+32/spec index a4aca73ce2a..d44800df4bb 100644 --- a/runtime-optenv32/fluidsynth+32/spec +++ b/runtime-optenv32/fluidsynth+32/spec @@ -1,5 +1,4 @@ -VER=1.1.6 -SRCS="tbl::https://sourceforge.net/projects/fluidsynth/files/fluidsynth-$VER/fluidsynth-$VER.tar.gz" -CHKSUMS="sha256::50853391d9ebeda9b4db787efb23f98b1e26b7296dd2bb5d0d96b5bccee2171c" -REL=2 +VER=2.3.6 +SRCS="git::commit=tags/v$VER::https://github.com/FluidSynth/fluidsynth" +CHKSUMS="SKIP" CHKUPDATE="anitya::id=10437" From a5571752fea2d4a1f8d30335091bc4322b7ca7d9 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Fri, 24 Jan 2025 16:01:35 +0800 Subject: [PATCH 249/722] 32subsystem: update dependencies --- .../32subsystem/autobuild/defines | 68 +++++++++++-------- runtime-optenv32/32subsystem/spec | 2 +- 2 files changed, 39 insertions(+), 31 deletions(-) diff --git a/runtime-optenv32/32subsystem/autobuild/defines b/runtime-optenv32/32subsystem/autobuild/defines index 27a58c2f86f..f315e5f724a 100644 --- a/runtime-optenv32/32subsystem/autobuild/defines +++ b/runtime-optenv32/32subsystem/autobuild/defines @@ -1,35 +1,43 @@ PKGNAME=32subsystem -PKGDES="32 bit (i686) runtime and development support environment" PKGSEC=libs -PKGDEP="\ -a52dec+32 aalib+32 acl+32 alsa-lib+32 alsa-plugins+32 atk+32 at-spi2-atk+32 \ -at-spi2-core+32 attr+32 binutils+32 bzip2+32 cairo+32 cdparanoia+32 celt+32 cg+32 cups+32 \ -curl+32 db+32 dbus+32 dbus-glib+32 elfutils+32 eudev+32 expat+32 faac+32 faad2+32 fftw+32 \ -flac+32 fontconfig+32 freealut+32 freeglut+32 freetype+32 game-music-emu+32 gcc+32 gconf+32 \ -gdbm+32 gdk-pixbuf+32 ghostscript+32 giflib+32 glew+32 glib+32 glibc+32 glu+32 gmp+32 gnutls+32 \ -gst-plugins-bad-1-0+32 gst-plugins-base-1-0+32 gst-plugins-good-1-0+32 \ -gst-plugins-ugly-1-0+32 gstreamer-1-0+32 gtk-2+32 gtk-3+32 harfbuzz+32 icu+32 \ -imlib2+32 json-c+32 krb5+32 lame+32 lcms2+32 libaio+32 libasyncns+32 libavc1394+32 libcaca+32 \ -libcap+32 libcddb+32 libcdio+32 libcroco+32 libdca+32 libdrm+32 libdv+32 libdvdcss+32 \ -libdvdnav+32 libdvdread+32 libepoxy+32 libexif+32 libffi+32 libgcrypt+32 libgpg-error+32 \ -libid3tag+32 libidn+32 libiec61883+32 libjpeg-turbo+32 libmad+32 libmms+32 libmodplug+32 \ -libmpeg2+32 libnl+32 libofa+32 libogg+32 libpcap+32 libpng-1.6+32 libpng+32 libraw1394+32 \ -librsvg+32 libshout+32 libsidplay+32 libsndfile+32 libspectre+32 libssh2+32 libtasn1+32 \ -libtheora+32 libtiff+32 libtool+32 libusb+32 libva+32 libva-intel-driver+32 \ -libva-vdpau-driver+32 libvdpau+32 libvisual+32 libvorbis+32 libvpx+32 libwebp+32 libxau+32 \ -libxcb+32 libxdmcp+32 libxkbcommon+32 libxml2+32 libxslt+32 linux+api+32 llvm+32 mesa+32 \ -mjpegtools+32 mp4v2+32 mpc+32 mpfr+32 mpg123+32 nasm+32 ncurses+32 neon+32 nettle+32 nspr+32 \ -nss+32 openal-soft+32 opencore-amr+32 openjpeg-legacy+32 openldap+32 openssl+32 opus+32 orc+32 \ -p11-kit+32 pango+32 pcre+32 perl+32 perl-xml-parser+32 pixman+32 poppler+32 \ -popt+32 portaudio+32 pulseaudio+32 readline+32 rtmpdump+32 s2tc+32 sbc+32 \ -schroedinger+32 sdl+32 sdl-ttf+32 soundtouch+32 speex+32 sqlite+32 srtp+32 taglib+32 \ -tcl+32 tk+32 twolame+32 util-linux+32 v4l-utils+32 wavpack+32 wildmidi+32 \ -x11-lib+32 x11-proto+32 x264+32 x265+32 xcb-proto+32 xz+32 zlib+32 \ -gsm+32 fribidi+32 recode+32 enca+32 libass+32 gst-libav-1-0+32 ffmpeg+32 xvidcore+32 \ -soxr+32 libssh+32 libbluray+32 vulkan+32" +# Note: Everything, basically. +PKGDEP=""" +a52dec+32 aalib+32 acl+32 alsa-lib+32 alsa-plugins+32 at-spi2-core+32 attr+32 +binutils+32 brotli+32 bzip2+32 cairo+32 cdparanoia+32 celt+32 cups+32 curl+32 +db+32 dbus+32 dbus-glib+32 devel-base+32 elfutils+32 enca+32 eudev+32 expat+32 +faac+32 faad2+32 ffmpeg+32 fftw+32 flac+32 fluidsynth+32 fontconfig+32 +freealut+32 freeglut+32 freetype+32 fribidi+32 game-music-emu+32 gcc+32 +gconf+32 gdbm+32 gdk-pixbuf+32 giflib+32 glew+32 glib+32 glibc+32 glslang+32 +glu+32 gmp+32 gnutls+32 gsm+32 gtk-2+32 gtk-3+32 harfbuzz+32 icu+32 imlib2+32 +json-c+32 krb5+32 lame+32 lcms2+32 libaio+32 libass+32 libasyncns+32 +libavc1394+32 libbluray+32 libbsd+32 libcaca+32 libcap+32 libcddb+32 libcdio+32 +libcroco+32 libdatrie+32 libdca+32 libdrm+32 libdv+32 libdvdcss+32 libdvdnav+32 +libdvdread+32 libepoxy+32 libexif+32 libffi+32 libgcrypt+32 libglvnd+32 +libgpg-error+32 libid3tag+32 libidn+32 libiec61883+32 libjpeg-turbo+32 +libmad+32 libmd+32 libmikmod+32 libmms+32 libmodplug+32 libmpeg2+32 libnl+32 +libofa+32 libogg+32 libpcap+32 libpng-1.6+32 libpng+32 libraw1394+32 librsvg+32 +libshout+32 libsidplay+32 libsndfile+32 libssh2+32 libssh+32 libtasn1+32 +libthai+32 libtheora+32 libtiff+32 libtool+32 libunwind+32 libusb+32 +libusb-compat+32 libva+32 libva-intel-driver+32 libva-vdpau-driver+32 +libvdpau+32 libvisual+32 libvorbis+32 libvpx+32 libwebp+32 libxau+32 libxcb+32 +libxcrypt+32 libxdmcp+32 libxkbcommon+32 libxml2+32 libxnvctrl+32 libxslt+32 +linux+api+32 llvm+32 lzo+32 mangohud+32 mbedtls+32 mesa+32 mjpegtools+32 +mp4v2+32 mpc+32 mpfr+32 mpg123+32 nasm+32 ncurses+32 neon+32 nettle+32 +nlohmann-json+32 nspr+32 nss+32 openal-soft+32 opencore-amr+32 +openjpeg-legacy+32 openldap+32 openssl-1.1+32 openssl+32 opus+32 orc+32 +p11-kit+32 pango+32 pcre2+32 pcre+32 pixman+32 popt+32 portaudio+32 +proxychains-ng+32 pulseaudio+32 readline+32 recode+32 rtmpdump+32 rustc+32 +s2tc+32 sbc+32 schroedinger+32 sdl+32 sdl-ttf+32 shared-mime-info+32 smpeg+32 +soundtouch+32 soxr+32 speex+32 spirv-llvm-translator+32 spirv-tools+32 +sqlite+32 srtp+32 taglib+32 tcl+32 tk+32 twolame+32 util-linux+32 v4l-utils+32 +vkd3d+32 volk-meta-loader+32 vulkan+32 vulkan-headers+32 vulkan-loader+32 +vulkan-tools+32 wavpack+32 wayland+32 wildmidi+32 x11-lib+32 x11-proto+32 +x264+32 x265+32 xvidcore+32 xz+32 zlib+32 zstd+32 +""" +PKGDES="32-bit runtime and development environment" PKGPROV="optenv32 ia32-libs" -NOLTO=1 -ABHOST=noarch -PKGEPOCH=1 +ABHOST=optenv32 +# Note: Non-arch-agnostic package. +ABSPLITDBG=0 diff --git a/runtime-optenv32/32subsystem/spec b/runtime-optenv32/32subsystem/spec index 90033f6dc65..70fd8e405cc 100644 --- a/runtime-optenv32/32subsystem/spec +++ b/runtime-optenv32/32subsystem/spec @@ -1,2 +1,2 @@ -VER=2 +VER=3 DUMMYSRC=1 From 1bb327554ba4a7649c35625743de9f728b3b3720 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Fri, 24 Jan 2025 16:01:46 +0800 Subject: [PATCH 250/722] groups/optenv32: update build order --- groups/optenv32 | 419 +++++++++++++++++++++++------------------------- 1 file changed, 204 insertions(+), 215 deletions(-) diff --git a/groups/optenv32 b/groups/optenv32 index f458d6f2863..b85ddc2650f 100644 --- a/groups/optenv32 +++ b/groups/optenv32 @@ -1,215 +1,204 @@ -linux+api+32 -libxcrypt+32 -mpc+32 -mpfr+32 -gmp+32 -zlib+32 -binutils+32 -gcc+32 -devel-base+32 -glibc+32 -libidn+32 -bzip2+32 -ncurses+32 -readline+32 -a52dec+32 -expat+32 -xz+32 -elfutils+32 -db+32 -fftw+32 -game-music-emu+32 -gdbm+32 -libdvdcss+32 -libdvdread+32 -libdvdnav+32 -libmms+32 -libmodplug+32 -popt+32 -libdv+32 -libtool+32 -sbc+32 -srtp+32 -libraw1394+32 -libiec61883+32 -libcddb+32 -libcdio+32 -libsidplay+32 -icu+32 -libnl+32 -nasm+32 -recode+32 -enca+32 -vulkan-headers+32 -volk-meta-loader+32 -vulkan-tools+32 -vulkan-loader+32 -vulkan+32 -soxr+32 -xvidcore+32 -krb5+32 -libssh+32 -libbluray+32 -x264+32 -ffmpeg+32 -gst-libav-1-0+32 -libass+32 -gsm+32 -tk+32 -tcl+32 -sdl-ttf+32 -s2tc+32 -portaudio+32 -p11-kit+32 -sqlite+32 -nss+32 -nspr+32 -libva-vdpau-driver+32 -libva-intel-driver+32 -libva+32 -libtasn1+32 -libpcap+32 -libcroco+32 -libaio+32 -gtk-2+32 -opencore-amr+32 -libmad+32 -lame+32 -gst-plugins-ugly-1-0+32 -twolame+32 -wavpack+32 -v4l-utils+32 -taglib+32 -libvpx+32 -libshout+32 -libid3tag+32 -imlib2+32 -libcaca+32 -libavc1394+32 -gst-plugins-good-1-0+32 -gstreamer-0-10+32 -gst-plugins-base-0-10+32 -schroedinger+32 -libmpeg2+32 -libexif+32 -x265+32 -wildmidi+32 -soundtouch+32 -rtmpdump+32 -opus+32 -lcms2+32 -openjpeg-legacy+32 -neon+32 -mpg123+32 -sdl+32 -mjpegtools+32 -libwebp+32 -libofa+32 -libdca+32 -gstreamer-1-0+32 -orc+32 -libvisual+32 -libtheora+32 -gst-plugins-base-1-0+32 -gst-plugins-bad-1-0+32 -glu+32 -glew+32 -giflib+32 -gdk-pixbuf+32 -gconf+32 -freeglut+32 -openal-soft+32 -freealut+32 -faad2+32 -mp4v2+32 -faac+32 -dbus-glib+32 -libssh2+32 -curl+32 -libusb+32 -nettle+32 -gnutls+32 -openssl+32 -openldap+32 -cups+32 -libglvnd+32 -libvdpau+32 -eudev+32 -libffi+32 -llvm+32 -mesa+32 -cg+32 -celt+32 -cdparanoia+32 -libepoxy+32 -libxkbcommon+32 -fribidi+32 -pango+32 -gtk-3+32 -librsvg+32 -poppler+32 -libtiff+32 -libjpeg-turbo+32 -libpng+32 -ghostscript+32 -libspectre+32 -pixman+32 -libdrm+32 -cairo+32 -at-spi2-core+32 -at-spi2-atk+32 -atk+32 -speex+32 -json-c+32 -libvorbis+32 -libogg+32 -flac+32 -libsndfile+32 -libcap+32 -dbus+32 -libasyncns+32 -pulseaudio+32 -alsa-plugins+32 -alsa-lib+32 -attr+32 -acl+32 -libgpg-error+32 -libgcrypt+32 -libxslt+32 -libxdmcp+32 -x11-proto+32 -libxau+32 -xcb-proto+32 -libxcb+32 -util-linux+32 -libxml2+32 -libpng-1.6+32 -freetype+32 -fontconfig+32 -x11-lib+32 -aalib+32 -32subsystem -pcre+32 -glib+32 -harfbuzz+32 -wayland+32 -libmikmod+32 -smpeg+32 -sdl-sound+32 -libxnvctrl+32 -nvidia+32 -allegro+32 -boost+32 -fluidsynth+32 -glslang+32 -nlohmann-json+32 -mangohud+32 -openssl-1.1+32 -libusb-compat+32 -libjpeg+legacy+32 -mbedtls+32 -vkd3d+32 -nvidia+390+32 -virtualgl+32 -proxychains-ng+32 -sdl-net+32 +runtime-optenv32/linux+api+32 +runtime-optenv32/libxcrypt+32 +runtime-optenv32/mpc+32 +runtime-optenv32/mpfr+32 +runtime-optenv32/gmp+32 +runtime-optenv32/zlib+32 +runtime-optenv32/binutils+32 +runtime-optenv32/gcc+32 +runtime-optenv32/devel-base+32 +runtime-optenv32/glibc+32 +runtime-optenv32/libidn+32 +runtime-optenv32/expat+32 +runtime-optenv32/brotli+32 +runtime-optenv32/bzip2+32 +runtime-optenv32/libpng+32 +runtime-optenv32/x11-proto+32 +runtime-optenv32/libxau+32 +runtime-optenv32/libxdmcp+32 +runtime-optenv32/ncurses+32 +runtime-optenv32/readline+32 +runtime-optenv32/xz+32 +runtime-optenv32/libxml2+32 +runtime-optenv32/libgpg-error+32 +runtime-optenv32/libgcrypt+32 +runtime-optenv32/libxslt+32 +runtime-optenv32/libxcb+32 +runtime-optenv32/tcl+32 +runtime-optenv32/sqlite+32 +runtime-optenv32/util-linux+32 +runtime-optenv32/json-c+32 +runtime-optenv32/elfutils+32 +runtime-optenv32/libffi+32 +runtime-optenv32/pcre2+32 +runtime-optenv32/dbus+32 +runtime-optenv32/glib+32 +runtime-optenv32/libdrm+32 +runtime-optenv32/lzo+32 +runtime-optenv32/pixman+32 +runtime-optenv32/x11-lib+32 +runtime-optenv32/freetype+32 +runtime-optenv32/fontconfig+32 +runtime-optenv32/cairo+32 +runtime-optenv32/icu+32 +runtime-optenv32/harfbuzz+32 +runtime-optenv32/libunwind+32 +runtime-optenv32/libjpeg-turbo+32 +runtime-optenv32/libtiff+32 +runtime-optenv32/giflib+32 +runtime-optenv32/libid3tag+32 +runtime-optenv32/imlib2+32 +runtime-optenv32/spirv-tools+32 +runtime-optenv32/alsa-lib+32 +runtime-optenv32/sdl+32 +runtime-optenv32/at-spi2-core+32 +runtime-optenv32/shared-mime-info+32 +runtime-optenv32/gdk-pixbuf+32 +runtime-optenv32/zstd+32 +runtime-optenv32/llvm+32 +runtime-optenv32/attr+32 +runtime-optenv32/acl+32 +runtime-optenv32/eudev+32 +runtime-optenv32/libvdpau+32 +runtime-optenv32/libglvnd+32 +runtime-optenv32/spirv-llvm-translator+32 +runtime-optenv32/wayland+32 +runtime-optenv32/rustc+32 +runtime-optenv32/libva+32 +runtime-optenv32/mesa+32 +runtime-optenv32/libepoxy+32 +runtime-optenv32/libxkbcommon+32 +runtime-optenv32/fribidi+32 +runtime-optenv32/libdatrie+32 +runtime-optenv32/libthai+32 +runtime-optenv32/pango+32 +runtime-optenv32/gtk-3+32 +runtime-optenv32/libcddb+32 +runtime-optenv32/libcdio+32 +runtime-optenv32/popt+32 +runtime-optenv32/dbus-glib+32 +runtime-optenv32/libxnvctrl+32 +runtime-optenv32/nettle+32 +runtime-optenv32/gnutls+32 +runtime-optenv32/openssl+32 +runtime-optenv32/openldap+32 +runtime-optenv32/krb5+32 +runtime-optenv32/libssh2+32 +runtime-optenv32/rtmpdump+32 +runtime-optenv32/curl+32 +runtime-optenv32/v4l-utils+32 +runtime-optenv32/orc+32 +runtime-optenv32/schroedinger+32 +runtime-optenv32/lame+32 +runtime-optenv32/libmpeg2+32 +runtime-optenv32/libraw1394+32 +runtime-optenv32/libiec61883+32 +runtime-optenv32/libavc1394+32 +runtime-optenv32/lcms2+32 +runtime-optenv32/openjpeg-legacy+32 +runtime-optenv32/nasm+32 +runtime-optenv32/xvidcore+32 +runtime-optenv32/recode+32 +runtime-optenv32/enca+32 +runtime-optenv32/libcap+32 +runtime-optenv32/libva-vdpau-driver+32 +runtime-optenv32/libogg+32 +runtime-optenv32/flac+32 +runtime-optenv32/libvorbis+32 +runtime-optenv32/libsndfile+32 +runtime-optenv32/openal-soft+32 +runtime-optenv32/freealut+32 +runtime-optenv32/libmd+32 +runtime-optenv32/aalib+32 +runtime-optenv32/glu+32 +runtime-optenv32/freeglut+32 +runtime-optenv32/libwebp+32 +runtime-optenv32/game-music-emu+32 +runtime-optenv32/fftw+32 +runtime-optenv32/libofa+32 +runtime-optenv32/libmms+32 +runtime-optenv32/gdbm+32 +runtime-optenv32/libasyncns+32 +runtime-optenv32/libtool+32 +runtime-optenv32/pulseaudio+32 +runtime-optenv32/libmikmod+32 +runtime-optenv32/s2tc+32 +runtime-optenv32/mp4v2+32 +runtime-optenv32/faac+32 +runtime-optenv32/cdparanoia+32 +runtime-optenv32/gsm+32 +runtime-optenv32/libass+32 +runtime-optenv32/libbluray+32 +runtime-optenv32/libmodplug+32 +runtime-optenv32/libssh+32 +runtime-optenv32/libtheora+32 +runtime-optenv32/libvpx+32 +runtime-optenv32/x264+32 +runtime-optenv32/x265+32 +runtime-optenv32/opencore-amr+32 +runtime-optenv32/opus+32 +runtime-optenv32/speex+32 +runtime-optenv32/soxr+32 +runtime-optenv32/ffmpeg+32 +runtime-optenv32/libnl+32 +runtime-optenv32/tk+32 +runtime-optenv32/libexif+32 +runtime-optenv32/libdvdcss+32 +runtime-optenv32/libdvdread+32 +runtime-optenv32/nspr+32 +runtime-optenv32/libusb+32 +runtime-optenv32/cups+32 +runtime-optenv32/a52dec+32 +runtime-optenv32/alsa-plugins+32 +runtime-optenv32/celt+32 +runtime-optenv32/db+32 +runtime-optenv32/fluidsynth+32 +runtime-optenv32/gconf+32 +runtime-optenv32/glew+32 +runtime-optenv32/glslang+32 +runtime-optenv32/gtk-2+32 +runtime-optenv32/libaio+32 +runtime-optenv32/libbsd+32 +runtime-optenv32/libcaca+32 +runtime-optenv32/libcroco+32 +runtime-optenv32/libdca+32 +runtime-optenv32/libdv+32 +runtime-optenv32/libdvdnav+32 +runtime-optenv32/libmad+32 +runtime-optenv32/libpcap+32 +runtime-optenv32/librsvg+32 +runtime-optenv32/libshout+32 +runtime-optenv32/libsidplay+32 +runtime-optenv32/libtasn1+32 +runtime-optenv32/libusb-compat+32 +runtime-optenv32/libva-intel-driver+32 +runtime-optenv32/libvisual+32 +runtime-optenv32/nlohmann-json+32 +runtime-optenv32/vulkan-headers+32 +runtime-optenv32/mangohud+32 +runtime-optenv32/mbedtls+32 +runtime-optenv32/mjpegtools+32 +runtime-optenv32/mpg123+32 +runtime-optenv32/neon+32 +runtime-optenv32/p11-kit+32 +runtime-optenv32/nss+32 +runtime-optenv32/openssl-1.1+32 +runtime-optenv32/pcre+32 +runtime-optenv32/portaudio+32 +runtime-optenv32/proxychains-ng+32 +runtime-optenv32/sbc+32 +runtime-optenv32/sdl-ttf+32 +runtime-optenv32/smpeg+32 +runtime-optenv32/soundtouch+32 +runtime-optenv32/srtp+32 +runtime-optenv32/taglib+32 +runtime-optenv32/twolame+32 +runtime-optenv32/vulkan-loader+32 +runtime-optenv32/vkd3d+32 +runtime-optenv32/volk-meta-loader+32 +runtime-optenv32/vulkan-tools+32 +runtime-optenv32/vulkan+32 +runtime-optenv32/wavpack+32 +runtime-optenv32/wildmidi+32 +runtime-optenv32/faad2+32 +runtime-optenv32/32subsystem \ No newline at end of file From bf7577be9e9953dc890c5f71dbb91afa5ee8b2f5 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Fri, 24 Jan 2025 16:28:29 +0800 Subject: [PATCH 251/722] alsa-lib+32: update to 1.2.13 --- runtime-optenv32/alsa-lib+32/spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/alsa-lib+32/spec b/runtime-optenv32/alsa-lib+32/spec index 152db776b46..8d7a20da5bc 100644 --- a/runtime-optenv32/alsa-lib+32/spec +++ b/runtime-optenv32/alsa-lib+32/spec @@ -1,4 +1,4 @@ -VER=1.2.12 +VER=1.2.13 SRCS="tbl::https://www.alsa-project.org/files/pub/lib/alsa-lib-$VER.tar.bz2" -CHKSUMS="sha256::4868cd908627279da5a634f468701625be8cc251d84262c7e5b6a218391ad0d2" +CHKSUMS="sha256::8c4ff37553cbe89618e187e4c779f71a9bb2a8b27b91f87ed40987cc9233d8f6" CHKUPDATE="anitya::id=38" From 9c66825f6d85b04b1e1ad7b8c3ca216d221ab934 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Fri, 24 Jan 2025 17:15:46 +0800 Subject: [PATCH 252/722] gcc+32: update to 14.2.0 --- runtime-optenv32/gcc+32/spec | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/runtime-optenv32/gcc+32/spec b/runtime-optenv32/gcc+32/spec index fb8f0accbaf..d428a54e988 100644 --- a/runtime-optenv32/gcc+32/spec +++ b/runtime-optenv32/gcc+32/spec @@ -1,9 +1,8 @@ -__GCC_VER=13.2.0 +__GCC_VER=14.2.0 __GMP_VER=6.3.0 __MPC_VER=1.3.1 __MPFR_VER=4.2.1 VER=$__GCC_VER -REL=1 # Note: Use with Git snapshots. # SRCS="tbl::https://repo.aosc.io/aosc-repacks/gcc-$VER.tar.xz" # Note: Use with upstream stable releases. @@ -12,7 +11,7 @@ SRCS="tbl::https://ftp.gnu.org/gnu/gcc/gcc-$__GCC_VER/gcc-$__GCC_VER.tar.xz \ tbl::rename=gmp-$__GMP_VER.tar.xz::https://ftp.gnu.org/gnu/gmp/gmp-$__GMP_VER.tar.xz \ tbl::rename=mpc-$__MPC_VER.tar.gz::https://ftp.gnu.org/gnu/mpc/mpc-$__MPC_VER.tar.gz \ tbl::rename=mpfr-$__MPFR_VER.tar.xz::https://ftp.gnu.org/gnu/mpfr/mpfr-$__MPFR_VER.tar.xz" -CHKSUMS="sha256::e275e76442a6067341a27f04c5c6b83d8613144004c0413528863dc6b5c743da \ +CHKSUMS="sha256::a7b39bc69cbf9e25826c5a60ab26477001f7c08d85cec04bc0e29cabed6f3cc9 \ sha256::a3c2b80201b89e68616f4ad30bc66aee4927c3ce50e33929ca819d5c43538898 \ sha256::ab642492f5cf882b74aa0cb730cd410a81edcdbec895183ce930e706c1c759b8 \ sha256::277807353a6726978996945af13e52829e3abd7a9a5b7fb2793894e18f1fcbb2" From b1ab8577e0abe24e5adca6b9a38fe6bb4c5a2533 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Fri, 24 Jan 2025 17:16:48 +0800 Subject: [PATCH 253/722] gdbm+32: update to 1.24 --- runtime-optenv32/gdbm+32/spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/gdbm+32/spec b/runtime-optenv32/gdbm+32/spec index 9218cf1043b..a9e6a7924c9 100644 --- a/runtime-optenv32/gdbm+32/spec +++ b/runtime-optenv32/gdbm+32/spec @@ -1,4 +1,4 @@ -VER=1.23 +VER=1.24 SRCS="https://ftp.gnu.org/gnu/gdbm/gdbm-$VER.tar.gz" -CHKSUMS="sha256::74b1081d21fff13ae4bd7c16e5d6e504a4c26f7cde1dca0d963a484174bbcacd" +CHKSUMS="sha256::695e9827fdf763513f133910bc7e6cfdb9187943a4fec943e57449723d2b8dbf" CHKUPDATE="anitya::id=882" From 9149af12d08cd1a7d0feed056b2d91f23511641e Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Fri, 24 Jan 2025 17:17:40 +0800 Subject: [PATCH 254/722] libdvdread+32: update to 6.1.3 --- runtime-optenv32/libdvdread+32/spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/libdvdread+32/spec b/runtime-optenv32/libdvdread+32/spec index e8bc9c9a34b..76974449d82 100644 --- a/runtime-optenv32/libdvdread+32/spec +++ b/runtime-optenv32/libdvdread+32/spec @@ -1,4 +1,4 @@ -VER=6.1.1 +VER=6.1.3 SRCS="tbl::https://www.videolan.org/pub/videolan/libdvdread/$VER/libdvdread-$VER.tar.bz2" -CHKSUMS="sha256::3e357309a17c5be3731385b9eabda6b7e3fa010f46022a06f104553bf8e21796" +CHKSUMS="sha256::ce35454997a208cbe50e91232f0e73fb1ac3471965813a13b8730a8f18a15369" CHKUPDATE="anitya::id=5614" From 85ae94e895ec96d15738743be2499c139041373d Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Fri, 24 Jan 2025 17:18:34 +0800 Subject: [PATCH 255/722] libffi+32: update to 3.4.6 --- runtime-optenv32/libffi+32/spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/runtime-optenv32/libffi+32/spec b/runtime-optenv32/libffi+32/spec index 4ac5382f7d5..61a122f2197 100644 --- a/runtime-optenv32/libffi+32/spec +++ b/runtime-optenv32/libffi+32/spec @@ -1,4 +1,4 @@ -VER=3.4.4 -SRCS="git::commit=tags/v$VER::https://github.com/libffi/libffi" -CHKSUMS="SKIP" +VER=3.4.6 +SRCS="tbl::https://github.com/libffi/libffi/releases/download/v${VER}/libffi-${VER}.tar.gz" +CHKSUMS="sha256::b0dea9df23c863a7a50e825440f3ebffabd65df1497108e5d437747843895a4e" CHKUPDATE="anitya::id=1611" From 7cadddf4e73eaeec9c7d391a0965d064e92d6b65 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Fri, 24 Jan 2025 17:21:25 +0800 Subject: [PATCH 256/722] libidn+32: update to 1.42 --- runtime-optenv32/libidn+32/spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/libidn+32/spec b/runtime-optenv32/libidn+32/spec index b8b9dc2bca5..d87e6212533 100644 --- a/runtime-optenv32/libidn+32/spec +++ b/runtime-optenv32/libidn+32/spec @@ -1,4 +1,4 @@ -VER=1.41 +VER=1.42 SRCS="tbl::https://ftp.gnu.org/gnu/libidn/libidn-$VER.tar.gz" -CHKSUMS="sha256::884d706364b81abdd17bee9686d8ff2ae7431c5a14651047c68adf8b31fd8945" +CHKSUMS="sha256::d6c199dcd806e4fe279360cb4b08349a0d39560ed548ffd1ccadda8cdecb4723" CHKUPDATE="anitya::id=1639" From 005fc4e23f4a47747a6f5628dfd7a5cc130b9732 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Fri, 24 Jan 2025 17:28:36 +0800 Subject: [PATCH 257/722] libjpeg-turbo+32: update to 3.0.4 --- runtime-optenv32/libjpeg-turbo+32/spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libjpeg-turbo+32/spec b/runtime-optenv32/libjpeg-turbo+32/spec index 71a47445eb0..8cead2f5436 100644 --- a/runtime-optenv32/libjpeg-turbo+32/spec +++ b/runtime-optenv32/libjpeg-turbo+32/spec @@ -1,4 +1,4 @@ -VER=3.0.3 +VER=3.0.4 SRCS="git::commit=tags/$VER::https://github.com/libjpeg-turbo/libjpeg-turbo" CHKSUMS="SKIP" CHKUPDATE="anitya::id=1648" From a39988112b177aaa2574cf2605e64a59adf87f47 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Fri, 24 Jan 2025 17:29:44 +0800 Subject: [PATCH 258/722] libpng+32: update to 1.6.44 --- runtime-optenv32/libpng+32/spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libpng+32/spec b/runtime-optenv32/libpng+32/spec index af71f869778..ffc46137319 100644 --- a/runtime-optenv32/libpng+32/spec +++ b/runtime-optenv32/libpng+32/spec @@ -1,4 +1,4 @@ -VER=1.6.43 +VER=1.6.44 SRCS="git::commit=tags/v$VER::https://github.com/pnggroup/libpng" CHKSUMS="SKIP" CHKUPDATE="anitya::id=1705" From 8ed2a4314d4bf790d6a09fa7925256c97080848f Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Fri, 24 Jan 2025 17:32:56 +0800 Subject: [PATCH 259/722] libtool+32: update to 2.5.4 --- runtime-optenv32/libtool+32/spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/libtool+32/spec b/runtime-optenv32/libtool+32/spec index 86d015b3e18..45d7c5d99bd 100644 --- a/runtime-optenv32/libtool+32/spec +++ b/runtime-optenv32/libtool+32/spec @@ -1,4 +1,4 @@ -VER=2.4.7 +VER=2.5.4 SRCS="tbl::https://ftp.gnu.org/gnu/libtool/libtool-$VER.tar.xz" -CHKSUMS="sha256::4f7f217f057ce655ff22559ad221a0fd8ef84ad1fc5fcb6990cecc333aa1635d" +CHKSUMS="sha256::f81f5860666b0bc7d84baddefa60d1cb9fa6fceb2398cc3baca6afaa60266675" CHKUPDATE="anitya::id=1741" From 4e982864d4c26fa91edf363d6bebd40a4fd3bc2c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Fri, 24 Jan 2025 17:36:07 +0800 Subject: [PATCH 260/722] libxau+32: update to 1.0.12 --- runtime-optenv32/libxau+32/spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/libxau+32/spec b/runtime-optenv32/libxau+32/spec index 209983537bc..85ffbfffa61 100644 --- a/runtime-optenv32/libxau+32/spec +++ b/runtime-optenv32/libxau+32/spec @@ -1,4 +1,4 @@ -VER=1.0.11 +VER=1.0.12 SRCS="tbl::https://xorg.freedesktop.org/releases/individual/lib/libXau-$VER.tar.xz" -CHKSUMS="sha256::f3fa3282f5570c3f6bd620244438dbfbdd580fc80f02f549587a0f8ab329bbeb" +CHKSUMS="sha256::74d0e4dfa3d39ad8939e99bda37f5967aba528211076828464d2777d477fc0fb" CHKUPDATE="anitya::id=1765" From 1f2503393bad2d3522e506a41f12f70ada9a1039 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Fri, 24 Jan 2025 17:37:11 +0800 Subject: [PATCH 261/722] libxcb+32: update to 1.17.0 --- runtime-optenv32/libxcb+32/spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/libxcb+32/spec b/runtime-optenv32/libxcb+32/spec index b55f9ed735b..7224e7e2a49 100644 --- a/runtime-optenv32/libxcb+32/spec +++ b/runtime-optenv32/libxcb+32/spec @@ -1,4 +1,4 @@ -VER=1.16.1 +VER=1.17.0 SRCS="tbl::https://xorg.freedesktop.org/releases/individual/lib/libxcb-$VER.tar.gz" -CHKSUMS="sha256::830c58758d814213e338fd1bb454be3787a7ef2aff9b9e4b721d9adef2662536" +CHKSUMS="sha256::2c69287424c9e2128cb47ffe92171e10417041ec2963bceafb65cb3fcf8f0b85" CHKUPDATE="anitya::id=1767" From 260af3eebbab87f9f12320d5280f0e3af5086f76 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Fri, 24 Jan 2025 17:51:11 +0800 Subject: [PATCH 262/722] lm-sensors+32: new, 3.6.0 --- .../lm-sensors+32/autobuild/build | 21 ++++++ .../lm-sensors+32/autobuild/defines | 8 +++ ...c-conf.d-as-the-configuration-prefix.patch | 70 +++++++++++++++++++ ...-throw-warning-if-etc-conf.d-lm_sens.patch | 26 +++++++ .../0003-ARCHLINUX-install-sensord.patch | 25 +++++++ ...etect-Add-support-for-AMD-CPU-Family.patch | 28 ++++++++ runtime-optenv32/lm-sensors+32/spec | 5 ++ 7 files changed, 183 insertions(+) create mode 100644 runtime-optenv32/lm-sensors+32/autobuild/build create mode 100644 runtime-optenv32/lm-sensors+32/autobuild/defines create mode 100644 runtime-optenv32/lm-sensors+32/autobuild/patches/0001-ARCHLINUX-use-etc-conf.d-as-the-configuration-prefix.patch create mode 100644 runtime-optenv32/lm-sensors+32/autobuild/patches/0002-ARCHLINUX-do-not-throw-warning-if-etc-conf.d-lm_sens.patch create mode 100644 runtime-optenv32/lm-sensors+32/autobuild/patches/0003-ARCHLINUX-install-sensord.patch create mode 100644 runtime-optenv32/lm-sensors+32/autobuild/patches/0004-FEDORA-sensors-detect-Add-support-for-AMD-CPU-Family.patch create mode 100644 runtime-optenv32/lm-sensors+32/spec diff --git a/runtime-optenv32/lm-sensors+32/autobuild/build b/runtime-optenv32/lm-sensors+32/autobuild/build new file mode 100644 index 00000000000..8998df598e8 --- /dev/null +++ b/runtime-optenv32/lm-sensors+32/autobuild/build @@ -0,0 +1,21 @@ +abinfo "Configuring make parameters ..." +MAKE_OPTS=( + "DESTDIR=$PKGDIR" + 'PREFIX=/opt/32' + 'SBINDIR=/opt/32/bin' + 'LIBDIR=/opt/32/lib' + 'MANDIR=/opt/32/share/man' + 'BUILD_STATIC_LIB=0' + 'PROG_EXTRA=' + 'CC=i686-aosc-linux-gnu-gcc' +) + +abinfo "Building lm-sensors ..." +make user \ + ${MAKE_OPTS[@]} \ + CFLAGS="${CPPFLAGS} ${CFLAGS} ${LDFLAGS}" \ + EXLDFLAGS="${LDFLAGS}" + +abinfo "Installing lm-sensors ..." +make user_install \ + ${MAKE_OPTS[@]} diff --git a/runtime-optenv32/lm-sensors+32/autobuild/defines b/runtime-optenv32/lm-sensors+32/autobuild/defines new file mode 100644 index 00000000000..bba238b7336 --- /dev/null +++ b/runtime-optenv32/lm-sensors+32/autobuild/defines @@ -0,0 +1,8 @@ +PKGNAME=lm-sensors+32 +PKGSEC=utils +PKGDEP="glibc+32" +BUILDDEP="devel-base+32" +PKGDES="Collection of userspace tools for general SMBus access and hardware monitoring (32-bit x86 runtime)" + +NOLTO=1 +ABHOST=optenv32 diff --git a/runtime-optenv32/lm-sensors+32/autobuild/patches/0001-ARCHLINUX-use-etc-conf.d-as-the-configuration-prefix.patch b/runtime-optenv32/lm-sensors+32/autobuild/patches/0001-ARCHLINUX-use-etc-conf.d-as-the-configuration-prefix.patch new file mode 100644 index 00000000000..488dc4e7b4a --- /dev/null +++ b/runtime-optenv32/lm-sensors+32/autobuild/patches/0001-ARCHLINUX-use-etc-conf.d-as-the-configuration-prefix.patch @@ -0,0 +1,70 @@ +From 3a97fa37b3c8a80fbe31c4596e4f6940aea214a3 Mon Sep 17 00:00:00 2001 +From: Mingcong Bai +Date: Fri, 27 Dec 2024 14:08:08 +0800 +Subject: [PATCH 1/4] ARCHLINUX: use /etc/conf.d as the configuration prefix + +--- + prog/detect/sensors-detect | 14 +++++++------- + prog/init/lm_sensors.service | 2 +- + prog/init/sensord.service | 2 +- + 3 files changed, 9 insertions(+), 9 deletions(-) + +diff --git a/prog/detect/sensors-detect b/prog/detect/sensors-detect +index 32fd29f3..ce06a1d6 100755 +--- a/prog/detect/sensors-detect ++++ b/prog/detect/sensors-detect +@@ -7386,18 +7386,18 @@ sub write_config + } + } + +- my $have_sysconfig = -d '/etc/sysconfig'; +- printf "Do you want to \%s /etc/sysconfig/lm_sensors? (\%s): ", +- (-e '/etc/sysconfig/lm_sensors' ? 'overwrite' : 'generate'), ++ my $have_sysconfig = -d '/etc/conf.d'; ++ printf "Do you want to \%s /etc/conf.d/lm_sensors? (\%s): ", ++ (-e '/etc/conf.d/lm_sensors' ? 'overwrite' : 'generate'), + ($have_sysconfig ? 'YES/no' : 'yes/NO'); + $_ = read_answer(); + if (($have_sysconfig and not m/^\s*n/i) or m/^\s*y/i) { + unless ($have_sysconfig) { +- mkdir('/etc/sysconfig', 0777) +- or die "Sorry, can't create /etc/sysconfig ($!)"; ++ mkdir('/etc/conf.d', 0777) ++ or die "Sorry, can't create /etc/conf.d ($!)"; + } +- open(local *SYSCONFIG, ">/etc/sysconfig/lm_sensors") +- or die "Sorry, can't create /etc/sysconfig/lm_sensors ($!)"; ++ open(local *SYSCONFIG, ">/etc/conf.d/lm_sensors") ++ or die "Sorry, can't create /etc/conf.d/lm_sensors ($!)"; + print SYSCONFIG "# Generated by sensors-detect on " . scalar localtime() . "\n"; + print SYSCONFIG <<'EOT'; + # This file is sourced by /etc/init.d/lm_sensors and defines the modules to +diff --git a/prog/init/lm_sensors.service b/prog/init/lm_sensors.service +index 7d3bf808..7b012b30 100644 +--- a/prog/init/lm_sensors.service ++++ b/prog/init/lm_sensors.service +@@ -2,7 +2,7 @@ + Description=Initialize hardware monitoring sensors + + [Service] +-EnvironmentFile=/etc/sysconfig/lm_sensors ++EnvironmentFile=/etc/conf.d/lm_sensors + Type=oneshot + RemainAfterExit=yes + ExecStart=-/sbin/modprobe -qab $BUS_MODULES $HWMON_MODULES +diff --git a/prog/init/sensord.service b/prog/init/sensord.service +index 2448beeb..176ee70a 100644 +--- a/prog/init/sensord.service ++++ b/prog/init/sensord.service +@@ -3,7 +3,7 @@ Description=Log hardware monitoring data + After=lm_sensors.service + + [Service] +-EnvironmentFile=/etc/sysconfig/sensord ++EnvironmentFile=/etc/conf.d/sensord + Type=forking + PIDFile=/var/run/sensord.pid + ExecStart=/usr/sbin/sensord -i $INTERVAL -l $LOG_INTERVAL -f daemon +-- +2.47.1 + diff --git a/runtime-optenv32/lm-sensors+32/autobuild/patches/0002-ARCHLINUX-do-not-throw-warning-if-etc-conf.d-lm_sens.patch b/runtime-optenv32/lm-sensors+32/autobuild/patches/0002-ARCHLINUX-do-not-throw-warning-if-etc-conf.d-lm_sens.patch new file mode 100644 index 00000000000..9e1c88e9c73 --- /dev/null +++ b/runtime-optenv32/lm-sensors+32/autobuild/patches/0002-ARCHLINUX-do-not-throw-warning-if-etc-conf.d-lm_sens.patch @@ -0,0 +1,26 @@ +From 7226828c95c04c9a320658e8894b85c76a1a89b1 Mon Sep 17 00:00:00 2001 +From: Mingcong Bai +Date: Fri, 27 Dec 2024 14:08:36 +0800 +Subject: [PATCH 2/4] ARCHLINUX: do not throw warning if /etc/conf.d/lm_sensors + does not exist + +--- + prog/init/lm_sensors.service | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/prog/init/lm_sensors.service b/prog/init/lm_sensors.service +index 7b012b30..7aad77cd 100644 +--- a/prog/init/lm_sensors.service ++++ b/prog/init/lm_sensors.service +@@ -2,7 +2,7 @@ + Description=Initialize hardware monitoring sensors + + [Service] +-EnvironmentFile=/etc/conf.d/lm_sensors ++EnvironmentFile=-/etc/conf.d/lm_sensors + Type=oneshot + RemainAfterExit=yes + ExecStart=-/sbin/modprobe -qab $BUS_MODULES $HWMON_MODULES +-- +2.47.1 + diff --git a/runtime-optenv32/lm-sensors+32/autobuild/patches/0003-ARCHLINUX-install-sensord.patch b/runtime-optenv32/lm-sensors+32/autobuild/patches/0003-ARCHLINUX-install-sensord.patch new file mode 100644 index 00000000000..825279f20c8 --- /dev/null +++ b/runtime-optenv32/lm-sensors+32/autobuild/patches/0003-ARCHLINUX-install-sensord.patch @@ -0,0 +1,25 @@ +From ecc2df2ada1269f842d65c8cfc3750a585ff4318 Mon Sep 17 00:00:00 2001 +From: Mingcong Bai +Date: Fri, 27 Dec 2024 14:08:50 +0800 +Subject: [PATCH 3/4] ARCHLINUX: install sensord + +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index 47ffe788..0142abb2 100644 +--- a/Makefile ++++ b/Makefile +@@ -80,7 +80,7 @@ MANDIR := $(PREFIX)/man + ARCH := $(firstword $(subst -, ,$(shell $(CC) -dumpmachine))) + + # Extra non-default programs to build; e.g., sensord +-#PROG_EXTRA := sensord ++PROG_EXTRA := sensord + + # Build and install static library + BUILD_STATIC_LIB := 1 +-- +2.47.1 + diff --git a/runtime-optenv32/lm-sensors+32/autobuild/patches/0004-FEDORA-sensors-detect-Add-support-for-AMD-CPU-Family.patch b/runtime-optenv32/lm-sensors+32/autobuild/patches/0004-FEDORA-sensors-detect-Add-support-for-AMD-CPU-Family.patch new file mode 100644 index 00000000000..b478af0d88f --- /dev/null +++ b/runtime-optenv32/lm-sensors+32/autobuild/patches/0004-FEDORA-sensors-detect-Add-support-for-AMD-CPU-Family.patch @@ -0,0 +1,28 @@ +From dfd18d5f26ec39d55686af7f958d22896eab0619 Mon Sep 17 00:00:00 2001 +From: Mingcong Bai +Date: Fri, 27 Dec 2024 14:24:08 +0800 +Subject: [PATCH 4/4] FEDORA: sensors-detect: Add support for AMD CPU Family + 19h + +--- + prog/detect/sensors-detect | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/prog/detect/sensors-detect b/prog/detect/sensors-detect +index ce06a1d6..7bd66ddd 100755 +--- a/prog/detect/sensors-detect ++++ b/prog/detect/sensors-detect +@@ -2792,6 +2792,10 @@ use vars qw(@cpu_ids); + name => "AMD Family 17h thermal sensors", + driver => "k10temp", + detect => sub { amd_pci_detect('1463', '15d0', '1493', '1443') }, ++ }, { ++ name => "AMD Family 19h thermal sensors", ++ driver => "k10temp", ++ detect => sub { amd_pci_detect('1653') }, + }, { + name => "AMD Family 15h power sensors", + driver => "fam15h_power", +-- +2.47.1 + diff --git a/runtime-optenv32/lm-sensors+32/spec b/runtime-optenv32/lm-sensors+32/spec new file mode 100644 index 00000000000..ac475d66f7b --- /dev/null +++ b/runtime-optenv32/lm-sensors+32/spec @@ -0,0 +1,5 @@ +UPSTREAM_VER=3-6-0 +VER=${UPSTREAM_VER//-/.} +SRCS="git::commit=tags/V${UPSTREAM_VER}::https://github.com/lm-sensors/lm-sensors" +CHKSUMS="SKIP" +CHKUPDATE="anitya::id=1831" From 1245796119c1c2c59f676a7801b48d0a0616a708 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Fri, 24 Jan 2025 18:04:21 +0800 Subject: [PATCH 263/722] mesa+32: update to 24.3.4 - Enable more Gallium and Vulkan drivers. - Correct Vulkan ICD installation path. - Enable SSE2 SIMD support. - Enable lm-sensors HUD integration. --- runtime-optenv32/mesa+32/autobuild/defines | 12 ++++++++---- runtime-optenv32/mesa+32/spec | 6 +++--- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/runtime-optenv32/mesa+32/autobuild/defines b/runtime-optenv32/mesa+32/autobuild/defines index 99b06b46fe3..05128c7bd75 100644 --- a/runtime-optenv32/mesa+32/autobuild/defines +++ b/runtime-optenv32/mesa+32/autobuild/defines @@ -2,7 +2,7 @@ PKGNAME=mesa+32 PKGSEC=x11 PKGDEP="llvm+32 x11-lib+32 libdrm+32 expat+32 eudev+32 elfutils+32 \ libvdpau+32 libglvnd+32 libva+32 spirv-llvm-translator+32 \ - libunwind+32 wayland+32" + libunwind+32 lm-sensors+32 wayland+32" BUILDDEP="devel-base+32 glslang mako pyyaml rust-bindgen rustc+32 \ spirv-tools+32 cbindgen" PKGDES="Runtime library for OpenGL, Vulkan, OpenCL, and more (32-bit x86 runtime)" @@ -17,11 +17,12 @@ ABHOST=optenv32 USECLANG=1 +# Note: Intel Ray Tracing is only supported for x86_64. MESON_AFTER=( '-Ddri-drivers-path=/opt/32/lib/xorg/modules/dri' '-Db_ndebug=true' '-Dplatforms=x11,wayland' - '-Dvulkan-layers=device-select,overlay' + '-Dvulkan-layers=device-select,intel-nullhw,overlay' '-Degl=enabled' '-Dgallium-extra-hud=true' '-Dgallium-nine=true' @@ -39,6 +40,9 @@ MESON_AFTER=( '-Dshared-glapi=enabled' '-Dvalgrind=disabled' '-Db_lto=false' - '-Dgallium-drivers=r300,r600,radeonsi,nouveau,virgl,swrast,svga,iris,d3d12,i915,crocus' - '-Dvulkan-drivers=amd,intel' + '-Dgallium-drivers=r300,r600,radeonsi,nouveau,virgl,swrast,svga,iris,i915,crocus,zink' + '-Dvulkan-drivers=amd,intel,intel_hasvk,swrast' + '-Dsse2=true' + '-Dvulkan-icd-dir=/usr/share/vulkan/icd.d' + '-Dlmsensors=enabled' ) diff --git a/runtime-optenv32/mesa+32/spec b/runtime-optenv32/mesa+32/spec index a71b66980d7..ac4161767f1 100644 --- a/runtime-optenv32/mesa+32/spec +++ b/runtime-optenv32/mesa+32/spec @@ -1,10 +1,10 @@ -UPSTREAM_VER=24.3.2 +UPSTREAM_VER=24.3.4 DXHEADERS_VER=1.614.1 -VER=${UPSTREAM_VER}+dxheaders${DXHEADERS_VER} +VER=${UPSTREAM_VER/\-/\~}+dxheaders${DXHEADERS_VER} SRCS="tbl::https://archive.mesa3d.org/mesa-${UPSTREAM_VER}.tar.xz \ git::commit=tags/v${DXHEADERS_VER};rename=dxheaders::https://github.com/microsoft/DirectX-Headers.git" -CHKSUMS="sha256::ad9f5f3a6d2169e4786254ee6eb5062f746d11b826739291205d360f1f3ff716 \ +CHKSUMS="sha256::e641ae27191d387599219694560d221b7feaa91c900bcec46bf444218ed66025 \ SKIP" SUBDIR="mesa-${UPSTREAM_VER}" CHKUPDATE="anitya::id=1970" From 553e484f4e0a2b9a72562519ba9cb6bf1c273be6 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Fri, 24 Jan 2025 18:05:53 +0800 Subject: [PATCH 264/722] nettle+32: update to 3.10.1 --- runtime-optenv32/nettle+32/spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/nettle+32/spec b/runtime-optenv32/nettle+32/spec index 04e3ebf0bbd..b6c89e0c991 100644 --- a/runtime-optenv32/nettle+32/spec +++ b/runtime-optenv32/nettle+32/spec @@ -1,4 +1,4 @@ -VER=3.10 +VER=3.10.1 SRCS="tbl::https://ftp.gnu.org/gnu/nettle/nettle-$VER.tar.gz" -CHKSUMS="sha256::b4c518adb174e484cb4acea54118f02380c7133771e7e9beb98a0787194ee47c" +CHKSUMS="sha256::b0fcdd7fc0cdea6e80dcf1dd85ba794af0d5b4a57e26397eee3bc193272d9132" CHKUPDATE="anitya::id=2073" From 109c5ca4d384d4685005af11949e60988dbcf1eb Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Fri, 24 Jan 2025 18:12:39 +0800 Subject: [PATCH 265/722] nss+32: update to 3.107 --- runtime-optenv32/nss+32/spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/nss+32/spec b/runtime-optenv32/nss+32/spec index 042537dad82..4adafef68b3 100644 --- a/runtime-optenv32/nss+32/spec +++ b/runtime-optenv32/nss+32/spec @@ -1,4 +1,4 @@ -VER=3.105 +VER=3.107 SRCS="https://archive.mozilla.org/pub/security/nss/releases/NSS_${VER//./_}_RTM/src/nss-$VER.tar.gz" -CHKSUMS="sha256::8e8e4c8c88ca5c828b207cfaf66c6188e7f96c97cc18946d3db7da4c0d395619" +CHKSUMS="sha256::7f7e96473e38150771a615f5d40e8c41ba3a19385301ae0c525091f2fc9d6729" CHKUPDATE="anitya::id=2503" From b06cd887afdf3138a274ea2faf1ffbe1b2808d24 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Fri, 24 Jan 2025 18:14:01 +0800 Subject: [PATCH 266/722] util-linux+32: update to 2.40.2 --- runtime-optenv32/util-linux+32/spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/util-linux+32/spec b/runtime-optenv32/util-linux+32/spec index 6d2456cf222..b75ca8ff75e 100644 --- a/runtime-optenv32/util-linux+32/spec +++ b/runtime-optenv32/util-linux+32/spec @@ -1,4 +1,4 @@ -VER=2.40.1 +VER=2.40.2 SRCS="tbl::https://www.kernel.org/pub/linux/utils/util-linux/v${VER:0:4}/util-linux-$VER.tar.xz" -CHKSUMS="sha256::59e676aa53ccb44b6c39f0ffe01a8fa274891c91bef1474752fad92461def24f" +CHKSUMS="sha256::d78b37a66f5922d70edf3bdfb01a6b33d34ed3c3cafd6628203b2a2b67c8e8b3" CHKUPDATE="anitya::id=8179" From d77955ee00667c138d544b039b7115dd1af47259 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Fri, 24 Jan 2025 18:16:25 +0800 Subject: [PATCH 267/722] zlib+32: update to 2.2.3 - Switch to zlib-ng. - Use CMake build type. --- runtime-optenv32/zlib+32/autobuild/build | 14 -------------- runtime-optenv32/zlib+32/autobuild/defines | 10 +++++++++- runtime-optenv32/zlib+32/spec | 9 ++++----- 3 files changed, 13 insertions(+), 20 deletions(-) delete mode 100644 runtime-optenv32/zlib+32/autobuild/build diff --git a/runtime-optenv32/zlib+32/autobuild/build b/runtime-optenv32/zlib+32/autobuild/build deleted file mode 100644 index 59711f4acff..00000000000 --- a/runtime-optenv32/zlib+32/autobuild/build +++ /dev/null @@ -1,14 +0,0 @@ -abinfo "Configuring zlib ..." -CC=i686-aosc-linux-gnu-gcc \ -CXX=i686-aosc-linux-gnu-g++ \ -AS=i686-aosc-linux-gnu-as \ -LD=i686-aosc-linux-gnu-ld \ -AR=i686-aosc-linux-gnu-ar \ -RANLIB=i686-aosc-linux-gnu-ranlib \ - ./configure --prefix=/opt/32 - -abinfo "Building zlib ..." -make - -abinfo "Installing zlib ..." -make DESTDIR=$PKGDIR install diff --git a/runtime-optenv32/zlib+32/autobuild/defines b/runtime-optenv32/zlib+32/autobuild/defines index ea7f88ffb24..cb4b78828c9 100644 --- a/runtime-optenv32/zlib+32/autobuild/defines +++ b/runtime-optenv32/zlib+32/autobuild/defines @@ -5,6 +5,14 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32" NOLTO=1 -ABSHADOW=0 AB_FLAGS_O3=1 ABHOST=optenv32 + +CMAKE_AFTER=( + '-DBUILD_SHARED_LIBS=TRUE' + '-DZLIB_COMPAT=ON' + '-DWITH_GZFILEOP=ON' + '-DWITH_OPTIM=ON' + '-DWITH_NEW_STRATEGIES=ON' + '-DWITH_RUNTIME_CPU_DETECTION=ON' +) diff --git a/runtime-optenv32/zlib+32/spec b/runtime-optenv32/zlib+32/spec index f919e2d336b..56cf92d5e06 100644 --- a/runtime-optenv32/zlib+32/spec +++ b/runtime-optenv32/zlib+32/spec @@ -1,5 +1,4 @@ -VER=1.3.1 -REL=1 -SRCS="https://zlib.net/zlib-$VER.tar.xz" -CHKSUMS="sha256::38ef96b8dfe510d42707d9c781877914792541133e1870841463bfa73f883e32" -CHKUPDATE="anitya::id=5303" +VER=2.2.3 +SRCS="git::commit=tags/${VER}::https://github.com/zlib-ng/zlib-ng.git" +CHKSUMS="SKIP" +CHKUPDATE="anitya::id=115592" From 553a01d0f577541c83a2161718c34fd98b05c5d8 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Fri, 24 Jan 2025 18:16:40 +0800 Subject: [PATCH 268/722] rustc: update to 1.84.0 --- runtime-optenv32/rustc+32/autobuild/config.toml | 1 + runtime-optenv32/rustc+32/spec | 17 +++++++++++++++-- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/rustc+32/autobuild/config.toml b/runtime-optenv32/rustc+32/autobuild/config.toml index 2bd7b065166..06aeadfd6ef 100644 --- a/runtime-optenv32/rustc+32/autobuild/config.toml +++ b/runtime-optenv32/rustc+32/autobuild/config.toml @@ -16,6 +16,7 @@ cargo = "/usr/bin/cargo" target = [ "i686-unknown-linux-gnu" ] [rust] +download-rustc = false # Working around limited VM space on 32-bit x86. codegen-units = 1 codegen-units-std = 1 diff --git a/runtime-optenv32/rustc+32/spec b/runtime-optenv32/rustc+32/spec index 4f2cd6f1c66..79a96f81333 100644 --- a/runtime-optenv32/rustc+32/spec +++ b/runtime-optenv32/rustc+32/spec @@ -1,4 +1,17 @@ -VER=1.83.0 +VER=1.84.0 + +# Note: Uncomment this if we have the last version built and ready. SRCS="tbl::https://static.rust-lang.org/dist/rustc-${VER}-src.tar.xz" -CHKSUMS="sha256::7b11d4242dab0921a7d54758ad3fe805153c979c144625fecde11735760f97df" +CHKSUMS="sha256::bc2c1639f26814c7b17a323992f1e08c3b01fe88cdff9a27d951987d886e00b3" + +# FIXME: Using local bootstrap tarball as we missed a release - rustc needs +# to bootstrap from an adjacent release. +# +# Comment the following segment if this is not the case. +#SRCS="tbl::https://static.rust-lang.org/dist/rustc-${VER}-src.tar.x \ +# tbl::rename=rustc-bootstrap-${VER}-loongson3.tar.xz::https://repo.aosc.io/aosc-repacks/rust-loongson3/rustc-bootstrap-${VER}-loongson3.tar.xz" +#CHKSUMS="sha256::bc2c1639f26814c7b17a323992f1e08c3b01fe88cdff9a27d951987d886e00b3 \ +# sha256::c8bad5abe44f459fd7983a66337543952fea756fcfa73ddd10a869c4c753c336" + CHKUPDATE="anitya::id=7635" +SUBDIR="rustc-${VER}-src" From 3f5cb5f4a8eef2a5c4141efcd2422f2b70ef80ab Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Fri, 24 Jan 2025 18:19:05 +0800 Subject: [PATCH 269/722] 32subsystem: add lm-sensors+32 --- runtime-optenv32/32subsystem/autobuild/defines | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/runtime-optenv32/32subsystem/autobuild/defines b/runtime-optenv32/32subsystem/autobuild/defines index f315e5f724a..0d9a3653fcd 100644 --- a/runtime-optenv32/32subsystem/autobuild/defines +++ b/runtime-optenv32/32subsystem/autobuild/defines @@ -21,9 +21,9 @@ libthai+32 libtheora+32 libtiff+32 libtool+32 libunwind+32 libusb+32 libusb-compat+32 libva+32 libva-intel-driver+32 libva-vdpau-driver+32 libvdpau+32 libvisual+32 libvorbis+32 libvpx+32 libwebp+32 libxau+32 libxcb+32 libxcrypt+32 libxdmcp+32 libxkbcommon+32 libxml2+32 libxnvctrl+32 libxslt+32 -linux+api+32 llvm+32 lzo+32 mangohud+32 mbedtls+32 mesa+32 mjpegtools+32 -mp4v2+32 mpc+32 mpfr+32 mpg123+32 nasm+32 ncurses+32 neon+32 nettle+32 -nlohmann-json+32 nspr+32 nss+32 openal-soft+32 opencore-amr+32 +linux+api+32 llvm+32 lm-sensors+32 lzo+32 mangohud+32 mbedtls+32 mesa+32 +mjpegtools+32 mp4v2+32 mpc+32 mpfr+32 mpg123+32 nasm+32 ncurses+32 neon+32 +nettle+32 nlohmann-json+32 nspr+32 nss+32 openal-soft+32 opencore-amr+32 openjpeg-legacy+32 openldap+32 openssl-1.1+32 openssl+32 opus+32 orc+32 p11-kit+32 pango+32 pcre2+32 pcre+32 pixman+32 popt+32 portaudio+32 proxychains-ng+32 pulseaudio+32 readline+32 recode+32 rtmpdump+32 rustc+32 From 8613b8bb2a021974b53ae137efd211f81fdcf18e Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Fri, 24 Jan 2025 18:21:56 +0800 Subject: [PATCH 270/722] groups/optenv32: update build order --- groups/optenv32 | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/groups/optenv32 b/groups/optenv32 index b85ddc2650f..a63efc5632c 100644 --- a/groups/optenv32 +++ b/groups/optenv32 @@ -8,6 +8,7 @@ runtime-optenv32/binutils+32 runtime-optenv32/gcc+32 runtime-optenv32/devel-base+32 runtime-optenv32/glibc+32 +runtime-optenv32/lm-sensors+32 runtime-optenv32/libidn+32 runtime-optenv32/expat+32 runtime-optenv32/brotli+32 @@ -31,17 +32,17 @@ runtime-optenv32/json-c+32 runtime-optenv32/elfutils+32 runtime-optenv32/libffi+32 runtime-optenv32/pcre2+32 -runtime-optenv32/dbus+32 runtime-optenv32/glib+32 -runtime-optenv32/libdrm+32 -runtime-optenv32/lzo+32 -runtime-optenv32/pixman+32 +runtime-optenv32/dbus+32 +runtime-optenv32/icu+32 runtime-optenv32/x11-lib+32 +runtime-optenv32/harfbuzz+32 runtime-optenv32/freetype+32 runtime-optenv32/fontconfig+32 +runtime-optenv32/lzo+32 +runtime-optenv32/pixman+32 runtime-optenv32/cairo+32 -runtime-optenv32/icu+32 -runtime-optenv32/harfbuzz+32 +runtime-optenv32/libdrm+32 runtime-optenv32/libunwind+32 runtime-optenv32/libjpeg-turbo+32 runtime-optenv32/libtiff+32 @@ -64,8 +65,8 @@ runtime-optenv32/libglvnd+32 runtime-optenv32/spirv-llvm-translator+32 runtime-optenv32/wayland+32 runtime-optenv32/rustc+32 -runtime-optenv32/libva+32 runtime-optenv32/mesa+32 +runtime-optenv32/libva+32 runtime-optenv32/libepoxy+32 runtime-optenv32/libxkbcommon+32 runtime-optenv32/fribidi+32 From d536a338dd742e8f9ef8f94862f7b5e81a00747e Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Fri, 24 Jan 2025 18:22:39 +0800 Subject: [PATCH 271/722] glibc+32: update to 2.40 --- runtime-optenv32/glibc+32/spec | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/runtime-optenv32/glibc+32/spec b/runtime-optenv32/glibc+32/spec index 15abf54268d..3dc9b692ede 100644 --- a/runtime-optenv32/glibc+32/spec +++ b/runtime-optenv32/glibc+32/spec @@ -1,9 +1,8 @@ -VER=2.38 -REL=1 +VER=2.40 LOCALEGENVER=20160914 SRCS="tbl::https://ftp.gnu.org/gnu/glibc/glibc-$VER.tar.xz \ https://github.com/AOSC-Dev/locale-gen/archive/refs/tags/v$LOCALEGENVER.tar.gz" -CHKSUMS="sha256::fb82998998b2b29965467bc1b69d152e9c307d2cf301c9eafb4555b770ef3fd2 \ +CHKSUMS="sha256::19a890175e9263d748f627993de6f4b1af9cd21e03f080e4bfb3a1fac10205a2 \ sha256::230a7f526af060dbe596537fcd9baf839a4c86b8173ae6ee39c62f5eb8b76881" CHKUPDATE="anitya::id=5401" SUBDIR="glibc-$VER" From 32e09ce3b4a79d1c7d57414f16ff2301cc25308c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Fri, 24 Jan 2025 18:32:11 +0800 Subject: [PATCH 272/722] linux+api+32: update to 6.12.7 --- runtime-optenv32/linux+api+32/spec | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/runtime-optenv32/linux+api+32/spec b/runtime-optenv32/linux+api+32/spec index 763b2b4fa9e..0df896a4306 100644 --- a/runtime-optenv32/linux+api+32/spec +++ b/runtime-optenv32/linux+api+32/spec @@ -1,9 +1,9 @@ -VER=6.7.12 -REL=1 +VER=6.12.7 # RC= # Use this for RC releases. #SRCS="tbl::https://git.kernel.org/torvalds/t/linux-${VER%%.0}-rc${RC}.tar.gz" # Use this for stable releases. SRCS="tbl::https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-${VER%%.0}.tar.xz" -CHKSUMS="sha256::6c2979e3948806a0dbacba193f8453ea42c179c1eb9f6136e3c35d87e5707984" -CHKUPDATE="anitya::id=6501" +CHKSUMS="sha256::f785fb648a0e0b66a943bb3228a4b6ed62c90b985cd1ebf69da5d38e589da0cf" +# Note: linux-stable~6.12 tracks updates on the 6.12 branch (longterm). +CHKUPDATE="anitya::id=375621" From ad1a28606289bc2691fcba32ebfa44c714e19c84 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:07:24 +0800 Subject: [PATCH 273/722] glibc+32: sync patches --- ...ion-of-abort_msg_s-struct-CVE-2025-0.patch | 61 + ...buffer-overflow-in-__vsyslog_interna.patch | 181 -- ...-Add-advisory-text-for-CVE-2025-0395.patch | 43 + ...buffer-overflow-in-__vsyslog_interna.patch | 106 - ...er-overflow-in-__vsyslog_internal-CV.patch | 41 - ...N-EXT-fix-out-of-bound-writes-when-w.patch | 216 -- ...atic-PIE-condition-for-toolchain-boo.patch | 43 - ...-LoongArch-Redefine-macro-LEAF-ENTRY.patch | 62 - ...unc-support-and-add-different-versio.patch | 525 ---- ...gArch-reloc-types-101-to-108-into-el.patch | 37 - ...unc-support-for-strchr-aligned-lsx-l.patch | 703 ----- ...unc-support-for-memcpy-aligned-unali.patch | 2567 ----------------- ...unc-support-for-strnlen-aligned-lsx-.patch | 462 --- ...ifunc-support-for-strcmp-aligned-lsx.patch | 496 ---- ...func-support-for-strncmp-aligned-lsx.patch | 580 ---- ...d-minuimum-binutils-required-version.patch | 113 - ...fy-the-autoconf-check-for-static-PIE.patch | 147 - ...-support-code-for-old-linker-in-star.patch | 54 - ...17-LoongArch-Micro-optimize-LD_PCREL.patch | 42 - ...unc-support-for-rawmemchr-aligned-ls.patch | 445 --- ...unc-support-for-memchr-aligned-lsx-l.patch | 482 ---- ...d-ifunc-support-for-memrchr-lsx-lasx.patch | 414 --- ...unc-support-for-memset-aligned-unali.patch | 781 ----- ...unc-support-for-memcmp-aligned-lsx-l.patch | 943 ------ ...e-loongarch-to-LoongArch-in-comments.patch | 275 -- ...sx-lsx-support-for-_dl_runtime_profi.patch | 624 ---- ...e-deprecated-v0-with-a0-to-eliminate.patch | 26 - ...unc-support-for-strcpy-stpcpy-aligne.patch | 1096 ------- ...unc-support-for-strrchr-aligned-lsx-.patch | 667 ----- ...-to-put-magic-number-to-.rodata-sect.patch | 64 - ...scd-Stack-based-buffer-overflow-in-n.patch | 38 - ...scd-Do-not-send-missing-not-found-re.patch | 59 - ...scd-Avoid-null-pointer-crashes-after.patch | 60 - ...VE-2024-33602-nscd-netgroup-Use-two-.patch | 390 --- 34 files changed, 104 insertions(+), 12739 deletions(-) create mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0001-Fix-underallocation-of-abort_msg_s-struct-CVE-2025-0.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0001-syslog-Fix-heap-buffer-overflow-in-__vsyslog_interna.patch create mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0002-Add-advisory-text-for-CVE-2025-0395.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0002-syslog-Fix-heap-buffer-overflow-in-__vsyslog_interna.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0003-syslog-Fix-integer-overflow-in-__vsyslog_internal-CV.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0004-iconv-ISO-2022-CN-EXT-fix-out-of-bound-writes-when-w.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0005-LoongArch-Fix-static-PIE-condition-for-toolchain-boo.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0006-LoongArch-Redefine-macro-LEAF-ENTRY.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0007-Loongarch-Add-ifunc-support-and-add-different-versio.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0008-elf-Add-new-LoongArch-reloc-types-101-to-108-into-el.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0009-Loongarch-Add-ifunc-support-for-strchr-aligned-lsx-l.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0010-Loongarch-Add-ifunc-support-for-memcpy-aligned-unali.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0011-LoongArch-Add-ifunc-support-for-strnlen-aligned-lsx-.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0012-LoongArch-Add-ifunc-support-for-strcmp-aligned-lsx.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0013-LoongArch-Add-ifunc-support-for-strncmp-aligned-lsx.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0014-LoongArch-Add-minuimum-binutils-required-version.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0015-LoongArch-Simplify-the-autoconf-check-for-static-PIE.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0016-LoongArch-Remove-support-code-for-old-linker-in-star.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0017-LoongArch-Micro-optimize-LD_PCREL.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0018-LoongArch-Add-ifunc-support-for-rawmemchr-aligned-ls.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0019-LoongArch-Add-ifunc-support-for-memchr-aligned-lsx-l.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0020-LoongArch-Add-ifunc-support-for-memrchr-lsx-lasx.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0021-LoongArch-Add-ifunc-support-for-memset-aligned-unali.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0022-LoongArch-Add-ifunc-support-for-memcmp-aligned-lsx-l.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0023-LoongArch-Change-loongarch-to-LoongArch-in-comments.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0024-LoongArch-Add-lasx-lsx-support-for-_dl_runtime_profi.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0025-LoongArch-Replace-deprecated-v0-with-a0-to-eliminate.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0026-LoongArch-Add-ifunc-support-for-strcpy-stpcpy-aligne.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0027-LoongArch-Add-ifunc-support-for-strrchr-aligned-lsx-.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0028-LoongArch-Change-to-put-magic-number-to-.rodata-sect.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0029-CVE-2024-33599-nscd-Stack-based-buffer-overflow-in-n.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0030-CVE-2024-33600-nscd-Do-not-send-missing-not-found-re.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0031-CVE-2024-33600-nscd-Avoid-null-pointer-crashes-after.patch delete mode 100644 runtime-optenv32/glibc+32/autobuild/patches/0032-CVE-2024-33601-CVE-2024-33602-nscd-netgroup-Use-two-.patch diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0001-Fix-underallocation-of-abort_msg_s-struct-CVE-2025-0.patch b/runtime-optenv32/glibc+32/autobuild/patches/0001-Fix-underallocation-of-abort_msg_s-struct-CVE-2025-0.patch new file mode 100644 index 00000000000..23e6be4d49d --- /dev/null +++ b/runtime-optenv32/glibc+32/autobuild/patches/0001-Fix-underallocation-of-abort_msg_s-struct-CVE-2025-0.patch @@ -0,0 +1,61 @@ +From ed9da55880208c6cd36f915e6c9653ff07e2391a Mon Sep 17 00:00:00 2001 +From: Siddhesh Poyarekar +Date: Wed, 22 Jan 2025 08:09:23 -0500 +Subject: [PATCH 1/2] Fix underallocation of abort_msg_s struct (CVE-2025-0395) + +Include the space needed to store the length of the message itself, in +addition to the message string. This resolves BZ #32582. + +Signed-off-by: Siddhesh Poyarekar +--- + assert/assert.c | 4 +++- + sysdeps/posix/libc_fatal.c | 4 +++- + 2 files changed, 6 insertions(+), 2 deletions(-) + +diff --git a/assert/assert.c b/assert/assert.c +index c29629f5f6..b6e37d694c 100644 +--- a/assert/assert.c ++++ b/assert/assert.c +@@ -18,6 +18,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -65,7 +66,8 @@ __assert_fail_base (const char *fmt, const char *assertion, const char *file, + (void) __fxprintf (NULL, "%s", str); + (void) fflush (stderr); + +- total = (total + 1 + GLRO(dl_pagesize) - 1) & ~(GLRO(dl_pagesize) - 1); ++ total = ALIGN_UP (total + sizeof (struct abort_msg_s) + 1, ++ GLRO(dl_pagesize)); + struct abort_msg_s *buf = __mmap (NULL, total, PROT_READ | PROT_WRITE, + MAP_ANON | MAP_PRIVATE, -1, 0); + if (__glibc_likely (buf != MAP_FAILED)) +diff --git a/sysdeps/posix/libc_fatal.c b/sysdeps/posix/libc_fatal.c +index f9e3425e04..089c47b04b 100644 +--- a/sysdeps/posix/libc_fatal.c ++++ b/sysdeps/posix/libc_fatal.c +@@ -20,6 +20,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -105,7 +106,8 @@ __libc_message_impl (const char *fmt, ...) + { + WRITEV_FOR_FATAL (fd, iov, iovcnt, total); + +- total = (total + 1 + GLRO(dl_pagesize) - 1) & ~(GLRO(dl_pagesize) - 1); ++ total = ALIGN_UP (total + sizeof (struct abort_msg_s) + 1, ++ GLRO(dl_pagesize)); + struct abort_msg_s *buf = __mmap (NULL, total, + PROT_READ | PROT_WRITE, + MAP_ANON | MAP_PRIVATE, -1, 0); +-- +2.48.1 + diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0001-syslog-Fix-heap-buffer-overflow-in-__vsyslog_interna.patch b/runtime-optenv32/glibc+32/autobuild/patches/0001-syslog-Fix-heap-buffer-overflow-in-__vsyslog_interna.patch deleted file mode 100644 index 63b4da40202..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0001-syslog-Fix-heap-buffer-overflow-in-__vsyslog_interna.patch +++ /dev/null @@ -1,181 +0,0 @@ -From 81d6ce5dcc3b3781dce0c1aa74b7f7334b411a5d Mon Sep 17 00:00:00 2001 -From: Arjun Shankar -Date: Mon, 15 Jan 2024 17:44:43 +0100 -Subject: [PATCH 01/32] syslog: Fix heap buffer overflow in __vsyslog_internal - (CVE-2023-6246) - -__vsyslog_internal did not handle a case where printing a SYSLOG_HEADER -containing a long program name failed to update the required buffer -size, leading to the allocation and overflow of a too-small buffer on -the heap. This commit fixes that. It also adds a new regression test -that uses glibc.malloc.check. - -Reviewed-by: Adhemerval Zanella -Reviewed-by: Carlos O'Donell -Tested-by: Carlos O'Donell -(cherry picked from commit 6bd0e4efcc78f3c0115e5ea9739a1642807450da) ---- - misc/Makefile | 8 ++- - misc/syslog.c | 50 +++++++++++++------ - misc/tst-syslog-long-progname.c | 39 +++++++++++++++ - .../postclean.req | 0 - 4 files changed, 82 insertions(+), 15 deletions(-) - create mode 100644 misc/tst-syslog-long-progname.c - create mode 100644 misc/tst-syslog-long-progname.root/postclean.req - -diff --git a/misc/Makefile b/misc/Makefile -index fe0d49c1de..90b31952c5 100644 ---- a/misc/Makefile -+++ b/misc/Makefile -@@ -289,7 +289,10 @@ tests-special += $(objpfx)tst-error1-mem.out \ - $(objpfx)tst-allocate_once-mem.out - endif - --tests-container := tst-syslog -+tests-container := \ -+ tst-syslog \ -+ tst-syslog-long-progname \ -+ # tests-container - - CFLAGS-select.c += -fexceptions -fasynchronous-unwind-tables - CFLAGS-tsearch.c += $(uses-callbacks) -@@ -351,6 +354,9 @@ $(objpfx)tst-allocate_once-mem.out: $(objpfx)tst-allocate_once.out - $(common-objpfx)malloc/mtrace $(objpfx)tst-allocate_once.mtrace > $@; \ - $(evaluate-test) - -+tst-syslog-long-progname-ENV = GLIBC_TUNABLES=glibc.malloc.check=3 \ -+ LD_PRELOAD=libc_malloc_debug.so.0 -+ - $(objpfx)tst-select: $(librt) - $(objpfx)tst-select-time64: $(librt) - $(objpfx)tst-pselect: $(librt) -diff --git a/misc/syslog.c b/misc/syslog.c -index 1b8cb722c5..814d224a1e 100644 ---- a/misc/syslog.c -+++ b/misc/syslog.c -@@ -124,8 +124,9 @@ __vsyslog_internal (int pri, const char *fmt, va_list ap, - { - /* Try to use a static buffer as an optimization. */ - char bufs[1024]; -- char *buf = NULL; -- size_t bufsize = 0; -+ char *buf = bufs; -+ size_t bufsize; -+ - int msgoff; - int saved_errno = errno; - -@@ -177,29 +178,50 @@ __vsyslog_internal (int pri, const char *fmt, va_list ap, - #define SYSLOG_HEADER_WITHOUT_TS(__pri, __msgoff) \ - "<%d>: %n", __pri, __msgoff - -- int l; -+ int l, vl; - if (has_ts) - l = __snprintf (bufs, sizeof bufs, - SYSLOG_HEADER (pri, timestamp, &msgoff, pid)); - else - l = __snprintf (bufs, sizeof bufs, - SYSLOG_HEADER_WITHOUT_TS (pri, &msgoff)); -+ -+ char *pos; -+ size_t len; -+ - if (0 <= l && l < sizeof bufs) - { -- va_list apc; -- va_copy (apc, ap); -+ /* At this point, there is still a chance that we can print the -+ remaining part of the log into bufs and use that. */ -+ pos = bufs + l; -+ len = sizeof (bufs) - l; -+ } -+ else -+ { -+ buf = NULL; -+ /* We already know that bufs is too small to use for this log message. -+ The next vsnprintf into bufs is used only to calculate the total -+ required buffer length. We will discard bufs contents and allocate -+ an appropriately sized buffer later instead. */ -+ pos = bufs; -+ len = sizeof (bufs); -+ } - -- /* Restore errno for %m format. */ -- __set_errno (saved_errno); -+ { -+ va_list apc; -+ va_copy (apc, ap); - -- int vl = __vsnprintf_internal (bufs + l, sizeof bufs - l, fmt, apc, -- mode_flags); -- if (0 <= vl && vl < sizeof bufs - l) -- buf = bufs; -- bufsize = l + vl; -+ /* Restore errno for %m format. */ -+ __set_errno (saved_errno); - -- va_end (apc); -- } -+ vl = __vsnprintf_internal (pos, len, fmt, apc, mode_flags); -+ -+ if (!(0 <= vl && vl < len)) -+ buf = NULL; -+ -+ bufsize = l + vl; -+ va_end (apc); -+ } - - if (buf == NULL) - { -diff --git a/misc/tst-syslog-long-progname.c b/misc/tst-syslog-long-progname.c -new file mode 100644 -index 0000000000..88f37a8a00 ---- /dev/null -+++ b/misc/tst-syslog-long-progname.c -@@ -0,0 +1,39 @@ -+/* Test heap buffer overflow in syslog with long __progname (CVE-2023-6246) -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#include -+#include -+ -+extern char * __progname; -+ -+static int -+do_test (void) -+{ -+ char long_progname[2048]; -+ -+ memset (long_progname, 'X', sizeof (long_progname) - 1); -+ long_progname[sizeof (long_progname) - 1] = '\0'; -+ -+ __progname = long_progname; -+ -+ syslog (LOG_INFO, "Hello, World!"); -+ -+ return 0; -+} -+ -+#include -diff --git a/misc/tst-syslog-long-progname.root/postclean.req b/misc/tst-syslog-long-progname.root/postclean.req -new file mode 100644 -index 0000000000..e69de29bb2 --- -2.45.0 - diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0002-Add-advisory-text-for-CVE-2025-0395.patch b/runtime-optenv32/glibc+32/autobuild/patches/0002-Add-advisory-text-for-CVE-2025-0395.patch new file mode 100644 index 00000000000..1050726a9c7 --- /dev/null +++ b/runtime-optenv32/glibc+32/autobuild/patches/0002-Add-advisory-text-for-CVE-2025-0395.patch @@ -0,0 +1,43 @@ +From 6f6dbfb4e68a94516c6bdb6b12be314609365e8d Mon Sep 17 00:00:00 2001 +From: Siddhesh Poyarekar +Date: Wed, 22 Jan 2025 08:09:24 -0500 +Subject: [PATCH 2/2] Add advisory text for CVE-2025-0395 + +Signed-off-by: Siddhesh Poyarekar +--- + advisories/GLIBC-SA-2025-0001 | 23 +++++++++++++++++++++++ + 1 file changed, 23 insertions(+) + create mode 100644 advisories/GLIBC-SA-2025-0001 + +diff --git a/advisories/GLIBC-SA-2025-0001 b/advisories/GLIBC-SA-2025-0001 +new file mode 100644 +index 0000000000..4624c06469 +--- /dev/null ++++ b/advisories/GLIBC-SA-2025-0001 +@@ -0,0 +1,23 @@ ++assert: Buffer overflow when printing assertion failure message ++ ++When the assert() function fails, it does not allocate enough space for the ++assertion failure message string and size information, which may lead to a ++buffer overflow if the message string size aligns to page size. ++ ++This bug can be triggered when an assertion in a program fails. The assertion ++failure message typically includes, in addition to the invariant assertion ++string and function name, the name of the program. If the name of the failing ++program is user controlled, for example on a local system, this could allow an ++attacker to control the assertion failure to trigger this buffer overflow. ++ ++The only viable vector for exploitation of this bug is local, if a setuid ++program exists that has an existing bug that results in an assertion failure. ++No such program has been discovered at the time of publishing this advisory, ++but the presence of custom setuid programs, although strongly discouraged as a ++security practice, cannot be discounted. ++ ++CVE-Id: CVE-2025-0395 ++Public-Date: 2025-01-22 ++Vulnerable-Commit: f8a3b5bf8fa1d0c43d2458e03cc109a04fdef194 (2.13-175) ++Fix-Commit: 168edf9cb20474a95e3fdf85daf03e57a14d4c91 (2.41) ++Reported-By: Qualys Security Advisory +-- +2.48.1 + diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0002-syslog-Fix-heap-buffer-overflow-in-__vsyslog_interna.patch b/runtime-optenv32/glibc+32/autobuild/patches/0002-syslog-Fix-heap-buffer-overflow-in-__vsyslog_interna.patch deleted file mode 100644 index 78c9827ca3c..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0002-syslog-Fix-heap-buffer-overflow-in-__vsyslog_interna.patch +++ /dev/null @@ -1,106 +0,0 @@ -From c0833afa2b1288cf9e66ff776c17fb604c36f2c5 Mon Sep 17 00:00:00 2001 -From: Arjun Shankar -Date: Mon, 15 Jan 2024 17:44:44 +0100 -Subject: [PATCH 02/32] syslog: Fix heap buffer overflow in __vsyslog_internal - (CVE-2023-6779) - -__vsyslog_internal used the return value of snprintf/vsnprintf to -calculate buffer sizes for memory allocation. If these functions (for -any reason) failed and returned -1, the resulting buffer would be too -small to hold output. This commit fixes that. - -All snprintf/vsnprintf calls are checked for negative return values and -the function silently returns upon encountering them. - -Reviewed-by: Carlos O'Donell -(cherry picked from commit 7e5a0c286da33159d47d0122007aac016f3e02cd) ---- - misc/syslog.c | 39 ++++++++++++++++++++++++++++----------- - 1 file changed, 28 insertions(+), 11 deletions(-) - -diff --git a/misc/syslog.c b/misc/syslog.c -index 814d224a1e..53440e47ad 100644 ---- a/misc/syslog.c -+++ b/misc/syslog.c -@@ -185,11 +185,13 @@ __vsyslog_internal (int pri, const char *fmt, va_list ap, - else - l = __snprintf (bufs, sizeof bufs, - SYSLOG_HEADER_WITHOUT_TS (pri, &msgoff)); -+ if (l < 0) -+ goto out; - - char *pos; - size_t len; - -- if (0 <= l && l < sizeof bufs) -+ if (l < sizeof bufs) - { - /* At this point, there is still a chance that we can print the - remaining part of the log into bufs and use that. */ -@@ -215,12 +217,15 @@ __vsyslog_internal (int pri, const char *fmt, va_list ap, - __set_errno (saved_errno); - - vl = __vsnprintf_internal (pos, len, fmt, apc, mode_flags); -+ va_end (apc); -+ -+ if (vl < 0) -+ goto out; - -- if (!(0 <= vl && vl < len)) -+ if (vl >= len) - buf = NULL; - - bufsize = l + vl; -- va_end (apc); - } - - if (buf == NULL) -@@ -231,25 +236,37 @@ __vsyslog_internal (int pri, const char *fmt, va_list ap, - /* Tell the cancellation handler to free this buffer. */ - clarg.buf = buf; - -+ int cl; - if (has_ts) -- __snprintf (buf, l + 1, -- SYSLOG_HEADER (pri, timestamp, &msgoff, pid)); -+ cl = __snprintf (buf, l + 1, -+ SYSLOG_HEADER (pri, timestamp, &msgoff, pid)); - else -- __snprintf (buf, l + 1, -- SYSLOG_HEADER_WITHOUT_TS (pri, &msgoff)); -+ cl = __snprintf (buf, l + 1, -+ SYSLOG_HEADER_WITHOUT_TS (pri, &msgoff)); -+ if (cl != l) -+ goto out; - - va_list apc; - va_copy (apc, ap); -- __vsnprintf_internal (buf + l, bufsize - l + 1, fmt, apc, -- mode_flags); -+ cl = __vsnprintf_internal (buf + l, bufsize - l + 1, fmt, apc, -+ mode_flags); - va_end (apc); -+ -+ if (cl != vl) -+ goto out; - } - else - { -+ int bl; - /* Nothing much to do but emit an error message. */ -- bufsize = __snprintf (bufs, sizeof bufs, -- "out of memory[%d]", __getpid ()); -+ bl = __snprintf (bufs, sizeof bufs, -+ "out of memory[%d]", __getpid ()); -+ if (bl < 0 || bl >= sizeof bufs) -+ goto out; -+ -+ bufsize = bl; - buf = bufs; -+ msgoff = 0; - } - } - --- -2.45.0 - diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0003-syslog-Fix-integer-overflow-in-__vsyslog_internal-CV.patch b/runtime-optenv32/glibc+32/autobuild/patches/0003-syslog-Fix-integer-overflow-in-__vsyslog_internal-CV.patch deleted file mode 100644 index ab9bf9fa644..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0003-syslog-Fix-integer-overflow-in-__vsyslog_internal-CV.patch +++ /dev/null @@ -1,41 +0,0 @@ -From 370100a59b9ed651f731ac09a0af1090aa48cadd Mon Sep 17 00:00:00 2001 -From: Arjun Shankar -Date: Mon, 15 Jan 2024 17:44:45 +0100 -Subject: [PATCH 03/32] syslog: Fix integer overflow in __vsyslog_internal - (CVE-2023-6780) - -__vsyslog_internal calculated a buffer size by adding two integers, but -did not first check if the addition would overflow. This commit fixes -that. - -Reviewed-by: Carlos O'Donell -Tested-by: Carlos O'Donell -(cherry picked from commit ddf542da94caf97ff43cc2875c88749880b7259b) ---- - misc/syslog.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/misc/syslog.c b/misc/syslog.c -index 53440e47ad..4af87f54fd 100644 ---- a/misc/syslog.c -+++ b/misc/syslog.c -@@ -41,6 +41,7 @@ static char sccsid[] = "@(#)syslog.c 8.4 (Berkeley) 3/18/94"; - #include - #include - #include -+#include - - static int LogType = SOCK_DGRAM; /* type of socket connection */ - static int LogFile = -1; /* fd for log */ -@@ -219,7 +220,7 @@ __vsyslog_internal (int pri, const char *fmt, va_list ap, - vl = __vsnprintf_internal (pos, len, fmt, apc, mode_flags); - va_end (apc); - -- if (vl < 0) -+ if (vl < 0 || vl >= INT_MAX - l) - goto out; - - if (vl >= len) --- -2.45.0 - diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0004-iconv-ISO-2022-CN-EXT-fix-out-of-bound-writes-when-w.patch b/runtime-optenv32/glibc+32/autobuild/patches/0004-iconv-ISO-2022-CN-EXT-fix-out-of-bound-writes-when-w.patch deleted file mode 100644 index 9784157d2c8..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0004-iconv-ISO-2022-CN-EXT-fix-out-of-bound-writes-when-w.patch +++ /dev/null @@ -1,216 +0,0 @@ -From 2927b21ceeb0759f9f28af68b4f3ff86e38e8c48 Mon Sep 17 00:00:00 2001 -From: Charles Fol -Date: Thu, 28 Mar 2024 12:25:38 -0300 -Subject: [PATCH 04/32] iconv: ISO-2022-CN-EXT: fix out-of-bound writes when - writing escape sequence (CVE-2024-2961) - -ISO-2022-CN-EXT uses escape sequences to indicate character set changes -(as specified by RFC 1922). While the SOdesignation has the expected -bounds checks, neither SS2designation nor SS3designation have its; -allowing a write overflow of 1, 2, or 3 bytes with fixed values: -'$+I', '$+J', '$+K', '$+L', '$+M', or '$*H'. - -Checked on aarch64-linux-gnu. - -Co-authored-by: Adhemerval Zanella -Reviewed-by: Carlos O'Donell -Tested-by: Carlos O'Donell - -(cherry picked from commit f9dc609e06b1136bb0408be9605ce7973a767ada) ---- - iconvdata/Makefile | 5 +- - iconvdata/iso-2022-cn-ext.c | 12 +++ - iconvdata/tst-iconv-iso-2022-cn-ext.c | 128 ++++++++++++++++++++++++++ - 3 files changed, 144 insertions(+), 1 deletion(-) - create mode 100644 iconvdata/tst-iconv-iso-2022-cn-ext.c - -diff --git a/iconvdata/Makefile b/iconvdata/Makefile -index dd5cafab21..075098dce8 100644 ---- a/iconvdata/Makefile -+++ b/iconvdata/Makefile -@@ -75,7 +75,8 @@ ifeq (yes,$(build-shared)) - tests = bug-iconv1 bug-iconv2 tst-loading tst-e2big tst-iconv4 bug-iconv4 \ - tst-iconv6 bug-iconv5 bug-iconv6 tst-iconv7 bug-iconv8 bug-iconv9 \ - bug-iconv10 bug-iconv11 bug-iconv12 tst-iconv-big5-hkscs-to-2ucs4 \ -- bug-iconv13 bug-iconv14 bug-iconv15 -+ bug-iconv13 bug-iconv14 bug-iconv15 \ -+ tst-iconv-iso-2022-cn-ext - ifeq ($(have-thread-library),yes) - tests += bug-iconv3 - endif -@@ -330,6 +331,8 @@ $(objpfx)bug-iconv14.out: $(addprefix $(objpfx), $(gconv-modules)) \ - $(addprefix $(objpfx),$(modules.so)) - $(objpfx)bug-iconv15.out: $(addprefix $(objpfx), $(gconv-modules)) \ - $(addprefix $(objpfx),$(modules.so)) -+$(objpfx)tst-iconv-iso-2022-cn-ext.out: $(addprefix $(objpfx), $(gconv-modules)) \ -+ $(addprefix $(objpfx),$(modules.so)) - - $(objpfx)iconv-test.out: run-iconv-test.sh \ - $(addprefix $(objpfx), $(gconv-modules)) \ -diff --git a/iconvdata/iso-2022-cn-ext.c b/iconvdata/iso-2022-cn-ext.c -index 36727f0865..9bb02238a3 100644 ---- a/iconvdata/iso-2022-cn-ext.c -+++ b/iconvdata/iso-2022-cn-ext.c -@@ -574,6 +574,12 @@ DIAG_IGNORE_Os_NEEDS_COMMENT (5, "-Wmaybe-uninitialized"); - { \ - const char *escseq; \ - \ -+ if (outptr + 4 > outend) \ -+ { \ -+ result = __GCONV_FULL_OUTPUT; \ -+ break; \ -+ } \ -+ \ - assert (used == CNS11643_2_set); /* XXX */ \ - escseq = "*H"; \ - *outptr++ = ESC; \ -@@ -587,6 +593,12 @@ DIAG_IGNORE_Os_NEEDS_COMMENT (5, "-Wmaybe-uninitialized"); - { \ - const char *escseq; \ - \ -+ if (outptr + 4 > outend) \ -+ { \ -+ result = __GCONV_FULL_OUTPUT; \ -+ break; \ -+ } \ -+ \ - assert ((used >> 5) >= 3 && (used >> 5) <= 7); \ - escseq = "+I+J+K+L+M" + ((used >> 5) - 3) * 2; \ - *outptr++ = ESC; \ -diff --git a/iconvdata/tst-iconv-iso-2022-cn-ext.c b/iconvdata/tst-iconv-iso-2022-cn-ext.c -new file mode 100644 -index 0000000000..96a8765fd5 ---- /dev/null -+++ b/iconvdata/tst-iconv-iso-2022-cn-ext.c -@@ -0,0 +1,128 @@ -+/* Verify ISO-2022-CN-EXT does not write out of the bounds. -+ Copyright (C) 2024 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#include -+#include -+ -+#include -+#include -+#include -+ -+#include -+#include -+#include -+ -+/* The test sets up a two memory page buffer with the second page marked -+ PROT_NONE to trigger a fault if the conversion writes beyond the exact -+ expected amount. Then we carry out various conversions and precisely -+ place the start of the output buffer in order to trigger a SIGSEGV if the -+ process writes anywhere between 1 and page sized bytes more (only one -+ PROT_NONE page is setup as a canary) than expected. These tests exercise -+ all three of the cases in ISO-2022-CN-EXT where the converter must switch -+ character sets and may run out of buffer space while doing the -+ operation. */ -+ -+static int -+do_test (void) -+{ -+ iconv_t cd = iconv_open ("ISO-2022-CN-EXT", "UTF-8"); -+ TEST_VERIFY_EXIT (cd != (iconv_t) -1); -+ -+ char *ntf; -+ size_t ntfsize; -+ char *outbufbase; -+ { -+ int pgz = getpagesize (); -+ TEST_VERIFY_EXIT (pgz > 0); -+ ntfsize = 2 * pgz; -+ -+ ntf = xmmap (NULL, ntfsize, PROT_READ | PROT_WRITE, MAP_PRIVATE -+ | MAP_ANONYMOUS, -1); -+ xmprotect (ntf + pgz, pgz, PROT_NONE); -+ -+ outbufbase = ntf + pgz; -+ } -+ -+ /* Check if SOdesignation escape sequence does not trigger an OOB write. */ -+ { -+ char inbuf[] = "\xe4\xba\xa4\xe6\x8d\xa2"; -+ -+ for (int i = 0; i < 9; i++) -+ { -+ char *inp = inbuf; -+ size_t inleft = sizeof (inbuf) - 1; -+ -+ char *outp = outbufbase - i; -+ size_t outleft = i; -+ -+ TEST_VERIFY_EXIT (iconv (cd, &inp, &inleft, &outp, &outleft) -+ == (size_t) -1); -+ TEST_COMPARE (errno, E2BIG); -+ -+ TEST_VERIFY_EXIT (iconv (cd, NULL, NULL, NULL, NULL) == 0); -+ } -+ } -+ -+ /* Same as before for SS2designation. */ -+ { -+ char inbuf[] = "㴽 \xe3\xb4\xbd"; -+ -+ for (int i = 0; i < 14; i++) -+ { -+ char *inp = inbuf; -+ size_t inleft = sizeof (inbuf) - 1; -+ -+ char *outp = outbufbase - i; -+ size_t outleft = i; -+ -+ TEST_VERIFY_EXIT (iconv (cd, &inp, &inleft, &outp, &outleft) -+ == (size_t) -1); -+ TEST_COMPARE (errno, E2BIG); -+ -+ TEST_VERIFY_EXIT (iconv (cd, NULL, NULL, NULL, NULL) == 0); -+ } -+ } -+ -+ /* Same as before for SS3designation. */ -+ { -+ char inbuf[] = "劄 \xe5\x8a\x84"; -+ -+ for (int i = 0; i < 14; i++) -+ { -+ char *inp = inbuf; -+ size_t inleft = sizeof (inbuf) - 1; -+ -+ char *outp = outbufbase - i; -+ size_t outleft = i; -+ -+ TEST_VERIFY_EXIT (iconv (cd, &inp, &inleft, &outp, &outleft) -+ == (size_t) -1); -+ TEST_COMPARE (errno, E2BIG); -+ -+ TEST_VERIFY_EXIT (iconv (cd, NULL, NULL, NULL, NULL) == 0); -+ } -+ } -+ -+ TEST_VERIFY_EXIT (iconv_close (cd) != -1); -+ -+ xmunmap (ntf, ntfsize); -+ -+ return 0; -+} -+ -+#include --- -2.45.0 - diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0005-LoongArch-Fix-static-PIE-condition-for-toolchain-boo.patch b/runtime-optenv32/glibc+32/autobuild/patches/0005-LoongArch-Fix-static-PIE-condition-for-toolchain-boo.patch deleted file mode 100644 index 1602b1a0e1d..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0005-LoongArch-Fix-static-PIE-condition-for-toolchain-boo.patch +++ /dev/null @@ -1,43 +0,0 @@ -From e84ee613546c9ccf17a9e17fc5bb1288056e1d47 Mon Sep 17 00:00:00 2001 -From: Yang Yujie -Date: Thu, 3 Aug 2023 16:35:24 +0800 -Subject: [PATCH 05/32] LoongArch: Fix static PIE condition for toolchain - bootstrapping. - -This patch allows the static PIE startfile rcrt1.o to be built -without requiring libgcc_s.so from GCC, which depends on libc -in the first place. ---- - sysdeps/loongarch/configure | 2 +- - sysdeps/loongarch/configure.ac | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/sysdeps/loongarch/configure b/sysdeps/loongarch/configure -index 7f1dabbc37..5843c7cf90 100644 ---- a/sysdeps/loongarch/configure -+++ b/sysdeps/loongarch/configure -@@ -55,7 +55,7 @@ EOF - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; } \ -- && { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -shared -fPIC -o conftest2.so conftest2.S' -+ && { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -shared -nostdlib -fPIC -o conftest2.so conftest2.S' - { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 - (eval $ac_try) 2>&5 - ac_status=$? -diff --git a/sysdeps/loongarch/configure.ac b/sysdeps/loongarch/configure.ac -index 39efccfd8f..ba89d8346d 100644 ---- a/sysdeps/loongarch/configure.ac -+++ b/sysdeps/loongarch/configure.ac -@@ -42,7 +42,7 @@ EOF - if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -static-pie -nostdlib -fPIE -o conftest1 conftest1.S]) \ - && AC_TRY_COMMAND([LC_ALL=C $READELF -Wr conftest1 | grep -q R_LARCH_RELATIVE]) \ - && ! AC_TRY_COMMAND([LC_ALL=C $READELF -Wl conftest1 | grep -q INTERP]) \ -- && AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -shared -fPIC -o conftest2.so conftest2.S]) \ -+ && AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -shared -nostdlib -fPIC -o conftest2.so conftest2.S]) \ - && AC_TRY_COMMAND([LC_ALL=C $READELF -Wr conftest2.so | grep -q 'R_LARCH_JUMP_SLOT.*external_func']) - then - libc_cv_static_pie_on_loongarch=yes --- -2.45.0 - diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0006-LoongArch-Redefine-macro-LEAF-ENTRY.patch b/runtime-optenv32/glibc+32/autobuild/patches/0006-LoongArch-Redefine-macro-LEAF-ENTRY.patch deleted file mode 100644 index 561f7603c5f..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0006-LoongArch-Redefine-macro-LEAF-ENTRY.patch +++ /dev/null @@ -1,62 +0,0 @@ -From b869e1d3bbfb9b7b990a3fd9bafd8b0132e2f8d7 Mon Sep 17 00:00:00 2001 -From: dengjianbo -Date: Tue, 8 Aug 2023 14:15:42 +0800 -Subject: [PATCH 06/32] LoongArch: Redefine macro LEAF/ENTRY. - -The following usage of macro LEAF/ENTRY are all feasible: -1. LEAF(fcn) -- the align value of fcn is .align 3(default value) -2. LEAF(fcn, 6) -- the align value of fcn is .align 6 ---- - sysdeps/loongarch/sys/asm.h | 36 ++++++++++++++++++++++++++---------- - 1 file changed, 26 insertions(+), 10 deletions(-) - -diff --git a/sysdeps/loongarch/sys/asm.h b/sysdeps/loongarch/sys/asm.h -index d1a279b8fb..c5eb8afa09 100644 ---- a/sysdeps/loongarch/sys/asm.h -+++ b/sysdeps/loongarch/sys/asm.h -@@ -39,16 +39,32 @@ - #define FREG_L fld.d - #define FREG_S fst.d - --/* Declare leaf routine. */ --#define LEAF(symbol) \ -- .text; \ -- .globl symbol; \ -- .align 3; \ -- cfi_startproc; \ -- .type symbol, @function; \ -- symbol: -- --#define ENTRY(symbol) LEAF (symbol) -+/* Declare leaf routine. -+ The usage of macro LEAF/ENTRY is as follows: -+ 1. LEAF(fcn) -- the align value of fcn is .align 3 (default value) -+ 2. LEAF(fcn, 6) -- the align value of fcn is .align 6 -+*/ -+#define LEAF_IMPL(symbol, aln, ...) \ -+ .text; \ -+ .globl symbol; \ -+ .align aln; \ -+ .type symbol, @function; \ -+symbol: \ -+ cfi_startproc; -+ -+ -+#define LEAF(...) LEAF_IMPL(__VA_ARGS__, 3) -+#define ENTRY(...) LEAF(__VA_ARGS__) -+ -+#define LEAF_NO_ALIGN(symbol) \ -+ .text; \ -+ .globl symbol; \ -+ .type symbol, @function; \ -+symbol: \ -+ cfi_startproc; -+ -+#define ENTRY_NO_ALIGN(symbol) LEAF_NO_ALIGN(symbol) -+ - - /* Mark end of function. */ - #undef END --- -2.45.0 - diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0007-Loongarch-Add-ifunc-support-and-add-different-versio.patch b/runtime-optenv32/glibc+32/autobuild/patches/0007-Loongarch-Add-ifunc-support-and-add-different-versio.patch deleted file mode 100644 index 59192e4edb1..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0007-Loongarch-Add-ifunc-support-and-add-different-versio.patch +++ /dev/null @@ -1,525 +0,0 @@ -From 1703d159f05e947abd4cc8d802bf3c0d169b7311 Mon Sep 17 00:00:00 2001 -From: dengjianbo -Date: Tue, 8 Aug 2023 14:15:44 +0800 -Subject: [PATCH 07/32] Loongarch: Add ifunc support and add different versions - of strlen - -strlen-lasx is implemeted by LASX simd instructions(256bit) -strlen-lsx is implemeted by LSX simd instructions(128bit) -strlen-align is implemented by LA basic instructions and never use unaligned memory acess ---- - sysdeps/loongarch/lp64/multiarch/Makefile | 7 ++ - .../lp64/multiarch/ifunc-impl-list.c | 41 +++++++ - .../loongarch/lp64/multiarch/ifunc-strlen.h | 40 +++++++ - .../loongarch/lp64/multiarch/strlen-aligned.S | 100 ++++++++++++++++++ - .../loongarch/lp64/multiarch/strlen-lasx.S | 63 +++++++++++ - sysdeps/loongarch/lp64/multiarch/strlen-lsx.S | 71 +++++++++++++ - sysdeps/loongarch/lp64/multiarch/strlen.c | 37 +++++++ - sysdeps/loongarch/sys/regdef.h | 57 ++++++++++ - .../unix/sysv/linux/loongarch/cpu-features.h | 2 + - 9 files changed, 418 insertions(+) - create mode 100644 sysdeps/loongarch/lp64/multiarch/Makefile - create mode 100644 sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c - create mode 100644 sysdeps/loongarch/lp64/multiarch/ifunc-strlen.h - create mode 100644 sysdeps/loongarch/lp64/multiarch/strlen-aligned.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/strlen-lasx.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/strlen-lsx.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/strlen.c - -diff --git a/sysdeps/loongarch/lp64/multiarch/Makefile b/sysdeps/loongarch/lp64/multiarch/Makefile -new file mode 100644 -index 0000000000..76c506c966 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/Makefile -@@ -0,0 +1,7 @@ -+ifeq ($(subdir),string) -+sysdep_routines += \ -+ strlen-aligned \ -+ strlen-lsx \ -+ strlen-lasx \ -+# sysdep_routines -+endif -diff --git a/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c b/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -new file mode 100644 -index 0000000000..1a2a576fcd ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -@@ -0,0 +1,41 @@ -+/* Enumerate available IFUNC implementations of a function LoongArch64 version. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#include -+#include -+#include -+#include -+#include -+#include -+ -+size_t -+__libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array, -+ size_t max) -+{ -+ -+ size_t i = max; -+ -+ IFUNC_IMPL (i, name, strlen, -+#if !defined __loongarch_soft_float -+ IFUNC_IMPL_ADD (array, i, strlen, SUPPORT_LASX, __strlen_lasx) -+ IFUNC_IMPL_ADD (array, i, strlen, SUPPORT_LSX, __strlen_lsx) -+#endif -+ IFUNC_IMPL_ADD (array, i, strlen, 1, __strlen_aligned) -+ ) -+ return i; -+} -diff --git a/sysdeps/loongarch/lp64/multiarch/ifunc-strlen.h b/sysdeps/loongarch/lp64/multiarch/ifunc-strlen.h -new file mode 100644 -index 0000000000..6258bb76c3 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/ifunc-strlen.h -@@ -0,0 +1,40 @@ -+/* Common definition for strlen ifunc selections. -+ All versions must be listed in ifunc-impl-list.c. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#include -+#include -+ -+#if !defined __loongarch_soft_float -+extern __typeof (REDIRECT_NAME) OPTIMIZE (lasx) attribute_hidden; -+extern __typeof (REDIRECT_NAME) OPTIMIZE (lsx) attribute_hidden; -+#endif -+extern __typeof (REDIRECT_NAME) OPTIMIZE (aligned) attribute_hidden; -+ -+static inline void * -+IFUNC_SELECTOR (void) -+{ -+#if !defined __loongarch_soft_float -+ if (SUPPORT_LASX) -+ return OPTIMIZE (lasx); -+ else if (SUPPORT_LSX) -+ return OPTIMIZE (lsx); -+ else -+#endif -+ return OPTIMIZE (aligned); -+} -diff --git a/sysdeps/loongarch/lp64/multiarch/strlen-aligned.S b/sysdeps/loongarch/lp64/multiarch/strlen-aligned.S -new file mode 100644 -index 0000000000..e9e1d2fc04 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/strlen-aligned.S -@@ -0,0 +1,100 @@ -+/* Optimized strlen implementation using basic Loongarch instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) -+# define STRLEN __strlen_aligned -+#else -+# define STRLEN strlen -+#endif -+ -+LEAF(STRLEN, 6) -+ move a1, a0 -+ bstrins.d a0, zero, 2, 0 -+ lu12i.w a2, 0x01010 -+ li.w t0, -1 -+ -+ ld.d t2, a0, 0 -+ andi t1, a1, 0x7 -+ ori a2, a2, 0x101 -+ slli.d t1, t1, 3 -+ -+ bstrins.d a2, a2, 63, 32 -+ sll.d t1, t0, t1 -+ slli.d t3, a2, 7 -+ nor a3, zero, t3 -+ -+ orn t2, t2, t1 -+ sub.d t0, t2, a2 -+ nor t1, t2, a3 -+ and t0, t0, t1 -+ -+ -+ bnez t0, L(count_pos) -+ addi.d a0, a0, 8 -+L(loop_16_7bit): -+ ld.d t2, a0, 0 -+ sub.d t1, t2, a2 -+ -+ and t0, t1, t3 -+ bnez t0, L(more_check) -+ ld.d t2, a0, 8 -+ sub.d t1, t2, a2 -+ -+ and t0, t1, t3 -+ addi.d a0, a0, 16 -+ beqz t0, L(loop_16_7bit) -+ addi.d a0, a0, -8 -+ -+L(more_check): -+ nor t0, t2, a3 -+ and t0, t1, t0 -+ bnez t0, L(count_pos) -+ addi.d a0, a0, 8 -+ -+ -+L(loop_16_8bit): -+ ld.d t2, a0, 0 -+ sub.d t1, t2, a2 -+ nor t0, t2, a3 -+ and t0, t0, t1 -+ -+ bnez t0, L(count_pos) -+ ld.d t2, a0, 8 -+ addi.d a0, a0, 16 -+ sub.d t1, t2, a2 -+ -+ nor t0, t2, a3 -+ and t0, t0, t1 -+ beqz t0, L(loop_16_8bit) -+ addi.d a0, a0, -8 -+ -+L(count_pos): -+ ctz.d t1, t0 -+ sub.d a0, a0, a1 -+ srli.d t1, t1, 3 -+ add.d a0, a0, t1 -+ -+ jr ra -+END(STRLEN) -+ -+libc_hidden_builtin_def (STRLEN) -diff --git a/sysdeps/loongarch/lp64/multiarch/strlen-lasx.S b/sysdeps/loongarch/lp64/multiarch/strlen-lasx.S -new file mode 100644 -index 0000000000..258c47cea0 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/strlen-lasx.S -@@ -0,0 +1,63 @@ -+/* Optimized strlen implementation using loongarch LASX SIMD instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) && !defined __loongarch_soft_float -+ -+# define STRLEN __strlen_lasx -+ -+LEAF(STRLEN, 6) -+ move a1, a0 -+ bstrins.d a0, zero, 4, 0 -+ li.d t1, -1 -+ xvld xr0, a0, 0 -+ -+ xvmsknz.b xr0, xr0 -+ xvpickve.w xr1, xr0, 4 -+ vilvl.h vr0, vr1, vr0 -+ movfr2gr.s t0, fa0 # sign extend -+ -+ sra.w t0, t0, a1 -+ beq t0, t1, L(loop) -+ cto.w a0, t0 -+ jr ra -+ -+L(loop): -+ xvld xr0, a0, 32 -+ addi.d a0, a0, 32 -+ xvsetanyeqz.b fcc0, xr0 -+ bceqz fcc0, L(loop) -+ -+ -+ xvmsknz.b xr0, xr0 -+ sub.d a0, a0, a1 -+ xvpickve.w xr1, xr0, 4 -+ vilvl.h vr0, vr1, vr0 -+ -+ movfr2gr.s t0, fa0 -+ cto.w t0, t0 -+ add.d a0, a0, t0 -+ jr ra -+END(STRLEN) -+ -+libc_hidden_builtin_def (STRLEN) -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/strlen-lsx.S b/sysdeps/loongarch/lp64/multiarch/strlen-lsx.S -new file mode 100644 -index 0000000000..b194355e7b ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/strlen-lsx.S -@@ -0,0 +1,71 @@ -+/* Optimized strlen implementation using Loongarch LSX SIMD instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) && !defined __loongarch_soft_float -+ -+# define STRLEN __strlen_lsx -+ -+LEAF(STRLEN, 6) -+ move a1, a0 -+ bstrins.d a0, zero, 4, 0 -+ vld vr0, a0, 0 -+ vld vr1, a0, 16 -+ -+ li.d t1, -1 -+ vmsknz.b vr0, vr0 -+ vmsknz.b vr1, vr1 -+ vilvl.h vr0, vr1, vr0 -+ -+ movfr2gr.s t0, fa0 -+ sra.w t0, t0, a1 -+ beq t0, t1, L(loop) -+ cto.w a0, t0 -+ -+ jr ra -+ nop -+ nop -+ nop -+ -+ -+L(loop): -+ vld vr0, a0, 32 -+ vld vr1, a0, 48 -+ addi.d a0, a0, 32 -+ vmin.bu vr2, vr0, vr1 -+ -+ vsetanyeqz.b fcc0, vr2 -+ bceqz fcc0, L(loop) -+ vmsknz.b vr0, vr0 -+ vmsknz.b vr1, vr1 -+ -+ vilvl.h vr0, vr1, vr0 -+ sub.d a0, a0, a1 -+ movfr2gr.s t0, fa0 -+ cto.w t0, t0 -+ -+ add.d a0, a0, t0 -+ jr ra -+END(STRLEN) -+ -+libc_hidden_builtin_def (STRLEN) -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/strlen.c b/sysdeps/loongarch/lp64/multiarch/strlen.c -new file mode 100644 -index 0000000000..381c2daa86 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/strlen.c -@@ -0,0 +1,37 @@ -+/* Multiple versions of strlen. -+ All versions must be listed in ifunc-impl-list.c. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+/* Define multiple versions only for the definition in libc. */ -+ -+#if IS_IN (libc) -+# define strlen __redirect_strlen -+# include -+# undef strlen -+ -+# define SYMBOL_NAME strlen -+# include "ifunc-strlen.h" -+ -+libc_ifunc_redirected (__redirect_strlen, strlen, IFUNC_SELECTOR ()); -+ -+# ifdef SHARED -+__hidden_ver1 (strlen, __GI_strlen, __redirect_strlen) -+ __attribute__ ((visibility ("hidden"))) __attribute_copy__ (strlen); -+# endif -+ -+#endif -diff --git a/sysdeps/loongarch/sys/regdef.h b/sysdeps/loongarch/sys/regdef.h -index 5100f36d24..524d2e3277 100644 ---- a/sysdeps/loongarch/sys/regdef.h -+++ b/sysdeps/loongarch/sys/regdef.h -@@ -89,6 +89,14 @@ - #define fs5 $f29 - #define fs6 $f30 - #define fs7 $f31 -+#define fcc0 $fcc0 -+#define fcc1 $fcc1 -+#define fcc2 $fcc2 -+#define fcc3 $fcc3 -+#define fcc4 $fcc4 -+#define fcc5 $fcc5 -+#define fcc6 $fcc6 -+#define fcc7 $fcc7 - - #define vr0 $vr0 - #define vr1 $vr1 -@@ -98,6 +106,30 @@ - #define vr5 $vr5 - #define vr6 $vr6 - #define vr7 $vr7 -+#define vr8 $vr8 -+#define vr9 $vr9 -+#define vr10 $vr10 -+#define vr11 $vr11 -+#define vr12 $vr12 -+#define vr13 $vr13 -+#define vr14 $vr14 -+#define vr15 $vr15 -+#define vr16 $vr16 -+#define vr17 $vr17 -+#define vr18 $vr18 -+#define vr19 $vr19 -+#define vr20 $vr20 -+#define vr21 $vr21 -+#define vr22 $vr22 -+#define vr23 $vr23 -+#define vr24 $vr24 -+#define vr25 $vr25 -+#define vr26 $vr26 -+#define vr27 $vr27 -+#define vr28 $vr28 -+#define vr29 $vr29 -+#define vr30 $vr30 -+#define vr31 $vr31 - - #define xr0 $xr0 - #define xr1 $xr1 -@@ -107,5 +139,30 @@ - #define xr5 $xr5 - #define xr6 $xr6 - #define xr7 $xr7 -+#define xr7 $xr7 -+#define xr8 $xr8 -+#define xr9 $xr9 -+#define xr10 $xr10 -+#define xr11 $xr11 -+#define xr12 $xr12 -+#define xr13 $xr13 -+#define xr14 $xr14 -+#define xr15 $xr15 -+#define xr16 $xr16 -+#define xr17 $xr17 -+#define xr18 $xr18 -+#define xr19 $xr19 -+#define xr20 $xr20 -+#define xr21 $xr21 -+#define xr22 $xr22 -+#define xr23 $xr23 -+#define xr24 $xr24 -+#define xr25 $xr25 -+#define xr26 $xr26 -+#define xr27 $xr27 -+#define xr28 $xr28 -+#define xr29 $xr29 -+#define xr30 $xr30 -+#define xr31 $xr31 - - #endif /* _SYS_REGDEF_H */ -diff --git a/sysdeps/unix/sysv/linux/loongarch/cpu-features.h b/sysdeps/unix/sysv/linux/loongarch/cpu-features.h -index e371e13b15..d1a280a5ee 100644 ---- a/sysdeps/unix/sysv/linux/loongarch/cpu-features.h -+++ b/sysdeps/unix/sysv/linux/loongarch/cpu-features.h -@@ -25,5 +25,7 @@ - #define SUPPORT_LSX (GLRO (dl_hwcap) & HWCAP_LOONGARCH_LSX) - #define SUPPORT_LASX (GLRO (dl_hwcap) & HWCAP_LOONGARCH_LASX) - -+#define INIT_ARCH() -+ - #endif /* _CPU_FEATURES_LOONGARCH64_H */ - --- -2.45.0 - diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0008-elf-Add-new-LoongArch-reloc-types-101-to-108-into-el.patch b/runtime-optenv32/glibc+32/autobuild/patches/0008-elf-Add-new-LoongArch-reloc-types-101-to-108-into-el.patch deleted file mode 100644 index 35cd6a32802..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0008-elf-Add-new-LoongArch-reloc-types-101-to-108-into-el.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 9d3e5d8e5fd35acb4cb9c97ce03d8527077dfe27 Mon Sep 17 00:00:00 2001 -From: Xi Ruoyao -Date: Wed, 9 Aug 2023 19:12:54 +0800 -Subject: [PATCH 08/32] elf: Add new LoongArch reloc types (101 to 108) into - elf.h - -These reloc types are generated by GNU assembler >= 2.41 for relaxation -support. - -Link: https://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=57a930e3 -Signed-off-by: Xi Ruoyao ---- - elf/elf.h | 8 ++++++++ - 1 file changed, 8 insertions(+) - -diff --git a/elf/elf.h b/elf/elf.h -index 89fc8021e9..d623bdeb6f 100644 ---- a/elf/elf.h -+++ b/elf/elf.h -@@ -4205,6 +4205,14 @@ enum - #define R_LARCH_TLS_GD_HI20 98 - #define R_LARCH_32_PCREL 99 - #define R_LARCH_RELAX 100 -+#define R_LARCH_DELETE 101 -+#define R_LARCH_ALIGN 102 -+#define R_LARCH_PCREL20_S2 103 -+#define R_LARCH_CFA 104 -+#define R_LARCH_ADD6 105 -+#define R_LARCH_SUB6 106 -+#define R_LARCH_ADD_ULEB128 107 -+#define R_LARCH_SUB_ULEB128 108 - - /* ARC specific declarations. */ - --- -2.45.0 - diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0009-Loongarch-Add-ifunc-support-for-strchr-aligned-lsx-l.patch b/runtime-optenv32/glibc+32/autobuild/patches/0009-Loongarch-Add-ifunc-support-for-strchr-aligned-lsx-l.patch deleted file mode 100644 index 508aaab2dd9..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0009-Loongarch-Add-ifunc-support-for-strchr-aligned-lsx-l.patch +++ /dev/null @@ -1,703 +0,0 @@ -From 93ae8dc8a6fe495b08f6c75a6dfcfde20f22e0b0 Mon Sep 17 00:00:00 2001 -From: dengjianbo -Date: Tue, 15 Aug 2023 09:08:11 +0800 -Subject: [PATCH 09/32] Loongarch: Add ifunc support for strchr{aligned, lsx, - lasx} and strchrnul{aligned, lsx, lasx} - -These implementations improve the time to run strchr{nul} -microbenchmark in glibc as below: -strchr-lasx reduces the runtime about 50%-83% -strchr-lsx reduces the runtime about 30%-67% -strchr-aligned reduces the runtime about 10%-20% -strchrnul-lasx reduces the runtime about 50%-83% -strchrnul-lsx reduces the runtime about 36%-65% -strchrnul-aligned reduces the runtime about 6%-10% ---- - sysdeps/loongarch/lp64/multiarch/Makefile | 6 ++ - .../lp64/multiarch/ifunc-impl-list.c | 16 +++ - .../loongarch/lp64/multiarch/ifunc-strchr.h | 41 ++++++++ - .../lp64/multiarch/ifunc-strchrnul.h | 41 ++++++++ - .../loongarch/lp64/multiarch/strchr-aligned.S | 99 +++++++++++++++++++ - .../loongarch/lp64/multiarch/strchr-lasx.S | 91 +++++++++++++++++ - sysdeps/loongarch/lp64/multiarch/strchr-lsx.S | 73 ++++++++++++++ - sysdeps/loongarch/lp64/multiarch/strchr.c | 36 +++++++ - .../lp64/multiarch/strchrnul-aligned.S | 95 ++++++++++++++++++ - .../loongarch/lp64/multiarch/strchrnul-lasx.S | 22 +++++ - .../loongarch/lp64/multiarch/strchrnul-lsx.S | 22 +++++ - sysdeps/loongarch/lp64/multiarch/strchrnul.c | 39 ++++++++ - 12 files changed, 581 insertions(+) - create mode 100644 sysdeps/loongarch/lp64/multiarch/ifunc-strchr.h - create mode 100644 sysdeps/loongarch/lp64/multiarch/ifunc-strchrnul.h - create mode 100644 sysdeps/loongarch/lp64/multiarch/strchr-aligned.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/strchr-lasx.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/strchr-lsx.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/strchr.c - create mode 100644 sysdeps/loongarch/lp64/multiarch/strchrnul-aligned.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/strchrnul-lasx.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/strchrnul-lsx.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/strchrnul.c - -diff --git a/sysdeps/loongarch/lp64/multiarch/Makefile b/sysdeps/loongarch/lp64/multiarch/Makefile -index 76c506c966..110a8c5ca3 100644 ---- a/sysdeps/loongarch/lp64/multiarch/Makefile -+++ b/sysdeps/loongarch/lp64/multiarch/Makefile -@@ -3,5 +3,11 @@ sysdep_routines += \ - strlen-aligned \ - strlen-lsx \ - strlen-lasx \ -+ strchr-aligned \ -+ strchr-lsx \ -+ strchr-lasx \ -+ strchrnul-aligned \ -+ strchrnul-lsx \ -+ strchrnul-lasx \ - # sysdep_routines - endif -diff --git a/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c b/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -index 1a2a576fcd..c7164b45e6 100644 ---- a/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -+++ b/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -@@ -37,5 +37,21 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array, - #endif - IFUNC_IMPL_ADD (array, i, strlen, 1, __strlen_aligned) - ) -+ -+ IFUNC_IMPL (i, name, strchr, -+#if !defined __loongarch_soft_float -+ IFUNC_IMPL_ADD (array, i, strchr, SUPPORT_LASX, __strchr_lasx) -+ IFUNC_IMPL_ADD (array, i, strchr, SUPPORT_LSX, __strchr_lsx) -+#endif -+ IFUNC_IMPL_ADD (array, i, strchr, 1, __strchr_aligned) -+ ) -+ -+ IFUNC_IMPL (i, name, strchrnul, -+#if !defined __loongarch_soft_float -+ IFUNC_IMPL_ADD (array, i, strchrnul, SUPPORT_LASX, __strchrnul_lasx) -+ IFUNC_IMPL_ADD (array, i, strchrnul, SUPPORT_LSX, __strchrnul_lsx) -+#endif -+ IFUNC_IMPL_ADD (array, i, strchrnul, 1, __strchrnul_aligned) -+ ) - return i; - } -diff --git a/sysdeps/loongarch/lp64/multiarch/ifunc-strchr.h b/sysdeps/loongarch/lp64/multiarch/ifunc-strchr.h -new file mode 100644 -index 0000000000..4494db79a5 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/ifunc-strchr.h -@@ -0,0 +1,41 @@ -+/* Common definition for strchr ifunc selections. -+ All versions must be listed in ifunc-impl-list.c. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#include -+#include -+ -+#if !defined __loongarch_soft_float -+extern __typeof (REDIRECT_NAME) OPTIMIZE (lasx) attribute_hidden; -+extern __typeof (REDIRECT_NAME) OPTIMIZE (lsx) attribute_hidden; -+#endif -+ -+extern __typeof (REDIRECT_NAME) OPTIMIZE (aligned) attribute_hidden; -+ -+static inline void * -+IFUNC_SELECTOR (void) -+{ -+#if !defined __loongarch_soft_float -+ if (SUPPORT_LASX) -+ return OPTIMIZE (lasx); -+ else if (SUPPORT_LSX) -+ return OPTIMIZE (lsx); -+ else -+#endif -+ return OPTIMIZE (aligned); -+} -diff --git a/sysdeps/loongarch/lp64/multiarch/ifunc-strchrnul.h b/sysdeps/loongarch/lp64/multiarch/ifunc-strchrnul.h -new file mode 100644 -index 0000000000..8a92512064 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/ifunc-strchrnul.h -@@ -0,0 +1,41 @@ -+/* Common definition for strchrnul ifunc selections. -+ All versions must be listed in ifunc-impl-list.c. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#include -+#include -+ -+#if !defined __loongarch_soft_float -+extern __typeof (REDIRECT_NAME) OPTIMIZE (lasx) attribute_hidden; -+extern __typeof (REDIRECT_NAME) OPTIMIZE (lsx) attribute_hidden; -+#endif -+ -+extern __typeof (REDIRECT_NAME) OPTIMIZE (aligned) attribute_hidden; -+ -+static inline void * -+IFUNC_SELECTOR (void) -+{ -+#if !defined __loongarch_soft_float -+ if (SUPPORT_LASX) -+ return OPTIMIZE (lasx); -+ else if (SUPPORT_LSX) -+ return OPTIMIZE (lsx); -+ else -+#endif -+ return OPTIMIZE (aligned); -+} -diff --git a/sysdeps/loongarch/lp64/multiarch/strchr-aligned.S b/sysdeps/loongarch/lp64/multiarch/strchr-aligned.S -new file mode 100644 -index 0000000000..5fb01806e4 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/strchr-aligned.S -@@ -0,0 +1,99 @@ -+/* Optimized strchr implementation using basic Loongarch instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) -+# define STRCHR_NAME __strchr_aligned -+#else -+# define STRCHR_NAME strchr -+#endif -+ -+LEAF(STRCHR_NAME, 6) -+ slli.d t1, a0, 3 -+ bstrins.d a0, zero, 2, 0 -+ lu12i.w a2, 0x01010 -+ ld.d t2, a0, 0 -+ -+ ori a2, a2, 0x101 -+ andi a1, a1, 0xff -+ bstrins.d a2, a2, 63, 32 -+ li.w t0, -1 -+ -+ mul.d a1, a1, a2 -+ sll.d t0, t0, t1 -+ slli.d a3, a2, 7 -+ orn t2, t2, t0 -+ -+ sll.d t3, a1, t1 -+ xor t4, t2, t3 -+ sub.d a4, t2, a2 -+ sub.d a5, t4, a2 -+ -+ -+ andn a4, a4, t2 -+ andn a5, a5, t4 -+ or t0, a4, a5 -+ and t0, t0, a3 -+ -+ bnez t0, L(end) -+ addi.d a0, a0, 8 -+L(loop): -+ ld.d t4, a0, 0 -+ xor t2, t4, a1 -+ -+ sub.d a4, t4, a2 -+ sub.d a5, t2, a2 -+ andn a4, a4, t4 -+ andn a5, a5, t2 -+ -+ or t0, a4, a5 -+ and t0, t0, a3 -+ bnez t0, L(end) -+ ld.d t4, a0, 8 -+ -+ -+ addi.d a0, a0, 16 -+ xor t2, t4, a1 -+ sub.d a4, t4, a2 -+ sub.d a5, t2, a2 -+ -+ andn a4, a4, t4 -+ andn a5, a5, t2 -+ or t0, a4, a5 -+ and t0, t0, a3 -+ -+ beqz t0, L(loop) -+ addi.d a0, a0, -8 -+L(end): -+ and t0, a5, a3 -+ and t1, a4, a3 -+ -+ ctz.d t0, t0 -+ ctz.d t1, t1 -+ srli.w t2, t0, 3 -+ sltu t3, t1, t0 -+ -+ -+ add.d a0, a0, t2 -+ masknez a0, a0, t3 -+ jr ra -+END(STRCHR_NAME) -diff --git a/sysdeps/loongarch/lp64/multiarch/strchr-lasx.S b/sysdeps/loongarch/lp64/multiarch/strchr-lasx.S -new file mode 100644 -index 0000000000..254402daa5 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/strchr-lasx.S -@@ -0,0 +1,91 @@ -+/* Optimized strchr implementation using loongarch LASX SIMD instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) && !defined __loongarch_soft_float -+ -+#ifndef AS_STRCHRNUL -+# define STRCHR __strchr_lasx -+#endif -+ -+LEAF(STRCHR, 6) -+ andi t1, a0, 0x1f -+ bstrins.d a0, zero, 4, 0 -+ xvld xr0, a0, 0 -+ li.d t2, -1 -+ -+ xvreplgr2vr.b xr1, a1 -+ sll.d t1, t2, t1 -+ xvxor.v xr2, xr0, xr1 -+ xvmin.bu xr0, xr0, xr2 -+ -+ xvmsknz.b xr0, xr0 -+ xvpickve.w xr3, xr0, 4 -+ vilvl.h vr0, vr3, vr0 -+ movfr2gr.s t0, fa0 -+ -+ orn t0, t0, t1 -+ bne t0, t2, L(end) -+ addi.d a0, a0, 32 -+ nop -+ -+ -+L(loop): -+ xvld xr0, a0, 0 -+ xvxor.v xr2, xr0, xr1 -+ xvmin.bu xr0, xr0, xr2 -+ xvsetanyeqz.b fcc0, xr0 -+ -+ bcnez fcc0, L(loop_end) -+ xvld xr0, a0, 32 -+ addi.d a0, a0, 64 -+ xvxor.v xr2, xr0, xr1 -+ -+ xvmin.bu xr0, xr0, xr2 -+ xvsetanyeqz.b fcc0, xr0 -+ bceqz fcc0, L(loop) -+ addi.d a0, a0, -32 -+ -+L(loop_end): -+ xvmsknz.b xr0, xr0 -+ xvpickve.w xr1, xr0, 4 -+ vilvl.h vr0, vr1, vr0 -+ movfr2gr.s t0, fa0 -+ -+ -+L(end): -+ cto.w t0, t0 -+ add.d a0, a0, t0 -+#ifndef AS_STRCHRNUL -+ vreplgr2vr.b vr0, t0 -+ xvpermi.q xr3, xr2, 1 -+ -+ vshuf.b vr0, vr3, vr2, vr0 -+ vpickve2gr.bu t0, vr0, 0 -+ masknez a0, a0, t0 -+#endif -+ jr ra -+ -+END(STRCHR) -+ -+libc_hidden_builtin_def(STRCHR) -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/strchr-lsx.S b/sysdeps/loongarch/lp64/multiarch/strchr-lsx.S -new file mode 100644 -index 0000000000..dae98b0a55 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/strchr-lsx.S -@@ -0,0 +1,73 @@ -+/* Optimized strlen implementation using loongarch LSX SIMD instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) && !defined __loongarch_soft_float -+ -+#ifndef AS_STRCHRNUL -+# define STRCHR __strchr_lsx -+#endif -+ -+LEAF(STRCHR, 6) -+ andi t1, a0, 0xf -+ bstrins.d a0, zero, 3, 0 -+ vld vr0, a0, 0 -+ li.d t2, -1 -+ -+ vreplgr2vr.b vr1, a1 -+ sll.d t3, t2, t1 -+ vxor.v vr2, vr0, vr1 -+ vmin.bu vr0, vr0, vr2 -+ -+ vmsknz.b vr0, vr0 -+ movfr2gr.s t0, fa0 -+ ext.w.h t0, t0 -+ orn t0, t0, t3 -+ -+ beq t0, t2, L(loop) -+L(found): -+ cto.w t0, t0 -+ add.d a0, a0, t0 -+#ifndef AS_STRCHRNUL -+ vreplve.b vr2, vr2, t0 -+ vpickve2gr.bu t1, vr2, 0 -+ masknez a0, a0, t1 -+#endif -+ jr ra -+ -+ -+L(loop): -+ vld vr0, a0, 16 -+ addi.d a0, a0, 16 -+ vxor.v vr2, vr0, vr1 -+ vmin.bu vr0, vr0, vr2 -+ -+ vsetanyeqz.b fcc0, vr0 -+ bceqz fcc0, L(loop) -+ vmsknz.b vr0, vr0 -+ movfr2gr.s t0, fa0 -+ -+ b L(found) -+END(STRCHR) -+ -+libc_hidden_builtin_def (STRCHR) -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/strchr.c b/sysdeps/loongarch/lp64/multiarch/strchr.c -new file mode 100644 -index 0000000000..404e97bded ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/strchr.c -@@ -0,0 +1,36 @@ -+/* Multiple versions of strchr. -+ All versions must be listed in ifunc-impl-list.c. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+/* Define multiple versions only for the definition in libc. */ -+#if IS_IN (libc) -+# define strchr __redirect_strchr -+# include -+# undef strchr -+ -+# define SYMBOL_NAME strchr -+# include "ifunc-strchr.h" -+ -+libc_ifunc_redirected (__redirect_strchr, strchr, IFUNC_SELECTOR ()); -+weak_alias(strchr, index) -+# ifdef SHARED -+__hidden_ver1 (strchr, __GI_strchr, __redirect_strchr) -+ __attribute__ ((visibility ("hidden"))) __attribute_copy__ (strchr); -+# endif -+ -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/strchrnul-aligned.S b/sysdeps/loongarch/lp64/multiarch/strchrnul-aligned.S -new file mode 100644 -index 0000000000..1c01a0232d ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/strchrnul-aligned.S -@@ -0,0 +1,95 @@ -+/* Optimized strchrnul implementation using basic Loongarch instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) -+# define STRCHRNUL_NAME __strchrnul_aligned -+#else -+# define STRCHRNUL_NAME __strchrnul -+#endif -+ -+LEAF(STRCHRNUL_NAME, 6) -+ slli.d t1, a0, 3 -+ bstrins.d a0, zero, 2, 0 -+ lu12i.w a2, 0x01010 -+ ld.d t2, a0, 0 -+ -+ ori a2, a2, 0x101 -+ andi a1, a1, 0xff -+ bstrins.d a2, a2, 63, 32 -+ li.w t0, -1 -+ -+ mul.d a1, a1, a2 -+ sll.d t0, t0, t1 -+ slli.d a3, a2, 7 -+ orn t2, t2, t0 -+ -+ sll.d t3, a1, t1 -+ xor t4, t2, t3 -+ sub.d a4, t2, a2 -+ sub.d a5, t4, a2 -+ -+ -+ andn a4, a4, t2 -+ andn a5, a5, t4 -+ or t0, a4, a5 -+ and t0, t0, a3 -+ -+ bnez t0, L(end) -+ addi.d a0, a0, 8 -+L(loop): -+ ld.d t4, a0, 0 -+ xor t2, t4, a1 -+ -+ sub.d a4, t4, a2 -+ sub.d a5, t2, a2 -+ andn a4, a4, t4 -+ andn a5, a5, t2 -+ -+ or t0, a4, a5 -+ and t0, t0, a3 -+ bnez t0, L(end) -+ ld.d t4, a0, 8 -+ -+ -+ addi.d a0, a0, 16 -+ xor t2, t4, a1 -+ sub.d a4, t4, a2 -+ sub.d a5, t2, a2 -+ -+ andn a4, a4, t4 -+ andn a5, a5, t2 -+ or t0, a4, a5 -+ and t0, t0, a3 -+ -+ beqz t0, L(loop) -+ addi.d a0, a0, -8 -+L(end): -+ ctz.d t0, t0 -+ srli.w t0, t0, 3 -+ -+ -+ add.d a0, a0, t0 -+ jr ra -+END(STRCHRNUL_NAME) -+ -+libc_hidden_builtin_def (STRCHRNUL_NAME) -diff --git a/sysdeps/loongarch/lp64/multiarch/strchrnul-lasx.S b/sysdeps/loongarch/lp64/multiarch/strchrnul-lasx.S -new file mode 100644 -index 0000000000..d45495e48f ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/strchrnul-lasx.S -@@ -0,0 +1,22 @@ -+/* Optimized strchrnul implementation using loongarch LASX SIMD instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#define STRCHR __strchrnul_lasx -+#define AS_STRCHRNUL -+#include "strchr-lasx.S" -diff --git a/sysdeps/loongarch/lp64/multiarch/strchrnul-lsx.S b/sysdeps/loongarch/lp64/multiarch/strchrnul-lsx.S -new file mode 100644 -index 0000000000..07d793ae5f ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/strchrnul-lsx.S -@@ -0,0 +1,22 @@ -+/* Optimized strchrnul implementation using loongarch LSX SIMD instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#define STRCHR __strchrnul_lsx -+#define AS_STRCHRNUL -+#include "strchr-lsx.S" -diff --git a/sysdeps/loongarch/lp64/multiarch/strchrnul.c b/sysdeps/loongarch/lp64/multiarch/strchrnul.c -new file mode 100644 -index 0000000000..f3b8296ee8 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/strchrnul.c -@@ -0,0 +1,39 @@ -+/* Multiple versions of strchrnul. -+ All versions must be listed in ifunc-impl-list.c. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+/* Define multiple versions only for the definition in libc. */ -+ -+#if IS_IN (libc) -+# define strchrnul __redirect_strchrnul -+# define __strchrnul __redirect___strchrnul -+# include -+# undef __strchrnul -+# undef strchrnul -+ -+# define SYMBOL_NAME strchrnul -+# include "ifunc-strchrnul.h" -+ -+libc_ifunc_redirected (__redirect_strchrnul, __strchrnul, -+ IFUNC_SELECTOR ()); -+weak_alias (__strchrnul, strchrnul) -+# ifdef SHARED -+__hidden_ver1 (__strchrnul, __GI___strchrnul, __redirect_strchrnul) -+ __attribute__((visibility ("hidden"))) __attribute_copy__ (strchrnul); -+# endif -+#endif --- -2.45.0 - diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0010-Loongarch-Add-ifunc-support-for-memcpy-aligned-unali.patch b/runtime-optenv32/glibc+32/autobuild/patches/0010-Loongarch-Add-ifunc-support-for-memcpy-aligned-unali.patch deleted file mode 100644 index cbb8ddd3b80..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0010-Loongarch-Add-ifunc-support-for-memcpy-aligned-unali.patch +++ /dev/null @@ -1,2567 +0,0 @@ -From 4a3fede857bedf3261190d7fe912ec27642fc15c Mon Sep 17 00:00:00 2001 -From: dengjianbo -Date: Tue, 15 Aug 2023 09:11:53 +0800 -Subject: [PATCH 10/32] Loongarch: Add ifunc support for memcpy{aligned, - unaligned, lsx, lasx} and memmove{aligned, unaligned, lsx, lasx} - -These implementations improve the time to copy data in the glibc -microbenchmark as below: -memcpy-lasx reduces the runtime about 8%-76% -memcpy-lsx reduces the runtime about 8%-72% -memcpy-unaligned reduces the runtime of unaligned data copying up to 40% -memcpy-aligned reduece the runtime of unaligned data copying up to 25% -memmove-lasx reduces the runtime about 20%-73% -memmove-lsx reduces the runtime about 50% -memmove-unaligned reduces the runtime of unaligned data moving up to 40% -memmove-aligned reduces the runtime of unaligned data moving up to 25% ---- - sysdeps/loongarch/lp64/multiarch/Makefile | 5 + - .../lp64/multiarch/ifunc-impl-list.c | 19 + - sysdeps/loongarch/lp64/multiarch/ifunc-lasx.h | 45 + - .../loongarch/lp64/multiarch/memcpy-aligned.S | 783 ++++++++++++++++++ - .../loongarch/lp64/multiarch/memcpy-lasx.S | 20 + - sysdeps/loongarch/lp64/multiarch/memcpy-lsx.S | 20 + - .../lp64/multiarch/memcpy-unaligned.S | 247 ++++++ - sysdeps/loongarch/lp64/multiarch/memcpy.c | 37 + - .../lp64/multiarch/memmove-aligned.S | 20 + - .../loongarch/lp64/multiarch/memmove-lasx.S | 287 +++++++ - .../loongarch/lp64/multiarch/memmove-lsx.S | 534 ++++++++++++ - .../lp64/multiarch/memmove-unaligned.S | 380 +++++++++ - sysdeps/loongarch/lp64/multiarch/memmove.c | 38 + - 13 files changed, 2435 insertions(+) - create mode 100644 sysdeps/loongarch/lp64/multiarch/ifunc-lasx.h - create mode 100644 sysdeps/loongarch/lp64/multiarch/memcpy-aligned.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/memcpy-lasx.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/memcpy-lsx.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/memcpy-unaligned.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/memcpy.c - create mode 100644 sysdeps/loongarch/lp64/multiarch/memmove-aligned.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/memmove-lasx.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/memmove-lsx.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/memmove-unaligned.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/memmove.c - -diff --git a/sysdeps/loongarch/lp64/multiarch/Makefile b/sysdeps/loongarch/lp64/multiarch/Makefile -index 110a8c5ca3..afa5104174 100644 ---- a/sysdeps/loongarch/lp64/multiarch/Makefile -+++ b/sysdeps/loongarch/lp64/multiarch/Makefile -@@ -9,5 +9,10 @@ sysdep_routines += \ - strchrnul-aligned \ - strchrnul-lsx \ - strchrnul-lasx \ -+ memcpy-aligned \ -+ memcpy-unaligned \ -+ memmove-unaligned \ -+ memmove-lsx \ -+ memmove-lasx \ - # sysdep_routines - endif -diff --git a/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c b/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -index c7164b45e6..25eb96b061 100644 ---- a/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -+++ b/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -@@ -53,5 +53,24 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array, - #endif - IFUNC_IMPL_ADD (array, i, strchrnul, 1, __strchrnul_aligned) - ) -+ -+ IFUNC_IMPL (i, name, memcpy, -+#if !defined __loongarch_soft_float -+ IFUNC_IMPL_ADD (array, i, memcpy, SUPPORT_LASX, __memcpy_lasx) -+ IFUNC_IMPL_ADD (array, i, memcpy, SUPPORT_LSX, __memcpy_lsx) -+#endif -+ IFUNC_IMPL_ADD (array, i, memcpy, SUPPORT_UAL, __memcpy_unaligned) -+ IFUNC_IMPL_ADD (array, i, memcpy, 1, __memcpy_aligned) -+ ) -+ -+ IFUNC_IMPL (i, name, memmove, -+#if !defined __loongarch_soft_float -+ IFUNC_IMPL_ADD (array, i, memmove, SUPPORT_LASX, __memmove_lasx) -+ IFUNC_IMPL_ADD (array, i, memmove, SUPPORT_LSX, __memmove_lsx) -+#endif -+ IFUNC_IMPL_ADD (array, i, memmove, SUPPORT_UAL, __memmove_unaligned) -+ IFUNC_IMPL_ADD (array, i, memmove, 1, __memmove_aligned) -+ ) -+ - return i; - } -diff --git a/sysdeps/loongarch/lp64/multiarch/ifunc-lasx.h b/sysdeps/loongarch/lp64/multiarch/ifunc-lasx.h -new file mode 100644 -index 0000000000..3be67da611 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/ifunc-lasx.h -@@ -0,0 +1,45 @@ -+/* Common definition for ifunc selection implementation. -+ All versions must be listed in ifunc-impl-list.c. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#include -+#include -+ -+#if !defined __loongarch_soft_float -+extern __typeof (REDIRECT_NAME) OPTIMIZE (lasx) attribute_hidden; -+extern __typeof (REDIRECT_NAME) OPTIMIZE (lsx) attribute_hidden; -+#endif -+ -+extern __typeof (REDIRECT_NAME) OPTIMIZE (aligned) attribute_hidden; -+extern __typeof (REDIRECT_NAME) OPTIMIZE (unaligned) attribute_hidden; -+ -+static inline void * -+IFUNC_SELECTOR (void) -+{ -+#if !defined __loongarch_soft_float -+ if (SUPPORT_LASX) -+ return OPTIMIZE (lasx); -+ else if (SUPPORT_LSX) -+ return OPTIMIZE (lsx); -+ else -+#endif -+ if (SUPPORT_UAL) -+ return OPTIMIZE (unaligned); -+ else -+ return OPTIMIZE (aligned); -+} -diff --git a/sysdeps/loongarch/lp64/multiarch/memcpy-aligned.S b/sysdeps/loongarch/lp64/multiarch/memcpy-aligned.S -new file mode 100644 -index 0000000000..299dd49ce1 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/memcpy-aligned.S -@@ -0,0 +1,783 @@ -+/* Optimized memcpy_aligned implementation using basic Loongarch instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) -+# define MEMCPY_NAME __memcpy_aligned -+# define MEMMOVE_NAME __memmove_aligned -+#else -+# define MEMCPY_NAME memcpy -+# define MEMMOVE_NAME memmove -+#endif -+ -+#define LD_64(reg, n) \ -+ ld.d t0, reg, n; \ -+ ld.d t1, reg, n + 8; \ -+ ld.d t2, reg, n + 16; \ -+ ld.d t3, reg, n + 24; \ -+ ld.d t4, reg, n + 32; \ -+ ld.d t5, reg, n + 40; \ -+ ld.d t6, reg, n + 48; \ -+ ld.d t7, reg, n + 56; -+ -+#define ST_64(reg, n) \ -+ st.d t0, reg, n; \ -+ st.d t1, reg, n + 8; \ -+ st.d t2, reg, n + 16; \ -+ st.d t3, reg, n + 24; \ -+ st.d t4, reg, n + 32; \ -+ st.d t5, reg, n + 40; \ -+ st.d t6, reg, n + 48; \ -+ st.d t7, reg, n + 56; -+ -+LEAF(MEMMOVE_NAME, 6) -+ sub.d t0, a0, a1 -+ bltu t0, a2, L(copy_back) -+END(MEMMOVE_NAME) -+ -+LEAF_NO_ALIGN(MEMCPY_NAME) -+ srai.d a3, a2, 4 -+ beqz a3, L(short_data) -+ -+ move a4, a0 -+ andi a5, a0, 0x7 -+ andi a6, a1, 0x7 -+ li.d t8, 8 -+ beqz a5, L(check_align) -+ -+ sub.d t2, t8, a5 -+ sub.d a2, a2, t2 -+ pcaddi t1, 20 -+ slli.d t3, t2, 3 -+ -+ add.d a1, a1, t2 -+ sub.d t1, t1, t3 -+ add.d a4, a4, t2 -+ jr t1 -+ -+L(al7): -+ ld.b t0, a1, -7 -+ st.b t0, a4, -7 -+L(al6): -+ ld.b t0, a1, -6 -+ st.b t0, a4, -6 -+L(al5): -+ ld.b t0, a1, -5 -+ st.b t0, a4, -5 -+L(al4): -+ ld.b t0, a1, -4 -+ st.b t0, a4, -4 -+L(al3): -+ ld.b t0, a1, -3 -+ st.b t0, a4, -3 -+L(al2): -+ ld.b t0, a1, -2 -+ st.b t0, a4, -2 -+L(al1): -+ ld.b t0, a1, -1 -+ st.b t0, a4, -1 -+ -+L(check_align): -+ bne a5, a6, L(unalign) -+ srai.d a3, a2, 4 -+ beqz a3, L(al_less_16bytes) -+ andi a3, a2, 0x3f -+ -+ beq a3, a2, L(al_less_64bytes) -+ sub.d t0, a2, a3 -+ move a2, a3 -+ add.d a5, a1, t0 -+ -+L(loop_64bytes): -+ LD_64(a1, 0) -+ addi.d a1, a1, 64 -+ ST_64(a4, 0) -+ -+ addi.d a4, a4, 64 -+ bne a1, a5, L(loop_64bytes) -+ -+L(al_less_64bytes): -+ srai.d a3, a2, 5 -+ beqz a3, L(al_less_32bytes) -+ -+ ld.d t0, a1, 0 -+ ld.d t1, a1, 8 -+ ld.d t2, a1, 16 -+ ld.d t3, a1, 24 -+ -+ addi.d a1, a1, 32 -+ addi.d a2, a2, -32 -+ -+ st.d t0, a4, 0 -+ st.d t1, a4, 8 -+ st.d t2, a4, 16 -+ st.d t3, a4, 24 -+ -+ addi.d a4, a4, 32 -+ -+L(al_less_32bytes): -+ srai.d a3, a2, 4 -+ beqz a3, L(al_less_16bytes) -+ -+ ld.d t0, a1, 0 -+ ld.d t1, a1, 8 -+ addi.d a1, a1, 16 -+ addi.d a2, a2, -16 -+ -+ st.d t0, a4, 0 -+ st.d t1, a4, 8 -+ addi.d a4, a4, 16 -+ -+L(al_less_16bytes): -+ srai.d a3, a2, 3 -+ beqz a3, L(al_less_8bytes) -+ -+ ld.d t0, a1, 0 -+ addi.d a1, a1, 8 -+ addi.d a2, a2, -8 -+ st.d t0, a4, 0 -+ addi.d a4, a4, 8 -+ -+L(al_less_8bytes): -+ srai.d a3, a2, 2 -+ beqz a3, L(al_less_4bytes) -+ -+ ld.w t0, a1, 0 -+ addi.d a1, a1, 4 -+ addi.d a2, a2, -4 -+ st.w t0, a4, 0 -+ addi.d a4, a4, 4 -+ -+L(al_less_4bytes): -+ srai.d a3, a2, 1 -+ beqz a3, L(al_less_2bytes) -+ -+ ld.h t0, a1, 0 -+ addi.d a1, a1, 2 -+ addi.d a2, a2, -2 -+ st.h t0, a4, 0 -+ addi.d a4, a4, 2 -+ -+L(al_less_2bytes): -+ beqz a2, L(al_less_1byte) -+ -+ ld.b t0, a1, 0 -+ st.b t0, a4, 0 -+ -+L(al_less_1byte): -+ jr ra -+ -+L(unalign): -+ andi a5, a1, 0x7 -+ bstrins.d a1, zero, 2, 0 -+ sub.d t8, t8, a5 -+ slli.d a5, a5, 3 -+ -+ ld.d t0, a1, 0 -+ addi.d a1, a1, 8 -+ slli.d a6, t8, 3 -+ srl.d a7, t0, a5 -+ -+ srai.d a3, a2, 4 -+ beqz a3, L(un_less_16bytes) -+ andi a3, a2, 0x3f -+ beq a3, a2, L(un_less_64bytes) -+ -+ sub.d t0, a2, a3 -+ move a2, a3 -+ add.d a3, a1, t0 -+ -+L(un_long_bytes): -+ ld.d t0, a1, 0 -+ ld.d t1, a1, 8 -+ ld.d t2, a1, 16 -+ ld.d t3, a1, 24 -+ -+ srl.d t4, t0, a5 -+ sll.d t0, t0, a6 -+ srl.d t5, t1, a5 -+ sll.d t1, t1, a6 -+ -+ srl.d t6, t2, a5 -+ sll.d t2, t2, a6 -+ srl.d t7, t3, a5 -+ sll.d t3, t3, a6 -+ -+ or t0, a7, t0 -+ or t1, t4, t1 -+ or t2, t5, t2 -+ or t3, t6, t3 -+ -+ ld.d t4, a1, 32 -+ ld.d t5, a1, 40 -+ ld.d t6, a1, 48 -+ ld.d a7, a1, 56 -+ -+ st.d t0, a4, 0 -+ st.d t1, a4, 8 -+ st.d t2, a4, 16 -+ st.d t3, a4, 24 -+ -+ addi.d a1, a1, 64 -+ -+ srl.d t0, t4, a5 -+ sll.d t4, t4, a6 -+ srl.d t1, t5, a5 -+ sll.d t5, t5, a6 -+ -+ srl.d t2, t6, a5 -+ sll.d t6, t6, a6 -+ sll.d t3, a7, a6 -+ srl.d a7, a7, a5 -+ -+ or t4, t7, t4 -+ or t5, t0, t5 -+ or t6, t1, t6 -+ or t3, t2, t3 -+ -+ st.d t4, a4, 32 -+ st.d t5, a4, 40 -+ st.d t6, a4, 48 -+ st.d t3, a4, 56 -+ -+ addi.d a4, a4, 64 -+ bne a3, a1, L(un_long_bytes) -+ -+L(un_less_64bytes): -+ srai.d a3, a2, 5 -+ beqz a3, L(un_less_32bytes) -+ -+ ld.d t0, a1, 0 -+ ld.d t1, a1, 8 -+ ld.d t2, a1, 16 -+ ld.d t3, a1, 24 -+ -+ addi.d a1, a1, 32 -+ addi.d a2, a2, -32 -+ -+ srl.d t4, t0, a5 -+ sll.d t0, t0, a6 -+ srl.d t5, t1, a5 -+ sll.d t1, t1, a6 -+ -+ srl.d t6, t2, a5 -+ sll.d t2, t2, a6 -+ or t0, a7, t0 -+ srl.d a7, t3, a5 -+ sll.d t3, t3, a6 -+ -+ or t1, t4, t1 -+ or t2, t5, t2 -+ or t3, t6, t3 -+ -+ st.d t0, a4, 0 -+ st.d t1, a4, 8 -+ st.d t2, a4, 16 -+ st.d t3, a4, 24 -+ -+ addi.d a4, a4, 32 -+ -+L(un_less_32bytes): -+ srai.d a3, a2, 4 -+ beqz a3, L(un_less_16bytes) -+ -+ ld.d t0, a1, 0 -+ ld.d t1, a1, 8 -+ addi.d a1, a1, 16 -+ addi.d a2, a2, -16 -+ -+ srl.d t2, t0, a5 -+ sll.d t3, t0, a6 -+ sll.d t4, t1, a6 -+ or t3, a7, t3 -+ or t4, t2, t4 -+ -+ srl.d a7, t1, a5 -+ st.d t3, a4, 0 -+ st.d t4, a4, 8 -+ addi.d a4, a4, 16 -+ -+L(un_less_16bytes): -+ srai.d a3, a2, 3 -+ beqz a3, L(un_less_8bytes) -+ -+ ld.d t0, a1, 0 -+ addi.d a1, a1, 8 -+ addi.d a2, a2, -8 -+ sll.d t1, t0, a6 -+ -+ or t2, a7, t1 -+ srl.d a7, t0, a5 -+ st.d t2, a4, 0 -+ addi.d a4, a4, 8 -+ -+L(un_less_8bytes): -+ beqz a2, L(un_less_1byte) -+ bge t8, a2, 1f -+ -+ ld.d t0, a1, 0 -+ sll.d t0, t0, a6 -+ or a7, a7, t0 -+ -+1: -+ srai.d a3, a2, 2 -+ beqz a3, L(un_less_4bytes) -+ -+ addi.d a2, a2, -4 -+ st.w a7, a4, 0 -+ addi.d a4, a4, 4 -+ srai.d a7, a7, 32 -+ -+L(un_less_4bytes): -+ srai.d a3, a2, 1 -+ beqz a3, L(un_less_2bytes) -+ -+ addi.d a2, a2, -2 -+ st.h a7, a4, 0 -+ addi.d a4, a4, 2 -+ srai.d a7, a7, 16 -+ -+L(un_less_2bytes): -+ beqz a2, L(un_less_1byte) -+ st.b a7, a4, 0 -+ -+L(un_less_1byte): -+ jr ra -+ -+L(short_data): -+ pcaddi t1, 36 -+ slli.d t2, a2, 3 -+ add.d a4, a0, a2 -+ sub.d t1, t1, t2 -+ add.d a1, a1, a2 -+ jr t1 -+ -+L(short_15_bytes): -+ ld.b t0, a1, -15 -+ st.b t0, a4, -15 -+L(short_14_bytes): -+ ld.b t0, a1, -14 -+ st.b t0, a4, -14 -+L(short_13_bytes): -+ ld.b t0, a1, -13 -+ st.b t0, a4, -13 -+L(short_12_bytes): -+ ld.b t0, a1, -12 -+ st.b t0, a4, -12 -+L(short_11_bytes): -+ ld.b t0, a1, -11 -+ st.b t0, a4, -11 -+L(short_10_bytes): -+ ld.b t0, a1, -10 -+ st.b t0, a4, -10 -+L(short_9_bytes): -+ ld.b t0, a1, -9 -+ st.b t0, a4, -9 -+L(short_8_bytes): -+ ld.b t0, a1, -8 -+ st.b t0, a4, -8 -+L(short_7_bytes): -+ ld.b t0, a1, -7 -+ st.b t0, a4, -7 -+L(short_6_bytes): -+ ld.b t0, a1, -6 -+ st.b t0, a4, -6 -+L(short_5_bytes): -+ ld.b t0, a1, -5 -+ st.b t0, a4, -5 -+L(short_4_bytes): -+ ld.b t0, a1, -4 -+ st.b t0, a4, -4 -+L(short_3_bytes): -+ ld.b t0, a1, -3 -+ st.b t0, a4, -3 -+L(short_2_bytes): -+ ld.b t0, a1, -2 -+ st.b t0, a4, -2 -+L(short_1_bytes): -+ ld.b t0, a1, -1 -+ st.b t0, a4, -1 -+ jr ra -+ -+L(copy_back): -+ srai.d a3, a2, 4 -+ beqz a3, L(back_short_data) -+ -+ add.d a4, a0, a2 -+ add.d a1, a1, a2 -+ -+ andi a5, a4, 0x7 -+ andi a6, a1, 0x7 -+ beqz a5, L(back_check_align) -+ -+ sub.d a2, a2, a5 -+ sub.d a1, a1, a5 -+ sub.d a4, a4, a5 -+ -+ pcaddi t1, 18 -+ slli.d t3, a5, 3 -+ sub.d t1, t1, t3 -+ jr t1 -+ -+ ld.b t0, a1, 6 -+ st.b t0, a4, 6 -+ ld.b t0, a1, 5 -+ st.b t0, a4, 5 -+ ld.b t0, a1, 4 -+ st.b t0, a4, 4 -+ ld.b t0, a1, 3 -+ st.b t0, a4, 3 -+ ld.b t0, a1, 2 -+ st.b t0, a4, 2 -+ ld.b t0, a1, 1 -+ st.b t0, a4, 1 -+ ld.b t0, a1, 0 -+ st.b t0, a4, 0 -+ -+L(back_check_align): -+ bne a5, a6, L(back_unalign) -+ -+ srai.d a3, a2, 4 -+ beqz a3, L(back_less_16bytes) -+ -+ andi a3, a2, 0x3f -+ beq a3, a2, L(back_less_64bytes) -+ -+ sub.d t0, a2, a3 -+ move a2, a3 -+ sub.d a5, a1, t0 -+ -+L(back_loop_64bytes): -+ LD_64(a1, -64) -+ addi.d a1, a1, -64 -+ ST_64(a4, -64) -+ -+ addi.d a4, a4, -64 -+ bne a1, a5, L(back_loop_64bytes) -+ -+L(back_less_64bytes): -+ srai.d a3, a2, 5 -+ beqz a3, L(back_less_32bytes) -+ -+ ld.d t0, a1, -32 -+ ld.d t1, a1, -24 -+ ld.d t2, a1, -16 -+ ld.d t3, a1, -8 -+ -+ addi.d a1, a1, -32 -+ addi.d a2, a2, -32 -+ -+ st.d t0, a4, -32 -+ st.d t1, a4, -24 -+ st.d t2, a4, -16 -+ st.d t3, a4, -8 -+ -+ addi.d a4, a4, -32 -+ -+L(back_less_32bytes): -+ srai.d a3, a2, 4 -+ beqz a3, L(back_less_16bytes) -+ -+ ld.d t0, a1, -16 -+ ld.d t1, a1, -8 -+ -+ addi.d a2, a2, -16 -+ addi.d a1, a1, -16 -+ -+ st.d t0, a4, -16 -+ st.d t1, a4, -8 -+ addi.d a4, a4, -16 -+ -+L(back_less_16bytes): -+ srai.d a3, a2, 3 -+ beqz a3, L(back_less_8bytes) -+ -+ ld.d t0, a1, -8 -+ addi.d a2, a2, -8 -+ addi.d a1, a1, -8 -+ -+ st.d t0, a4, -8 -+ addi.d a4, a4, -8 -+ -+L(back_less_8bytes): -+ srai.d a3, a2, 2 -+ beqz a3, L(back_less_4bytes) -+ -+ ld.w t0, a1, -4 -+ addi.d a2, a2, -4 -+ addi.d a1, a1, -4 -+ -+ st.w t0, a4, -4 -+ addi.d a4, a4, -4 -+ -+L(back_less_4bytes): -+ srai.d a3, a2, 1 -+ beqz a3, L(back_less_2bytes) -+ -+ ld.h t0, a1, -2 -+ addi.d a2, a2, -2 -+ addi.d a1, a1, -2 -+ -+ st.h t0, a4, -2 -+ addi.d a4, a4, -2 -+ -+L(back_less_2bytes): -+ beqz a2, L(back_less_1byte) -+ -+ ld.b t0, a1, -1 -+ st.b t0, a4, -1 -+ -+L(back_less_1byte): -+ jr ra -+ -+L(back_unalign): -+ andi t8, a1, 0x7 -+ bstrins.d a1, zero, 2, 0 -+ -+ sub.d a6, zero, t8 -+ -+ ld.d t0, a1, 0 -+ slli.d a6, a6, 3 -+ slli.d a5, t8, 3 -+ sll.d a7, t0, a6 -+ -+ srai.d a3, a2, 4 -+ beqz a3, L(back_un_less_16bytes) -+ -+ andi a3, a2, 0x3f -+ beq a3, a2, L(back_un_less_64bytes) -+ -+ sub.d t0, a2, a3 -+ move a2, a3 -+ sub.d a3, a1, t0 -+ -+L(back_un_long_bytes): -+ ld.d t0, a1, -8 -+ ld.d t1, a1, -16 -+ ld.d t2, a1, -24 -+ ld.d t3, a1, -32 -+ -+ sll.d t4, t0, a6 -+ srl.d t0, t0, a5 -+ -+ sll.d t5, t1, a6 -+ srl.d t1, t1, a5 -+ -+ sll.d t6, t2, a6 -+ srl.d t2, t2, a5 -+ -+ sll.d t7, t3, a6 -+ srl.d t3, t3, a5 -+ -+ or t0, t0, a7 -+ or t1, t1, t4 -+ or t2, t2, t5 -+ or t3, t3, t6 -+ -+ ld.d t4, a1, -40 -+ ld.d t5, a1, -48 -+ ld.d t6, a1, -56 -+ ld.d a7, a1, -64 -+ st.d t0, a4, -8 -+ st.d t1, a4, -16 -+ st.d t2, a4, -24 -+ st.d t3, a4, -32 -+ -+ addi.d a1, a1, -64 -+ -+ sll.d t0, t4, a6 -+ srl.d t4, t4, a5 -+ -+ sll.d t1, t5, a6 -+ srl.d t5, t5, a5 -+ -+ sll.d t2, t6, a6 -+ srl.d t6, t6, a5 -+ -+ srl.d t3, a7, a5 -+ sll.d a7, a7, a6 -+ -+ or t4, t7, t4 -+ or t5, t0, t5 -+ or t6, t1, t6 -+ or t3, t2, t3 -+ -+ st.d t4, a4, -40 -+ st.d t5, a4, -48 -+ st.d t6, a4, -56 -+ st.d t3, a4, -64 -+ -+ addi.d a4, a4, -64 -+ bne a3, a1, L(back_un_long_bytes) -+ -+L(back_un_less_64bytes): -+ srai.d a3, a2, 5 -+ beqz a3, L(back_un_less_32bytes) -+ -+ ld.d t0, a1, -8 -+ ld.d t1, a1, -16 -+ ld.d t2, a1, -24 -+ ld.d t3, a1, -32 -+ -+ addi.d a1, a1, -32 -+ addi.d a2, a2, -32 -+ -+ sll.d t4, t0, a6 -+ srl.d t0, t0, a5 -+ -+ sll.d t5, t1, a6 -+ srl.d t1, t1, a5 -+ -+ sll.d t6, t2, a6 -+ srl.d t2, t2, a5 -+ -+ or t0, a7, t0 -+ -+ sll.d a7, t3, a6 -+ srl.d t3, t3, a5 -+ -+ or t1, t4, t1 -+ or t2, t5, t2 -+ or t3, t6, t3 -+ -+ st.d t0, a4, -8 -+ st.d t1, a4, -16 -+ st.d t2, a4, -24 -+ st.d t3, a4, -32 -+ -+ addi.d a4, a4, -32 -+ -+L(back_un_less_32bytes): -+ srai.d a3, a2, 4 -+ beqz a3, L(back_un_less_16bytes) -+ -+ ld.d t0, a1, -8 -+ ld.d t1, a1, -16 -+ -+ addi.d a1, a1, -16 -+ addi.d a2, a2, -16 -+ -+ sll.d t2, t0, a6 -+ srl.d t3, t0, a5 -+ -+ srl.d t4, t1, a5 -+ or t3, a7, t3 -+ or t4, t2, t4 -+ sll.d a7, t1, a6 -+ -+ st.d t3, a4, -8 -+ st.d t4, a4, -16 -+ -+ addi.d a4, a4, -16 -+ -+L(back_un_less_16bytes): -+ srai.d a3, a2, 3 -+ beqz a3, L(back_un_less_8bytes) -+ -+ ld.d t0, a1, -8 -+ -+ addi.d a1, a1, -8 -+ addi.d a2, a2, -8 -+ -+ srl.d t1, t0, a5 -+ or t2, a7, t1 -+ sll.d a7, t0, a6 -+ -+ st.d t2, a4, -8 -+ addi.d a4, a4, -8 -+ -+L(back_un_less_8bytes): -+ beqz a2, L(back_end) -+ bge t8, a2, 1f -+ -+ ld.d t0, a1, -8 -+ srl.d t0, t0, a5 -+ or a7, a7, t0 -+ -+1: -+ srai.d a3, a2, 2 -+ beqz a3, L(back_un_less_4bytes) -+ -+ srai.d t0, a7, 32 -+ addi.d a2, a2, -4 -+ st.w t0, a4, -4 -+ addi.d a4, a4, -4 -+ slli.d a7, a7, 32 -+ -+L(back_un_less_4bytes): -+ srai.d a3, a2, 1 -+ beqz a3, L(back_un_less_2bytes) -+ srai.d t0, a7, 48 -+ addi.d a2, a2, -2 -+ st.h t0, a4, -2 -+ addi.d a4, a4, -2 -+ slli.d a7, a7, 16 -+L(back_un_less_2bytes): -+ beqz a2, L(back_un_less_1byte) -+ srai.d t0, a7, 56 -+ st.b t0, a4, -1 -+L(back_un_less_1byte): -+ jr ra -+ -+L(back_short_data): -+ pcaddi t1, 34 -+ slli.d t2, a2, 3 -+ sub.d t1, t1, t2 -+ jr t1 -+ -+ ld.b t0, a1, 14 -+ st.b t0, a0, 14 -+ ld.b t0, a1, 13 -+ st.b t0, a0, 13 -+ ld.b t0, a1, 12 -+ st.b t0, a0, 12 -+ ld.b t0, a1, 11 -+ st.b t0, a0, 11 -+ ld.b t0, a1, 10 -+ st.b t0, a0, 10 -+ ld.b t0, a1, 9 -+ st.b t0, a0, 9 -+ ld.b t0, a1, 8 -+ st.b t0, a0, 8 -+ ld.b t0, a1, 7 -+ st.b t0, a0, 7 -+ ld.b t0, a1, 6 -+ st.b t0, a0, 6 -+ ld.b t0, a1, 5 -+ st.b t0, a0, 5 -+ ld.b t0, a1, 4 -+ st.b t0, a0, 4 -+ ld.b t0, a1, 3 -+ st.b t0, a0, 3 -+ ld.b t0, a1, 2 -+ st.b t0, a0, 2 -+ ld.b t0, a1, 1 -+ st.b t0, a0, 1 -+ ld.b t0, a1, 0 -+ st.b t0, a0, 0 -+L(back_end): -+ jr ra -+ -+END(MEMCPY_NAME) -+ -+libc_hidden_builtin_def (MEMMOVE_NAME) -+libc_hidden_builtin_def (MEMCPY_NAME) -diff --git a/sysdeps/loongarch/lp64/multiarch/memcpy-lasx.S b/sysdeps/loongarch/lp64/multiarch/memcpy-lasx.S -new file mode 100644 -index 0000000000..4aae5bf831 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/memcpy-lasx.S -@@ -0,0 +1,20 @@ -+/* Optimized memcpy implementation using Loongarch LASX instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+/* memcpy is part of memmove.S */ -diff --git a/sysdeps/loongarch/lp64/multiarch/memcpy-lsx.S b/sysdeps/loongarch/lp64/multiarch/memcpy-lsx.S -new file mode 100644 -index 0000000000..6ebbe7a2c7 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/memcpy-lsx.S -@@ -0,0 +1,20 @@ -+/* Optimized memcpy implementation using Loongarch LSX instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+/* memcpy is part of memmove.S */ -diff --git a/sysdeps/loongarch/lp64/multiarch/memcpy-unaligned.S b/sysdeps/loongarch/lp64/multiarch/memcpy-unaligned.S -new file mode 100644 -index 0000000000..8e60a22dfb ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/memcpy-unaligned.S -@@ -0,0 +1,247 @@ -+/* Optimized unaligned memcpy implementation using basic Loongarch instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) -+ -+# define MEMCPY_NAME __memcpy_unaligned -+ -+# define LD_64(reg, n) \ -+ ld.d t0, reg, n; \ -+ ld.d t1, reg, n + 8; \ -+ ld.d t2, reg, n + 16; \ -+ ld.d t3, reg, n + 24; \ -+ ld.d t4, reg, n + 32; \ -+ ld.d t5, reg, n + 40; \ -+ ld.d t6, reg, n + 48; \ -+ ld.d t7, reg, n + 56; -+ -+# define ST_64(reg, n) \ -+ st.d t0, reg, n; \ -+ st.d t1, reg, n + 8; \ -+ st.d t2, reg, n + 16; \ -+ st.d t3, reg, n + 24; \ -+ st.d t4, reg, n + 32; \ -+ st.d t5, reg, n + 40; \ -+ st.d t6, reg, n + 48; \ -+ st.d t7, reg, n + 56; -+ -+LEAF(MEMCPY_NAME, 3) -+ add.d a4, a1, a2 -+ add.d a3, a0, a2 -+ li.w a6, 16 -+ bge a6, a2, L(less_16bytes) -+ -+ li.w a6, 128 -+ blt a6, a2, L(long_bytes) -+ li.w a6, 64 -+ blt a6, a2, L(more_64bytes) -+ -+ li.w a6, 32 -+ blt a6, a2, L(more_32bytes) -+ -+ ld.d t0, a1, 0 -+ ld.d t1, a1, 8 -+ ld.d t2, a4, -16 -+ ld.d t3, a4, -8 -+ -+ st.d t0, a0, 0 -+ st.d t1, a0, 8 -+ st.d t2, a3, -16 -+ st.d t3, a3, -8 -+ jr ra -+ -+L(more_64bytes): -+ srli.d t8, a0, 3 -+ slli.d t8, t8, 3 -+ addi.d t8, t8, 0x8 -+ sub.d a7, a0, t8 -+ -+ ld.d t0, a1, 0 -+ sub.d a1, a1, a7 -+ st.d t0, a0, 0 -+ add.d a7, a7, a2 -+ addi.d a7, a7, -0x20 -+ -+L(loop_32): -+ ld.d t0, a1, 0 -+ ld.d t1, a1, 8 -+ ld.d t2, a1, 16 -+ ld.d t3, a1, 24 -+ -+ st.d t0, t8, 0 -+ st.d t1, t8, 8 -+ st.d t2, t8, 16 -+ st.d t3, t8, 24 -+ -+ addi.d t8, t8, 0x20 -+ addi.d a1, a1, 0x20 -+ addi.d a7, a7, -0x20 -+ blt zero, a7, L(loop_32) -+ -+ ld.d t4, a4, -32 -+ ld.d t5, a4, -24 -+ ld.d t6, a4, -16 -+ ld.d t7, a4, -8 -+ -+ st.d t4, a3, -32 -+ st.d t5, a3, -24 -+ st.d t6, a3, -16 -+ st.d t7, a3, -8 -+ -+ jr ra -+ -+L(more_32bytes): -+ ld.d t0, a1, 0 -+ ld.d t1, a1, 8 -+ ld.d t2, a1, 16 -+ ld.d t3, a1, 24 -+ -+ ld.d t4, a4, -32 -+ ld.d t5, a4, -24 -+ ld.d t6, a4, -16 -+ ld.d t7, a4, -8 -+ -+ st.d t0, a0, 0 -+ st.d t1, a0, 8 -+ st.d t2, a0, 16 -+ st.d t3, a0, 24 -+ -+ st.d t4, a3, -32 -+ st.d t5, a3, -24 -+ st.d t6, a3, -16 -+ st.d t7, a3, -8 -+ -+ jr ra -+ -+L(less_16bytes): -+ srai.d a6, a2, 3 -+ beqz a6, L(less_8bytes) -+ -+ ld.d t0, a1, 0 -+ ld.d t1, a4, -8 -+ st.d t0, a0, 0 -+ st.d t1, a3, -8 -+ -+ jr ra -+ -+L(less_8bytes): -+ srai.d a6, a2, 2 -+ beqz a6, L(less_4bytes) -+ -+ ld.w t0, a1, 0 -+ ld.w t1, a4, -4 -+ st.w t0, a0, 0 -+ st.w t1, a3, -4 -+ -+ jr ra -+ -+L(less_4bytes): -+ srai.d a6, a2, 1 -+ beqz a6, L(less_2bytes) -+ -+ ld.h t0, a1, 0 -+ ld.h t1, a4, -2 -+ st.h t0, a0, 0 -+ st.h t1, a3, -2 -+ -+ jr ra -+ -+L(less_2bytes): -+ beqz a2, L(less_1bytes) -+ -+ ld.b t0, a1, 0 -+ st.b t0, a0, 0 -+ jr ra -+ -+L(less_1bytes): -+ jr ra -+ -+L(long_bytes): -+ srli.d t8, a0, 3 -+ slli.d t8, t8, 3 -+ beq a0, t8, L(start) -+ ld.d t0, a1, 0 -+ -+ addi.d t8, t8, 0x8 -+ st.d t0, a0, 0 -+ sub.d a7, a0, t8 -+ sub.d a1, a1, a7 -+ -+L(start): -+ addi.d a5, a3, -0x80 -+ blt a5, t8, L(align_end_proc) -+ -+L(loop_128): -+ LD_64(a1, 0) -+ ST_64(t8, 0) -+ LD_64(a1, 64) -+ addi.d a1, a1, 0x80 -+ ST_64(t8, 64) -+ addi.d t8, t8, 0x80 -+ bge a5, t8, L(loop_128) -+ -+L(align_end_proc): -+ sub.d a2, a3, t8 -+ pcaddi t1, 34 -+ andi t2, a2, 0x78 -+ sub.d t1, t1, t2 -+ jr t1 -+ -+ ld.d t0, a1, 112 -+ st.d t0, t8, 112 -+ ld.d t0, a1, 104 -+ st.d t0, t8, 104 -+ ld.d t0, a1, 96 -+ st.d t0, t8, 96 -+ ld.d t0, a1, 88 -+ st.d t0, t8, 88 -+ ld.d t0, a1, 80 -+ st.d t0, t8, 80 -+ ld.d t0, a1, 72 -+ st.d t0, t8, 72 -+ ld.d t0, a1, 64 -+ st.d t0, t8, 64 -+ ld.d t0, a1, 56 -+ st.d t0, t8, 56 -+ ld.d t0, a1, 48 -+ st.d t0, t8, 48 -+ ld.d t0, a1, 40 -+ st.d t0, t8, 40 -+ ld.d t0, a1, 32 -+ st.d t0, t8, 32 -+ ld.d t0, a1, 24 -+ st.d t0, t8, 24 -+ ld.d t0, a1, 16 -+ st.d t0, t8, 16 -+ ld.d t0, a1, 8 -+ st.d t0, t8, 8 -+ ld.d t0, a1, 0 -+ st.d t0, t8, 0 -+ ld.d t0, a4, -8 -+ st.d t0, a3, -8 -+ -+ jr ra -+END(MEMCPY_NAME) -+ -+libc_hidden_builtin_def (MEMCPY_NAME) -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/memcpy.c b/sysdeps/loongarch/lp64/multiarch/memcpy.c -new file mode 100644 -index 0000000000..93b238ce27 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/memcpy.c -@@ -0,0 +1,37 @@ -+/* Multiple versions of memcpy. -+ All versions must be listed in ifunc-impl-list.c. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+/* Define multiple versions only for the definition in libc. */ -+#if IS_IN (libc) -+# define memcpy __redirect_memcpy -+# include -+# undef memcpy -+ -+# define SYMBOL_NAME memcpy -+# include "ifunc-lasx.h" -+ -+libc_ifunc_redirected (__redirect_memcpy, memcpy, -+ IFUNC_SELECTOR ()); -+ -+# ifdef SHARED -+__hidden_ver1 (memcpy, __GI_memcpy, __redirect_memcpy) -+ __attribute__ ((visibility ("hidden"))) __attribute_copy__ (memcmp); -+# endif -+ -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/memmove-aligned.S b/sysdeps/loongarch/lp64/multiarch/memmove-aligned.S -new file mode 100644 -index 0000000000..5354f38379 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/memmove-aligned.S -@@ -0,0 +1,20 @@ -+/* Optimized memmove_aligned implementation using basic Loongarch instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+/* memmove_aligned is part of memcpy_aligned, see memcpy-aligned.S. */ -diff --git a/sysdeps/loongarch/lp64/multiarch/memmove-lasx.S b/sysdeps/loongarch/lp64/multiarch/memmove-lasx.S -new file mode 100644 -index 0000000000..ff68e7a22b ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/memmove-lasx.S -@@ -0,0 +1,287 @@ -+/* Optimized memmove implementation using Loongarch LASX instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) && !defined __loongarch_soft_float -+ -+#ifndef MEMCPY_NAME -+# define MEMCPY_NAME __memcpy_lasx -+#endif -+ -+#ifndef MEMMOVE_NAME -+# define MEMMOVE_NAME __memmove_lasx -+#endif -+ -+LEAF(MEMCPY_NAME, 6) -+ li.d t0, 32 -+ add.d a3, a0, a2 -+ add.d a4, a1, a2 -+ bgeu t0, a2, L(less_32bytes) -+ -+ li.d t1, 64 -+ bltu t1, a2, L(copy_long) -+ xvld xr0, a1, 0 -+ xvld xr1, a4, -32 -+ -+ xvst xr0, a0, 0 -+ xvst xr1, a3, -32 -+ jr ra -+L(less_32bytes): -+ srli.d t0, a2, 4 -+ -+ beqz t0, L(less_16bytes) -+ vld vr0, a1, 0 -+ vld vr1, a4, -16 -+ vst vr0, a0, 0 -+ -+ -+ vst vr1, a3, -16 -+ jr ra -+L(less_16bytes): -+ srli.d t0, a2, 3 -+ beqz t0, L(less_8bytes) -+ -+ ld.d t0, a1, 0 -+ ld.d t1, a4, -8 -+ st.d t0, a0, 0 -+ st.d t1, a3, -8 -+ -+ jr ra -+L(less_8bytes): -+ srli.d t0, a2, 2 -+ beqz t0, L(less_4bytes) -+ ld.w t0, a1, 0 -+ -+ ld.w t1, a4, -4 -+ st.w t0, a0, 0 -+ st.w t1, a3, -4 -+ jr ra -+ -+ -+L(less_4bytes): -+ srli.d t0, a2, 1 -+ beqz t0, L(less_2bytes) -+ ld.h t0, a1, 0 -+ ld.h t1, a4, -2 -+ -+ st.h t0, a0, 0 -+ st.h t1, a3, -2 -+ jr ra -+L(less_2bytes): -+ beqz a2, L(less_1bytes) -+ -+ ld.b t0, a1, 0 -+ st.b t0, a0, 0 -+L(less_1bytes): -+ jr ra -+END(MEMCPY_NAME) -+ -+LEAF(MEMMOVE_NAME, 6) -+ -+ li.d t0, 32 -+ add.d a3, a0, a2 -+ add.d a4, a1, a2 -+ bgeu t0, a2, L(less_32bytes) -+ -+ li.d t1, 64 -+ bltu t1, a2, L(move_long) -+ xvld xr0, a1, 0 -+ xvld xr1, a4, -32 -+ -+ xvst xr0, a0, 0 -+ xvst xr1, a3, -32 -+ jr ra -+L(move_long): -+ sub.d t2, a0, a1 -+ -+ bltu t2, a2, L(copy_back) -+L(copy_long): -+ andi t2, a0, 0x1f -+ addi.d a2, a2, -1 -+ sub.d t2, t0, t2 -+ -+ -+ xvld xr8, a1, 0 -+ xvld xr9, a4, -32 -+ sub.d t3, a2, t2 -+ add.d a5, a0, t2 -+ -+ andi a2, t3, 0xff -+ add.d a1, a1, t2 -+ beq a2, t3, L(lt256) -+ sub.d a6, a4, a2 -+ -+ addi.d a6, a6, -1 -+L(loop_256): -+ xvld xr0, a1, 0 -+ xvld xr1, a1, 32 -+ xvld xr2, a1, 64 -+ -+ xvld xr3, a1, 96 -+ xvld xr4, a1, 128 -+ xvld xr5, a1, 160 -+ xvld xr6, a1, 192 -+ -+ -+ xvld xr7, a1, 224 -+ addi.d a1, a1, 256 -+ xvst xr0, a5, 0 -+ xvst xr1, a5, 32 -+ -+ xvst xr2, a5, 64 -+ xvst xr3, a5, 96 -+ xvst xr4, a5, 128 -+ xvst xr5, a5, 160 -+ -+ xvst xr6, a5, 192 -+ xvst xr7, a5, 224 -+ addi.d a5, a5, 256 -+ bne a1, a6, L(loop_256) -+ -+L(lt256): -+ srli.d t2, a2, 7 -+ beqz t2, L(lt128) -+ xvld xr0, a1, 0 -+ xvld xr1, a1, 32 -+ -+ -+ xvld xr2, a1, 64 -+ xvld xr3, a1, 96 -+ addi.d a1, a1, 128 -+ addi.d a2, a2, -128 -+ -+ xvst xr0, a5, 0 -+ xvst xr1, a5, 32 -+ xvst xr2, a5, 64 -+ xvst xr3, a5, 96 -+ -+ addi.d a5, a5, 128 -+L(lt128): -+ bltu a2, t1, L(lt64) -+ xvld xr0, a1, 0 -+ xvld xr1, a1, 32 -+ -+ addi.d a1, a1, 64 -+ addi.d a2, a2, -64 -+ xvst xr0, a5, 0 -+ xvst xr1, a5, 32 -+ -+ -+ addi.d a5, a5, 64 -+L(lt64): -+ bltu a2, t0, L(lt32) -+ xvld xr0, a1, 0 -+ xvst xr0, a5, 0 -+ -+L(lt32): -+ xvst xr8, a0, 0 -+ xvst xr9, a3, -32 -+ jr ra -+ nop -+ -+L(copy_back): -+ addi.d a3, a3, -1 -+ addi.d a2, a2, -2 -+ andi t2, a3, 0x1f -+ xvld xr8, a1, 0 -+ -+ xvld xr9, a4, -32 -+ sub.d t3, a2, t2 -+ sub.d a5, a3, t2 -+ sub.d a4, a4, t2 -+ -+ -+ andi a2, t3, 0xff -+ beq a2, t3, L(back_lt256) -+ add.d a6, a1, a2 -+ addi.d a6, a6, 2 -+ -+L(back_loop_256): -+ xvld xr0, a4, -33 -+ xvld xr1, a4, -65 -+ xvld xr2, a4, -97 -+ xvld xr3, a4, -129 -+ -+ xvld xr4, a4, -161 -+ xvld xr5, a4, -193 -+ xvld xr6, a4, -225 -+ xvld xr7, a4, -257 -+ -+ addi.d a4, a4, -256 -+ xvst xr0, a5, -32 -+ xvst xr1, a5, -64 -+ xvst xr2, a5, -96 -+ -+ -+ xvst xr3, a5, -128 -+ xvst xr4, a5, -160 -+ xvst xr5, a5, -192 -+ xvst xr6, a5, -224 -+ -+ xvst xr7, a5, -256 -+ addi.d a5, a5, -256 -+ bne a4, a6, L(back_loop_256) -+L(back_lt256): -+ srli.d t2, a2, 7 -+ -+ beqz t2, L(back_lt128) -+ xvld xr0, a4, -33 -+ xvld xr1, a4, -65 -+ xvld xr2, a4, -97 -+ -+ xvld xr3, a4, -129 -+ addi.d a2, a2, -128 -+ addi.d a4, a4, -128 -+ xvst xr0, a5, -32 -+ -+ -+ xvst xr1, a5, -64 -+ xvst xr2, a5, -96 -+ xvst xr3, a5, -128 -+ addi.d a5, a5, -128 -+ -+L(back_lt128): -+ blt a2, t1, L(back_lt64) -+ xvld xr0, a4, -33 -+ xvld xr1, a4, -65 -+ addi.d a2, a2, -64 -+ -+ addi.d a4, a4, -64 -+ xvst xr0, a5, -32 -+ xvst xr1, a5, -64 -+ addi.d a5, a5, -64 -+ -+L(back_lt64): -+ bltu a2, t0, L(back_lt32) -+ xvld xr0, a4, -33 -+ xvst xr0, a5, -32 -+L(back_lt32): -+ xvst xr8, a0, 0 -+ -+ -+ xvst xr9, a3, -31 -+ jr ra -+END(MEMMOVE_NAME) -+ -+libc_hidden_builtin_def (MEMCPY_NAME) -+libc_hidden_builtin_def (MEMMOVE_NAME) -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/memmove-lsx.S b/sysdeps/loongarch/lp64/multiarch/memmove-lsx.S -new file mode 100644 -index 0000000000..9e1502a79b ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/memmove-lsx.S -@@ -0,0 +1,534 @@ -+/* Optimized memmove implementation using Loongarch LSX instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) && !defined __loongarch_soft_float -+ -+# define MEMCPY_NAME __memcpy_lsx -+# define MEMMOVE_NAME __memmove_lsx -+ -+LEAF(MEMCPY_NAME, 6) -+ li.d t6, 16 -+ add.d a3, a0, a2 -+ add.d a4, a1, a2 -+ bgeu t6, a2, L(less_16bytes) -+ -+ li.d t8, 64 -+ li.d t7, 32 -+ bltu t8, a2, L(copy_long) -+ bltu t7, a2, L(more_32bytes) -+ -+ vld vr0, a1, 0 -+ vld vr1, a4, -16 -+ vst vr0, a0, 0 -+ vst vr1, a3, -16 -+ -+ jr ra -+L(more_32bytes): -+ vld vr0, a1, 0 -+ vld vr1, a1, 16 -+ vld vr2, a4, -32 -+ -+ -+ vld vr3, a4, -16 -+ vst vr0, a0, 0 -+ vst vr1, a0, 16 -+ vst vr2, a3, -32 -+ -+ vst vr3, a3, -16 -+ jr ra -+L(less_16bytes): -+ srli.d t0, a2, 3 -+ beqz t0, L(less_8bytes) -+ -+ vldrepl.d vr0, a1, 0 -+ vldrepl.d vr1, a4, -8 -+ vstelm.d vr0, a0, 0, 0 -+ vstelm.d vr1, a3, -8, 0 -+ -+ jr ra -+L(less_8bytes): -+ srli.d t0, a2, 2 -+ beqz t0, L(less_4bytes) -+ vldrepl.w vr0, a1, 0 -+ -+ -+ vldrepl.w vr1, a4, -4 -+ vstelm.w vr0, a0, 0, 0 -+ vstelm.w vr1, a3, -4, 0 -+ jr ra -+ -+L(less_4bytes): -+ srli.d t0, a2, 1 -+ beqz t0, L(less_2bytes) -+ vldrepl.h vr0, a1, 0 -+ vldrepl.h vr1, a4, -2 -+ -+ vstelm.h vr0, a0, 0, 0 -+ vstelm.h vr1, a3, -2, 0 -+ jr ra -+L(less_2bytes): -+ beqz a2, L(less_1bytes) -+ -+ ld.b t0, a1, 0 -+ st.b t0, a0, 0 -+L(less_1bytes): -+ jr ra -+ nop -+END(MEMCPY_NAME) -+ -+LEAF(MEMMOVE_NAME, 6) -+ li.d t6, 16 -+ add.d a3, a0, a2 -+ add.d a4, a1, a2 -+ bgeu t6, a2, L(less_16bytes) -+ -+ li.d t8, 64 -+ li.d t7, 32 -+ bltu t8, a2, L(move_long) -+ bltu t7, a2, L(more_32bytes) -+ -+ vld vr0, a1, 0 -+ vld vr1, a4, -16 -+ vst vr0, a0, 0 -+ vst vr1, a3, -16 -+ -+ jr ra -+ nop -+L(move_long): -+ sub.d t0, a0, a1 -+ bltu t0, a2, L(copy_back) -+ -+ -+L(copy_long): -+ vld vr2, a1, 0 -+ andi t0, a0, 0xf -+ sub.d t0, t6, t0 -+ add.d a1, a1, t0 -+ -+ sub.d a2, a2, t0 -+ andi t1, a1, 0xf -+ bnez t1, L(unaligned) -+ vld vr0, a1, 0 -+ -+ addi.d a2, a2, -16 -+ vst vr2, a0, 0 -+ andi t2, a2, 0x7f -+ add.d a5, a0, t0 -+ -+ beq a2, t2, L(al_less_128) -+ sub.d t3, a2, t2 -+ move a2, t2 -+ add.d a6, a1, t3 -+ -+ -+L(al_loop): -+ vld vr1, a1, 16 -+ vld vr2, a1, 32 -+ vld vr3, a1, 48 -+ vld vr4, a1, 64 -+ -+ vld vr5, a1, 80 -+ vld vr6, a1, 96 -+ vld vr7, a1, 112 -+ vst vr0, a5, 0 -+ -+ vld vr0, a1, 128 -+ addi.d a1, a1, 128 -+ vst vr1, a5, 16 -+ vst vr2, a5, 32 -+ -+ vst vr3, a5, 48 -+ vst vr4, a5, 64 -+ vst vr5, a5, 80 -+ vst vr6, a5, 96 -+ -+ -+ vst vr7, a5, 112 -+ addi.d a5, a5, 128 -+ bne a1, a6, L(al_loop) -+L(al_less_128): -+ blt a2, t8, L(al_less_64) -+ -+ vld vr1, a1, 16 -+ vld vr2, a1, 32 -+ vld vr3, a1, 48 -+ addi.d a2, a2, -64 -+ -+ vst vr0, a5, 0 -+ vld vr0, a1, 64 -+ addi.d a1, a1, 64 -+ vst vr1, a5, 16 -+ -+ vst vr2, a5, 32 -+ vst vr3, a5, 48 -+ addi.d a5, a5, 64 -+L(al_less_64): -+ blt a2, t7, L(al_less_32) -+ -+ -+ vld vr1, a1, 16 -+ addi.d a2, a2, -32 -+ vst vr0, a5, 0 -+ vld vr0, a1, 32 -+ -+ addi.d a1, a1, 32 -+ vst vr1, a5, 16 -+ addi.d a5, a5, 32 -+L(al_less_32): -+ blt a2, t6, L(al_less_16) -+ -+ vst vr0, a5, 0 -+ vld vr0, a1, 16 -+ addi.d a5, a5, 16 -+L(al_less_16): -+ vld vr1, a4, -16 -+ -+ vst vr0, a5, 0 -+ vst vr1, a3, -16 -+ jr ra -+ nop -+ -+ -+L(magic_num): -+ .dword 0x0706050403020100 -+ .dword 0x0f0e0d0c0b0a0908 -+L(unaligned): -+ pcaddi t2, -4 -+ bstrins.d a1, zero, 3, 0 -+ vld vr8, t2, 0 -+ vld vr0, a1, 0 -+ -+ vld vr1, a1, 16 -+ addi.d a2, a2, -16 -+ vst vr2, a0, 0 -+ add.d a5, a0, t0 -+ -+ vreplgr2vr.b vr9, t1 -+ andi t2, a2, 0x7f -+ vadd.b vr9, vr9, vr8 -+ addi.d a1, a1, 32 -+ -+ -+ beq t2, a2, L(un_less_128) -+ sub.d t3, a2, t2 -+ move a2, t2 -+ add.d a6, a1, t3 -+ -+L(un_loop): -+ vld vr2, a1, 0 -+ vld vr3, a1, 16 -+ vld vr4, a1, 32 -+ vld vr5, a1, 48 -+ -+ vld vr6, a1, 64 -+ vld vr7, a1, 80 -+ vshuf.b vr8, vr1, vr0, vr9 -+ vld vr0, a1, 96 -+ -+ vst vr8, a5, 0 -+ vshuf.b vr8, vr2, vr1, vr9 -+ vld vr1, a1, 112 -+ vst vr8, a5, 16 -+ -+ -+ addi.d a1, a1, 128 -+ vshuf.b vr2, vr3, vr2, vr9 -+ vshuf.b vr3, vr4, vr3, vr9 -+ vst vr2, a5, 32 -+ -+ vshuf.b vr4, vr5, vr4, vr9 -+ vst vr3, a5, 48 -+ vshuf.b vr5, vr6, vr5, vr9 -+ vst vr4, a5, 64 -+ -+ vshuf.b vr6, vr7, vr6, vr9 -+ vst vr5, a5, 80 -+ vshuf.b vr7, vr0, vr7, vr9 -+ vst vr6, a5, 96 -+ -+ vst vr7, a5, 112 -+ addi.d a5, a5, 128 -+ bne a1, a6, L(un_loop) -+L(un_less_128): -+ blt a2, t8, L(un_less_64) -+ -+ -+ vld vr2, a1, 0 -+ vld vr3, a1, 16 -+ vshuf.b vr4, vr1, vr0, vr9 -+ vld vr0, a1, 32 -+ -+ vst vr4, a5, 0 -+ addi.d a2, a2, -64 -+ vshuf.b vr4, vr2, vr1, vr9 -+ vld vr1, a1, 48 -+ -+ addi.d a1, a1, 64 -+ vst vr4, a5, 16 -+ vshuf.b vr2, vr3, vr2, vr9 -+ vshuf.b vr3, vr0, vr3, vr9 -+ -+ vst vr2, a5, 32 -+ vst vr3, a5, 48 -+ addi.d a5, a5, 64 -+L(un_less_64): -+ blt a2, t7, L(un_less_32) -+ -+ -+ vshuf.b vr3, vr1, vr0, vr9 -+ vld vr0, a1, 0 -+ vst vr3, a5, 0 -+ addi.d a2, a2, -32 -+ -+ vshuf.b vr3, vr0, vr1, vr9 -+ vld vr1, a1, 16 -+ addi.d a1, a1, 32 -+ vst vr3, a5, 16 -+ -+ addi.d a5, a5, 32 -+L(un_less_32): -+ blt a2, t6, L(un_less_16) -+ vshuf.b vr2, vr1, vr0, vr9 -+ vor.v vr0, vr1, vr1 -+ -+ vld vr1, a1, 0 -+ vst vr2, a5, 0 -+ addi.d a5, a5, 16 -+L(un_less_16): -+ vld vr2, a4, -16 -+ -+ -+ vshuf.b vr0, vr1, vr0, vr9 -+ vst vr0, a5, 0 -+ vst vr2, a3, -16 -+ jr ra -+ -+L(copy_back): -+ addi.d t0, a3, -1 -+ vld vr2, a4, -16 -+ andi t0, t0, 0xf -+ addi.d t0, t0, 1 -+ -+ sub.d a4, a4, t0 -+ sub.d a2, a2, t0 -+ andi t1, a4, 0xf -+ bnez t1, L(back_unaligned) -+ -+ vld vr0, a4, -16 -+ addi.d a2, a2, -16 -+ vst vr2, a3, -16 -+ andi t2, a2, 0x7f -+ -+ -+ sub.d a3, a3, t0 -+ beq t2, a2, L(back_al_less_128) -+ sub.d t3, a2, t2 -+ move a2, t2 -+ -+ sub.d a6, a4, t3 -+L(back_al_loop): -+ vld vr1, a4, -32 -+ vld vr2, a4, -48 -+ vld vr3, a4, -64 -+ -+ vld vr4, a4, -80 -+ vld vr5, a4, -96 -+ vld vr6, a4, -112 -+ vld vr7, a4, -128 -+ -+ vst vr0, a3, -16 -+ vld vr0, a4, -144 -+ addi.d a4, a4, -128 -+ vst vr1, a3, -32 -+ -+ -+ vst vr2, a3, -48 -+ vst vr3, a3, -64 -+ vst vr4, a3, -80 -+ vst vr5, a3, -96 -+ -+ vst vr6, a3, -112 -+ vst vr7, a3, -128 -+ addi.d a3, a3, -128 -+ bne a4, a6, L(back_al_loop) -+ -+L(back_al_less_128): -+ blt a2, t8, L(back_al_less_64) -+ vld vr1, a4, -32 -+ vld vr2, a4, -48 -+ vld vr3, a4, -64 -+ -+ addi.d a2, a2, -64 -+ vst vr0, a3, -16 -+ vld vr0, a4, -80 -+ addi.d a4, a4, -64 -+ -+ -+ vst vr1, a3, -32 -+ vst vr2, a3, -48 -+ vst vr3, a3, -64 -+ addi.d a3, a3, -64 -+ -+L(back_al_less_64): -+ blt a2, t7, L(back_al_less_32) -+ vld vr1, a4, -32 -+ addi.d a2, a2, -32 -+ vst vr0, a3, -16 -+ -+ vld vr0, a4, -48 -+ vst vr1, a3, -32 -+ addi.d a3, a3, -32 -+ addi.d a4, a4, -32 -+ -+L(back_al_less_32): -+ blt a2, t6, L(back_al_less_16) -+ vst vr0, a3, -16 -+ vld vr0, a4, -32 -+ addi.d a3, a3, -16 -+ -+ -+L(back_al_less_16): -+ vld vr1, a1, 0 -+ vst vr0, a3, -16 -+ vst vr1, a0, 0 -+ jr ra -+ -+L(magic_num_2): -+ .dword 0x0706050403020100 -+ .dword 0x0f0e0d0c0b0a0908 -+L(back_unaligned): -+ pcaddi t2, -4 -+ bstrins.d a4, zero, 3, 0 -+ vld vr8, t2, 0 -+ vld vr0, a4, 0 -+ -+ vld vr1, a4, -16 -+ addi.d a2, a2, -16 -+ vst vr2, a3, -16 -+ sub.d a3, a3, t0 -+ -+ -+ vreplgr2vr.b vr9, t1 -+ andi t2, a2, 0x7f -+ vadd.b vr9, vr9, vr8 -+ addi.d a4, a4, -16 -+ -+ beq t2, a2, L(back_un_less_128) -+ sub.d t3, a2, t2 -+ move a2, t2 -+ sub.d a6, a4, t3 -+ -+L(back_un_loop): -+ vld vr2, a4, -16 -+ vld vr3, a4, -32 -+ vld vr4, a4, -48 -+ -+ vld vr5, a4, -64 -+ vld vr6, a4, -80 -+ vld vr7, a4, -96 -+ vshuf.b vr8, vr0, vr1, vr9 -+ -+ -+ vld vr0, a4, -112 -+ vst vr8, a3, -16 -+ vshuf.b vr8, vr1, vr2, vr9 -+ vld vr1, a4, -128 -+ -+ vst vr8, a3, -32 -+ addi.d a4, a4, -128 -+ vshuf.b vr2, vr2, vr3, vr9 -+ vshuf.b vr3, vr3, vr4, vr9 -+ -+ vst vr2, a3, -48 -+ vshuf.b vr4, vr4, vr5, vr9 -+ vst vr3, a3, -64 -+ vshuf.b vr5, vr5, vr6, vr9 -+ -+ vst vr4, a3, -80 -+ vshuf.b vr6, vr6, vr7, vr9 -+ vst vr5, a3, -96 -+ vshuf.b vr7, vr7, vr0, vr9 -+ -+ -+ vst vr6, a3, -112 -+ vst vr7, a3, -128 -+ addi.d a3, a3, -128 -+ bne a4, a6, L(back_un_loop) -+ -+L(back_un_less_128): -+ blt a2, t8, L(back_un_less_64) -+ vld vr2, a4, -16 -+ vld vr3, a4, -32 -+ vshuf.b vr4, vr0, vr1, vr9 -+ -+ vld vr0, a4, -48 -+ vst vr4, a3, -16 -+ addi.d a2, a2, -64 -+ vshuf.b vr4, vr1, vr2, vr9 -+ -+ vld vr1, a4, -64 -+ addi.d a4, a4, -64 -+ vst vr4, a3, -32 -+ vshuf.b vr2, vr2, vr3, vr9 -+ -+ -+ vshuf.b vr3, vr3, vr0, vr9 -+ vst vr2, a3, -48 -+ vst vr3, a3, -64 -+ addi.d a3, a3, -64 -+ -+L(back_un_less_64): -+ blt a2, t7, L(back_un_less_32) -+ vshuf.b vr3, vr0, vr1, vr9 -+ vld vr0, a4, -16 -+ vst vr3, a3, -16 -+ -+ addi.d a2, a2, -32 -+ vshuf.b vr3, vr1, vr0, vr9 -+ vld vr1, a4, -32 -+ addi.d a4, a4, -32 -+ -+ vst vr3, a3, -32 -+ addi.d a3, a3, -32 -+L(back_un_less_32): -+ blt a2, t6, L(back_un_less_16) -+ vshuf.b vr2, vr0, vr1, vr9 -+ -+ -+ vor.v vr0, vr1, vr1 -+ vld vr1, a4, -16 -+ vst vr2, a3, -16 -+ addi.d a3, a3, -16 -+ -+L(back_un_less_16): -+ vld vr2, a1, 0 -+ vshuf.b vr0, vr0, vr1, vr9 -+ vst vr0, a3, -16 -+ vst vr2, a0, 0 -+ -+ jr ra -+END(MEMMOVE_NAME) -+ -+libc_hidden_builtin_def (MEMCPY_NAME) -+libc_hidden_builtin_def (MEMMOVE_NAME) -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/memmove-unaligned.S b/sysdeps/loongarch/lp64/multiarch/memmove-unaligned.S -new file mode 100644 -index 0000000000..90a64b6bb9 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/memmove-unaligned.S -@@ -0,0 +1,380 @@ -+/* Optimized memmove_unaligned implementation using basic Loongarch instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) -+ -+# define MEMMOVE_NAME __memmove_unaligned -+ -+# define LD_64(reg, n) \ -+ ld.d t0, reg, n; \ -+ ld.d t1, reg, n + 8; \ -+ ld.d t2, reg, n + 16; \ -+ ld.d t3, reg, n + 24; \ -+ ld.d t4, reg, n + 32; \ -+ ld.d t5, reg, n + 40; \ -+ ld.d t6, reg, n + 48; \ -+ ld.d t7, reg, n + 56; -+ -+# define ST_64(reg, n) \ -+ st.d t0, reg, n; \ -+ st.d t1, reg, n + 8; \ -+ st.d t2, reg, n + 16; \ -+ st.d t3, reg, n + 24; \ -+ st.d t4, reg, n + 32; \ -+ st.d t5, reg, n + 40; \ -+ st.d t6, reg, n + 48; \ -+ st.d t7, reg, n + 56; -+ -+LEAF(MEMMOVE_NAME, 3) -+ add.d a4, a1, a2 -+ add.d a3, a0, a2 -+ beq a1, a0, L(less_1bytes) -+ move t8, a0 -+ -+ srai.d a6, a2, 4 -+ beqz a6, L(less_16bytes) -+ srai.d a6, a2, 6 -+ bnez a6, L(more_64bytes) -+ srai.d a6, a2, 5 -+ beqz a6, L(less_32bytes) -+ -+ ld.d t0, a1, 0 -+ ld.d t1, a1, 8 -+ ld.d t2, a1, 16 -+ ld.d t3, a1, 24 -+ -+ ld.d t4, a4, -32 -+ ld.d t5, a4, -24 -+ ld.d t6, a4, -16 -+ ld.d t7, a4, -8 -+ -+ st.d t0, a0, 0 -+ st.d t1, a0, 8 -+ st.d t2, a0, 16 -+ st.d t3, a0, 24 -+ -+ st.d t4, a3, -32 -+ st.d t5, a3, -24 -+ st.d t6, a3, -16 -+ st.d t7, a3, -8 -+ -+ jr ra -+ -+L(less_32bytes): -+ ld.d t0, a1, 0 -+ ld.d t1, a1, 8 -+ ld.d t2, a4, -16 -+ ld.d t3, a4, -8 -+ -+ st.d t0, a0, 0 -+ st.d t1, a0, 8 -+ st.d t2, a3, -16 -+ st.d t3, a3, -8 -+ -+ jr ra -+ -+L(less_16bytes): -+ srai.d a6, a2, 3 -+ beqz a6, L(less_8bytes) -+ -+ ld.d t0, a1, 0 -+ ld.d t1, a4, -8 -+ st.d t0, a0, 0 -+ st.d t1, a3, -8 -+ -+ jr ra -+ -+L(less_8bytes): -+ srai.d a6, a2, 2 -+ beqz a6, L(less_4bytes) -+ -+ ld.w t0, a1, 0 -+ ld.w t1, a4, -4 -+ st.w t0, a0, 0 -+ st.w t1, a3, -4 -+ -+ jr ra -+ -+L(less_4bytes): -+ srai.d a6, a2, 1 -+ beqz a6, L(less_2bytes) -+ -+ ld.h t0, a1, 0 -+ ld.h t1, a4, -2 -+ st.h t0, a0, 0 -+ st.h t1, a3, -2 -+ -+ jr ra -+ -+L(less_2bytes): -+ beqz a2, L(less_1bytes) -+ -+ ld.b t0, a1, 0 -+ st.b t0, a0, 0 -+ -+ jr ra -+ -+L(less_1bytes): -+ jr ra -+ -+L(more_64bytes): -+ sub.d a7, a0, a1 -+ bltu a7, a2, L(copy_backward) -+ -+L(copy_forward): -+ srli.d a0, a0, 3 -+ slli.d a0, a0, 3 -+ beq a0, t8, L(all_align) -+ addi.d a0, a0, 0x8 -+ sub.d a7, t8, a0 -+ sub.d a1, a1, a7 -+ add.d a2, a7, a2 -+ -+L(start_unalign_proc): -+ pcaddi t1, 18 -+ slli.d a6, a7, 3 -+ add.d t1, t1, a6 -+ jr t1 -+ -+ ld.b t0, a1, -7 -+ st.b t0, a0, -7 -+ ld.b t0, a1, -6 -+ st.b t0, a0, -6 -+ ld.b t0, a1, -5 -+ st.b t0, a0, -5 -+ ld.b t0, a1, -4 -+ st.b t0, a0, -4 -+ ld.b t0, a1, -3 -+ st.b t0, a0, -3 -+ ld.b t0, a1, -2 -+ st.b t0, a0, -2 -+ ld.b t0, a1, -1 -+ st.b t0, a0, -1 -+L(start_over): -+ -+ addi.d a2, a2, -0x80 -+ blt a2, zero, L(end_unalign_proc) -+ -+L(loop_less): -+ LD_64(a1, 0) -+ ST_64(a0, 0) -+ LD_64(a1, 64) -+ ST_64(a0, 64) -+ -+ addi.d a0, a0, 0x80 -+ addi.d a1, a1, 0x80 -+ addi.d a2, a2, -0x80 -+ bge a2, zero, L(loop_less) -+ -+L(end_unalign_proc): -+ addi.d a2, a2, 0x80 -+ -+ pcaddi t1, 36 -+ andi t2, a2, 0x78 -+ add.d a1, a1, t2 -+ add.d a0, a0, t2 -+ sub.d t1, t1, t2 -+ jr t1 -+ -+ ld.d t0, a1, -120 -+ st.d t0, a0, -120 -+ ld.d t0, a1, -112 -+ st.d t0, a0, -112 -+ ld.d t0, a1, -104 -+ st.d t0, a0, -104 -+ ld.d t0, a1, -96 -+ st.d t0, a0, -96 -+ ld.d t0, a1, -88 -+ st.d t0, a0, -88 -+ ld.d t0, a1, -80 -+ st.d t0, a0, -80 -+ ld.d t0, a1, -72 -+ st.d t0, a0, -72 -+ ld.d t0, a1, -64 -+ st.d t0, a0, -64 -+ ld.d t0, a1, -56 -+ st.d t0, a0, -56 -+ ld.d t0, a1, -48 -+ st.d t0, a0, -48 -+ ld.d t0, a1, -40 -+ st.d t0, a0, -40 -+ ld.d t0, a1, -32 -+ st.d t0, a0, -32 -+ ld.d t0, a1, -24 -+ st.d t0, a0, -24 -+ ld.d t0, a1, -16 -+ st.d t0, a0, -16 -+ ld.d t0, a1, -8 -+ st.d t0, a0, -8 -+ -+ andi a2, a2, 0x7 -+ pcaddi t1, 18 -+ slli.d a2, a2, 3 -+ sub.d t1, t1, a2 -+ jr t1 -+ -+ ld.b t0, a4, -7 -+ st.b t0, a3, -7 -+ ld.b t0, a4, -6 -+ st.b t0, a3, -6 -+ ld.b t0, a4, -5 -+ st.b t0, a3, -5 -+ ld.b t0, a4, -4 -+ st.b t0, a3, -4 -+ ld.b t0, a4, -3 -+ st.b t0, a3, -3 -+ ld.b t0, a4, -2 -+ st.b t0, a3, -2 -+ ld.b t0, a4, -1 -+ st.b t0, a3, -1 -+L(end): -+ move a0, t8 -+ jr ra -+ -+L(all_align): -+ addi.d a1, a1, 0x8 -+ addi.d a0, a0, 0x8 -+ ld.d t0, a1, -8 -+ st.d t0, a0, -8 -+ addi.d a2, a2, -8 -+ b L(start_over) -+ -+L(all_align_back): -+ addi.d a4, a4, -0x8 -+ addi.d a3, a3, -0x8 -+ ld.d t0, a4, 0 -+ st.d t0, a3, 0 -+ addi.d a2, a2, -8 -+ b L(start_over_back) -+ -+L(copy_backward): -+ move a5, a3 -+ srli.d a3, a3, 3 -+ slli.d a3, a3, 3 -+ beq a3, a5, L(all_align_back) -+ sub.d a7, a3, a5 -+ add.d a4, a4, a7 -+ add.d a2, a7, a2 -+ -+ pcaddi t1, 18 -+ slli.d a6, a7, 3 -+ add.d t1, t1, a6 -+ jr t1 -+ -+ ld.b t0, a4, 6 -+ st.b t0, a3, 6 -+ ld.b t0, a4, 5 -+ st.b t0, a3, 5 -+ ld.b t0, a4, 4 -+ st.b t0, a3, 4 -+ ld.b t0, a4, 3 -+ st.b t0, a3, 3 -+ ld.b t0, a4, 2 -+ st.b t0, a3, 2 -+ ld.b t0, a4, 1 -+ st.b t0, a3, 1 -+ ld.b t0, a4, 0 -+ st.b t0, a3, 0 -+L(start_over_back): -+ addi.d a2, a2, -0x80 -+ blt a2, zero, L(end_unalign_proc_back) -+ -+L(loop_less_back): -+ LD_64(a4, -64) -+ ST_64(a3, -64) -+ LD_64(a4, -128) -+ ST_64(a3, -128) -+ -+ addi.d a4, a4, -0x80 -+ addi.d a3, a3, -0x80 -+ addi.d a2, a2, -0x80 -+ bge a2, zero, L(loop_less_back) -+ -+L(end_unalign_proc_back): -+ addi.d a2, a2, 0x80 -+ -+ pcaddi t1, 36 -+ andi t2, a2, 0x78 -+ sub.d a4, a4, t2 -+ sub.d a3, a3, t2 -+ sub.d t1, t1, t2 -+ jr t1 -+ -+ ld.d t0, a4, 112 -+ st.d t0, a3, 112 -+ ld.d t0, a4, 104 -+ st.d t0, a3, 104 -+ ld.d t0, a4, 96 -+ st.d t0, a3, 96 -+ ld.d t0, a4, 88 -+ st.d t0, a3, 88 -+ ld.d t0, a4, 80 -+ st.d t0, a3, 80 -+ ld.d t0, a4, 72 -+ st.d t0, a3, 72 -+ ld.d t0, a4, 64 -+ st.d t0, a3, 64 -+ ld.d t0, a4, 56 -+ st.d t0, a3, 56 -+ ld.d t0, a4, 48 -+ st.d t0, a3, 48 -+ ld.d t0, a4, 40 -+ st.d t0, a3, 40 -+ ld.d t0, a4, 32 -+ st.d t0, a3, 32 -+ ld.d t0, a4, 24 -+ st.d t0, a3, 24 -+ ld.d t0, a4, 16 -+ st.d t0, a3, 16 -+ ld.d t0, a4, 8 -+ st.d t0, a3, 8 -+ ld.d t0, a4, 0 -+ st.d t0, a3, 0 -+ -+ andi a2, a2, 0x7 -+ pcaddi t1, 18 -+ slli.d a2, a2, 3 -+ sub.d t1, t1, a2 -+ jr t1 -+ -+ ld.b t0, a1, 6 -+ st.b t0, a0, 6 -+ ld.b t0, a1, 5 -+ st.b t0, a0, 5 -+ ld.b t0, a1, 4 -+ st.b t0, a0, 4 -+ ld.b t0, a1, 3 -+ st.b t0, a0, 3 -+ ld.b t0, a1, 2 -+ st.b t0, a0, 2 -+ ld.b t0, a1, 1 -+ st.b t0, a0, 1 -+ ld.b t0, a1, 0 -+ st.b t0, a0, 0 -+ -+ move a0, t8 -+ jr ra -+END(MEMMOVE_NAME) -+ -+libc_hidden_builtin_def (MEMMOVE_NAME) -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/memmove.c b/sysdeps/loongarch/lp64/multiarch/memmove.c -new file mode 100644 -index 0000000000..7e3ca4c47b ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/memmove.c -@@ -0,0 +1,38 @@ -+/* Multiple versions of memmove. -+ All versions must be listed in ifunc-impl-list.c. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+/* Define multiple versions only for the definition in libc. */ -+#if IS_IN (libc) -+# define memmove __redirect_memmove -+# include -+# undef memmove -+ -+# define SYMBOL_NAME memmove -+# include "ifunc-lasx.h" -+ -+libc_ifunc_redirected (__redirect_memmove, __libc_memmove, -+ IFUNC_SELECTOR ()); -+strong_alias (__libc_memmove, memmove); -+ -+# ifdef SHARED -+__hidden_ver1 (__libc_memmove, __GI_memmove, __redirect_memmove) -+ __attribute__ ((visibility ("hidden"))); -+# endif -+ -+#endif --- -2.45.0 - diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0011-LoongArch-Add-ifunc-support-for-strnlen-aligned-lsx-.patch b/runtime-optenv32/glibc+32/autobuild/patches/0011-LoongArch-Add-ifunc-support-for-strnlen-aligned-lsx-.patch deleted file mode 100644 index 0b5940fc1a5..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0011-LoongArch-Add-ifunc-support-for-strnlen-aligned-lsx-.patch +++ /dev/null @@ -1,462 +0,0 @@ -From 057f0a9f30f6761358dbc87473d74f700f7c65e9 Mon Sep 17 00:00:00 2001 -From: dengjianbo -Date: Thu, 24 Aug 2023 16:50:17 +0800 -Subject: [PATCH 11/32] LoongArch: Add ifunc support for strnlen{aligned, lsx, - lasx} - -Based on the glibc microbenchmark, strnlen-aligned implementation could -reduce the runtime more than 10%, strnlen-lsx implementation could reduce -the runtime about 50%-78%, strnlen-lasx implementation could reduce the -runtime about 50%-88%. ---- - sysdeps/loongarch/lp64/multiarch/Makefile | 3 + - .../lp64/multiarch/ifunc-impl-list.c | 8 ++ - .../loongarch/lp64/multiarch/ifunc-strnlen.h | 41 +++++++ - .../lp64/multiarch/strnlen-aligned.S | 102 ++++++++++++++++++ - .../loongarch/lp64/multiarch/strnlen-lasx.S | 100 +++++++++++++++++ - .../loongarch/lp64/multiarch/strnlen-lsx.S | 89 +++++++++++++++ - sysdeps/loongarch/lp64/multiarch/strnlen.c | 39 +++++++ - 7 files changed, 382 insertions(+) - create mode 100644 sysdeps/loongarch/lp64/multiarch/ifunc-strnlen.h - create mode 100644 sysdeps/loongarch/lp64/multiarch/strnlen-aligned.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/strnlen-lasx.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/strnlen-lsx.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/strnlen.c - -diff --git a/sysdeps/loongarch/lp64/multiarch/Makefile b/sysdeps/loongarch/lp64/multiarch/Makefile -index afa5104174..c4dd3143d1 100644 ---- a/sysdeps/loongarch/lp64/multiarch/Makefile -+++ b/sysdeps/loongarch/lp64/multiarch/Makefile -@@ -3,6 +3,9 @@ sysdep_routines += \ - strlen-aligned \ - strlen-lsx \ - strlen-lasx \ -+ strnlen-aligned \ -+ strnlen-lsx \ -+ strnlen-lasx \ - strchr-aligned \ - strchr-lsx \ - strchr-lasx \ -diff --git a/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c b/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -index 25eb96b061..7cec0b7724 100644 ---- a/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -+++ b/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -@@ -38,6 +38,14 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array, - IFUNC_IMPL_ADD (array, i, strlen, 1, __strlen_aligned) - ) - -+ IFUNC_IMPL (i, name, strnlen, -+#if !defined __loongarch_soft_float -+ IFUNC_IMPL_ADD (array, i, strnlen, SUPPORT_LASX, __strnlen_lasx) -+ IFUNC_IMPL_ADD (array, i, strnlen, SUPPORT_LSX, __strnlen_lsx) -+#endif -+ IFUNC_IMPL_ADD (array, i, strnlen, 1, __strnlen_aligned) -+ ) -+ - IFUNC_IMPL (i, name, strchr, - #if !defined __loongarch_soft_float - IFUNC_IMPL_ADD (array, i, strchr, SUPPORT_LASX, __strchr_lasx) -diff --git a/sysdeps/loongarch/lp64/multiarch/ifunc-strnlen.h b/sysdeps/loongarch/lp64/multiarch/ifunc-strnlen.h -new file mode 100644 -index 0000000000..5cf8981021 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/ifunc-strnlen.h -@@ -0,0 +1,41 @@ -+/* Common definition for strnlen ifunc selections. -+ All versions must be listed in ifunc-impl-list.c. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#include -+#include -+ -+#if !defined __loongarch_soft_float -+extern __typeof (REDIRECT_NAME) OPTIMIZE (lasx) attribute_hidden; -+extern __typeof (REDIRECT_NAME) OPTIMIZE (lsx) attribute_hidden; -+#endif -+ -+extern __typeof (REDIRECT_NAME) OPTIMIZE (aligned) attribute_hidden; -+ -+static inline void * -+IFUNC_SELECTOR (void) -+{ -+#if !defined __loongarch_soft_float -+ if (SUPPORT_LASX) -+ return OPTIMIZE (lasx); -+ else if (SUPPORT_LSX) -+ return OPTIMIZE (lsx); -+ else -+#endif -+ return OPTIMIZE (aligned); -+} -diff --git a/sysdeps/loongarch/lp64/multiarch/strnlen-aligned.S b/sysdeps/loongarch/lp64/multiarch/strnlen-aligned.S -new file mode 100644 -index 0000000000..b900430a5d ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/strnlen-aligned.S -@@ -0,0 +1,102 @@ -+/* Optimized strnlen implementation using basic Loongarch instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) -+# define STRNLEN __strnlen_aligned -+#else -+# define STRNLEN __strnlen -+#endif -+ -+LEAF(STRNLEN, 6) -+ beqz a1, L(out) -+ lu12i.w a2, 0x01010 -+ andi t1, a0, 0x7 -+ move t4, a0 -+ -+ bstrins.d a0, zero, 2, 0 -+ ori a2, a2, 0x101 -+ li.w t0, -1 -+ ld.d t2, a0, 0 -+ -+ slli.d t3, t1, 3 -+ bstrins.d a2, a2, 63, 32 -+ li.w t5, 8 -+ slli.d a3, a2, 7 -+ -+ sub.w t1, t5, t1 -+ sll.d t0, t0, t3 -+ orn t2, t2, t0 -+ sub.d t0, t2, a2 -+ -+ -+ andn t3, a3, t2 -+ and t0, t0, t3 -+ bnez t0, L(count_pos) -+ sub.d t5, a1, t1 -+ -+ bgeu t1, a1, L(out) -+ addi.d a0, a0, 8 -+L(loop): -+ ld.d t2, a0, 0 -+ sub.d t0, t2, a2 -+ -+ andn t1, a3, t2 -+ sltui t6, t5, 9 -+ and t0, t0, t1 -+ or t7, t0, t6 -+ -+ bnez t7, L(count_pos) -+ ld.d t2, a0, 8 -+ addi.d a0, a0, 16 -+ sub.d t0, t2, a2 -+ -+ -+ andn t1, a3, t2 -+ sltui t6, t5, 17 -+ and t0, t0, t1 -+ addi.d t5, t5, -16 -+ -+ or t7, t0, t6 -+ beqz t7, L(loop) -+ addi.d a0, a0, -8 -+L(count_pos): -+ ctz.d t1, t0 -+ -+ sub.d a0, a0, t4 -+ srli.d t1, t1, 3 -+ add.d a0, t1, a0 -+ sltu t0, a0, a1 -+ -+ masknez t1, a1, t0 -+ maskeqz a0, a0, t0 -+ or a0, a0, t1 -+ jr ra -+ -+ -+L(out): -+ move a0, a1 -+ jr ra -+END(STRNLEN) -+ -+weak_alias (STRNLEN, strnlen) -+libc_hidden_builtin_def (STRNLEN) -diff --git a/sysdeps/loongarch/lp64/multiarch/strnlen-lasx.S b/sysdeps/loongarch/lp64/multiarch/strnlen-lasx.S -new file mode 100644 -index 0000000000..2c03d3d9b4 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/strnlen-lasx.S -@@ -0,0 +1,100 @@ -+/* Optimized strnlen implementation using loongarch LASX instructions -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) && !defined __loongarch_soft_float -+ -+# define STRNLEN __strnlen_lasx -+ -+LEAF(STRNLEN, 6) -+ beqz a1, L(ret0) -+ andi t1, a0, 0x3f -+ li.d t3, 65 -+ sub.d a2, a0, t1 -+ -+ xvld xr0, a2, 0 -+ xvld xr1, a2, 32 -+ sub.d t1, t3, t1 -+ move a3, a0 -+ -+ sltu t1, a1, t1 -+ xvmsknz.b xr0, xr0 -+ xvmsknz.b xr1, xr1 -+ xvpickve.w xr2, xr0, 4 -+ -+ xvpickve.w xr3, xr1, 4 -+ vilvl.h vr0, vr2, vr0 -+ vilvl.h vr1, vr3, vr1 -+ vilvl.w vr0, vr1, vr0 -+ -+ -+ movfr2gr.d t0, fa0 -+ sra.d t0, t0, a0 -+ orn t1, t1, t0 -+ bnez t1, L(end) -+ -+ add.d a4, a0, a1 -+ move a0, a2 -+ addi.d a4, a4, -1 -+ bstrins.d a4, zero, 5, 0 -+ -+L(loop): -+ xvld xr0, a0, 64 -+ xvld xr1, a0, 96 -+ addi.d a0, a0, 64 -+ beq a0, a4, L(out) -+ -+ xvmin.bu xr2, xr0, xr1 -+ xvsetanyeqz.b fcc0, xr2 -+ bceqz fcc0, L(loop) -+L(out): -+ xvmsknz.b xr0, xr0 -+ -+ -+ xvmsknz.b xr1, xr1 -+ xvpickve.w xr2, xr0, 4 -+ xvpickve.w xr3, xr1, 4 -+ vilvl.h vr0, vr2, vr0 -+ -+ vilvl.h vr1, vr3, vr1 -+ vilvl.w vr0, vr1, vr0 -+ movfr2gr.d t0, fa0 -+L(end): -+ sub.d a0, a0, a3 -+ -+ cto.d t0, t0 -+ add.d a0, a0, t0 -+ sltu t1, a0, a1 -+ masknez t0, a1, t1 -+ -+ maskeqz t1, a0, t1 -+ or a0, t0, t1 -+ jr ra -+L(ret0): -+ move a0, zero -+ -+ -+ jr ra -+END(STRNLEN) -+ -+libc_hidden_def (STRNLEN) -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/strnlen-lsx.S b/sysdeps/loongarch/lp64/multiarch/strnlen-lsx.S -new file mode 100644 -index 0000000000..b769a89584 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/strnlen-lsx.S -@@ -0,0 +1,89 @@ -+/* Optimized strnlen implementation using loongarch LSX instructions -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) && !defined __loongarch_soft_float -+ -+# define STRNLEN __strnlen_lsx -+ -+LEAF(STRNLEN, 6) -+ beqz a1, L(ret0) -+ andi t1, a0, 0x1f -+ li.d t3, 33 -+ sub.d a2, a0, t1 -+ -+ vld vr0, a2, 0 -+ vld vr1, a2, 16 -+ sub.d t1, t3, t1 -+ move a3, a0 -+ -+ sltu t1, a1, t1 -+ vmsknz.b vr0, vr0 -+ vmsknz.b vr1, vr1 -+ vilvl.h vr0, vr1, vr0 -+ -+ movfr2gr.s t0, fa0 -+ sra.w t0, t0, a0 -+ orn t1, t1, t0 -+ bnez t1, L(end) -+ -+ -+ add.d a4, a0, a1 -+ move a0, a2 -+ addi.d a4, a4, -1 -+ bstrins.d a4, zero, 4, 0 -+ -+L(loop): -+ vld vr0, a0, 32 -+ vld vr1, a0, 48 -+ addi.d a0, a0, 32 -+ beq a0, a4, L(out) -+ -+ vmin.bu vr2, vr0, vr1 -+ vsetanyeqz.b fcc0, vr2 -+ bceqz fcc0, L(loop) -+L(out): -+ vmsknz.b vr0, vr0 -+ -+ vmsknz.b vr1, vr1 -+ vilvl.h vr0, vr1, vr0 -+ movfr2gr.s t0, fa0 -+L(end): -+ sub.d a0, a0, a3 -+ -+ -+ cto.w t0, t0 -+ add.d a0, a0, t0 -+ sltu t1, a0, a1 -+ masknez t0, a1, t1 -+ -+ maskeqz t1, a0, t1 -+ or a0, t0, t1 -+ jr ra -+L(ret0): -+ move a0, zero -+ -+ jr ra -+END(STRNLEN) -+ -+libc_hidden_builtin_def (STRNLEN) -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/strnlen.c b/sysdeps/loongarch/lp64/multiarch/strnlen.c -new file mode 100644 -index 0000000000..38b7a25a7a ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/strnlen.c -@@ -0,0 +1,39 @@ -+/* Multiple versions of strnlen. -+ All versions must be listed in ifunc-impl-list.c. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+/* Define multiple versions only for the definition in libc. */ -+#if IS_IN (libc) -+# define strnlen __redirect_strnlen -+# define __strnlen __redirect___strnlen -+# include -+# undef __strnlen -+# undef strnlen -+ -+# define SYMBOL_NAME strnlen -+# include "ifunc-strnlen.h" -+ -+libc_ifunc_redirected (__redirect_strnlen, __strnlen, IFUNC_SELECTOR ()); -+weak_alias (__strnlen, strnlen); -+# ifdef SHARED -+__hidden_ver1 (__strnlen, __GI___strnlen, __redirect___strnlen) -+ __attribute__((visibility ("hidden"))) __attribute_copy__ (strnlen); -+__hidden_ver1 (strnlen, __GI_strnlen, __redirect_strnlen) -+ __attribute__((weak, visibility ("hidden"))) __attribute_copy__ (strnlen); -+# endif -+#endif --- -2.45.0 - diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0012-LoongArch-Add-ifunc-support-for-strcmp-aligned-lsx.patch b/runtime-optenv32/glibc+32/autobuild/patches/0012-LoongArch-Add-ifunc-support-for-strcmp-aligned-lsx.patch deleted file mode 100644 index 430d3857ca0..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0012-LoongArch-Add-ifunc-support-for-strcmp-aligned-lsx.patch +++ /dev/null @@ -1,496 +0,0 @@ -From 9e892cedfb9a5d54bc278f4aa5b916c9c41714b2 Mon Sep 17 00:00:00 2001 -From: dengjianbo -Date: Thu, 24 Aug 2023 16:50:18 +0800 -Subject: [PATCH 12/32] LoongArch: Add ifunc support for strcmp{aligned, lsx} - -Based on the glibc microbenchmark, strcmp-aligned implementation could -reduce the runtime 0%-10% for aligned comparison, 10%-20% for unaligned -comparison, strcmp-lsx implemenation could reduce the runtime 0%-50%. ---- - sysdeps/loongarch/lp64/multiarch/Makefile | 2 + - .../lp64/multiarch/ifunc-impl-list.c | 7 + - .../loongarch/lp64/multiarch/ifunc-strcmp.h | 38 ++++ - .../loongarch/lp64/multiarch/strcmp-aligned.S | 179 ++++++++++++++++++ - sysdeps/loongarch/lp64/multiarch/strcmp-lsx.S | 165 ++++++++++++++++ - sysdeps/loongarch/lp64/multiarch/strcmp.c | 35 ++++ - 6 files changed, 426 insertions(+) - create mode 100644 sysdeps/loongarch/lp64/multiarch/ifunc-strcmp.h - create mode 100644 sysdeps/loongarch/lp64/multiarch/strcmp-aligned.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/strcmp-lsx.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/strcmp.c - -diff --git a/sysdeps/loongarch/lp64/multiarch/Makefile b/sysdeps/loongarch/lp64/multiarch/Makefile -index c4dd3143d1..d5a500decd 100644 ---- a/sysdeps/loongarch/lp64/multiarch/Makefile -+++ b/sysdeps/loongarch/lp64/multiarch/Makefile -@@ -12,6 +12,8 @@ sysdep_routines += \ - strchrnul-aligned \ - strchrnul-lsx \ - strchrnul-lasx \ -+ strcmp-aligned \ -+ strcmp-lsx \ - memcpy-aligned \ - memcpy-unaligned \ - memmove-unaligned \ -diff --git a/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c b/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -index 7cec0b7724..9183b7da24 100644 ---- a/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -+++ b/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -@@ -62,6 +62,13 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array, - IFUNC_IMPL_ADD (array, i, strchrnul, 1, __strchrnul_aligned) - ) - -+ IFUNC_IMPL (i, name, strcmp, -+#if !defined __loongarch_soft_float -+ IFUNC_IMPL_ADD (array, i, strcmp, SUPPORT_LSX, __strcmp_lsx) -+#endif -+ IFUNC_IMPL_ADD (array, i, strcmp, 1, __strcmp_aligned) -+ ) -+ - IFUNC_IMPL (i, name, memcpy, - #if !defined __loongarch_soft_float - IFUNC_IMPL_ADD (array, i, memcpy, SUPPORT_LASX, __memcpy_lasx) -diff --git a/sysdeps/loongarch/lp64/multiarch/ifunc-strcmp.h b/sysdeps/loongarch/lp64/multiarch/ifunc-strcmp.h -new file mode 100644 -index 0000000000..ca26352bec ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/ifunc-strcmp.h -@@ -0,0 +1,38 @@ -+/* Common definition for strcmp ifunc selection. -+ All versions must be listed in ifunc-impl-list.c. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#include -+#include -+ -+#if !defined __loongarch_soft_float -+extern __typeof (REDIRECT_NAME) OPTIMIZE (lsx) attribute_hidden; -+#endif -+ -+extern __typeof (REDIRECT_NAME) OPTIMIZE (aligned) attribute_hidden; -+ -+static inline void * -+IFUNC_SELECTOR (void) -+{ -+#if !defined __loongarch_soft_float -+ if (SUPPORT_LSX) -+ return OPTIMIZE (lsx); -+ else -+#endif -+ return OPTIMIZE (aligned); -+} -diff --git a/sysdeps/loongarch/lp64/multiarch/strcmp-aligned.S b/sysdeps/loongarch/lp64/multiarch/strcmp-aligned.S -new file mode 100644 -index 0000000000..f5f4f3364e ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/strcmp-aligned.S -@@ -0,0 +1,179 @@ -+/* Optimized strcmp implementation using basic Loongarch instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) -+# define STRCMP_NAME __strcmp_aligned -+#else -+# define STRCMP_NAME strcmp -+#endif -+ -+LEAF(STRCMP_NAME, 6) -+ lu12i.w a4, 0x01010 -+ andi a2, a0, 0x7 -+ ori a4, a4, 0x101 -+ andi a3, a1, 0x7 -+ -+ bstrins.d a4, a4, 63, 32 -+ li.d t7, -1 -+ li.d t8, 8 -+ slli.d a5, a4, 7 -+ -+ bne a2, a3, L(unaligned) -+ bstrins.d a0, zero, 2, 0 -+ bstrins.d a1, zero, 2, 0 -+ ld.d t0, a0, 0 -+ -+ ld.d t1, a1, 0 -+ slli.d t3, a2, 3 -+ sll.d t2, t7, t3 -+ orn t0, t0, t2 -+ -+ -+ orn t1, t1, t2 -+ sub.d t2, t0, a4 -+ andn t3, a5, t0 -+ and t2, t2, t3 -+ -+ bne t0, t1, L(al_end) -+L(al_loop): -+ bnez t2, L(ret0) -+ ldx.d t0, a0, t8 -+ ldx.d t1, a1, t8 -+ -+ addi.d t8, t8, 8 -+ sub.d t2, t0, a4 -+ andn t3, a5, t0 -+ and t2, t2, t3 -+ -+ beq t0, t1, L(al_loop) -+L(al_end): -+ xor t3, t0, t1 -+ or t2, t2, t3 -+ ctz.d t3, t2 -+ -+ -+ bstrins.d t3, zero, 2, 0 -+ srl.d t0, t0, t3 -+ srl.d t1, t1, t3 -+ andi t0, t0, 0xff -+ -+ andi t1, t1, 0xff -+ sub.d a0, t0, t1 -+ jr ra -+ nop -+ -+L(ret0): -+ move a0, zero -+ jr ra -+ nop -+ nop -+ -+L(unaligned): -+ slt a6, a3, a2 -+ xor t0, a0, a1 -+ maskeqz t0, t0, a6 -+ xor a0, a0, t0 -+ -+ -+ xor a1, a1, t0 -+ andi a2, a0, 0x7 -+ andi a3, a1, 0x7 -+ bstrins.d a0, zero, 2, 0 -+ -+ bstrins.d a1, zero, 2, 0 -+ ld.d t4, a0, 0 -+ ld.d t1, a1, 0 -+ slli.d a2, a2, 3 -+ -+ slli.d a3, a3, 3 -+ srl.d t0, t4, a2 -+ srl.d t1, t1, a3 -+ srl.d t5, t7, a3 -+ -+ orn t0, t0, t5 -+ orn t1, t1, t5 -+ bne t0, t1, L(not_equal) -+ sll.d t5, t7, a2 -+ -+ -+ sub.d a3, a2, a3 -+ orn t4, t4, t5 -+ sub.d a2, zero, a3 -+ sub.d t2, t4, a4 -+ -+ andn t3, a5, t4 -+ and t2, t2, t3 -+ bnez t2, L(find_zero) -+L(un_loop): -+ srl.d t5, t4, a3 -+ -+ ldx.d t4, a0, t8 -+ ldx.d t1, a1, t8 -+ addi.d t8, t8, 8 -+ sll.d t0, t4, a2 -+ -+ or t0, t0, t5 -+ bne t0, t1, L(not_equal) -+ sub.d t2, t4, a4 -+ andn t3, a5, t4 -+ -+ -+ and t2, t2, t3 -+ beqz t2, L(un_loop) -+L(find_zero): -+ sub.d t2, t0, a4 -+ andn t3, a5, t0 -+ -+ and t2, t2, t3 -+ bnez t2, L(ret0) -+ ldx.d t1, a1, t8 -+ srl.d t0, t4, a3 -+ -+L(not_equal): -+ sub.d t2, t0, a4 -+ andn t3, a5, t0 -+ and t2, t2, t3 -+ xor t3, t0, t1 -+ -+ or t2, t2, t3 -+L(un_end): -+ ctz.d t3, t2 -+ bstrins.d t3, zero, 2, 0 -+ srl.d t0, t0, t3 -+ -+ -+ srl.d t1, t1, t3 -+ andi t0, t0, 0xff -+ andi t1, t1, 0xff -+ sub.d t2, t0, t1 -+ -+ -+ sub.d t3, t1, t0 -+ masknez t0, t2, a6 -+ maskeqz t1, t3, a6 -+ or a0, t0, t1 -+ -+ jr ra -+END(STRCMP_NAME) -+ -+libc_hidden_builtin_def (STRCMP_NAME) -diff --git a/sysdeps/loongarch/lp64/multiarch/strcmp-lsx.S b/sysdeps/loongarch/lp64/multiarch/strcmp-lsx.S -new file mode 100644 -index 0000000000..2e177a3872 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/strcmp-lsx.S -@@ -0,0 +1,165 @@ -+/* Optimized strcmp implementation using Loongarch LSX instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) && !defined __loongarch_soft_float -+ -+# define STRCMP __strcmp_lsx -+ -+LEAF(STRCMP, 6) -+ pcalau12i t0, %pc_hi20(L(INDEX)) -+ andi a2, a0, 0xf -+ vld vr2, t0, %pc_lo12(L(INDEX)) -+ andi a3, a1, 0xf -+ -+ bne a2, a3, L(unaligned) -+ bstrins.d a0, zero, 3, 0 -+ bstrins.d a1, zero, 3, 0 -+ vld vr0, a0, 0 -+ -+ vld vr1, a1, 0 -+ vreplgr2vr.b vr3, a2 -+ vslt.b vr2, vr2, vr3 -+ vseq.b vr3, vr0, vr1 -+ -+ vmin.bu vr3, vr0, vr3 -+ vor.v vr3, vr3, vr2 -+ vsetanyeqz.b fcc0, vr3 -+ bcnez fcc0, L(al_out) -+ -+ -+L(al_loop): -+ vld vr0, a0, 16 -+ vld vr1, a1, 16 -+ addi.d a0, a0, 16 -+ addi.d a1, a1, 16 -+ -+ vseq.b vr3, vr0, vr1 -+ vmin.bu vr3, vr0, vr3 -+ vsetanyeqz.b fcc0, vr3 -+ bceqz fcc0, L(al_loop) -+ -+L(al_out): -+ vseqi.b vr3, vr3, 0 -+ vfrstpi.b vr3, vr3, 0 -+ vshuf.b vr0, vr0, vr0, vr3 -+ vshuf.b vr1, vr1, vr1, vr3 -+ -+ vpickve2gr.bu t0, vr0, 0 -+ vpickve2gr.bu t1, vr1, 0 -+ sub.d a0, t0, t1 -+ jr ra -+ -+ -+L(unaligned): -+ slt a4, a3, a2 -+ xor t0, a0, a1 -+ maskeqz t0, t0, a4 -+ xor a0, a0, t0 -+ -+ xor a1, a1, t0 -+ andi a2, a0, 0xf -+ andi a3, a1, 0xf -+ bstrins.d a0, zero, 3, 0 -+ -+ bstrins.d a1, zero, 3, 0 -+ vld vr3, a0, 0 -+ vld vr1, a1, 0 -+ vreplgr2vr.b vr4, a2 -+ -+ vreplgr2vr.b vr5, a3 -+ vslt.b vr7, vr2, vr5 -+ vsub.b vr5, vr5, vr4 -+ vaddi.bu vr6, vr2, 16 -+ -+ -+ vsub.b vr6, vr6, vr5 -+ vshuf.b vr0, vr3, vr3, vr6 -+ vor.v vr0, vr0, vr7 -+ vor.v vr1, vr1, vr7 -+ -+ vseq.b vr5, vr0, vr1 -+ vsetanyeqz.b fcc0, vr5 -+ bcnez fcc0, L(not_equal) -+ vslt.b vr4, vr2, vr4 -+ -+ vor.v vr0, vr3, vr4 -+ vsetanyeqz.b fcc0, vr0 -+ bcnez fcc0, L(find_zero) -+ nop -+ -+L(un_loop): -+ vld vr3, a0, 16 -+ vld vr1, a1, 16 -+ addi.d a0, a0, 16 -+ addi.d a1, a1, 16 -+ -+ -+ vshuf.b vr0, vr3, vr0, vr6 -+ vseq.b vr5, vr0, vr1 -+ vsetanyeqz.b fcc0, vr5 -+ bcnez fcc0, L(not_equal) -+ -+ vsetanyeqz.b fcc0, vr3 -+ vor.v vr0, vr3, vr3 -+ bceqz fcc0, L(un_loop) -+L(find_zero): -+ vmin.bu vr5, vr1, vr5 -+ -+ vsetanyeqz.b fcc0, vr5 -+ bcnez fcc0, L(ret0) -+ vld vr1, a1, 16 -+ vshuf.b vr0, vr3, vr3, vr6 -+ -+ vseq.b vr5, vr0, vr1 -+L(not_equal): -+ vmin.bu vr5, vr0, vr5 -+L(un_end): -+ vseqi.b vr5, vr5, 0 -+ vfrstpi.b vr5, vr5, 0 -+ -+ -+ vshuf.b vr0, vr0, vr0, vr5 -+ vshuf.b vr1, vr1, vr1, vr5 -+ vpickve2gr.bu t0, vr0, 0 -+ vpickve2gr.bu t1, vr1, 0 -+ -+ sub.d t3, t0, t1 -+ sub.d t4, t1, t0 -+ masknez t0, t3, a4 -+ maskeqz t1, t4, a4 -+ -+ or a0, t0, t1 -+ jr ra -+L(ret0): -+ move a0, zero -+ jr ra -+END(STRCMP) -+ -+ .section .rodata.cst16,"M",@progbits,16 -+ .align 4 -+L(INDEX): -+ .dword 0x0706050403020100 -+ .dword 0x0f0e0d0c0b0a0908 -+ -+libc_hidden_builtin_def (STRCMP) -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/strcmp.c b/sysdeps/loongarch/lp64/multiarch/strcmp.c -new file mode 100644 -index 0000000000..6f249c0b59 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/strcmp.c -@@ -0,0 +1,35 @@ -+/* Multiple versions of strcmp. -+ All versions must be listed in ifunc-impl-list.c. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+/* Define multiple versions only for the definition in libc. */ -+#if IS_IN (libc) -+# define strcmp __redirect_strcmp -+# include -+# undef strcmp -+ -+# define SYMBOL_NAME strcmp -+# include "ifunc-strcmp.h" -+ -+libc_ifunc_redirected (__redirect_strcmp, strcmp, IFUNC_SELECTOR ()); -+ -+# ifdef SHARED -+__hidden_ver1 (strcmp, __GI_strcmp, __redirect_strcmp) -+ __attribute__ ((visibility ("hidden"))) __attribute_copy__ (strcmp); -+# endif -+#endif --- -2.45.0 - diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0013-LoongArch-Add-ifunc-support-for-strncmp-aligned-lsx.patch b/runtime-optenv32/glibc+32/autobuild/patches/0013-LoongArch-Add-ifunc-support-for-strncmp-aligned-lsx.patch deleted file mode 100644 index b8d3cd1c2b6..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0013-LoongArch-Add-ifunc-support-for-strncmp-aligned-lsx.patch +++ /dev/null @@ -1,580 +0,0 @@ -From ab838b0076fde0bd3901bb1b85cd1ceb3e10fc34 Mon Sep 17 00:00:00 2001 -From: dengjianbo -Date: Thu, 24 Aug 2023 16:50:19 +0800 -Subject: [PATCH 13/32] LoongArch: Add ifunc support for strncmp{aligned, lsx} - -Based on the glibc microbenchmark, only a few short inputs with this -strncmp-aligned and strncmp-lsx implementation experience performance -degradation, overall, strncmp-aligned could reduce the runtime 0%-10% -for aligned comparision, 10%-25% for unaligend comparision, strncmp-lsx -could reduce the runtime about 0%-60%. ---- - sysdeps/loongarch/lp64/multiarch/Makefile | 2 + - .../lp64/multiarch/ifunc-impl-list.c | 7 + - .../loongarch/lp64/multiarch/ifunc-strncmp.h | 38 +++ - .../lp64/multiarch/strncmp-aligned.S | 218 ++++++++++++++++++ - .../loongarch/lp64/multiarch/strncmp-lsx.S | 208 +++++++++++++++++ - sysdeps/loongarch/lp64/multiarch/strncmp.c | 35 +++ - 6 files changed, 508 insertions(+) - create mode 100644 sysdeps/loongarch/lp64/multiarch/ifunc-strncmp.h - create mode 100644 sysdeps/loongarch/lp64/multiarch/strncmp-aligned.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/strncmp-lsx.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/strncmp.c - -diff --git a/sysdeps/loongarch/lp64/multiarch/Makefile b/sysdeps/loongarch/lp64/multiarch/Makefile -index d5a500decd..5d7ae7ae73 100644 ---- a/sysdeps/loongarch/lp64/multiarch/Makefile -+++ b/sysdeps/loongarch/lp64/multiarch/Makefile -@@ -14,6 +14,8 @@ sysdep_routines += \ - strchrnul-lasx \ - strcmp-aligned \ - strcmp-lsx \ -+ strncmp-aligned \ -+ strncmp-lsx \ - memcpy-aligned \ - memcpy-unaligned \ - memmove-unaligned \ -diff --git a/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c b/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -index 9183b7da24..c8ba87bd81 100644 ---- a/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -+++ b/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -@@ -69,6 +69,13 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array, - IFUNC_IMPL_ADD (array, i, strcmp, 1, __strcmp_aligned) - ) - -+ IFUNC_IMPL (i, name, strncmp, -+#if !defined __loongarch_soft_float -+ IFUNC_IMPL_ADD (array, i, strncmp, SUPPORT_LSX, __strncmp_lsx) -+#endif -+ IFUNC_IMPL_ADD (array, i, strncmp, 1, __strncmp_aligned) -+ ) -+ - IFUNC_IMPL (i, name, memcpy, - #if !defined __loongarch_soft_float - IFUNC_IMPL_ADD (array, i, memcpy, SUPPORT_LASX, __memcpy_lasx) -diff --git a/sysdeps/loongarch/lp64/multiarch/ifunc-strncmp.h b/sysdeps/loongarch/lp64/multiarch/ifunc-strncmp.h -new file mode 100644 -index 0000000000..1a7dc36ba6 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/ifunc-strncmp.h -@@ -0,0 +1,38 @@ -+/* Common definition for strncmp ifunc selection. -+ All versions must be listed in ifunc-impl-list.c. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#include -+#include -+ -+#if !defined __loongarch_soft_float -+extern __typeof (REDIRECT_NAME) OPTIMIZE (lsx) attribute_hidden; -+#endif -+ -+extern __typeof (REDIRECT_NAME) OPTIMIZE (aligned) attribute_hidden; -+ -+static inline void * -+IFUNC_SELECTOR (void) -+{ -+#if !defined __loongarch_soft_float -+ if (SUPPORT_LSX) -+ return OPTIMIZE (lsx); -+ else -+#endif -+ return OPTIMIZE (aligned); -+} -diff --git a/sysdeps/loongarch/lp64/multiarch/strncmp-aligned.S b/sysdeps/loongarch/lp64/multiarch/strncmp-aligned.S -new file mode 100644 -index 0000000000..e2687fa770 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/strncmp-aligned.S -@@ -0,0 +1,218 @@ -+/* Optimized strncmp implementation using basic Loongarch instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) -+# define STRNCMP __strncmp_aligned -+#else -+# define STRNCMP strncmp -+#endif -+ -+LEAF(STRNCMP, 6) -+ beqz a2, L(ret0) -+ lu12i.w a5, 0x01010 -+ andi a3, a0, 0x7 -+ ori a5, a5, 0x101 -+ -+ andi a4, a1, 0x7 -+ bstrins.d a5, a5, 63, 32 -+ li.d t7, -1 -+ li.d t8, 8 -+ -+ addi.d a2, a2, -1 -+ slli.d a6, a5, 7 -+ bne a3, a4, L(unaligned) -+ bstrins.d a0, zero, 2, 0 -+ -+ bstrins.d a1, zero, 2, 0 -+ ld.d t0, a0, 0 -+ ld.d t1, a1, 0 -+ slli.d t2, a3, 3 -+ -+ -+ sub.d t5, t8, a3 -+ srl.d t3, t7, t2 -+ srl.d t0, t0, t2 -+ srl.d t1, t1, t2 -+ -+ orn t0, t0, t3 -+ orn t1, t1, t3 -+ sub.d t2, t0, a5 -+ andn t3, a6, t0 -+ -+ and t2, t2, t3 -+ bne t0, t1, L(al_end) -+ sltu t4, a2, t5 -+ sub.d a2, a2, t5 -+ -+L(al_loop): -+ or t4, t2, t4 -+ bnez t4, L(ret0) -+ ldx.d t0, a0, t8 -+ ldx.d t1, a1, t8 -+ -+ -+ addi.d t8, t8, 8 -+ sltui t4, a2, 8 -+ addi.d a2, a2, -8 -+ sub.d t2, t0, a5 -+ -+ andn t3, a6, t0 -+ and t2, t2, t3 -+ beq t0, t1, L(al_loop) -+ addi.d a2, a2, 8 -+ -+L(al_end): -+ xor t3, t0, t1 -+ or t2, t2, t3 -+ ctz.d t2, t2 -+ srli.d t4, t2, 3 -+ -+ bstrins.d t2, zero, 2, 0 -+ srl.d t0, t0, t2 -+ srl.d t1, t1, t2 -+ andi t0, t0, 0xff -+ -+ -+ andi t1, t1, 0xff -+ sltu t2, a2, t4 -+ sub.d a0, t0, t1 -+ masknez a0, a0, t2 -+ -+ jr ra -+L(ret0): -+ move a0, zero -+ jr ra -+ nop -+ -+L(unaligned): -+ slt a7, a4, a3 -+ xor t0, a0, a1 -+ maskeqz t0, t0, a7 -+ xor a0, a0, t0 -+ -+ xor a1, a1, t0 -+ andi a3, a0, 0x7 -+ andi a4, a1, 0x7 -+ bstrins.d a0, zero, 2, 0 -+ -+ -+ bstrins.d a1, zero, 2, 0 -+ ld.d t4, a0, 0 -+ ld.d t1, a1, 0 -+ slli.d t2, a3, 3 -+ -+ slli.d t3, a4, 3 -+ srl.d t5, t7, t3 -+ srl.d t0, t4, t2 -+ srl.d t1, t1, t3 -+ -+ orn t0, t0, t5 -+ orn t1, t1, t5 -+ bne t0, t1, L(not_equal) -+ sub.d t6, t8, a4 -+ -+ sub.d a4, t2, t3 -+ sll.d t2, t7, t2 -+ sub.d t5, t8, a3 -+ orn t4, t4, t2 -+ -+ -+ sub.d t2, t4, a5 -+ andn t3, a6, t4 -+ sltu t7, a2, t5 -+ and t2, t2, t3 -+ -+ sub.d a3, zero, a4 -+ or t2, t2, t7 -+ bnez t2, L(un_end) -+ sub.d t7, t5, t6 -+ -+ sub.d a2, a2, t5 -+ sub.d t6, t8, t7 -+L(un_loop): -+ srl.d t5, t4, a4 -+ ldx.d t4, a0, t8 -+ -+ ldx.d t1, a1, t8 -+ addi.d t8, t8, 8 -+ sll.d t0, t4, a3 -+ or t0, t0, t5 -+ -+ -+ bne t0, t1, L(loop_not_equal) -+ sub.d t2, t4, a5 -+ andn t3, a6, t4 -+ sltui t5, a2, 8 -+ -+ and t2, t2, t3 -+ addi.d a2, a2, -8 -+ or t3, t2, t5 -+ beqz t3, L(un_loop) -+ -+ addi.d a2, a2, 8 -+L(un_end): -+ sub.d t2, t0, a5 -+ andn t3, a6, t0 -+ sltu t5, a2, t6 -+ -+ and t2, t2, t3 -+ or t2, t2, t5 -+ bnez t2, L(ret0) -+ ldx.d t1, a1, t8 -+ -+ -+ srl.d t0, t4, a4 -+ sub.d a2, a2, t6 -+L(not_equal): -+ sub.d t2, t0, a5 -+ andn t3, a6, t0 -+ -+ xor t4, t0, t1 -+ and t2, t2, t3 -+ or t2, t2, t4 -+ ctz.d t2, t2 -+ -+ bstrins.d t2, zero, 2, 0 -+ srli.d t4, t2, 3 -+ srl.d t0, t0, t2 -+ srl.d t1, t1, t2 -+ -+ andi t0, t0, 0xff -+ andi t1, t1, 0xff -+ sub.d t2, t0, t1 -+ sub.d t3, t1, t0 -+ -+ -+ masknez t0, t2, a7 -+ maskeqz t1, t3, a7 -+ sltu t2, a2, t4 -+ or a0, t0, t1 -+ -+ masknez a0, a0, t2 -+ jr ra -+L(loop_not_equal): -+ add.d a2, a2, t7 -+ b L(not_equal) -+END(STRNCMP) -+ -+libc_hidden_builtin_def (STRNCMP) -diff --git a/sysdeps/loongarch/lp64/multiarch/strncmp-lsx.S b/sysdeps/loongarch/lp64/multiarch/strncmp-lsx.S -new file mode 100644 -index 0000000000..0b4eee2a98 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/strncmp-lsx.S -@@ -0,0 +1,208 @@ -+/* Optimized strncmp implementation using Loongarch LSX instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) && !defined __loongarch_soft_float -+ -+# define STRNCMP __strncmp_lsx -+ -+LEAF(STRNCMP, 6) -+ beqz a2, L(ret0) -+ pcalau12i t0, %pc_hi20(L(INDEX)) -+ andi a3, a0, 0xf -+ vld vr2, t0, %pc_lo12(L(INDEX)) -+ -+ andi a4, a1, 0xf -+ li.d t2, 16 -+ bne a3, a4, L(unaligned) -+ xor t0, a0, a3 -+ -+ xor t1, a1, a4 -+ vld vr0, t0, 0 -+ vld vr1, t1, 0 -+ vreplgr2vr.b vr3, a3 -+ -+ -+ sub.d t2, t2, a3 -+ vadd.b vr3, vr3, vr2 -+ vshuf.b vr0, vr3, vr0, vr3 -+ vshuf.b vr1, vr3, vr1, vr3 -+ -+ vseq.b vr3, vr0, vr1 -+ vmin.bu vr3, vr0, vr3 -+ bgeu t2, a2, L(al_early_end) -+ vsetanyeqz.b fcc0, vr3 -+ -+ bcnez fcc0, L(al_end) -+ add.d a3, a0, a2 -+ addi.d a4, a3, -1 -+ bstrins.d a4, zero, 3, 0 -+ -+ sub.d a2, a3, a4 -+L(al_loop): -+ vld vr0, t0, 16 -+ vld vr1, t1, 16 -+ addi.d t0, t0, 16 -+ -+ -+ addi.d t1, t1, 16 -+ vseq.b vr3, vr0, vr1 -+ vmin.bu vr3, vr0, vr3 -+ beq t0, a4, L(al_early_end) -+ -+ vsetanyeqz.b fcc0, vr3 -+ bceqz fcc0, L(al_loop) -+L(al_end): -+ vseqi.b vr3, vr3, 0 -+ vfrstpi.b vr3, vr3, 0 -+ -+ vshuf.b vr0, vr0, vr0, vr3 -+ vshuf.b vr1, vr1, vr1, vr3 -+ vpickve2gr.bu t0, vr0, 0 -+ vpickve2gr.bu t1, vr1, 0 -+ -+ sub.d a0, t0, t1 -+ jr ra -+L(al_early_end): -+ vreplgr2vr.b vr4, a2 -+ vslt.b vr4, vr2, vr4 -+ -+ -+ vorn.v vr3, vr3, vr4 -+ b L(al_end) -+L(unaligned): -+ slt a5, a3, a4 -+ xor t0, a0, a1 -+ -+ maskeqz t0, t0, a5 -+ xor a0, a0, t0 -+ xor a1, a1, t0 -+ andi a3, a0, 0xf -+ -+ andi a4, a1, 0xf -+ xor t0, a0, a3 -+ xor t1, a1, a4 -+ vld vr0, t0, 0 -+ -+ vld vr3, t1, 0 -+ sub.d t2, t2, a3 -+ vreplgr2vr.b vr4, a3 -+ vreplgr2vr.b vr5, a4 -+ -+ -+ vaddi.bu vr6, vr2, 16 -+ vsub.b vr7, vr4, vr5 -+ vsub.b vr6, vr6, vr7 -+ vadd.b vr4, vr2, vr4 -+ -+ vshuf.b vr1, vr3, vr3, vr6 -+ vshuf.b vr0, vr7, vr0, vr4 -+ vshuf.b vr1, vr7, vr1, vr4 -+ vseq.b vr4, vr0, vr1 -+ -+ vmin.bu vr4, vr0, vr4 -+ bgeu t2, a2, L(un_early_end) -+ vsetanyeqz.b fcc0, vr4 -+ bcnez fcc0, L(un_end) -+ -+ add.d a6, a0, a2 -+ vslt.b vr5, vr2, vr5 -+ addi.d a7, a6, -1 -+ vor.v vr3, vr3, vr5 -+ -+ -+ bstrins.d a7, zero, 3, 0 -+ sub.d a2, a6, a7 -+L(un_loop): -+ vld vr0, t0, 16 -+ addi.d t0, t0, 16 -+ -+ vsetanyeqz.b fcc0, vr3 -+ bcnez fcc0, L(has_zero) -+ beq t0, a7, L(end_with_len) -+ vor.v vr1, vr3, vr3 -+ -+ vld vr3, t1, 16 -+ addi.d t1, t1, 16 -+ vshuf.b vr1, vr3, vr1, vr6 -+ vseq.b vr4, vr0, vr1 -+ -+ vmin.bu vr4, vr0, vr4 -+ vsetanyeqz.b fcc0, vr4 -+ bceqz fcc0, L(un_loop) -+L(un_end): -+ vseqi.b vr4, vr4, 0 -+ -+ -+ vfrstpi.b vr4, vr4, 0 -+ vshuf.b vr0, vr0, vr0, vr4 -+ vshuf.b vr1, vr1, vr1, vr4 -+ vpickve2gr.bu t0, vr0, 0 -+ -+ vpickve2gr.bu t1, vr1, 0 -+ sub.d t2, t0, t1 -+ sub.d t3, t1, t0 -+ masknez t0, t2, a5 -+ -+ maskeqz t1, t3, a5 -+ or a0, t0, t1 -+ jr ra -+L(has_zero): -+ vshuf.b vr1, vr3, vr3, vr6 -+ -+ vseq.b vr4, vr0, vr1 -+ vmin.bu vr4, vr0, vr4 -+ bne t0, a7, L(un_end) -+L(un_early_end): -+ vreplgr2vr.b vr5, a2 -+ -+ vslt.b vr5, vr2, vr5 -+ vorn.v vr4, vr4, vr5 -+ b L(un_end) -+L(end_with_len): -+ sub.d a6, a3, a4 -+ -+ bgeu a6, a2, 1f -+ vld vr4, t1, 16 -+1: -+ vshuf.b vr1, vr4, vr3, vr6 -+ vseq.b vr4, vr0, vr1 -+ -+ vmin.bu vr4, vr0, vr4 -+ vreplgr2vr.b vr5, a2 -+ vslt.b vr5, vr2, vr5 -+ vorn.v vr4, vr4, vr5 -+ -+ b L(un_end) -+L(ret0): -+ move a0, zero -+ jr ra -+END(STRNCMP) -+ -+ .section .rodata.cst16,"M",@progbits,16 -+ .align 4 -+L(INDEX): -+ .dword 0x0706050403020100 -+ .dword 0x0f0e0d0c0b0a0908 -+ -+libc_hidden_builtin_def (STRNCMP) -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/strncmp.c b/sysdeps/loongarch/lp64/multiarch/strncmp.c -new file mode 100644 -index 0000000000..af6d0bc4a7 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/strncmp.c -@@ -0,0 +1,35 @@ -+/* Multiple versions of strncmp. -+ All versions must be listed in ifunc-impl-list.c. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+/* Define multiple versions only for the definition in libc. */ -+#if IS_IN (libc) -+# define strncmp __redirect_strncmp -+# include -+# undef strncmp -+ -+# define SYMBOL_NAME strncmp -+# include "ifunc-strncmp.h" -+ -+libc_ifunc_redirected (__redirect_strncmp, strncmp, IFUNC_SELECTOR ()); -+ -+# ifdef SHARED -+__hidden_ver1 (strncmp, __GI_strncmp, __redirect_strncmp) -+ __attribute__ ((visibility ("hidden"))) __attribute_copy__ (strncmp); -+# endif -+#endif --- -2.45.0 - diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0014-LoongArch-Add-minuimum-binutils-required-version.patch b/runtime-optenv32/glibc+32/autobuild/patches/0014-LoongArch-Add-minuimum-binutils-required-version.patch deleted file mode 100644 index ac2b68cdd42..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0014-LoongArch-Add-minuimum-binutils-required-version.patch +++ /dev/null @@ -1,113 +0,0 @@ -From db63c07eb073236a43986cb70f273b7fa05b135a Mon Sep 17 00:00:00 2001 -From: dengjianbo -Date: Tue, 8 Aug 2023 14:15:43 +0800 -Subject: [PATCH 14/32] LoongArch: Add minuimum binutils required version - -LoongArch glibc can add some LASX/LSX vector instructions codes, -change the required minimum binutils version to 2.41 which could -support vector instructions. HAVE_LOONGARCH_VEC_ASM is removed -accordingly. ---- - NEWS | 2 ++ - config.h.in | 5 ----- - sysdeps/loongarch/configure | 5 ++--- - sysdeps/loongarch/configure.ac | 4 ++-- - sysdeps/loongarch/dl-machine.h | 4 ++-- - sysdeps/loongarch/dl-trampoline.S | 2 +- - 6 files changed, 9 insertions(+), 13 deletions(-) - -diff --git a/NEWS b/NEWS -index 872bc8907b..cf0cf3c38b 100644 ---- a/NEWS -+++ b/NEWS -@@ -148,6 +148,8 @@ Deprecated and removed features, and other changes affecting compatibility: - subdirectories on the library search path or the subdirectory that - corresponds to the AT_PLATFORM system name, or employs the legacy AT_HWCAP - search mechanism, which was deprecated in version 2.33. -+* Building on LoongArch requires at a minimum binutils 2.41 for vector -+ instructions. - - Security related changes: - -diff --git a/config.h.in b/config.h.in -index 0dedc124f7..44a34072a4 100644 ---- a/config.h.in -+++ b/config.h.in -@@ -141,11 +141,6 @@ - /* LOONGARCH floating-point ABI for ld.so. */ - #undef LOONGARCH_ABI_FRLEN - --/* Assembler support LoongArch LASX/LSX vector instructions. -- This macro becomes obsolete when glibc increased the minimum -- required version of GNU 'binutils' to 2.41 or later. */ --#define HAVE_LOONGARCH_VEC_ASM 0 -- - /* Linux specific: minimum supported kernel version. */ - #undef __LINUX_KERNEL_VERSION - -diff --git a/sysdeps/loongarch/configure b/sysdeps/loongarch/configure -index 5843c7cf90..395ddc92ca 100644 ---- a/sysdeps/loongarch/configure -+++ b/sysdeps/loongarch/configure -@@ -128,8 +128,7 @@ rm -f conftest* - fi - { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $libc_cv_loongarch_vec_asm" >&5 - printf "%s\n" "$libc_cv_loongarch_vec_asm" >&6; } --if test $libc_cv_loongarch_vec_asm = yes; then -- printf "%s\n" "#define HAVE_LOONGARCH_VEC_ASM 1" >>confdefs.h -- -+if test $libc_cv_loongarch_vec_asm = no; then -+ as_fn_error $? "binutils version is too old, use 2.41 or newer version" "$LINENO" 5 - fi - -diff --git a/sysdeps/loongarch/configure.ac b/sysdeps/loongarch/configure.ac -index ba89d8346d..989287c6d2 100644 ---- a/sysdeps/loongarch/configure.ac -+++ b/sysdeps/loongarch/configure.ac -@@ -74,6 +74,6 @@ else - libc_cv_loongarch_vec_asm=no - fi - rm -f conftest*]) --if test $libc_cv_loongarch_vec_asm = yes; then -- AC_DEFINE(HAVE_LOONGARCH_VEC_ASM) -+if test $libc_cv_loongarch_vec_asm = no; then -+ AC_MSG_ERROR([binutils version is too old, use 2.41 or newer version]) - fi -diff --git a/sysdeps/loongarch/dl-machine.h b/sysdeps/loongarch/dl-machine.h -index 51ce9af84b..066bb233ac 100644 ---- a/sysdeps/loongarch/dl-machine.h -+++ b/sysdeps/loongarch/dl-machine.h -@@ -270,7 +270,7 @@ elf_machine_runtime_setup (struct link_map *l, struct r_scope_elem *scope[], - /* If using PLTs, fill in the first two entries of .got.plt. */ - if (l->l_info[DT_JMPREL]) - { --#if HAVE_LOONGARCH_VEC_ASM && !defined __loongarch_soft_float -+#if !defined __loongarch_soft_float - extern void _dl_runtime_resolve_lasx (void) attribute_hidden; - extern void _dl_runtime_resolve_lsx (void) attribute_hidden; - #endif -@@ -300,7 +300,7 @@ elf_machine_runtime_setup (struct link_map *l, struct r_scope_elem *scope[], - /* This function will get called to fix up the GOT entry - indicated by the offset on the stack, and then jump to - the resolved address. */ --#if HAVE_LOONGARCH_VEC_ASM && !defined __loongarch_soft_float -+#if !defined __loongarch_soft_float - if (SUPPORT_LASX) - gotplt[0] = (ElfW(Addr)) &_dl_runtime_resolve_lasx; - else if (SUPPORT_LSX) -diff --git a/sysdeps/loongarch/dl-trampoline.S b/sysdeps/loongarch/dl-trampoline.S -index f6ba5e443c..8fd9146978 100644 ---- a/sysdeps/loongarch/dl-trampoline.S -+++ b/sysdeps/loongarch/dl-trampoline.S -@@ -19,7 +19,7 @@ - #include - #include - --#if HAVE_LOONGARCH_VEC_ASM && !defined __loongarch_soft_float -+#if !defined __loongarch_soft_float - #define USE_LASX - #define _dl_runtime_resolve _dl_runtime_resolve_lasx - #include "dl-trampoline.h" --- -2.45.0 - diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0015-LoongArch-Simplify-the-autoconf-check-for-static-PIE.patch b/runtime-optenv32/glibc+32/autobuild/patches/0015-LoongArch-Simplify-the-autoconf-check-for-static-PIE.patch deleted file mode 100644 index 0c851df49e7..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0015-LoongArch-Simplify-the-autoconf-check-for-static-PIE.patch +++ /dev/null @@ -1,147 +0,0 @@ -From 7fa2895b1f8cc012cf17e1afb88f30acded9cefa Mon Sep 17 00:00:00 2001 -From: Xi Ruoyao -Date: Sun, 27 Aug 2023 00:36:49 +0800 -Subject: [PATCH 15/32] LoongArch: Simplify the autoconf check for static PIE - -We are strictly requiring GAS >= 2.41 now, so we don't need to check -assembler capability anymore. - -Signed-off-by: Xi Ruoyao ---- - sysdeps/loongarch/configure | 36 +++++++--------------------------- - sysdeps/loongarch/configure.ac | 30 +++++++++------------------- - 2 files changed, 16 insertions(+), 50 deletions(-) - -diff --git a/sysdeps/loongarch/configure b/sysdeps/loongarch/configure -index 395ddc92ca..30b60d1983 100644 ---- a/sysdeps/loongarch/configure -+++ b/sysdeps/loongarch/configure -@@ -4,21 +4,19 @@ - printf "%s\n" "#define HIDDEN_VAR_NEEDS_DYNAMIC_RELOC 1" >>confdefs.h - - --{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if the toolchain is sufficient to build static PIE on LoongArch" >&5 --printf %s "checking if the toolchain is sufficient to build static PIE on LoongArch... " >&6; } -+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if ${CC-cc} is sufficient to build static PIE on LoongArch" >&5 -+printf %s "checking if ${CC-cc} is sufficient to build static PIE on LoongArch... " >&6; } - if test ${libc_cv_static_pie_on_loongarch+y} - then : - printf %s "(cached) " >&6 - else $as_nop - -- cat > conftest1.S <<\EOF -+ cat > conftest.S <<\EOF - .global _start - .type _start, @function - _start: - li.w $a7, 93 -- /* This ensures the assembler supports explicit reloc. */ -- pcalau12i $a0, %pc_hi20(x) -- ld.w $a0, $a0, %pc_lo12(x) -+ li.w $a0, 0 - syscall 0 - - .data -@@ -27,41 +25,21 @@ x: - /* This should produce an R_LARCH_RELATIVE in the static PIE. */ - .dword _start - EOF -- cat > conftest2.S <<\EOF --.global f --.type f, @function --f: -- /* The linker should be able to handle this and produce a PLT entry. */ -- la.pcrel $t0, $t0, external_func -- jirl $zero, $t0, 0 --EOF - - libc_cv_static_pie_on_loongarch=no -- if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -static-pie -nostdlib -fPIE -o conftest1 conftest1.S' -- { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 -- test $ac_status = 0; }; } \ -- && { ac_try='LC_ALL=C $READELF -Wr conftest1 | grep -q R_LARCH_RELATIVE' -- { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 -- (eval $ac_try) 2>&5 -- ac_status=$? -- printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 -- test $ac_status = 0; }; } \ -- && ! { ac_try='LC_ALL=C $READELF -Wl conftest1 | grep -q INTERP' -+ if { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -static-pie -nostdlib -fPIE -o conftest conftest.S' - { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 - (eval $ac_try) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; } \ -- && { ac_try='${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -shared -nostdlib -fPIC -o conftest2.so conftest2.S' -+ && { ac_try='LC_ALL=C $READELF -Wr conftest | grep -q R_LARCH_RELATIVE' - { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 - (eval $ac_try) 2>&5 - ac_status=$? - printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 - test $ac_status = 0; }; } \ -- && { ac_try='LC_ALL=C $READELF -Wr conftest2.so | grep -q 'R_LARCH_JUMP_SLOT.*external_func'' -+ && ! { ac_try='LC_ALL=C $READELF -Wl conftest | grep -q INTERP' - { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_try\""; } >&5 - (eval $ac_try) 2>&5 - ac_status=$? -diff --git a/sysdeps/loongarch/configure.ac b/sysdeps/loongarch/configure.ac -index 989287c6d2..28a8ae5486 100644 ---- a/sysdeps/loongarch/configure.ac -+++ b/sysdeps/loongarch/configure.ac -@@ -8,19 +8,17 @@ AC_DEFINE(HIDDEN_VAR_NEEDS_DYNAMIC_RELOC) - dnl Test if the toolchain is new enough for static PIE. - dnl We need a GAS supporting explicit reloc (older GAS produces stack-based - dnl reloc and triggers an internal error in the linker). And, we need GCC to --dnl pass the correct linker flags for static PIE. GCC >= 13 and GAS >= 2.40 --dnl satisfy the requirement, but a distro may backport static PIE support into --dnl earlier GCC or Binutils releases as well. --AC_CACHE_CHECK([if the toolchain is sufficient to build static PIE on LoongArch], -+dnl pass the correct linker flags for static PIE. We strictly require GAS >= -+dnl 2.41 so we don't need to check the assembler capability, but we need to -+dnl check if GCC is doing the correct thing. -+AC_CACHE_CHECK([if ${CC-cc} is sufficient to build static PIE on LoongArch], - libc_cv_static_pie_on_loongarch, [ -- cat > conftest1.S <<\EOF -+ cat > conftest.S <<\EOF - .global _start - .type _start, @function - _start: - li.w $a7, 93 -- /* This ensures the assembler supports explicit reloc. */ -- pcalau12i $a0, %pc_hi20(x) -- ld.w $a0, $a0, %pc_lo12(x) -+ li.w $a0, 0 - syscall 0 - - .data -@@ -29,21 +27,11 @@ x: - /* This should produce an R_LARCH_RELATIVE in the static PIE. */ - .dword _start - EOF -- cat > conftest2.S <<\EOF --.global f --.type f, @function --f: -- /* The linker should be able to handle this and produce a PLT entry. */ -- la.pcrel $t0, $t0, external_func -- jirl $zero, $t0, 0 --EOF - - libc_cv_static_pie_on_loongarch=no -- if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -static-pie -nostdlib -fPIE -o conftest1 conftest1.S]) \ -- && AC_TRY_COMMAND([LC_ALL=C $READELF -Wr conftest1 | grep -q R_LARCH_RELATIVE]) \ -- && ! AC_TRY_COMMAND([LC_ALL=C $READELF -Wl conftest1 | grep -q INTERP]) \ -- && AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -shared -nostdlib -fPIC -o conftest2.so conftest2.S]) \ -- && AC_TRY_COMMAND([LC_ALL=C $READELF -Wr conftest2.so | grep -q 'R_LARCH_JUMP_SLOT.*external_func']) -+ if AC_TRY_COMMAND([${CC-cc} $CFLAGS $CPPFLAGS $LDFLAGS -static-pie -nostdlib -fPIE -o conftest conftest.S]) \ -+ && AC_TRY_COMMAND([LC_ALL=C $READELF -Wr conftest | grep -q R_LARCH_RELATIVE]) \ -+ && ! AC_TRY_COMMAND([LC_ALL=C $READELF -Wl conftest | grep -q INTERP]) - then - libc_cv_static_pie_on_loongarch=yes - fi --- -2.45.0 - diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0016-LoongArch-Remove-support-code-for-old-linker-in-star.patch b/runtime-optenv32/glibc+32/autobuild/patches/0016-LoongArch-Remove-support-code-for-old-linker-in-star.patch deleted file mode 100644 index 195966379f9..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0016-LoongArch-Remove-support-code-for-old-linker-in-star.patch +++ /dev/null @@ -1,54 +0,0 @@ -From 6061b33cd77288c33f275b224524be66ffa98453 Mon Sep 17 00:00:00 2001 -From: Xi Ruoyao -Date: Sun, 27 Aug 2023 00:36:50 +0800 -Subject: [PATCH 16/32] LoongArch: Remove support code for old linker in - start.S - -We are requiring Binutils >= 2.41, so la.pcrel always works here. - -Signed-off-by: Xi Ruoyao ---- - sysdeps/loongarch/start.S | 19 +++---------------- - 1 file changed, 3 insertions(+), 16 deletions(-) - -diff --git a/sysdeps/loongarch/start.S b/sysdeps/loongarch/start.S -index e9d82033b7..bf6bfc9ea4 100644 ---- a/sysdeps/loongarch/start.S -+++ b/sysdeps/loongarch/start.S -@@ -60,20 +60,7 @@ ENTRY (ENTRY_POINT) - cfi_undefined (1) - or a5, a0, zero /* rtld_fini */ - --#if ENABLE_STATIC_PIE --/* For static PIE, the GOT cannot be used in _start because the GOT entries are -- offsets instead of real addresses before __libc_start_main. -- __libc_start_main and/or main may be not local, so we rely on the linker to -- produce PLT entries for them. GNU ld >= 2.40 supports this. */ --# define LA la.pcrel --#else --/* Old GNU ld (< 2.40) cannot handle PC relative address against a non-local -- function correctly. We deem these old linkers failing to support static PIE -- and load the addresses from GOT. */ --# define LA la.got --#endif -- -- LA a0, t0, main -+ la.pcrel a0, t0, main - REG_L a1, sp, 0 - ADDI a2, sp, SZREG - -@@ -84,9 +71,9 @@ ENTRY (ENTRY_POINT) - move a4, zero /* used to be fini */ - or a6, sp, zero /* stack_end */ - -- LA ra, t0, __libc_start_main -+ la.pcrel ra, t0, __libc_start_main - jirl ra, ra, 0 - -- LA ra, t0, abort -+ la.pcrel ra, t0, abort - jirl ra, ra, 0 - END (ENTRY_POINT) --- -2.45.0 - diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0017-LoongArch-Micro-optimize-LD_PCREL.patch b/runtime-optenv32/glibc+32/autobuild/patches/0017-LoongArch-Micro-optimize-LD_PCREL.patch deleted file mode 100644 index a330c42e4f3..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0017-LoongArch-Micro-optimize-LD_PCREL.patch +++ /dev/null @@ -1,42 +0,0 @@ -From eff7d13a213d4c094f521a4aee9aaa1cdd47d18f Mon Sep 17 00:00:00 2001 -From: Xi Ruoyao -Date: Sun, 27 Aug 2023 00:36:51 +0800 -Subject: [PATCH 17/32] LoongArch: Micro-optimize LD_PCREL - -We are requiring Binutils >= 2.41, so explicit relocation syntax is -always supported by the assembler. Use it to reduce one instruction. - -Signed-off-by: Xi Ruoyao ---- - sysdeps/unix/sysv/linux/loongarch/pointer_guard.h | 10 ++++------ - 1 file changed, 4 insertions(+), 6 deletions(-) - -diff --git a/sysdeps/unix/sysv/linux/loongarch/pointer_guard.h b/sysdeps/unix/sysv/linux/loongarch/pointer_guard.h -index b25e353b37..d6c78687d4 100644 ---- a/sysdeps/unix/sysv/linux/loongarch/pointer_guard.h -+++ b/sysdeps/unix/sysv/linux/loongarch/pointer_guard.h -@@ -19,17 +19,15 @@ - #ifndef POINTER_GUARD_H - #define POINTER_GUARD_H - --/* Load a got-relative EXPR into G, using T. -- Note G and T are register names. */ -+/* Load a got-relative EXPR into register G. */ - #define LD_GLOBAL(G, EXPR) \ - la.global G, EXPR; \ - REG_L G, G, 0; - --/* Load a pc-relative EXPR into G, using T. -- Note G and T are register names. */ -+/* Load a pc-relative EXPR into register G. */ - #define LD_PCREL(G, EXPR) \ -- la.pcrel G, EXPR; \ -- REG_L G, G, 0; -+ pcalau12i G, %pc_hi20(EXPR); \ -+ REG_L G, G, %pc_lo12(EXPR); - - #if (IS_IN (rtld) \ - || (!defined SHARED && (IS_IN (libc) \ --- -2.45.0 - diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0018-LoongArch-Add-ifunc-support-for-rawmemchr-aligned-ls.patch b/runtime-optenv32/glibc+32/autobuild/patches/0018-LoongArch-Add-ifunc-support-for-rawmemchr-aligned-ls.patch deleted file mode 100644 index 7f149b56cc3..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0018-LoongArch-Add-ifunc-support-for-rawmemchr-aligned-ls.patch +++ /dev/null @@ -1,445 +0,0 @@ -From 181e0b7a9d5e35b21d126c600d4b36d29a9464d8 Mon Sep 17 00:00:00 2001 -From: dengjianbo -Date: Mon, 28 Aug 2023 10:08:35 +0800 -Subject: [PATCH 18/32] LoongArch: Add ifunc support for rawmemchr{aligned, - lsx, lasx} - -According to glibc rawmemchr microbenchmark, A few cases tested with -char '\0' experience performance degradation due to the lasx and lsx -versions don't handle the '\0' separately. Overall, rawmemchr-lasx -implementation could reduce the runtime about 40%-80%, rawmemchr-lsx -implementation could reduce the runtime about 40%-66%, rawmemchr-aligned -implementation could reduce the runtime about 20%-40%. ---- - sysdeps/loongarch/lp64/multiarch/Makefile | 3 + - .../lp64/multiarch/ifunc-impl-list.c | 8 ++ - .../lp64/multiarch/ifunc-rawmemchr.h | 40 ++++++ - .../lp64/multiarch/rawmemchr-aligned.S | 124 ++++++++++++++++++ - .../loongarch/lp64/multiarch/rawmemchr-lasx.S | 82 ++++++++++++ - .../loongarch/lp64/multiarch/rawmemchr-lsx.S | 71 ++++++++++ - sysdeps/loongarch/lp64/multiarch/rawmemchr.c | 37 ++++++ - 7 files changed, 365 insertions(+) - create mode 100644 sysdeps/loongarch/lp64/multiarch/ifunc-rawmemchr.h - create mode 100644 sysdeps/loongarch/lp64/multiarch/rawmemchr-aligned.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/rawmemchr-lasx.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/rawmemchr-lsx.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/rawmemchr.c - -diff --git a/sysdeps/loongarch/lp64/multiarch/Makefile b/sysdeps/loongarch/lp64/multiarch/Makefile -index 5d7ae7ae73..64416b025a 100644 ---- a/sysdeps/loongarch/lp64/multiarch/Makefile -+++ b/sysdeps/loongarch/lp64/multiarch/Makefile -@@ -21,5 +21,8 @@ sysdep_routines += \ - memmove-unaligned \ - memmove-lsx \ - memmove-lasx \ -+ rawmemchr-aligned \ -+ rawmemchr-lsx \ -+ rawmemchr-lasx \ - # sysdep_routines - endif -diff --git a/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c b/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -index c8ba87bd81..3db9af1460 100644 ---- a/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -+++ b/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -@@ -94,5 +94,13 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array, - IFUNC_IMPL_ADD (array, i, memmove, 1, __memmove_aligned) - ) - -+ IFUNC_IMPL (i, name, rawmemchr, -+#if !defined __loongarch_soft_float -+ IFUNC_IMPL_ADD (array, i, rawmemchr, SUPPORT_LASX, __rawmemchr_lasx) -+ IFUNC_IMPL_ADD (array, i, rawmemchr, SUPPORT_LSX, __rawmemchr_lsx) -+#endif -+ IFUNC_IMPL_ADD (array, i, rawmemchr, 1, __rawmemchr_aligned) -+ ) -+ - return i; - } -diff --git a/sysdeps/loongarch/lp64/multiarch/ifunc-rawmemchr.h b/sysdeps/loongarch/lp64/multiarch/ifunc-rawmemchr.h -new file mode 100644 -index 0000000000..a7bb4cf9ea ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/ifunc-rawmemchr.h -@@ -0,0 +1,40 @@ -+/* Common definition for rawmemchr ifunc selections. -+ All versions must be listed in ifunc-impl-list.c. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#include -+#include -+ -+#if !defined __loongarch_soft_float -+extern __typeof (REDIRECT_NAME) OPTIMIZE (lasx) attribute_hidden; -+extern __typeof (REDIRECT_NAME) OPTIMIZE (lsx) attribute_hidden; -+#endif -+extern __typeof (REDIRECT_NAME) OPTIMIZE (aligned) attribute_hidden; -+ -+static inline void * -+IFUNC_SELECTOR (void) -+{ -+#if !defined __loongarch_soft_float -+ if (SUPPORT_LASX) -+ return OPTIMIZE (lasx); -+ else if (SUPPORT_LSX) -+ return OPTIMIZE (lsx); -+ else -+#endif -+ return OPTIMIZE (aligned); -+} -diff --git a/sysdeps/loongarch/lp64/multiarch/rawmemchr-aligned.S b/sysdeps/loongarch/lp64/multiarch/rawmemchr-aligned.S -new file mode 100644 -index 0000000000..9c7155ae82 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/rawmemchr-aligned.S -@@ -0,0 +1,124 @@ -+/* Optimized rawmemchr implementation using basic LoongArch instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) -+# define RAWMEMCHR_NAME __rawmemchr_aligned -+#else -+# define RAWMEMCHR_NAME __rawmemchr -+#endif -+ -+LEAF(RAWMEMCHR_NAME, 6) -+ andi t1, a0, 0x7 -+ bstrins.d a0, zero, 2, 0 -+ lu12i.w a2, 0x01010 -+ bstrins.d a1, a1, 15, 8 -+ -+ ld.d t0, a0, 0 -+ slli.d t1, t1, 3 -+ ori a2, a2, 0x101 -+ bstrins.d a1, a1, 31, 16 -+ -+ li.w t8, -1 -+ bstrins.d a1, a1, 63, 32 -+ bstrins.d a2, a2, 63, 32 -+ sll.d t2, t8, t1 -+ -+ sll.d t3, a1, t1 -+ orn t0, t0, t2 -+ slli.d a3, a2, 7 -+ beqz a1, L(find_zero) -+ -+ xor t0, t0, t3 -+ sub.d t1, t0, a2 -+ andn t2, a3, t0 -+ and t3, t1, t2 -+ -+ bnez t3, L(count_pos) -+ addi.d a0, a0, 8 -+ -+L(loop): -+ ld.d t0, a0, 0 -+ xor t0, t0, a1 -+ -+ sub.d t1, t0, a2 -+ andn t2, a3, t0 -+ and t3, t1, t2 -+ bnez t3, L(count_pos) -+ -+ ld.d t0, a0, 8 -+ addi.d a0, a0, 16 -+ xor t0, t0, a1 -+ sub.d t1, t0, a2 -+ -+ andn t2, a3, t0 -+ and t3, t1, t2 -+ beqz t3, L(loop) -+ addi.d a0, a0, -8 -+L(count_pos): -+ ctz.d t0, t3 -+ srli.d t0, t0, 3 -+ add.d a0, a0, t0 -+ jr ra -+ -+L(loop_7bit): -+ ld.d t0, a0, 0 -+L(find_zero): -+ sub.d t1, t0, a2 -+ and t2, t1, a3 -+ bnez t2, L(more_check) -+ -+ ld.d t0, a0, 8 -+ addi.d a0, a0, 16 -+ sub.d t1, t0, a2 -+ and t2, t1, a3 -+ -+ beqz t2, L(loop_7bit) -+ addi.d a0, a0, -8 -+ -+L(more_check): -+ andn t2, a3, t0 -+ and t3, t1, t2 -+ bnez t3, L(count_pos) -+ addi.d a0, a0, 8 -+ -+L(loop_8bit): -+ ld.d t0, a0, 0 -+ -+ sub.d t1, t0, a2 -+ andn t2, a3, t0 -+ and t3, t1, t2 -+ bnez t3, L(count_pos) -+ -+ ld.d t0, a0, 8 -+ addi.d a0, a0, 16 -+ sub.d t1, t0, a2 -+ -+ andn t2, a3, t0 -+ and t3, t1, t2 -+ beqz t3, L(loop_8bit) -+ -+ addi.d a0, a0, -8 -+ b L(count_pos) -+ -+END(RAWMEMCHR_NAME) -+ -+libc_hidden_builtin_def (__rawmemchr) -diff --git a/sysdeps/loongarch/lp64/multiarch/rawmemchr-lasx.S b/sysdeps/loongarch/lp64/multiarch/rawmemchr-lasx.S -new file mode 100644 -index 0000000000..be2eb59dbe ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/rawmemchr-lasx.S -@@ -0,0 +1,82 @@ -+/* Optimized rawmemchr implementation using LoongArch LASX instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) && !defined __loongarch_soft_float -+ -+# define RAWMEMCHR __rawmemchr_lasx -+ -+LEAF(RAWMEMCHR, 6) -+ move a2, a0 -+ bstrins.d a0, zero, 5, 0 -+ xvld xr0, a0, 0 -+ xvld xr1, a0, 32 -+ -+ xvreplgr2vr.b xr2, a1 -+ xvseq.b xr0, xr0, xr2 -+ xvseq.b xr1, xr1, xr2 -+ xvmsknz.b xr0, xr0 -+ -+ xvmsknz.b xr1, xr1 -+ xvpickve.w xr3, xr0, 4 -+ xvpickve.w xr4, xr1, 4 -+ vilvl.h vr0, vr3, vr0 -+ -+ vilvl.h vr1, vr4, vr1 -+ vilvl.w vr0, vr1, vr0 -+ movfr2gr.d t0, fa0 -+ sra.d t0, t0, a2 -+ -+ -+ beqz t0, L(loop) -+ ctz.d t0, t0 -+ add.d a0, a2, t0 -+ jr ra -+ -+L(loop): -+ xvld xr0, a0, 64 -+ xvld xr1, a0, 96 -+ addi.d a0, a0, 64 -+ xvseq.b xr0, xr0, xr2 -+ -+ xvseq.b xr1, xr1, xr2 -+ xvmax.bu xr3, xr0, xr1 -+ xvseteqz.v fcc0, xr3 -+ bcnez fcc0, L(loop) -+ -+ xvmsknz.b xr0, xr0 -+ xvmsknz.b xr1, xr1 -+ xvpickve.w xr3, xr0, 4 -+ xvpickve.w xr4, xr1, 4 -+ -+ -+ vilvl.h vr0, vr3, vr0 -+ vilvl.h vr1, vr4, vr1 -+ vilvl.w vr0, vr1, vr0 -+ movfr2gr.d t0, fa0 -+ -+ ctz.d t0, t0 -+ add.d a0, a0, t0 -+ jr ra -+END(RAWMEMCHR) -+ -+libc_hidden_builtin_def (RAWMEMCHR) -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/rawmemchr-lsx.S b/sysdeps/loongarch/lp64/multiarch/rawmemchr-lsx.S -new file mode 100644 -index 0000000000..2f6fe024dc ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/rawmemchr-lsx.S -@@ -0,0 +1,71 @@ -+/* Optimized rawmemchr implementation using LoongArch LSX instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) && !defined __loongarch_soft_float -+ -+# define RAWMEMCHR __rawmemchr_lsx -+ -+LEAF(RAWMEMCHR, 6) -+ move a2, a0 -+ bstrins.d a0, zero, 4, 0 -+ vld vr0, a0, 0 -+ vld vr1, a0, 16 -+ -+ vreplgr2vr.b vr2, a1 -+ vseq.b vr0, vr0, vr2 -+ vseq.b vr1, vr1, vr2 -+ vmsknz.b vr0, vr0 -+ -+ vmsknz.b vr1, vr1 -+ vilvl.h vr0, vr1, vr0 -+ movfr2gr.s t0, fa0 -+ sra.w t0, t0, a2 -+ -+ beqz t0, L(loop) -+ ctz.w t0, t0 -+ add.d a0, a2, t0 -+ jr ra -+ -+ -+L(loop): -+ vld vr0, a0, 32 -+ vld vr1, a0, 48 -+ addi.d a0, a0, 32 -+ vseq.b vr0, vr0, vr2 -+ -+ vseq.b vr1, vr1, vr2 -+ vmax.bu vr3, vr0, vr1 -+ vseteqz.v fcc0, vr3 -+ bcnez fcc0, L(loop) -+ -+ vmsknz.b vr0, vr0 -+ vmsknz.b vr1, vr1 -+ vilvl.h vr0, vr1, vr0 -+ movfr2gr.s t0, fa0 -+ -+ ctz.w t0, t0 -+ add.d a0, a0, t0 -+ jr ra -+END(RAWMEMCHR) -+ -+libc_hidden_builtin_def (RAWMEMCHR) -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/rawmemchr.c b/sysdeps/loongarch/lp64/multiarch/rawmemchr.c -new file mode 100644 -index 0000000000..89c7ffff8f ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/rawmemchr.c -@@ -0,0 +1,37 @@ -+/* Multiple versions of rawmemchr. -+ All versions must be listed in ifunc-impl-list.c. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#if IS_IN (libc) -+# define rawmemchr __redirect_rawmemchr -+# define __rawmemchr __redirect___rawmemchr -+# include -+# undef rawmemchr -+# undef __rawmemchr -+ -+# define SYMBOL_NAME rawmemchr -+# include "ifunc-rawmemchr.h" -+ -+libc_ifunc_redirected (__redirect_rawmemchr, __rawmemchr, -+ IFUNC_SELECTOR ()); -+weak_alias (__rawmemchr, rawmemchr) -+# ifdef SHARED -+__hidden_ver1 (__rawmemchr, __GI___rawmemchr, __redirect___rawmemchr) -+ __attribute__((visibility ("hidden"))); -+# endif -+#endif --- -2.45.0 - diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0019-LoongArch-Add-ifunc-support-for-memchr-aligned-lsx-l.patch b/runtime-optenv32/glibc+32/autobuild/patches/0019-LoongArch-Add-ifunc-support-for-memchr-aligned-lsx-l.patch deleted file mode 100644 index 54bcd47ee68..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0019-LoongArch-Add-ifunc-support-for-memchr-aligned-lsx-l.patch +++ /dev/null @@ -1,482 +0,0 @@ -From e622a3d3a7b66443fdf245842623e5a9d6c14822 Mon Sep 17 00:00:00 2001 -From: dengjianbo -Date: Mon, 28 Aug 2023 10:08:36 +0800 -Subject: [PATCH 19/32] LoongArch: Add ifunc support for memchr{aligned, lsx, - lasx} - -According to glibc memchr microbenchmark, this implementation could reduce -the runtime as following: - -Name Percent of runtime reduced -memchr-lasx 37%-83% -memchr-lsx 30%-66% -memchr-aligned 0%-15% ---- - sysdeps/loongarch/lp64/multiarch/Makefile | 3 + - .../lp64/multiarch/ifunc-impl-list.c | 7 ++ - .../loongarch/lp64/multiarch/ifunc-memchr.h | 40 ++++++ - .../loongarch/lp64/multiarch/memchr-aligned.S | 95 ++++++++++++++ - .../loongarch/lp64/multiarch/memchr-lasx.S | 117 ++++++++++++++++++ - sysdeps/loongarch/lp64/multiarch/memchr-lsx.S | 102 +++++++++++++++ - sysdeps/loongarch/lp64/multiarch/memchr.c | 37 ++++++ - 7 files changed, 401 insertions(+) - create mode 100644 sysdeps/loongarch/lp64/multiarch/ifunc-memchr.h - create mode 100644 sysdeps/loongarch/lp64/multiarch/memchr-aligned.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/memchr-lasx.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/memchr-lsx.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/memchr.c - -diff --git a/sysdeps/loongarch/lp64/multiarch/Makefile b/sysdeps/loongarch/lp64/multiarch/Makefile -index 64416b025a..2f4802cfa4 100644 ---- a/sysdeps/loongarch/lp64/multiarch/Makefile -+++ b/sysdeps/loongarch/lp64/multiarch/Makefile -@@ -24,5 +24,8 @@ sysdep_routines += \ - rawmemchr-aligned \ - rawmemchr-lsx \ - rawmemchr-lasx \ -+ memchr-aligned \ -+ memchr-lsx \ -+ memchr-lasx \ - # sysdep_routines - endif -diff --git a/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c b/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -index 3db9af1460..a567b9cf4d 100644 ---- a/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -+++ b/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -@@ -102,5 +102,12 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array, - IFUNC_IMPL_ADD (array, i, rawmemchr, 1, __rawmemchr_aligned) - ) - -+ IFUNC_IMPL (i, name, memchr, -+#if !defined __loongarch_soft_float -+ IFUNC_IMPL_ADD (array, i, memchr, SUPPORT_LASX, __memchr_lasx) -+ IFUNC_IMPL_ADD (array, i, memchr, SUPPORT_LSX, __memchr_lsx) -+#endif -+ IFUNC_IMPL_ADD (array, i, memchr, 1, __memchr_aligned) -+ ) - return i; - } -diff --git a/sysdeps/loongarch/lp64/multiarch/ifunc-memchr.h b/sysdeps/loongarch/lp64/multiarch/ifunc-memchr.h -new file mode 100644 -index 0000000000..9060ccd54d ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/ifunc-memchr.h -@@ -0,0 +1,40 @@ -+/* Common definition for memchr ifunc selections. -+ All versions must be listed in ifunc-impl-list.c. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#include -+#include -+ -+#if !defined __loongarch_soft_float -+extern __typeof (REDIRECT_NAME) OPTIMIZE (lasx) attribute_hidden; -+extern __typeof (REDIRECT_NAME) OPTIMIZE (lsx) attribute_hidden; -+#endif -+extern __typeof (REDIRECT_NAME) OPTIMIZE (aligned) attribute_hidden; -+ -+static inline void * -+IFUNC_SELECTOR (void) -+{ -+#if !defined __loongarch_soft_float -+ if (SUPPORT_LASX) -+ return OPTIMIZE (lasx); -+ else if (SUPPORT_LSX) -+ return OPTIMIZE (lsx); -+ else -+#endif -+ return OPTIMIZE (aligned); -+} -diff --git a/sysdeps/loongarch/lp64/multiarch/memchr-aligned.S b/sysdeps/loongarch/lp64/multiarch/memchr-aligned.S -new file mode 100644 -index 0000000000..81d0d00461 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/memchr-aligned.S -@@ -0,0 +1,95 @@ -+/* Optimized memchr implementation using basic LoongArch instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) -+# define MEMCHR_NAME __memchr_aligned -+#else -+# define MEMCHR_NAME memchr -+#endif -+ -+LEAF(MEMCHR_NAME, 6) -+ beqz a2, L(out) -+ andi t1, a0, 0x7 -+ add.d a5, a0, a2 -+ bstrins.d a0, zero, 2, 0 -+ -+ ld.d t0, a0, 0 -+ bstrins.d a1, a1, 15, 8 -+ lu12i.w a3, 0x01010 -+ slli.d t2, t1, 03 -+ -+ bstrins.d a1, a1, 31, 16 -+ ori a3, a3, 0x101 -+ li.d t7, -1 -+ li.d t8, 8 -+ -+ bstrins.d a1, a1, 63, 32 -+ bstrins.d a3, a3, 63, 32 -+ sll.d t2, t7, t2 -+ xor t0, t0, a1 -+ -+ -+ addi.d a6, a5, -1 -+ slli.d a4, a3, 7 -+ sub.d t1, t8, t1 -+ orn t0, t0, t2 -+ -+ sub.d t2, t0, a3 -+ andn t3, a4, t0 -+ bstrins.d a6, zero, 2, 0 -+ and t0, t2, t3 -+ -+ bgeu t1, a2, L(end) -+L(loop): -+ bnez t0, L(found) -+ ld.d t1, a0, 8 -+ xor t0, t1, a1 -+ -+ addi.d a0, a0, 8 -+ sub.d t2, t0, a3 -+ andn t3, a4, t0 -+ and t0, t2, t3 -+ -+ -+ bne a0, a6, L(loop) -+L(end): -+ sub.d t1, a5, a6 -+ ctz.d t0, t0 -+ srli.d t0, t0, 3 -+ -+ sltu t1, t0, t1 -+ add.d a0, a0, t0 -+ maskeqz a0, a0, t1 -+ jr ra -+ -+L(found): -+ ctz.d t0, t0 -+ srli.d t0, t0, 3 -+ add.d a0, a0, t0 -+ jr ra -+ -+L(out): -+ move a0, zero -+ jr ra -+END(MEMCHR_NAME) -+ -+libc_hidden_builtin_def (MEMCHR_NAME) -diff --git a/sysdeps/loongarch/lp64/multiarch/memchr-lasx.S b/sysdeps/loongarch/lp64/multiarch/memchr-lasx.S -new file mode 100644 -index 0000000000..a26cdf48b5 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/memchr-lasx.S -@@ -0,0 +1,117 @@ -+/* Optimized memchr implementation using LoongArch LASX instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) && !defined __loongarch_soft_float -+ -+# define MEMCHR __memchr_lasx -+ -+LEAF(MEMCHR, 6) -+ beqz a2, L(ret0) -+ add.d a3, a0, a2 -+ andi t0, a0, 0x3f -+ bstrins.d a0, zero, 5, 0 -+ -+ xvld xr0, a0, 0 -+ xvld xr1, a0, 32 -+ li.d t1, -1 -+ li.d t2, 64 -+ -+ xvreplgr2vr.b xr2, a1 -+ sll.d t3, t1, t0 -+ sub.d t2, t2, t0 -+ xvseq.b xr0, xr0, xr2 -+ -+ xvseq.b xr1, xr1, xr2 -+ xvmsknz.b xr0, xr0 -+ xvmsknz.b xr1, xr1 -+ xvpickve.w xr3, xr0, 4 -+ -+ -+ xvpickve.w xr4, xr1, 4 -+ vilvl.h vr0, vr3, vr0 -+ vilvl.h vr1, vr4, vr1 -+ vilvl.w vr0, vr1, vr0 -+ -+ movfr2gr.d t0, fa0 -+ and t0, t0, t3 -+ bgeu t2, a2, L(end) -+ bnez t0, L(found) -+ -+ addi.d a4, a3, -1 -+ bstrins.d a4, zero, 5, 0 -+L(loop): -+ xvld xr0, a0, 64 -+ xvld xr1, a0, 96 -+ -+ addi.d a0, a0, 64 -+ xvseq.b xr0, xr0, xr2 -+ xvseq.b xr1, xr1, xr2 -+ beq a0, a4, L(out) -+ -+ -+ xvmax.bu xr3, xr0, xr1 -+ xvseteqz.v fcc0, xr3 -+ bcnez fcc0, L(loop) -+ xvmsknz.b xr0, xr0 -+ -+ xvmsknz.b xr1, xr1 -+ xvpickve.w xr3, xr0, 4 -+ xvpickve.w xr4, xr1, 4 -+ vilvl.h vr0, vr3, vr0 -+ -+ vilvl.h vr1, vr4, vr1 -+ vilvl.w vr0, vr1, vr0 -+ movfr2gr.d t0, fa0 -+L(found): -+ ctz.d t1, t0 -+ -+ add.d a0, a0, t1 -+ jr ra -+L(ret0): -+ move a0, zero -+ jr ra -+ -+ -+L(out): -+ xvmsknz.b xr0, xr0 -+ xvmsknz.b xr1, xr1 -+ xvpickve.w xr3, xr0, 4 -+ xvpickve.w xr4, xr1, 4 -+ -+ vilvl.h vr0, vr3, vr0 -+ vilvl.h vr1, vr4, vr1 -+ vilvl.w vr0, vr1, vr0 -+ movfr2gr.d t0, fa0 -+ -+L(end): -+ sub.d t2, zero, a3 -+ srl.d t1, t1, t2 -+ and t0, t0, t1 -+ ctz.d t1, t0 -+ -+ add.d a0, a0, t1 -+ maskeqz a0, a0, t0 -+ jr ra -+END(MEMCHR) -+ -+libc_hidden_builtin_def (MEMCHR) -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/memchr-lsx.S b/sysdeps/loongarch/lp64/multiarch/memchr-lsx.S -new file mode 100644 -index 0000000000..a73ecd2599 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/memchr-lsx.S -@@ -0,0 +1,102 @@ -+/* Optimized memchr implementation using LoongArch LSX instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) && !defined __loongarch_soft_float -+ -+# define MEMCHR __memchr_lsx -+ -+LEAF(MEMCHR, 6) -+ beqz a2, L(ret0) -+ add.d a3, a0, a2 -+ andi t0, a0, 0x1f -+ bstrins.d a0, zero, 4, 0 -+ -+ vld vr0, a0, 0 -+ vld vr1, a0, 16 -+ li.d t1, -1 -+ li.d t2, 32 -+ -+ vreplgr2vr.b vr2, a1 -+ sll.d t3, t1, t0 -+ sub.d t2, t2, t0 -+ vseq.b vr0, vr0, vr2 -+ -+ vseq.b vr1, vr1, vr2 -+ vmsknz.b vr0, vr0 -+ vmsknz.b vr1, vr1 -+ vilvl.h vr0, vr1, vr0 -+ -+ -+ movfr2gr.s t0, fa0 -+ and t0, t0, t3 -+ bgeu t2, a2, L(end) -+ bnez t0, L(found) -+ -+ addi.d a4, a3, -1 -+ bstrins.d a4, zero, 4, 0 -+L(loop): -+ vld vr0, a0, 32 -+ vld vr1, a0, 48 -+ -+ addi.d a0, a0, 32 -+ vseq.b vr0, vr0, vr2 -+ vseq.b vr1, vr1, vr2 -+ beq a0, a4, L(out) -+ -+ vmax.bu vr3, vr0, vr1 -+ vseteqz.v fcc0, vr3 -+ bcnez fcc0, L(loop) -+ vmsknz.b vr0, vr0 -+ -+ -+ vmsknz.b vr1, vr1 -+ vilvl.h vr0, vr1, vr0 -+ movfr2gr.s t0, fa0 -+L(found): -+ ctz.w t0, t0 -+ -+ add.d a0, a0, t0 -+ jr ra -+L(ret0): -+ move a0, zero -+ jr ra -+ -+L(out): -+ vmsknz.b vr0, vr0 -+ vmsknz.b vr1, vr1 -+ vilvl.h vr0, vr1, vr0 -+ movfr2gr.s t0, fa0 -+ -+L(end): -+ sub.d t2, zero, a3 -+ srl.w t1, t1, t2 -+ and t0, t0, t1 -+ ctz.w t1, t0 -+ -+ -+ add.d a0, a0, t1 -+ maskeqz a0, a0, t0 -+ jr ra -+END(MEMCHR) -+ -+libc_hidden_builtin_def (MEMCHR) -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/memchr.c b/sysdeps/loongarch/lp64/multiarch/memchr.c -new file mode 100644 -index 0000000000..059479c0ce ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/memchr.c -@@ -0,0 +1,37 @@ -+/* Multiple versions of memchr. -+ All versions must be listed in ifunc-impl-list.c. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+/* Define multiple versions only for the definition in libc. */ -+#if IS_IN (libc) -+# define memchr __redirect_memchr -+# include -+# undef memchr -+ -+# define SYMBOL_NAME memchr -+# include "ifunc-memchr.h" -+ -+libc_ifunc_redirected (__redirect_memchr, memchr, -+ IFUNC_SELECTOR ()); -+ -+# ifdef SHARED -+__hidden_ver1 (memchr, __GI_memchr, __redirect_memchr) -+ __attribute__ ((visibility ("hidden"))) __attribute_copy__ (memchr); -+# endif -+ -+#endif --- -2.45.0 - diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0020-LoongArch-Add-ifunc-support-for-memrchr-lsx-lasx.patch b/runtime-optenv32/glibc+32/autobuild/patches/0020-LoongArch-Add-ifunc-support-for-memrchr-lsx-lasx.patch deleted file mode 100644 index 13b87180dea..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0020-LoongArch-Add-ifunc-support-for-memrchr-lsx-lasx.patch +++ /dev/null @@ -1,414 +0,0 @@ -From 16bb852db425d75af604f9cef305adf39f7ada19 Mon Sep 17 00:00:00 2001 -From: dengjianbo -Date: Mon, 28 Aug 2023 10:08:37 +0800 -Subject: [PATCH 20/32] LoongArch: Add ifunc support for memrchr{lsx, lasx} - -According to glibc memrchr microbenchmark, this implementation could reduce -the runtime as following: - -Name Percent of rutime reduced -memrchr-lasx 20%-83% -memrchr-lsx 20%-64% ---- - sysdeps/loongarch/lp64/multiarch/Makefile | 3 + - .../lp64/multiarch/ifunc-impl-list.c | 8 ++ - .../loongarch/lp64/multiarch/ifunc-memrchr.h | 40 ++++++ - .../lp64/multiarch/memrchr-generic.c | 23 ++++ - .../loongarch/lp64/multiarch/memrchr-lasx.S | 123 ++++++++++++++++++ - .../loongarch/lp64/multiarch/memrchr-lsx.S | 105 +++++++++++++++ - sysdeps/loongarch/lp64/multiarch/memrchr.c | 33 +++++ - 7 files changed, 335 insertions(+) - create mode 100644 sysdeps/loongarch/lp64/multiarch/ifunc-memrchr.h - create mode 100644 sysdeps/loongarch/lp64/multiarch/memrchr-generic.c - create mode 100644 sysdeps/loongarch/lp64/multiarch/memrchr-lasx.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/memrchr-lsx.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/memrchr.c - -diff --git a/sysdeps/loongarch/lp64/multiarch/Makefile b/sysdeps/loongarch/lp64/multiarch/Makefile -index 2f4802cfa4..7b87bc9055 100644 ---- a/sysdeps/loongarch/lp64/multiarch/Makefile -+++ b/sysdeps/loongarch/lp64/multiarch/Makefile -@@ -27,5 +27,8 @@ sysdep_routines += \ - memchr-aligned \ - memchr-lsx \ - memchr-lasx \ -+ memrchr-generic \ -+ memrchr-lsx \ -+ memrchr-lasx \ - # sysdep_routines - endif -diff --git a/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c b/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -index a567b9cf4d..8bd5489ee2 100644 ---- a/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -+++ b/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -@@ -109,5 +109,13 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array, - #endif - IFUNC_IMPL_ADD (array, i, memchr, 1, __memchr_aligned) - ) -+ -+ IFUNC_IMPL (i, name, memrchr, -+#if !defined __loongarch_soft_float -+ IFUNC_IMPL_ADD (array, i, memrchr, SUPPORT_LASX, __memrchr_lasx) -+ IFUNC_IMPL_ADD (array, i, memrchr, SUPPORT_LSX, __memrchr_lsx) -+#endif -+ IFUNC_IMPL_ADD (array, i, memrchr, 1, __memrchr_generic) -+ ) - return i; - } -diff --git a/sysdeps/loongarch/lp64/multiarch/ifunc-memrchr.h b/sysdeps/loongarch/lp64/multiarch/ifunc-memrchr.h -new file mode 100644 -index 0000000000..8215f9ad94 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/ifunc-memrchr.h -@@ -0,0 +1,40 @@ -+/* Common definition for memrchr implementation. -+ All versions must be listed in ifunc-impl-list.c. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#include -+#include -+ -+#if !defined __loongarch_soft_float -+extern __typeof (REDIRECT_NAME) OPTIMIZE (lasx) attribute_hidden; -+extern __typeof (REDIRECT_NAME) OPTIMIZE (lsx) attribute_hidden; -+#endif -+extern __typeof (REDIRECT_NAME) OPTIMIZE (generic) attribute_hidden; -+ -+static inline void * -+IFUNC_SELECTOR (void) -+{ -+#if !defined __loongarch_soft_float -+ if (SUPPORT_LASX) -+ return OPTIMIZE (lasx); -+ else if (SUPPORT_LSX) -+ return OPTIMIZE (lsx); -+ else -+#endif -+ return OPTIMIZE (generic); -+} -diff --git a/sysdeps/loongarch/lp64/multiarch/memrchr-generic.c b/sysdeps/loongarch/lp64/multiarch/memrchr-generic.c -new file mode 100644 -index 0000000000..ced61ebce5 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/memrchr-generic.c -@@ -0,0 +1,23 @@ -+/* Generic implementation of memrchr. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#if IS_IN (libc) -+# define MEMRCHR __memrchr_generic -+#endif -+ -+#include -diff --git a/sysdeps/loongarch/lp64/multiarch/memrchr-lasx.S b/sysdeps/loongarch/lp64/multiarch/memrchr-lasx.S -new file mode 100644 -index 0000000000..5f3e0d06d7 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/memrchr-lasx.S -@@ -0,0 +1,123 @@ -+/* Optimized memrchr implementation using LoongArch LASX instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) && !defined __loongarch_soft_float -+ -+#ifndef MEMRCHR -+# define MEMRCHR __memrchr_lasx -+#endif -+ -+LEAF(MEMRCHR, 6) -+ beqz a2, L(ret0) -+ addi.d a2, a2, -1 -+ add.d a3, a0, a2 -+ andi t1, a3, 0x3f -+ -+ bstrins.d a3, zero, 5, 0 -+ addi.d t1, t1, 1 -+ xvld xr0, a3, 0 -+ xvld xr1, a3, 32 -+ -+ sub.d t2, zero, t1 -+ li.d t3, -1 -+ xvreplgr2vr.b xr2, a1 -+ andi t4, a0, 0x3f -+ -+ srl.d t2, t3, t2 -+ xvseq.b xr0, xr0, xr2 -+ xvseq.b xr1, xr1, xr2 -+ xvmsknz.b xr0, xr0 -+ -+ -+ xvmsknz.b xr1, xr1 -+ xvpickve.w xr3, xr0, 4 -+ xvpickve.w xr4, xr1, 4 -+ vilvl.h vr0, vr3, vr0 -+ -+ vilvl.h vr1, vr4, vr1 -+ vilvl.w vr0, vr1, vr0 -+ movfr2gr.d t0, fa0 -+ and t0, t0, t2 -+ -+ bltu a2, t1, L(end) -+ bnez t0, L(found) -+ bstrins.d a0, zero, 5, 0 -+L(loop): -+ xvld xr0, a3, -64 -+ -+ xvld xr1, a3, -32 -+ addi.d a3, a3, -64 -+ xvseq.b xr0, xr0, xr2 -+ xvseq.b xr1, xr1, xr2 -+ -+ -+ beq a0, a3, L(out) -+ xvmax.bu xr3, xr0, xr1 -+ xvseteqz.v fcc0, xr3 -+ bcnez fcc0, L(loop) -+ -+ xvmsknz.b xr0, xr0 -+ xvmsknz.b xr1, xr1 -+ xvpickve.w xr3, xr0, 4 -+ xvpickve.w xr4, xr1, 4 -+ -+ vilvl.h vr0, vr3, vr0 -+ vilvl.h vr1, vr4, vr1 -+ vilvl.w vr0, vr1, vr0 -+ movfr2gr.d t0, fa0 -+ -+L(found): -+ addi.d a0, a3, 63 -+ clz.d t1, t0 -+ sub.d a0, a0, t1 -+ jr ra -+ -+ -+L(out): -+ xvmsknz.b xr0, xr0 -+ xvmsknz.b xr1, xr1 -+ xvpickve.w xr3, xr0, 4 -+ xvpickve.w xr4, xr1, 4 -+ -+ vilvl.h vr0, vr3, vr0 -+ vilvl.h vr1, vr4, vr1 -+ vilvl.w vr0, vr1, vr0 -+ movfr2gr.d t0, fa0 -+ -+L(end): -+ sll.d t2, t3, t4 -+ and t0, t0, t2 -+ addi.d a0, a3, 63 -+ clz.d t1, t0 -+ -+ sub.d a0, a0, t1 -+ maskeqz a0, a0, t0 -+ jr ra -+L(ret0): -+ move a0, zero -+ -+ -+ jr ra -+END(MEMRCHR) -+ -+libc_hidden_builtin_def (MEMRCHR) -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/memrchr-lsx.S b/sysdeps/loongarch/lp64/multiarch/memrchr-lsx.S -new file mode 100644 -index 0000000000..39a7c8b076 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/memrchr-lsx.S -@@ -0,0 +1,105 @@ -+/* Optimized memrchr implementation using LoongArch LSX instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) && !defined __loongarch_soft_float -+ -+# define MEMRCHR __memrchr_lsx -+ -+LEAF(MEMRCHR, 6) -+ beqz a2, L(ret0) -+ addi.d a2, a2, -1 -+ add.d a3, a0, a2 -+ andi t1, a3, 0x1f -+ -+ bstrins.d a3, zero, 4, 0 -+ addi.d t1, t1, 1 -+ vld vr0, a3, 0 -+ vld vr1, a3, 16 -+ -+ sub.d t2, zero, t1 -+ li.d t3, -1 -+ vreplgr2vr.b vr2, a1 -+ andi t4, a0, 0x1f -+ -+ srl.d t2, t3, t2 -+ vseq.b vr0, vr0, vr2 -+ vseq.b vr1, vr1, vr2 -+ vmsknz.b vr0, vr0 -+ -+ -+ vmsknz.b vr1, vr1 -+ vilvl.h vr0, vr1, vr0 -+ movfr2gr.s t0, fa0 -+ and t0, t0, t2 -+ -+ bltu a2, t1, L(end) -+ bnez t0, L(found) -+ bstrins.d a0, zero, 4, 0 -+L(loop): -+ vld vr0, a3, -32 -+ -+ vld vr1, a3, -16 -+ addi.d a3, a3, -32 -+ vseq.b vr0, vr0, vr2 -+ vseq.b vr1, vr1, vr2 -+ -+ beq a0, a3, L(out) -+ vmax.bu vr3, vr0, vr1 -+ vseteqz.v fcc0, vr3 -+ bcnez fcc0, L(loop) -+ -+ -+ vmsknz.b vr0, vr0 -+ vmsknz.b vr1, vr1 -+ vilvl.h vr0, vr1, vr0 -+ movfr2gr.s t0, fa0 -+ -+L(found): -+ addi.d a0, a3, 31 -+ clz.w t1, t0 -+ sub.d a0, a0, t1 -+ jr ra -+ -+L(out): -+ vmsknz.b vr0, vr0 -+ vmsknz.b vr1, vr1 -+ vilvl.h vr0, vr1, vr0 -+ movfr2gr.s t0, fa0 -+ -+L(end): -+ sll.d t2, t3, t4 -+ and t0, t0, t2 -+ addi.d a0, a3, 31 -+ clz.w t1, t0 -+ -+ -+ sub.d a0, a0, t1 -+ maskeqz a0, a0, t0 -+ jr ra -+L(ret0): -+ move a0, zero -+ -+ jr ra -+END(MEMRCHR) -+ -+libc_hidden_builtin_def (MEMRCHR) -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/memrchr.c b/sysdeps/loongarch/lp64/multiarch/memrchr.c -new file mode 100644 -index 0000000000..8baba9ab7e ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/memrchr.c -@@ -0,0 +1,33 @@ -+/* Multiple versions of memrchr. -+ All versions must be listed in ifunc-impl-list.c. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+/* Define multiple versions only for the definition in libc. */ -+#if IS_IN (libc) -+# define memrchr __redirect_memrchr -+# include -+# undef memrchr -+ -+# define SYMBOL_NAME memrchr -+# include "ifunc-memrchr.h" -+ -+libc_ifunc_redirected (__redirect_memrchr, __memrchr, IFUNC_SELECTOR ()); -+libc_hidden_def (__memrchr) -+weak_alias (__memrchr, memrchr) -+ -+#endif --- -2.45.0 - diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0021-LoongArch-Add-ifunc-support-for-memset-aligned-unali.patch b/runtime-optenv32/glibc+32/autobuild/patches/0021-LoongArch-Add-ifunc-support-for-memset-aligned-unali.patch deleted file mode 100644 index c418f3198d6..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0021-LoongArch-Add-ifunc-support-for-memset-aligned-unali.patch +++ /dev/null @@ -1,781 +0,0 @@ -From 739ca1142d5323f8c07425c4292eccc09784c745 Mon Sep 17 00:00:00 2001 -From: dengjianbo -Date: Mon, 28 Aug 2023 10:08:38 +0800 -Subject: [PATCH 21/32] LoongArch: Add ifunc support for memset{aligned, - unaligned, lsx, lasx} - -According to glibc memset microbenchmark test results, for LSX and LASX -versions, A few cases with length less than 8 experience performace -degradation, overall, the LASX version could reduce the runtime about -15% - 75%, LSX version could reduce the runtime about 15%-50%. - -The unaligned version uses unaligned memmory access to set data which -length is less than 64 and make address aligned with 8. For this part, -the performace is better than aligned version. Comparing with the generic -version, the performance is close when the length is larger than 128. When -the length is 8-128, the unaligned version could reduce the runtime about -30%-70%, the aligned version could reduce the runtime about 20%-50%. ---- - sysdeps/loongarch/lp64/multiarch/Makefile | 4 + - .../lp64/multiarch/dl-symbol-redir-ifunc.h | 24 +++ - .../lp64/multiarch/ifunc-impl-list.c | 10 + - .../loongarch/lp64/multiarch/memset-aligned.S | 174 ++++++++++++++++++ - .../loongarch/lp64/multiarch/memset-lasx.S | 142 ++++++++++++++ - sysdeps/loongarch/lp64/multiarch/memset-lsx.S | 135 ++++++++++++++ - .../lp64/multiarch/memset-unaligned.S | 162 ++++++++++++++++ - sysdeps/loongarch/lp64/multiarch/memset.c | 37 ++++ - 8 files changed, 688 insertions(+) - create mode 100644 sysdeps/loongarch/lp64/multiarch/dl-symbol-redir-ifunc.h - create mode 100644 sysdeps/loongarch/lp64/multiarch/memset-aligned.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/memset-lasx.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/memset-lsx.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/memset-unaligned.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/memset.c - -diff --git a/sysdeps/loongarch/lp64/multiarch/Makefile b/sysdeps/loongarch/lp64/multiarch/Makefile -index 7b87bc9055..216886c551 100644 ---- a/sysdeps/loongarch/lp64/multiarch/Makefile -+++ b/sysdeps/loongarch/lp64/multiarch/Makefile -@@ -30,5 +30,9 @@ sysdep_routines += \ - memrchr-generic \ - memrchr-lsx \ - memrchr-lasx \ -+ memset-aligned \ -+ memset-unaligned \ -+ memset-lsx \ -+ memset-lasx \ - # sysdep_routines - endif -diff --git a/sysdeps/loongarch/lp64/multiarch/dl-symbol-redir-ifunc.h b/sysdeps/loongarch/lp64/multiarch/dl-symbol-redir-ifunc.h -new file mode 100644 -index 0000000000..e2723873bc ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/dl-symbol-redir-ifunc.h -@@ -0,0 +1,24 @@ -+/* Symbol rediretion for loader/static initialization code. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#ifndef _DL_IFUNC_GENERIC_H -+#define _DL_IFUNC_GENERIC_H -+ -+asm ("memset = __memset_aligned"); -+ -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c b/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -index 8bd5489ee2..37f60dde91 100644 ---- a/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -+++ b/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -@@ -117,5 +117,15 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array, - #endif - IFUNC_IMPL_ADD (array, i, memrchr, 1, __memrchr_generic) - ) -+ -+ IFUNC_IMPL (i, name, memset, -+#if !defined __loongarch_soft_float -+ IFUNC_IMPL_ADD (array, i, memset, SUPPORT_LASX, __memset_lasx) -+ IFUNC_IMPL_ADD (array, i, memset, SUPPORT_LSX, __memset_lsx) -+#endif -+ IFUNC_IMPL_ADD (array, i, memset, SUPPORT_UAL, __memset_unaligned) -+ IFUNC_IMPL_ADD (array, i, memset, 1, __memset_aligned) -+ ) -+ - return i; - } -diff --git a/sysdeps/loongarch/lp64/multiarch/memset-aligned.S b/sysdeps/loongarch/lp64/multiarch/memset-aligned.S -new file mode 100644 -index 0000000000..1fce95b714 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/memset-aligned.S -@@ -0,0 +1,174 @@ -+/* Optimized memset aligned implementation using basic LoongArch instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) -+# define MEMSET_NAME __memset_aligned -+#else -+# define MEMSET_NAME memset -+#endif -+ -+LEAF(MEMSET_NAME, 6) -+ move t0, a0 -+ andi a3, a0, 0x7 -+ li.w t6, 16 -+ beqz a3, L(align) -+ bltu a2, t6, L(short_data) -+ -+L(make_align): -+ li.w t8, 8 -+ sub.d t2, t8, a3 -+ pcaddi t1, 11 -+ slli.d t3, t2, 2 -+ sub.d t1, t1, t3 -+ jr t1 -+ -+L(al7): -+ st.b a1, t0, 6 -+L(al6): -+ st.b a1, t0, 5 -+L(al5): -+ st.b a1, t0, 4 -+L(al4): -+ st.b a1, t0, 3 -+L(al3): -+ st.b a1, t0, 2 -+L(al2): -+ st.b a1, t0, 1 -+L(al1): -+ st.b a1, t0, 0 -+L(al0): -+ add.d t0, t0, t2 -+ sub.d a2, a2, t2 -+ -+L(align): -+ bstrins.d a1, a1, 15, 8 -+ bstrins.d a1, a1, 31, 16 -+ bstrins.d a1, a1, 63, 32 -+ bltu a2, t6, L(less_16bytes) -+ -+ andi a4, a2, 0x3f -+ beq a4, a2, L(less_64bytes) -+ -+ sub.d t1, a2, a4 -+ move a2, a4 -+ add.d a5, t0, t1 -+ -+L(loop_64bytes): -+ addi.d t0, t0, 64 -+ st.d a1, t0, -64 -+ st.d a1, t0, -56 -+ st.d a1, t0, -48 -+ st.d a1, t0, -40 -+ -+ st.d a1, t0, -32 -+ st.d a1, t0, -24 -+ st.d a1, t0, -16 -+ st.d a1, t0, -8 -+ bne t0, a5, L(loop_64bytes) -+ -+L(less_64bytes): -+ srai.d a4, a2, 5 -+ beqz a4, L(less_32bytes) -+ addi.d a2, a2, -32 -+ st.d a1, t0, 0 -+ -+ st.d a1, t0, 8 -+ st.d a1, t0, 16 -+ st.d a1, t0, 24 -+ addi.d t0, t0, 32 -+ -+L(less_32bytes): -+ bltu a2, t6, L(less_16bytes) -+ addi.d a2, a2, -16 -+ st.d a1, t0, 0 -+ st.d a1, t0, 8 -+ addi.d t0, t0, 16 -+ -+L(less_16bytes): -+ srai.d a4, a2, 3 -+ beqz a4, L(less_8bytes) -+ addi.d a2, a2, -8 -+ st.d a1, t0, 0 -+ addi.d t0, t0, 8 -+ -+L(less_8bytes): -+ beqz a2, L(less_1byte) -+ srai.d a4, a2, 2 -+ beqz a4, L(less_4bytes) -+ addi.d a2, a2, -4 -+ st.w a1, t0, 0 -+ addi.d t0, t0, 4 -+ -+L(less_4bytes): -+ srai.d a3, a2, 1 -+ beqz a3, L(less_2bytes) -+ addi.d a2, a2, -2 -+ st.h a1, t0, 0 -+ addi.d t0, t0, 2 -+ -+L(less_2bytes): -+ beqz a2, L(less_1byte) -+ st.b a1, t0, 0 -+L(less_1byte): -+ jr ra -+ -+L(short_data): -+ pcaddi t1, 19 -+ slli.d t3, a2, 2 -+ sub.d t1, t1, t3 -+ jr t1 -+L(short_15): -+ st.b a1, a0, 14 -+L(short_14): -+ st.b a1, a0, 13 -+L(short_13): -+ st.b a1, a0, 12 -+L(short_12): -+ st.b a1, a0, 11 -+L(short_11): -+ st.b a1, a0, 10 -+L(short_10): -+ st.b a1, a0, 9 -+L(short_9): -+ st.b a1, a0, 8 -+L(short_8): -+ st.b a1, a0, 7 -+L(short_7): -+ st.b a1, a0, 6 -+L(short_6): -+ st.b a1, a0, 5 -+L(short_5): -+ st.b a1, a0, 4 -+L(short_4): -+ st.b a1, a0, 3 -+L(short_3): -+ st.b a1, a0, 2 -+L(short_2): -+ st.b a1, a0, 1 -+L(short_1): -+ st.b a1, a0, 0 -+L(short_0): -+ jr ra -+END(MEMSET_NAME) -+ -+libc_hidden_builtin_def (MEMSET_NAME) -diff --git a/sysdeps/loongarch/lp64/multiarch/memset-lasx.S b/sysdeps/loongarch/lp64/multiarch/memset-lasx.S -new file mode 100644 -index 0000000000..041abbac87 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/memset-lasx.S -@@ -0,0 +1,142 @@ -+/* Optimized memset implementation using LoongArch LASX instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) && !defined __loongarch_soft_float -+ -+# define MEMSET __memset_lasx -+ -+LEAF(MEMSET, 6) -+ li.d t1, 32 -+ move a3, a0 -+ xvreplgr2vr.b xr0, a1 -+ add.d a4, a0, a2 -+ -+ bgeu t1, a2, L(less_32bytes) -+ li.d t3, 128 -+ li.d t2, 64 -+ blt t3, a2, L(long_bytes) -+ -+L(less_128bytes): -+ bgeu t2, a2, L(less_64bytes) -+ xvst xr0, a3, 0 -+ xvst xr0, a3, 32 -+ xvst xr0, a4, -32 -+ -+ xvst xr0, a4, -64 -+ jr ra -+L(less_64bytes): -+ xvst xr0, a3, 0 -+ xvst xr0, a4, -32 -+ -+ -+ jr ra -+L(less_32bytes): -+ srli.d t0, a2, 4 -+ beqz t0, L(less_16bytes) -+ vst vr0, a3, 0 -+ -+ vst vr0, a4, -16 -+ jr ra -+L(less_16bytes): -+ srli.d t0, a2, 3 -+ beqz t0, L(less_8bytes) -+ -+ vstelm.d vr0, a3, 0, 0 -+ vstelm.d vr0, a4, -8, 0 -+ jr ra -+L(less_8bytes): -+ srli.d t0, a2, 2 -+ -+ beqz t0, L(less_4bytes) -+ vstelm.w vr0, a3, 0, 0 -+ vstelm.w vr0, a4, -4, 0 -+ jr ra -+ -+ -+L(less_4bytes): -+ srli.d t0, a2, 1 -+ beqz t0, L(less_2bytes) -+ vstelm.h vr0, a3, 0, 0 -+ vstelm.h vr0, a4, -2, 0 -+ -+ jr ra -+L(less_2bytes): -+ beqz a2, L(less_1bytes) -+ st.b a1, a3, 0 -+L(less_1bytes): -+ jr ra -+ -+L(long_bytes): -+ xvst xr0, a3, 0 -+ bstrins.d a3, zero, 4, 0 -+ addi.d a3, a3, 32 -+ sub.d a2, a4, a3 -+ -+ andi t0, a2, 0xff -+ beq t0, a2, L(long_end) -+ move a2, t0 -+ sub.d t0, a4, t0 -+ -+ -+L(loop_256): -+ xvst xr0, a3, 0 -+ xvst xr0, a3, 32 -+ xvst xr0, a3, 64 -+ xvst xr0, a3, 96 -+ -+ xvst xr0, a3, 128 -+ xvst xr0, a3, 160 -+ xvst xr0, a3, 192 -+ xvst xr0, a3, 224 -+ -+ addi.d a3, a3, 256 -+ bne a3, t0, L(loop_256) -+L(long_end): -+ bltu a2, t3, L(end_less_128) -+ addi.d a2, a2, -128 -+ -+ xvst xr0, a3, 0 -+ xvst xr0, a3, 32 -+ xvst xr0, a3, 64 -+ xvst xr0, a3, 96 -+ -+ -+ addi.d a3, a3, 128 -+L(end_less_128): -+ bltu a2, t2, L(end_less_64) -+ addi.d a2, a2, -64 -+ xvst xr0, a3, 0 -+ -+ xvst xr0, a3, 32 -+ addi.d a3, a3, 64 -+L(end_less_64): -+ bltu a2, t1, L(end_less_32) -+ xvst xr0, a3, 0 -+ -+L(end_less_32): -+ xvst xr0, a4, -32 -+ jr ra -+END(MEMSET) -+ -+libc_hidden_builtin_def (MEMSET) -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/memset-lsx.S b/sysdeps/loongarch/lp64/multiarch/memset-lsx.S -new file mode 100644 -index 0000000000..3d3982aa5a ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/memset-lsx.S -@@ -0,0 +1,135 @@ -+/* Optimized memset implementation using LoongArch LSX instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) && !defined __loongarch_soft_float -+ -+# define MEMSET __memset_lsx -+ -+LEAF(MEMSET, 6) -+ li.d t1, 16 -+ move a3, a0 -+ vreplgr2vr.b vr0, a1 -+ add.d a4, a0, a2 -+ -+ bgeu t1, a2, L(less_16bytes) -+ li.d t3, 64 -+ li.d t2, 32 -+ bgeu a2, t3, L(long_bytes) -+ -+L(less_64bytes): -+ bgeu t2, a2, L(less_32bytes) -+ vst vr0, a3, 0 -+ vst vr0, a3, 16 -+ vst vr0, a4, -32 -+ -+ vst vr0, a4, -16 -+ jr ra -+L(less_32bytes): -+ vst vr0, a3, 0 -+ vst vr0, a4, -16 -+ -+ -+ jr ra -+L(less_16bytes): -+ srli.d t0, a2, 3 -+ beqz t0, L(less_8bytes) -+ vstelm.d vr0, a3, 0, 0 -+ -+ vstelm.d vr0, a4, -8, 0 -+ jr ra -+L(less_8bytes): -+ srli.d t0, a2, 2 -+ beqz t0, L(less_4bytes) -+ -+ vstelm.w vr0, a3, 0, 0 -+ vstelm.w vr0, a4, -4, 0 -+ jr ra -+L(less_4bytes): -+ srli.d t0, a2, 1 -+ -+ beqz t0, L(less_2bytes) -+ vstelm.h vr0, a3, 0, 0 -+ vstelm.h vr0, a4, -2, 0 -+ jr ra -+ -+ -+L(less_2bytes): -+ beqz a2, L(less_1bytes) -+ vstelm.b vr0, a3, 0, 0 -+L(less_1bytes): -+ jr ra -+L(long_bytes): -+ vst vr0, a3, 0 -+ -+ bstrins.d a3, zero, 3, 0 -+ addi.d a3, a3, 16 -+ sub.d a2, a4, a3 -+ andi t0, a2, 0x7f -+ -+ beq t0, a2, L(long_end) -+ move a2, t0 -+ sub.d t0, a4, t0 -+ -+L(loop_128): -+ vst vr0, a3, 0 -+ -+ vst vr0, a3, 16 -+ vst vr0, a3, 32 -+ vst vr0, a3, 48 -+ vst vr0, a3, 64 -+ -+ -+ vst vr0, a3, 80 -+ vst vr0, a3, 96 -+ vst vr0, a3, 112 -+ addi.d a3, a3, 128 -+ -+ bne a3, t0, L(loop_128) -+L(long_end): -+ bltu a2, t3, L(end_less_64) -+ addi.d a2, a2, -64 -+ vst vr0, a3, 0 -+ -+ vst vr0, a3, 16 -+ vst vr0, a3, 32 -+ vst vr0, a3, 48 -+ addi.d a3, a3, 64 -+ -+L(end_less_64): -+ bltu a2, t2, L(end_less_32) -+ addi.d a2, a2, -32 -+ vst vr0, a3, 0 -+ vst vr0, a3, 16 -+ -+ addi.d a3, a3, 32 -+L(end_less_32): -+ bltu a2, t1, L(end_less_16) -+ vst vr0, a3, 0 -+ -+L(end_less_16): -+ vst vr0, a4, -16 -+ jr ra -+END(MEMSET) -+ -+libc_hidden_builtin_def (MEMSET) -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/memset-unaligned.S b/sysdeps/loongarch/lp64/multiarch/memset-unaligned.S -new file mode 100644 -index 0000000000..f7d32039df ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/memset-unaligned.S -@@ -0,0 +1,162 @@ -+/* Optimized memset unaligned implementation using basic LoongArch instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) -+ -+# define MEMSET_NAME __memset_unaligned -+ -+#define ST_128(n) \ -+ st.d a1, a0, n; \ -+ st.d a1, a0, n+8 ; \ -+ st.d a1, a0, n+16 ; \ -+ st.d a1, a0, n+24 ; \ -+ st.d a1, a0, n+32 ; \ -+ st.d a1, a0, n+40 ; \ -+ st.d a1, a0, n+48 ; \ -+ st.d a1, a0, n+56 ; \ -+ st.d a1, a0, n+64 ; \ -+ st.d a1, a0, n+72 ; \ -+ st.d a1, a0, n+80 ; \ -+ st.d a1, a0, n+88 ; \ -+ st.d a1, a0, n+96 ; \ -+ st.d a1, a0, n+104; \ -+ st.d a1, a0, n+112; \ -+ st.d a1, a0, n+120; -+ -+LEAF(MEMSET_NAME, 6) -+ bstrins.d a1, a1, 15, 8 -+ add.d t7, a0, a2 -+ bstrins.d a1, a1, 31, 16 -+ move t0, a0 -+ -+ bstrins.d a1, a1, 63, 32 -+ srai.d t8, a2, 4 -+ beqz t8, L(less_16bytes) -+ srai.d t8, a2, 6 -+ -+ bnez t8, L(more_64bytes) -+ srai.d t8, a2, 5 -+ beqz t8, L(less_32bytes) -+ -+ st.d a1, a0, 0 -+ st.d a1, a0, 8 -+ st.d a1, a0, 16 -+ st.d a1, a0, 24 -+ -+ st.d a1, t7, -32 -+ st.d a1, t7, -24 -+ st.d a1, t7, -16 -+ st.d a1, t7, -8 -+ -+ jr ra -+ -+L(less_32bytes): -+ st.d a1, a0, 0 -+ st.d a1, a0, 8 -+ st.d a1, t7, -16 -+ st.d a1, t7, -8 -+ -+ jr ra -+ -+L(less_16bytes): -+ srai.d t8, a2, 3 -+ beqz t8, L(less_8bytes) -+ st.d a1, a0, 0 -+ st.d a1, t7, -8 -+ -+ jr ra -+ -+L(less_8bytes): -+ srai.d t8, a2, 2 -+ beqz t8, L(less_4bytes) -+ st.w a1, a0, 0 -+ st.w a1, t7, -4 -+ -+ jr ra -+ -+L(less_4bytes): -+ srai.d t8, a2, 1 -+ beqz t8, L(less_2bytes) -+ st.h a1, a0, 0 -+ st.h a1, t7, -2 -+ -+ jr ra -+ -+L(less_2bytes): -+ beqz a2, L(less_1bytes) -+ st.b a1, a0, 0 -+ -+ jr ra -+ -+L(less_1bytes): -+ jr ra -+ -+L(more_64bytes): -+ srli.d a0, a0, 3 -+ slli.d a0, a0, 3 -+ addi.d a0, a0, 0x8 -+ st.d a1, t0, 0 -+ -+ sub.d t2, t0, a0 -+ add.d a2, t2, a2 -+ addi.d a2, a2, -0x80 -+ blt a2, zero, L(end_unalign_proc) -+ -+L(loop_less): -+ ST_128(0) -+ addi.d a0, a0, 0x80 -+ addi.d a2, a2, -0x80 -+ bge a2, zero, L(loop_less) -+ -+L(end_unalign_proc): -+ addi.d a2, a2, 0x80 -+ pcaddi t1, 20 -+ andi t5, a2, 0x78 -+ srli.d t5, t5, 1 -+ -+ sub.d t1, t1, t5 -+ jr t1 -+ -+ st.d a1, a0, 112 -+ st.d a1, a0, 104 -+ st.d a1, a0, 96 -+ st.d a1, a0, 88 -+ st.d a1, a0, 80 -+ st.d a1, a0, 72 -+ st.d a1, a0, 64 -+ st.d a1, a0, 56 -+ st.d a1, a0, 48 -+ st.d a1, a0, 40 -+ st.d a1, a0, 32 -+ st.d a1, a0, 24 -+ st.d a1, a0, 16 -+ st.d a1, a0, 8 -+ st.d a1, a0, 0 -+ st.d a1, t7, -8 -+ -+ move a0, t0 -+ jr ra -+END(MEMSET_NAME) -+ -+libc_hidden_builtin_def (MEMSET_NAME) -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/memset.c b/sysdeps/loongarch/lp64/multiarch/memset.c -new file mode 100644 -index 0000000000..3ff60d8ac7 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/memset.c -@@ -0,0 +1,37 @@ -+/* Multiple versions of memset. -+ All versions must be listed in ifunc-impl-list.c. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+/* Define multiple versions only for the definition in libc. */ -+#if IS_IN (libc) -+# define memset __redirect_memset -+# include -+# undef memset -+ -+# define SYMBOL_NAME memset -+# include "ifunc-lasx.h" -+ -+libc_ifunc_redirected (__redirect_memset, memset, -+ IFUNC_SELECTOR ()); -+ -+# ifdef SHARED -+__hidden_ver1 (memset, __GI_memset, __redirect_memset) -+ __attribute__ ((visibility ("hidden"))) __attribute_copy__ (memset); -+# endif -+ -+#endif --- -2.45.0 - diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0022-LoongArch-Add-ifunc-support-for-memcmp-aligned-lsx-l.patch b/runtime-optenv32/glibc+32/autobuild/patches/0022-LoongArch-Add-ifunc-support-for-memcmp-aligned-lsx-l.patch deleted file mode 100644 index 21282c017ce..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0022-LoongArch-Add-ifunc-support-for-memcmp-aligned-lsx-l.patch +++ /dev/null @@ -1,943 +0,0 @@ -From 12aaf16c69088c18774fd9814aeaa59adfbb468b Mon Sep 17 00:00:00 2001 -From: dengjianbo -Date: Mon, 28 Aug 2023 10:08:39 +0800 -Subject: [PATCH 22/32] LoongArch: Add ifunc support for memcmp{aligned, lsx, - lasx} - -According to glibc memcmp microbenchmark test results(Add generic -memcmp), this implementation have performance improvement -except the length is less than 3, details as below: - -Name Percent of time reduced -memcmp-lasx 16%-74% -memcmp-lsx 20%-50% -memcmp-aligned 5%-20% ---- - sysdeps/loongarch/lp64/multiarch/Makefile | 3 + - .../lp64/multiarch/ifunc-impl-list.c | 7 + - .../loongarch/lp64/multiarch/ifunc-memcmp.h | 40 +++ - .../loongarch/lp64/multiarch/memcmp-aligned.S | 292 ++++++++++++++++++ - .../loongarch/lp64/multiarch/memcmp-lasx.S | 207 +++++++++++++ - sysdeps/loongarch/lp64/multiarch/memcmp-lsx.S | 269 ++++++++++++++++ - sysdeps/loongarch/lp64/multiarch/memcmp.c | 43 +++ - 7 files changed, 861 insertions(+) - create mode 100644 sysdeps/loongarch/lp64/multiarch/ifunc-memcmp.h - create mode 100644 sysdeps/loongarch/lp64/multiarch/memcmp-aligned.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/memcmp-lasx.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/memcmp-lsx.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/memcmp.c - -diff --git a/sysdeps/loongarch/lp64/multiarch/Makefile b/sysdeps/loongarch/lp64/multiarch/Makefile -index 216886c551..360a6718c0 100644 ---- a/sysdeps/loongarch/lp64/multiarch/Makefile -+++ b/sysdeps/loongarch/lp64/multiarch/Makefile -@@ -34,5 +34,8 @@ sysdep_routines += \ - memset-unaligned \ - memset-lsx \ - memset-lasx \ -+ memcmp-aligned \ -+ memcmp-lsx \ -+ memcmp-lasx \ - # sysdep_routines - endif -diff --git a/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c b/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -index 37f60dde91..e397d58c9d 100644 ---- a/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -+++ b/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -@@ -127,5 +127,12 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array, - IFUNC_IMPL_ADD (array, i, memset, 1, __memset_aligned) - ) - -+ IFUNC_IMPL (i, name, memcmp, -+#if !defined __loongarch_soft_float -+ IFUNC_IMPL_ADD (array, i, memcmp, SUPPORT_LASX, __memcmp_lasx) -+ IFUNC_IMPL_ADD (array, i, memcmp, SUPPORT_LSX, __memcmp_lsx) -+#endif -+ IFUNC_IMPL_ADD (array, i, memcmp, 1, __memcmp_aligned) -+ ) - return i; - } -diff --git a/sysdeps/loongarch/lp64/multiarch/ifunc-memcmp.h b/sysdeps/loongarch/lp64/multiarch/ifunc-memcmp.h -new file mode 100644 -index 0000000000..04adc2e561 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/ifunc-memcmp.h -@@ -0,0 +1,40 @@ -+/* Common definition for memcmp ifunc selections. -+ All versions must be listed in ifunc-impl-list.c. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#include -+#include -+ -+#if !defined __loongarch_soft_float -+extern __typeof (REDIRECT_NAME) OPTIMIZE (lasx) attribute_hidden; -+extern __typeof (REDIRECT_NAME) OPTIMIZE (lsx) attribute_hidden; -+#endif -+extern __typeof (REDIRECT_NAME) OPTIMIZE (aligned) attribute_hidden; -+ -+static inline void * -+IFUNC_SELECTOR (void) -+{ -+#if !defined __loongarch_soft_float -+ if (SUPPORT_LASX) -+ return OPTIMIZE (lasx); -+ else if (SUPPORT_LSX) -+ return OPTIMIZE (lsx); -+ else -+#endif -+ return OPTIMIZE (aligned); -+} -diff --git a/sysdeps/loongarch/lp64/multiarch/memcmp-aligned.S b/sysdeps/loongarch/lp64/multiarch/memcmp-aligned.S -new file mode 100644 -index 0000000000..14a7caa9a8 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/memcmp-aligned.S -@@ -0,0 +1,292 @@ -+/* Optimized memcmp implementation using basic LoongArch instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) -+# define MEMCMP_NAME __memcmp_aligned -+#else -+# define MEMCMP_NAME memcmp -+#endif -+ -+LEAF(MEMCMP_NAME, 6) -+ beqz a2, L(ret) -+ andi a4, a1, 0x7 -+ andi a3, a0, 0x7 -+ sltu a5, a4, a3 -+ -+ xor t0, a0, a1 -+ li.w t8, 8 -+ maskeqz t0, t0, a5 -+ li.w t7, -1 -+ -+ xor a0, a0, t0 -+ xor a1, a1, t0 -+ andi a3, a0, 0x7 -+ andi a4, a1, 0x7 -+ -+ xor a0, a0, a3 -+ xor a1, a1, a4 -+ ld.d t2, a0, 0 -+ ld.d t1, a1, 0 -+ -+ slli.d t3, a3, 3 -+ slli.d t4, a4, 3 -+ sub.d a6, t3, t4 -+ srl.d t1, t1, t4 -+ -+ srl.d t0, t2, t3 -+ srl.d t5, t7, t4 -+ sub.d t6, t0, t1 -+ and t6, t6, t5 -+ -+ sub.d t5, t8, a4 -+ bnez t6, L(first_out) -+ bgeu t5, a2, L(ret) -+ sub.d a2, a2, t5 -+ -+ bnez a6, L(unaligned) -+ blt a2, t8, L(al_less_8bytes) -+ andi t1, a2, 31 -+ beq t1, a2, L(al_less_32bytes) -+ -+ sub.d t2, a2, t1 -+ add.d a4, a0, t2 -+ move a2, t1 -+ -+L(al_loop): -+ ld.d t0, a0, 8 -+ -+ ld.d t1, a1, 8 -+ ld.d t2, a0, 16 -+ ld.d t3, a1, 16 -+ ld.d t4, a0, 24 -+ -+ ld.d t5, a1, 24 -+ ld.d t6, a0, 32 -+ ld.d t7, a1, 32 -+ addi.d a0, a0, 32 -+ -+ addi.d a1, a1, 32 -+ bne t0, t1, L(out1) -+ bne t2, t3, L(out2) -+ bne t4, t5, L(out3) -+ -+ bne t6, t7, L(out4) -+ bne a0, a4, L(al_loop) -+ -+L(al_less_32bytes): -+ srai.d a4, a2, 4 -+ beqz a4, L(al_less_16bytes) -+ -+ ld.d t0, a0, 8 -+ ld.d t1, a1, 8 -+ ld.d t2, a0, 16 -+ ld.d t3, a1, 16 -+ -+ addi.d a0, a0, 16 -+ addi.d a1, a1, 16 -+ addi.d a2, a2, -16 -+ bne t0, t1, L(out1) -+ -+ bne t2, t3, L(out2) -+ -+L(al_less_16bytes): -+ srai.d a4, a2, 3 -+ beqz a4, L(al_less_8bytes) -+ ld.d t0, a0, 8 -+ -+ ld.d t1, a1, 8 -+ addi.d a0, a0, 8 -+ addi.d a1, a1, 8 -+ addi.d a2, a2, -8 -+ -+ bne t0, t1, L(out1) -+ -+L(al_less_8bytes): -+ beqz a2, L(ret) -+ ld.d t0, a0, 8 -+ ld.d t1, a1, 8 -+ -+ li.d t7, -1 -+ slli.d t2, a2, 3 -+ sll.d t2, t7, t2 -+ sub.d t3, t0, t1 -+ -+ andn t6, t3, t2 -+ bnez t6, L(count_diff) -+ -+L(ret): -+ move a0, zero -+ jr ra -+ -+L(out4): -+ move t0, t6 -+ move t1, t7 -+ sub.d t6, t6, t7 -+ b L(count_diff) -+ -+L(out3): -+ move t0, t4 -+ move t1, t5 -+ sub.d t6, t4, t5 -+ b L(count_diff) -+ -+L(out2): -+ move t0, t2 -+ move t1, t3 -+L(out1): -+ sub.d t6, t0, t1 -+ b L(count_diff) -+ -+L(first_out): -+ slli.d t4, a2, 3 -+ slt t3, a2, t5 -+ sll.d t4, t7, t4 -+ maskeqz t4, t4, t3 -+ -+ andn t6, t6, t4 -+ -+L(count_diff): -+ ctz.d t2, t6 -+ bstrins.d t2, zero, 2, 0 -+ srl.d t0, t0, t2 -+ -+ srl.d t1, t1, t2 -+ andi t0, t0, 0xff -+ andi t1, t1, 0xff -+ sub.d t2, t0, t1 -+ -+ sub.d t3, t1, t0 -+ masknez t2, t2, a5 -+ maskeqz t3, t3, a5 -+ or a0, t2, t3 -+ -+ jr ra -+ -+L(unaligned): -+ sub.d a7, zero, a6 -+ srl.d t0, t2, a6 -+ blt a2, t8, L(un_less_8bytes) -+ -+ andi t1, a2, 31 -+ beq t1, a2, L(un_less_32bytes) -+ sub.d t2, a2, t1 -+ add.d a4, a0, t2 -+ -+ move a2, t1 -+ -+L(un_loop): -+ ld.d t2, a0, 8 -+ ld.d t1, a1, 8 -+ ld.d t4, a0, 16 -+ -+ ld.d t3, a1, 16 -+ ld.d t6, a0, 24 -+ ld.d t5, a1, 24 -+ ld.d t8, a0, 32 -+ -+ ld.d t7, a1, 32 -+ addi.d a0, a0, 32 -+ addi.d a1, a1, 32 -+ sll.d a3, t2, a7 -+ -+ or t0, a3, t0 -+ bne t0, t1, L(out1) -+ srl.d t0, t2, a6 -+ sll.d a3, t4, a7 -+ -+ or t2, a3, t0 -+ bne t2, t3, L(out2) -+ srl.d t0, t4, a6 -+ sll.d a3, t6, a7 -+ -+ or t4, a3, t0 -+ bne t4, t5, L(out3) -+ srl.d t0, t6, a6 -+ sll.d a3, t8, a7 -+ -+ or t6, t0, a3 -+ bne t6, t7, L(out4) -+ srl.d t0, t8, a6 -+ bne a0, a4, L(un_loop) -+ -+L(un_less_32bytes): -+ srai.d a4, a2, 4 -+ beqz a4, L(un_less_16bytes) -+ ld.d t2, a0, 8 -+ ld.d t1, a1, 8 -+ -+ ld.d t4, a0, 16 -+ ld.d t3, a1, 16 -+ addi.d a0, a0, 16 -+ addi.d a1, a1, 16 -+ -+ addi.d a2, a2, -16 -+ sll.d a3, t2, a7 -+ or t0, a3, t0 -+ bne t0, t1, L(out1) -+ -+ srl.d t0, t2, a6 -+ sll.d a3, t4, a7 -+ or t2, a3, t0 -+ bne t2, t3, L(out2) -+ -+ srl.d t0, t4, a6 -+ -+L(un_less_16bytes): -+ srai.d a4, a2, 3 -+ beqz a4, L(un_less_8bytes) -+ ld.d t2, a0, 8 -+ -+ ld.d t1, a1, 8 -+ addi.d a0, a0, 8 -+ addi.d a1, a1, 8 -+ addi.d a2, a2, -8 -+ -+ sll.d a3, t2, a7 -+ or t0, a3, t0 -+ bne t0, t1, L(out1) -+ srl.d t0, t2, a6 -+ -+L(un_less_8bytes): -+ beqz a2, L(ret) -+ andi a7, a7, 63 -+ slli.d a4, a2, 3 -+ bgeu a7, a4, L(last_cmp) -+ -+ ld.d t2, a0, 8 -+ sll.d a3, t2, a7 -+ or t0, a3, t0 -+ -+L(last_cmp): -+ ld.d t1, a1, 8 -+ -+ li.d t7, -1 -+ sll.d t2, t7, a4 -+ sub.d t3, t0, t1 -+ andn t6, t3, t2 -+ -+ bnez t6, L(count_diff) -+ move a0, zero -+ jr ra -+END(MEMCMP_NAME) -+ -+libc_hidden_builtin_def (MEMCMP_NAME) -diff --git a/sysdeps/loongarch/lp64/multiarch/memcmp-lasx.S b/sysdeps/loongarch/lp64/multiarch/memcmp-lasx.S -new file mode 100644 -index 0000000000..3151a17927 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/memcmp-lasx.S -@@ -0,0 +1,207 @@ -+/* Optimized memcmp implementation using LoongArch LASX instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) && !defined __loongarch_soft_float -+ -+# define MEMCMP __memcmp_lasx -+ -+LEAF(MEMCMP, 6) -+ li.d t2, 32 -+ add.d a3, a0, a2 -+ add.d a4, a1, a2 -+ bgeu t2, a2, L(less32) -+ -+ li.d t1, 160 -+ bgeu a2, t1, L(make_aligned) -+L(loop32): -+ xvld xr0, a0, 0 -+ xvld xr1, a1, 0 -+ -+ addi.d a0, a0, 32 -+ addi.d a1, a1, 32 -+ addi.d a2, a2, -32 -+ xvseq.b xr2, xr0, xr1 -+ -+ xvsetanyeqz.b fcc0, xr2 -+ bcnez fcc0, L(end) -+L(last_bytes): -+ bltu t2, a2, L(loop32) -+ xvld xr0, a3, -32 -+ -+ -+ xvld xr1, a4, -32 -+ xvseq.b xr2, xr0, xr1 -+L(end): -+ xvmsknz.b xr2, xr2 -+ xvpermi.q xr4, xr0, 1 -+ -+ xvpickve.w xr3, xr2, 4 -+ xvpermi.q xr5, xr1, 1 -+ vilvl.h vr2, vr3, vr2 -+ movfr2gr.s t0, fa2 -+ -+ cto.w t0, t0 -+ vreplgr2vr.b vr2, t0 -+ vshuf.b vr0, vr4, vr0, vr2 -+ vshuf.b vr1, vr5, vr1, vr2 -+ -+ vpickve2gr.bu t0, vr0, 0 -+ vpickve2gr.bu t1, vr1, 0 -+ sub.d a0, t0, t1 -+ jr ra -+ -+ -+L(less32): -+ srli.d t0, a2, 4 -+ beqz t0, L(less16) -+ vld vr0, a0, 0 -+ vld vr1, a1, 0 -+ -+ vld vr2, a3, -16 -+ vld vr3, a4, -16 -+L(short_ret): -+ vseq.b vr4, vr0, vr1 -+ vseq.b vr5, vr2, vr3 -+ -+ vmsknz.b vr4, vr4 -+ vmsknz.b vr5, vr5 -+ vilvl.h vr4, vr5, vr4 -+ movfr2gr.s t0, fa4 -+ -+ cto.w t0, t0 -+ vreplgr2vr.b vr4, t0 -+ vshuf.b vr0, vr2, vr0, vr4 -+ vshuf.b vr1, vr3, vr1, vr4 -+ -+ -+ vpickve2gr.bu t0, vr0, 0 -+ vpickve2gr.bu t1, vr1, 0 -+ sub.d a0, t0, t1 -+ jr ra -+ -+L(less16): -+ srli.d t0, a2, 3 -+ beqz t0, L(less8) -+ vldrepl.d vr0, a0, 0 -+ vldrepl.d vr1, a1, 0 -+ -+ vldrepl.d vr2, a3, -8 -+ vldrepl.d vr3, a4, -8 -+ b L(short_ret) -+ nop -+ -+L(less8): -+ srli.d t0, a2, 2 -+ beqz t0, L(less4) -+ vldrepl.w vr0, a0, 0 -+ vldrepl.w vr1, a1, 0 -+ -+ -+ vldrepl.w vr2, a3, -4 -+ vldrepl.w vr3, a4, -4 -+ b L(short_ret) -+ nop -+ -+L(less4): -+ srli.d t0, a2, 1 -+ beqz t0, L(less2) -+ vldrepl.h vr0, a0, 0 -+ vldrepl.h vr1, a1, 0 -+ -+ vldrepl.h vr2, a3, -2 -+ vldrepl.h vr3, a4, -2 -+ b L(short_ret) -+ nop -+ -+L(less2): -+ beqz a2, L(ret0) -+ ld.bu t0, a0, 0 -+ ld.bu t1, a1, 0 -+ sub.d a0, t0, t1 -+ -+ jr ra -+L(ret0): -+ move a0, zero -+ jr ra -+ -+L(make_aligned): -+ xvld xr0, a0, 0 -+ -+ xvld xr1, a1, 0 -+ xvseq.b xr2, xr0, xr1 -+ xvsetanyeqz.b fcc0, xr2 -+ bcnez fcc0, L(end) -+ -+ andi t0, a0, 0x1f -+ sub.d t0, t2, t0 -+ sub.d t1, a2, t0 -+ add.d a0, a0, t0 -+ -+ add.d a1, a1, t0 -+ andi a2, t1, 0x3f -+ sub.d t0, t1, a2 -+ add.d a5, a0, t0 -+ -+ -+L(loop_align): -+ xvld xr0, a0, 0 -+ xvld xr1, a1, 0 -+ xvld xr2, a0, 32 -+ xvld xr3, a1, 32 -+ -+ xvseq.b xr0, xr0, xr1 -+ xvseq.b xr1, xr2, xr3 -+ xvmin.bu xr2, xr1, xr0 -+ xvsetanyeqz.b fcc0, xr2 -+ -+ bcnez fcc0, L(pair_end) -+ addi.d a0, a0, 64 -+ addi.d a1, a1, 64 -+ bne a0, a5, L(loop_align) -+ -+ bnez a2, L(last_bytes) -+ move a0, zero -+ jr ra -+ nop -+ -+ -+L(pair_end): -+ xvmsknz.b xr0, xr0 -+ xvmsknz.b xr1, xr1 -+ xvpickve.w xr2, xr0, 4 -+ xvpickve.w xr3, xr1, 4 -+ -+ vilvl.h vr0, vr2, vr0 -+ vilvl.h vr1, vr3, vr1 -+ vilvl.w vr0, vr1, vr0 -+ movfr2gr.d t0, fa0 -+ -+ cto.d t0, t0 -+ ldx.bu t1, a0, t0 -+ ldx.bu t2, a1, t0 -+ sub.d a0, t1, t2 -+ -+ jr ra -+END(MEMCMP) -+ -+libc_hidden_builtin_def (MEMCMP) -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/memcmp-lsx.S b/sysdeps/loongarch/lp64/multiarch/memcmp-lsx.S -new file mode 100644 -index 0000000000..38a50a4c16 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/memcmp-lsx.S -@@ -0,0 +1,269 @@ -+/* Optimized memcmp implementation using LoongArch LSX instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) && !defined __loongarch_soft_float -+ -+#define MEMCMP __memcmp_lsx -+ -+LEAF(MEMCMP, 6) -+ beqz a2, L(out) -+ pcalau12i t0, %pc_hi20(L(INDEX)) -+ andi a3, a0, 0xf -+ vld vr5, t0, %pc_lo12(L(INDEX)) -+ -+ andi a4, a1, 0xf -+ bne a3, a4, L(unaligned) -+ bstrins.d a0, zero, 3, 0 -+ xor a1, a1, a4 -+ -+ vld vr0, a0, 0 -+ vld vr1, a1, 0 -+ li.d t0, 16 -+ vreplgr2vr.b vr3, a3 -+ -+ sub.d t1, t0, a3 -+ vadd.b vr3, vr3, vr5 -+ vshuf.b vr0, vr3, vr0, vr3 -+ vshuf.b vr1, vr3, vr1, vr3 -+ -+ -+ vseq.b vr4, vr0, vr1 -+ bgeu t1, a2, L(al_end) -+ vsetanyeqz.b fcc0, vr4 -+ bcnez fcc0, L(al_found) -+ -+ sub.d t1, a2, t1 -+ andi a2, t1, 31 -+ beq a2, t1, L(al_less_32bytes) -+ sub.d t2, t1, a2 -+ -+ add.d a4, a0, t2 -+L(al_loop): -+ vld vr0, a0, 16 -+ vld vr1, a1, 16 -+ vld vr2, a0, 32 -+ -+ vld vr3, a1, 32 -+ addi.d a0, a0, 32 -+ addi.d a1, a1, 32 -+ vseq.b vr4, vr0, vr1 -+ -+ -+ vseq.b vr6, vr2, vr3 -+ vand.v vr6, vr4, vr6 -+ vsetanyeqz.b fcc0, vr6 -+ bcnez fcc0, L(al_pair_end) -+ -+ bne a0, a4, L(al_loop) -+L(al_less_32bytes): -+ bgeu t0, a2, L(al_less_16bytes) -+ vld vr0, a0, 16 -+ vld vr1, a1, 16 -+ -+ vld vr2, a0, 32 -+ vld vr3, a1, 32 -+ addi.d a2, a2, -16 -+ vreplgr2vr.b vr6, a2 -+ -+ vslt.b vr5, vr5, vr6 -+ vseq.b vr4, vr0, vr1 -+ vseq.b vr6, vr2, vr3 -+ vorn.v vr6, vr6, vr5 -+ -+ -+L(al_pair_end): -+ vsetanyeqz.b fcc0, vr4 -+ bcnez fcc0, L(al_found) -+ vnori.b vr4, vr6, 0 -+ vfrstpi.b vr4, vr4, 0 -+ -+ vshuf.b vr0, vr2, vr2, vr4 -+ vshuf.b vr1, vr3, vr3, vr4 -+ vpickve2gr.bu t0, vr0, 0 -+ vpickve2gr.bu t1, vr1, 0 -+ -+ sub.d a0, t0, t1 -+ jr ra -+ nop -+ nop -+ -+L(al_less_16bytes): -+ beqz a2, L(out) -+ vld vr0, a0, 16 -+ vld vr1, a1, 16 -+ vseq.b vr4, vr0, vr1 -+ -+ -+L(al_end): -+ vreplgr2vr.b vr6, a2 -+ vslt.b vr5, vr5, vr6 -+ vorn.v vr4, vr4, vr5 -+ nop -+ -+L(al_found): -+ vnori.b vr4, vr4, 0 -+ vfrstpi.b vr4, vr4, 0 -+ vshuf.b vr0, vr0, vr0, vr4 -+ vshuf.b vr1, vr1, vr1, vr4 -+ -+ vpickve2gr.bu t0, vr0, 0 -+ vpickve2gr.bu t1, vr1, 0 -+ sub.d a0, t0, t1 -+ jr ra -+ -+L(out): -+ move a0, zero -+ jr ra -+ nop -+ nop -+ -+ -+L(unaligned): -+ xor t2, a0, a1 -+ sltu a5, a3, a4 -+ masknez t2, t2, a5 -+ xor a0, a0, t2 -+ -+ xor a1, a1, t2 -+ andi a3, a0, 0xf -+ andi a4, a1, 0xf -+ bstrins.d a0, zero, 3, 0 -+ -+ xor a1, a1, a4 -+ vld vr4, a0, 0 -+ vld vr1, a1, 0 -+ li.d t0, 16 -+ -+ vreplgr2vr.b vr2, a4 -+ sub.d a6, a4, a3 -+ sub.d t1, t0, a4 -+ sub.d t2, t0, a6 -+ -+ -+ vadd.b vr2, vr2, vr5 -+ vreplgr2vr.b vr6, t2 -+ vadd.b vr6, vr6, vr5 -+ vshuf.b vr0, vr4, vr4, vr6 -+ -+ vshuf.b vr1, vr2, vr1, vr2 -+ vshuf.b vr0, vr2, vr0, vr2 -+ vseq.b vr7, vr0, vr1 -+ bgeu t1, a2, L(un_end) -+ -+ vsetanyeqz.b fcc0, vr7 -+ bcnez fcc0, L(un_found) -+ sub.d a2, a2, t1 -+ andi t1, a2, 31 -+ -+ beq a2, t1, L(un_less_32bytes) -+ sub.d t2, a2, t1 -+ move a2, t1 -+ add.d a4, a1, t2 -+ -+ -+L(un_loop): -+ vld vr2, a0, 16 -+ vld vr1, a1, 16 -+ vld vr3, a1, 32 -+ addi.d a1, a1, 32 -+ -+ addi.d a0, a0, 32 -+ vshuf.b vr0, vr2, vr4, vr6 -+ vld vr4, a0, 0 -+ vseq.b vr7, vr0, vr1 -+ -+ vshuf.b vr2, vr4, vr2, vr6 -+ vseq.b vr8, vr2, vr3 -+ vand.v vr8, vr7, vr8 -+ vsetanyeqz.b fcc0, vr8 -+ -+ bcnez fcc0, L(un_pair_end) -+ bne a1, a4, L(un_loop) -+ -+L(un_less_32bytes): -+ bltu a2, t0, L(un_less_16bytes) -+ vld vr2, a0, 16 -+ vld vr1, a1, 16 -+ addi.d a0, a0, 16 -+ -+ addi.d a1, a1, 16 -+ addi.d a2, a2, -16 -+ vshuf.b vr0, vr2, vr4, vr6 -+ vor.v vr4, vr2, vr2 -+ -+ vseq.b vr7, vr0, vr1 -+ vsetanyeqz.b fcc0, vr7 -+ bcnez fcc0, L(un_found) -+L(un_less_16bytes): -+ beqz a2, L(out) -+ vld vr1, a1, 16 -+ bgeu a6, a2, 1f -+ -+ vld vr2, a0, 16 -+1: -+ vshuf.b vr0, vr2, vr4, vr6 -+ vseq.b vr7, vr0, vr1 -+L(un_end): -+ vreplgr2vr.b vr3, a2 -+ -+ -+ vslt.b vr3, vr5, vr3 -+ vorn.v vr7, vr7, vr3 -+ -+L(un_found): -+ vnori.b vr7, vr7, 0 -+ vfrstpi.b vr7, vr7, 0 -+ -+ vshuf.b vr0, vr0, vr0, vr7 -+ vshuf.b vr1, vr1, vr1, vr7 -+L(calc_result): -+ vpickve2gr.bu t0, vr0, 0 -+ vpickve2gr.bu t1, vr1, 0 -+ -+ sub.d t2, t0, t1 -+ sub.d t3, t1, t0 -+ masknez t0, t3, a5 -+ maskeqz t1, t2, a5 -+ -+ or a0, t0, t1 -+ jr ra -+L(un_pair_end): -+ vsetanyeqz.b fcc0, vr7 -+ bcnez fcc0, L(un_found) -+ -+ -+ vnori.b vr7, vr8, 0 -+ vfrstpi.b vr7, vr7, 0 -+ vshuf.b vr0, vr2, vr2, vr7 -+ vshuf.b vr1, vr3, vr3, vr7 -+ -+ b L(calc_result) -+END(MEMCMP) -+ -+ .section .rodata.cst16,"M",@progbits,16 -+ .align 4 -+L(INDEX): -+ .dword 0x0706050403020100 -+ .dword 0x0f0e0d0c0b0a0908 -+ -+libc_hidden_builtin_def (MEMCMP) -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/memcmp.c b/sysdeps/loongarch/lp64/multiarch/memcmp.c -new file mode 100644 -index 0000000000..32eccac2a3 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/memcmp.c -@@ -0,0 +1,43 @@ -+/* Multiple versions of memcmp. -+ All versions must be listed in ifunc-impl-list.c. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+/* Define multiple versions only for the definition in libc. */ -+#if IS_IN (libc) -+# define memcmp __redirect_memcmp -+# include -+# undef memcmp -+ -+# define SYMBOL_NAME memcmp -+# include "ifunc-memcmp.h" -+ -+libc_ifunc_redirected (__redirect_memcmp, memcmp, -+ IFUNC_SELECTOR ()); -+# undef bcmp -+weak_alias (memcmp, bcmp) -+ -+# undef __memcmpeq -+strong_alias (memcmp, __memcmpeq) -+libc_hidden_def (__memcmpeq) -+ -+# ifdef SHARED -+__hidden_ver1 (memcmp, __GI_memcmp, __redirect_memcmp) -+ __attribute__ ((visibility ("hidden"))) __attribute_copy__ (memcmp); -+# endif -+ -+#endif --- -2.45.0 - diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0023-LoongArch-Change-loongarch-to-LoongArch-in-comments.patch b/runtime-optenv32/glibc+32/autobuild/patches/0023-LoongArch-Change-loongarch-to-LoongArch-in-comments.patch deleted file mode 100644 index ddd3ab884f2..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0023-LoongArch-Change-loongarch-to-LoongArch-in-comments.patch +++ /dev/null @@ -1,275 +0,0 @@ -From 1301db303d566eb9dd364372ffb8519d5e3b8b00 Mon Sep 17 00:00:00 2001 -From: dengjianbo -Date: Mon, 28 Aug 2023 10:08:40 +0800 -Subject: [PATCH 23/32] LoongArch: Change loongarch to LoongArch in comments - ---- - sysdeps/loongarch/lp64/multiarch/memcpy-aligned.S | 2 +- - sysdeps/loongarch/lp64/multiarch/memcpy-lasx.S | 2 +- - sysdeps/loongarch/lp64/multiarch/memcpy-lsx.S | 2 +- - sysdeps/loongarch/lp64/multiarch/memcpy-unaligned.S | 2 +- - sysdeps/loongarch/lp64/multiarch/memmove-aligned.S | 2 +- - sysdeps/loongarch/lp64/multiarch/memmove-lasx.S | 2 +- - sysdeps/loongarch/lp64/multiarch/memmove-lsx.S | 2 +- - sysdeps/loongarch/lp64/multiarch/memmove-unaligned.S | 2 +- - sysdeps/loongarch/lp64/multiarch/strchr-aligned.S | 2 +- - sysdeps/loongarch/lp64/multiarch/strchr-lasx.S | 2 +- - sysdeps/loongarch/lp64/multiarch/strchr-lsx.S | 2 +- - sysdeps/loongarch/lp64/multiarch/strchrnul-aligned.S | 2 +- - sysdeps/loongarch/lp64/multiarch/strchrnul-lasx.S | 2 +- - sysdeps/loongarch/lp64/multiarch/strchrnul-lsx.S | 2 +- - sysdeps/loongarch/lp64/multiarch/strcmp-aligned.S | 2 +- - sysdeps/loongarch/lp64/multiarch/strcmp-lsx.S | 2 +- - sysdeps/loongarch/lp64/multiarch/strlen-aligned.S | 2 +- - sysdeps/loongarch/lp64/multiarch/strlen-lasx.S | 2 +- - sysdeps/loongarch/lp64/multiarch/strlen-lsx.S | 2 +- - sysdeps/loongarch/lp64/multiarch/strncmp-aligned.S | 2 +- - sysdeps/loongarch/lp64/multiarch/strncmp-lsx.S | 2 +- - sysdeps/loongarch/lp64/multiarch/strnlen-aligned.S | 2 +- - sysdeps/loongarch/lp64/multiarch/strnlen-lasx.S | 2 +- - sysdeps/loongarch/lp64/multiarch/strnlen-lsx.S | 2 +- - 24 files changed, 24 insertions(+), 24 deletions(-) - -diff --git a/sysdeps/loongarch/lp64/multiarch/memcpy-aligned.S b/sysdeps/loongarch/lp64/multiarch/memcpy-aligned.S -index 299dd49ce1..7eb34395cb 100644 ---- a/sysdeps/loongarch/lp64/multiarch/memcpy-aligned.S -+++ b/sysdeps/loongarch/lp64/multiarch/memcpy-aligned.S -@@ -1,4 +1,4 @@ --/* Optimized memcpy_aligned implementation using basic Loongarch instructions. -+/* Optimized memcpy_aligned implementation using basic LoongArch instructions. - Copyright (C) 2023 Free Software Foundation, Inc. - - This file is part of the GNU C Library. -diff --git a/sysdeps/loongarch/lp64/multiarch/memcpy-lasx.S b/sysdeps/loongarch/lp64/multiarch/memcpy-lasx.S -index 4aae5bf831..ae148df5d7 100644 ---- a/sysdeps/loongarch/lp64/multiarch/memcpy-lasx.S -+++ b/sysdeps/loongarch/lp64/multiarch/memcpy-lasx.S -@@ -1,4 +1,4 @@ --/* Optimized memcpy implementation using Loongarch LASX instructions. -+/* Optimized memcpy implementation using LoongArch LASX instructions. - Copyright (C) 2023 Free Software Foundation, Inc. - - This file is part of the GNU C Library. -diff --git a/sysdeps/loongarch/lp64/multiarch/memcpy-lsx.S b/sysdeps/loongarch/lp64/multiarch/memcpy-lsx.S -index 6ebbe7a2c7..feb2bb0e0a 100644 ---- a/sysdeps/loongarch/lp64/multiarch/memcpy-lsx.S -+++ b/sysdeps/loongarch/lp64/multiarch/memcpy-lsx.S -@@ -1,4 +1,4 @@ --/* Optimized memcpy implementation using Loongarch LSX instructions. -+/* Optimized memcpy implementation using LoongArch LSX instructions. - Copyright (C) 2023 Free Software Foundation, Inc. - - This file is part of the GNU C Library. -diff --git a/sysdeps/loongarch/lp64/multiarch/memcpy-unaligned.S b/sysdeps/loongarch/lp64/multiarch/memcpy-unaligned.S -index 8e60a22dfb..31019b138f 100644 ---- a/sysdeps/loongarch/lp64/multiarch/memcpy-unaligned.S -+++ b/sysdeps/loongarch/lp64/multiarch/memcpy-unaligned.S -@@ -1,4 +1,4 @@ --/* Optimized unaligned memcpy implementation using basic Loongarch instructions. -+/* Optimized unaligned memcpy implementation using basic LoongArch instructions. - Copyright (C) 2023 Free Software Foundation, Inc. - - This file is part of the GNU C Library. -diff --git a/sysdeps/loongarch/lp64/multiarch/memmove-aligned.S b/sysdeps/loongarch/lp64/multiarch/memmove-aligned.S -index 5354f38379..a02114c057 100644 ---- a/sysdeps/loongarch/lp64/multiarch/memmove-aligned.S -+++ b/sysdeps/loongarch/lp64/multiarch/memmove-aligned.S -@@ -1,4 +1,4 @@ --/* Optimized memmove_aligned implementation using basic Loongarch instructions. -+/* Optimized memmove_aligned implementation using basic LoongArch instructions. - Copyright (C) 2023 Free Software Foundation, Inc. - - This file is part of the GNU C Library. -diff --git a/sysdeps/loongarch/lp64/multiarch/memmove-lasx.S b/sysdeps/loongarch/lp64/multiarch/memmove-lasx.S -index ff68e7a22b..95d8ee7b93 100644 ---- a/sysdeps/loongarch/lp64/multiarch/memmove-lasx.S -+++ b/sysdeps/loongarch/lp64/multiarch/memmove-lasx.S -@@ -1,4 +1,4 @@ --/* Optimized memmove implementation using Loongarch LASX instructions. -+/* Optimized memmove implementation using LoongArch LASX instructions. - Copyright (C) 2023 Free Software Foundation, Inc. - - This file is part of the GNU C Library. -diff --git a/sysdeps/loongarch/lp64/multiarch/memmove-lsx.S b/sysdeps/loongarch/lp64/multiarch/memmove-lsx.S -index 9e1502a79b..8a9367708d 100644 ---- a/sysdeps/loongarch/lp64/multiarch/memmove-lsx.S -+++ b/sysdeps/loongarch/lp64/multiarch/memmove-lsx.S -@@ -1,4 +1,4 @@ --/* Optimized memmove implementation using Loongarch LSX instructions. -+/* Optimized memmove implementation using LoongArch LSX instructions. - Copyright (C) 2023 Free Software Foundation, Inc. - - This file is part of the GNU C Library. -diff --git a/sysdeps/loongarch/lp64/multiarch/memmove-unaligned.S b/sysdeps/loongarch/lp64/multiarch/memmove-unaligned.S -index 90a64b6bb9..3284ce25fe 100644 ---- a/sysdeps/loongarch/lp64/multiarch/memmove-unaligned.S -+++ b/sysdeps/loongarch/lp64/multiarch/memmove-unaligned.S -@@ -1,4 +1,4 @@ --/* Optimized memmove_unaligned implementation using basic Loongarch instructions. -+/* Optimized memmove_unaligned implementation using basic LoongArch instructions. - Copyright (C) 2023 Free Software Foundation, Inc. - - This file is part of the GNU C Library. -diff --git a/sysdeps/loongarch/lp64/multiarch/strchr-aligned.S b/sysdeps/loongarch/lp64/multiarch/strchr-aligned.S -index 5fb01806e4..620200545b 100644 ---- a/sysdeps/loongarch/lp64/multiarch/strchr-aligned.S -+++ b/sysdeps/loongarch/lp64/multiarch/strchr-aligned.S -@@ -1,4 +1,4 @@ --/* Optimized strchr implementation using basic Loongarch instructions. -+/* Optimized strchr implementation using basic LoongArch instructions. - Copyright (C) 2023 Free Software Foundation, Inc. - - This file is part of the GNU C Library. -diff --git a/sysdeps/loongarch/lp64/multiarch/strchr-lasx.S b/sysdeps/loongarch/lp64/multiarch/strchr-lasx.S -index 254402daa5..4d3cc58845 100644 ---- a/sysdeps/loongarch/lp64/multiarch/strchr-lasx.S -+++ b/sysdeps/loongarch/lp64/multiarch/strchr-lasx.S -@@ -1,4 +1,4 @@ --/* Optimized strchr implementation using loongarch LASX SIMD instructions. -+/* Optimized strchr implementation using LoongArch LASX instructions. - Copyright (C) 2023 Free Software Foundation, Inc. - - This file is part of the GNU C Library. -diff --git a/sysdeps/loongarch/lp64/multiarch/strchr-lsx.S b/sysdeps/loongarch/lp64/multiarch/strchr-lsx.S -index dae98b0a55..8b78c35c20 100644 ---- a/sysdeps/loongarch/lp64/multiarch/strchr-lsx.S -+++ b/sysdeps/loongarch/lp64/multiarch/strchr-lsx.S -@@ -1,4 +1,4 @@ --/* Optimized strlen implementation using loongarch LSX SIMD instructions. -+/* Optimized strlen implementation using LoongArch LSX instructions. - Copyright (C) 2023 Free Software Foundation, Inc. - - This file is part of the GNU C Library. -diff --git a/sysdeps/loongarch/lp64/multiarch/strchrnul-aligned.S b/sysdeps/loongarch/lp64/multiarch/strchrnul-aligned.S -index 1c01a0232d..20856a06a0 100644 ---- a/sysdeps/loongarch/lp64/multiarch/strchrnul-aligned.S -+++ b/sysdeps/loongarch/lp64/multiarch/strchrnul-aligned.S -@@ -1,4 +1,4 @@ --/* Optimized strchrnul implementation using basic Loongarch instructions. -+/* Optimized strchrnul implementation using basic LoongArch instructions. - Copyright (C) 2023 Free Software Foundation, Inc. - - This file is part of the GNU C Library. -diff --git a/sysdeps/loongarch/lp64/multiarch/strchrnul-lasx.S b/sysdeps/loongarch/lp64/multiarch/strchrnul-lasx.S -index d45495e48f..4753d4ced5 100644 ---- a/sysdeps/loongarch/lp64/multiarch/strchrnul-lasx.S -+++ b/sysdeps/loongarch/lp64/multiarch/strchrnul-lasx.S -@@ -1,4 +1,4 @@ --/* Optimized strchrnul implementation using loongarch LASX SIMD instructions. -+/* Optimized strchrnul implementation using LoongArch LASX instructions. - Copyright (C) 2023 Free Software Foundation, Inc. - - This file is part of the GNU C Library. -diff --git a/sysdeps/loongarch/lp64/multiarch/strchrnul-lsx.S b/sysdeps/loongarch/lp64/multiarch/strchrnul-lsx.S -index 07d793ae5f..671e740c03 100644 ---- a/sysdeps/loongarch/lp64/multiarch/strchrnul-lsx.S -+++ b/sysdeps/loongarch/lp64/multiarch/strchrnul-lsx.S -@@ -1,4 +1,4 @@ --/* Optimized strchrnul implementation using loongarch LSX SIMD instructions. -+/* Optimized strchrnul implementation using LoongArch LSX instructions. - Copyright (C) 2023 Free Software Foundation, Inc. - - This file is part of the GNU C Library. -diff --git a/sysdeps/loongarch/lp64/multiarch/strcmp-aligned.S b/sysdeps/loongarch/lp64/multiarch/strcmp-aligned.S -index f5f4f3364e..ba1f9667e0 100644 ---- a/sysdeps/loongarch/lp64/multiarch/strcmp-aligned.S -+++ b/sysdeps/loongarch/lp64/multiarch/strcmp-aligned.S -@@ -1,4 +1,4 @@ --/* Optimized strcmp implementation using basic Loongarch instructions. -+/* Optimized strcmp implementation using basic LoongArch instructions. - Copyright (C) 2023 Free Software Foundation, Inc. - - This file is part of the GNU C Library. -diff --git a/sysdeps/loongarch/lp64/multiarch/strcmp-lsx.S b/sysdeps/loongarch/lp64/multiarch/strcmp-lsx.S -index 2e177a3872..091c8c9ebd 100644 ---- a/sysdeps/loongarch/lp64/multiarch/strcmp-lsx.S -+++ b/sysdeps/loongarch/lp64/multiarch/strcmp-lsx.S -@@ -1,4 +1,4 @@ --/* Optimized strcmp implementation using Loongarch LSX instructions. -+/* Optimized strcmp implementation using LoongArch LSX instructions. - Copyright (C) 2023 Free Software Foundation, Inc. - - This file is part of the GNU C Library. -diff --git a/sysdeps/loongarch/lp64/multiarch/strlen-aligned.S b/sysdeps/loongarch/lp64/multiarch/strlen-aligned.S -index e9e1d2fc04..ed0548e46b 100644 ---- a/sysdeps/loongarch/lp64/multiarch/strlen-aligned.S -+++ b/sysdeps/loongarch/lp64/multiarch/strlen-aligned.S -@@ -1,4 +1,4 @@ --/* Optimized strlen implementation using basic Loongarch instructions. -+/* Optimized strlen implementation using basic LoongArch instructions. - Copyright (C) 2023 Free Software Foundation, Inc. - - This file is part of the GNU C Library. -diff --git a/sysdeps/loongarch/lp64/multiarch/strlen-lasx.S b/sysdeps/loongarch/lp64/multiarch/strlen-lasx.S -index 258c47cea0..91342f3415 100644 ---- a/sysdeps/loongarch/lp64/multiarch/strlen-lasx.S -+++ b/sysdeps/loongarch/lp64/multiarch/strlen-lasx.S -@@ -1,4 +1,4 @@ --/* Optimized strlen implementation using loongarch LASX SIMD instructions. -+/* Optimized strlen implementation using LoongArch LASX instructions. - Copyright (C) 2023 Free Software Foundation, Inc. - - This file is part of the GNU C Library. -diff --git a/sysdeps/loongarch/lp64/multiarch/strlen-lsx.S b/sysdeps/loongarch/lp64/multiarch/strlen-lsx.S -index b194355e7b..b09c12e00b 100644 ---- a/sysdeps/loongarch/lp64/multiarch/strlen-lsx.S -+++ b/sysdeps/loongarch/lp64/multiarch/strlen-lsx.S -@@ -1,4 +1,4 @@ --/* Optimized strlen implementation using Loongarch LSX SIMD instructions. -+/* Optimized strlen implementation using LoongArch LSX instructions. - Copyright (C) 2023 Free Software Foundation, Inc. - - This file is part of the GNU C Library. -diff --git a/sysdeps/loongarch/lp64/multiarch/strncmp-aligned.S b/sysdeps/loongarch/lp64/multiarch/strncmp-aligned.S -index e2687fa770..f63de872a7 100644 ---- a/sysdeps/loongarch/lp64/multiarch/strncmp-aligned.S -+++ b/sysdeps/loongarch/lp64/multiarch/strncmp-aligned.S -@@ -1,4 +1,4 @@ --/* Optimized strncmp implementation using basic Loongarch instructions. -+/* Optimized strncmp implementation using basic LoongArch instructions. - Copyright (C) 2023 Free Software Foundation, Inc. - - This file is part of the GNU C Library. -diff --git a/sysdeps/loongarch/lp64/multiarch/strncmp-lsx.S b/sysdeps/loongarch/lp64/multiarch/strncmp-lsx.S -index 0b4eee2a98..83cb801d5d 100644 ---- a/sysdeps/loongarch/lp64/multiarch/strncmp-lsx.S -+++ b/sysdeps/loongarch/lp64/multiarch/strncmp-lsx.S -@@ -1,4 +1,4 @@ --/* Optimized strncmp implementation using Loongarch LSX instructions. -+/* Optimized strncmp implementation using LoongArch LSX instructions. - Copyright (C) 2023 Free Software Foundation, Inc. - - This file is part of the GNU C Library. -diff --git a/sysdeps/loongarch/lp64/multiarch/strnlen-aligned.S b/sysdeps/loongarch/lp64/multiarch/strnlen-aligned.S -index b900430a5d..a8296a1b21 100644 ---- a/sysdeps/loongarch/lp64/multiarch/strnlen-aligned.S -+++ b/sysdeps/loongarch/lp64/multiarch/strnlen-aligned.S -@@ -1,4 +1,4 @@ --/* Optimized strnlen implementation using basic Loongarch instructions. -+/* Optimized strnlen implementation using basic LoongArch instructions. - Copyright (C) 2023 Free Software Foundation, Inc. - - This file is part of the GNU C Library. -diff --git a/sysdeps/loongarch/lp64/multiarch/strnlen-lasx.S b/sysdeps/loongarch/lp64/multiarch/strnlen-lasx.S -index 2c03d3d9b4..aa6c812d30 100644 ---- a/sysdeps/loongarch/lp64/multiarch/strnlen-lasx.S -+++ b/sysdeps/loongarch/lp64/multiarch/strnlen-lasx.S -@@ -1,4 +1,4 @@ --/* Optimized strnlen implementation using loongarch LASX instructions -+/* Optimized strnlen implementation using LoongArch LASX instructions - Copyright (C) 2023 Free Software Foundation, Inc. - - This file is part of the GNU C Library. -diff --git a/sysdeps/loongarch/lp64/multiarch/strnlen-lsx.S b/sysdeps/loongarch/lp64/multiarch/strnlen-lsx.S -index b769a89584..d0febe3eb0 100644 ---- a/sysdeps/loongarch/lp64/multiarch/strnlen-lsx.S -+++ b/sysdeps/loongarch/lp64/multiarch/strnlen-lsx.S -@@ -1,4 +1,4 @@ --/* Optimized strnlen implementation using loongarch LSX instructions -+/* Optimized strnlen implementation using LoongArch LSX instructions - Copyright (C) 2023 Free Software Foundation, Inc. - - This file is part of the GNU C Library. --- -2.45.0 - diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0024-LoongArch-Add-lasx-lsx-support-for-_dl_runtime_profi.patch b/runtime-optenv32/glibc+32/autobuild/patches/0024-LoongArch-Add-lasx-lsx-support-for-_dl_runtime_profi.patch deleted file mode 100644 index 1347dfd1c5f..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0024-LoongArch-Add-lasx-lsx-support-for-_dl_runtime_profi.patch +++ /dev/null @@ -1,624 +0,0 @@ -From a9cfddcccccec866b1107ee4ce15c1993a68f645 Mon Sep 17 00:00:00 2001 -From: caiyinyu -Date: Fri, 8 Sep 2023 14:10:55 +0800 -Subject: [PATCH 24/32] LoongArch: Add lasx/lsx support for - _dl_runtime_profile. - ---- - sysdeps/loongarch/bits/link.h | 24 ++- - sysdeps/loongarch/bits/link_lavcurrent.h | 25 +++ - sysdeps/loongarch/dl-audit-check.h | 23 +++ - sysdeps/loongarch/dl-link.sym | 8 +- - sysdeps/loongarch/dl-machine.h | 11 +- - sysdeps/loongarch/dl-trampoline.S | 177 +---------------- - sysdeps/loongarch/dl-trampoline.h | 242 +++++++++++++++++++++++ - 7 files changed, 331 insertions(+), 179 deletions(-) - create mode 100644 sysdeps/loongarch/bits/link_lavcurrent.h - create mode 100644 sysdeps/loongarch/dl-audit-check.h - -diff --git a/sysdeps/loongarch/bits/link.h b/sysdeps/loongarch/bits/link.h -index 7fa6131280..00f6f25f2d 100644 ---- a/sysdeps/loongarch/bits/link.h -+++ b/sysdeps/loongarch/bits/link.h -@@ -20,10 +20,26 @@ - #error "Never include directly; use instead." - #endif - -+#ifndef __loongarch_soft_float -+typedef float La_loongarch_vr -+ __attribute__ ((__vector_size__ (16), __aligned__ (16))); -+typedef float La_loongarch_xr -+ __attribute__ ((__vector_size__ (32), __aligned__ (16))); -+ -+typedef union -+{ -+ double fpreg[4]; -+ La_loongarch_vr vr[2]; -+ La_loongarch_xr xr[1]; -+} La_loongarch_vector __attribute__ ((__aligned__ (16))); -+#endif -+ - typedef struct La_loongarch_regs - { - unsigned long int lr_reg[8]; /* a0 - a7 */ -- double lr_fpreg[8]; /* fa0 - fa7 */ -+#ifndef __loongarch_soft_float -+ La_loongarch_vector lr_vec[8]; /* fa0 - fa7 or vr0 - vr7 or xr0 - xr7*/ -+#endif - unsigned long int lr_ra; - unsigned long int lr_sp; - } La_loongarch_regs; -@@ -33,8 +49,10 @@ typedef struct La_loongarch_retval - { - unsigned long int lrv_a0; - unsigned long int lrv_a1; -- double lrv_fa0; -- double lrv_fa1; -+#ifndef __loongarch_soft_float -+ La_loongarch_vector lrv_vec0; -+ La_loongarch_vector lrv_vec1; -+#endif - } La_loongarch_retval; - - __BEGIN_DECLS -diff --git a/sysdeps/loongarch/bits/link_lavcurrent.h b/sysdeps/loongarch/bits/link_lavcurrent.h -new file mode 100644 -index 0000000000..15f1eb8478 ---- /dev/null -+++ b/sysdeps/loongarch/bits/link_lavcurrent.h -@@ -0,0 +1,25 @@ -+/* Data structure for communication from the run-time dynamic linker for -+ loaded ELF shared objects. LAV_CURRENT definition. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#ifndef _LINK_H -+# error "Never include directly; use instead." -+#endif -+ -+/* Version numbers for la_version handshake interface. */ -+#define LAV_CURRENT 3 -diff --git a/sysdeps/loongarch/dl-audit-check.h b/sysdeps/loongarch/dl-audit-check.h -new file mode 100644 -index 0000000000..a139c939c7 ---- /dev/null -+++ b/sysdeps/loongarch/dl-audit-check.h -@@ -0,0 +1,23 @@ -+/* rtld-audit version check. LoongArch version. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+static inline bool -+_dl_audit_check_version (unsigned int lav) -+{ -+ return lav == LAV_CURRENT; -+} -diff --git a/sysdeps/loongarch/dl-link.sym b/sysdeps/loongarch/dl-link.sym -index 868ab7c6eb..b534968e30 100644 ---- a/sysdeps/loongarch/dl-link.sym -+++ b/sysdeps/loongarch/dl-link.sym -@@ -6,9 +6,13 @@ DL_SIZEOF_RG sizeof(struct La_loongarch_regs) - DL_SIZEOF_RV sizeof(struct La_loongarch_retval) - - DL_OFFSET_RG_A0 offsetof(struct La_loongarch_regs, lr_reg) --DL_OFFSET_RG_FA0 offsetof(struct La_loongarch_regs, lr_fpreg) -+#ifndef __loongarch_soft_float -+DL_OFFSET_RG_VEC0 offsetof(struct La_loongarch_regs, lr_vec) -+#endif - DL_OFFSET_RG_RA offsetof(struct La_loongarch_regs, lr_ra) - DL_OFFSET_RG_SP offsetof(struct La_loongarch_regs, lr_sp) - - DL_OFFSET_RV_A0 offsetof(struct La_loongarch_retval, lrv_a0) --DL_OFFSET_RV_FA0 offsetof(struct La_loongarch_retval, lrv_a1) -+#ifndef __loongarch_soft_float -+DL_OFFSET_RV_VEC0 offsetof(struct La_loongarch_retval, lrv_vec0) -+#endif -diff --git a/sysdeps/loongarch/dl-machine.h b/sysdeps/loongarch/dl-machine.h -index 066bb233ac..8a2db9de3c 100644 ---- a/sysdeps/loongarch/dl-machine.h -+++ b/sysdeps/loongarch/dl-machine.h -@@ -273,6 +273,8 @@ elf_machine_runtime_setup (struct link_map *l, struct r_scope_elem *scope[], - #if !defined __loongarch_soft_float - extern void _dl_runtime_resolve_lasx (void) attribute_hidden; - extern void _dl_runtime_resolve_lsx (void) attribute_hidden; -+ extern void _dl_runtime_profile_lasx (void) attribute_hidden; -+ extern void _dl_runtime_profile_lsx (void) attribute_hidden; - #endif - extern void _dl_runtime_resolve (void) attribute_hidden; - extern void _dl_runtime_profile (void) attribute_hidden; -@@ -287,7 +289,14 @@ elf_machine_runtime_setup (struct link_map *l, struct r_scope_elem *scope[], - end in this function. */ - if (profile != 0) - { -- gotplt[0] = (ElfW(Addr)) &_dl_runtime_profile; -+#if !defined __loongarch_soft_float -+ if (SUPPORT_LASX) -+ gotplt[0] = (ElfW(Addr)) &_dl_runtime_profile_lasx; -+ else if (SUPPORT_LSX) -+ gotplt[0] = (ElfW(Addr)) &_dl_runtime_profile_lsx; -+ else -+#endif -+ gotplt[0] = (ElfW(Addr)) &_dl_runtime_profile; - - if (GLRO(dl_profile) != NULL - && _dl_name_match_p (GLRO(dl_profile), l)) -diff --git a/sysdeps/loongarch/dl-trampoline.S b/sysdeps/loongarch/dl-trampoline.S -index 8fd9146978..bb449ecf9c 100644 ---- a/sysdeps/loongarch/dl-trampoline.S -+++ b/sysdeps/loongarch/dl-trampoline.S -@@ -22,190 +22,21 @@ - #if !defined __loongarch_soft_float - #define USE_LASX - #define _dl_runtime_resolve _dl_runtime_resolve_lasx -+#define _dl_runtime_profile _dl_runtime_profile_lasx - #include "dl-trampoline.h" - #undef FRAME_SIZE - #undef USE_LASX - #undef _dl_runtime_resolve -+#undef _dl_runtime_profile - - #define USE_LSX - #define _dl_runtime_resolve _dl_runtime_resolve_lsx -+#define _dl_runtime_profile _dl_runtime_profile_lsx - #include "dl-trampoline.h" - #undef FRAME_SIZE - #undef USE_LSX - #undef _dl_runtime_resolve -+#undef _dl_runtime_profile - #endif - - #include "dl-trampoline.h" -- --#include "dl-link.h" -- --ENTRY (_dl_runtime_profile) -- /* LoongArch we get called with: -- t0 linkr_map pointer -- t1 the scaled offset stored in t0, which can be used -- to calculate the offset of the current symbol in .rela.plt -- t2 %hi(%pcrel(.got.plt)) stored in t2, no use in this function -- t3 dl resolver entry point, no use in this function -- -- Stack frame layout: -- [sp, #96] La_loongarch_regs -- [sp, #48] La_loongarch_retval -- [sp, #40] frame size return from pltenter -- [sp, #32] dl_profile_call saved a1 -- [sp, #24] dl_profile_call saved a0 -- [sp, #16] T1 -- [sp, #0] ra, fp <- fp -- */ -- --# define OFFSET_T1 16 --# define OFFSET_SAVED_CALL_A0 OFFSET_T1 + 8 --# define OFFSET_FS OFFSET_SAVED_CALL_A0 + 16 --# define OFFSET_RV OFFSET_FS + 8 --# define OFFSET_RG OFFSET_RV + DL_SIZEOF_RV -- --# define SF_SIZE (-(-(OFFSET_RG + DL_SIZEOF_RG) & ALMASK)) -- -- /* Save arguments to stack. */ -- ADDI sp, sp, -SF_SIZE -- REG_S ra, sp, 0 -- REG_S fp, sp, 8 -- -- or fp, sp, zero -- -- REG_S a0, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 0*SZREG -- REG_S a1, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 1*SZREG -- REG_S a2, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 2*SZREG -- REG_S a3, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 3*SZREG -- REG_S a4, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 4*SZREG -- REG_S a5, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 5*SZREG -- REG_S a6, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 6*SZREG -- REG_S a7, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 7*SZREG -- --#ifndef __loongarch_soft_float -- FREG_S fa0, fp, OFFSET_RG + DL_OFFSET_RG_FA0 + 0*SZFREG -- FREG_S fa1, fp, OFFSET_RG + DL_OFFSET_RG_FA0 + 1*SZFREG -- FREG_S fa2, fp, OFFSET_RG + DL_OFFSET_RG_FA0 + 2*SZFREG -- FREG_S fa3, fp, OFFSET_RG + DL_OFFSET_RG_FA0 + 3*SZFREG -- FREG_S fa4, fp, OFFSET_RG + DL_OFFSET_RG_FA0 + 4*SZFREG -- FREG_S fa5, fp, OFFSET_RG + DL_OFFSET_RG_FA0 + 5*SZFREG -- FREG_S fa6, fp, OFFSET_RG + DL_OFFSET_RG_FA0 + 6*SZFREG -- FREG_S fa7, fp, OFFSET_RG + DL_OFFSET_RG_FA0 + 7*SZFREG --#endif -- -- /* Update .got.plt and obtain runtime address of callee. */ -- SLLI a1, t1, 1 -- or a0, t0, zero -- ADD a1, a1, t1 -- or a2, ra, zero /* return addr */ -- ADDI a3, fp, OFFSET_RG /* La_loongarch_regs pointer */ -- ADDI a4, fp, OFFSET_FS /* frame size return from pltenter */ -- -- REG_S a0, fp, OFFSET_SAVED_CALL_A0 -- REG_S a1, fp, OFFSET_SAVED_CALL_A0 + SZREG -- -- la t2, _dl_profile_fixup -- jirl ra, t2, 0 -- -- REG_L t3, fp, OFFSET_FS -- bge t3, zero, 1f -- -- /* Save the return. */ -- or t4, v0, zero -- -- /* Restore arguments from stack. */ -- REG_L a0, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 0*SZREG -- REG_L a1, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 1*SZREG -- REG_L a2, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 2*SZREG -- REG_L a3, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 3*SZREG -- REG_L a4, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 4*SZREG -- REG_L a5, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 5*SZREG -- REG_L a6, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 6*SZREG -- REG_L a7, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 7*SZREG -- --#ifndef __loongarch_soft_float -- FREG_L fa0, fp, OFFSET_RG + DL_OFFSET_RG_FA0 + 0*SZFREG -- FREG_L fa1, fp, OFFSET_RG + DL_OFFSET_RG_FA0 + 1*SZFREG -- FREG_L fa2, fp, OFFSET_RG + DL_OFFSET_RG_FA0 + 2*SZFREG -- FREG_L fa3, fp, OFFSET_RG + DL_OFFSET_RG_FA0 + 3*SZFREG -- FREG_L fa4, fp, OFFSET_RG + DL_OFFSET_RG_FA0 + 4*SZFREG -- FREG_L fa5, fp, OFFSET_RG + DL_OFFSET_RG_FA0 + 5*SZFREG -- FREG_L fa6, fp, OFFSET_RG + DL_OFFSET_RG_FA0 + 6*SZFREG -- FREG_L fa7, fp, OFFSET_RG + DL_OFFSET_RG_FA0 + 7*SZFREG --#endif -- -- REG_L ra, fp, 0 -- REG_L fp, fp, SZREG -- -- ADDI sp, sp, SF_SIZE -- jirl zero, t4, 0 -- --1: -- /* The new frame size is in t3. */ -- SUB sp, fp, t3 -- BSTRINS sp, zero, 3, 0 -- -- REG_S a0, fp, OFFSET_T1 -- -- or a0, sp, zero -- ADDI a1, fp, SF_SIZE -- or a2, t3, zero -- la t5, memcpy -- jirl ra, t5, 0 -- -- REG_L t6, fp, OFFSET_T1 -- -- /* Call the function. */ -- REG_L a0, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 0*SZREG -- REG_L a1, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 1*SZREG -- REG_L a2, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 2*SZREG -- REG_L a3, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 3*SZREG -- REG_L a4, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 4*SZREG -- REG_L a5, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 5*SZREG -- REG_L a6, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 6*SZREG -- REG_L a7, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 7*SZREG -- --#ifndef __loongarch_soft_float -- FREG_L fa0, fp, OFFSET_RG + DL_OFFSET_RG_FA0 + 0*SZFREG -- FREG_L fa1, fp, OFFSET_RG + DL_OFFSET_RG_FA0 + 1*SZFREG -- FREG_L fa2, fp, OFFSET_RG + DL_OFFSET_RG_FA0 + 2*SZFREG -- FREG_L fa3, fp, OFFSET_RG + DL_OFFSET_RG_FA0 + 3*SZFREG -- FREG_L fa4, fp, OFFSET_RG + DL_OFFSET_RG_FA0 + 4*SZFREG -- FREG_L fa5, fp, OFFSET_RG + DL_OFFSET_RG_FA0 + 5*SZFREG -- FREG_L fa6, fp, OFFSET_RG + DL_OFFSET_RG_FA0 + 6*SZFREG -- FREG_L fa7, fp, OFFSET_RG + DL_OFFSET_RG_FA0 + 7*SZFREG --#endif -- jirl ra, t6, 0 -- -- REG_S a0, fp, OFFSET_SAVED_CALL_A0 + DL_OFFSET_RV_A0 -- REG_S a1, fp, OFFSET_SAVED_CALL_A0 + DL_OFFSET_RV_A0 + SZREG -- --#ifndef __loongarch_soft_float -- FREG_S fa0, fp, OFFSET_SAVED_CALL_A0 + DL_OFFSET_RV_FA0 -- FREG_S fa1, fp, OFFSET_SAVED_CALL_A0 + DL_OFFSET_RV_FA0 + SZFREG --#endif -- -- /* Setup call to pltexit. */ -- REG_L a0, fp, OFFSET_SAVED_CALL_A0 -- REG_L a1, fp, OFFSET_SAVED_CALL_A0 + SZREG -- ADDI a2, fp, OFFSET_RG -- ADDI a3, fp, OFFSET_RV -- la t7, _dl_audit_pltexit -- jirl ra, t7, 0 -- -- REG_L a0, fp, OFFSET_RV + DL_OFFSET_RV_A0 -- REG_L a1, fp, OFFSET_RV + DL_OFFSET_RV_A0 + SZREG -- --#ifndef __loongarch_soft_float -- FREG_L fa0, fp, OFFSET_RV + DL_OFFSET_RV_FA0 -- FREG_L fa1, fp, OFFSET_RV + DL_OFFSET_RV_FA0 + SZFREG --#endif -- -- /* RA from within La_loongarch_reg. */ -- REG_L ra, fp, OFFSET_RG + DL_OFFSET_RG_RA -- or sp, fp, zero -- ADDI sp, sp, SF_SIZE -- REG_S fp, fp, SZREG -- -- jirl zero, ra, 0 -- --END (_dl_runtime_profile) -diff --git a/sysdeps/loongarch/dl-trampoline.h b/sysdeps/loongarch/dl-trampoline.h -index 02375286f8..cb4a287c65 100644 ---- a/sysdeps/loongarch/dl-trampoline.h -+++ b/sysdeps/loongarch/dl-trampoline.h -@@ -125,3 +125,245 @@ ENTRY (_dl_runtime_resolve) - /* Invoke the callee. */ - jirl zero, t1, 0 - END (_dl_runtime_resolve) -+ -+#include "dl-link.h" -+ -+ENTRY (_dl_runtime_profile) -+ /* LoongArch we get called with: -+ t0 linkr_map pointer -+ t1 the scaled offset stored in t0, which can be used -+ to calculate the offset of the current symbol in .rela.plt -+ t2 %hi(%pcrel(.got.plt)) stored in t2, no use in this function -+ t3 dl resolver entry point, no use in this function -+ -+ Stack frame layout: -+ [sp, #208] La_loongarch_regs -+ [sp, #128] La_loongarch_retval // align: 16 -+ [sp, #112] frame size return from pltenter -+ [sp, #80 ] dl_profile_call saved vec1 -+ [sp, #48 ] dl_profile_call saved vec0 // align: 16 -+ [sp, #32 ] dl_profile_call saved a1 -+ [sp, #24 ] dl_profile_call saved a0 -+ [sp, #16 ] T1 -+ [sp, #0 ] ra, fp <- fp -+ */ -+ -+# define OFFSET_T1 16 -+# define OFFSET_SAVED_CALL_A0 OFFSET_T1 + 8 -+# define OFFSET_FS OFFSET_SAVED_CALL_A0 + 16 + 8 + 64 -+# define OFFSET_RV OFFSET_FS + 8 + 8 -+# define OFFSET_RG OFFSET_RV + DL_SIZEOF_RV -+ -+# define SF_SIZE (-(-(OFFSET_RG + DL_SIZEOF_RG) & ALMASK)) -+ -+ /* Save arguments to stack. */ -+ ADDI sp, sp, -SF_SIZE -+ REG_S ra, sp, 0 -+ REG_S fp, sp, 8 -+ -+ or fp, sp, zero -+ -+ REG_S a0, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 0*SZREG -+ REG_S a1, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 1*SZREG -+ REG_S a2, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 2*SZREG -+ REG_S a3, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 3*SZREG -+ REG_S a4, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 4*SZREG -+ REG_S a5, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 5*SZREG -+ REG_S a6, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 6*SZREG -+ REG_S a7, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 7*SZREG -+ -+#ifdef USE_LASX -+ xvst xr0, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 0*SZXREG -+ xvst xr1, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 1*SZXREG -+ xvst xr2, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 2*SZXREG -+ xvst xr3, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 3*SZXREG -+ xvst xr4, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 4*SZXREG -+ xvst xr5, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 5*SZXREG -+ xvst xr6, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 6*SZXREG -+ xvst xr7, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 7*SZXREG -+#elif defined USE_LSX -+ vst vr0, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 0*SZVREG -+ vst vr1, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 1*SZVREG -+ vst vr2, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 2*SZVREG -+ vst vr3, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 3*SZVREG -+ vst vr4, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 4*SZVREG -+ vst vr5, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 5*SZVREG -+ vst vr6, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 6*SZVREG -+ vst vr7, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 7*SZVREG -+#elif !defined __loongarch_soft_float -+ FREG_S fa0, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 0*SZFREG -+ FREG_S fa1, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 1*SZFREG -+ FREG_S fa2, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 2*SZFREG -+ FREG_S fa3, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 3*SZFREG -+ FREG_S fa4, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 4*SZFREG -+ FREG_S fa5, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 5*SZFREG -+ FREG_S fa6, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 6*SZFREG -+ FREG_S fa7, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 7*SZFREG -+#endif -+ -+ /* Update .got.plt and obtain runtime address of callee. */ -+ SLLI a1, t1, 1 -+ or a0, t0, zero -+ ADD a1, a1, t1 -+ or a2, ra, zero /* return addr */ -+ ADDI a3, fp, OFFSET_RG /* La_loongarch_regs pointer */ -+ ADDI a4, fp, OFFSET_FS /* frame size return from pltenter */ -+ -+ REG_S a0, fp, OFFSET_SAVED_CALL_A0 -+ REG_S a1, fp, OFFSET_SAVED_CALL_A0 + SZREG -+ -+ la t2, _dl_profile_fixup -+ jirl ra, t2, 0 -+ -+ REG_L t3, fp, OFFSET_FS -+ bge t3, zero, 1f -+ -+ /* Save the return. */ -+ or t4, v0, zero -+ -+ /* Restore arguments from stack. */ -+ REG_L a0, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 0*SZREG -+ REG_L a1, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 1*SZREG -+ REG_L a2, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 2*SZREG -+ REG_L a3, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 3*SZREG -+ REG_L a4, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 4*SZREG -+ REG_L a5, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 5*SZREG -+ REG_L a6, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 6*SZREG -+ REG_L a7, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 7*SZREG -+ -+#ifdef USE_LASX -+ xvld xr0, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 0*SZXREG -+ xvld xr1, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 1*SZXREG -+ xvld xr2, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 2*SZXREG -+ xvld xr3, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 3*SZXREG -+ xvld xr4, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 4*SZXREG -+ xvld xr5, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 5*SZXREG -+ xvld xr6, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 6*SZXREG -+ xvld xr7, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 7*SZXREG -+#elif defined USE_LSX -+ vld vr0, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 0*SZVREG -+ vld vr1, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 1*SZVREG -+ vld vr2, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 2*SZVREG -+ vld vr3, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 3*SZVREG -+ vld vr4, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 4*SZVREG -+ vld vr5, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 5*SZVREG -+ vld vr6, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 6*SZVREG -+ vld vr7, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 7*SZVREG -+#elif !defined __loongarch_soft_float -+ FREG_L fa0, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 0*SZFREG -+ FREG_L fa1, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 1*SZFREG -+ FREG_L fa2, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 2*SZFREG -+ FREG_L fa3, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 3*SZFREG -+ FREG_L fa4, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 4*SZFREG -+ FREG_L fa5, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 5*SZFREG -+ FREG_L fa6, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 6*SZFREG -+ FREG_L fa7, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 7*SZFREG -+#endif -+ -+ REG_L ra, fp, 0 -+ REG_L fp, fp, SZREG -+ -+ ADDI sp, sp, SF_SIZE -+ jirl zero, t4, 0 -+ -+1: -+ /* The new frame size is in t3. */ -+ SUB sp, fp, t3 -+ BSTRINS sp, zero, 3, 0 -+ -+ REG_S a0, fp, OFFSET_T1 -+ -+ or a0, sp, zero -+ ADDI a1, fp, SF_SIZE -+ or a2, t3, zero -+ la t5, memcpy -+ jirl ra, t5, 0 -+ -+ REG_L t6, fp, OFFSET_T1 -+ -+ /* Call the function. */ -+ REG_L a0, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 0*SZREG -+ REG_L a1, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 1*SZREG -+ REG_L a2, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 2*SZREG -+ REG_L a3, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 3*SZREG -+ REG_L a4, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 4*SZREG -+ REG_L a5, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 5*SZREG -+ REG_L a6, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 6*SZREG -+ REG_L a7, fp, OFFSET_RG + DL_OFFSET_RG_A0 + 7*SZREG -+ -+#ifdef USE_LASX -+ xvld xr0, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 0*SZXREG -+ xvld xr1, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 1*SZXREG -+ xvld xr2, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 2*SZXREG -+ xvld xr3, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 3*SZXREG -+ xvld xr4, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 4*SZXREG -+ xvld xr5, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 5*SZXREG -+ xvld xr6, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 6*SZXREG -+ xvld xr7, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 7*SZXREG -+#elif defined USE_LSX -+ vld vr0, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 0*SZVREG -+ vld vr1, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 1*SZVREG -+ vld vr2, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 2*SZVREG -+ vld vr3, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 3*SZVREG -+ vld vr4, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 4*SZVREG -+ vld vr5, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 5*SZVREG -+ vld vr6, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 6*SZVREG -+ vld vr7, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 7*SZVREG -+#elif !defined __loongarch_soft_float -+ FREG_L fa0, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 0*SZFREG -+ FREG_L fa1, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 1*SZFREG -+ FREG_L fa2, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 2*SZFREG -+ FREG_L fa3, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 3*SZFREG -+ FREG_L fa4, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 4*SZFREG -+ FREG_L fa5, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 5*SZFREG -+ FREG_L fa6, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 6*SZFREG -+ FREG_L fa7, fp, OFFSET_RG + DL_OFFSET_RG_VEC0 + 7*SZFREG -+#endif -+ -+ jirl ra, t6, 0 -+ -+ REG_S a0, fp, OFFSET_SAVED_CALL_A0 + DL_OFFSET_RV_A0 -+ REG_S a1, fp, OFFSET_SAVED_CALL_A0 + DL_OFFSET_RV_A0 + SZREG -+ -+#ifdef USE_LASX -+ xvst xr0, fp, OFFSET_SAVED_CALL_A0 + DL_OFFSET_RV_VEC0 -+ xvst xr1, fp, OFFSET_SAVED_CALL_A0 + DL_OFFSET_RV_VEC0 + SZXREG -+#elif defined USE_LSX -+ vst vr0, fp, OFFSET_SAVED_CALL_A0 + DL_OFFSET_RV_VEC0 -+ vst vr1, fp, OFFSET_SAVED_CALL_A0 + DL_OFFSET_RV_VEC0 + SZVREG -+#elif !defined __loongarch_soft_float -+ FREG_S fa0, fp, OFFSET_SAVED_CALL_A0 + DL_OFFSET_RV_VEC0 -+ FREG_S fa1, fp, OFFSET_SAVED_CALL_A0 + DL_OFFSET_RV_VEC0 + SZFREG -+#endif -+ -+ /* Setup call to pltexit. */ -+ REG_L a0, fp, OFFSET_SAVED_CALL_A0 -+ REG_L a1, fp, OFFSET_SAVED_CALL_A0 + SZREG -+ ADDI a2, fp, OFFSET_RG -+ ADDI a3, fp, OFFSET_RV -+ la t7, _dl_audit_pltexit -+ jirl ra, t7, 0 -+ -+ REG_L a0, fp, OFFSET_RV + DL_OFFSET_RV_A0 -+ REG_L a1, fp, OFFSET_RV + DL_OFFSET_RV_A0 + SZREG -+ -+#ifdef USE_LASX -+ xvld xr0, fp, OFFSET_SAVED_CALL_A0 + DL_OFFSET_RV_VEC0 -+ xvld xr1, fp, OFFSET_SAVED_CALL_A0 + DL_OFFSET_RV_VEC0 + SZXREG -+#elif defined USE_LSX -+ vld vr0, fp, OFFSET_SAVED_CALL_A0 + DL_OFFSET_RV_VEC0 -+ vld vr1, fp, OFFSET_SAVED_CALL_A0 + DL_OFFSET_RV_VEC0 + SZVREG -+#elif !defined __loongarch_soft_float -+ FREG_L fa0, fp, OFFSET_SAVED_CALL_A0 + DL_OFFSET_RV_VEC0 -+ FREG_L fa1, fp, OFFSET_SAVED_CALL_A0 + DL_OFFSET_RV_VEC0 + SZFREG -+#endif -+ -+ /* RA from within La_loongarch_reg. */ -+ REG_L ra, fp, OFFSET_RG + DL_OFFSET_RG_RA -+ or sp, fp, zero -+ ADDI sp, sp, SF_SIZE -+ REG_S fp, fp, SZREG -+ -+ jirl zero, ra, 0 -+ -+END (_dl_runtime_profile) --- -2.45.0 - diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0025-LoongArch-Replace-deprecated-v0-with-a0-to-eliminate.patch b/runtime-optenv32/glibc+32/autobuild/patches/0025-LoongArch-Replace-deprecated-v0-with-a0-to-eliminate.patch deleted file mode 100644 index 8c760e1ac3a..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0025-LoongArch-Replace-deprecated-v0-with-a0-to-eliminate.patch +++ /dev/null @@ -1,26 +0,0 @@ -From 76c2a86c28947541adc20d2a786dbe19b5ce79d1 Mon Sep 17 00:00:00 2001 -From: caiyinyu -Date: Thu, 14 Sep 2023 19:48:24 +0800 -Subject: [PATCH 25/32] LoongArch: Replace deprecated $v0 with $a0 to eliminate - 'as' Warnings. - ---- - sysdeps/loongarch/dl-machine.h | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/sysdeps/loongarch/dl-machine.h b/sysdeps/loongarch/dl-machine.h -index 8a2db9de3c..57913cefaa 100644 ---- a/sysdeps/loongarch/dl-machine.h -+++ b/sysdeps/loongarch/dl-machine.h -@@ -90,7 +90,7 @@ static inline ElfW (Addr) elf_machine_dynamic (void) - or $a0, $sp, $zero \n\ - bl _dl_start \n\ - # Stash user entry point in s0. \n\ -- or $s0, $v0, $zero \n\ -+ or $s0, $a0, $zero \n\ - # Load the original argument count. \n\ - ld.d $a1, $sp, 0 \n\ - # Call _dl_init (struct link_map *main_map, int argc, \ --- -2.45.0 - diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0026-LoongArch-Add-ifunc-support-for-strcpy-stpcpy-aligne.patch b/runtime-optenv32/glibc+32/autobuild/patches/0026-LoongArch-Add-ifunc-support-for-strcpy-stpcpy-aligne.patch deleted file mode 100644 index b3aad5a991d..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0026-LoongArch-Add-ifunc-support-for-strcpy-stpcpy-aligne.patch +++ /dev/null @@ -1,1096 +0,0 @@ -From 877fdc56e5b026de894dff7a0bf690351fbff79f Mon Sep 17 00:00:00 2001 -From: dengjianbo -Date: Wed, 13 Sep 2023 15:34:59 +0800 -Subject: [PATCH 26/32] LoongArch: Add ifunc support for strcpy, - stpcpy{aligned, unaligned, lsx, lasx} - -According to glibc strcpy and stpcpy microbenchmark test results(changed -to use generic_strcpy and generic_stpcpy instead of strlen + memcpy), -comparing with the generic version, this implementation could reduce the -runtime as following: - -Name Percent of rutime reduced -strcpy-aligned 8%-45% -strcpy-unaligned 8%-48%, comparing with the aligned version, unaligned - version takes less instructions to copy the tail of data - which length is less than 8. it also has better performance - in case src and dest cannot be both aligned with 8bytes -strcpy-lsx 20%-80% -strcpy-lasx 15%-86% -stpcpy-aligned 6%-43% -stpcpy-unaligned 8%-48% -stpcpy-lsx 10%-80% -stpcpy-lasx 10%-87% ---- - sysdeps/loongarch/lp64/multiarch/Makefile | 8 + - .../lp64/multiarch/ifunc-impl-list.c | 18 ++ - .../loongarch/lp64/multiarch/stpcpy-aligned.S | 27 +++ - .../loongarch/lp64/multiarch/stpcpy-lasx.S | 22 ++ - sysdeps/loongarch/lp64/multiarch/stpcpy-lsx.S | 22 ++ - .../lp64/multiarch/stpcpy-unaligned.S | 22 ++ - sysdeps/loongarch/lp64/multiarch/stpcpy.c | 42 ++++ - .../loongarch/lp64/multiarch/strcpy-aligned.S | 202 ++++++++++++++++ - .../loongarch/lp64/multiarch/strcpy-lasx.S | 215 ++++++++++++++++++ - sysdeps/loongarch/lp64/multiarch/strcpy-lsx.S | 212 +++++++++++++++++ - .../lp64/multiarch/strcpy-unaligned.S | 138 +++++++++++ - sysdeps/loongarch/lp64/multiarch/strcpy.c | 35 +++ - 12 files changed, 963 insertions(+) - create mode 100644 sysdeps/loongarch/lp64/multiarch/stpcpy-aligned.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/stpcpy-lasx.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/stpcpy-lsx.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/stpcpy-unaligned.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/stpcpy.c - create mode 100644 sysdeps/loongarch/lp64/multiarch/strcpy-aligned.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/strcpy-lasx.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/strcpy-lsx.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/strcpy-unaligned.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/strcpy.c - -diff --git a/sysdeps/loongarch/lp64/multiarch/Makefile b/sysdeps/loongarch/lp64/multiarch/Makefile -index 360a6718c0..39550bea9b 100644 ---- a/sysdeps/loongarch/lp64/multiarch/Makefile -+++ b/sysdeps/loongarch/lp64/multiarch/Makefile -@@ -16,6 +16,14 @@ sysdep_routines += \ - strcmp-lsx \ - strncmp-aligned \ - strncmp-lsx \ -+ strcpy-aligned \ -+ strcpy-unaligned \ -+ strcpy-lsx \ -+ strcpy-lasx \ -+ stpcpy-aligned \ -+ stpcpy-unaligned \ -+ stpcpy-lsx \ -+ stpcpy-lasx \ - memcpy-aligned \ - memcpy-unaligned \ - memmove-unaligned \ -diff --git a/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c b/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -index e397d58c9d..39a14f1d6e 100644 ---- a/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -+++ b/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -@@ -76,6 +76,24 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array, - IFUNC_IMPL_ADD (array, i, strncmp, 1, __strncmp_aligned) - ) - -+ IFUNC_IMPL (i, name, strcpy, -+#if !defined __loongarch_soft_float -+ IFUNC_IMPL_ADD (array, i, strcpy, SUPPORT_LASX, __strcpy_lasx) -+ IFUNC_IMPL_ADD (array, i, strcpy, SUPPORT_LSX, __strcpy_lsx) -+#endif -+ IFUNC_IMPL_ADD (array, i, strcpy, SUPPORT_UAL, __strcpy_unaligned) -+ IFUNC_IMPL_ADD (array, i, strcpy, 1, __strcpy_aligned) -+ ) -+ -+ IFUNC_IMPL (i, name, stpcpy, -+#if !defined __loongarch_soft_float -+ IFUNC_IMPL_ADD (array, i, stpcpy, SUPPORT_LASX, __stpcpy_lasx) -+ IFUNC_IMPL_ADD (array, i, stpcpy, SUPPORT_LSX, __stpcpy_lsx) -+#endif -+ IFUNC_IMPL_ADD (array, i, stpcpy, SUPPORT_UAL, __stpcpy_unaligned) -+ IFUNC_IMPL_ADD (array, i, stpcpy, 1, __stpcpy_aligned) -+ ) -+ - IFUNC_IMPL (i, name, memcpy, - #if !defined __loongarch_soft_float - IFUNC_IMPL_ADD (array, i, memcpy, SUPPORT_LASX, __memcpy_lasx) -diff --git a/sysdeps/loongarch/lp64/multiarch/stpcpy-aligned.S b/sysdeps/loongarch/lp64/multiarch/stpcpy-aligned.S -new file mode 100644 -index 0000000000..1f763db685 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/stpcpy-aligned.S -@@ -0,0 +1,27 @@ -+/* stpcpy-aligned implementation is in strcpy-aligned.S. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#if IS_IN (libc) -+# define STPCPY __stpcpy_aligned -+#else -+# define STPCPY __stpcpy -+#endif -+ -+#define USE_AS_STPCPY -+#define STRCPY STPCPY -+#include "strcpy-aligned.S" -diff --git a/sysdeps/loongarch/lp64/multiarch/stpcpy-lasx.S b/sysdeps/loongarch/lp64/multiarch/stpcpy-lasx.S -new file mode 100644 -index 0000000000..13d6c9539b ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/stpcpy-lasx.S -@@ -0,0 +1,22 @@ -+/* stpcpy-lasx implementation is in strcpy-lasx.S. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#define STPCPY __stpcpy_lasx -+#define USE_AS_STPCPY -+#define STRCPY STPCPY -+#include "strcpy-lasx.S" -diff --git a/sysdeps/loongarch/lp64/multiarch/stpcpy-lsx.S b/sysdeps/loongarch/lp64/multiarch/stpcpy-lsx.S -new file mode 100644 -index 0000000000..e0f17ab589 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/stpcpy-lsx.S -@@ -0,0 +1,22 @@ -+/* stpcpy-lsx implementation is in strcpy-lsx.S. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#define STPCPY __stpcpy_lsx -+#define USE_AS_STPCPY -+#define STRCPY STPCPY -+#include "strcpy-lsx.S" -diff --git a/sysdeps/loongarch/lp64/multiarch/stpcpy-unaligned.S b/sysdeps/loongarch/lp64/multiarch/stpcpy-unaligned.S -new file mode 100644 -index 0000000000..cc2f971214 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/stpcpy-unaligned.S -@@ -0,0 +1,22 @@ -+/* stpcpy-unaligned implementation is in strcpy-unaligned.S. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#define STPCPY __stpcpy_unaligned -+#define USE_AS_STPCPY -+#define STRCPY STPCPY -+#include "strcpy-unaligned.S" -diff --git a/sysdeps/loongarch/lp64/multiarch/stpcpy.c b/sysdeps/loongarch/lp64/multiarch/stpcpy.c -new file mode 100644 -index 0000000000..d4860d7a47 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/stpcpy.c -@@ -0,0 +1,42 @@ -+/* Multiple versions of stpcpy. -+ All versions must be listed in ifunc-impl-list.c. -+ Copyright (C) 2017-2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+/* Define multiple versions only for the definition in libc. */ -+#if IS_IN (libc) -+# define stpcpy __redirect_stpcpy -+# define __stpcpy __redirect___stpcpy -+# define NO_MEMPCPY_STPCPY_REDIRECT -+# define __NO_STRING_INLINES -+# include -+# undef stpcpy -+# undef __stpcpy -+ -+# define SYMBOL_NAME stpcpy -+# include "ifunc-lasx.h" -+ -+libc_ifunc_redirected (__redirect_stpcpy, __stpcpy, IFUNC_SELECTOR ()); -+ -+weak_alias (__stpcpy, stpcpy) -+# ifdef SHARED -+__hidden_ver1 (__stpcpy, __GI___stpcpy, __redirect___stpcpy) -+ __attribute__ ((visibility ("hidden"))) __attribute_copy__ (stpcpy); -+__hidden_ver1 (stpcpy, __GI_stpcpy, __redirect_stpcpy) -+ __attribute__ ((visibility ("hidden"))) __attribute_copy__ (stpcpy); -+# endif -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/strcpy-aligned.S b/sysdeps/loongarch/lp64/multiarch/strcpy-aligned.S -new file mode 100644 -index 0000000000..4ed539fdb4 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/strcpy-aligned.S -@@ -0,0 +1,202 @@ -+/* Optimized strcpy stpcpy aligned implementation using basic LoongArch -+ instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) -+# ifndef STRCPY -+# define STRCPY __strcpy_aligned -+# endif -+#else -+# ifndef STRCPY -+# define STRCPY strcpy -+# endif -+#endif -+ -+LEAF(STRCPY, 6) -+ andi a3, a0, 0x7 -+ move a2, a0 -+ beqz a3, L(dest_align) -+ sub.d a5, a1, a3 -+ addi.d a5, a5, 8 -+ -+L(make_dest_align): -+ ld.b t0, a1, 0 -+ addi.d a1, a1, 1 -+ st.b t0, a2, 0 -+ addi.d a2, a2, 1 -+ beqz t0, L(al_out) -+ -+ bne a1, a5, L(make_dest_align) -+ -+L(dest_align): -+ andi a4, a1, 7 -+ bstrins.d a1, zero, 2, 0 -+ -+ lu12i.w t5, 0x1010 -+ ld.d t0, a1, 0 -+ ori t5, t5, 0x101 -+ bstrins.d t5, t5, 63, 32 -+ -+ slli.d t6, t5, 0x7 -+ bnez a4, L(unalign) -+ sub.d t1, t0, t5 -+ andn t2, t6, t0 -+ -+ and t3, t1, t2 -+ bnez t3, L(al_end) -+ -+L(al_loop): -+ st.d t0, a2, 0 -+ ld.d t0, a1, 8 -+ -+ addi.d a1, a1, 8 -+ addi.d a2, a2, 8 -+ sub.d t1, t0, t5 -+ andn t2, t6, t0 -+ -+ and t3, t1, t2 -+ beqz t3, L(al_loop) -+ -+L(al_end): -+ ctz.d t1, t3 -+ srli.d t1, t1, 3 -+ addi.d t1, t1, 1 -+ -+ andi a3, t1, 8 -+ andi a4, t1, 4 -+ andi a5, t1, 2 -+ andi a6, t1, 1 -+ -+L(al_end_8): -+ beqz a3, L(al_end_4) -+ st.d t0, a2, 0 -+#ifdef USE_AS_STPCPY -+ addi.d a0, a2, 7 -+#endif -+ jr ra -+L(al_end_4): -+ beqz a4, L(al_end_2) -+ st.w t0, a2, 0 -+ addi.d a2, a2, 4 -+ srli.d t0, t0, 32 -+L(al_end_2): -+ beqz a5, L(al_end_1) -+ st.h t0, a2, 0 -+ addi.d a2, a2, 2 -+ srli.d t0, t0, 16 -+L(al_end_1): -+ beqz a6, L(al_out) -+ st.b t0, a2, 0 -+ addi.d a2, a2, 1 -+L(al_out): -+#ifdef USE_AS_STPCPY -+ addi.d a0, a2, -1 -+#endif -+ jr ra -+ -+ .align 4 -+L(unalign): -+ slli.d a5, a4, 3 -+ li.d t1, -1 -+ sub.d a6, zero, a5 -+ -+ srl.d a7, t0, a5 -+ sll.d t7, t1, a6 -+ -+ or t0, a7, t7 -+ sub.d t1, t0, t5 -+ andn t2, t6, t0 -+ and t3, t1, t2 -+ -+ bnez t3, L(un_end) -+ -+ ld.d t4, a1, 8 -+ -+ sub.d t1, t4, t5 -+ andn t2, t6, t4 -+ sll.d t0, t4, a6 -+ and t3, t1, t2 -+ -+ or t0, t0, a7 -+ bnez t3, L(un_end_with_remaining) -+ -+L(un_loop): -+ srl.d a7, t4, a5 -+ -+ ld.d t4, a1, 16 -+ addi.d a1, a1, 8 -+ -+ st.d t0, a2, 0 -+ addi.d a2, a2, 8 -+ -+ sub.d t1, t4, t5 -+ andn t2, t6, t4 -+ sll.d t0, t4, a6 -+ and t3, t1, t2 -+ -+ or t0, t0, a7 -+ beqz t3, L(un_loop) -+ -+L(un_end_with_remaining): -+ ctz.d t1, t3 -+ srli.d t1, t1, 3 -+ addi.d t1, t1, 1 -+ sub.d t1, t1, a4 -+ -+ blt t1, zero, L(un_end_less_8) -+ st.d t0, a2, 0 -+ addi.d a2, a2, 8 -+ beqz t1, L(un_out) -+ srl.d t0, t4, a5 -+ b L(un_end_less_8) -+ -+L(un_end): -+ ctz.d t1, t3 -+ srli.d t1, t1, 3 -+ addi.d t1, t1, 1 -+ -+L(un_end_less_8): -+ andi a4, t1, 4 -+ andi a5, t1, 2 -+ andi a6, t1, 1 -+L(un_end_4): -+ beqz a4, L(un_end_2) -+ st.w t0, a2, 0 -+ addi.d a2, a2, 4 -+ srli.d t0, t0, 32 -+L(un_end_2): -+ beqz a5, L(un_end_1) -+ st.h t0, a2, 0 -+ addi.d a2, a2, 2 -+ srli.d t0, t0, 16 -+L(un_end_1): -+ beqz a6, L(un_out) -+ st.b t0, a2, 0 -+ addi.d a2, a2, 1 -+L(un_out): -+#ifdef USE_AS_STPCPY -+ addi.d a0, a2, -1 -+#endif -+ jr ra -+END(STRCPY) -+ -+libc_hidden_builtin_def (STRCPY) -diff --git a/sysdeps/loongarch/lp64/multiarch/strcpy-lasx.S b/sysdeps/loongarch/lp64/multiarch/strcpy-lasx.S -new file mode 100644 -index 0000000000..c282561253 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/strcpy-lasx.S -@@ -0,0 +1,215 @@ -+/* Optimized strcpy stpcpy implementation using LoongArch LASX instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) && !defined __loongarch_soft_float -+ -+# ifndef STRCPY -+# define STRCPY __strcpy_lasx -+# endif -+ -+# ifdef USE_AS_STPCPY -+# define dstend a0 -+# else -+# define dstend a4 -+# endif -+ -+LEAF(STRCPY, 6) -+ ori t8, zero, 0xfe0 -+ andi t0, a1, 0xfff -+ li.d t7, -1 -+ move a2, a0 -+ -+ bltu t8, t0, L(page_cross_start) -+L(start_entry): -+ xvld xr0, a1, 0 -+ li.d t0, 32 -+ andi t1, a2, 0x1f -+ -+ xvsetanyeqz.b fcc0, xr0 -+ sub.d t0, t0, t1 -+ bcnez fcc0, L(end) -+ add.d a1, a1, t0 -+ -+ xvst xr0, a2, 0 -+ andi a3, a1, 0x1f -+ add.d a2, a2, t0 -+ bnez a3, L(unaligned) -+ -+ -+ xvld xr0, a1, 0 -+ xvsetanyeqz.b fcc0, xr0 -+ bcnez fcc0, L(al_end) -+L(al_loop): -+ xvst xr0, a2, 0 -+ -+ xvld xr0, a1, 32 -+ addi.d a2, a2, 32 -+ addi.d a1, a1, 32 -+ xvsetanyeqz.b fcc0, xr0 -+ -+ bceqz fcc0, L(al_loop) -+L(al_end): -+ xvmsknz.b xr0, xr0 -+ xvpickve.w xr1, xr0, 4 -+ vilvl.h vr0, vr1, vr0 -+ -+ movfr2gr.s t0, fa0 -+ cto.w t0, t0 -+ add.d a1, a1, t0 -+ xvld xr0, a1, -31 -+ -+ -+ add.d dstend, a2, t0 -+ xvst xr0, dstend, -31 -+ jr ra -+ nop -+ -+L(page_cross_start): -+ move a4, a1 -+ bstrins.d a4, zero, 4, 0 -+ xvld xr0, a4, 0 -+ xvmsknz.b xr0, xr0 -+ -+ xvpickve.w xr1, xr0, 4 -+ vilvl.h vr0, vr1, vr0 -+ movfr2gr.s t0, fa0 -+ sra.w t0, t0, a1 -+ -+ beq t0, t7, L(start_entry) -+ b L(tail) -+L(unaligned): -+ andi t0, a1, 0xfff -+ bltu t8, t0, L(un_page_cross) -+ -+ -+L(un_start_entry): -+ xvld xr0, a1, 0 -+ xvsetanyeqz.b fcc0, xr0 -+ bcnez fcc0, L(un_end) -+ addi.d a1, a1, 32 -+ -+L(un_loop): -+ xvst xr0, a2, 0 -+ andi t0, a1, 0xfff -+ addi.d a2, a2, 32 -+ bltu t8, t0, L(page_cross_loop) -+ -+L(un_loop_entry): -+ xvld xr0, a1, 0 -+ addi.d a1, a1, 32 -+ xvsetanyeqz.b fcc0, xr0 -+ bceqz fcc0, L(un_loop) -+ -+ addi.d a1, a1, -32 -+L(un_end): -+ xvmsknz.b xr0, xr0 -+ xvpickve.w xr1, xr0, 4 -+ vilvl.h vr0, vr1, vr0 -+ -+ -+ movfr2gr.s t0, fa0 -+L(un_tail): -+ cto.w t0, t0 -+ add.d a1, a1, t0 -+ xvld xr0, a1, -31 -+ -+ add.d dstend, a2, t0 -+ xvst xr0, dstend, -31 -+ jr ra -+L(un_page_cross): -+ sub.d a4, a1, a3 -+ -+ xvld xr0, a4, 0 -+ xvmsknz.b xr0, xr0 -+ xvpickve.w xr1, xr0, 4 -+ vilvl.h vr0, vr1, vr0 -+ -+ movfr2gr.s t0, fa0 -+ sra.w t0, t0, a1 -+ beq t0, t7, L(un_start_entry) -+ b L(un_tail) -+ -+ -+L(page_cross_loop): -+ sub.d a4, a1, a3 -+ xvld xr0, a4, 0 -+ xvmsknz.b xr0, xr0 -+ xvpickve.w xr1, xr0, 4 -+ -+ vilvl.h vr0, vr1, vr0 -+ movfr2gr.s t0, fa0 -+ sra.w t0, t0, a1 -+ beq t0, t7, L(un_loop_entry) -+ -+ b L(un_tail) -+L(end): -+ xvmsknz.b xr0, xr0 -+ xvpickve.w xr1, xr0, 4 -+ vilvl.h vr0, vr1, vr0 -+ -+ movfr2gr.s t0, fa0 -+L(tail): -+ cto.w t0, t0 -+ add.d dstend, a2, t0 -+ add.d a5, a1, t0 -+ -+L(less_32): -+ srli.d t1, t0, 4 -+ beqz t1, L(less_16) -+ vld vr0, a1, 0 -+ vld vr1, a5, -15 -+ -+ vst vr0, a2, 0 -+ vst vr1, dstend, -15 -+ jr ra -+L(less_16): -+ srli.d t1, t0, 3 -+ -+ beqz t1, L(less_8) -+ ld.d t2, a1, 0 -+ ld.d t3, a5, -7 -+ st.d t2, a2, 0 -+ -+ st.d t3, dstend, -7 -+ jr ra -+L(less_8): -+ li.d t1, 3 -+ bltu t0, t1, L(less_3) -+ -+ ld.w t2, a1, 0 -+ ld.w t3, a5, -3 -+ st.w t2, a2, 0 -+ st.w t3, dstend, -3 -+ -+ jr ra -+L(less_3): -+ beqz t0, L(zero_byte) -+ ld.h t2, a1, 0 -+ -+ st.h t2, a2, 0 -+L(zero_byte): -+ st.b zero, dstend, 0 -+ jr ra -+END(STRCPY) -+ -+libc_hidden_builtin_def (STRCPY) -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/strcpy-lsx.S b/sysdeps/loongarch/lp64/multiarch/strcpy-lsx.S -new file mode 100644 -index 0000000000..fc2498f7db ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/strcpy-lsx.S -@@ -0,0 +1,212 @@ -+/* Optimized strcpy stpcpy implementation using LoongArch LSX instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) && !defined __loongarch_soft_float -+ -+# ifndef STRCPY -+# define STRCPY __strcpy_lsx -+# endif -+ -+LEAF(STRCPY, 6) -+ pcalau12i t0, %pc_hi20(L(INDEX)) -+ andi a4, a1, 0xf -+ vld vr1, t0, %pc_lo12(L(INDEX)) -+ move a2, a0 -+ -+ beqz a4, L(load_start) -+ xor t0, a1, a4 -+ vld vr0, t0, 0 -+ vreplgr2vr.b vr2, a4 -+ -+ vadd.b vr2, vr2, vr1 -+ vshuf.b vr0, vr2, vr0, vr2 -+ vsetanyeqz.b fcc0, vr0 -+ bcnez fcc0, L(end) -+ -+L(load_start): -+ vld vr0, a1, 0 -+ li.d t1, 16 -+ andi a3, a2, 0xf -+ vsetanyeqz.b fcc0, vr0 -+ -+ -+ sub.d t0, t1, a3 -+ bcnez fcc0, L(end) -+ add.d a1, a1, t0 -+ vst vr0, a2, 0 -+ -+ andi a3, a1, 0xf -+ add.d a2, a2, t0 -+ bnez a3, L(unaligned) -+ vld vr0, a1, 0 -+ -+ vsetanyeqz.b fcc0, vr0 -+ bcnez fcc0, L(al_end) -+L(al_loop): -+ vst vr0, a2, 0 -+ vld vr0, a1, 16 -+ -+ addi.d a2, a2, 16 -+ addi.d a1, a1, 16 -+ vsetanyeqz.b fcc0, vr0 -+ bceqz fcc0, L(al_loop) -+ -+ -+L(al_end): -+ vmsknz.b vr1, vr0 -+ movfr2gr.s t0, fa1 -+ cto.w t0, t0 -+ add.d a1, a1, t0 -+ -+ vld vr0, a1, -15 -+# ifdef USE_AS_STPCPY -+ add.d a0, a2, t0 -+ vst vr0, a0, -15 -+# else -+ add.d a2, a2, t0 -+ vst vr0, a2, -15 -+# endif -+ jr ra -+ -+L(end): -+ vmsknz.b vr1, vr0 -+ movfr2gr.s t0, fa1 -+ cto.w t0, t0 -+ addi.d t0, t0, 1 -+ -+L(end_16): -+ andi t1, t0, 16 -+ beqz t1, L(end_8) -+ vst vr0, a2, 0 -+# ifdef USE_AS_STPCPY -+ addi.d a0, a2, 15 -+# endif -+ jr ra -+ -+L(end_8): -+ andi t2, t0, 8 -+ andi t3, t0, 4 -+ andi t4, t0, 2 -+ andi t5, t0, 1 -+ -+ beqz t2, L(end_4) -+ vstelm.d vr0, a2, 0, 0 -+ addi.d a2, a2, 8 -+ vbsrl.v vr0, vr0, 8 -+ -+L(end_4): -+ beqz t3, L(end_2) -+ vstelm.w vr0, a2, 0, 0 -+ addi.d a2, a2, 4 -+ vbsrl.v vr0, vr0, 4 -+ -+L(end_2): -+ beqz t4, L(end_1) -+ vstelm.h vr0, a2, 0, 0 -+ addi.d a2, a2, 2 -+ vbsrl.v vr0, vr0, 2 -+ -+ -+L(end_1): -+ beqz t5, L(out) -+ vstelm.b vr0, a2, 0, 0 -+ addi.d a2, a2, 1 -+L(out): -+# ifdef USE_AS_STPCPY -+ addi.d a0, a2, -1 -+# endif -+ jr ra -+ -+ .align 4 -+L(unaligned): -+ bstrins.d a1, zero, 3, 0 -+ vld vr2, a1, 0 -+ vreplgr2vr.b vr3, a3 -+ vslt.b vr4, vr1, vr3 -+ -+ vor.v vr0, vr2, vr4 -+ vsetanyeqz.b fcc0, vr0 -+ bcnez fcc0, L(un_first_end) -+ vld vr0, a1, 16 -+ -+ vadd.b vr3, vr3, vr1 -+ vshuf.b vr4, vr0, vr2, vr3 -+ vsetanyeqz.b fcc0, vr0 -+ bcnez fcc0, L(un_end) -+ -+ -+ vor.v vr2, vr0, vr0 -+ addi.d a1, a1, 16 -+L(un_loop): -+ vld vr0, a1, 16 -+ vst vr4, a2, 0 -+ -+ addi.d a2, a2, 16 -+ vshuf.b vr4, vr0, vr2, vr3 -+ vsetanyeqz.b fcc0, vr0 -+ bcnez fcc0, L(un_end) -+ -+ vld vr2, a1, 32 -+ vst vr4, a2, 0 -+ addi.d a1, a1, 32 -+ addi.d a2, a2, 16 -+ -+ vshuf.b vr4, vr2, vr0, vr3 -+ vsetanyeqz.b fcc0, vr2 -+ bceqz fcc0, L(un_loop) -+ vor.v vr0, vr2, vr2 -+ -+ -+ addi.d a1, a1, -16 -+L(un_end): -+ vsetanyeqz.b fcc0, vr4 -+ bcnez fcc0, 1f -+ vst vr4, a2, 0 -+ -+1: -+ vmsknz.b vr1, vr0 -+ movfr2gr.s t0, fa1 -+ cto.w t0, t0 -+ add.d a1, a1, t0 -+ -+ vld vr0, a1, 1 -+ add.d a2, a2, t0 -+ sub.d a2, a2, a3 -+ vst vr0, a2, 1 -+# ifdef USE_AS_STPCPY -+ addi.d a0, a2, 16 -+# endif -+ jr ra -+L(un_first_end): -+ addi.d a2, a2, -16 -+ addi.d a1, a1, -16 -+ b 1b -+END(STRCPY) -+ -+ .section .rodata.cst16,"M",@progbits,16 -+ .align 4 -+L(INDEX): -+ .dword 0x0706050403020100 -+ .dword 0x0f0e0d0c0b0a0908 -+ -+libc_hidden_builtin_def (STRCPY) -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/strcpy-unaligned.S b/sysdeps/loongarch/lp64/multiarch/strcpy-unaligned.S -new file mode 100644 -index 0000000000..9e31883bb1 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/strcpy-unaligned.S -@@ -0,0 +1,138 @@ -+/* Optimized strcpy unaligned implementation using basic LoongArch -+ instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) -+ -+# ifndef STRCPY -+# define STRCPY __strcpy_unaligned -+# endif -+ -+# ifdef USE_AS_STPCPY -+# define dstend a0 -+# else -+# define dstend a4 -+# endif -+ -+LEAF(STRCPY, 6) -+ lu12i.w t5, 0x01010 -+ li.w t0, 0xff8 -+ ori t5, t5, 0x101 -+ andi t1, a1, 0xfff -+ -+ bstrins.d t5, t5, 63, 32 -+ move a2, a0 -+ slli.d t6, t5, 7 -+ bltu t0, t1, L(page_cross) -+ -+L(start_entry): -+ ld.d t0, a1, 0 -+ li.d t3, 8 -+ andi a3, a1, 0x7 -+ sub.d t1, t0, t5 -+ -+ andn t2, t6, t0 -+ sub.d t3, t3, a3 -+ and t1, t1, t2 -+ bnez t1, L(end) -+ -+ -+ add.d a1, a1, t3 -+ st.d t0, a2, 0 -+ add.d a2, a2, t3 -+ ld.d t0, a1, 0 -+ -+ sub.d t1, t0, t5 -+ andn t2, t6, t0 -+ and t1, t1, t2 -+ bnez t1, L(long_end) -+ -+L(loop): -+ st.d t0, a2, 0 -+ ld.d t0, a1, 8 -+ addi.d a2, a2, 8 -+ addi.d a1, a1, 8 -+ -+ sub.d t1, t0, t5 -+ andn t2, t6, t0 -+ and t1, t1, t2 -+ beqz t1, L(loop) -+ -+ -+L(long_end): -+ ctz.d t1, t1 -+ srli.d t1, t1, 3 -+ add.d a1, a1, t1 -+ ld.d t0, a1, -7 -+ -+ add.d dstend, a2, t1 -+ st.d t0, dstend, -7 -+ jr ra -+ nop -+ -+L(end): -+ ctz.d t1, t1 -+ srli.d t1, t1, 3 -+ add.d a3, a1, t1 -+ add.d dstend, a2, t1 -+ -+L(less_8): -+ li.d t0, 3 -+ bltu t1, t0, L(less_3) -+ ld.w t1, a1, 0 -+ ld.w t2, a3, -3 -+ -+ -+ st.w t1, a2, 0 -+ st.w t2, dstend, -3 -+ jr ra -+L(less_3): -+ beqz t1, L(zero_bytes) -+ -+ ld.h t1, a1, 0 -+ st.h t1, a2, 0 -+L(zero_bytes): -+ st.b zero, dstend, 0 -+ jr ra -+ -+L(page_cross): -+ move a4, a1 -+ bstrins.d a4, zero, 2, 0 -+ ld.d t0, a4, 0 -+ li.d t3, -1 -+ -+ slli.d t4, a1, 3 -+ srl.d t3, t3, t4 -+ srl.d t0, t0, t4 -+ orn t0, t0, t3 -+ -+ -+ sub.d t1, t0, t5 -+ andn t2, t6, t0 -+ and t1, t1, t2 -+ beqz t1, L(start_entry) -+ -+ b L(end) -+END(STRCPY) -+ -+libc_hidden_builtin_def (STRCPY) -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/strcpy.c b/sysdeps/loongarch/lp64/multiarch/strcpy.c -new file mode 100644 -index 0000000000..46afd068f9 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/strcpy.c -@@ -0,0 +1,35 @@ -+/* Multiple versions of strcpy. -+ All versions must be listed in ifunc-impl-list.c. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+/* Define multiple versions only for the definition in libc. */ -+#if IS_IN (libc) -+# define strcpy __redirect_strcpy -+# include -+# undef strcpy -+ -+# define SYMBOL_NAME strcpy -+# include "ifunc-lasx.h" -+ -+libc_ifunc_redirected (__redirect_strcpy, strcpy, IFUNC_SELECTOR ()); -+ -+# ifdef SHARED -+__hidden_ver1 (strcpy, __GI_strcpy, __redirect_strcpy) -+ __attribute__ ((visibility ("hidden"))) __attribute_copy__ (strcpy); -+# endif -+#endif --- -2.45.0 - diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0027-LoongArch-Add-ifunc-support-for-strrchr-aligned-lsx-.patch b/runtime-optenv32/glibc+32/autobuild/patches/0027-LoongArch-Add-ifunc-support-for-strrchr-aligned-lsx-.patch deleted file mode 100644 index 9a671628c5c..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0027-LoongArch-Add-ifunc-support-for-strrchr-aligned-lsx-.patch +++ /dev/null @@ -1,667 +0,0 @@ -From 4bc41c239fe838b399f0578487db0ddd76230aa8 Mon Sep 17 00:00:00 2001 -From: dengjianbo -Date: Wed, 13 Sep 2023 15:35:00 +0800 -Subject: [PATCH 27/32] LoongArch: Add ifunc support for strrchr{aligned, lsx, - lasx} - -According to glibc strrchr microbenchmark test results, this implementation -could reduce the runtime time as following: - -Name Percent of rutime reduced -strrchr-lasx 10%-50% -strrchr-lsx 0%-50% -strrchr-aligned 5%-50% - -Generic strrchr is implemented by function strlen + memrchr, the lasx version -will compare with generic strrchr implemented by strlen-lasx + memrchr-lasx, -the lsx version will compare with generic strrchr implemented by strlen-lsx + -memrchr-lsx, the aligned version will compare with generic strrchr implemented -by strlen-aligned + memrchr-generic. ---- - sysdeps/loongarch/lp64/multiarch/Makefile | 3 + - .../lp64/multiarch/ifunc-impl-list.c | 8 + - .../loongarch/lp64/multiarch/ifunc-strrchr.h | 41 ++++ - .../lp64/multiarch/strrchr-aligned.S | 170 +++++++++++++++++ - .../loongarch/lp64/multiarch/strrchr-lasx.S | 176 ++++++++++++++++++ - .../loongarch/lp64/multiarch/strrchr-lsx.S | 144 ++++++++++++++ - sysdeps/loongarch/lp64/multiarch/strrchr.c | 36 ++++ - 7 files changed, 578 insertions(+) - create mode 100644 sysdeps/loongarch/lp64/multiarch/ifunc-strrchr.h - create mode 100644 sysdeps/loongarch/lp64/multiarch/strrchr-aligned.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/strrchr-lasx.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/strrchr-lsx.S - create mode 100644 sysdeps/loongarch/lp64/multiarch/strrchr.c - -diff --git a/sysdeps/loongarch/lp64/multiarch/Makefile b/sysdeps/loongarch/lp64/multiarch/Makefile -index 39550bea9b..fe863e1ba4 100644 ---- a/sysdeps/loongarch/lp64/multiarch/Makefile -+++ b/sysdeps/loongarch/lp64/multiarch/Makefile -@@ -9,6 +9,9 @@ sysdep_routines += \ - strchr-aligned \ - strchr-lsx \ - strchr-lasx \ -+ strrchr-aligned \ -+ strrchr-lsx \ -+ strrchr-lasx \ - strchrnul-aligned \ - strchrnul-lsx \ - strchrnul-lasx \ -diff --git a/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c b/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -index 39a14f1d6e..529e236950 100644 ---- a/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -+++ b/sysdeps/loongarch/lp64/multiarch/ifunc-impl-list.c -@@ -94,6 +94,14 @@ __libc_ifunc_impl_list (const char *name, struct libc_ifunc_impl *array, - IFUNC_IMPL_ADD (array, i, stpcpy, 1, __stpcpy_aligned) - ) - -+ IFUNC_IMPL (i, name, strrchr, -+#if !defined __loongarch_soft_float -+ IFUNC_IMPL_ADD (array, i, strrchr, SUPPORT_LASX, __strrchr_lasx) -+ IFUNC_IMPL_ADD (array, i, strrchr, SUPPORT_LSX, __strrchr_lsx) -+#endif -+ IFUNC_IMPL_ADD (array, i, strrchr, 1, __strrchr_aligned) -+ ) -+ - IFUNC_IMPL (i, name, memcpy, - #if !defined __loongarch_soft_float - IFUNC_IMPL_ADD (array, i, memcpy, SUPPORT_LASX, __memcpy_lasx) -diff --git a/sysdeps/loongarch/lp64/multiarch/ifunc-strrchr.h b/sysdeps/loongarch/lp64/multiarch/ifunc-strrchr.h -new file mode 100644 -index 0000000000..bbb34089ef ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/ifunc-strrchr.h -@@ -0,0 +1,41 @@ -+/* Common definition for strrchr ifunc selections. -+ All versions must be listed in ifunc-impl-list.c. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+#include -+#include -+ -+#if !defined __loongarch_soft_float -+extern __typeof (REDIRECT_NAME) OPTIMIZE (lasx) attribute_hidden; -+extern __typeof (REDIRECT_NAME) OPTIMIZE (lsx) attribute_hidden; -+#endif -+ -+extern __typeof (REDIRECT_NAME) OPTIMIZE (aligned) attribute_hidden; -+ -+static inline void * -+IFUNC_SELECTOR (void) -+{ -+#if !defined __loongarch_soft_float -+ if (SUPPORT_LASX) -+ return OPTIMIZE (lasx); -+ else if (SUPPORT_LSX) -+ return OPTIMIZE (lsx); -+ else -+#endif -+ return OPTIMIZE (aligned); -+} -diff --git a/sysdeps/loongarch/lp64/multiarch/strrchr-aligned.S b/sysdeps/loongarch/lp64/multiarch/strrchr-aligned.S -new file mode 100644 -index 0000000000..a73deb7840 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/strrchr-aligned.S -@@ -0,0 +1,170 @@ -+/* Optimized strrchr implementation using basic LoongArch instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) -+# define STRRCHR __strrchr_aligned -+#else -+# define STRRCHR strrchr -+#endif -+ -+LEAF(STRRCHR, 6) -+ slli.d t0, a0, 3 -+ bstrins.d a0, zero, 2, 0 -+ lu12i.w a2, 0x01010 -+ ld.d t2, a0, 0 -+ -+ andi a1, a1, 0xff -+ ori a2, a2, 0x101 -+ li.d t3, -1 -+ bstrins.d a2, a2, 63, 32 -+ -+ sll.d t5, t3, t0 -+ slli.d a3, a2, 7 -+ orn t4, t2, t5 -+ mul.d a1, a1, a2 -+ -+ sub.d t0, t4, a2 -+ andn t1, a3, t4 -+ and t1, t0, t1 -+ beqz t1, L(find_tail) -+ -+ -+ ctz.d t0, t1 -+ orn t0, zero, t0 -+ xor t2, t4, a1 -+ srl.d t0, t3, t0 -+ -+ orn t2, t2, t0 -+ orn t2, t2, t5 -+ revb.d t2, t2 -+ sub.d t1, t2, a2 -+ -+ andn t0, a3, t2 -+ and t1, t0, t1 -+ ctz.d t0, t1 -+ srli.d t0, t0, 3 -+ -+ addi.d a0, a0, 7 -+ sub.d a0, a0, t0 -+ maskeqz a0, a0, t1 -+ jr ra -+ -+ -+L(find_tail): -+ addi.d a4, a0, 8 -+ addi.d a0, a0, 8 -+L(loop_ascii): -+ ld.d t2, a0, 0 -+ sub.d t1, t2, a2 -+ -+ and t0, t1, a3 -+ bnez t0, L(more_check) -+ ld.d t2, a0, 8 -+ sub.d t1, t2, a2 -+ -+ and t0, t1, a3 -+ addi.d a0, a0, 16 -+ beqz t0, L(loop_ascii) -+ addi.d a0, a0, -8 -+ -+L(more_check): -+ andn t0, a3, t2 -+ and t1, t1, t0 -+ bnez t1, L(tail) -+ addi.d a0, a0, 8 -+ -+ -+L(loop_nonascii): -+ ld.d t2, a0, 0 -+ sub.d t1, t2, a2 -+ andn t0, a3, t2 -+ and t1, t0, t1 -+ -+ bnez t1, L(tail) -+ ld.d t2, a0, 8 -+ addi.d a0, a0, 16 -+ sub.d t1, t2, a2 -+ -+ andn t0, a3, t2 -+ and t1, t0, t1 -+ beqz t1, L(loop_nonascii) -+ addi.d a0, a0, -8 -+ -+L(tail): -+ ctz.d t0, t1 -+ orn t0, zero, t0 -+ xor t2, t2, a1 -+ srl.d t0, t3, t0 -+ -+ -+ orn t2, t2, t0 -+ revb.d t2, t2 -+ sub.d t1, t2, a2 -+ andn t0, a3, t2 -+ -+ and t1, t0, t1 -+ bnez t1, L(count_pos) -+L(find_loop): -+ beq a0, a4, L(find_end) -+ ld.d t2, a0, -8 -+ -+ addi.d a0, a0, -8 -+ xor t2, t2, a1 -+ sub.d t1, t2, a2 -+ andn t0, a3, t2 -+ -+ and t1, t0, t1 -+ beqz t1, L(find_loop) -+ revb.d t2, t2 -+ sub.d t1, t2, a2 -+ -+ -+ andn t0, a3, t2 -+ and t1, t0, t1 -+L(count_pos): -+ ctz.d t0, t1 -+ addi.d a0, a0, 7 -+ -+ srli.d t0, t0, 3 -+ sub.d a0, a0, t0 -+ jr ra -+ nop -+ -+L(find_end): -+ xor t2, t4, a1 -+ orn t2, t2, t5 -+ revb.d t2, t2 -+ sub.d t1, t2, a2 -+ -+ -+ andn t0, a3, t2 -+ and t1, t0, t1 -+ ctz.d t0, t1 -+ srli.d t0, t0, 3 -+ -+ addi.d a0, a4, -1 -+ sub.d a0, a0, t0 -+ maskeqz a0, a0, t1 -+ jr ra -+END(STRRCHR) -+ -+libc_hidden_builtin_def(STRRCHR) -diff --git a/sysdeps/loongarch/lp64/multiarch/strrchr-lasx.S b/sysdeps/loongarch/lp64/multiarch/strrchr-lasx.S -new file mode 100644 -index 0000000000..5a6e22979a ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/strrchr-lasx.S -@@ -0,0 +1,176 @@ -+/* Optimized strrchr implementation using LoongArch LASX instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) && !defined __loongarch_soft_float -+ -+#define STRRCHR __strrchr_lasx -+ -+LEAF(STRRCHR, 6) -+ move a2, a0 -+ bstrins.d a0, zero, 5, 0 -+ xvld xr0, a0, 0 -+ xvld xr1, a0, 32 -+ -+ li.d t2, -1 -+ xvreplgr2vr.b xr4, a1 -+ xvmsknz.b xr2, xr0 -+ xvmsknz.b xr3, xr1 -+ -+ xvpickve.w xr5, xr2, 4 -+ xvpickve.w xr6, xr3, 4 -+ vilvl.h vr2, vr5, vr2 -+ vilvl.h vr3, vr6, vr3 -+ -+ vilvl.w vr2, vr3, vr2 -+ movfr2gr.d t0, fa2 -+ sra.d t0, t0, a2 -+ beq t0, t2, L(find_tail) -+ -+ -+ xvseq.b xr2, xr0, xr4 -+ xvseq.b xr3, xr1, xr4 -+ xvmsknz.b xr2, xr2 -+ xvmsknz.b xr3, xr3 -+ -+ xvpickve.w xr4, xr2, 4 -+ xvpickve.w xr5, xr3, 4 -+ vilvl.h vr2, vr4, vr2 -+ vilvl.h vr3, vr5, vr3 -+ -+ vilvl.w vr1, vr3, vr2 -+ slli.d t3, t2, 1 -+ movfr2gr.d t1, fa1 -+ cto.d t0, t0 -+ -+ srl.d t1, t1, a2 -+ sll.d t3, t3, t0 -+ addi.d a0, a2, 63 -+ andn t1, t1, t3 -+ -+ -+ clz.d t0, t1 -+ sub.d a0, a0, t0 -+ maskeqz a0, a0, t1 -+ jr ra -+ -+ .align 5 -+L(find_tail): -+ addi.d a3, a0, 64 -+L(loop): -+ xvld xr2, a0, 64 -+ xvld xr3, a0, 96 -+ addi.d a0, a0, 64 -+ -+ xvmin.bu xr5, xr2, xr3 -+ xvsetanyeqz.b fcc0, xr5 -+ bceqz fcc0, L(loop) -+ xvmsknz.b xr5, xr2 -+ -+ -+ xvmsknz.b xr6, xr3 -+ xvpickve.w xr7, xr5, 4 -+ xvpickve.w xr8, xr6, 4 -+ vilvl.h vr5, vr7, vr5 -+ -+ vilvl.h vr6, vr8, vr6 -+ xvseq.b xr2, xr2, xr4 -+ xvseq.b xr3, xr3, xr4 -+ xvmsknz.b xr2, xr2 -+ -+ xvmsknz.b xr3, xr3 -+ xvpickve.w xr7, xr2, 4 -+ xvpickve.w xr8, xr3, 4 -+ vilvl.h vr2, vr7, vr2 -+ -+ vilvl.h vr3, vr8, vr3 -+ vilvl.w vr5, vr6, vr5 -+ vilvl.w vr2, vr3, vr2 -+ movfr2gr.d t0, fa5 -+ -+ -+ movfr2gr.d t1, fa2 -+ slli.d t3, t2, 1 -+ cto.d t0, t0 -+ sll.d t3, t3, t0 -+ -+ andn t1, t1, t3 -+ beqz t1, L(find_loop) -+ clz.d t0, t1 -+ addi.d a0, a0, 63 -+ -+ sub.d a0, a0, t0 -+ jr ra -+L(find_loop): -+ beq a0, a3, L(find_end) -+ xvld xr2, a0, -64 -+ -+ xvld xr3, a0, -32 -+ addi.d a0, a0, -64 -+ xvseq.b xr2, xr2, xr4 -+ xvseq.b xr3, xr3, xr4 -+ -+ -+ xvmax.bu xr5, xr2, xr3 -+ xvseteqz.v fcc0, xr5 -+ bcnez fcc0, L(find_loop) -+ xvmsknz.b xr0, xr2 -+ -+ xvmsknz.b xr1, xr3 -+ xvpickve.w xr2, xr0, 4 -+ xvpickve.w xr3, xr1, 4 -+ vilvl.h vr0, vr2, vr0 -+ -+ vilvl.h vr1, vr3, vr1 -+ vilvl.w vr0, vr1, vr0 -+ movfr2gr.d t0, fa0 -+ addi.d a0, a0, 63 -+ -+ clz.d t0, t0 -+ sub.d a0, a0, t0 -+ jr ra -+ nop -+ -+ -+L(find_end): -+ xvseq.b xr2, xr0, xr4 -+ xvseq.b xr3, xr1, xr4 -+ xvmsknz.b xr2, xr2 -+ xvmsknz.b xr3, xr3 -+ -+ xvpickve.w xr4, xr2, 4 -+ xvpickve.w xr5, xr3, 4 -+ vilvl.h vr2, vr4, vr2 -+ vilvl.h vr3, vr5, vr3 -+ -+ vilvl.w vr1, vr3, vr2 -+ movfr2gr.d t1, fa1 -+ addi.d a0, a2, 63 -+ srl.d t1, t1, a2 -+ -+ clz.d t0, t1 -+ sub.d a0, a0, t0 -+ maskeqz a0, a0, t1 -+ jr ra -+END(STRRCHR) -+ -+libc_hidden_builtin_def(STRRCHR) -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/strrchr-lsx.S b/sysdeps/loongarch/lp64/multiarch/strrchr-lsx.S -new file mode 100644 -index 0000000000..8f2fd22e50 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/strrchr-lsx.S -@@ -0,0 +1,144 @@ -+/* Optimized strrchr implementation using LoongArch LSX instructions. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library. If not, see -+ . */ -+ -+#include -+#include -+#include -+ -+#if IS_IN (libc) && !defined __loongarch_soft_float -+ -+#define STRRCHR __strrchr_lsx -+ -+LEAF(STRRCHR, 6) -+ move a2, a0 -+ bstrins.d a0, zero, 4, 0 -+ vld vr0, a0, 0 -+ vld vr1, a0, 16 -+ -+ li.d t2, -1 -+ vreplgr2vr.b vr4, a1 -+ vmsknz.b vr2, vr0 -+ vmsknz.b vr3, vr1 -+ -+ vilvl.h vr2, vr3, vr2 -+ movfr2gr.s t0, fa2 -+ sra.w t0, t0, a2 -+ beq t0, t2, L(find_tail) -+ -+ vseq.b vr2, vr0, vr4 -+ vseq.b vr3, vr1, vr4 -+ vmsknz.b vr2, vr2 -+ vmsknz.b vr3, vr3 -+ -+ -+ vilvl.h vr1, vr3, vr2 -+ slli.d t3, t2, 1 -+ movfr2gr.s t1, fa1 -+ cto.w t0, t0 -+ -+ srl.w t1, t1, a2 -+ sll.d t3, t3, t0 -+ addi.d a0, a2, 31 -+ andn t1, t1, t3 -+ -+ clz.w t0, t1 -+ sub.d a0, a0, t0 -+ maskeqz a0, a0, t1 -+ jr ra -+ -+ .align 5 -+L(find_tail): -+ addi.d a3, a0, 32 -+L(loop): -+ vld vr2, a0, 32 -+ vld vr3, a0, 48 -+ addi.d a0, a0, 32 -+ -+ vmin.bu vr5, vr2, vr3 -+ vsetanyeqz.b fcc0, vr5 -+ bceqz fcc0, L(loop) -+ vmsknz.b vr5, vr2 -+ -+ vmsknz.b vr6, vr3 -+ vilvl.h vr5, vr6, vr5 -+ vseq.b vr2, vr2, vr4 -+ vseq.b vr3, vr3, vr4 -+ -+ vmsknz.b vr2, vr2 -+ vmsknz.b vr3, vr3 -+ vilvl.h vr2, vr3, vr2 -+ movfr2gr.s t0, fa5 -+ -+ -+ movfr2gr.s t1, fa2 -+ slli.d t3, t2, 1 -+ cto.w t0, t0 -+ sll.d t3, t3, t0 -+ -+ andn t1, t1, t3 -+ beqz t1, L(find_loop) -+ clz.w t0, t1 -+ addi.d a0, a0, 31 -+ -+ sub.d a0, a0, t0 -+ jr ra -+L(find_loop): -+ beq a0, a3, L(find_end) -+ vld vr2, a0, -32 -+ -+ vld vr3, a0, -16 -+ addi.d a0, a0, -32 -+ vseq.b vr2, vr2, vr4 -+ vseq.b vr3, vr3, vr4 -+ -+ -+ vmax.bu vr5, vr2, vr3 -+ vseteqz.v fcc0, vr5 -+ bcnez fcc0, L(find_loop) -+ vmsknz.b vr0, vr2 -+ -+ vmsknz.b vr1, vr3 -+ vilvl.h vr0, vr1, vr0 -+ movfr2gr.s t0, fa0 -+ addi.d a0, a0, 31 -+ -+ clz.w t0, t0 -+ sub.d a0, a0, t0 -+ jr ra -+ nop -+ -+L(find_end): -+ vseq.b vr2, vr0, vr4 -+ vseq.b vr3, vr1, vr4 -+ vmsknz.b vr2, vr2 -+ vmsknz.b vr3, vr3 -+ -+ -+ vilvl.h vr1, vr3, vr2 -+ movfr2gr.s t1, fa1 -+ addi.d a0, a2, 31 -+ srl.w t1, t1, a2 -+ -+ clz.w t0, t1 -+ sub.d a0, a0, t0 -+ maskeqz a0, a0, t1 -+ jr ra -+END(STRRCHR) -+ -+libc_hidden_builtin_def(STRRCHR) -+#endif -diff --git a/sysdeps/loongarch/lp64/multiarch/strrchr.c b/sysdeps/loongarch/lp64/multiarch/strrchr.c -new file mode 100644 -index 0000000000..d9c9f660a0 ---- /dev/null -+++ b/sysdeps/loongarch/lp64/multiarch/strrchr.c -@@ -0,0 +1,36 @@ -+/* Multiple versions of strrchr. -+ All versions must be listed in ifunc-impl-list.c. -+ Copyright (C) 2023 Free Software Foundation, Inc. -+ This file is part of the GNU C Library. -+ -+ The GNU C Library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Lesser General Public -+ License as published by the Free Software Foundation; either -+ version 2.1 of the License, or (at your option) any later version. -+ -+ The GNU C Library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Lesser General Public License for more details. -+ -+ You should have received a copy of the GNU Lesser General Public -+ License along with the GNU C Library; if not, see -+ . */ -+ -+/* Define multiple versions only for the definition in libc. */ -+#if IS_IN (libc) -+# define strrchr __redirect_strrchr -+# include -+# undef strrchr -+ -+# define SYMBOL_NAME strrchr -+# include "ifunc-strrchr.h" -+ -+libc_ifunc_redirected (__redirect_strrchr, strrchr, IFUNC_SELECTOR ()); -+weak_alias (strrchr, rindex) -+# ifdef SHARED -+__hidden_ver1 (strrchr, __GI_strrchr, __redirect_strrchr) -+ __attribute__ ((visibility ("hidden"))) __attribute_copy__ (strrchr); -+# endif -+ -+#endif --- -2.45.0 - diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0028-LoongArch-Change-to-put-magic-number-to-.rodata-sect.patch b/runtime-optenv32/glibc+32/autobuild/patches/0028-LoongArch-Change-to-put-magic-number-to-.rodata-sect.patch deleted file mode 100644 index 6908e391670..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0028-LoongArch-Change-to-put-magic-number-to-.rodata-sect.patch +++ /dev/null @@ -1,64 +0,0 @@ -From 7235248b27b4e16c5251638acfd3e2e2faeac751 Mon Sep 17 00:00:00 2001 -From: dengjianbo -Date: Wed, 13 Sep 2023 15:35:01 +0800 -Subject: [PATCH 28/32] LoongArch: Change to put magic number to .rodata - section - -Change to put magic number to .rodata section in memmove-lsx, and use -pcalau12i and %pc_lo12 with vld to get the data. ---- - .../loongarch/lp64/multiarch/memmove-lsx.S | 20 +++++++++---------- - 1 file changed, 10 insertions(+), 10 deletions(-) - -diff --git a/sysdeps/loongarch/lp64/multiarch/memmove-lsx.S b/sysdeps/loongarch/lp64/multiarch/memmove-lsx.S -index 8a9367708d..5eb819ef74 100644 ---- a/sysdeps/loongarch/lp64/multiarch/memmove-lsx.S -+++ b/sysdeps/loongarch/lp64/multiarch/memmove-lsx.S -@@ -209,13 +209,10 @@ L(al_less_16): - nop - - --L(magic_num): -- .dword 0x0706050403020100 -- .dword 0x0f0e0d0c0b0a0908 - L(unaligned): -- pcaddi t2, -4 -+ pcalau12i t2, %pc_hi20(L(INDEX)) - bstrins.d a1, zero, 3, 0 -- vld vr8, t2, 0 -+ vld vr8, t2, %pc_lo12(L(INDEX)) - vld vr0, a1, 0 - - vld vr1, a1, 16 -@@ -413,13 +410,10 @@ L(back_al_less_16): - vst vr1, a0, 0 - jr ra - --L(magic_num_2): -- .dword 0x0706050403020100 -- .dword 0x0f0e0d0c0b0a0908 - L(back_unaligned): -- pcaddi t2, -4 -+ pcalau12i t2, %pc_hi20(L(INDEX)) - bstrins.d a4, zero, 3, 0 -- vld vr8, t2, 0 -+ vld vr8, t2, %pc_lo12(L(INDEX)) - vld vr0, a4, 0 - - vld vr1, a4, -16 -@@ -529,6 +523,12 @@ L(back_un_less_16): - jr ra - END(MEMMOVE_NAME) - -+ .section .rodata.cst16,"M",@progbits,16 -+ .align 4 -+L(INDEX): -+ .dword 0x0706050403020100 -+ .dword 0x0f0e0d0c0b0a0908 -+ - libc_hidden_builtin_def (MEMCPY_NAME) - libc_hidden_builtin_def (MEMMOVE_NAME) - #endif --- -2.45.0 - diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0029-CVE-2024-33599-nscd-Stack-based-buffer-overflow-in-n.patch b/runtime-optenv32/glibc+32/autobuild/patches/0029-CVE-2024-33599-nscd-Stack-based-buffer-overflow-in-n.patch deleted file mode 100644 index 115adce6743..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0029-CVE-2024-33599-nscd-Stack-based-buffer-overflow-in-n.patch +++ /dev/null @@ -1,38 +0,0 @@ -From f79875cfcad1e3abde3dc4d04769f85b46f214a1 Mon Sep 17 00:00:00 2001 -From: Florian Weimer -Date: Thu, 25 Apr 2024 15:00:45 +0200 -Subject: [PATCH 29/32] CVE-2024-33599: nscd: Stack-based buffer overflow in - netgroup cache (bug 31677) - -Using alloca matches what other caches do. The request length is -bounded by MAXKEYLEN. - -Reviewed-by: Carlos O'Donell -(cherry picked from commit 87801a8fd06db1d654eea3e4f7626ff476a9bdaa) ---- - nscd/netgroupcache.c | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/nscd/netgroupcache.c b/nscd/netgroupcache.c -index 06b7d7b6ca..31b721bbee 100644 ---- a/nscd/netgroupcache.c -+++ b/nscd/netgroupcache.c -@@ -502,12 +502,13 @@ addinnetgrX (struct database_dyn *db, int fd, request_header *req, - = (struct indataset *) mempool_alloc (db, - sizeof (*dataset) + req->key_len, - 1); -- struct indataset dataset_mem; - bool cacheable = true; - if (__glibc_unlikely (dataset == NULL)) - { - cacheable = false; -- dataset = &dataset_mem; -+ /* The alloca is safe because nscd_run_worker verfies that -+ key_len is not larger than MAXKEYLEN. */ -+ dataset = alloca (sizeof (*dataset) + req->key_len); - } - - datahead_init_pos (&dataset->head, sizeof (*dataset) + req->key_len, --- -2.45.0 - diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0030-CVE-2024-33600-nscd-Do-not-send-missing-not-found-re.patch b/runtime-optenv32/glibc+32/autobuild/patches/0030-CVE-2024-33600-nscd-Do-not-send-missing-not-found-re.patch deleted file mode 100644 index 4ce0d917ebe..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0030-CVE-2024-33600-nscd-Do-not-send-missing-not-found-re.patch +++ /dev/null @@ -1,59 +0,0 @@ -From 46f330369dd891e1f76dbc540c5181de2ca2e31d Mon Sep 17 00:00:00 2001 -From: Florian Weimer -Date: Thu, 25 Apr 2024 15:01:07 +0200 -Subject: [PATCH 30/32] CVE-2024-33600: nscd: Do not send missing not-found - response in addgetnetgrentX (bug 31678) - -If we failed to add a not-found response to the cache, the dataset -point can be null, resulting in a null pointer dereference. - -Reviewed-by: Siddhesh Poyarekar -(cherry picked from commit 7835b00dbce53c3c87bbbb1754a95fb5e58187aa) ---- - nscd/netgroupcache.c | 14 ++++++-------- - 1 file changed, 6 insertions(+), 8 deletions(-) - -diff --git a/nscd/netgroupcache.c b/nscd/netgroupcache.c -index 31b721bbee..32c6aef370 100644 ---- a/nscd/netgroupcache.c -+++ b/nscd/netgroupcache.c -@@ -147,7 +147,7 @@ addgetnetgrentX (struct database_dyn *db, int fd, request_header *req, - /* No such service. */ - cacheable = do_notfound (db, fd, req, key, &dataset, &total, &timeout, - &key_copy); -- goto writeout; -+ goto maybe_cache_add; - } - - memset (&data, '\0', sizeof (data)); -@@ -348,7 +348,7 @@ addgetnetgrentX (struct database_dyn *db, int fd, request_header *req, - { - cacheable = do_notfound (db, fd, req, key, &dataset, &total, &timeout, - &key_copy); -- goto writeout; -+ goto maybe_cache_add; - } - - total = buffilled; -@@ -410,14 +410,12 @@ addgetnetgrentX (struct database_dyn *db, int fd, request_header *req, - } - - if (he == NULL && fd != -1) -- { -- /* We write the dataset before inserting it to the database -- since while inserting this thread might block and so would -- unnecessarily let the receiver wait. */ -- writeout: -+ /* We write the dataset before inserting it to the database since -+ while inserting this thread might block and so would -+ unnecessarily let the receiver wait. */ - writeall (fd, &dataset->resp, dataset->head.recsize); -- } - -+ maybe_cache_add: - if (cacheable) - { - /* If necessary, we also propagate the data to disk. */ --- -2.45.0 - diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0031-CVE-2024-33600-nscd-Avoid-null-pointer-crashes-after.patch b/runtime-optenv32/glibc+32/autobuild/patches/0031-CVE-2024-33600-nscd-Avoid-null-pointer-crashes-after.patch deleted file mode 100644 index 661f82be5a0..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0031-CVE-2024-33600-nscd-Avoid-null-pointer-crashes-after.patch +++ /dev/null @@ -1,60 +0,0 @@ -From 6fb4b5077feac286447fb4ef95a59ed56303d1a8 Mon Sep 17 00:00:00 2001 -From: Florian Weimer -Date: Thu, 25 Apr 2024 15:01:07 +0200 -Subject: [PATCH 31/32] CVE-2024-33600: nscd: Avoid null pointer crashes after - notfound response (bug 31678) - -The addgetnetgrentX call in addinnetgrX may have failed to produce -a result, so the result variable in addinnetgrX can be NULL. -Use db->negtimeout as the fallback value if there is no result data; -the timeout is also overwritten below. - -Also avoid sending a second not-found response. (The client -disconnects after receiving the first response, so the data stream did -not go out of sync even without this fix.) It is still beneficial to -add the negative response to the mapping, so that the client can get -it from there in the future, instead of going through the socket. - -Reviewed-by: Siddhesh Poyarekar -(cherry picked from commit b048a482f088e53144d26a61c390bed0210f49f2) ---- - nscd/netgroupcache.c | 11 +++++++---- - 1 file changed, 7 insertions(+), 4 deletions(-) - -diff --git a/nscd/netgroupcache.c b/nscd/netgroupcache.c -index 32c6aef370..c3cd79dec5 100644 ---- a/nscd/netgroupcache.c -+++ b/nscd/netgroupcache.c -@@ -511,14 +511,15 @@ addinnetgrX (struct database_dyn *db, int fd, request_header *req, - - datahead_init_pos (&dataset->head, sizeof (*dataset) + req->key_len, - sizeof (innetgroup_response_header), -- he == NULL ? 0 : dh->nreloads + 1, result->head.ttl); -+ he == NULL ? 0 : dh->nreloads + 1, -+ result == NULL ? db->negtimeout : result->head.ttl); - /* Set the notfound status and timeout based on the result from - getnetgrent. */ -- dataset->head.notfound = result->head.notfound; -+ dataset->head.notfound = result == NULL || result->head.notfound; - dataset->head.timeout = timeout; - - dataset->resp.version = NSCD_VERSION; -- dataset->resp.found = result->resp.found; -+ dataset->resp.found = result != NULL && result->resp.found; - /* Until we find a matching entry the result is 0. */ - dataset->resp.result = 0; - -@@ -566,7 +567,9 @@ addinnetgrX (struct database_dyn *db, int fd, request_header *req, - goto out; - } - -- if (he == NULL) -+ /* addgetnetgrentX may have already sent a notfound response. Do -+ not send another one. */ -+ if (he == NULL && dataset->resp.found) - { - /* We write the dataset before inserting it to the database - since while inserting this thread might block and so would --- -2.45.0 - diff --git a/runtime-optenv32/glibc+32/autobuild/patches/0032-CVE-2024-33601-CVE-2024-33602-nscd-netgroup-Use-two-.patch b/runtime-optenv32/glibc+32/autobuild/patches/0032-CVE-2024-33601-CVE-2024-33602-nscd-netgroup-Use-two-.patch deleted file mode 100644 index 8e4da4951a5..00000000000 --- a/runtime-optenv32/glibc+32/autobuild/patches/0032-CVE-2024-33601-CVE-2024-33602-nscd-netgroup-Use-two-.patch +++ /dev/null @@ -1,390 +0,0 @@ -From edacd6907a3ee2cf5a1b50729930d07d815a4392 Mon Sep 17 00:00:00 2001 -From: Florian Weimer -Date: Thu, 25 Apr 2024 15:01:07 +0200 -Subject: [PATCH 32/32] CVE-2024-33601, CVE-2024-33602: nscd: netgroup: Use two - buffers in addgetnetgrentX (bug 31680) - -This avoids potential memory corruption when the underlying NSS -callback function does not use the buffer space to store all strings -(e.g., for constant strings). - -Instead of custom buffer management, two scratch buffers are used. -This increases stack usage somewhat. - -Scratch buffer allocation failure is handled by return -1 -(an invalid timeout value) instead of terminating the process. -This fixes bug 31679. - -Reviewed-by: Siddhesh Poyarekar -(cherry picked from commit c04a21e050d64a1193a6daab872bca2528bda44b) ---- - nscd/netgroupcache.c | 219 ++++++++++++++++++++++++------------------- - 1 file changed, 121 insertions(+), 98 deletions(-) - -diff --git a/nscd/netgroupcache.c b/nscd/netgroupcache.c -index c3cd79dec5..cc4e270c1f 100644 ---- a/nscd/netgroupcache.c -+++ b/nscd/netgroupcache.c -@@ -23,6 +23,7 @@ - #include - #include - #include -+#include - - #include "../inet/netgroup.h" - #include "nscd.h" -@@ -65,6 +66,16 @@ struct dataset - char strdata[0]; - }; - -+/* Send a notfound response to FD. Always returns -1 to indicate an -+ ephemeral error. */ -+static time_t -+send_notfound (int fd) -+{ -+ if (fd != -1) -+ TEMP_FAILURE_RETRY (send (fd, ¬found, sizeof (notfound), MSG_NOSIGNAL)); -+ return -1; -+} -+ - /* Sends a notfound message and prepares a notfound dataset to write to the - cache. Returns true if there was enough memory to allocate the dataset and - returns the dataset in DATASETP, total bytes to write in TOTALP and the -@@ -83,8 +94,7 @@ do_notfound (struct database_dyn *db, int fd, request_header *req, - total = sizeof (notfound); - timeout = time (NULL) + db->negtimeout; - -- if (fd != -1) -- TEMP_FAILURE_RETRY (send (fd, ¬found, total, MSG_NOSIGNAL)); -+ send_notfound (fd); - - dataset = mempool_alloc (db, sizeof (struct dataset) + req->key_len, 1); - /* If we cannot permanently store the result, so be it. */ -@@ -109,11 +119,78 @@ do_notfound (struct database_dyn *db, int fd, request_header *req, - return cacheable; - } - -+struct addgetnetgrentX_scratch -+{ -+ /* This is the result that the caller should use. It can be NULL, -+ point into buffer, or it can be in the cache. */ -+ struct dataset *dataset; -+ -+ struct scratch_buffer buffer; -+ -+ /* Used internally in addgetnetgrentX as a staging area. */ -+ struct scratch_buffer tmp; -+ -+ /* Number of bytes in buffer that are actually used. */ -+ size_t buffer_used; -+}; -+ -+static void -+addgetnetgrentX_scratch_init (struct addgetnetgrentX_scratch *scratch) -+{ -+ scratch->dataset = NULL; -+ scratch_buffer_init (&scratch->buffer); -+ scratch_buffer_init (&scratch->tmp); -+ -+ /* Reserve space for the header. */ -+ scratch->buffer_used = sizeof (struct dataset); -+ static_assert (sizeof (struct dataset) < sizeof (scratch->tmp.__space), -+ "initial buffer space"); -+ memset (scratch->tmp.data, 0, sizeof (struct dataset)); -+} -+ -+static void -+addgetnetgrentX_scratch_free (struct addgetnetgrentX_scratch *scratch) -+{ -+ scratch_buffer_free (&scratch->buffer); -+ scratch_buffer_free (&scratch->tmp); -+} -+ -+/* Copy LENGTH bytes from S into SCRATCH. Returns NULL if SCRATCH -+ could not be resized, otherwise a pointer to the copy. */ -+static char * -+addgetnetgrentX_append_n (struct addgetnetgrentX_scratch *scratch, -+ const char *s, size_t length) -+{ -+ while (true) -+ { -+ size_t remaining = scratch->buffer.length - scratch->buffer_used; -+ if (remaining >= length) -+ break; -+ if (!scratch_buffer_grow_preserve (&scratch->buffer)) -+ return NULL; -+ } -+ char *copy = scratch->buffer.data + scratch->buffer_used; -+ memcpy (copy, s, length); -+ scratch->buffer_used += length; -+ return copy; -+} -+ -+/* Copy S into SCRATCH, including its null terminator. Returns false -+ if SCRATCH could not be resized. */ -+static bool -+addgetnetgrentX_append (struct addgetnetgrentX_scratch *scratch, const char *s) -+{ -+ if (s == NULL) -+ s = ""; -+ return addgetnetgrentX_append_n (scratch, s, strlen (s) + 1) != NULL; -+} -+ -+/* Caller must initialize and free *SCRATCH. If the return value is -+ negative, this function has sent a notfound response. */ - static time_t - addgetnetgrentX (struct database_dyn *db, int fd, request_header *req, - const char *key, uid_t uid, struct hashentry *he, -- struct datahead *dh, struct dataset **resultp, -- void **tofreep) -+ struct datahead *dh, struct addgetnetgrentX_scratch *scratch) - { - if (__glibc_unlikely (debug_level > 0)) - { -@@ -132,14 +209,10 @@ addgetnetgrentX (struct database_dyn *db, int fd, request_header *req, - - char *key_copy = NULL; - struct __netgrent data; -- size_t buflen = MAX (1024, sizeof (*dataset) + req->key_len); -- size_t buffilled = sizeof (*dataset); -- char *buffer = NULL; - size_t nentries = 0; - size_t group_len = strlen (key) + 1; - struct name_list *first_needed - = alloca (sizeof (struct name_list) + group_len); -- *tofreep = NULL; - - if (netgroup_database == NULL - && !__nss_database_get (nss_database_netgroup, &netgroup_database)) -@@ -151,8 +224,6 @@ addgetnetgrentX (struct database_dyn *db, int fd, request_header *req, - } - - memset (&data, '\0', sizeof (data)); -- buffer = xmalloc (buflen); -- *tofreep = buffer; - first_needed->next = first_needed; - memcpy (first_needed->name, key, group_len); - data.needed_groups = first_needed; -@@ -195,8 +266,8 @@ addgetnetgrentX (struct database_dyn *db, int fd, request_header *req, - while (1) - { - int e; -- status = getfct.f (&data, buffer + buffilled, -- buflen - buffilled - req->key_len, &e); -+ status = getfct.f (&data, scratch->tmp.data, -+ scratch->tmp.length, &e); - if (status == NSS_STATUS_SUCCESS) - { - if (data.type == triple_val) -@@ -204,68 +275,10 @@ addgetnetgrentX (struct database_dyn *db, int fd, request_header *req, - const char *nhost = data.val.triple.host; - const char *nuser = data.val.triple.user; - const char *ndomain = data.val.triple.domain; -- -- size_t hostlen = strlen (nhost ?: "") + 1; -- size_t userlen = strlen (nuser ?: "") + 1; -- size_t domainlen = strlen (ndomain ?: "") + 1; -- -- if (nhost == NULL || nuser == NULL || ndomain == NULL -- || nhost > nuser || nuser > ndomain) -- { -- const char *last = nhost; -- if (last == NULL -- || (nuser != NULL && nuser > last)) -- last = nuser; -- if (last == NULL -- || (ndomain != NULL && ndomain > last)) -- last = ndomain; -- -- size_t bufused -- = (last == NULL -- ? buffilled -- : last + strlen (last) + 1 - buffer); -- -- /* We have to make temporary copies. */ -- size_t needed = hostlen + userlen + domainlen; -- -- if (buflen - req->key_len - bufused < needed) -- { -- buflen += MAX (buflen, 2 * needed); -- /* Save offset in the old buffer. We don't -- bother with the NULL check here since -- we'll do that later anyway. */ -- size_t nhostdiff = nhost - buffer; -- size_t nuserdiff = nuser - buffer; -- size_t ndomaindiff = ndomain - buffer; -- -- char *newbuf = xrealloc (buffer, buflen); -- /* Fix up the triplet pointers into the new -- buffer. */ -- nhost = (nhost ? newbuf + nhostdiff -- : NULL); -- nuser = (nuser ? newbuf + nuserdiff -- : NULL); -- ndomain = (ndomain ? newbuf + ndomaindiff -- : NULL); -- *tofreep = buffer = newbuf; -- } -- -- nhost = memcpy (buffer + bufused, -- nhost ?: "", hostlen); -- nuser = memcpy ((char *) nhost + hostlen, -- nuser ?: "", userlen); -- ndomain = memcpy ((char *) nuser + userlen, -- ndomain ?: "", domainlen); -- } -- -- char *wp = buffer + buffilled; -- wp = memmove (wp, nhost ?: "", hostlen); -- wp += hostlen; -- wp = memmove (wp, nuser ?: "", userlen); -- wp += userlen; -- wp = memmove (wp, ndomain ?: "", domainlen); -- wp += domainlen; -- buffilled = wp - buffer; -+ if (!(addgetnetgrentX_append (scratch, nhost) -+ && addgetnetgrentX_append (scratch, nuser) -+ && addgetnetgrentX_append (scratch, ndomain))) -+ return send_notfound (fd); - ++nentries; - } - else -@@ -317,8 +330,8 @@ addgetnetgrentX (struct database_dyn *db, int fd, request_header *req, - } - else if (status == NSS_STATUS_TRYAGAIN && e == ERANGE) - { -- buflen *= 2; -- *tofreep = buffer = xrealloc (buffer, buflen); -+ if (!scratch_buffer_grow (&scratch->tmp)) -+ return send_notfound (fd); - } - else if (status == NSS_STATUS_RETURN - || status == NSS_STATUS_NOTFOUND -@@ -351,10 +364,17 @@ addgetnetgrentX (struct database_dyn *db, int fd, request_header *req, - goto maybe_cache_add; - } - -- total = buffilled; -+ /* Capture the result size without the key appended. */ -+ total = scratch->buffer_used; -+ -+ /* Make a copy of the key. The scratch buffer must not move after -+ this point. */ -+ key_copy = addgetnetgrentX_append_n (scratch, key, req->key_len); -+ if (key_copy == NULL) -+ return send_notfound (fd); - - /* Fill in the dataset. */ -- dataset = (struct dataset *) buffer; -+ dataset = scratch->buffer.data; - timeout = datahead_init_pos (&dataset->head, total + req->key_len, - total - offsetof (struct dataset, resp), - he == NULL ? 0 : dh->nreloads + 1, -@@ -363,11 +383,7 @@ addgetnetgrentX (struct database_dyn *db, int fd, request_header *req, - dataset->resp.version = NSCD_VERSION; - dataset->resp.found = 1; - dataset->resp.nresults = nentries; -- dataset->resp.result_len = buffilled - sizeof (*dataset); -- -- assert (buflen - buffilled >= req->key_len); -- key_copy = memcpy (buffer + buffilled, key, req->key_len); -- buffilled += req->key_len; -+ dataset->resp.result_len = total - sizeof (*dataset); - - /* Now we can determine whether on refill we have to create a new - record or not. */ -@@ -398,7 +414,7 @@ addgetnetgrentX (struct database_dyn *db, int fd, request_header *req, - if (__glibc_likely (newp != NULL)) - { - /* Adjust pointer into the memory block. */ -- key_copy = (char *) newp + (key_copy - buffer); -+ key_copy = (char *) newp + (key_copy - (char *) dataset); - - dataset = memcpy (newp, dataset, total + req->key_len); - cacheable = true; -@@ -439,7 +455,7 @@ addgetnetgrentX (struct database_dyn *db, int fd, request_header *req, - } - - out: -- *resultp = dataset; -+ scratch->dataset = dataset; - - return timeout; - } -@@ -460,6 +476,9 @@ addinnetgrX (struct database_dyn *db, int fd, request_header *req, - if (user != NULL) - key = strchr (key, '\0') + 1; - const char *domain = *key++ ? key : NULL; -+ struct addgetnetgrentX_scratch scratch; -+ -+ addgetnetgrentX_scratch_init (&scratch); - - if (__glibc_unlikely (debug_level > 0)) - { -@@ -475,12 +494,8 @@ addinnetgrX (struct database_dyn *db, int fd, request_header *req, - group, group_len, - db, uid); - time_t timeout; -- void *tofree; - if (result != NULL) -- { -- timeout = result->head.timeout; -- tofree = NULL; -- } -+ timeout = result->head.timeout; - else - { - request_header req_get = -@@ -489,7 +504,10 @@ addinnetgrX (struct database_dyn *db, int fd, request_header *req, - .key_len = group_len - }; - timeout = addgetnetgrentX (db, -1, &req_get, group, uid, NULL, NULL, -- &result, &tofree); -+ &scratch); -+ result = scratch.dataset; -+ if (timeout < 0) -+ goto out; - } - - struct indataset -@@ -603,7 +621,7 @@ addinnetgrX (struct database_dyn *db, int fd, request_header *req, - } - - out: -- free (tofree); -+ addgetnetgrentX_scratch_free (&scratch); - return timeout; - } - -@@ -613,11 +631,12 @@ addgetnetgrentX_ignore (struct database_dyn *db, int fd, request_header *req, - const char *key, uid_t uid, struct hashentry *he, - struct datahead *dh) - { -- struct dataset *ignore; -- void *tofree; -- time_t timeout = addgetnetgrentX (db, fd, req, key, uid, he, dh, -- &ignore, &tofree); -- free (tofree); -+ struct addgetnetgrentX_scratch scratch; -+ addgetnetgrentX_scratch_init (&scratch); -+ time_t timeout = addgetnetgrentX (db, fd, req, key, uid, he, dh, &scratch); -+ addgetnetgrentX_scratch_free (&scratch); -+ if (timeout < 0) -+ timeout = 0; - return timeout; - } - -@@ -661,5 +680,9 @@ readdinnetgr (struct database_dyn *db, struct hashentry *he, - .key_len = he->len - }; - -- return addinnetgrX (db, -1, &req, db->data + he->key, he->owner, he, dh); -+ int timeout = addinnetgrX (db, -1, &req, db->data + he->key, he->owner, -+ he, dh); -+ if (timeout < 0) -+ timeout = 0; -+ return timeout; - } --- -2.45.0 - From 54ae487d9f15a54dcc0ebe8315194041eea5dcdf Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:09:36 +0800 Subject: [PATCH 274/722] srtp+32: drop, orphaned --- groups/optenv32 | 3 +-- runtime-optenv32/srtp+32/autobuild/defines | 13 ------------- runtime-optenv32/srtp+32/spec | 4 ---- 3 files changed, 1 insertion(+), 19 deletions(-) delete mode 100644 runtime-optenv32/srtp+32/autobuild/defines delete mode 100644 runtime-optenv32/srtp+32/spec diff --git a/groups/optenv32 b/groups/optenv32 index a63efc5632c..eba8cac4638 100644 --- a/groups/optenv32 +++ b/groups/optenv32 @@ -191,7 +191,6 @@ runtime-optenv32/sbc+32 runtime-optenv32/sdl-ttf+32 runtime-optenv32/smpeg+32 runtime-optenv32/soundtouch+32 -runtime-optenv32/srtp+32 runtime-optenv32/taglib+32 runtime-optenv32/twolame+32 runtime-optenv32/vulkan-loader+32 @@ -202,4 +201,4 @@ runtime-optenv32/vulkan+32 runtime-optenv32/wavpack+32 runtime-optenv32/wildmidi+32 runtime-optenv32/faad2+32 -runtime-optenv32/32subsystem \ No newline at end of file +runtime-optenv32/32subsystem diff --git a/runtime-optenv32/srtp+32/autobuild/defines b/runtime-optenv32/srtp+32/autobuild/defines deleted file mode 100644 index d5d0dc794aa..00000000000 --- a/runtime-optenv32/srtp+32/autobuild/defines +++ /dev/null @@ -1,13 +0,0 @@ -PKGNAME=srtp+32 -PKGSEC=net -PKGDEP="glibc+32" -BUILDDEP="devel-base+32" -PKGDES="Open-source implementation of the Secure Real-time Transport Protocol (SRTP) (32-bit x86 runtime)" - -# FIXME: Missing file `ar-lib'. -RECONF=0 -NOLTO=1 - -ABMK="shared_library" - -ABHOST=optenv32 diff --git a/runtime-optenv32/srtp+32/spec b/runtime-optenv32/srtp+32/spec deleted file mode 100644 index ea1c972850b..00000000000 --- a/runtime-optenv32/srtp+32/spec +++ /dev/null @@ -1,4 +0,0 @@ -VER=2.6.0 -SRCS="git::commit=tags/v$VER::https://github.com/cisco/libsrtp" -CHKSUMS="SKIP" -CHKUPDATE="anitya::id=18547" From 5263ec7dbf0c373dc03dfaca2312ff73046bd02b Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:05 +0800 Subject: [PATCH 275/722] a52dec+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/a52dec+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/a52dec+32/autobuild/defines b/runtime-optenv32/a52dec+32/autobuild/defines index 313c9649793..e6d116c7187 100644 --- a/runtime-optenv32/a52dec+32/autobuild/defines +++ b/runtime-optenv32/a52dec+32/autobuild/defines @@ -5,5 +5,4 @@ BUILDDEP="devel-base+32" PKGDES="A free library for decoding ATSC A/52 streams (32-bit x86 runtime)" AUTOTOOLS_AFTER="--enable-shared" -NOLTO=1 ABHOST=optenv32 From d50b1b96d45281df6e8cb23dd3672c5a22b1e3cd Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:05 +0800 Subject: [PATCH 276/722] aalib+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/aalib+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/aalib+32/autobuild/defines b/runtime-optenv32/aalib+32/autobuild/defines index c5848473e35..ab222b9f8c1 100644 --- a/runtime-optenv32/aalib+32/autobuild/defines +++ b/runtime-optenv32/aalib+32/autobuild/defines @@ -12,7 +12,6 @@ AUTOTOOLS_AFTER=( '--with-ncurses=/opt/32' ) -NOLTO=1 ABHOST=optenv32 PKGEPOCH=1 From a4aea62279b2af0083208d8be7a118764cbd0710 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:05 +0800 Subject: [PATCH 277/722] acl+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/acl+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/acl+32/autobuild/defines b/runtime-optenv32/acl+32/autobuild/defines index 4a80d65721f..587b9b8ad1a 100644 --- a/runtime-optenv32/acl+32/autobuild/defines +++ b/runtime-optenv32/acl+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="attr+32" BUILDDEP="devel-base+32" PKGDES="Access Control List (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 3c128f789772a156d0833d984bcbfe1663b17794 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:05 +0800 Subject: [PATCH 278/722] alsa-lib+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/alsa-lib+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/alsa-lib+32/autobuild/defines b/runtime-optenv32/alsa-lib+32/autobuild/defines index 152fd2b7def..007334a3fd2 100644 --- a/runtime-optenv32/alsa-lib+32/autobuild/defines +++ b/runtime-optenv32/alsa-lib+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32" PKGDES="The ALSA interface library (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From fa94367067e1fbcbd5ddfc8d30672e89e36f1e23 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:05 +0800 Subject: [PATCH 279/722] alsa-plugins+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/alsa-plugins+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/alsa-plugins+32/autobuild/defines b/runtime-optenv32/alsa-plugins+32/autobuild/defines index e09e60417fe..d6feddedecd 100644 --- a/runtime-optenv32/alsa-plugins+32/autobuild/defines +++ b/runtime-optenv32/alsa-plugins+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="alsa-lib+32 pulseaudio+32 speex+32" BUILDDEP="devel-base+32" PKGDES="Extra ALSA plugins (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From f7f87c300a83c419fcaaa76461d800cc36f70c11 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:05 +0800 Subject: [PATCH 280/722] at-spi2-core+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/at-spi2-core+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/at-spi2-core+32/autobuild/defines b/runtime-optenv32/at-spi2-core+32/autobuild/defines index a6c39f77ab5..0bf4ddc0229 100644 --- a/runtime-optenv32/at-spi2-core+32/autobuild/defines +++ b/runtime-optenv32/at-spi2-core+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="dbus+32 glib+32 x11-lib+32" BUILDDEP="devel-base+32" PKGDES="Protocol definitions and daemon for D-Bus at-spi (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 MESON_AFTER=( From 5a46e2bd30d97643254b5f6a1a38ab273526f5d8 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:05 +0800 Subject: [PATCH 281/722] attr+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/attr+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/attr+32/autobuild/defines b/runtime-optenv32/attr+32/autobuild/defines index 26ef7eab895..b982b93c999 100644 --- a/runtime-optenv32/attr+32/autobuild/defines +++ b/runtime-optenv32/attr+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32" PKGDES="Extended attribute support library for ACL support (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 3429d7dc7d6fb761f06d13c16d952331dc7b2014 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:05 +0800 Subject: [PATCH 282/722] binutils+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/binutils+32/autobuild/defines | 1 - runtime-optenv32/binutils+32/autobuild/defines.stage2 | 1 - 2 files changed, 2 deletions(-) diff --git a/runtime-optenv32/binutils+32/autobuild/defines b/runtime-optenv32/binutils+32/autobuild/defines index 528a33e3997..2530085dc6b 100644 --- a/runtime-optenv32/binutils+32/autobuild/defines +++ b/runtime-optenv32/binutils+32/autobuild/defines @@ -6,7 +6,6 @@ BUILDDEP="devel-base+32" # Flags from the main tree. NOSTATIC=0 -NOLTO=1 AB_FLAGS_O3=1 RECONF=0 diff --git a/runtime-optenv32/binutils+32/autobuild/defines.stage2 b/runtime-optenv32/binutils+32/autobuild/defines.stage2 index 4196c8201c5..3fe75ca62da 100644 --- a/runtime-optenv32/binutils+32/autobuild/defines.stage2 +++ b/runtime-optenv32/binutils+32/autobuild/defines.stage2 @@ -2,7 +2,6 @@ PKGNAME=binutils+32 PKGDES="A set of programs to assemble and manipulate binary and object files (optenv32)" PKGSEC=devel PKGDEP="glibc zlib" -NOLTO=1 ABSPLITDBG=0 # FIXME: Autobuild4 strangely crashes if strip is enabled. From fb1f76c84e8fd4198e5ff64a8258a9469e0d1a6c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:06 +0800 Subject: [PATCH 283/722] brotli+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/brotli+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/brotli+32/autobuild/defines b/runtime-optenv32/brotli+32/autobuild/defines index 54957014492..3ad2e86c431 100644 --- a/runtime-optenv32/brotli+32/autobuild/defines +++ b/runtime-optenv32/brotli+32/autobuild/defines @@ -6,5 +6,4 @@ PKGDES="Brotli compression library and utility (32-bit x86 runtime)" ABTYPE=cmakeninja -NOLTO=1 ABHOST=optenv32 From ff539bcfe824ca99b5e3e2389de20d457f30b44c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:06 +0800 Subject: [PATCH 284/722] cairo+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/cairo+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/cairo+32/autobuild/defines b/runtime-optenv32/cairo+32/autobuild/defines index c1521a83a77..9d1a82792ce 100644 --- a/runtime-optenv32/cairo+32/autobuild/defines +++ b/runtime-optenv32/cairo+32/autobuild/defines @@ -5,7 +5,6 @@ PKGDEP="fontconfig+32 glib+32 libdrm+32 libpng+32 lzo+32 \ BUILDDEP="devel-base+32" PKGDES="A 2D graphics library with support for multiple output devices (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 # FIXME: Tests sources were unable to find cairo.h... From f7d27293fb230dc726ceee94a2c73d7414dd3974 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:06 +0800 Subject: [PATCH 285/722] cdparanoia+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/cdparanoia+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/cdparanoia+32/autobuild/defines b/runtime-optenv32/cdparanoia+32/autobuild/defines index aa6a164bc0f..9b124d3c9c4 100644 --- a/runtime-optenv32/cdparanoia+32/autobuild/defines +++ b/runtime-optenv32/cdparanoia+32/autobuild/defines @@ -9,7 +9,6 @@ NOPARALLEL=1 # FIXME: Hard-coded source paths. ABSHADOW=0 -NOLTO=1 ABHOST=optenv32 MAKE_AFTER=( From 0d570d852d8017bd516ae05e73e64b1050024a3a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:06 +0800 Subject: [PATCH 286/722] celt+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/celt+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/celt+32/autobuild/defines b/runtime-optenv32/celt+32/autobuild/defines index 65af3399a3a..037821a83b7 100644 --- a/runtime-optenv32/celt+32/autobuild/defines +++ b/runtime-optenv32/celt+32/autobuild/defines @@ -8,7 +8,6 @@ AUTOTOOLS_AFTER=( '--enable-custom-modes' ) -NOLTO=1 ABHOST=optenv32 # FIXME: /var/cache/acbs/build/acbs.9ujm7voh/celt-0.11.3/configure: line From 90a57557320a61935871ea32dff30d1b21d57126 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:06 +0800 Subject: [PATCH 287/722] cups+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/cups+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/cups+32/autobuild/defines b/runtime-optenv32/cups+32/autobuild/defines index 3267f896e3d..e05eb06ca3b 100644 --- a/runtime-optenv32/cups+32/autobuild/defines +++ b/runtime-optenv32/cups+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="krb5+32 libtiff+32 libpng+32 gnutls+32 openldap+32 libusb+32 dbus+32" BUILDDEP="devel-base+32" PKGDES="The CUPS Printing System (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 # FIXME: --with-ondemand=upstart is the only way to remove systemd dependency. From 108e6406b99fe0ad0101045bd1ad320c8c8c8e9e Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:06 +0800 Subject: [PATCH 288/722] curl+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/curl+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/curl+32/autobuild/defines b/runtime-optenv32/curl+32/autobuild/defines index 0ac21a247c9..4fce354c458 100644 --- a/runtime-optenv32/curl+32/autobuild/defines +++ b/runtime-optenv32/curl+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="ca-certs gnutls+32 krb5+32 libssh2+32 openssl+32 rtmpdump+32 zlib+32" BUILDDEP="devel-base+32 patchelf" PKGDES="A URL retrieval utility and library (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 # FIXME: Missing 32-bit packages for some dependencies. From 1b4b6d09e7a6e23de2c7c767f94fa95c5ddb871c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:06 +0800 Subject: [PATCH 289/722] db+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/db+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/db+32/autobuild/defines b/runtime-optenv32/db+32/autobuild/defines index 672a00ceb13..5789f83821a 100644 --- a/runtime-optenv32/db+32/autobuild/defines +++ b/runtime-optenv32/db+32/autobuild/defines @@ -7,5 +7,4 @@ BUILDDEP="devel-base+32" PKGEPOCH=1 AB_FLAGS_O3=1 -NOLTO=1 ABHOST=optenv32 From f5d024e6a9695ccd9a287e74f422748f8549efb9 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:06 +0800 Subject: [PATCH 290/722] dbus+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/dbus+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/dbus+32/autobuild/defines b/runtime-optenv32/dbus+32/autobuild/defines index 323f4d35003..bacb6082931 100644 --- a/runtime-optenv32/dbus+32/autobuild/defines +++ b/runtime-optenv32/dbus+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="expat+32 glib+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="D-Bus, a system message bus (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 AUTOTOOLS_AFTER=( From 902e2f265c24afb33ecf27df9a5b8112629b98fa Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:06 +0800 Subject: [PATCH 291/722] dbus-glib+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/dbus-glib+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/dbus-glib+32/autobuild/defines b/runtime-optenv32/dbus-glib+32/autobuild/defines index f47aa3941b2..6c24ffb3c4f 100644 --- a/runtime-optenv32/dbus-glib+32/autobuild/defines +++ b/runtime-optenv32/dbus-glib+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glib+32 dbus+32" BUILDDEP="devel-base+32 gtk-doc" PKGDES="D-Bus GLib Binding (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 4ee8c91cf5392db7e38878ccb6b50e1bec9b1d92 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:06 +0800 Subject: [PATCH 292/722] elfutils+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/elfutils+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/elfutils+32/autobuild/defines b/runtime-optenv32/elfutils+32/autobuild/defines index 1c24805130d..85eb27e24e5 100644 --- a/runtime-optenv32/elfutils+32/autobuild/defines +++ b/runtime-optenv32/elfutils+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="bzip2+32 zlib+32" BUILDDEP="devel-base+32" PKGDES="Libraries and utilities to handle ELF object files and DWARF debugging information (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 # Note: Minimise dependency. From 5207a036c4e0b9bf76dc8a0da6a2226e9b4a1dfc Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:06 +0800 Subject: [PATCH 293/722] enca+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/enca+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/enca+32/autobuild/defines b/runtime-optenv32/enca+32/autobuild/defines index 9d8ef3ee0f5..a9f5eaa6de6 100644 --- a/runtime-optenv32/enca+32/autobuild/defines +++ b/runtime-optenv32/enca+32/autobuild/defines @@ -7,5 +7,4 @@ PKGDES="Charset analyzer and converter (32-bit x86 runtime)" AUTOTOOLS_AFTER="--with-librecode=/usr --enable-external" ABSHADOW=0 -NOLTO=1 ABHOST=optenv32 From 98ca5f347c3c6f5bb5a77028e16c9512ad31e27a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:06 +0800 Subject: [PATCH 294/722] eudev+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/eudev+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/eudev+32/autobuild/defines b/runtime-optenv32/eudev+32/autobuild/defines index 15f0888e1c9..96ffa64e4f8 100644 --- a/runtime-optenv32/eudev+32/autobuild/defines +++ b/runtime-optenv32/eudev+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="acl+32 dbus+32 hwdata glib+32 util-linux+32" BUILDDEP="devel-base+32 docbook-dtd docbook-xsl gperf libxslt" PKGDES="A stripped-down version of UDev by Gentoo (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 AUTOTOOLS_AFTER=( From 4d1a213db40f16415072c541da15db7cb7b8741a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:06 +0800 Subject: [PATCH 295/722] faac+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/faac+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/faac+32/autobuild/defines b/runtime-optenv32/faac+32/autobuild/defines index 00a50da89b2..7fffcfa9b0b 100644 --- a/runtime-optenv32/faac+32/autobuild/defines +++ b/runtime-optenv32/faac+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="mp4v2+32" BUILDDEP="devel-base+32" PKGDES="An encoder for Advanced Audio Coding (AAC) (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From a3207d9fd90d00b34ce09ad7ae0e1f05f43be08c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:06 +0800 Subject: [PATCH 296/722] faad2+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/faad2+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/faad2+32/autobuild/defines b/runtime-optenv32/faad2+32/autobuild/defines index 7da998cf170..9f67d8e74ef 100644 --- a/runtime-optenv32/faad2+32/autobuild/defines +++ b/runtime-optenv32/faad2+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="glibc+32" BUILDDEP="32subsystem" PKGDES="ISO AAC audio decoder (optenv32)" -NOLTO=1 ABHOST=optenv32 ABTYPE=cmakeninja From b1ea4b0945d46e49ac21878a31a167d071af69c3 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:06 +0800 Subject: [PATCH 297/722] ffmpeg+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/ffmpeg+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/ffmpeg+32/autobuild/defines b/runtime-optenv32/ffmpeg+32/autobuild/defines index 33d589821cc..75b1fad9625 100644 --- a/runtime-optenv32/ffmpeg+32/autobuild/defines +++ b/runtime-optenv32/ffmpeg+32/autobuild/defines @@ -9,5 +9,4 @@ BUILDDEP="devel-base+32 yasm" PKGDES="Complete and free Internet live audio and video broadcasting solution (32-bit x86 runtime)" AB_FLAGS_O3=1 -NOLTO=1 ABHOST=optenv32 From c4ba87803e34994e0c984285734c58265e4159dd Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:06 +0800 Subject: [PATCH 298/722] fftw+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/fftw+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/fftw+32/autobuild/defines b/runtime-optenv32/fftw+32/autobuild/defines index d5ff88d786d..6299ed40f73 100644 --- a/runtime-optenv32/fftw+32/autobuild/defines +++ b/runtime-optenv32/fftw+32/autobuild/defines @@ -3,7 +3,6 @@ PKGSEC=libs PKGDEP="glibc+32" PKGDES="Library for computing the discrete Fourier transform (DFT) (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 BUILDDEP="gcc+32" From 5c7ba8516e587c3d09cf45a3a6e4ba63df01e284 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:06 +0800 Subject: [PATCH 299/722] flac+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/flac+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/flac+32/autobuild/defines b/runtime-optenv32/flac+32/autobuild/defines index f8cfeda6406..b51eff7dfb6 100644 --- a/runtime-optenv32/flac+32/autobuild/defines +++ b/runtime-optenv32/flac+32/autobuild/defines @@ -7,5 +7,4 @@ PKGDES="FLAC analyzing library (32-bit x86 runtime)" PKGBREAK="gst-plugins-good-1-0+32<=1.16.2-1 libsndfile+32<=1.2.0 \ sdl-sound+32<=1.0.3-2" -NOLTO=1 ABHOST=optenv32 From 173436ec0cc522b20cbb1418d83fee5d4bd03a1e Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:07 +0800 Subject: [PATCH 300/722] fontconfig+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/fontconfig+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/fontconfig+32/autobuild/defines b/runtime-optenv32/fontconfig+32/autobuild/defines index 594abb985eb..182a057bdf8 100644 --- a/runtime-optenv32/fontconfig+32/autobuild/defines +++ b/runtime-optenv32/fontconfig+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="expat+32 freetype+32 glibc+32 json-c+32 libxml2+32 util-linux+32" BUILDDEP="devel-base+32 gperf" PKGDES="A library for configuring and customizing font access (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 ABTYPE=meson From 152492ac5e0a0acbb8709a905e878e01dde8edaf Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:07 +0800 Subject: [PATCH 301/722] freealut+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/freealut+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/freealut+32/autobuild/defines b/runtime-optenv32/freealut+32/autobuild/defines index 32ab5e0d04b..0f7c710d35d 100644 --- a/runtime-optenv32/freealut+32/autobuild/defines +++ b/runtime-optenv32/freealut+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="openal-soft+32" BUILDDEP="devel-base+32" PKGDES="OpenAL Utility Toolkit (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 437a4f23dcd9ff4460ae151337364d250ffd7dd2 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:07 +0800 Subject: [PATCH 302/722] freeglut+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/freeglut+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/freeglut+32/autobuild/defines b/runtime-optenv32/freeglut+32/autobuild/defines index c1bcbac9a75..35b0704729f 100644 --- a/runtime-optenv32/freeglut+32/autobuild/defines +++ b/runtime-optenv32/freeglut+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glu+32 mesa+32 x11-lib+32" BUILDDEP="devel-base+32" PKGDES="Free GL User Toolkit (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From b05fce99aca8942864ae7f7f7164db7cfff4d8e5 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:07 +0800 Subject: [PATCH 303/722] freetype+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/freetype+32/autobuild/defines | 1 - runtime-optenv32/freetype+32/autobuild/defines.stage2 | 1 - 2 files changed, 2 deletions(-) diff --git a/runtime-optenv32/freetype+32/autobuild/defines b/runtime-optenv32/freetype+32/autobuild/defines index 86c70eee318..bf6fe0cf784 100644 --- a/runtime-optenv32/freetype+32/autobuild/defines +++ b/runtime-optenv32/freetype+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="brotli+32 bzip2+32 harfbuzz+32 libpng+32 x11-lib+32 zlib+32" BUILDDEP="devel-base+32" PKGDES="Font rendering engine (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 ABTYPE=meson diff --git a/runtime-optenv32/freetype+32/autobuild/defines.stage2 b/runtime-optenv32/freetype+32/autobuild/defines.stage2 index 99204eb48a9..448445709a2 100644 --- a/runtime-optenv32/freetype+32/autobuild/defines.stage2 +++ b/runtime-optenv32/freetype+32/autobuild/defines.stage2 @@ -4,7 +4,6 @@ PKGDEP="brotli+32 bzip2+32 libpng+32 x11-lib+32 zlib+32" BUILDDEP="devel-base+32" PKGDES="Font rendering engine (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 ABTYPE=meson From 1d7e2c70a462791aadcc3519189898c7d07e9ded Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:07 +0800 Subject: [PATCH 304/722] fribidi+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/fribidi+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/fribidi+32/autobuild/defines b/runtime-optenv32/fribidi+32/autobuild/defines index f139ff2c0ea..534abeb75e0 100644 --- a/runtime-optenv32/fribidi+32/autobuild/defines +++ b/runtime-optenv32/fribidi+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glib+32" BUILDDEP="devel-base+32" PKGDES="Free implementation of BiDi algorithm (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 5ec411a874ff5edf6abb769d06e36ff4c0eca092 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:07 +0800 Subject: [PATCH 305/722] game-music-emu+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/game-music-emu+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/game-music-emu+32/autobuild/defines b/runtime-optenv32/game-music-emu+32/autobuild/defines index ec5661458ec..2506ed4e2d9 100644 --- a/runtime-optenv32/game-music-emu+32/autobuild/defines +++ b/runtime-optenv32/game-music-emu+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32" PKGDES="Video game music file emulation/playback library (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From bfd56dc898fb5e55202c17cbb14cb93049bc41bc Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:07 +0800 Subject: [PATCH 306/722] gcc+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/gcc+32/autobuild/defines | 1 - runtime-optenv32/gcc+32/autobuild/defines.stage2 | 1 - 2 files changed, 2 deletions(-) diff --git a/runtime-optenv32/gcc+32/autobuild/defines b/runtime-optenv32/gcc+32/autobuild/defines index 8fe244d25be..4efa6c91c96 100644 --- a/runtime-optenv32/gcc+32/autobuild/defines +++ b/runtime-optenv32/gcc+32/autobuild/defines @@ -45,7 +45,6 @@ AUTOTOOLS_AFTER=( RECONF=0 NOSTATIC=0 -NOLTO=1 AB_FLAGS_O3=1 AB_FLAGS_SPECS=0 ABHOST=optenv32 diff --git a/runtime-optenv32/gcc+32/autobuild/defines.stage2 b/runtime-optenv32/gcc+32/autobuild/defines.stage2 index 4b1f588e5ca..1e5b36e6e4b 100644 --- a/runtime-optenv32/gcc+32/autobuild/defines.stage2 +++ b/runtime-optenv32/gcc+32/autobuild/defines.stage2 @@ -4,6 +4,5 @@ PKGSEC=devel PKGDEP="binutils+32 gmp mpfr mpc zlib" NOSTATIC=0 -NOLTO=1 ABSPLITDBG=0 From 91ab87267587ba4c8dec22d884e2d23b4e502816 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:07 +0800 Subject: [PATCH 307/722] gconf+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/gconf+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/gconf+32/autobuild/defines b/runtime-optenv32/gconf+32/autobuild/defines index a38bc2db52c..9bebb5a488d 100644 --- a/runtime-optenv32/gconf+32/autobuild/defines +++ b/runtime-optenv32/gconf+32/autobuild/defines @@ -10,5 +10,4 @@ AUTOTOOLS_AFTER=( '--disable-gtk' ) -NOLTO=1 ABHOST=optenv32 From 434b9655c91f1b987efda9078560e2672d7088c5 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:07 +0800 Subject: [PATCH 308/722] gdbm+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/gdbm+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/gdbm+32/autobuild/defines b/runtime-optenv32/gdbm+32/autobuild/defines index 6bdd6b1c5a0..53baeeb667c 100644 --- a/runtime-optenv32/gdbm+32/autobuild/defines +++ b/runtime-optenv32/gdbm+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32" PKGDES="GNU Database Manager library (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 419fdf9ce14ef54b66569343ad4b02e5b2ec8337 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:07 +0800 Subject: [PATCH 309/722] gdk-pixbuf+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/gdk-pixbuf+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/gdk-pixbuf+32/autobuild/defines b/runtime-optenv32/gdk-pixbuf+32/autobuild/defines index b3fd88215f9..2534c7d16df 100644 --- a/runtime-optenv32/gdk-pixbuf+32/autobuild/defines +++ b/runtime-optenv32/gdk-pixbuf+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="glib+32 libpng+32 libtiff+32 libjpeg-turbo+32" BUILDDEP="devel-base+32 shared-mime-info+32" PKGDES="Toolkit for image loading and pixel buffer manipulation (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 MESON_AFTER=( From 930817ac7968fe35a3ce5d2a4696e19324d46d2e Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:07 +0800 Subject: [PATCH 310/722] giflib+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/giflib+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/giflib+32/autobuild/defines b/runtime-optenv32/giflib+32/autobuild/defines index 53c621c19a8..63a20d1144c 100644 --- a/runtime-optenv32/giflib+32/autobuild/defines +++ b/runtime-optenv32/giflib+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32 xmlto docbook-xsl" PKGDES="A library for reading and writing GIF images (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From ad0c23c19436ed1fcd370bfe5977cb9543898c78 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:07 +0800 Subject: [PATCH 311/722] glew+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/glew+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/glew+32/autobuild/defines b/runtime-optenv32/glew+32/autobuild/defines index 49ff19ec2fe..39850ba65ea 100644 --- a/runtime-optenv32/glew+32/autobuild/defines +++ b/runtime-optenv32/glew+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glu+32" BUILDDEP="devel-base+32" PKGDES="The OpenGL Extension Wrangler Library (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 8291af5f952698c013a3f2cc8107439516e13d0e Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:07 +0800 Subject: [PATCH 312/722] glib+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/glib+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/glib+32/autobuild/defines b/runtime-optenv32/glib+32/autobuild/defines index c364f67e84e..7019c00a44d 100644 --- a/runtime-optenv32/glib+32/autobuild/defines +++ b/runtime-optenv32/glib+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="dbus+32 elfutils+32 glibc+32 libffi+32 pcre2+32 util-linux+32" BUILDDEP="devel-base+32 python-2" PKGDES="Common C routines used by GTK+ and other libs (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 MESON_AFTER=( From 42115017748fbb4c014b33abd6cbdf3a9985579f Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:08 +0800 Subject: [PATCH 313/722] glibc+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/glibc+32/autobuild/defines | 1 - runtime-optenv32/glibc+32/autobuild/defines.stage2 | 1 - 2 files changed, 2 deletions(-) diff --git a/runtime-optenv32/glibc+32/autobuild/defines b/runtime-optenv32/glibc+32/autobuild/defines index 2156803d840..fed2a26ab13 100644 --- a/runtime-optenv32/glibc+32/autobuild/defines +++ b/runtime-optenv32/glibc+32/autobuild/defines @@ -27,7 +27,6 @@ AUTOTOOLS_AFTER=( "--disable-crypt" ) -NOLTO=1 NOSTATIC=0 AB_FLAGS_FTF=0 AB_FLAGS_SSP=0 diff --git a/runtime-optenv32/glibc+32/autobuild/defines.stage2 b/runtime-optenv32/glibc+32/autobuild/defines.stage2 index b073be7e4c1..22842497c18 100644 --- a/runtime-optenv32/glibc+32/autobuild/defines.stage2 +++ b/runtime-optenv32/glibc+32/autobuild/defines.stage2 @@ -4,7 +4,6 @@ PKGDEP="tzdata linux+api+32" PKGDES="GNU C Library (optenv32)" BUILDDEP="binutils+32 gcc+32" -NOLTO=1 NOSTATIC=0 ABSTRIP=0 From 8aef2abebcfeac868136532755feb29ab092caf4 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:08 +0800 Subject: [PATCH 314/722] glslang+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/glslang+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/glslang+32/autobuild/defines b/runtime-optenv32/glslang+32/autobuild/defines index fc3c3d407d4..688442010b8 100644 --- a/runtime-optenv32/glslang+32/autobuild/defines +++ b/runtime-optenv32/glslang+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="glibc+32 spirv-tools+32" BUILDDEP="devel-base+32" PKGDES="An OpenGL and OpenGL ES shader front end and validator (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 CMAKE_AFTER=( From c77ae3a400e9c70cc5296aefbe762383947ab238 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:08 +0800 Subject: [PATCH 315/722] glu+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/glu+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/glu+32/autobuild/defines b/runtime-optenv32/glu+32/autobuild/defines index 9cb14093f65..9f199b16bd3 100644 --- a/runtime-optenv32/glu+32/autobuild/defines +++ b/runtime-optenv32/glu+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="mesa+32" BUILDDEP="devel-base+32" PKGDES="GLU GL API libs (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 1e8a7031ec1dadef76489a58e9b17aa293fa9d1a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:08 +0800 Subject: [PATCH 316/722] gnutls+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/gnutls+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/gnutls+32/autobuild/defines b/runtime-optenv32/gnutls+32/autobuild/defines index 5201292efaa..732f441bf91 100644 --- a/runtime-optenv32/gnutls+32/autobuild/defines +++ b/runtime-optenv32/gnutls+32/autobuild/defines @@ -20,5 +20,4 @@ AUTOTOOLS_AFTER=( PKGBREAK="wine<=1.7.54" -NOLTO=1 ABHOST=optenv32 From 1f5ec2ff1725dfa809f196d950cf03b72ba32e05 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:08 +0800 Subject: [PATCH 317/722] gsm+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/gsm+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/gsm+32/autobuild/defines b/runtime-optenv32/gsm+32/autobuild/defines index 6b79aa55140..ef50993d8b7 100644 --- a/runtime-optenv32/gsm+32/autobuild/defines +++ b/runtime-optenv32/gsm+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32" PKGDES="Shared libraries for GSM 06.10 lossy speech compression (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 # FIXME: Causes installation to fail. From a46c16b4f28269f5a0bab57d6479209e1758d948 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:08 +0800 Subject: [PATCH 318/722] gtk-2+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/gtk-2+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/gtk-2+32/autobuild/defines b/runtime-optenv32/gtk-2+32/autobuild/defines index b62e5ba4322..88caedd34fe 100644 --- a/runtime-optenv32/gtk-2+32/autobuild/defines +++ b/runtime-optenv32/gtk-2+32/autobuild/defines @@ -8,5 +8,4 @@ AUTOTOOLS_AFTER="--with-xinput=yes \ --disable-cups \ --enable-introspection=no" -NOLTO=1 ABHOST=optenv32 From 9f13fc5861bb791c71bd84b520a526f0546f1a24 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:08 +0800 Subject: [PATCH 319/722] gtk-3+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/gtk-3+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/gtk-3+32/autobuild/defines b/runtime-optenv32/gtk-3+32/autobuild/defines index afc49f2c403..4d1d6893885 100644 --- a/runtime-optenv32/gtk-3+32/autobuild/defines +++ b/runtime-optenv32/gtk-3+32/autobuild/defines @@ -10,5 +10,4 @@ MESON_AFTER=( '-Dgtk_doc=false' ) -NOLTO=1 ABHOST=optenv32 From 7c7d1796dda23d95ec3e94e7e57cfd611b75bc50 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:08 +0800 Subject: [PATCH 320/722] harfbuzz+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/harfbuzz+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/harfbuzz+32/autobuild/defines b/runtime-optenv32/harfbuzz+32/autobuild/defines index 237e557f61d..49438fe769a 100644 --- a/runtime-optenv32/harfbuzz+32/autobuild/defines +++ b/runtime-optenv32/harfbuzz+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="cairo+32 freetype+32 glibc+32 glib+32 icu+32" BUILDDEP="devel-base+32" PKGDES="OpenType text shaping engine (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 AUTOTOOLS_AFTER=( From daf31fc65a9f46abfc4e4466ccd3ed01902e0cff Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:08 +0800 Subject: [PATCH 321/722] imlib2+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/imlib2+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/imlib2+32/autobuild/defines b/runtime-optenv32/imlib2+32/autobuild/defines index 0c06275f672..e2cf1682fde 100644 --- a/runtime-optenv32/imlib2+32/autobuild/defines +++ b/runtime-optenv32/imlib2+32/autobuild/defines @@ -5,5 +5,4 @@ PKGDEP="libtiff+32 giflib+32 bzip2+32 freetype+32 x11-lib+32 libpng+32 \ BUILDDEP="devel-base+32" PKGDES="Image loading, saving, rendering, and manipulation library (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 44efe9216d524497397d66ae842bad05b968a063 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:08 +0800 Subject: [PATCH 322/722] json-c+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/json-c+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/json-c+32/autobuild/defines b/runtime-optenv32/json-c+32/autobuild/defines index aa4ffde2b00..f7474e5790d 100644 --- a/runtime-optenv32/json-c+32/autobuild/defines +++ b/runtime-optenv32/json-c+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32" PKGDES="A JSON implementation in C (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From e5444c9be17269449db7f4cf66752618dd6e43cb Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:08 +0800 Subject: [PATCH 323/722] krb5+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/krb5+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/krb5+32/autobuild/defines b/runtime-optenv32/krb5+32/autobuild/defines index ef11129a7ad..00d4cf01e7c 100644 --- a/runtime-optenv32/krb5+32/autobuild/defines +++ b/runtime-optenv32/krb5+32/autobuild/defines @@ -16,5 +16,4 @@ AUTOTOOLS_AFTER="--enable-shared \ RECONF=0 NOPARALLEL=1 -NOLTO=1 ABHOST=optenv32 From e1af189affd5fec221c8f2026449e28c428e970a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:08 +0800 Subject: [PATCH 324/722] lame+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/lame+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/lame+32/autobuild/defines b/runtime-optenv32/lame+32/autobuild/defines index 654dd117e3f..a53d46db59b 100644 --- a/runtime-optenv32/lame+32/autobuild/defines +++ b/runtime-optenv32/lame+32/autobuild/defines @@ -10,5 +10,4 @@ AUTOTOOLS_AFTER=( '--enable-nasm' ) -NOLTO=1 ABHOST=optenv32 From de31cc5bed0daa3ae1bb5fb8a5e5095d7f460f42 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:08 +0800 Subject: [PATCH 325/722] lcms2+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/lcms2+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/lcms2+32/autobuild/defines b/runtime-optenv32/lcms2+32/autobuild/defines index 08a5e71fbb7..c31c63f693a 100644 --- a/runtime-optenv32/lcms2+32/autobuild/defines +++ b/runtime-optenv32/lcms2+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="libtiff+32" BUILDDEP="devel-base+32" PKGDES="Little CMS 2 color management library (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 115b91382c659eaaac56f1b5ec3ac92d18910317 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:08 +0800 Subject: [PATCH 326/722] libaio+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libaio+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libaio+32/autobuild/defines b/runtime-optenv32/libaio+32/autobuild/defines index ab243d413b5..2836a48abcd 100644 --- a/runtime-optenv32/libaio+32/autobuild/defines +++ b/runtime-optenv32/libaio+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32" PKGDES="The Linux-native asynchronous I/O facility (aio) library (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 5b3dcde8818874256b08f8ce455b70943cbb60e6 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:08 +0800 Subject: [PATCH 327/722] libass+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libass+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libass+32/autobuild/defines b/runtime-optenv32/libass+32/autobuild/defines index 273e29cd4f9..7d3b968992f 100644 --- a/runtime-optenv32/libass+32/autobuild/defines +++ b/runtime-optenv32/libass+32/autobuild/defines @@ -5,7 +5,6 @@ PKGDEP="enca+32 fontconfig+32 fribidi+32" BUILDDEP="devel-base+32 yasm" AUTOTOOLS_AFTER="--enable-fontconfig" -NOLTO=1 ABHOST=optenv32 PKGBREAK="ffmpeg+32<=3.2.2-1" From a9085f99aeba6bddff53eea7478831cd5d240931 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:08 +0800 Subject: [PATCH 328/722] libasyncns+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libasyncns+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libasyncns+32/autobuild/defines b/runtime-optenv32/libasyncns+32/autobuild/defines index aa49e3df7d4..366a3e18f7e 100644 --- a/runtime-optenv32/libasyncns+32/autobuild/defines +++ b/runtime-optenv32/libasyncns+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32" PKGDES="A C library for executing name service queries asynchronously (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 140a6e6e666b47b1af6308f94a62b47f947048fa Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:08 +0800 Subject: [PATCH 329/722] libavc1394+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libavc1394+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libavc1394+32/autobuild/defines b/runtime-optenv32/libavc1394+32/autobuild/defines index 8a2b6013786..df10c671fc6 100644 --- a/runtime-optenv32/libavc1394+32/autobuild/defines +++ b/runtime-optenv32/libavc1394+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="libraw1394+32" BUILDDEP="devel-base+32" PKGDES="A library to control A/V devices using the 1394ta AV/C commands (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 25bafe50075d1b7467f1e613be2e3030e6fded1a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:09 +0800 Subject: [PATCH 330/722] libbluray+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libbluray+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libbluray+32/autobuild/defines b/runtime-optenv32/libbluray+32/autobuild/defines index d66a480d6ec..1e1d1e93a25 100644 --- a/runtime-optenv32/libbluray+32/autobuild/defines +++ b/runtime-optenv32/libbluray+32/autobuild/defines @@ -6,5 +6,4 @@ PKGDES="Library to access Blu-Ray disks for video playback (32-bit x86 runtime)" AUTOTOOLS_AFTER="--disable-examples \ --disable-bdjava-jar" -NOLTO=1 ABHOST=optenv32 From 22bb6146894acbabed430412ce670848ac198026 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:09 +0800 Subject: [PATCH 331/722] libcaca+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libcaca+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libcaca+32/autobuild/defines b/runtime-optenv32/libcaca+32/autobuild/defines index ce14559cd57..df834931c01 100644 --- a/runtime-optenv32/libcaca+32/autobuild/defines +++ b/runtime-optenv32/libcaca+32/autobuild/defines @@ -15,7 +15,6 @@ AUTOTOOLS_AFTER=( '--disable-doc' ) -NOLTO=1 ABHOST=optenv32 PKGEPOCH=1 From 81d6d5605010f9bb41f04adf5a778840cb578f8c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:09 +0800 Subject: [PATCH 332/722] libcap+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libcap+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libcap+32/autobuild/defines b/runtime-optenv32/libcap+32/autobuild/defines index cc6059c7668..456a9e300e6 100644 --- a/runtime-optenv32/libcap+32/autobuild/defines +++ b/runtime-optenv32/libcap+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="attr+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="POSIX 1003.1e capabilities (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From f878c0dec33d6a82568f9793f0a7fa21abf42191 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:09 +0800 Subject: [PATCH 333/722] libcddb+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libcddb+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libcddb+32/autobuild/defines b/runtime-optenv32/libcddb+32/autobuild/defines index 4d573be6ea6..f39dfac9d85 100644 --- a/runtime-optenv32/libcddb+32/autobuild/defines +++ b/runtime-optenv32/libcddb+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32" PKGDES="Library that implements the different protocols (CDDBP, HTTP, SMTP) to access data on a CDDB server (e.g. http://freedb.org) (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 76113da2f40261cd080197b5eaa956b1bee24fd1 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:09 +0800 Subject: [PATCH 334/722] libcdio+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libcdio+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libcdio+32/autobuild/defines b/runtime-optenv32/libcdio+32/autobuild/defines index 3a3bd5efb30..5832ff46331 100644 --- a/runtime-optenv32/libcdio+32/autobuild/defines +++ b/runtime-optenv32/libcdio+32/autobuild/defines @@ -6,5 +6,4 @@ PKGDES="GNU compact disk input and control library (32-bit x86 runtime)" AUTOTOOLS_AFTER="--enable-cpp-progs" -NOLTO=1 ABHOST=optenv32 From a198019fa5b626d2f0522c3787a8256541673d23 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:09 +0800 Subject: [PATCH 335/722] libcroco+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libcroco+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libcroco+32/autobuild/defines b/runtime-optenv32/libcroco+32/autobuild/defines index d1eb9252826..49d752a4ee9 100644 --- a/runtime-optenv32/libcroco+32/autobuild/defines +++ b/runtime-optenv32/libcroco+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glib+32 libxml2+32" BUILDDEP="devel-base+32 gtk-doc" PKGDES="A standalone CSS parsing and manipulation library (optenv32)" -NOLTO=1 ABHOST=optenv32 From 22b972caf0fa753e65e845a710ea6722fedbead0 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:09 +0800 Subject: [PATCH 336/722] libdatrie+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libdatrie+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libdatrie+32/autobuild/defines b/runtime-optenv32/libdatrie+32/autobuild/defines index 6e26863da8e..2c23bbf7765 100644 --- a/runtime-optenv32/libdatrie+32/autobuild/defines +++ b/runtime-optenv32/libdatrie+32/autobuild/defines @@ -7,5 +7,4 @@ PKGDES="Implementation of double-array structure for representing trie (32-bit x # FIXME: Parallelism causes installation failure. NOPARALLEL=1 -NOLTO=1 ABHOST=optenv32 From 7a6b83e3fb88b7f2ceeb00e8402584c56f5c1582 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:09 +0800 Subject: [PATCH 337/722] libdca+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libdca+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libdca+32/autobuild/defines b/runtime-optenv32/libdca+32/autobuild/defines index c2099536baf..f36155d37ec 100644 --- a/runtime-optenv32/libdca+32/autobuild/defines +++ b/runtime-optenv32/libdca+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32" PKGDES="Free library for decoding DTS Coherent Acoustics streams (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From ffb036b1f9fa2f88695df2f2c47b2ad84f43f423 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:09 +0800 Subject: [PATCH 338/722] libdrm+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libdrm+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libdrm+32/autobuild/defines b/runtime-optenv32/libdrm+32/autobuild/defines index 31694c76659..c2b330e35ed 100644 --- a/runtime-optenv32/libdrm+32/autobuild/defines +++ b/runtime-optenv32/libdrm+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="cairo+32 x11-lib+32" BUILDDEP="devel-base+32" PKGDES="Direct Rendering Manager runtime library (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 ABTYPE=meson MESON_AFTER=( From bb1e602bba212b93800c0029283fdd8b433779c5 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:09 +0800 Subject: [PATCH 339/722] libdv+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libdv+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libdv+32/autobuild/defines b/runtime-optenv32/libdv+32/autobuild/defines index ceda300222d..4439f72424a 100644 --- a/runtime-optenv32/libdv+32/autobuild/defines +++ b/runtime-optenv32/libdv+32/autobuild/defines @@ -7,6 +7,5 @@ PKGDES="The Quarsar DV codec (32-bit x86 runtime)" AUTOTOOLS_AFTER="--disable-gtk" RECONF=0 ABSHADOW=0 -NOLTO=1 ABHOST=optenv32 From 24206330e0c10d29ec266c437288bf7c07a0e08f Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:09 +0800 Subject: [PATCH 340/722] libdvdcss+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libdvdcss+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libdvdcss+32/autobuild/defines b/runtime-optenv32/libdvdcss+32/autobuild/defines index d131da6232a..3a3a2c7e23c 100644 --- a/runtime-optenv32/libdvdcss+32/autobuild/defines +++ b/runtime-optenv32/libdvdcss+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32" PKGDES="Portable abstraction library for DVD decryption (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 4f7e6c4a5e56b444952cb033672beac1a9c051c7 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:09 +0800 Subject: [PATCH 341/722] libdvdnav+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libdvdnav+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libdvdnav+32/autobuild/defines b/runtime-optenv32/libdvdnav+32/autobuild/defines index 11d54a96e4f..eb0e2016d74 100644 --- a/runtime-optenv32/libdvdnav+32/autobuild/defines +++ b/runtime-optenv32/libdvdnav+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="libdvdread+32" BUILDDEP="devel-base+32" PKGDES="Library for xine-dvdnav plugin (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From a08b708bee20c4fdaee1048d3bbdb5b8b2cbce4c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:09 +0800 Subject: [PATCH 342/722] libdvdread+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libdvdread+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libdvdread+32/autobuild/defines b/runtime-optenv32/libdvdread+32/autobuild/defines index 43983b24adf..6494524b0ea 100644 --- a/runtime-optenv32/libdvdread+32/autobuild/defines +++ b/runtime-optenv32/libdvdread+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="libdvdcss+32" BUILDDEP="devel-base+32" PKGDES="Provides a simple foundation for reading DVD video disks (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From ace6760ba9c9b1cd776c776c7f3a8559212133c7 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:09 +0800 Subject: [PATCH 343/722] libepoxy+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libepoxy+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libepoxy+32/autobuild/defines b/runtime-optenv32/libepoxy+32/autobuild/defines index 40def1779d8..bb1877b8aab 100644 --- a/runtime-optenv32/libepoxy+32/autobuild/defines +++ b/runtime-optenv32/libepoxy+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="mesa+32 x11-lib+32" BUILDDEP="devel-base+32" PKGDES="A library for handling OpenGL function pointer management for you (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From a2afa3984f90ceb10f80e39e4bf0909cf8dca8ca Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:09 +0800 Subject: [PATCH 344/722] libexif+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libexif+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libexif+32/autobuild/defines b/runtime-optenv32/libexif+32/autobuild/defines index 9abcd53504f..38d8ce44613 100644 --- a/runtime-optenv32/libexif+32/autobuild/defines +++ b/runtime-optenv32/libexif+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32" PKGDES="A library for parsing, editing, and saving EXIF data (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 81f13a0aa898da6df465031e51f98015c20f4a27 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:09 +0800 Subject: [PATCH 345/722] libffi+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libffi+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libffi+32/autobuild/defines b/runtime-optenv32/libffi+32/autobuild/defines index ac6189126dc..71b490eadde 100644 --- a/runtime-optenv32/libffi+32/autobuild/defines +++ b/runtime-optenv32/libffi+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32" PKGDES="Portable foreign function interface library (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 0f75226cb41382ec0db847010cdd6a43ceb7b683 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:09 +0800 Subject: [PATCH 346/722] libgcrypt+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libgcrypt+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libgcrypt+32/autobuild/defines b/runtime-optenv32/libgcrypt+32/autobuild/defines index 863d6ce73d1..935b02d970d 100644 --- a/runtime-optenv32/libgcrypt+32/autobuild/defines +++ b/runtime-optenv32/libgcrypt+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="libgpg-error+32" BUILDDEP="devel-base+32" PKGDES="General purpose cryptographic library based on the code from GnuPG (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 972ca5d705d2d557fc0975f2255e80aa82447030 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:09 +0800 Subject: [PATCH 347/722] libglvnd+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libglvnd+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libglvnd+32/autobuild/defines b/runtime-optenv32/libglvnd+32/autobuild/defines index 16dce7ca17e..f05cadad2ea 100644 --- a/runtime-optenv32/libglvnd+32/autobuild/defines +++ b/runtime-optenv32/libglvnd+32/autobuild/defines @@ -7,7 +7,6 @@ PKGDES="The GL Vendor-Neutral Dispatch library (32-bit x86 runtime)" PKGBREAK="mesa+32<=19.3.1 nvidia+32<=390.25 nvidia-libgl+32<=390.25" PKGREP="$PKGBREAK" -NOLTO=1 ABHOST=optenv32 AUTOTOOLS_AFTER=( From d6701efb68211ff0cc2a5c17616fe27f37ca0579 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:09 +0800 Subject: [PATCH 348/722] libgpg-error+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libgpg-error+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libgpg-error+32/autobuild/defines b/runtime-optenv32/libgpg-error+32/autobuild/defines index 9933489e57e..232536d8655 100644 --- a/runtime-optenv32/libgpg-error+32/autobuild/defines +++ b/runtime-optenv32/libgpg-error+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32" PKGDES="Support library for GnuPG components (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 8e938fda6ecb6e965a68ab010a8c823e623f334a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:09 +0800 Subject: [PATCH 349/722] libid3tag+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libid3tag+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libid3tag+32/autobuild/defines b/runtime-optenv32/libid3tag+32/autobuild/defines index 600a4dadea5..54937a4353b 100644 --- a/runtime-optenv32/libid3tag+32/autobuild/defines +++ b/runtime-optenv32/libid3tag+32/autobuild/defines @@ -7,5 +7,4 @@ PKGDES="ID3 Tag Library (32-bit x86 runtime)" # FIXME: Missing required files. RECONF=0 -NOLTO=1 ABHOST=optenv32 From 045006d51a94c3b100025a4e26e823b28d4c9e16 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:09 +0800 Subject: [PATCH 350/722] libidn+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libidn+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libidn+32/autobuild/defines b/runtime-optenv32/libidn+32/autobuild/defines index 163dea5635d..f2db99e034c 100644 --- a/runtime-optenv32/libidn+32/autobuild/defines +++ b/runtime-optenv32/libidn+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32 gtk-doc" PKGDES="Implementation of the Stringprep, Punycode and IDNA specifications (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From d6b7b082a138d37bb5eacda7d359f6a9ec48e8cc Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:10 +0800 Subject: [PATCH 351/722] libiec61883+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libiec61883+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libiec61883+32/autobuild/defines b/runtime-optenv32/libiec61883+32/autobuild/defines index 61f639cbb04..64124f107e6 100644 --- a/runtime-optenv32/libiec61883+32/autobuild/defines +++ b/runtime-optenv32/libiec61883+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="libraw1394+32" BUILDDEP="devel-base+32" PKGDES="A higher level API for streaming DV, MPEG-2 and audio over Linux IEEE 1394 (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From db48b04e7da55826ff7ba8a546a0325bff750138 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:10 +0800 Subject: [PATCH 352/722] libjpeg-turbo+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libjpeg-turbo+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libjpeg-turbo+32/autobuild/defines b/runtime-optenv32/libjpeg-turbo+32/autobuild/defines index 2df730de161..e37baa54346 100644 --- a/runtime-optenv32/libjpeg-turbo+32/autobuild/defines +++ b/runtime-optenv32/libjpeg-turbo+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32" PKGDES="JPEG image codec with accelerated baseline compression and decompression (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 PKGBREAK="libjpeg+legacy+32<=6b-1" From 322937bbc31732b4d964830b9e6bf42bab7c2b68 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:10 +0800 Subject: [PATCH 353/722] libmad+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libmad+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libmad+32/autobuild/defines b/runtime-optenv32/libmad+32/autobuild/defines index 8eb3bf26ed9..896c61e21e6 100644 --- a/runtime-optenv32/libmad+32/autobuild/defines +++ b/runtime-optenv32/libmad+32/autobuild/defines @@ -7,5 +7,4 @@ PKGDES="LibMAD, an MPEG audio decoder (32-bit x86 runtime)" # FIXME: Missing required files, handling manually in prepare. RECONF=0 -NOLTO=1 ABHOST=optenv32 From 8fc3fde15f09c2ca1da4f9e7fc96d67340a2c567 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:10 +0800 Subject: [PATCH 354/722] libmd+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libmd+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libmd+32/autobuild/defines b/runtime-optenv32/libmd+32/autobuild/defines index 26e0a33aa18..f40bcf6cbc5 100644 --- a/runtime-optenv32/libmd+32/autobuild/defines +++ b/runtime-optenv32/libmd+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32" PKGDES="A message digest functions library (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 4b2e9979f2b8b935d27f1b58156db7bbc9dbb6d2 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:10 +0800 Subject: [PATCH 355/722] libmikmod+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libmikmod+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libmikmod+32/autobuild/defines b/runtime-optenv32/libmikmod+32/autobuild/defines index 24136c55c4d..ccf73849870 100644 --- a/runtime-optenv32/libmikmod+32/autobuild/defines +++ b/runtime-optenv32/libmikmod+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="pulseaudio+32" BUILDDEP="devel-base+32" PKGDES="Modular music player and library (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 80400135cfd31564e2efa481f8616e8af0cf6a06 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:10 +0800 Subject: [PATCH 356/722] libmms+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libmms+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libmms+32/autobuild/defines b/runtime-optenv32/libmms+32/autobuild/defines index 2cf53decec1..525d30d877c 100644 --- a/runtime-optenv32/libmms+32/autobuild/defines +++ b/runtime-optenv32/libmms+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32" PKGDES="MMS stream protocol library (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 80ba6e8beffd11d2525519b36341800f858a97a9 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:10 +0800 Subject: [PATCH 357/722] libmodplug+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libmodplug+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libmodplug+32/autobuild/defines b/runtime-optenv32/libmodplug+32/autobuild/defines index f7ae6b27e91..bb983a69bde 100644 --- a/runtime-optenv32/libmodplug+32/autobuild/defines +++ b/runtime-optenv32/libmodplug+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32" PKGDES="Libraries for mod music based on ModPlug (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 94001e26a7aa69646417bdfff798512d7f2e530b Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:10 +0800 Subject: [PATCH 358/722] libmpeg2+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libmpeg2+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libmpeg2+32/autobuild/defines b/runtime-optenv32/libmpeg2+32/autobuild/defines index bb700a3643a..c9851bb59e6 100644 --- a/runtime-optenv32/libmpeg2+32/autobuild/defines +++ b/runtime-optenv32/libmpeg2+32/autobuild/defines @@ -8,5 +8,4 @@ PKGDES="Library for decoding MPEG-1 and MPEG-2 video streams (32-bit x86 runtime # patch Autotools scripts). RECONF=0 -NOLTO=1 ABHOST=optenv32 From 7df7565a73b221d960c8c1a9e81eb1e87ccf0785 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:10 +0800 Subject: [PATCH 359/722] libnl+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libnl+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libnl+32/autobuild/defines b/runtime-optenv32/libnl+32/autobuild/defines index 50ba57a9d4e..29a5a5e39e7 100644 --- a/runtime-optenv32/libnl+32/autobuild/defines +++ b/runtime-optenv32/libnl+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32" PKGDES="APIs to netlink protocol based Linux Kernel interfaces (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From e4ddfa3056ca644e960e0c556104b4bbf4d7ffa4 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:10 +0800 Subject: [PATCH 360/722] libofa+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libofa+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libofa+32/autobuild/defines b/runtime-optenv32/libofa+32/autobuild/defines index 68043bdebef..f94d815aeb6 100644 --- a/runtime-optenv32/libofa+32/autobuild/defines +++ b/runtime-optenv32/libofa+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="fftw+32 curl+32 expat+32" BUILDDEP="devel-base+32" PKGDES="Libraries that implements MusicIP (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 # FIXME: Multi-level source. From 8532772ccd854118f4629b4e79ef6841c395ef16 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:10 +0800 Subject: [PATCH 361/722] libogg+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libogg+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libogg+32/autobuild/defines b/runtime-optenv32/libogg+32/autobuild/defines index e008047d4e2..d493b4ca7d1 100644 --- a/runtime-optenv32/libogg+32/autobuild/defines +++ b/runtime-optenv32/libogg+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32" PKGDES="Ogg analyzing library (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 019dce00296ef31c3cbbe86bcddbc9deb9b060f4 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:10 +0800 Subject: [PATCH 362/722] libpcap+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libpcap+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libpcap+32/autobuild/defines b/runtime-optenv32/libpcap+32/autobuild/defines index 5c6864217bc..2e8830372f9 100644 --- a/runtime-optenv32/libpcap+32/autobuild/defines +++ b/runtime-optenv32/libpcap+32/autobuild/defines @@ -5,5 +5,4 @@ BUILDDEP="devel-base+32" PKGDES="A system-independent interface for user-level packet capture (32-bit x86 runtime)" ABSHADOW=0 -NOLTO=1 ABHOST=optenv32 From 8d62dfa7b74ab3b5c1e3f6048167d572b11af8fe Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:10 +0800 Subject: [PATCH 363/722] libpng+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libpng+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libpng+32/autobuild/defines b/runtime-optenv32/libpng+32/autobuild/defines index 0d43281a8c9..57180c05e4c 100644 --- a/runtime-optenv32/libpng+32/autobuild/defines +++ b/runtime-optenv32/libpng+32/autobuild/defines @@ -15,5 +15,4 @@ RECONF=0 PKGBREAK="libpng-1.6+32" PKGREP="libpng-1.6+32" -NOLTO=1 ABHOST=optenv32 From 0b997543d45cd7090a40d680b80a1b43e61173c4 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:10 +0800 Subject: [PATCH 364/722] libraw1394+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libraw1394+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libraw1394+32/autobuild/defines b/runtime-optenv32/libraw1394+32/autobuild/defines index 71192bfdf97..218d0a3729f 100644 --- a/runtime-optenv32/libraw1394+32/autobuild/defines +++ b/runtime-optenv32/libraw1394+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32" PKGDES="API for the Linux IEEE1394 driver stack (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 6edc1dd39b23007988e8f74791115f505f301d76 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:10 +0800 Subject: [PATCH 365/722] libshout+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libshout+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libshout+32/autobuild/defines b/runtime-optenv32/libshout+32/autobuild/defines index 3ae971f80aa..977b070087b 100644 --- a/runtime-optenv32/libshout+32/autobuild/defines +++ b/runtime-optenv32/libshout+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="libogg+32 libvorbis+32 speex+32 libtheora+32" BUILDDEP="devel-base+32" PKGDES="MP3/Ogg Vorbis broadcast streaming library (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 7294cb73ed213a9031156461d4d799c9cd743c39 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:10 +0800 Subject: [PATCH 366/722] libsidplay+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libsidplay+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libsidplay+32/autobuild/defines b/runtime-optenv32/libsidplay+32/autobuild/defines index a27485f4560..ecff9bfffc7 100644 --- a/runtime-optenv32/libsidplay+32/autobuild/defines +++ b/runtime-optenv32/libsidplay+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32" PKGDES="A library for playing SID music files (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 4f5acf44ad6ae2724dab6c6b70c627f24fdf42cc Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:10 +0800 Subject: [PATCH 367/722] libsndfile+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libsndfile+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libsndfile+32/autobuild/defines b/runtime-optenv32/libsndfile+32/autobuild/defines index dc9da0f1768..4f34b6ffab8 100644 --- a/runtime-optenv32/libsndfile+32/autobuild/defines +++ b/runtime-optenv32/libsndfile+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="alsa-lib+32 flac+32 libvorbis+32" BUILDDEP="autogen devel-base+32" PKGDES="A C library for reading and writing files containing sampled sound (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From b65144a2120a20d734a5c1cb9aea280242dc6065 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:10 +0800 Subject: [PATCH 368/722] libssh+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libssh+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libssh+32/autobuild/defines b/runtime-optenv32/libssh+32/autobuild/defines index f15b5ddcc09..fd044c5fbc7 100644 --- a/runtime-optenv32/libssh+32/autobuild/defines +++ b/runtime-optenv32/libssh+32/autobuild/defines @@ -13,5 +13,4 @@ CMAKE_AFTER="-DWITH_GSSAPI=ON \ -DCOM_ERR_LIBRARY=/opt/32/lib/libcom_err.so \ -DZLIB_LIBRARY=/opt/32/lib/libz.so" -NOLTO=1 ABHOST=optenv32 From 08d5e94e3484994c354a542bc1082206f4b1f34a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:10 +0800 Subject: [PATCH 369/722] libssh2+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libssh2+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libssh2+32/autobuild/defines b/runtime-optenv32/libssh2+32/autobuild/defines index dc72bf75c85..d0c8e05edc2 100644 --- a/runtime-optenv32/libssh2+32/autobuild/defines +++ b/runtime-optenv32/libssh2+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="openssl+32 zlib+32" BUILDDEP="autoconf-archive devel-base+32" PKGDES="A client-side C library implementing the SSH2 protocol (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 831053912691a87a1b9907b844f1982cf293b4e1 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:10 +0800 Subject: [PATCH 370/722] libtasn1+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libtasn1+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libtasn1+32/autobuild/defines b/runtime-optenv32/libtasn1+32/autobuild/defines index 2d55aa31f61..692344f63a5 100644 --- a/runtime-optenv32/libtasn1+32/autobuild/defines +++ b/runtime-optenv32/libtasn1+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32 gtk-doc" PKGDES="A highly portable C library that encodes and decodes DER/BER data following an ASN.1 schema (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From ae5a4fb550a5c8f4306d15e764b5c650baaf0131 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:11 +0800 Subject: [PATCH 371/722] libthai+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libthai+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libthai+32/autobuild/defines b/runtime-optenv32/libthai+32/autobuild/defines index 77e6eb368f3..5c781c57029 100644 --- a/runtime-optenv32/libthai+32/autobuild/defines +++ b/runtime-optenv32/libthai+32/autobuild/defines @@ -7,5 +7,4 @@ PKGDES="Thai language support routines (32-bit x86 runtime)" # FIXME: configure.ac:25: error: AC_CONFIG_MACRO_DIR can only be used once RECONF=0 -NOLTO=1 ABHOST=optenv32 From 5fac10691b23ff7dfac2e1503cb002f67e7471ac Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:11 +0800 Subject: [PATCH 372/722] libtheora+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libtheora+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libtheora+32/autobuild/defines b/runtime-optenv32/libtheora+32/autobuild/defines index 503210b5513..ba72d0347ca 100644 --- a/runtime-optenv32/libtheora+32/autobuild/defines +++ b/runtime-optenv32/libtheora+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="libogg+32 libpng+32 libvorbis+32" BUILDDEP="devel-base+32" PKGDES="An open video codec developed by the Xiph.org (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 # FIXME: error: source directory already configured. From 6245e3d621f2fffeeb5ea07b6ae8c5a8dfc40feb Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:11 +0800 Subject: [PATCH 373/722] libtiff+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libtiff+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libtiff+32/autobuild/defines b/runtime-optenv32/libtiff+32/autobuild/defines index 5712c9bc112..1b121aa473e 100644 --- a/runtime-optenv32/libtiff+32/autobuild/defines +++ b/runtime-optenv32/libtiff+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32 libjpeg-turbo+32 x11-lib+32" BUILDDEP="devel-base+32" PKGDES="Library for manipulation of TIFF images (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 56209f375e8aead43bc13396bbf628ca301ddfa1 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:11 +0800 Subject: [PATCH 374/722] libtool+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libtool+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libtool+32/autobuild/defines b/runtime-optenv32/libtool+32/autobuild/defines index 44b0c90c102..830776bf053 100644 --- a/runtime-optenv32/libtool+32/autobuild/defines +++ b/runtime-optenv32/libtool+32/autobuild/defines @@ -10,5 +10,4 @@ PKGDES="GNU generic library support script (32-bit x86 runtime)" # risky. If you wish to bootstrap anyway, use the '--force' option. RECONF=0 -NOLTO=1 ABHOST=optenv32 From 3e5d66fa732eaebd8cc693096dc93d5fc37e1aed Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:11 +0800 Subject: [PATCH 375/722] libunwind+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libunwind+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libunwind+32/autobuild/defines b/runtime-optenv32/libunwind+32/autobuild/defines index d013d225445..454bee2ee59 100644 --- a/runtime-optenv32/libunwind+32/autobuild/defines +++ b/runtime-optenv32/libunwind+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32 xz+32" BUILDDEP="devel-base+32" PKGDES="Portable and efficient C programming interface (API) to determine the call-chain of a program (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From d43f4c740e4bc934e380ffa2cadf302214552e10 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:11 +0800 Subject: [PATCH 376/722] libusb+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libusb+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libusb+32/autobuild/defines b/runtime-optenv32/libusb+32/autobuild/defines index 42d44361e0d..5076c316892 100644 --- a/runtime-optenv32/libusb+32/autobuild/defines +++ b/runtime-optenv32/libusb+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="eudev+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="A library providing USB device access and manipulation support (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 1a8162c02c16fac64ba8c7dc94c99b77c31ddb65 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:11 +0800 Subject: [PATCH 377/722] libusb-compat+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libusb-compat+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libusb-compat+32/autobuild/defines b/runtime-optenv32/libusb-compat+32/autobuild/defines index 37477e29dfe..330032e7ed2 100644 --- a/runtime-optenv32/libusb-compat+32/autobuild/defines +++ b/runtime-optenv32/libusb-compat+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="libusb+32" BUILDDEP="devel-base+32" PKGDES="A compatibility layer needed by packages that have not been upgraded to the libusb-1.0 API (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 49d79e58fa818be2f6bc1c035487580c692aaa58 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:11 +0800 Subject: [PATCH 378/722] libva+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libva+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libva+32/autobuild/defines b/runtime-optenv32/libva+32/autobuild/defines index 2f935d8c549..b1005c8806f 100644 --- a/runtime-optenv32/libva+32/autobuild/defines +++ b/runtime-optenv32/libva+32/autobuild/defines @@ -7,5 +7,4 @@ PKGDES="Video Acceleration (VA) API for Linux (32-bit x86 runtime)" ABTYPE=meson MESON_AFTER="-Dwith_wayland=no" -NOLTO=1 ABHOST=optenv32 From e96036ed3b6cb04b205d719708a9f9feef169924 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:11 +0800 Subject: [PATCH 379/722] libva-intel-driver+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libva-intel-driver+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libva-intel-driver+32/autobuild/defines b/runtime-optenv32/libva-intel-driver+32/autobuild/defines index c0b609aeaf7..7b355b675f3 100644 --- a/runtime-optenv32/libva-intel-driver+32/autobuild/defines +++ b/runtime-optenv32/libva-intel-driver+32/autobuild/defines @@ -7,5 +7,4 @@ PKGDES="VA-API implementation for Intel G45 and HD Graphics family (32-bit x86 r ABTYPE=meson MESON_AFTER="-Dwith_wayland=no" -NOLTO=1 ABHOST=optenv32 From 5f64c403b6a77e0f654a041c53d40f6d9a83b3db Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:11 +0800 Subject: [PATCH 380/722] libva-vdpau-driver+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libva-vdpau-driver+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libva-vdpau-driver+32/autobuild/defines b/runtime-optenv32/libva-vdpau-driver+32/autobuild/defines index 8dc5f63223a..f183ca68d08 100644 --- a/runtime-optenv32/libva-vdpau-driver+32/autobuild/defines +++ b/runtime-optenv32/libva-vdpau-driver+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="libva+32 libvdpau+32" BUILDDEP="devel-base+32" PKGDES="VDPAU backend for VA-API (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From dc46d2c4193640ab9edb5ec106d7ae4b313ccea6 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:11 +0800 Subject: [PATCH 381/722] libvdpau+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libvdpau+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libvdpau+32/autobuild/defines b/runtime-optenv32/libvdpau+32/autobuild/defines index 3fe64d0f085..6ac2d34533b 100644 --- a/runtime-optenv32/libvdpau+32/autobuild/defines +++ b/runtime-optenv32/libvdpau+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="x11-lib+32" BUILDDEP="devel-base+32" PKGDES="Video Decode and Presentation API for Unix, from NVIDIA (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 6f9c70adcbecea61873c587c26a1b40001e78de7 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:11 +0800 Subject: [PATCH 382/722] libvisual+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libvisual+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libvisual+32/autobuild/defines b/runtime-optenv32/libvisual+32/autobuild/defines index 0787c942f2b..2a6d5c4ada4 100644 --- a/runtime-optenv32/libvisual+32/autobuild/defines +++ b/runtime-optenv32/libvisual+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32" PKGDES="Abstraction library that come between applications and audio visualization plugins (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 3d0d3ba01587f5913a2806c5fa7a028fbd3ae984 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:11 +0800 Subject: [PATCH 383/722] libvorbis+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libvorbis+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libvorbis+32/autobuild/defines b/runtime-optenv32/libvorbis+32/autobuild/defines index b696e39717d..000ee2589ce 100644 --- a/runtime-optenv32/libvorbis+32/autobuild/defines +++ b/runtime-optenv32/libvorbis+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="libogg+32" BUILDDEP="devel-base+32" PKGDES="Vorbis codec library (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From da1dc5a31b75302bda8be9791deb34c3238a1c0d Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:11 +0800 Subject: [PATCH 384/722] libvpx+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libvpx+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libvpx+32/autobuild/defines b/runtime-optenv32/libvpx+32/autobuild/defines index fe01e6c97b4..c5c2edab80f 100644 --- a/runtime-optenv32/libvpx+32/autobuild/defines +++ b/runtime-optenv32/libvpx+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32 nasm" PKGDES="VPx (8, 9, 10) Video Codec SDK (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 PKGBREAK="ffmpeg+32<=4.2.4 gst-plugins-good-1-0+32<=1.16.2 soxr+32<=0.1.3-2" From be9beb8e4c6224267ba5bc322b0b212f85024ea0 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:11 +0800 Subject: [PATCH 385/722] libwebp+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libwebp+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libwebp+32/autobuild/defines b/runtime-optenv32/libwebp+32/autobuild/defines index 9c527d8f436..4d8cde07264 100644 --- a/runtime-optenv32/libwebp+32/autobuild/defines +++ b/runtime-optenv32/libwebp+32/autobuild/defines @@ -10,5 +10,4 @@ AUTOTOOLS_AFTER=( '--enable-libwebpdecoder' ) -NOLTO=1 ABHOST=optenv32 From aefe08e0b28caa95e74686fd5d57600bd49561b3 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:11 +0800 Subject: [PATCH 386/722] libxau+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libxau+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libxau+32/autobuild/defines b/runtime-optenv32/libxau+32/autobuild/defines index 0c9ea82da57..1e588c422bc 100644 --- a/runtime-optenv32/libxau+32/autobuild/defines +++ b/runtime-optenv32/libxau+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32 x11-proto+32" BUILDDEP="devel-base+32" PKGDES="X11 Authorization Library (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 3856e809b98c4a10cdab03c57f2b8932397b22d3 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:11 +0800 Subject: [PATCH 387/722] libxcb+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libxcb+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libxcb+32/autobuild/defines b/runtime-optenv32/libxcb+32/autobuild/defines index 73c7577fa15..0e6ea130127 100644 --- a/runtime-optenv32/libxcb+32/autobuild/defines +++ b/runtime-optenv32/libxcb+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32 xcb-proto+32 libxau+32 libxdmcp+32 libxslt+32" BUILDDEP="devel-base+32 xcb-proto" PKGDES="XCB library (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 3456a07c7eaa543d6f6ffd23b8dc049b06ecf682 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:11 +0800 Subject: [PATCH 388/722] libxdmcp+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libxdmcp+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libxdmcp+32/autobuild/defines b/runtime-optenv32/libxdmcp+32/autobuild/defines index 45d67b95562..fb9dfc54cda 100644 --- a/runtime-optenv32/libxdmcp+32/autobuild/defines +++ b/runtime-optenv32/libxdmcp+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32 x11-proto+32" BUILDDEP="devel-base+32" PKGDES="The X Display Manager Control Protocol Library (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From dbb26587936e3d83b002a37b3b4d0f3adb9f302e Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:11 +0800 Subject: [PATCH 389/722] libxkbcommon+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libxkbcommon+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libxkbcommon+32/autobuild/defines b/runtime-optenv32/libxkbcommon+32/autobuild/defines index d7904c12100..64756f2692b 100644 --- a/runtime-optenv32/libxkbcommon+32/autobuild/defines +++ b/runtime-optenv32/libxkbcommon+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="libxcb+32 wayland+32 x11-lib+32" BUILDDEP="devel-base+32" PKGDES="Keyboard handling library using XKB data for X11 XCB clients (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 67d365199d217da8f48aa6bf077f02e1d7baf853 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:11 +0800 Subject: [PATCH 390/722] libxml2+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libxml2+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libxml2+32/autobuild/defines b/runtime-optenv32/libxml2+32/autobuild/defines index 7f9a0346725..b4ab76d8c62 100644 --- a/runtime-optenv32/libxml2+32/autobuild/defines +++ b/runtime-optenv32/libxml2+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="glibc+32 zlib+32 readline+32 ncurses+32 xz+32" BUILDDEP="devel-base+32" PKGDES="Utilities and libraries for parsing XMLs (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 AUTOTOOLS_AFTER=( From cc496211a0a9f9af3ab0d7b3ec61381f62f5d0cf Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:11 +0800 Subject: [PATCH 391/722] libxslt+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/libxslt+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/libxslt+32/autobuild/defines b/runtime-optenv32/libxslt+32/autobuild/defines index 8e9569ee418..75dccb46d54 100644 --- a/runtime-optenv32/libxslt+32/autobuild/defines +++ b/runtime-optenv32/libxslt+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="glibc+32 libxml2+32 libgcrypt+32 python-2+32" BUILDDEP="devel-base+32" PKGDES="C library for eXtensible Stylesheet Language Transformations (XSLT) (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 AUTOTOOLS_AFTER=( From 04ae7b7837ef042ccb1da3f66dbc55da8287f0ba Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:12 +0800 Subject: [PATCH 392/722] linux+api+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/linux+api+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/linux+api+32/autobuild/defines b/runtime-optenv32/linux+api+32/autobuild/defines index aa7cef51696..6484306e307 100644 --- a/runtime-optenv32/linux+api+32/autobuild/defines +++ b/runtime-optenv32/linux+api+32/autobuild/defines @@ -1,7 +1,6 @@ PKGNAME=linux+api+32 PKGSEC=devel PKGDES="Linux API Headers for glibc (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 ABSTRIP=0 From 0d8dce9e85d77d99823b250f7de7382339cf3ea9 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:12 +0800 Subject: [PATCH 393/722] llvm+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/llvm+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/llvm+32/autobuild/defines b/runtime-optenv32/llvm+32/autobuild/defines index 5c498a06b19..28f868b1103 100644 --- a/runtime-optenv32/llvm+32/autobuild/defines +++ b/runtime-optenv32/llvm+32/autobuild/defines @@ -5,7 +5,6 @@ BUILDDEP="devel-base+32" PKGDES="Low Level Virtual Machine Infrastructure (32-bit x86 runtime)" NOSTATIC=0 -NOLTO=1 PKGPROV="clang+32" ABHOST=optenv32 From b96aa7aba7c07777b7d8fbcfd0d3d425c6748e13 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:12 +0800 Subject: [PATCH 394/722] lm-sensors+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/lm-sensors+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/lm-sensors+32/autobuild/defines b/runtime-optenv32/lm-sensors+32/autobuild/defines index bba238b7336..d1734c8ce72 100644 --- a/runtime-optenv32/lm-sensors+32/autobuild/defines +++ b/runtime-optenv32/lm-sensors+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32" PKGDES="Collection of userspace tools for general SMBus access and hardware monitoring (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 56f4b407c5526d45963b1e86c922791da3d6c724 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:12 +0800 Subject: [PATCH 395/722] lzo+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/lzo+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/lzo+32/autobuild/defines b/runtime-optenv32/lzo+32/autobuild/defines index 5908c1b3359..94d8f867f91 100644 --- a/runtime-optenv32/lzo+32/autobuild/defines +++ b/runtime-optenv32/lzo+32/autobuild/defines @@ -6,7 +6,6 @@ PKGDES="LZO compression library (32-bit x86 runtime)" AB_FLAGS_O3=1 -NOLTO=1 ABHOST=optenv32 AUTOTOOLS_AFTER=( From 2c4c0524a12cebffc04c824cb7f358b1b9f2bfbb Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:12 +0800 Subject: [PATCH 396/722] mbedtls+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/mbedtls+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/mbedtls+32/autobuild/defines b/runtime-optenv32/mbedtls+32/autobuild/defines index b1b8482fec0..7d4bab69ee1 100644 --- a/runtime-optenv32/mbedtls+32/autobuild/defines +++ b/runtime-optenv32/mbedtls+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32" PKGDES="Portable cryptographic and SSL/TLS library (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 2ea184dd37cbc3c71bf2a92fcde9e6706663fd44 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:12 +0800 Subject: [PATCH 397/722] mjpegtools+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/mjpegtools+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/mjpegtools+32/autobuild/defines b/runtime-optenv32/mjpegtools+32/autobuild/defines index 752503e9955..c80fec6594c 100644 --- a/runtime-optenv32/mjpegtools+32/autobuild/defines +++ b/runtime-optenv32/mjpegtools+32/autobuild/defines @@ -9,5 +9,4 @@ AUTOTOOLS_AFTER=( '--without-gtk' ) -NOLTO=1 ABHOST=optenv32 From 0fcd367879b3f7eea52b0b9b23c77a98dc92e0ff Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:12 +0800 Subject: [PATCH 398/722] mp4v2+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/mp4v2+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/mp4v2+32/autobuild/defines b/runtime-optenv32/mp4v2+32/autobuild/defines index 8cbadff3f2f..12e5b05c2fc 100644 --- a/runtime-optenv32/mp4v2+32/autobuild/defines +++ b/runtime-optenv32/mp4v2+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32" PKGDES="Provides functions to read, create, and modify mp4 files (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From c0538ad0334a4ac07922288bb818e92c6df9b5d6 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:12 +0800 Subject: [PATCH 399/722] nasm+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/nasm+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/nasm+32/autobuild/defines b/runtime-optenv32/nasm+32/autobuild/defines index 706a345999b..b49ad029042 100644 --- a/runtime-optenv32/nasm+32/autobuild/defines +++ b/runtime-optenv32/nasm+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32" PKGDES="An 80x86 assembler designed for portability and modularity (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From f2c0343a4c0fc751b8e9371f3524281d0a67fccf Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:12 +0800 Subject: [PATCH 400/722] neon+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/neon+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/neon+32/autobuild/defines b/runtime-optenv32/neon+32/autobuild/defines index c85572ca882..edd69e7c307 100644 --- a/runtime-optenv32/neon+32/autobuild/defines +++ b/runtime-optenv32/neon+32/autobuild/defines @@ -14,5 +14,4 @@ AUTOTOOLS_AFTER=( # FIXME: Fails to install documentation if shadow build is enabled. ABSHADOW=0 -NOLTO=1 ABHOST=optenv32 From 619ab82bffddae9648a2cb9cb8119dee634321f8 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:12 +0800 Subject: [PATCH 401/722] nettle+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/nettle+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/nettle+32/autobuild/defines b/runtime-optenv32/nettle+32/autobuild/defines index b9a09ae029f..2d533ffef27 100644 --- a/runtime-optenv32/nettle+32/autobuild/defines +++ b/runtime-optenv32/nettle+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="gmp+32" BUILDDEP="devel-base+32" PKGDES="Low-level cryptographic library (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 2cc4fea3193eb80474765e5d5581d564981c4e6d Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:12 +0800 Subject: [PATCH 402/722] nspr+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/nspr+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/nspr+32/autobuild/defines b/runtime-optenv32/nspr+32/autobuild/defines index c30a81b8e10..4176259218a 100644 --- a/runtime-optenv32/nspr+32/autobuild/defines +++ b/runtime-optenv32/nspr+32/autobuild/defines @@ -8,5 +8,4 @@ AUTOTOOLS_AFTER="--disable-debug \ --enable-optimize \ --includedir=/opt/32/include/nspr" -NOLTO=1 ABHOST=optenv32 From e0ff68f76881d9365076a5b8fb1344f19f7d870c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:12 +0800 Subject: [PATCH 403/722] nss+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/nss+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/nss+32/autobuild/defines b/runtime-optenv32/nss+32/autobuild/defines index 27e4042e656..ce0ad4f2009 100644 --- a/runtime-optenv32/nss+32/autobuild/defines +++ b/runtime-optenv32/nss+32/autobuild/defines @@ -7,6 +7,5 @@ PKGDES="Netscape security library (32-bit x86 runtime)" NOSTATIC=0 NOPARALLEL=1 ABSTRIP=0 -NOLTO=1 ABHOST=optenv32 From c765e5ad494a2c5f9e0306e6d45e2371696df379 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:12 +0800 Subject: [PATCH 404/722] openal-soft+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/openal-soft+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/openal-soft+32/autobuild/defines b/runtime-optenv32/openal-soft+32/autobuild/defines index 88ad1881394..1293fa0c38a 100644 --- a/runtime-optenv32/openal-soft+32/autobuild/defines +++ b/runtime-optenv32/openal-soft+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="glibc+32 libsndfile+32" BUILDDEP="devel-base+32" PKGDES="A cross platform 3D audio library (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 CMAKE_AFTER=( From c233efddea836f3d849a8cb8bc585a2809accdab Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:12 +0800 Subject: [PATCH 405/722] opencore-amr+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/opencore-amr+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/opencore-amr+32/autobuild/defines b/runtime-optenv32/opencore-amr+32/autobuild/defines index 58e5e665491..a76b89aa8a3 100644 --- a/runtime-optenv32/opencore-amr+32/autobuild/defines +++ b/runtime-optenv32/opencore-amr+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32" PKGDES="Open source implementation of the Adaptive Multi Rate (AMR) speech codec (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 8f85fe8ea45469a750eb5ae84dc577ee1f35cd25 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:12 +0800 Subject: [PATCH 406/722] openjpeg-legacy+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/openjpeg-legacy+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/openjpeg-legacy+32/autobuild/defines b/runtime-optenv32/openjpeg-legacy+32/autobuild/defines index b7a38474bb7..5e8a0e19868 100644 --- a/runtime-optenv32/openjpeg-legacy+32/autobuild/defines +++ b/runtime-optenv32/openjpeg-legacy+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="zlib+32 lcms2+32 libpng+32" BUILDDEP="devel-base+32" PKGDES="An open source JPEG 2000 codec (legacy 1.x, 32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From a954cdc86c68328cd722b72c71eca91da8fbefa9 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:12 +0800 Subject: [PATCH 407/722] openldap+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/openldap+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/openldap+32/autobuild/defines b/runtime-optenv32/openldap+32/autobuild/defines index dcd330c7be5..0255ba5699c 100644 --- a/runtime-optenv32/openldap+32/autobuild/defines +++ b/runtime-optenv32/openldap+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="openssl+32" BUILDDEP="devel-base+32" PKGDES="Lightweight Directory Access Protocol (LDAP) client/server (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 AUTOTOOLS_AFTER=( From b70e4da487bf2046facef3993d1652b299a657ae Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:12 +0800 Subject: [PATCH 408/722] openssl-1.1+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/openssl-1.1+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/openssl-1.1+32/autobuild/defines b/runtime-optenv32/openssl-1.1+32/autobuild/defines index eb8b08498d5..1291568a255 100644 --- a/runtime-optenv32/openssl-1.1+32/autobuild/defines +++ b/runtime-optenv32/openssl-1.1+32/autobuild/defines @@ -7,5 +7,4 @@ PKGDES="Open Source toolkit for Secure Sockets Layer and Transport Layer Securit # FIXME: Installation may fail with parallelism. NOPARALLEL=1 -NOLTO=1 ABHOST=optenv32 From b2e5a5664fe9de52159b77a0d0b32b9ab87f16b9 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:12 +0800 Subject: [PATCH 409/722] opus+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/opus+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/opus+32/autobuild/defines b/runtime-optenv32/opus+32/autobuild/defines index 9d0b86177bd..4d63c5c59f4 100644 --- a/runtime-optenv32/opus+32/autobuild/defines +++ b/runtime-optenv32/opus+32/autobuild/defines @@ -8,5 +8,4 @@ AUTOTOOLS_AFTER=( '--enable-custom-modes' ) -NOLTO=1 ABHOST=optenv32 From b3413e09b3addb398f6bb1cd078645481b23ced6 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:12 +0800 Subject: [PATCH 410/722] orc+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/orc+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/orc+32/autobuild/defines b/runtime-optenv32/orc+32/autobuild/defines index 824e14310b5..a971187aae8 100644 --- a/runtime-optenv32/orc+32/autobuild/defines +++ b/runtime-optenv32/orc+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32" PKGDES="The Oild Runtime Compiler (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From a686e447bba97d6e7363eec367e4c1257caf93f9 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:13 +0800 Subject: [PATCH 411/722] p11-kit+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/p11-kit+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/p11-kit+32/autobuild/defines b/runtime-optenv32/p11-kit+32/autobuild/defines index e33588c144d..71195dbcc0d 100644 --- a/runtime-optenv32/p11-kit+32/autobuild/defines +++ b/runtime-optenv32/p11-kit+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="ca-certs libffi+32 libtasn1+32" BUILDDEP="devel-base+32" PKGDES="A way to load and enumerate PKCS #11 (a Cryptographic Token Interface Standard) modules (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 AUTOTOOLS_AFTER="--without-systemd \ From e9019e0677d4944f33853eb39daabd6ff14b3d15 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:13 +0800 Subject: [PATCH 412/722] pango+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/pango+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/pango+32/autobuild/defines b/runtime-optenv32/pango+32/autobuild/defines index 54c2d7ad291..03a1d32d50a 100644 --- a/runtime-optenv32/pango+32/autobuild/defines +++ b/runtime-optenv32/pango+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="cairo+32 fribidi+32 harfbuzz+32 libthai+32 x11-lib+32" BUILDDEP="devel-base+32" PKGDES="System for layout and rendering of internationalized text (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 MESON_AFTER=( From f7eed2008b5f1f26940e33d3c2a49b32f3d592d8 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:13 +0800 Subject: [PATCH 413/722] pcre+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/pcre+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/pcre+32/autobuild/defines b/runtime-optenv32/pcre+32/autobuild/defines index 79839a08651..518687e9c19 100644 --- a/runtime-optenv32/pcre+32/autobuild/defines +++ b/runtime-optenv32/pcre+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="zlib+32 bzip2+32 readline+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="Perl Compatible Regular Expression (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 AUTOTOOLS_AFTER=( From a3d22e06e54c41d1cc15b30cc3cb4f66905dbc74 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:13 +0800 Subject: [PATCH 414/722] pixman+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/pixman+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/pixman+32/autobuild/defines b/runtime-optenv32/pixman+32/autobuild/defines index 6d6695b2dd4..014ac3fd2fb 100644 --- a/runtime-optenv32/pixman+32/autobuild/defines +++ b/runtime-optenv32/pixman+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32 libpng+32" BUILDDEP="devel-base+32" PKGDES="Pixel manipulation library for X and Cairo (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 0d77e98205c2be455381688bfee29a8c5ae9ef15 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:13 +0800 Subject: [PATCH 415/722] popt+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/popt+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/popt+32/autobuild/defines b/runtime-optenv32/popt+32/autobuild/defines index 3143f961c48..37358412da6 100644 --- a/runtime-optenv32/popt+32/autobuild/defines +++ b/runtime-optenv32/popt+32/autobuild/defines @@ -6,5 +6,4 @@ PKGDES="A command line option parser (32-bit x86 runtime)" AUTOTOLS_AFTER="--enable-static" -NOLTO=1 ABHOST=optenv32 From 21f8cb3aaadbc7a1d04c61e6195c4124dbf1d3e3 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:13 +0800 Subject: [PATCH 416/722] portaudio+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/portaudio+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/portaudio+32/autobuild/defines b/runtime-optenv32/portaudio+32/autobuild/defines index 0cd4fc3a3cf..c008c1f6cea 100644 --- a/runtime-optenv32/portaudio+32/autobuild/defines +++ b/runtime-optenv32/portaudio+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="alsa-lib+32" BUILDDEP="devel-base+32" PKGDES="A free, cross platform, open source audio I/O library (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 19da58bf718a575129e466b1b4e34ffe4cddaa6e Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:13 +0800 Subject: [PATCH 417/722] proxychains-ng+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/proxychains-ng+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/proxychains-ng+32/autobuild/defines b/runtime-optenv32/proxychains-ng+32/autobuild/defines index 2ca64f6b194..e735ea2aa2a 100644 --- a/runtime-optenv32/proxychains-ng+32/autobuild/defines +++ b/runtime-optenv32/proxychains-ng+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32" PKGDES="A hook preloader that allows redirecting TCP traffics of existing dynamically linked programs through one or more SOCKS or HTTP proxies (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 PKGEPOCH=1 From adfb7dee18ec306f3506ac3f0f6108e1e1ff6f35 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:13 +0800 Subject: [PATCH 418/722] pulseaudio+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/pulseaudio+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/pulseaudio+32/autobuild/defines b/runtime-optenv32/pulseaudio+32/autobuild/defines index b707f66a302..c15d739bbc9 100644 --- a/runtime-optenv32/pulseaudio+32/autobuild/defines +++ b/runtime-optenv32/pulseaudio+32/autobuild/defines @@ -5,7 +5,6 @@ PKGDEP="alsa-lib+32 dbus+32 eudev+32 gdbm+32 json-c+32 libasyncns+32 \ BUILDDEP="devel-base+32" PKGDES="A featureful, general-purpose sound server (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 # Note: Using gdbm as tdb's waf build system would require nothing less From 160565fb19ae59ce8709d6059a6d3cf4fa8c50a5 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:13 +0800 Subject: [PATCH 419/722] recode+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/recode+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/recode+32/autobuild/defines b/runtime-optenv32/recode+32/autobuild/defines index 13fae3a4005..608749727f9 100644 --- a/runtime-optenv32/recode+32/autobuild/defines +++ b/runtime-optenv32/recode+32/autobuild/defines @@ -6,5 +6,4 @@ PKGDES="Converts file between various character sets and usages (32-bit x86 runt AUTOTOOLS_AFTER="PYTHON=/usr/bin/python3" -NOLTO=1 ABHOST=optenv32 From 8a010c10be92458df4129eb64a2dbab3a405641e Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:13 +0800 Subject: [PATCH 420/722] rtmpdump+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/rtmpdump+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/rtmpdump+32/autobuild/defines b/runtime-optenv32/rtmpdump+32/autobuild/defines index 77f30a0472b..86d5ba5dbf1 100644 --- a/runtime-optenv32/rtmpdump+32/autobuild/defines +++ b/runtime-optenv32/rtmpdump+32/autobuild/defines @@ -7,5 +7,4 @@ PKGDES="A tool to download RTMP streams (32-bit x86 runtime)" # FIXME: Installation fails with parallelism. NOPARALLEL=1 -NOLTO=1 ABHOST=optenv32 From dc5b9bdd654ad852024744f50e0cf55a5a00f858 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:13 +0800 Subject: [PATCH 421/722] rustc+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/rustc+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/rustc+32/autobuild/defines b/runtime-optenv32/rustc+32/autobuild/defines index 67281b4db47..a5e17d25f53 100644 --- a/runtime-optenv32/rustc+32/autobuild/defines +++ b/runtime-optenv32/rustc+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="gcc+32 llvm+32 rustc" BUILDDEP="devel-base+32" PKGDES="General purpose, multi-paradigm programming language (compiler and runtime, 32-bit x86 runtime)" -NOLTO=1 PKGPROV="rust+32" ABSPLITDBG=0 From ffba36da823564597bd6bdc2648d0297a67e20f2 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:13 +0800 Subject: [PATCH 422/722] s2tc+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/s2tc+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/s2tc+32/autobuild/defines b/runtime-optenv32/s2tc+32/autobuild/defines index cc38adcc9fa..f901317a8ac 100644 --- a/runtime-optenv32/s2tc+32/autobuild/defines +++ b/runtime-optenv32/s2tc+32/autobuild/defines @@ -6,5 +6,4 @@ PKGDES="S2TC texture compress library (32-bit x86 runtime)" PKGEPOCH=1 -NOLTO=1 ABHOST=optenv32 From 17754fabce46669182166e970edd49698b69db6c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:13 +0800 Subject: [PATCH 423/722] sbc+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/sbc+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/sbc+32/autobuild/defines b/runtime-optenv32/sbc+32/autobuild/defines index 18b10bef63d..dbd2aec8178 100644 --- a/runtime-optenv32/sbc+32/autobuild/defines +++ b/runtime-optenv32/sbc+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32 libsndfile+32" BUILDDEP="devel-base+32" PKGDES="Bluetooth SubBand Codec (SBC) library (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From bcc5f64bac381b479287a4d6565da96c8e2944f1 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:13 +0800 Subject: [PATCH 424/722] schroedinger+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/schroedinger+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/schroedinger+32/autobuild/defines b/runtime-optenv32/schroedinger+32/autobuild/defines index be9a86c2f91..4fd38ca2506 100644 --- a/runtime-optenv32/schroedinger+32/autobuild/defines +++ b/runtime-optenv32/schroedinger+32/autobuild/defines @@ -7,5 +7,4 @@ PKGDES="An implementation of the Dirac video codec in ANSI C code (32-bit x86 ru # FIXME: error: source directory already configured. ABSHADOW=0 -NOLTO=1 ABHOST=optenv32 From dbc7026e80160af46d724bcfaa8419ddd038516e Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:13 +0800 Subject: [PATCH 425/722] sdl+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/sdl+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/sdl+32/autobuild/defines b/runtime-optenv32/sdl+32/autobuild/defines index 16ed2845018..31f01f82205 100644 --- a/runtime-optenv32/sdl+32/autobuild/defines +++ b/runtime-optenv32/sdl+32/autobuild/defines @@ -9,5 +9,4 @@ AUTOTOOLS_AFTER=( '--with-x' ) -NOLTO=1 ABHOST=optenv32 From d7b48c70c9f427ee4b94927d98c596d395231492 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:13 +0800 Subject: [PATCH 426/722] sdl-ttf+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/sdl-ttf+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/sdl-ttf+32/autobuild/defines b/runtime-optenv32/sdl-ttf+32/autobuild/defines index 75978e5cbd6..310501e3dbe 100644 --- a/runtime-optenv32/sdl-ttf+32/autobuild/defines +++ b/runtime-optenv32/sdl-ttf+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="sdl+32 freetype+32" BUILDDEP="devel-base+32" PKGDES="A library that allows you to use TrueType fonts in your SDL applications (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 AUTOTOOLS_AFTER="--with-freetype-prefix=/opt/32" From f2682a63e0e69d29f911789c08bb058b954d000f Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:13 +0800 Subject: [PATCH 427/722] smpeg+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/smpeg+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/smpeg+32/autobuild/defines b/runtime-optenv32/smpeg+32/autobuild/defines index c303c25eab2..3dd8b39ead5 100644 --- a/runtime-optenv32/smpeg+32/autobuild/defines +++ b/runtime-optenv32/smpeg+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="sdl+32" BUILDDEP="devel-base+32" PKGDES="SDL MPEG Player Library (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From 856b2b71033640cb6ad66d0c0a524365656915c3 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:13 +0800 Subject: [PATCH 428/722] soundtouch+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/soundtouch+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/soundtouch+32/autobuild/defines b/runtime-optenv32/soundtouch+32/autobuild/defines index 3105366e0dc..cba9114c7ac 100644 --- a/runtime-optenv32/soundtouch+32/autobuild/defines +++ b/runtime-optenv32/soundtouch+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="gcc+32" BUILDDEP="devel-base+32" PKGDES="An audio processing library (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From a6f41c7639631e2af2bc50651a508dc6a8d4c6d3 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:13 +0800 Subject: [PATCH 429/722] soxr+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/soxr+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/soxr+32/autobuild/defines b/runtime-optenv32/soxr+32/autobuild/defines index d882574fa30..44e84d297c8 100644 --- a/runtime-optenv32/soxr+32/autobuild/defines +++ b/runtime-optenv32/soxr+32/autobuild/defines @@ -13,5 +13,4 @@ CMAKE_AFTER="-DBUILD_EXAMPLES=OFF \ -DWITH_OPENMP=ON \ -DWITH_PFFFT=ON \ -DWITH_SIMD=ON" -NOLTO=1 ABHOST=optenv32 From 41359e2930b3570c7677104c077eb2dfa17f93d3 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:13 +0800 Subject: [PATCH 430/722] speex+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/speex+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/speex+32/autobuild/defines b/runtime-optenv32/speex+32/autobuild/defines index 4a67feed26c..b389352ac6c 100644 --- a/runtime-optenv32/speex+32/autobuild/defines +++ b/runtime-optenv32/speex+32/autobuild/defines @@ -6,5 +6,4 @@ PKGDES="An audio compression format designed especially for speech (32-bit x86 r PKGEPOCH=1 -NOLTO=1 ABHOST=optenv32 From 290658d6f0e776d5d8899929a9053a88e6db7dff Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:14 +0800 Subject: [PATCH 431/722] spirv-llvm-translator+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/spirv-llvm-translator+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/spirv-llvm-translator+32/autobuild/defines b/runtime-optenv32/spirv-llvm-translator+32/autobuild/defines index 7fcf6826234..8e71fe125f1 100644 --- a/runtime-optenv32/spirv-llvm-translator+32/autobuild/defines +++ b/runtime-optenv32/spirv-llvm-translator+32/autobuild/defines @@ -10,5 +10,4 @@ CMAKE_AFTER=( '-DLLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR=/opt/32/include/spirv/unified1' ) -NOLTO=1 ABHOST=optenv32 From 7e292133771c6d316648c47f903f5fc2dabe36fe Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:14 +0800 Subject: [PATCH 432/722] spirv-tools+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/spirv-tools+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/spirv-tools+32/autobuild/defines b/runtime-optenv32/spirv-tools+32/autobuild/defines index 72bffaaf392..46cfce52de3 100644 --- a/runtime-optenv32/spirv-tools+32/autobuild/defines +++ b/runtime-optenv32/spirv-tools+32/autobuild/defines @@ -10,7 +10,6 @@ CMAKE_AFTER="-DSPIRV-Headers_SOURCE_DIR=/opt/32 \ -DPYTHON_EXECUTABLE=/usr/bin/python${ABPY3VER}" NOSTATIC=0 -NOLTO=1 ABHOST=optenv32 PKGEPOCH=1 From 2af378772f40143cb2ab229f5cef61c98434f6f5 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:14 +0800 Subject: [PATCH 433/722] sqlite+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/sqlite+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/sqlite+32/autobuild/defines b/runtime-optenv32/sqlite+32/autobuild/defines index 9046fa05048..67bba630476 100644 --- a/runtime-optenv32/sqlite+32/autobuild/defines +++ b/runtime-optenv32/sqlite+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="readline+32 tcl+32" BUILDDEP="devel-base+32" PKGDES="A full-featured and self-contained SQL database engine (32-bit x86 runtime)" -NOLTO=1 ABSHADOW=0 NOPARALLEL=1 ABHOST=optenv32 From 5f935a060d6fce1b4975a47d83089e4ef79408c2 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:14 +0800 Subject: [PATCH 434/722] taglib+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/taglib+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/taglib+32/autobuild/defines b/runtime-optenv32/taglib+32/autobuild/defines index 6497162520d..03a1fe12cf4 100644 --- a/runtime-optenv32/taglib+32/autobuild/defines +++ b/runtime-optenv32/taglib+32/autobuild/defines @@ -13,5 +13,4 @@ CMAKE_AFTER=( '-DHAVE_BOOST_ZLIB=NO' ) -NOLTO=1 ABHOST=optenv32 From e8fea20c40c66468dbf478c1e19d44c5cf2454a9 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:14 +0800 Subject: [PATCH 435/722] tcl+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/tcl+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/tcl+32/autobuild/defines b/runtime-optenv32/tcl+32/autobuild/defines index 5c3b1f310c0..722095deb3d 100644 --- a/runtime-optenv32/tcl+32/autobuild/defines +++ b/runtime-optenv32/tcl+32/autobuild/defines @@ -5,5 +5,4 @@ BUILDDEP="devel-base+32" PKGDES="Tool Command Lanuage (32-bit x86 runtime)" NOSTATIC=0 -NOLTO=1 ABHOST=optenv32 From 72e4e1184a245fce54eda8168e44dbce62f381c9 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:14 +0800 Subject: [PATCH 436/722] tk+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/tk+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/tk+32/autobuild/defines b/runtime-optenv32/tk+32/autobuild/defines index 3f511e01a66..eb890f22037 100644 --- a/runtime-optenv32/tk+32/autobuild/defines +++ b/runtime-optenv32/tk+32/autobuild/defines @@ -5,5 +5,4 @@ BUILDDEP="devel-base+32" PKGDES="Tool Command Lanuage Toolkit (32-bit x86 runtime)" NOSTATIC=0 -NOLTO=1 ABHOST=optenv32 From a16e95e189a293d6c53eaf9b7f60b9f7ee4b5a50 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:14 +0800 Subject: [PATCH 437/722] twolame+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/twolame+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/twolame+32/autobuild/defines b/runtime-optenv32/twolame+32/autobuild/defines index f88c7882f41..20de640addc 100644 --- a/runtime-optenv32/twolame+32/autobuild/defines +++ b/runtime-optenv32/twolame+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="libsndfile+32" BUILDDEP="devel-base+32" PKGDES="An optimized MPEG Audio Layer 2 encoder (32-bit x86 runtime)" -NOLTO=1 ABHOST=noarch # FIXME: Fails with "source directory already configured." From 376dc72f17a0131fd0a1592a7db4bebff3109bad Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:14 +0800 Subject: [PATCH 438/722] util-linux+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/util-linux+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/util-linux+32/autobuild/defines b/runtime-optenv32/util-linux+32/autobuild/defines index adf59bc6db5..c7cb8e340db 100644 --- a/runtime-optenv32/util-linux+32/autobuild/defines +++ b/runtime-optenv32/util-linux+32/autobuild/defines @@ -4,7 +4,6 @@ PKGDEP="glibc+32 ncurses+32 sqlite+32 zlib+32" BUILDDEP="devel-base+32" PKGDES="Utilities and management tools for Linux (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 AUTOTOOLS_AFTER=( From d1ad45c2d5c9ed51b590cc8a1565000f319d2768 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:14 +0800 Subject: [PATCH 439/722] v4l-utils+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/v4l-utils+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/v4l-utils+32/autobuild/defines b/runtime-optenv32/v4l-utils+32/autobuild/defines index 1af13cc3555..f4dcb366126 100644 --- a/runtime-optenv32/v4l-utils+32/autobuild/defines +++ b/runtime-optenv32/v4l-utils+32/autobuild/defines @@ -8,5 +8,4 @@ AUTOTOOLS_AFTER=( '--disable-bpf' ) -NOLTO=1 ABHOST=optenv32 From 9a229cb61f9f9a478cfae0bc070789317e4c5d2f Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:14 +0800 Subject: [PATCH 440/722] vkd3d+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/vkd3d+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/vkd3d+32/autobuild/defines b/runtime-optenv32/vkd3d+32/autobuild/defines index 048d7c8e0bd..7ff0bb63fbc 100644 --- a/runtime-optenv32/vkd3d+32/autobuild/defines +++ b/runtime-optenv32/vkd3d+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32 vulkan-loader+32" BUILDDEP="devel-base+32 spirv-headers vulkan-headers+32" PKGDES="Direct3D 12 to Vulkan translation library By WineHQ (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From f31fe60c34c1e0bb599af490c14ebfee1d3f9850 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:14 +0800 Subject: [PATCH 441/722] vulkan-loader+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/vulkan-loader+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/vulkan-loader+32/autobuild/defines b/runtime-optenv32/vulkan-loader+32/autobuild/defines index 228203aeeaa..29d53da5b34 100644 --- a/runtime-optenv32/vulkan-loader+32/autobuild/defines +++ b/runtime-optenv32/vulkan-loader+32/autobuild/defines @@ -16,5 +16,4 @@ CMAKE_AFTER="-DBUILD_LOADER=ON \ PKGBREAK="vulkan+32<=1.1.70.1-3" PKGREP="vulkan+32<=1.1.70.1-3" -NOLTO=1 ABHOST=optenv32 From 90a1cbb3d123a65780812a2757bc00fa5063eaee Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:14 +0800 Subject: [PATCH 442/722] vulkan-tools+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/vulkan-tools+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/vulkan-tools+32/autobuild/defines b/runtime-optenv32/vulkan-tools+32/autobuild/defines index 23bf419abac..99630b36b5b 100644 --- a/runtime-optenv32/vulkan-tools+32/autobuild/defines +++ b/runtime-optenv32/vulkan-tools+32/autobuild/defines @@ -19,5 +19,4 @@ CMAKE_AFTER="-DBUILD_CUBE=ON \ PKGBREAK="vulkan+32<=1.1.70.1-3" PKGREP="vulkan+32<=1.1.70.1-3" -NOLTO=1 ABHOST=optenv32 From 96ae09ea7a4aa7ab5baa50145cd716c93941d60f Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:14 +0800 Subject: [PATCH 443/722] wavpack+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/wavpack+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/wavpack+32/autobuild/defines b/runtime-optenv32/wavpack+32/autobuild/defines index f8cedaa569b..82b5fe63bf7 100644 --- a/runtime-optenv32/wavpack+32/autobuild/defines +++ b/runtime-optenv32/wavpack+32/autobuild/defines @@ -6,5 +6,4 @@ PKGDES="Audio compression format with lossless, lossy and hybrid compression mod AUTOTOOLS_AFTER="--disable-asm" -NOLTO=1 ABHOST=noarch From ca84d71edfa108922be62d8b4fb5ce070e623141 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:14 +0800 Subject: [PATCH 444/722] wayland+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/wayland+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/wayland+32/autobuild/defines b/runtime-optenv32/wayland+32/autobuild/defines index 8967929081d..242fa70bc96 100644 --- a/runtime-optenv32/wayland+32/autobuild/defines +++ b/runtime-optenv32/wayland+32/autobuild/defines @@ -7,7 +7,6 @@ PKGDES="A display server to replace X.Org (32-bit x86 runtime)" ABHOST=optenv32 ABTYPE=meson -NOLTO=1 MESON_AFTER=( '-Ddocumentation=false' '-Dtests=false' From a2897e6b18b0c769a8d24441c69ab3135fa9f8ef Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:14 +0800 Subject: [PATCH 445/722] wildmidi+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/wildmidi+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/wildmidi+32/autobuild/defines b/runtime-optenv32/wildmidi+32/autobuild/defines index 206943d28fe..1074e359e50 100644 --- a/runtime-optenv32/wildmidi+32/autobuild/defines +++ b/runtime-optenv32/wildmidi+32/autobuild/defines @@ -8,5 +8,4 @@ CMAKE_AFTER=( '-DALSA_LIBRARY=/opt/32/lib/libasound.so.2' ) -NOLTO=1 ABHOST=optenv32 From 18ebacc18470cb88a7d1d047d9d53aa404249131 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:14 +0800 Subject: [PATCH 446/722] x11-lib+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/x11-lib+32/autobuild/defines | 1 - runtime-optenv32/x11-lib+32/autobuild/defines.stage2 | 1 - 2 files changed, 2 deletions(-) diff --git a/runtime-optenv32/x11-lib+32/autobuild/defines b/runtime-optenv32/x11-lib+32/autobuild/defines index 52e54e8510a..787ee1e1617 100644 --- a/runtime-optenv32/x11-lib+32/autobuild/defines +++ b/runtime-optenv32/x11-lib+32/autobuild/defines @@ -7,5 +7,4 @@ PKGDES="X11 runtime libraries (32-bit x86 runtime)" PKGREP="libxp" PKGPROV="libxp" -NOLTO=1 ABHOST=optenv32 diff --git a/runtime-optenv32/x11-lib+32/autobuild/defines.stage2 b/runtime-optenv32/x11-lib+32/autobuild/defines.stage2 index 2896173c520..abed0327e07 100644 --- a/runtime-optenv32/x11-lib+32/autobuild/defines.stage2 +++ b/runtime-optenv32/x11-lib+32/autobuild/defines.stage2 @@ -7,5 +7,4 @@ PKGDES="X11 runtime libraries (32-bit x86 runtime)" PKGREP="libxp" PKGPROV="libxp" -NOLTO=1 ABHOST=optenv32 From b5f8d6989f940552d75906e7f905e3ee25975877 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:14 +0800 Subject: [PATCH 447/722] x11-proto+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/x11-proto+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/x11-proto+32/autobuild/defines b/runtime-optenv32/x11-proto+32/autobuild/defines index 92e9e36bd1e..4c00b4f854a 100644 --- a/runtime-optenv32/x11-proto+32/autobuild/defines +++ b/runtime-optenv32/x11-proto+32/autobuild/defines @@ -9,7 +9,6 @@ MESON_AFTER=( '-Dlegacy=true' ) -NOLTO=1 ABHOST=optenv32 # Note: Header only. From 4bd543a38995fe67e5752e2b31388159da9975aa Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:14 +0800 Subject: [PATCH 448/722] x264+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/x264+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/x264+32/autobuild/defines b/runtime-optenv32/x264+32/autobuild/defines index e5bea78ec6d..eb05336f6da 100644 --- a/runtime-optenv32/x264+32/autobuild/defines +++ b/runtime-optenv32/x264+32/autobuild/defines @@ -10,5 +10,4 @@ RECONF=0 ABSHADOW=0 AUTOTOOLS_AFTER="--enable-shared --enable-pic" -NOLTO=1 ABHOST=optenv32 From d19329755c8de7fb95372b29a69fb27d252cbc10 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:15 +0800 Subject: [PATCH 449/722] x265+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/x265+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/x265+32/autobuild/defines b/runtime-optenv32/x265+32/autobuild/defines index 23d2e8888c4..337cce7f6ab 100644 --- a/runtime-optenv32/x265+32/autobuild/defines +++ b/runtime-optenv32/x265+32/autobuild/defines @@ -4,5 +4,4 @@ PKGDEP="glibc+32" BUILDDEP="devel-base+32 yasm" PKGDES="Open source H265/HEVC video encoder (32-bit x86 runtime)" -NOLTO=1 ABHOST=optenv32 From ffe8442612a7296e698d5c394bb6fb20142fa603 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:15 +0800 Subject: [PATCH 450/722] xvidcore+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/xvidcore+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/xvidcore+32/autobuild/defines b/runtime-optenv32/xvidcore+32/autobuild/defines index b5630f740aa..35999f1b5a5 100644 --- a/runtime-optenv32/xvidcore+32/autobuild/defines +++ b/runtime-optenv32/xvidcore+32/autobuild/defines @@ -6,5 +6,4 @@ PKGDES="Open source MPEG-4 video codec (32-bit x86 runtime)" ABSHADOW=0 -NOLTO=1 ABHOST=optenv32 From ca366e7c56775c573661459eeb7ad56c9ce0995f Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:15 +0800 Subject: [PATCH 451/722] zlib+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/zlib+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/zlib+32/autobuild/defines b/runtime-optenv32/zlib+32/autobuild/defines index cb4b78828c9..f507580a807 100644 --- a/runtime-optenv32/zlib+32/autobuild/defines +++ b/runtime-optenv32/zlib+32/autobuild/defines @@ -4,7 +4,6 @@ PKGSEC=libs PKGDEP="glibc+32" BUILDDEP="devel-base+32" -NOLTO=1 AB_FLAGS_O3=1 ABHOST=optenv32 From f9a7a53f1b86a5a250b4823167cc85014b77e59f Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 00:12:15 +0800 Subject: [PATCH 452/722] zstd+32: enable LTO The toolchain should now be able to handle LTO. --- runtime-optenv32/zstd+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/zstd+32/autobuild/defines b/runtime-optenv32/zstd+32/autobuild/defines index ff63b475c5b..ceac441811f 100644 --- a/runtime-optenv32/zstd+32/autobuild/defines +++ b/runtime-optenv32/zstd+32/autobuild/defines @@ -8,5 +8,4 @@ AB_FLAGS_O3=1 AB_FLAGS_SPECS=0 AB_FLAGS_PIC=1 -NOLTO=1 ABHOST=optenv32 From e6f9a040bdcedd7e29624576883b085e31320ce5 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 01:13:12 +0800 Subject: [PATCH 453/722] libxcb+32: use xcb-proto --- runtime-optenv32/libxcb+32/autobuild/defines | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/libxcb+32/autobuild/defines b/runtime-optenv32/libxcb+32/autobuild/defines index 0e6ea130127..5a448b9419b 100644 --- a/runtime-optenv32/libxcb+32/autobuild/defines +++ b/runtime-optenv32/libxcb+32/autobuild/defines @@ -1,7 +1,7 @@ PKGNAME=libxcb+32 PKGSEC=libs -PKGDEP="glibc+32 xcb-proto+32 libxau+32 libxdmcp+32 libxslt+32" -BUILDDEP="devel-base+32 xcb-proto" +PKGDEP="glibc+32 xcb-proto libxau+32 libxdmcp+32 libxslt+32" +BUILDDEP="devel-base+32" PKGDES="XCB library (32-bit x86 runtime)" ABHOST=optenv32 From c212e282011f6718bdd376bdd957559575a978ab Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 02:01:36 +0800 Subject: [PATCH 454/722] libpng+32: make room for transitional libpng-1.6+32 --- runtime-optenv32/libpng+32/autobuild/defines | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/libpng+32/autobuild/defines b/runtime-optenv32/libpng+32/autobuild/defines index 57180c05e4c..472c5456e77 100644 --- a/runtime-optenv32/libpng+32/autobuild/defines +++ b/runtime-optenv32/libpng+32/autobuild/defines @@ -12,7 +12,7 @@ PKGEPOCH=2 # the --enable-maintainer-mode option. RECONF=0 -PKGBREAK="libpng-1.6+32" -PKGREP="libpng-1.6+32" +PKGBREAK="libpng-1.6+32<=1:1.6.37" +PKGREP="libpng-1.6+32<=1:1.6.37" ABHOST=optenv32 From 5331e84d8212152b5765b3beeb62d3204917414f Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 02:02:06 +0800 Subject: [PATCH 455/722] libpng-1.6+32: new, transitional --- groups/optenv32 | 1 + runtime-optenv32/libpng-1.6+32/autobuild/defines | 12 ++++++++++++ runtime-optenv32/libpng-1.6+32/spec | 2 ++ 3 files changed, 15 insertions(+) create mode 100644 runtime-optenv32/libpng-1.6+32/autobuild/defines create mode 100644 runtime-optenv32/libpng-1.6+32/spec diff --git a/groups/optenv32 b/groups/optenv32 index eba8cac4638..f241b211784 100644 --- a/groups/optenv32 +++ b/groups/optenv32 @@ -36,6 +36,7 @@ runtime-optenv32/glib+32 runtime-optenv32/dbus+32 runtime-optenv32/icu+32 runtime-optenv32/x11-lib+32 +runtime-optenv32/libpng-1.6+32 runtime-optenv32/harfbuzz+32 runtime-optenv32/freetype+32 runtime-optenv32/fontconfig+32 diff --git a/runtime-optenv32/libpng-1.6+32/autobuild/defines b/runtime-optenv32/libpng-1.6+32/autobuild/defines new file mode 100644 index 00000000000..69e2d379e66 --- /dev/null +++ b/runtime-optenv32/libpng-1.6+32/autobuild/defines @@ -0,0 +1,12 @@ +PKGNAME=libpng-1.6+32 +PKGSEC=libs +PKGDEP="libpng+32" +PKGDES="Transitional package for libpng+32 (32-bit x86 runtime)" + +PKGEPOCH=2 + +ABHOST=optenv32 +# Note: No arch-specific content +ABSPLITDBG=0 + +ABTYPE=dummy diff --git a/runtime-optenv32/libpng-1.6+32/spec b/runtime-optenv32/libpng-1.6+32/spec new file mode 100644 index 00000000000..16b35030be7 --- /dev/null +++ b/runtime-optenv32/libpng-1.6+32/spec @@ -0,0 +1,2 @@ +VER=0 +DUMMYSRC=1 From a0d87ad70803d07461da825371a1ac067632fc1c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 02:39:30 +0800 Subject: [PATCH 456/722] libunwind+32: update to 1.8.1 This version fixes build against newer Linux API headers and glibc. --- runtime-optenv32/libunwind+32/spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/runtime-optenv32/libunwind+32/spec b/runtime-optenv32/libunwind+32/spec index 56bf8166065..66557ef0aca 100644 --- a/runtime-optenv32/libunwind+32/spec +++ b/runtime-optenv32/libunwind+32/spec @@ -1,4 +1,4 @@ -VER=1.6.2 -SRCS="https://download.savannah.gnu.org/releases/libunwind/libunwind-$VER.tar.gz" -CHKSUMS="sha256::4a6aec666991fb45d0889c44aede8ad6eb108071c3554fcdff671f9c94794976" +VER=1.8.1 +SRCS="https://github.com/libunwind/libunwind/releases/download/v$VER/libunwind-$VER.tar.gz" +CHKSUMS="sha256::ddf0e32dd5fafe5283198d37e4bf9decf7ba1770b6e7e006c33e6df79e6a6157" CHKUPDATE="anitya::id=1748" From 99b7661ae648edd4964dfd6236c54f40e065a680 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 13:48:21 +0800 Subject: [PATCH 457/722] gtk-3+32: update to 3.24.43 This version fixes a build failure against newer GLib versions. --- runtime-optenv32/gtk-3+32/spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/gtk-3+32/spec b/runtime-optenv32/gtk-3+32/spec index d6d86cfcab8..a86dc045dd9 100644 --- a/runtime-optenv32/gtk-3+32/spec +++ b/runtime-optenv32/gtk-3+32/spec @@ -1,4 +1,4 @@ -VER=3.24.38 +VER=3.24.43 SRCS="https://download.gnome.org/sources/gtk+/${VER:0:4}/gtk+-$VER.tar.xz" -CHKSUMS="sha256::ce11decf018b25bdd8505544a4f87242854ec88be054d9ade5f3a20444dd8ee7" +CHKSUMS="sha256::7e04f0648515034b806b74ae5d774d87cffb1a2a96c468cb5be476d51bf2f3c7" CHKUPDATE="anitya::id=10018" From c402ef024d555bb30025cc91083fa0614f55ba00 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 13:49:05 +0800 Subject: [PATCH 458/722] llvm+32: disable LTO Lest it fails to link against its own runtime. --- runtime-optenv32/llvm+32/autobuild/defines | 1 + 1 file changed, 1 insertion(+) diff --git a/runtime-optenv32/llvm+32/autobuild/defines b/runtime-optenv32/llvm+32/autobuild/defines index 28f868b1103..5c498a06b19 100644 --- a/runtime-optenv32/llvm+32/autobuild/defines +++ b/runtime-optenv32/llvm+32/autobuild/defines @@ -5,6 +5,7 @@ BUILDDEP="devel-base+32" PKGDES="Low Level Virtual Machine Infrastructure (32-bit x86 runtime)" NOSTATIC=0 +NOLTO=1 PKGPROV="clang+32" ABHOST=optenv32 From 832da5f3b674fe16c48fdb528fe9bd1a6f0159bd Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 13:49:23 +0800 Subject: [PATCH 459/722] mesa+32: use GCC as it is unnecessary to use llvm --- runtime-optenv32/mesa+32/autobuild/defines | 2 -- 1 file changed, 2 deletions(-) diff --git a/runtime-optenv32/mesa+32/autobuild/defines b/runtime-optenv32/mesa+32/autobuild/defines index 05128c7bd75..7df7af9b729 100644 --- a/runtime-optenv32/mesa+32/autobuild/defines +++ b/runtime-optenv32/mesa+32/autobuild/defines @@ -15,8 +15,6 @@ AB_FLAGS_O3=1 NOLTO=1 ABHOST=optenv32 -USECLANG=1 - # Note: Intel Ray Tracing is only supported for x86_64. MESON_AFTER=( '-Ddri-drivers-path=/opt/32/lib/xorg/modules/dri' From 1ed6906d41575551bf9498bb5e30c7c8f3eab271 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 16:50:21 +0800 Subject: [PATCH 460/722] db+32: drop, orphaned --- groups/optenv32 | 1 - .../32subsystem/autobuild/defines | 2 +- runtime-optenv32/db+32/autobuild/build | 24 - runtime-optenv32/db+32/autobuild/defines | 10 - .../patches/0001-Fedora-libdb-multiarch.patch | 12 - .../0007-Fedora-db-4.6.21-1.85-compat.patch | 14 - ...008-Fedora-db-4.5.20-jni-include-dir.patch | 12 - .../0009-Fedora-007-mt19937db.c_license.patch | 49 -- ...ora-db-5.3.21-memp_stat-upstream-fix.patch | 183 ----- .../0011-Fedora-db-5.3.21-mutex_leak.patch | 718 ----------------- .../0012-Fedora-db-5.3.28-lemon_hash.patch | 20 - ...-Fedora-db-5.3.28-condition_variable.patch | 759 ------------------ ...ora-db-5.3.28-condition-variable-ppc.patch | 135 ---- .../0016-Fedora-db-5.3.28-cwd-db_config.patch | 11 - ...edora-libdb-5.3.21-region-size-check.patch | 39 - .../0018-Fedora-checkpoint-opd-deadlock.patch | 14 - ...ra-db-5.3.28-atomic_compare_exchange.patch | 20 - .../patches/0020-Fedora-libdb-cbd-race.patch | 110 --- .../patches/0021-Fedora-libdb-limit-cpu.patch | 12 - ...0022-Fedora-libdb-5.3.21-trickle_cpu.patch | 150 ---- .../0023-Fedora-db-5.3.28_cve-2019-2708.patch | 694 ---------------- ...Fedora-db-5.3.28-mmap-high-cpu-usage.patch | 19 - .../0025-Debian-versioned_symbols.patch | 21 - runtime-optenv32/db+32/spec | 5 - 24 files changed, 1 insertion(+), 3033 deletions(-) delete mode 100644 runtime-optenv32/db+32/autobuild/build delete mode 100644 runtime-optenv32/db+32/autobuild/defines delete mode 100644 runtime-optenv32/db+32/autobuild/patches/0001-Fedora-libdb-multiarch.patch delete mode 100644 runtime-optenv32/db+32/autobuild/patches/0007-Fedora-db-4.6.21-1.85-compat.patch delete mode 100644 runtime-optenv32/db+32/autobuild/patches/0008-Fedora-db-4.5.20-jni-include-dir.patch delete mode 100644 runtime-optenv32/db+32/autobuild/patches/0009-Fedora-007-mt19937db.c_license.patch delete mode 100644 runtime-optenv32/db+32/autobuild/patches/0010-Fedora-db-5.3.21-memp_stat-upstream-fix.patch delete mode 100644 runtime-optenv32/db+32/autobuild/patches/0011-Fedora-db-5.3.21-mutex_leak.patch delete mode 100644 runtime-optenv32/db+32/autobuild/patches/0012-Fedora-db-5.3.28-lemon_hash.patch delete mode 100644 runtime-optenv32/db+32/autobuild/patches/0013-Fedora-db-5.3.28-condition_variable.patch delete mode 100644 runtime-optenv32/db+32/autobuild/patches/0014-Fedora-db-5.3.28-condition-variable-ppc.patch delete mode 100644 runtime-optenv32/db+32/autobuild/patches/0016-Fedora-db-5.3.28-cwd-db_config.patch delete mode 100644 runtime-optenv32/db+32/autobuild/patches/0017-Fedora-libdb-5.3.21-region-size-check.patch delete mode 100644 runtime-optenv32/db+32/autobuild/patches/0018-Fedora-checkpoint-opd-deadlock.patch delete mode 100644 runtime-optenv32/db+32/autobuild/patches/0019-Fedora-db-5.3.28-atomic_compare_exchange.patch delete mode 100644 runtime-optenv32/db+32/autobuild/patches/0020-Fedora-libdb-cbd-race.patch delete mode 100644 runtime-optenv32/db+32/autobuild/patches/0021-Fedora-libdb-limit-cpu.patch delete mode 100644 runtime-optenv32/db+32/autobuild/patches/0022-Fedora-libdb-5.3.21-trickle_cpu.patch delete mode 100644 runtime-optenv32/db+32/autobuild/patches/0023-Fedora-db-5.3.28_cve-2019-2708.patch delete mode 100644 runtime-optenv32/db+32/autobuild/patches/0024-Fedora-db-5.3.28-mmap-high-cpu-usage.patch delete mode 100644 runtime-optenv32/db+32/autobuild/patches/0025-Debian-versioned_symbols.patch delete mode 100644 runtime-optenv32/db+32/spec diff --git a/groups/optenv32 b/groups/optenv32 index f241b211784..be7fd2b6f3c 100644 --- a/groups/optenv32 +++ b/groups/optenv32 @@ -153,7 +153,6 @@ runtime-optenv32/cups+32 runtime-optenv32/a52dec+32 runtime-optenv32/alsa-plugins+32 runtime-optenv32/celt+32 -runtime-optenv32/db+32 runtime-optenv32/fluidsynth+32 runtime-optenv32/gconf+32 runtime-optenv32/glew+32 diff --git a/runtime-optenv32/32subsystem/autobuild/defines b/runtime-optenv32/32subsystem/autobuild/defines index 0d9a3653fcd..594387cbc3d 100644 --- a/runtime-optenv32/32subsystem/autobuild/defines +++ b/runtime-optenv32/32subsystem/autobuild/defines @@ -4,7 +4,7 @@ PKGSEC=libs PKGDEP=""" a52dec+32 aalib+32 acl+32 alsa-lib+32 alsa-plugins+32 at-spi2-core+32 attr+32 binutils+32 brotli+32 bzip2+32 cairo+32 cdparanoia+32 celt+32 cups+32 curl+32 -db+32 dbus+32 dbus-glib+32 devel-base+32 elfutils+32 enca+32 eudev+32 expat+32 +dbus+32 dbus-glib+32 devel-base+32 elfutils+32 enca+32 eudev+32 expat+32 faac+32 faad2+32 ffmpeg+32 fftw+32 flac+32 fluidsynth+32 fontconfig+32 freealut+32 freeglut+32 freetype+32 fribidi+32 game-music-emu+32 gcc+32 gconf+32 gdbm+32 gdk-pixbuf+32 giflib+32 glew+32 glib+32 glibc+32 glslang+32 diff --git a/runtime-optenv32/db+32/autobuild/build b/runtime-optenv32/db+32/autobuild/build deleted file mode 100644 index 68611b17551..00000000000 --- a/runtime-optenv32/db+32/autobuild/build +++ /dev/null @@ -1,24 +0,0 @@ -pushd build_unix - -# The following configuration: -# -# 1. Enables compatibility for old version Berkeley DBs (probably before Oracle); -# 2. Enables DB manager libraries and utilities; -# 3. Enables CXX programs (disable --enable-cxx if you do think it is necessary); -# 4. Enables shared libraries (if you need static libraries, add --enable-static); -# 5. Disables Tcl bindings (it is not necessary so far, at least in AOSC OS); -abinfo "Configuring Berkeley DB..." -../dist/configure --prefix=/opt/32 \ - --enable-compat185 \ - --enable-dbm \ - --enable-cxx \ - --enable-shared \ - --disable-tcl - -# Enables POSIX thread library linkage (in GLibC, no need to remove). -abinfo "Building threaded runtime libraries..." -make LIBSO_LIBS="-lpthread" -make DESTDIR="$PKGDIR" install - -abinfo "Removing documentations ..." -rm -rv "$PKGDIR"/opt/32/docs diff --git a/runtime-optenv32/db+32/autobuild/defines b/runtime-optenv32/db+32/autobuild/defines deleted file mode 100644 index 5789f83821a..00000000000 --- a/runtime-optenv32/db+32/autobuild/defines +++ /dev/null @@ -1,10 +0,0 @@ -PKGNAME=db+32 -PKGDES="Berkeley DB embedded database system (32-bit x86 runtime)" -PKGSEC=database -PKGDEP="glibc+32" -BUILDDEP="devel-base+32" - -PKGEPOCH=1 - -AB_FLAGS_O3=1 -ABHOST=optenv32 diff --git a/runtime-optenv32/db+32/autobuild/patches/0001-Fedora-libdb-multiarch.patch b/runtime-optenv32/db+32/autobuild/patches/0001-Fedora-libdb-multiarch.patch deleted file mode 100644 index f0e6ff6b1c3..00000000000 --- a/runtime-optenv32/db+32/autobuild/patches/0001-Fedora-libdb-multiarch.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up db-5.3.15/dist/aclocal/sequence.m4.multiarch db-5.3.15/dist/aclocal/sequence.m4 ---- db-5.3.15/dist/aclocal/sequence.m4.multiarch 2010-06-25 17:50:36.000000000 +0200 -+++ db-5.3.15/dist/aclocal/sequence.m4 2011-12-20 02:00:49.000000000 +0100 -@@ -78,7 +78,7 @@ AC_DEFUN(AM_SEQUENCE_CONFIGURE, [ - fi - if test "$db_cv_build_sequence" = "yes"; then - AC_SUBST(db_seq_decl) -- db_seq_decl="typedef $db_cv_seq_type db_seq_t;"; -+ db_seq_decl="typedef int64_t db_seq_t;"; - - AC_DEFINE(HAVE_64BIT_TYPES) - AH_TEMPLATE(HAVE_64BIT_TYPES, diff --git a/runtime-optenv32/db+32/autobuild/patches/0007-Fedora-db-4.6.21-1.85-compat.patch b/runtime-optenv32/db+32/autobuild/patches/0007-Fedora-db-4.6.21-1.85-compat.patch deleted file mode 100644 index 62ae950d573..00000000000 --- a/runtime-optenv32/db+32/autobuild/patches/0007-Fedora-db-4.6.21-1.85-compat.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -up db-5.1.19/dist/Makefile.in.185compat db-5.1.19/dist/Makefile.in ---- db-5.1.19/dist/Makefile.in.185compat 2010-08-27 17:08:03.000000000 +0200 -+++ db-5.1.19/dist/Makefile.in 2010-09-10 10:02:32.974640425 +0200 -@@ -193,8 +193,8 @@ libtso_major= $(libtcl_base)-$(LIBMAJOR) - # local libraries, for example. Do that by adding -I options to the DB185INC - # line, and -l options to the DB185LIB line. - ################################################## --DB185INC= -c @CFLAGS@ -I$(topdir) @CPPFLAGS@ --DB185LIB= -+DB185INC= -c @CFLAGS@ -I$(srcdir) -I$(srcdir)/db.1.85/PORT/linux/include @CPPFLAGS@ -+DB185LIB= ${srcdir}/db.1.85/PORT/linux/libdb.a - - ################################################## - # Performance Event Monitoring definitions diff --git a/runtime-optenv32/db+32/autobuild/patches/0008-Fedora-db-4.5.20-jni-include-dir.patch b/runtime-optenv32/db+32/autobuild/patches/0008-Fedora-db-4.5.20-jni-include-dir.patch deleted file mode 100644 index b0881c3bb96..00000000000 --- a/runtime-optenv32/db+32/autobuild/patches/0008-Fedora-db-4.5.20-jni-include-dir.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -up db-4.7.25/dist/configure.ac.jni db-4.7.25/dist/configure.ac ---- db-4.7.25/dist/configure.ac.jni 2008-08-20 14:22:59.000000000 +0200 -+++ db-4.7.25/dist/configure.ac 2008-08-20 14:23:39.000000000 +0200 -@@ -418,7 +418,7 @@ if test "$db_cv_java" = "yes"; then - AC_PROG_JAVAC - AC_PROG_JAR - AC_PROG_JAVA -- AC_JNI_INCLUDE_DIR -+ JNI_INCLUDE_DIRS="/usr/lib/jvm/java/include /usr/lib/jvm/java/include/linux" - - AC_MSG_CHECKING(java version) - case "$JAVA" in diff --git a/runtime-optenv32/db+32/autobuild/patches/0009-Fedora-007-mt19937db.c_license.patch b/runtime-optenv32/db+32/autobuild/patches/0009-Fedora-007-mt19937db.c_license.patch deleted file mode 100644 index eab05d7f432..00000000000 --- a/runtime-optenv32/db+32/autobuild/patches/0009-Fedora-007-mt19937db.c_license.patch +++ /dev/null @@ -1,49 +0,0 @@ -Description: mt19937db.c license should include the GPL - This file is distributed from upstream Berkeley DB under the Artistic - License (no version specified), althouth it was later released by the - original author under both GPL2+ and BSD. - . - References: - http://web.archive.org/web/20010806225716/http://www.math.keio.ac.jp/matumoto/mt19937int.c - http://web.archive.org/web/20130127064020/http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/MT2002/CODES/mt19937ar.c - https://bugzilla.redhat.com/show_bug.cgi?format=multiple&id=886838 - https://lists.nongnu.org/archive/html/gnu-linux-libre/2010-05/msg00000.html - . -Author: Ruben Rodriguez - - ---- db-5.3.21/src/crypto/mersenne/mt19937db.c.licensefix -+++ db-5.3.21/src/crypto/mersenne/mt19937db.c -@@ -16,16 +16,27 @@ - /* Coded by Takuji Nishimura, considering the suggestions by */ - /* Topher Cooper and Marc Rieffel in July-Aug. 1997. */ - --/* This library is free software under the Artistic license: */ --/* see the file COPYING distributed together with this code. */ --/* For the verification of the code, its output sequence file */ --/* mt19937int.out is attached (2001/4/2) */ -- - /* Copyright (C) 1997, 1999 Makoto Matsumoto and Takuji Nishimura. */ - /* Any feedback is very welcome. For any question, comments, */ - /* see http://www.math.keio.ac.jp/matumoto/emt.html or email */ - /* matumoto@math.keio.ac.jp */ - -+/* This library is free software; you can redistribute it and/or */ -+/* modify it under the terms of the GNU Library General Public */ -+/* License as published by the Free Software Foundation; either */ -+/* version 2 of the License, or (at your option) any later */ -+/* version. */ -+/* This library is distributed in the hope that it will be useful, */ -+/* but WITHOUT ANY WARRANTY; without even the implied warranty of */ -+/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. */ -+/* See the GNU Library General Public License for more details. */ -+/* You should have received a copy of the GNU Library General */ -+/* Public License along with this library; if not, write to the */ -+/* Free Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA */ -+/* 02111-1307 USA */ -+ -+/* This library is free software under the Artistic license: */ -+ - /* REFERENCE */ - /* M. Matsumoto and T. Nishimura, */ - /* "Mersenne Twister: A 623-Dimensionally Equidistributed Uniform */ diff --git a/runtime-optenv32/db+32/autobuild/patches/0010-Fedora-db-5.3.21-memp_stat-upstream-fix.patch b/runtime-optenv32/db+32/autobuild/patches/0010-Fedora-db-5.3.21-memp_stat-upstream-fix.patch deleted file mode 100644 index 9e3d52b68ef..00000000000 --- a/runtime-optenv32/db+32/autobuild/patches/0010-Fedora-db-5.3.21-memp_stat-upstream-fix.patch +++ /dev/null @@ -1,183 +0,0 @@ -diff -r -u db-5.3.21_orig/src/mp/mp_stat.c db-5.3.21/src/mp/mp_stat.c ---- db-5.3.21_orig/src/mp/mp_stat.c 2012-05-12 01:57:53.000000000 +0800 -+++ db-5.3.21/src/mp/mp_stat.c 2015-05-19 15:07:09.000000000 +0800 -@@ -87,6 +87,13 @@ - u_int32_t i; - uintmax_t tmp_wait, tmp_nowait; - -+ /* -+ * The array holding the lengths related to the buffer allocated for *fspp. -+ * The first element of the array holds the number of entries allocated. -+ * The second element of the array holds the total number of bytes allocated. -+ */ -+ u_int32_t fsp_len[2]; -+ - dbmp = env->mp_handle; - mp = dbmp->reginfo[0].primary; - -@@ -193,32 +200,53 @@ - if (fspp != NULL) { - *fspp = NULL; - -- /* Count the MPOOLFILE structures. */ -- i = 0; -- len = 0; -- if ((ret = __memp_walk_files(env, -- mp, __memp_count_files, &len, &i, flags)) != 0) -- return (ret); -+ while (*fspp == NULL) { -+ /* Count the MPOOLFILE structures. */ -+ i = 0; -+ /* -+ * Allow space for the first __memp_get_files() to align the -+ * structure array to uintmax_t, DB_MPOOL_STAT's most -+ * restrictive field. [#23150] -+ */ -+ len = sizeof(uintmax_t); -+ if ((ret = __memp_walk_files(env, -+ mp, __memp_count_files, &len, &i, flags)) != 0) -+ return (ret); -+ -+ if (i == 0) -+ return (0); -+ -+ /* -+ * Copy the number of DB_MPOOL_FSTAT entries and the number of -+ * bytes allocated for them into fsp_len. Do not count the space -+ * reserved for allignment. -+ */ -+ fsp_len[0] = i; -+ fsp_len[1] = len - sizeof(uintmax_t); - -- if (i == 0) -- return (0); -- len += sizeof(DB_MPOOL_FSTAT *); /* Trailing NULL */ -+ len += sizeof(DB_MPOOL_FSTAT *); /* Trailing NULL */ - -- /* Allocate space */ -- if ((ret = __os_umalloc(env, len, fspp)) != 0) -- return (ret); -+ /* Allocate space */ -+ if ((ret = __os_umalloc(env, len, fspp)) != 0) -+ return (ret); - -- tfsp = *fspp; -- *tfsp = NULL; -- -- /* -- * Files may have been opened since we counted, don't walk -- * off the end of the allocated space. -- */ -- if ((ret = __memp_walk_files(env, -- mp, __memp_get_files, &tfsp, &i, flags)) != 0) -- return (ret); -+ tfsp = *fspp; -+ *tfsp = NULL; - -+ /* -+ * Files may have been opened since we counted, if we walk off -+ * the end of the allocated space specified in fsp_len, retry. -+ */ -+ if ((ret = __memp_walk_files(env, -+ mp, __memp_get_files, &tfsp, fsp_len, flags)) != 0) { -+ if (ret == DB_BUFFER_SMALL) { -+ __os_ufree(env, *fspp); -+ *fspp = NULL; -+ tfsp = NULL; -+ } else -+ return (ret); -+ } -+ } - *++tfsp = NULL; - } - -@@ -286,28 +314,35 @@ - * for the text file names. - */ - static int --__memp_get_files(env, mfp, argp, countp, flags) -+__memp_get_files(env, mfp, argp, fsp_len, flags) - ENV *env; - MPOOLFILE *mfp; - void *argp; -- u_int32_t *countp; -+ u_int32_t fsp_len[]; - u_int32_t flags; - { - DB_MPOOL *dbmp; - DB_MPOOL_FSTAT **tfsp, *tstruct; - char *name, *tname; -- size_t nlen; -+ size_t nlen, tlen; - -- if (*countp == 0) -- return (0); -+ /* We walked through more files than argp was allocated for. */ -+ if (fsp_len[0] == 0) -+ return DB_BUFFER_SMALL; - - dbmp = env->mp_handle; - tfsp = *(DB_MPOOL_FSTAT ***)argp; - - if (*tfsp == NULL) { -- /* Add 1 to count because we need to skip over the NULL. */ -- tstruct = (DB_MPOOL_FSTAT *)(tfsp + *countp + 1); -- tname = (char *)(tstruct + *countp); -+ /* -+ * Add 1 to count because to skip over the NULL end marker. -+ * Align it further for DB_MPOOL_STAT's most restrictive field -+ * because uintmax_t might require stricter alignment than -+ * pointers; e.g., IP32 LL64 SPARC. [#23150] -+ */ -+ tstruct = (DB_MPOOL_FSTAT *)&tfsp[fsp_len[0] + 1]; -+ tstruct = ALIGNP_INC(tstruct, sizeof(uintmax_t)); -+ tname = (char *)&tstruct[fsp_len[0]]; - *tfsp = tstruct; - } else { - tstruct = *tfsp + 1; -@@ -317,6 +352,15 @@ - - name = __memp_fns(dbmp, mfp); - nlen = strlen(name) + 1; -+ -+ /* The space required for file names is larger than argp was allocated for. */ -+ tlen = sizeof(DB_MPOOL_FSTAT *) + sizeof(DB_MPOOL_FSTAT) + nlen; -+ if (fsp_len[1] < tlen) -+ return DB_BUFFER_SMALL; -+ else -+ /* Count down the number of bytes left in argp. */ -+ fsp_len[1] -= tlen; -+ - memcpy(tname, name, nlen); - memcpy(tstruct, &mfp->stat, sizeof(mfp->stat)); - tstruct->file_name = tname; -@@ -325,7 +369,9 @@ - tstruct->st_pagesize = mfp->pagesize; - - *(DB_MPOOL_FSTAT ***)argp = tfsp; -- (*countp)--; -+ -+ /* Count down the number of entries left in argp. */ -+ fsp_len[0]--; - - if (LF_ISSET(DB_STAT_CLEAR)) - memset(&mfp->stat, 0, sizeof(mfp->stat)); -diff -r -u db-5.3.21_orig/src/mp/mp_sync.c db-5.3.21/src/mp/mp_sync.c ---- db-5.3.21_orig/src/mp/mp_sync.c 2012-05-12 01:57:53.000000000 +0800 -+++ db-5.3.21/src/mp/mp_sync.c 2015-05-19 15:08:05.000000000 +0800 -@@ -57,11 +57,13 @@ - if ((t_ret = func(env, - mfp, arg, countp, flags)) != 0 && ret == 0) - ret = t_ret; -- if (ret != 0 && !LF_ISSET(DB_STAT_MEMP_NOERROR)) -+ if (ret != 0 && -+ (!LF_ISSET(DB_STAT_MEMP_NOERROR) || ret == DB_BUFFER_SMALL)) - break; - } - MUTEX_UNLOCK(env, hp->mtx_hash); -- if (ret != 0 && !LF_ISSET(DB_STAT_MEMP_NOERROR)) -+ if (ret != 0 && -+ (!LF_ISSET(DB_STAT_MEMP_NOERROR) || ret == DB_BUFFER_SMALL)) - break; - } - return (ret); diff --git a/runtime-optenv32/db+32/autobuild/patches/0011-Fedora-db-5.3.21-mutex_leak.patch b/runtime-optenv32/db+32/autobuild/patches/0011-Fedora-db-5.3.21-mutex_leak.patch deleted file mode 100644 index 0738dab7fc3..00000000000 --- a/runtime-optenv32/db+32/autobuild/patches/0011-Fedora-db-5.3.21-mutex_leak.patch +++ /dev/null @@ -1,718 +0,0 @@ -diff -U 5 -r db-5.3.21.old/src/dbinc_auto/int_def.in db-5.3.21/src/dbinc_auto/int_def.in ---- db-5.3.21.old/src/dbinc_auto/int_def.in 2012-05-12 01:57:53.000000000 +0800 -+++ db-5.3.21/src/dbinc_auto/int_def.in 2016-10-25 22:40:58.000000000 +0800 -@@ -1371,10 +1371,11 @@ - #define __memp_failchk __memp_failchk@DB_VERSION_UNIQUE_NAME@ - #define __memp_bhwrite __memp_bhwrite@DB_VERSION_UNIQUE_NAME@ - #define __memp_pgread __memp_pgread@DB_VERSION_UNIQUE_NAME@ - #define __memp_pg __memp_pg@DB_VERSION_UNIQUE_NAME@ - #define __memp_bhfree __memp_bhfree@DB_VERSION_UNIQUE_NAME@ -+#define __memp_bh_clear_dirty __memp_bh_clear_dirty@DB_VERSION_UNIQUE_NAME@ - #define __memp_fget_pp __memp_fget_pp@DB_VERSION_UNIQUE_NAME@ - #define __memp_fget __memp_fget@DB_VERSION_UNIQUE_NAME@ - #define __memp_fcreate_pp __memp_fcreate_pp@DB_VERSION_UNIQUE_NAME@ - #define __memp_fcreate __memp_fcreate@DB_VERSION_UNIQUE_NAME@ - #define __memp_set_clear_len __memp_set_clear_len@DB_VERSION_UNIQUE_NAME@ -@@ -1395,10 +1396,11 @@ - #define __memp_fopen __memp_fopen@DB_VERSION_UNIQUE_NAME@ - #define __memp_fclose_pp __memp_fclose_pp@DB_VERSION_UNIQUE_NAME@ - #define __memp_fclose __memp_fclose@DB_VERSION_UNIQUE_NAME@ - #define __memp_mf_discard __memp_mf_discard@DB_VERSION_UNIQUE_NAME@ - #define __memp_inmemlist __memp_inmemlist@DB_VERSION_UNIQUE_NAME@ -+#define __memp_mf_mark_dead __memp_mf_mark_dead@DB_VERSION_UNIQUE_NAME@ - #define __memp_fput_pp __memp_fput_pp@DB_VERSION_UNIQUE_NAME@ - #define __memp_fput __memp_fput@DB_VERSION_UNIQUE_NAME@ - #define __memp_unpin_buffers __memp_unpin_buffers@DB_VERSION_UNIQUE_NAME@ - #define __memp_dirty __memp_dirty@DB_VERSION_UNIQUE_NAME@ - #define __memp_shared __memp_shared@DB_VERSION_UNIQUE_NAME@ -@@ -1453,10 +1455,11 @@ - #define __memp_fsync_pp __memp_fsync_pp@DB_VERSION_UNIQUE_NAME@ - #define __memp_fsync __memp_fsync@DB_VERSION_UNIQUE_NAME@ - #define __mp_xxx_fh __mp_xxx_fh@DB_VERSION_UNIQUE_NAME@ - #define __memp_sync_int __memp_sync_int@DB_VERSION_UNIQUE_NAME@ - #define __memp_mf_sync __memp_mf_sync@DB_VERSION_UNIQUE_NAME@ -+#define __memp_purge_dead_files __memp_purge_dead_files@DB_VERSION_UNIQUE_NAME@ - #define __memp_trickle_pp __memp_trickle_pp@DB_VERSION_UNIQUE_NAME@ - #define __mutex_alloc __mutex_alloc@DB_VERSION_UNIQUE_NAME@ - #define __mutex_alloc_int __mutex_alloc_int@DB_VERSION_UNIQUE_NAME@ - #define __mutex_free __mutex_free@DB_VERSION_UNIQUE_NAME@ - #define __mutex_free_int __mutex_free_int@DB_VERSION_UNIQUE_NAME@ -diff -U 5 -r db-5.3.21.old/src/dbinc_auto/mp_ext.h db-5.3.21/src/dbinc_auto/mp_ext.h ---- db-5.3.21.old/src/dbinc_auto/mp_ext.h 2012-05-12 01:57:53.000000000 +0800 -+++ db-5.3.21/src/dbinc_auto/mp_ext.h 2016-10-25 22:40:58.000000000 +0800 -@@ -14,10 +14,11 @@ - int __memp_failchk __P((ENV *)); - int __memp_bhwrite __P((DB_MPOOL *, DB_MPOOL_HASH *, MPOOLFILE *, BH *, int)); - int __memp_pgread __P((DB_MPOOLFILE *, BH *, int)); - int __memp_pg __P((DB_MPOOLFILE *, db_pgno_t, void *, int)); - int __memp_bhfree __P((DB_MPOOL *, REGINFO *, MPOOLFILE *, DB_MPOOL_HASH *, BH *, u_int32_t)); -+void __memp_bh_clear_dirty __P((ENV*, DB_MPOOL_HASH *, BH *)); - int __memp_fget_pp __P((DB_MPOOLFILE *, db_pgno_t *, DB_TXN *, u_int32_t, void *)); - int __memp_fget __P((DB_MPOOLFILE *, db_pgno_t *, DB_THREAD_INFO *, DB_TXN *, u_int32_t, void *)); - int __memp_fcreate_pp __P((DB_ENV *, DB_MPOOLFILE **, u_int32_t)); - int __memp_fcreate __P((ENV *, DB_MPOOLFILE **)); - int __memp_set_clear_len __P((DB_MPOOLFILE *, u_int32_t)); -@@ -38,10 +39,11 @@ - int __memp_fopen __P((DB_MPOOLFILE *, MPOOLFILE *, const char *, const char **, u_int32_t, int, size_t)); - int __memp_fclose_pp __P((DB_MPOOLFILE *, u_int32_t)); - int __memp_fclose __P((DB_MPOOLFILE *, u_int32_t)); - int __memp_mf_discard __P((DB_MPOOL *, MPOOLFILE *, int)); - int __memp_inmemlist __P((ENV *, char ***, int *)); -+void __memp_mf_mark_dead __P((DB_MPOOL *, MPOOLFILE *, int*)); - int __memp_fput_pp __P((DB_MPOOLFILE *, void *, DB_CACHE_PRIORITY, u_int32_t)); - int __memp_fput __P((DB_MPOOLFILE *, DB_THREAD_INFO *, void *, DB_CACHE_PRIORITY)); - int __memp_unpin_buffers __P((ENV *, DB_THREAD_INFO *)); - int __memp_dirty __P((DB_MPOOLFILE *, void *, DB_THREAD_INFO *, DB_TXN *, DB_CACHE_PRIORITY, u_int32_t)); - int __memp_shared __P((DB_MPOOLFILE *, void *)); -@@ -96,10 +98,11 @@ - int __memp_fsync_pp __P((DB_MPOOLFILE *)); - int __memp_fsync __P((DB_MPOOLFILE *)); - int __mp_xxx_fh __P((DB_MPOOLFILE *, DB_FH **)); - int __memp_sync_int __P((ENV *, DB_MPOOLFILE *, u_int32_t, u_int32_t, u_int32_t *, int *)); - int __memp_mf_sync __P((DB_MPOOL *, MPOOLFILE *, int)); -+int __memp_purge_dead_files __P((ENV *)); - int __memp_trickle_pp __P((DB_ENV *, int, int *)); - - #if defined(__cplusplus) - } - #endif -diff -U 5 -r db-5.3.21.old/src/mp/mp_bh.c db-5.3.21/src/mp/mp_bh.c ---- db-5.3.21.old/src/mp/mp_bh.c 2012-05-12 01:57:53.000000000 +0800 -+++ db-5.3.21/src/mp/mp_bh.c 2016-10-25 17:09:35.000000000 +0800 -@@ -472,15 +472,12 @@ - * a shared latch. - */ - if (F_ISSET(bhp, BH_DIRTY | BH_TRASH)) { - MUTEX_LOCK(env, hp->mtx_hash); - DB_ASSERT(env, !SH_CHAIN_HASNEXT(bhp, vc)); -- if (ret == 0 && F_ISSET(bhp, BH_DIRTY)) { -- F_CLR(bhp, BH_DIRTY | BH_DIRTY_CREATE); -- DB_ASSERT(env, atomic_read(&hp->hash_page_dirty) > 0); -- atomic_dec(env, &hp->hash_page_dirty); -- } -+ if (ret == 0) -+ __memp_bh_clear_dirty(env, hp, bhp); - - /* put the page back if necessary. */ - if ((ret != 0 || BH_REFCOUNT(bhp) > 1) && - F_ISSET(bhp, BH_TRASH)) { - ret = __memp_pg(dbmfp, bhp->pgno, bhp->buf, 1); -@@ -686,5 +683,31 @@ - } else - MUTEX_UNLOCK(env, mfp->mutex); - - return (ret); - } -+ -+/* -+ * __memp_bh_clear_dirty -- -+ * Clear the dirty flag of of a buffer. Calls on the same buffer must be -+ * serialized to get the accounting correct. This can be achieved by -+ * acquiring an exclusive lock on the buffer, a shared lock on the -+ * buffer plus an exclusive lock on the hash bucket, or some other -+ * mechanism that guarantees single-thread access to the entire region -+ * (e.g. during __memp_region_bhfree()). -+ * -+ * PUBLIC: void __memp_bh_clear_dirty __P((ENV*, DB_MPOOL_HASH *, BH *)); -+ */ -+void -+__memp_bh_clear_dirty(env, hp, bhp) -+ ENV *env; -+ DB_MPOOL_HASH *hp; -+ BH *bhp; -+{ -+ COMPQUIET(env, env); -+ if (F_ISSET(bhp, BH_DIRTY)) { -+ F_CLR(bhp, BH_DIRTY | BH_DIRTY_CREATE); -+ DB_ASSERT(env, atomic_read(&hp->hash_page_dirty) > 0); -+ (void)atomic_dec(env, &hp->hash_page_dirty); -+ } -+} -+ -diff -U 5 -r db-5.3.21.old/src/mp/mp_fget.c db-5.3.21/src/mp/mp_fget.c ---- db-5.3.21.old/src/mp/mp_fget.c 2012-05-12 01:57:53.000000000 +0800 -+++ db-5.3.21/src/mp/mp_fget.c 2016-10-25 17:11:08.000000000 +0800 -@@ -437,16 +437,11 @@ - * complain and get out. - */ - if (flags == DB_MPOOL_FREE) { - freebuf: MUTEX_LOCK(env, hp->mtx_hash); - h_locked = 1; -- if (F_ISSET(bhp, BH_DIRTY)) { -- F_CLR(bhp, BH_DIRTY | BH_DIRTY_CREATE); -- DB_ASSERT(env, -- atomic_read(&hp->hash_page_dirty) > 0); -- atomic_dec(env, &hp->hash_page_dirty); -- } -+ __memp_bh_clear_dirty(env, hp, bhp); - - /* - * If the buffer we found is already freed, we're done. - * If the ref count is not 1 then someone may be - * peeking at the buffer. We cannot free it until they -diff -U 5 -r db-5.3.21.old/src/mp/mp_fopen.c db-5.3.21/src/mp/mp_fopen.c ---- db-5.3.21.old/src/mp/mp_fopen.c 2012-05-12 01:57:53.000000000 +0800 -+++ db-5.3.21/src/mp/mp_fopen.c 2016-10-25 22:31:05.000000000 +0800 -@@ -12,10 +12,11 @@ - #include "dbinc/log.h" - #include "dbinc/mp.h" - #include "dbinc/db_page.h" - #include "dbinc/hash.h" - -+static int __memp_count_dead_mutex __P((DB_MPOOL *, u_int32_t *)); - static int __memp_mpf_alloc __P((DB_MPOOL *, - DB_MPOOLFILE *, const char *, u_int32_t, u_int32_t, MPOOLFILE **)); - static int __memp_mpf_find __P((ENV *, - DB_MPOOLFILE *, DB_MPOOL_HASH *, const char *, u_int32_t, MPOOLFILE **)); - -@@ -709,11 +710,15 @@ - * We should be able to set mfp to NULL and break out of the - * loop, but I like the idea of checking all the entries. - */ - if (LF_ISSET(DB_TRUNCATE)) { - MUTEX_LOCK(env, mfp->mutex); -- mfp->deadfile = 1; -+ /* -+ * We cannot purge dead files here, because the caller -+ * is holding the mutex of the hash bucket of mfp. -+ */ -+ __memp_mf_mark_dead(dbmp, mfp, NULL); - MUTEX_UNLOCK(env, mfp->mutex); - continue; - } - - /* -@@ -907,14 +912,15 @@ - DB_MPOOL *dbmp; - ENV *env; - MPOOLFILE *mfp; - char *rpath; - u_int32_t ref; -- int deleted, ret, t_ret; -+ int deleted, purge_dead, ret, t_ret; - - env = dbmfp->env; - dbmp = env->mp_handle; -+ purge_dead = 0; - ret = 0; - - /* - * Remove the DB_MPOOLFILE from the process' list. - * -@@ -1004,11 +1010,11 @@ - } - DB_ASSERT(env, mfp->neutral_cnt < mfp->mpf_cnt); - if (--mfp->mpf_cnt == 0 || LF_ISSET(DB_MPOOL_DISCARD)) { - if (LF_ISSET(DB_MPOOL_DISCARD) || - F_ISSET(mfp, MP_TEMP) || mfp->unlink_on_close) { -- mfp->deadfile = 1; -+ __memp_mf_mark_dead(dbmp, mfp, &purge_dead); - } - if (mfp->unlink_on_close) { - if ((t_ret = __db_appname(dbmp->env, DB_APP_DATA, - R_ADDR(dbmp->reginfo, mfp->path_off), NULL, - &rpath)) != 0 && ret == 0) -@@ -1037,10 +1043,12 @@ - deleted = 1; - } - } - if (!deleted && !LF_ISSET(DB_MPOOL_NOLOCK)) - MUTEX_UNLOCK(env, mfp->mutex); -+ if (purge_dead) -+ (void)__memp_purge_dead_files(env); - - done: /* Discard the DB_MPOOLFILE structure. */ - if (dbmfp->pgcookie != NULL) { - __os_free(env, dbmfp->pgcookie->data); - __os_free(env, dbmfp->pgcookie); -@@ -1091,11 +1099,11 @@ - /* - * We have to release the MPOOLFILE mutex before acquiring the region - * mutex so we don't deadlock. Make sure nobody ever looks at this - * structure again. - */ -- mfp->deadfile = 1; -+ __memp_mf_mark_dead(dbmp, mfp, NULL); - - /* Discard the mutex we're holding and return it too the pool. */ - MUTEX_UNLOCK(env, mfp->mutex); - if ((t_ret = __mutex_free(env, &mfp->mutex)) != 0 && ret == 0) - ret = t_ret; -@@ -1216,5 +1224,106 @@ - /* Make sure we don't return any garbage. */ - *cntp = 0; - *namesp = NULL; - return (ret); - } -+ -+/* -+ * __memp_mf_mark_dead -- -+ * Mark an MPOOLFILE as dead because its contents are no longer necessary. -+ * This happens when removing, truncation, or closing an unnamed in-memory -+ * database. Return, in the purgep parameter, whether the caller should -+ * call __memp_purge_dead_files() after the lock on mfp is released. The -+ * caller must hold an exclusive lock on the mfp handle. -+ * -+ * PUBLIC: void __memp_mf_mark_dead __P((DB_MPOOL *, MPOOLFILE *, int*)); -+ */ -+void -+__memp_mf_mark_dead(dbmp, mfp, purgep) -+ DB_MPOOL *dbmp; -+ MPOOLFILE *mfp; -+ int *purgep; -+{ -+ ENV *env; -+#ifdef HAVE_MUTEX_SUPPORT -+ REGINFO *infop; -+ DB_MUTEXREGION *mtxregion; -+ u_int32_t mutex_max, mutex_inuse, dead_mutex; -+#endif -+ -+ if (purgep != NULL) -+ *purgep = 0; -+ -+ env = dbmp->env; -+ -+#ifdef HAVE_MUTEX_SUPPORT -+ MUTEX_REQUIRED(env, mfp->mutex); -+ -+ if (MUTEX_ON(env) && mfp->deadfile == 0) { -+ infop = &env->mutex_handle->reginfo; -+ mtxregion = infop->primary; -+ -+ mutex_inuse = mtxregion->stat.st_mutex_inuse; -+ if ((mutex_max = env->dbenv->mutex_max) == 0) -+ mutex_max = infop->rp->max / mtxregion->mutex_size; -+ -+ /* -+ * Purging dead pages requires a full scan of the entire cache -+ * buffer, so it is a slow operation. We only want to do it -+ * when it is necessary and provides enough benefits. Below is -+ * a simple heuristic that determines when to purge all dead -+ * pages. -+ */ -+ if (purgep != NULL && mutex_inuse > mutex_max - 200) { -+ /* -+ * If the mutex region is almost full and there are -+ * many mutexes held by dead files, purge dead files. -+ */ -+ (void)__memp_count_dead_mutex(dbmp, &dead_mutex); -+ dead_mutex += mfp->block_cnt + 1; -+ -+ if (dead_mutex > mutex_inuse / 20) -+ *purgep = 1; -+ } -+ } -+#endif -+ -+ mfp->deadfile = 1; -+} -+ -+/* -+ * __memp_count_dead_mutex -- -+ * Estimate the number of mutexes held by dead files. -+ */ -+static int -+__memp_count_dead_mutex(dbmp, dead_mutex) -+ DB_MPOOL *dbmp; -+ u_int32_t *dead_mutex; -+{ -+ ENV *env; -+ DB_MPOOL_HASH *hp; -+ MPOOL *mp; -+ MPOOLFILE *mfp; -+ u_int32_t mutex_per_file; -+ int busy, i; -+ -+ env = dbmp->env; -+ *dead_mutex = 0; -+ mutex_per_file = 1; -+#ifndef HAVE_ATOMICFILEREAD -+ mutex_per_file = 2; -+#endif -+ mp = dbmp->reginfo[0].primary; -+ hp = R_ADDR(dbmp->reginfo, mp->ftab); -+ for (i = 0; i < MPOOL_FILE_BUCKETS; i++, hp++) { -+ busy = MUTEX_TRYLOCK(env, hp->mtx_hash); -+ if (busy) -+ continue; -+ SH_TAILQ_FOREACH(mfp, &hp->hash_bucket, q, __mpoolfile) { -+ if (mfp->deadfile) -+ *dead_mutex += mfp->block_cnt + mutex_per_file; -+ } -+ MUTEX_UNLOCK(env, hp->mtx_hash); -+ } -+ -+ return (0); -+} -diff -U 5 -r db-5.3.21.old/src/mp/mp_method.c db-5.3.21/src/mp/mp_method.c ---- db-5.3.21.old/src/mp/mp_method.c 2012-05-12 01:57:53.000000000 +0800 -+++ db-5.3.21/src/mp/mp_method.c 2016-10-25 17:22:23.000000000 +0800 -@@ -638,11 +638,11 @@ - DB_MPOOL_HASH *hp, *nhp; - MPOOL *mp; - MPOOLFILE *mfp; - roff_t newname_off; - u_int32_t bucket; -- int locked, ret; -+ int locked, purge_dead, ret; - size_t nlen; - void *p; - - #undef op_is_remove - #define op_is_remove (newname == NULL) -@@ -655,10 +655,11 @@ - dbmp = NULL; - mfp = NULL; - nhp = NULL; - p = NULL; - locked = ret = 0; -+ purge_dead = 0; - - if (!MPOOL_ON(env)) - goto fsop; - - dbmp = env->mp_handle; -@@ -747,11 +748,11 @@ - * they do not get reclaimed as long as they exist. Since we - * are now deleting the database, we need to dec that count. - */ - if (mfp->no_backing_file) - mfp->mpf_cnt--; -- mfp->deadfile = 1; -+ __memp_mf_mark_dead(dbmp, mfp, &purge_dead); - MUTEX_UNLOCK(env, mfp->mutex); - } else { - /* - * Else, it's a rename. We've allocated memory for the new - * name. Swap it with the old one. If it's in memory we -@@ -806,10 +807,16 @@ - if (locked == 1) { - MUTEX_UNLOCK(env, hp->mtx_hash); - if (nhp != NULL && nhp != hp) - MUTEX_UNLOCK(env, nhp->mtx_hash); - } -+ /* -+ * __memp_purge_dead_files() must be called when the hash bucket is -+ * unlocked. -+ */ -+ if (purge_dead) -+ (void)__memp_purge_dead_files(env); - return (ret); - } - - /* - * __memp_ftruncate __ -diff -U 5 -r db-5.3.21.old/src/mp/mp_sync.c db-5.3.21/src/mp/mp_sync.c ---- db-5.3.21.old/src/mp/mp_sync.c 2012-05-12 01:57:53.000000000 +0800 -+++ db-5.3.21/src/mp/mp_sync.c 2016-10-25 17:26:58.000000000 +0800 -@@ -24,10 +24,11 @@ - static int __bhcmp __P((const void *, const void *)); - static int __memp_close_flush_files __P((ENV *, int)); - static int __memp_sync_files __P((ENV *)); - static int __memp_sync_file __P((ENV *, - MPOOLFILE *, void *, u_int32_t *, u_int32_t)); -+static inline void __update_err_ret(int, int*); - - /* - * __memp_walk_files -- - * PUBLIC: int __memp_walk_files __P((ENV *, MPOOL *, - * PUBLIC: int (*) __P((ENV *, MPOOLFILE *, void *, -@@ -961,5 +962,125 @@ - return (-1); - if (bhp1->track_pgno > bhp2->track_pgno) - return (1); - return (0); - } -+ -+/* -+ * __memp_purge_dead_files -- -+ * Remove all dead files and their buffers from the mpool. The caller -+ * cannot hold any lock on the dead MPOOLFILE handles, their buffers -+ * or their hash buckets. -+ * -+ * PUBLIC: int __memp_purge_dead_files __P((ENV *)); -+ */ -+int -+__memp_purge_dead_files(env) -+ ENV *env; -+{ -+ BH *bhp; -+ DB_MPOOL *dbmp; -+ DB_MPOOL_HASH *hp, *hp_end; -+ REGINFO *infop; -+ MPOOL *c_mp, *mp; -+ MPOOLFILE *mfp; -+ u_int32_t i_cache; -+ int ret, t_ret, h_lock; -+ -+ if (!MPOOL_ON(env)) -+ return (0); -+ -+ dbmp = env->mp_handle; -+ mp = dbmp->reginfo[0].primary; -+ ret = t_ret = h_lock = 0; -+ -+ /* -+ * Walk each cache's list of buffers and free all buffers whose -+ * MPOOLFILE is marked as dead. -+ */ -+ for (i_cache = 0; i_cache < mp->nreg; i_cache++) { -+ infop = &dbmp->reginfo[i_cache]; -+ c_mp = infop->primary; -+ -+ hp = R_ADDR(infop, c_mp->htab); -+ hp_end = &hp[c_mp->htab_buckets]; -+ for (; hp < hp_end; hp++) { -+ /* Skip empty buckets. */ -+ if (SH_TAILQ_FIRST(&hp->hash_bucket, __bh) == NULL) -+ continue; -+ -+ /* -+ * Search for a dead buffer. Other places that call -+ * __memp_bhfree() acquire the buffer lock before the -+ * hash bucket lock. Even though we acquire the two -+ * locks in reverse order, we cannot deadlock here -+ * because we don't block waiting for the locks. -+ */ -+ t_ret = MUTEX_TRYLOCK(env, hp->mtx_hash); -+ if (t_ret != 0) { -+ __update_err_ret(t_ret, &ret); -+ continue; -+ } -+ h_lock = 1; -+ SH_TAILQ_FOREACH(bhp, &hp->hash_bucket, hq, __bh) { -+ /* Skip buffers that are being used. */ -+ if (BH_REFCOUNT(bhp) > 0) -+ continue; -+ -+ mfp = R_ADDR(dbmp->reginfo, bhp->mf_offset); -+ if (!mfp->deadfile) -+ continue; -+ -+ /* Found a dead buffer. Prepare to free it. */ -+ t_ret = MUTEX_TRYLOCK(env, bhp->mtx_buf); -+ if (t_ret != 0) { -+ __update_err_ret(t_ret, &ret); -+ continue; -+ } -+ -+ DB_ASSERT(env, (!F_ISSET(bhp, BH_EXCLUSIVE) && -+ BH_REFCOUNT(bhp) == 0)); -+ F_SET(bhp, BH_EXCLUSIVE); -+ (void)atomic_inc(env, &bhp->ref); -+ -+ __memp_bh_clear_dirty(env, hp, bhp); -+ -+ /* -+ * Free the buffer. The buffer and hash bucket -+ * are unlocked by __memp_bhfree. -+ */ -+ if ((t_ret = __memp_bhfree(dbmp, infop, mfp, -+ hp, bhp, BH_FREE_FREEMEM)) == 0) -+ /* -+ * Decrement hp, so the next turn will -+ * search the same bucket again. -+ */ -+ hp--; -+ else -+ __update_err_ret(t_ret, &ret); -+ -+ /* -+ * The hash bucket is unlocked, we need to -+ * start over again. -+ */ -+ h_lock = 0; -+ break; -+ } -+ -+ if (h_lock) { -+ MUTEX_UNLOCK(env, hp->mtx_hash); -+ h_lock = 0; -+ } -+ } -+ } -+ -+ return (ret); -+} -+ -+static inline void -+__update_err_ret(t_ret, retp) -+ int t_ret; -+ int *retp; -+{ -+ if (t_ret != 0 && t_ret != DB_LOCK_NOTGRANTED && *retp == 0) -+ *retp = t_ret; -+} -diff -U 5 -r db-5.3.21.old/src/mp/mp_trickle.c db-5.3.21/src/mp/mp_trickle.c ---- db-5.3.21.old/src/mp/mp_trickle.c 2012-05-12 01:57:53.000000000 +0800 -+++ db-5.3.21/src/mp/mp_trickle.c 2016-10-25 17:27:57.000000000 +0800 -@@ -65,10 +65,14 @@ - "DB_ENV->memp_trickle: %d: percent must be between 1 and 100", - "%d"), pct); - return (EINVAL); - } - -+ /* First we purge all dead files and their buffers. */ -+ if ((ret = __memp_purge_dead_files(env)) != 0) -+ return (ret); -+ - /* - * Loop through the caches counting total/dirty buffers. - * - * XXX - * Using hash_page_dirty is our only choice at the moment, but it's not -diff -U 5 -r db-5.3.21.old/src/mutex/mut_region.c db-5.3.21/src/mutex/mut_region.c ---- db-5.3.21.old/src/mutex/mut_region.c 2012-05-12 01:57:54.000000000 +0800 -+++ db-5.3.21/src/mutex/mut_region.c 2016-10-25 17:34:22.000000000 +0800 -@@ -15,11 +15,11 @@ - #include "dbinc/txn.h" - - static db_size_t __mutex_align_size __P((ENV *)); - static int __mutex_region_init __P((ENV *, DB_MUTEXMGR *)); - static size_t __mutex_region_size __P((ENV *)); --static size_t __mutex_region_max __P((ENV *)); -+static size_t __mutex_region_max __P((ENV *, u_int32_t)); - - /* - * __mutex_open -- - * Open a mutex region. - * -@@ -32,11 +32,11 @@ - { - DB_ENV *dbenv; - DB_MUTEXMGR *mtxmgr; - DB_MUTEXREGION *mtxregion; - size_t size; -- u_int32_t cpu_count; -+ u_int32_t cpu_count, mutex_needed; - int ret; - #ifndef HAVE_ATOMIC_SUPPORT - u_int i; - #endif - -@@ -59,23 +59,24 @@ - cpu_count : cpu_count * MUTEX_SPINS_PER_PROCESSOR)) != 0) - return (ret); - } - - /* -- * If the user didn't set an absolute value on the number of mutexes -- * we'll need, figure it out. We're conservative in our allocation, -- * we need mutexes for DB handles, group-commit queues and other things -- * applications allocate at run-time. The application may have kicked -- * up our count to allocate its own mutexes, add that in. -+ * Figure out the number of mutexes we'll need. We're conservative in -+ * our allocation, we need mutexes for DB handles, group-commit queues -+ * and other things applications allocate at run-time. The application -+ * may have kicked up our count to allocate its own mutexes, add that -+ * in. - */ -+ mutex_needed = -+ __lock_region_mutex_count(env) + -+ __log_region_mutex_count(env) + -+ __memp_region_mutex_count(env) + -+ __txn_region_mutex_count(env); - if (dbenv->mutex_cnt == 0 && - F_ISSET(env, ENV_PRIVATE | ENV_THREAD) != ENV_PRIVATE) -- dbenv->mutex_cnt = -- __lock_region_mutex_count(env) + -- __log_region_mutex_count(env) + -- __memp_region_mutex_count(env) + -- __txn_region_mutex_count(env); -+ dbenv->mutex_cnt = mutex_needed; - - if (dbenv->mutex_max != 0 && dbenv->mutex_cnt > dbenv->mutex_max) - dbenv->mutex_cnt = dbenv->mutex_max; - - /* Create/initialize the mutex manager structure. */ -@@ -88,12 +89,12 @@ - mtxmgr->reginfo.id = INVALID_REGION_ID; - mtxmgr->reginfo.flags = REGION_JOIN_OK; - size = __mutex_region_size(env); - if (create_ok) - F_SET(&mtxmgr->reginfo, REGION_CREATE_OK); -- if ((ret = __env_region_attach(env, -- &mtxmgr->reginfo, size, size + __mutex_region_max(env))) != 0) -+ if ((ret = __env_region_attach(env, &mtxmgr->reginfo, -+ size, size + __mutex_region_max(env, mutex_needed))) != 0) - goto err; - - /* If we created the region, initialize it. */ - if (F_ISSET(&mtxmgr->reginfo, REGION_CREATE)) - if ((ret = __mutex_region_init(env, mtxmgr)) != 0) -@@ -350,44 +351,62 @@ - - dbenv = env->dbenv; - - s = sizeof(DB_MUTEXMGR) + 1024; - -- /* We discard one mutex for the OOB slot. */ -+ /* -+ * We discard one mutex for the OOB slot. Make sure mutex_cnt doesn't -+ * overflow. -+ */ - s += __env_alloc_size( -- (dbenv->mutex_cnt + 1) *__mutex_align_size(env)); -+ (dbenv->mutex_cnt + (dbenv->mutex_cnt == UINT32_MAX ? 0 : 1)) * -+ __mutex_align_size(env)); - - return (s); - } - - /* - * __mutex_region_max -- - * Return the amount of space needed to reach the maximum size. - */ - static size_t --__mutex_region_max(env) -+__mutex_region_max(env, mutex_needed) - ENV *env; -+ u_int32_t mutex_needed; - { - DB_ENV *dbenv; -- u_int32_t max; -+ u_int32_t max, mutex_cnt; - - dbenv = env->dbenv; -+ mutex_cnt = dbenv->mutex_cnt; - -- if ((max = dbenv->mutex_max) == 0) { -+ /* -+ * We want to limit the region size to accommodate at most UINT32_MAX -+ * mutexes. If mutex_cnt is UINT32_MAX, no more space is allowed. -+ */ -+ if ((max = dbenv->mutex_max) == 0 && mutex_cnt != UINT32_MAX) - if (F_ISSET(env, ENV_PRIVATE | ENV_THREAD) == ENV_PRIVATE) -- max = dbenv->mutex_inc + 1; -- else -+ if (dbenv->mutex_inc + 1 < UINT32_MAX - mutex_cnt) -+ max = dbenv->mutex_inc + 1 + mutex_cnt; -+ else -+ max = UINT32_MAX; -+ else { - max = __lock_region_mutex_max(env) + - __txn_region_mutex_max(env) + - __log_region_mutex_max(env) + - dbenv->mutex_inc + 100; -- } else if (max <= dbenv->mutex_cnt) -+ if (max < UINT32_MAX - mutex_needed) -+ max += mutex_needed; -+ else -+ max = UINT32_MAX; -+ } -+ -+ if (max <= mutex_cnt) - return (0); - else -- max -= dbenv->mutex_cnt; -- -- return ( __env_alloc_size(max * __mutex_align_size(env))); -+ return (__env_alloc_size( -+ (max - mutex_cnt) * __mutex_align_size(env))); - } - - #ifdef HAVE_MUTEX_SYSTEM_RESOURCES - /* - * __mutex_resource_return - diff --git a/runtime-optenv32/db+32/autobuild/patches/0012-Fedora-db-5.3.28-lemon_hash.patch b/runtime-optenv32/db+32/autobuild/patches/0012-Fedora-db-5.3.28-lemon_hash.patch deleted file mode 100644 index 1556d5dd4ba..00000000000 --- a/runtime-optenv32/db+32/autobuild/patches/0012-Fedora-db-5.3.28-lemon_hash.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- db-5.3.28/lang/sql/sqlite/tool/lemon.c.lemon_hash 2013-09-09 17:35:07.000000000 +0200 -+++ db-5.3.28/lang/sql/sqlite/tool/lemon.c 2017-02-22 13:12:08.564106051 +0100 -@@ -3428,7 +3428,7 @@ - int maxdtlength; /* Maximum length of any ".datatype" field. */ - char *stddt; /* Standardized name for a datatype */ - int i,j; /* Loop counters */ -- int hash; /* For hashing the name of a type */ -+ unsigned hash; /* For hashing the name of a type */ - const char *name; /* Name of the parser */ - - /* Allocate and initialize types[] and allocate stddt[] */ -@@ -3491,7 +3491,7 @@ - break; - } - hash++; -- if( hash>=arraysize ) hash = 0; -+ if( hash>=(unsigned)arraysize ) hash = 0; - } - if( types[hash]==0 ){ - sp->dtnum = hash + 1; diff --git a/runtime-optenv32/db+32/autobuild/patches/0013-Fedora-db-5.3.28-condition_variable.patch b/runtime-optenv32/db+32/autobuild/patches/0013-Fedora-db-5.3.28-condition_variable.patch deleted file mode 100644 index ca947e63f8a..00000000000 --- a/runtime-optenv32/db+32/autobuild/patches/0013-Fedora-db-5.3.28-condition_variable.patch +++ /dev/null @@ -1,759 +0,0 @@ -diff -up db-5.3.28/dist/android/android_config.in.pthreads db-5.3.28/dist/android/android_config.in ---- db-5.3.28/dist/android/android_config.in.pthreads 2013-09-09 17:35:02.000000000 +0200 -+++ db-5.3.28/dist/android/android_config.in 2017-06-13 11:15:15.323215161 +0200 -@@ -123,6 +123,9 @@ - /* Define to 1 if allocated filesystem blocks are not zeroed. */ - /* #undef HAVE_FILESYSTEM_NOTZERO */ - -+/* Define to 1 if you have the `flock' function. */ -+#undef HAVE_FLOCK -+ - /* Define to 1 if you have the `fopen' function. */ - #define HAVE_FOPEN 1 - -diff -up db-5.3.28/dist/config.hin.pthreads db-5.3.28/dist/config.hin ---- db-5.3.28/dist/config.hin.pthreads 2013-09-09 17:35:02.000000000 +0200 -+++ db-5.3.28/dist/config.hin 2017-06-13 11:15:15.000000000 +0200 -@@ -92,6 +92,9 @@ - /* Define to 1 if you have the header file. */ - #undef HAVE_DLFCN_H - -+/* Define to 1 if you have the `dl_iterate_phdr' function. */ -+#undef HAVE_DL_ITERATE_PHDR -+ - /* Define to 1 to use dtrace for performance monitoring. */ - #undef HAVE_DTRACE - -@@ -125,6 +128,9 @@ - /* Define to 1 if allocated filesystem blocks are not zeroed. */ - #undef HAVE_FILESYSTEM_NOTZERO - -+/* Define to 1 if you have the `flock' function. */ -+#undef HAVE_FLOCK -+ - /* Define to 1 if you have the `fopen' function. */ - #undef HAVE_FOPEN - -@@ -360,6 +366,9 @@ - /* Define to 1 if you have the `pstat_getdynamic' function. */ - #undef HAVE_PSTAT_GETDYNAMIC - -+/* Define to 1 if you have dl_iterate_phdr and use pthread-based mutexes. */ -+#undef HAVE_PTHREADS_TIMESTAMP -+ - /* Define to 1 if it is OK to initialize an already initialized - pthread_cond_t. */ - #undef HAVE_PTHREAD_COND_REINIT_OKAY -@@ -620,6 +629,11 @@ - /* Define to 1 to mask harmless uninitialized memory read/writes. */ - #undef UMRW - -+/* Enable large inode numbers on Mac OS X 10.5. */ -+#ifndef _DARWIN_USE_64_BIT_INODE -+# define _DARWIN_USE_64_BIT_INODE 1 -+#endif -+ - /* Number of bits in a file offset, on hosts where this is settable. */ - #undef _FILE_OFFSET_BITS - -diff -up db-5.3.28/dist/configure.ac.pthreads db-5.3.28/dist/configure.ac ---- db-5.3.28/dist/configure.ac.pthreads 2017-06-13 11:15:15.309215434 +0200 -+++ db-5.3.28/dist/configure.ac 2017-06-13 11:15:15.323215161 +0200 -@@ -698,7 +698,7 @@ AC_REPLACE_FUNCS(\ - # Check for system functions we optionally use. - AC_CHECK_FUNCS(\ - _fstati64 backtrace backtrace_symbols directio fchmod fclose\ -- fcntl fdatasync fgetc fgets fopen fwrite getgid\ -+ fcntl fdatasync fgetc fgets flock fopen fwrite getgid\ - getrusage getuid hstrerror mprotect pstat_getdynamic\ - pthread_self pthread_yield random sched_yield select setgid setuid\ - sigaction snprintf stat sysconf vsnprintf yield) -@@ -1042,6 +1042,34 @@ if test "$db_cv_localization" = "yes"; t - [Define to 1 if you have localization function to support globalization.]) - fi - -+# Check for dl_iterate_phdr; do the test explicitly instead of using -+# AC_CHECK_FUNCS because isn't a standard include file. -+AC_CACHE_CHECK([for dl_iterate_phdr], db_cv_dl_iterate_phdr, [ -+AC_TRY_LINK([ -+#include -+#include ], [ -+ dl_iterate_phdr(0, 0); -+], [db_cv_dl_iterate_phdr=yes], [db_cv_dl_iterate_phdr=no])]) -+if test "$db_cv_dl_iterate_phdr" = "yes"; then -+ AC_DEFINE(HAVE_DL_ITERATE_PHDR) -+ AH_TEMPLATE(HAVE_DL_ITERATE_PHDR, -+ [Define to 1 if you have the `dl_iterate_phdr' function.]) -+fi -+ -+# If we are using pthread mutex or condition variables, and dl_iterate_phdr() is -+# available, then we try to detect when libpthread is updated -- which can -+# render existing environment invalid. DB_ENV->open() tries to rebuild such -+# environments when they are idle. -+case "$db_cv_mutex" in -+ *pthreads*) -+ if test "$db_cv_dl_iterate_phdr" = "yes" ; then -+ AC_DEFINE(HAVE_PTHREADS_TIMESTAMP) -+ AH_TEMPLATE(HAVE_PTHREADS_TIMESTAMP, -+ [Define to 1 if you have dl_iterate_phdr and use pthread-based mutexes.]) -+ fi -+ ;; -+esac -+ - # We need to add the additional object files into the Makefile with the correct - # suffix. We can't use $LTLIBOBJS itself, because that variable has $U encoded - # in it for automake, and that's not what we want. See SR #7227 for additional -diff -up db-5.3.28/src/db/db_meta.c.pthreads db-5.3.28/src/db/db_meta.c ---- db-5.3.28/src/db/db_meta.c.pthreads 2013-09-09 17:35:07.000000000 +0200 -+++ db-5.3.28/src/db/db_meta.c 2017-06-13 11:15:15.323215161 +0200 -@@ -1330,8 +1330,9 @@ __db_haslock(env, locker, dbmfp, pgno, m - } - /* - * __db_has_pagelock -- -- * Determine if this locker holds a particular page lock. -- * Returns 0 if lock is held, non-zero otherwise. -+ * Determine if this locker holds a particular page lock, and return an -+ * error if it is missing a page lock that it should have. -+ * Otherwise (TDS with the page locked, or DS or CDS) return 0. - * - * PUBLIC: #ifdef DIAGNOSTIC - * PUBLIC: int __db_has_pagelock __P((ENV *, DB_LOCKER *, -@@ -1348,6 +1349,9 @@ __db_has_pagelock(env, locker, dbmfp, pa - { - int ret; - -+ if (!FLD_ISSET(env->open_flags, DB_INIT_TXN)) -+ return (0); -+ - switch (pagep->type) { - case P_OVERFLOW: - case P_INVALID: -diff -up db-5.3.28/src/dbinc_auto/int_def.in.pthreads db-5.3.28/src/dbinc_auto/int_def.in ---- db-5.3.28/src/dbinc_auto/int_def.in.pthreads 2017-06-13 11:15:15.317215278 +0200 -+++ db-5.3.28/src/dbinc_auto/int_def.in 2017-06-13 11:15:15.324215141 +0200 -@@ -1545,6 +1545,7 @@ - #if defined(HAVE_REPLICATION_THREADS) - #define __os_freeaddrinfo __os_freeaddrinfo@DB_VERSION_UNIQUE_NAME@ - #endif -+#define __os_pthreads_timestamp __os_pthreads_timestamp@DB_VERSION_UNIQUE_NAME@ - #define __os_umalloc __os_umalloc@DB_VERSION_UNIQUE_NAME@ - #define __os_urealloc __os_urealloc@DB_VERSION_UNIQUE_NAME@ - #define __os_ufree __os_ufree@DB_VERSION_UNIQUE_NAME@ -diff -up db-5.3.28/src/dbinc_auto/os_ext.h.pthreads db-5.3.28/src/dbinc_auto/os_ext.h ---- db-5.3.28/src/dbinc_auto/os_ext.h.pthreads 2013-09-09 17:35:08.000000000 +0200 -+++ db-5.3.28/src/dbinc_auto/os_ext.h 2017-06-13 11:15:15.324215141 +0200 -@@ -14,6 +14,7 @@ int __os_getaddrinfo __P((ENV *, const c - #if defined(HAVE_REPLICATION_THREADS) - void __os_freeaddrinfo __P((ENV *, ADDRINFO *)); - #endif -+time_t __os_pthreads_timestamp __P((ENV *)); - int __os_umalloc __P((ENV *, size_t, void *)); - int __os_urealloc __P((ENV *, size_t, void *)); - void __os_ufree __P((ENV *, void *)); -@@ -40,7 +41,7 @@ void __os_set_errno __P((int)); - char *__os_strerror __P((int, char *, size_t)); - int __os_posix_err __P((int)); - int __os_fileid __P((ENV *, const char *, int, u_int8_t *)); --int __os_fdlock __P((ENV *, DB_FH *, off_t, int, int)); -+int __os_fdlock __P((ENV *, DB_FH *, off_t, db_lockmode_t, int)); - int __os_fsync __P((ENV *, DB_FH *)); - int __os_getenv __P((ENV *, const char *, char **, size_t)); - int __os_openhandle __P((ENV *, const char *, int, int, DB_FH **)); -diff -up db-5.3.28/src/dbinc/region.h.pthreads db-5.3.28/src/dbinc/region.h ---- db-5.3.28/src/dbinc/region.h.pthreads 2013-09-09 17:35:08.000000000 +0200 -+++ db-5.3.28/src/dbinc/region.h 2017-06-13 11:15:15.324215141 +0200 -@@ -178,6 +178,16 @@ typedef struct __db_reg_env { /* SHARED - u_int32_t envid; /* Unique environment ID. */ - - u_int32_t signature; /* Structure signatures. */ -+#if defined(HAVE_PTHREADS_TIMESTAMP) && defined(HAVE_MUTEX_PTHREADS) -+ /* -+ * Updates to glibc/libpthread can change its pthreads implementation -+ * and invalidate on-disk environments, even without changing the -+ * version number. If using POSIX mutexes and a change in this -+ * timestamp is detecting when opening an environment with DB_CREATE, -+ * __env_attach recreates any existing on-disk environment. -+ */ -+ time_t pthreads_timestamp; -+#endif - - time_t timestamp; /* Creation time. */ - -diff -up db-5.3.28/src/env/env_open.c.pthreads db-5.3.28/src/env/env_open.c ---- db-5.3.28/src/env/env_open.c.pthreads 2013-09-09 17:35:08.000000000 +0200 -+++ db-5.3.28/src/env/env_open.c 2017-06-13 11:15:15.324215141 +0200 -@@ -1031,11 +1031,11 @@ __env_attach_regions(dbenv, flags, orig_ - goto err; - - /* -- * __env_attach will return the saved init_flags field, which contains -+ * __env_attach has returned the saved init_flags field, which contains - * the DB_INIT_* flags used when the environment was created. - * -- * We may be joining an environment -- reset our flags to match the -- * ones in the environment. -+ * We may be joining an existing environment -- reset our flags to match -+ * the ones in the environment. - */ - if (FLD_ISSET(init_flags, DB_INITENV_CDB)) - LF_SET(DB_INIT_CDB); -diff -up db-5.3.28/src/env/env_region.c.pthreads db-5.3.28/src/env/env_region.c ---- db-5.3.28/src/env/env_region.c.pthreads 2013-09-09 17:35:08.000000000 +0200 -+++ db-5.3.28/src/env/env_region.c 2017-06-13 11:16:02.159299222 +0200 -@@ -18,13 +18,49 @@ static int __env_des_get __P((ENV *, RE - static int __env_faultmem __P((ENV *, void *, size_t, int)); - static int __env_sys_attach __P((ENV *, REGINFO *, REGION *)); - static int __env_sys_detach __P((ENV *, REGINFO *, int)); -+static int __env_check_recreate __P((ENV *, REGENV *, u_int32_t)); - static void __env_des_destroy __P((ENV *, REGION *)); - static void __env_remove_file __P((ENV *)); - -+ -+/* -+ * If the system supports flock()-like file locking, then the primary region -+ * file __db.001 is exclusively locked during creation, and is read-locked while -+ * the environment is open. Most Unix-like systems have flock(), with the -+ * notable exception of Solaris. -+ * Note: fcntl cannot be used for this locking because of the unfortunate -+ * definition of its interaction with close(2). A process's fcntl locks are -+ * released whenever it closes any file descriptor for that file. So, if an -+ * environment is opened more than once, closing one of the DB_ENV handles would -+ * release the read lock that protects the other handle. -+ */ -+#ifdef HAVE_FLOCK -+#define ENV_PRIMARY_LOCK(env, lockmode, async) \ -+ ((env)->lockfhp == NULL ? 0 : \ -+ __os_fdlock((env), (env)->lockfhp, -1, lockmode, async)) -+#define ENV_PRIMARY_UNLOCK(env) \ -+ ((env)->lockfhp == NULL ? 0 : \ -+ __os_fdlock((env), (env)->lockfhp, -1, DB_LOCK_NG, 0)) -+#else -+#define ENV_PRIMARY_LOCK(env, lockmode, async) (0) -+#define ENV_PRIMARY_UNLOCK(env) (0) -+#endif -+ - /* - * __env_attach - * Join/create the environment - * -+ * Safely detecting and managing multiple processes' environment handles: -+ * BDB uses a shared or exclusive fcntl()-style lock on the first byte -+ * of the primary region file (__db.001) to detect whether other processes -+ * have the environment open, and to single-thread attempts to create the -+ * environment. If the open includes DB_CREATE, an exclusive lock is -+ * obtained during the open call. After the creation is finished, and -+ * anytime during a non-DB_CREATE env open, the process holds a shared -+ * lock. -+ * - single-thread creation of the environment -+ * - detect whether any other processes are currently attached to it. -+ * - * PUBLIC: int __env_attach __P((ENV *, u_int32_t *, int, int)); - */ - int -@@ -122,7 +158,11 @@ loop: renv = NULL; - if ((ret = __os_open( - env, infop->name, 0, DB_OSO_REGION, 0, &env->lockfhp)) != 0) - goto err; -- -+ /* Wait to get shared access to the primary region. */ -+ if ((ret = ENV_PRIMARY_LOCK(env, DB_LOCK_READ, 0)) != 0) { -+ __db_err(env, ret, "__env_attach: existing: shared lock error"); -+ goto err; -+ } - /* - * !!! - * The region may be in system memory not backed by the filesystem -@@ -218,11 +258,10 @@ loop: renv = NULL; - segid = ref.segid; - } - --#ifndef HAVE_MUTEX_FCNTL -+#if !defined(HAVE_FCNTL) && !defined(HAVE_PTHREADS_TIMESTAMP) - /* -- * If we're not doing fcntl locking, we can close the file handle. We -- * no longer need it and the less contact between the buffer cache and -- * the VM, the better. -+ * Without fcntl-like support, we no longer need the file handle. Close -+ * it to limit the interaction between the buffer cache and the VM. - */ - (void)__os_closehandle(env, env->lockfhp); - env->lockfhp = NULL; -@@ -233,6 +272,8 @@ loop: renv = NULL; - tregion.size = (roff_t)size; - tregion.max = (roff_t)max; - tregion.segid = segid; -+ /* Attach to the existing primary region. */ -+ /* The leaking db.001 gets open inside of here, in __os_attach(). */ - if ((ret = __env_sys_attach(env, infop, &tregion)) != 0) - goto err; - -@@ -245,21 +286,48 @@ user_map_functions: - infop->primary = infop->addr; - infop->head = (u_int8_t *)infop->addr + sizeof(REGENV); - renv = infop->primary; -+ ret = __env_check_recreate(env, renv, signature); -+ -+ if (create_ok && -+ ret == DB_OLD_VERSION && -+ ENV_PRIMARY_LOCK(env, DB_LOCK_WRITE, 1) == 0) { -+ if (FLD_ISSET(dbenv->verbose, DB_VERB_RECOVERY)) -+ __db_msg(env, "Recreating idle environment"); -+ F_SET(infop, REGION_CREATE_OK); -+ -+ /* -+ * Detach from the environment region; we need to unmap it (and -+ * close any file handle) so that we don't leak memory or files. -+ */ -+ DB_ASSERT(env, infop->rp == NULL); -+ infop->rp = &tregion; -+ (void)__env_sys_detach(env, infop, 0); -+ goto creation; -+ } -+ -+ /* We have an old environment but cannot rebuild it safely. */ -+ if (ret == DB_OLD_VERSION) { -+ __db_errx(env, DB_STR("1539", -+ "Build signature doesn't match environment")); -+ ret = DB_VERSION_MISMATCH; -+ goto err; -+ } - -- /* -- * Make sure the region matches our build. Special case a region -- * that's all nul bytes, just treat it like any other corruption. -- */ - if (renv->majver != DB_VERSION_MAJOR || - renv->minver != DB_VERSION_MINOR) { -- if (renv->majver != 0 || renv->minver != 0) { -+ /* -+ * Special case a region that's all nul bytes, just treat it -+ * like any other corruption. -+ */ -+ if (renv->majver == 0 && renv->minver == 0) -+ ret = EINVAL; -+ else { - __db_errx(env, DB_STR_A("1538", -- "Program version %d.%d doesn't match environment version %d.%d", -+ "Program version %d.%d doesn't match in-use environment version %d.%d", - "%d %d %d %d"), DB_VERSION_MAJOR, DB_VERSION_MINOR, - renv->majver, renv->minver); - ret = DB_VERSION_MISMATCH; -- } else -- ret = EINVAL; -+ } - goto err; - } - if (renv->signature != signature) { -@@ -289,6 +357,18 @@ user_map_functions: - } - if (renv->magic != DB_REGION_MAGIC) - goto retry; -+ /* -+ * A bad magic number means that the env is new and not yet available: -+ * wait a while and try again. If the magic number says recovery is in -+ * process, remember the env creation time to record that recovery was -+ * the reason that the open failed. -+ */ -+ if (renv->magic != DB_REGION_MAGIC) { -+ __db_msg(env, "attach sees bad region magic 0x%lx", -+ (u_long)renv->magic); -+ goto retry; -+ } -+ - - /* - * Get a reference to the underlying REGION information for this -@@ -346,6 +426,12 @@ user_map_functions: - return (0); - - creation: -+ /* Should this wait for the lock (passing 0 instead of 1)? */ -+ if ((ret = ENV_PRIMARY_LOCK(env, DB_LOCK_WRITE, 1)) != 0) { -+ __db_err(env, ret, "__env_attach: creation could not lock %s", -+ env->lockfhp->name); -+ goto err; -+ } - /* Create the environment region. */ - F_SET(infop, REGION_CREATE); - -@@ -437,7 +523,14 @@ creation: - renv->minver = (u_int32_t)minver; - renv->patchver = (u_int32_t)patchver; - renv->signature = signature; -- -+#ifdef HAVE_PTHREADS_TIMESTAMP -+ renv->pthreads_timestamp = __os_pthreads_timestamp(env); -+ { -+ char *s = getenv("TS_ADJUST"); -+ if (s != NULL) -+ renv->pthreads_timestamp -= atoi(s); -+ } -+#endif - (void)time(&renv->timestamp); - __os_unique_id(env, &renv->envid); - -@@ -513,16 +606,24 @@ find_err: __db_errx(env, DB_STR_A("1544" - } - } - --#ifndef HAVE_MUTEX_FCNTL -- /* -- * If we're not doing fcntl locking, we can close the file handle. We -- * no longer need it and the less contact between the buffer cache and -- * the VM, the better. -- */ -+#ifdef HAVE_FCNTL -+ if ((ret = ENV_PRIMARY_UNLOCK(env)) != 0) { -+ __db_err(env, ret, "__env_attach: release exclusive lock"); -+ goto err; -+ } -+ if ((ret = ENV_PRIMARY_LOCK(env, DB_LOCK_READ, 0)) != 0) { -+ __db_err(env, ret, "__env_attach: new: acquire shared lock"); -+ goto err; -+ } -+#else -+ /* -+ * We no longer need the primary region file's handle and the less -+ * contact between the buffer cache and the VM, the better. -+ */ - if (env->lockfhp != NULL) { - (void)__os_closehandle(env, env->lockfhp); - env->lockfhp = NULL; -- } -+ } - #endif - - /* Everything looks good, we're done. */ -@@ -562,9 +663,9 @@ retry: /* Close any open file handle. */ - /* If we had a temporary error, wait awhile and try again. */ - if (ret == 0) { - if (!retry_ok || ++retry_cnt > 3) { -+ ret = EAGAIN; - __db_errx(env, DB_STR("1546", - "unable to join the environment")); -- ret = EAGAIN; - } else { - __os_yield(env, retry_cnt * 3, 0); - goto loop; -@@ -575,6 +676,59 @@ retry: /* Close any open file handle. */ - } - - /* -+ * __env_check_recreate -- -+ * Determine whether an existing on-disk environment should be recreated -+ * because it is not compatible with this compiled BDB library. -+ * -+ * Returns: -+ * 0 - -+ * The env was generated by this library. No recreation needed. -+ * DB_OLD_VERSION - -+ * It was created by an earlier BDB version, or by an earlier -+ * version of libpthreads (on certain Linux systems). The caller -+ * will try to recreate it with the currently configured settings. -+ * DB_VERSION_MISMATCH - -+ * It was created by a newer version of BDB. Do not attempt to -+ * fix it, something is probably wrong with the application setup. -+ */ -+static int -+__env_check_recreate(env, renv, signature) -+ ENV *env; -+ REGENV *renv; -+ u_int32_t signature; -+{ -+#ifdef HAVE_PTHREADS_TIMESTAMP -+ time_t pthreads_time; -+ char envtime[CTIME_BUFLEN], libtime[CTIME_BUFLEN]; -+#endif -+ -+ /* First, bail out if the env is too new for this code to handle. */ -+ if (renv->majver > DB_VERSION_MAJOR || -+ (renv->majver == DB_VERSION_MAJOR && -+ renv->minver > DB_VERSION_MINOR)) -+ return (DB_VERSION_MISMATCH); -+ -+#ifdef HAVE_PTHREADS_TIMESTAMP -+ pthreads_time = __os_pthreads_timestamp(env); -+ if (pthreads_time != renv->pthreads_timestamp) { -+ if (FLD_ISSET(env->dbenv->verbose, DB_VERB_RECOVERY)) -+ __db_msg(env, -+ "Pthreads timestamp changed: env %.24s current %.24s", -+ __os_ctime(&renv->pthreads_timestamp, envtime), -+ __os_ctime(&pthreads_time, libtime)); -+ return (DB_OLD_VERSION); -+ } -+#endif -+ if (renv->signature != signature || renv->majver != DB_VERSION_MAJOR || -+ renv->minver != DB_VERSION_MINOR) { -+ if (FLD_ISSET(env->dbenv->verbose, DB_VERB_RECOVERY)) -+ __db_msg(env, "Signature or version changed"); -+ return (DB_OLD_VERSION); -+ } -+ return (0); -+} -+ -+/* - * __env_turn_on -- - * Turn on the created environment. - * -diff -up db-5.3.28/src/env/env_register.c.pthreads db-5.3.28/src/env/env_register.c ---- db-5.3.28/src/env/env_register.c.pthreads 2013-09-09 17:35:08.000000000 +0200 -+++ db-5.3.28/src/env/env_register.c 2017-06-13 11:15:15.325215121 +0200 -@@ -19,9 +19,9 @@ - #define PID_LEN (25) /* PID entry length */ - - #define REGISTRY_LOCK(env, pos, nowait) \ -- __os_fdlock(env, (env)->dbenv->registry, (off_t)(pos), 1, nowait) -+ __os_fdlock(env, (env)->dbenv->registry, (off_t)(pos), DB_LOCK_WRITE, nowait) - #define REGISTRY_UNLOCK(env, pos) \ -- __os_fdlock(env, (env)->dbenv->registry, (off_t)(pos), 0, 0) -+ __os_fdlock(env, (env)->dbenv->registry, (off_t)(pos), DB_LOCK_NG, 0) - #define REGISTRY_EXCL_LOCK(env, nowait) \ - REGISTRY_LOCK(env, 1, nowait) - #define REGISTRY_EXCL_UNLOCK(env) \ -diff -up db-5.3.28/src/env/env_stat.c.pthreads db-5.3.28/src/env/env_stat.c ---- db-5.3.28/src/env/env_stat.c.pthreads 2013-09-09 17:35:08.000000000 +0200 -+++ db-5.3.28/src/env/env_stat.c 2017-06-13 11:15:15.325215121 +0200 -@@ -177,6 +177,10 @@ __env_print_stats(env, flags) - STAT_LONG("Txn version", DB_TXNVERSION); - __db_msg(env, - "%.24s\tCreation time", __os_ctime(&renv->timestamp, time_buf)); -+#if defined(HAVE_PTHREADS_TIMESTAMP) && defined(HAVE_MUTEX_PTHREADS) -+ __db_msg(env, -+ "%.24s\tlibpthread timestamp", __os_ctime(&renv->pthreads_timestamp, time_buf)); -+#endif - STAT_HEX("Environment ID", renv->envid); - __mutex_print_debug_single(env, - "Primary region allocation and reference count mutex", -diff -up db-5.3.28/src/os/os_addrinfo.c.pthreads db-5.3.28/src/os/os_addrinfo.c ---- db-5.3.28/src/os/os_addrinfo.c.pthreads 2013-09-09 17:35:09.000000000 +0200 -+++ db-5.3.28/src/os/os_addrinfo.c 2017-06-13 11:15:15.325215121 +0200 -@@ -10,6 +10,10 @@ - - #include "db_int.h" - -+#ifdef HAVE_PTHREADS_TIMESTAMP -+#include -+#endif -+ - /* - * __os_getaddrinfo and __os_freeaddrinfo wrap the getaddrinfo and freeaddrinfo - * calls, as well as the associated platform dependent error handling, mapping -@@ -177,3 +181,48 @@ __os_freeaddrinfo(env, ai) - } - #endif - } -+ -+#ifdef HAVE_PTHREADS_TIMESTAMP -+/* -+ * callback_find_pthreads -- -+ * dl_iterate_phdr() calls this once for each loaded library. -+ * -+ * Returns: -+ * 0 - the library does not appear to be libpthreads. -+ * 1 - the library *does* seem to be libpthreads. Its modification time is -+ * stored into into the last argument's location. -+ */ -+static int -+callback_find_pthreads(struct dl_phdr_info *info, size_t size, void *data) -+{ -+ struct stat stbuf; -+ -+ /* Stop (return non-zero) when libc is found. */ -+ if (strstr(info->dlpi_name, "libpthread") != NULL && -+ stat(info->dlpi_name, &stbuf) == 0) { -+ *(time_t *)data = stbuf.st_mtime; -+ return (1); -+ } -+ COMPQUIET(size, 0); -+ COMPQUIET(data, NULL); -+ return (0); -+} -+ -+/* -+ * __os_pthreads_timestamp -- -+ * -+ * PUBLIC: time_t __os_pthreads_timestamp __P((ENV *)); -+ */ -+time_t -+__os_pthreads_timestamp(env) -+ ENV *env; -+{ -+ time_t timestamp; -+ -+ timestamp = 0; -+ dl_iterate_phdr(callback_find_pthreads, ×tamp); -+ -+ COMPQUIET(env, 0); -+ return (timestamp); -+} -+#endif -diff -up db-5.3.28/src/os/os_flock.c.pthreads db-5.3.28/src/os/os_flock.c ---- db-5.3.28/src/os/os_flock.c.pthreads 2013-09-09 17:35:09.000000000 +0200 -+++ db-5.3.28/src/os/os_flock.c 2017-06-13 11:15:15.325215121 +0200 -@@ -10,41 +10,98 @@ - - #include "db_int.h" - -+#if !defined(HAVE_FCNTL) || !defined(HAVE_FLOCK) -+static int __os_filelocking_notsup __P((ENV *)); -+#endif -+ - /* - * __os_fdlock -- - * Acquire/release a lock on a byte in a file. - * -- * PUBLIC: int __os_fdlock __P((ENV *, DB_FH *, off_t, int, int)); -+ * The lock modes supported here are: -+ * DB_LOCK_NG - release the lock -+ * DB_LOCK_READ - get shared access -+ * DB_LOCK_WRITE - get exclusive access -+ * -+ * Use fcntl()-like semantics most of the time (DB_REGISTER support). Fcntl -+ * supports range locking, but has the additional broken semantics that -+ * closing any of the file's descriptors releases any locks, even if its -+ * other file descriptors remain open. Thanks SYSV & POSIX. -+ * However, if the offset is negative (which is allowed, because POSIX -+ * off_t a signed integer) then use flock() instead. It has only whole- -+ * file locks, but they persist until explicitly unlocked or the process -+ * exits. -+ * PUBLIC: int __os_fdlock __P((ENV *, DB_FH *, off_t, db_lockmode_t, int)); - */ - int --__os_fdlock(env, fhp, offset, acquire, nowait) -+__os_fdlock(env, fhp, offset, lockmode, nowait) - ENV *env; - DB_FH *fhp; -- int acquire, nowait; - off_t offset; -+ db_lockmode_t lockmode; -+ int nowait; - { - #ifdef HAVE_FCNTL - DB_ENV *dbenv; - struct flock fl; - int ret, t_ret; -+ static char *mode_string[DB_LOCK_WRITE + 1] = { -+ "unlock", -+ "read", -+ "write" -+ }; -+ short mode_fcntl[DB_LOCK_WRITE + 1] = { -+ F_UNLCK, -+ F_RDLCK, -+ F_WRLCK -+ }; -+#ifdef HAVE_FLOCK -+ short mode_flock[DB_LOCK_WRITE + 1] = { -+ LOCK_UN, -+ LOCK_SH, -+ LOCK_EX -+ }; -+#endif - - dbenv = env == NULL ? NULL : env->dbenv; - - DB_ASSERT(env, F_ISSET(fhp, DB_FH_OPENED) && fhp->fd != -1); -+ DB_ASSERT(env, lockmode <= DB_LOCK_WRITE); - -- if (dbenv != NULL && FLD_ISSET(dbenv->verbose, DB_VERB_FILEOPS_ALL)) -- __db_msg(env, DB_STR_A("0138", -- "fileops: flock %s %s offset %lu", "%s %s %lu"), fhp->name, -- acquire ? DB_STR_P("acquire"): DB_STR_P("release"), -- (u_long)offset); -- -- fl.l_start = offset; -- fl.l_len = 1; -- fl.l_type = acquire ? F_WRLCK : F_UNLCK; -- fl.l_whence = SEEK_SET; -- -- RETRY_CHK_EINTR_ONLY( -- (fcntl(fhp->fd, nowait ? F_SETLK : F_SETLKW, &fl)), ret); -+ if (dbenv != NULL && FLD_ISSET(dbenv->verbose, DB_VERB_FILEOPS_ALL)) { -+ if (offset < 0) -+ __db_msg(env, DB_STR_A("####", -+ "fileops: flock %s %s %s", "%s %s %s"), -+ fhp->name, mode_string[lockmode], -+ nowait ? "nowait" : ""); -+ else -+ __db_msg(env, DB_STR_A("0020", -+ "fileops: fcntls %s %s offset %lu", "%s %s %lu"), -+ fhp->name, mode_string[lockmode], (u_long)offset); -+ } -+ -+ if (offset < 0) { -+#ifdef HAVE_FLOCK -+ RETRY_CHK_EINTR_ONLY(flock(fhp->fd, -+ mode_flock[lockmode] | (nowait ? LOCK_NB : 0)), ret); -+#else -+ ret = __os_filelocking_notsup(env); -+#endif -+ } else { -+ fl.l_start = offset; -+ fl.l_len = 1; -+ fl.l_whence = SEEK_SET; -+ fl.l_type = mode_fcntl[lockmode]; -+ RETRY_CHK_EINTR_ONLY( -+ fcntl(fhp->fd, nowait ? F_SETLK : F_SETLKW, &fl), ret); -+ } -+ -+ if (offset < 0 && dbenv != NULL && -+ FLD_ISSET(dbenv->verbose, DB_VERB_FILEOPS_ALL)) -+ __db_msg(env, DB_STR_A("####", -+ "fileops: flock %s %s %s returns %s", "%s %s %s"), -+ fhp->name, mode_string[lockmode], -+ nowait ? "nowait" : "", db_strerror(ret)); - - if (ret == 0) - return (0); -@@ -53,12 +110,29 @@ __os_fdlock(env, fhp, offset, acquire, n - __db_syserr(env, ret, DB_STR("0139", "fcntl")); - return (t_ret); - #else -+ ret = __os_filelocking_notsup(env); - COMPQUIET(fhp, NULL); -- COMPQUIET(acquire, 0); -+ COMPQUIET(lockmode, 0); - COMPQUIET(nowait, 0); - COMPQUIET(offset, 0); -+ return (ret) -+#endif -+} -+ -+ -+#if !defined(HAVE_FCNTL) || !defined(HAVE_FLOCK) -+/* -+ * __os_filelocking_notsup -- -+ * Generate an error message if fcntl() or flock() is requested on a -+ * platform that does not support it. -+ * -+ */ -+static int -+__os_filelocking_notsup(env) -+ ENV *env; -+{ - __db_syserr(env, DB_OPNOTSUP, DB_STR("0140", - "advisory file locking unavailable")); - return (DB_OPNOTSUP); --#endif - } -+#endif -diff -up db-5.3.28/src/os/os_map.c.pthreads db-5.3.28/src/os/os_map.c ---- db-5.3.28/src/os/os_map.c.pthreads 2013-09-09 17:35:09.000000000 +0200 -+++ db-5.3.28/src/os/os_map.c 2017-06-13 11:15:15.325215121 +0200 -@@ -32,7 +32,7 @@ static int __no_system_mem __P((ENV *)); - - /* - * __os_attach -- -- * Create/join a shared memory region. -+ * Create/join a 'shared' region of Berkeley DB memory. - * - * PUBLIC: int __os_attach __P((ENV *, REGINFO *, REGION *)); - */ -@@ -50,6 +50,7 @@ __os_attach(env, infop, rp) - * so there must be a valid handle. - */ - DB_ASSERT(env, env != NULL && env->dbenv != NULL); -+ DB_ASSERT(env, infop->fhp == NULL); - dbenv = env->dbenv; - - if (DB_GLOBAL(j_region_map) != NULL) { diff --git a/runtime-optenv32/db+32/autobuild/patches/0014-Fedora-db-5.3.28-condition-variable-ppc.patch b/runtime-optenv32/db+32/autobuild/patches/0014-Fedora-db-5.3.28-condition-variable-ppc.patch deleted file mode 100644 index 0e9ef6b228a..00000000000 --- a/runtime-optenv32/db+32/autobuild/patches/0014-Fedora-db-5.3.28-condition-variable-ppc.patch +++ /dev/null @@ -1,135 +0,0 @@ -diff -up db-5.3.28/src/dbinc_auto/int_def.in.pthreads_ppc db-5.3.28/src/dbinc_auto/int_def.in ---- db-5.3.28/src/dbinc_auto/int_def.in.pthreads_ppc 2017-06-26 15:06:09.282020804 +0200 -+++ db-5.3.28/src/dbinc_auto/int_def.in 2017-06-26 15:06:22.238771039 +0200 -@@ -1572,6 +1572,7 @@ - #define __os_strerror __os_strerror@DB_VERSION_UNIQUE_NAME@ - #define __os_posix_err __os_posix_err@DB_VERSION_UNIQUE_NAME@ - #define __os_fileid __os_fileid@DB_VERSION_UNIQUE_NAME@ -+#define __check_lock_fn __check_lock_fn@DB_VERSION_UNIQUE_NAME@ - #define __os_fdlock __os_fdlock@DB_VERSION_UNIQUE_NAME@ - #define __os_fsync __os_fsync@DB_VERSION_UNIQUE_NAME@ - #define __os_getenv __os_getenv@DB_VERSION_UNIQUE_NAME@ -diff -up db-5.3.28/src/dbinc_auto/os_ext.h.pthreads_ppc db-5.3.28/src/dbinc_auto/os_ext.h ---- db-5.3.28/src/dbinc_auto/os_ext.h.pthreads_ppc 2017-06-26 15:05:23.792897700 +0200 -+++ db-5.3.28/src/dbinc_auto/os_ext.h 2017-06-26 15:06:22.172772311 +0200 -@@ -41,6 +41,7 @@ void __os_set_errno __P((int)); - char *__os_strerror __P((int, char *, size_t)); - int __os_posix_err __P((int)); - int __os_fileid __P((ENV *, const char *, int, u_int8_t *)); -+int __check_lock_fn __P((char *, pid_t)); - int __os_fdlock __P((ENV *, DB_FH *, off_t, db_lockmode_t, int)); - int __os_fsync __P((ENV *, DB_FH *)); - int __os_getenv __P((ENV *, const char *, char **, size_t)); -diff -up db-5.3.28/src/env/env_region.c.pthreads_ppc db-5.3.28/src/env/env_region.c ---- db-5.3.28/src/env/env_region.c.pthreads_ppc 2017-06-26 15:04:40.805726365 +0200 -+++ db-5.3.28/src/env/env_region.c 2017-06-26 15:04:40.807726326 +0200 -@@ -305,14 +305,6 @@ user_map_functions: - goto creation; - } - -- /* We have an old environment but cannot rebuild it safely. */ -- if (ret == DB_OLD_VERSION) { -- __db_errx(env, DB_STR("1539", -- "Build signature doesn't match environment")); -- ret = DB_VERSION_MISMATCH; -- goto err; -- } -- - if (renv->majver != DB_VERSION_MAJOR || - renv->minver != DB_VERSION_MINOR) { - /* -@@ -337,6 +329,20 @@ user_map_functions: - goto err; - } - -+ /* -+ * We have an old environment but cannot rebuild it safely. -+ * The environment might still be readable by the current process -+ * (only the libpthread timestamp changed) if this process is the one -+ * that is holding the lock on the region file as we can be sure -+ * the environment did not get rebuilt under our feet. -+ */ -+ if (ret == DB_OLD_VERSION && __check_lock_fn(env->lockfhp->name, getpid()) ) { -+ __db_errx(env, DB_STR("1539", -+ "Build signature doesn't match environment")); -+ ret = DB_VERSION_MISMATCH; -+ goto err; -+ } -+ - /* - * Check if the environment has had a catastrophic failure. - * -diff -up db-5.3.28/src/os/os_flock.c.pthreads_ppc db-5.3.28/src/os/os_flock.c ---- db-5.3.28/src/os/os_flock.c.pthreads_ppc 2017-06-26 15:04:40.806726346 +0200 -+++ db-5.3.28/src/os/os_flock.c 2017-06-26 15:04:40.807726326 +0200 -@@ -15,6 +15,70 @@ static int __os_filelocking_notsup __P(( - #endif - - /* -+ * __check_lock_fn -- -+ * Parse /proc/locks to see if the file described by 'fn' is locked. -+ * Additionally (if 'pid' is not 0) check if the process holding -+ * the lock has the same pid value as 'pid'. -+ * -+ * Returns 0 if a lock on fn is found, 1 if it is not found and -1 on error. -+ * PUBLIC: int __check_lock_fn __P((char *, pid_t)); -+ */ -+ -+int __check_lock_fn(fn, pid) -+ char *fn; -+ pid_t pid; -+{ -+ FILE* fp; -+ char buffer[PATH_MAX]; -+ char *token; -+ int i, inode; -+ struct stat st; -+ pid_t lpid = 0; -+ -+ if (!fn) -+ return -1; -+ -+ fp = fopen("/proc/locks", "r"); -+ if (!fp) -+ return -1; -+ -+ /* Get the file's inode */ -+ if (stat(fn, &st)) { -+ fclose(fp); -+ return -1; -+ } -+ -+ while (fgets(buffer, sizeof(buffer), fp)) -+ for (token = strtok(buffer, " "), i = 0; token; token = strtok(NULL, " "), i++) { -+ /* Do not parse any other fields */ -+ if (i > 5) -+ break; -+ /* Save the PID */ -+ if (i == 4) -+ lpid = atoi(token); -+ /* Check the inode */ -+ else if (i == 5) { -+ inode = 0; -+ sscanf(token, "%*02x:%*02x:%d", &inode); -+ /* Not the inode we are looking for */ -+ if (inode != st.st_ino) -+ continue; -+ /* -+ * We have the correct file. -+ * We are either looking for a specific process or we do not care at all. -+ */ -+ if (!pid || lpid == pid) { -+ fclose(fp); -+ return 0; -+ } -+ /* Not the lock we are looking for */ -+ } -+ } -+ fclose(fp); -+ return 1; -+} -+ -+/* - * __os_fdlock -- - * Acquire/release a lock on a byte in a file. - * diff --git a/runtime-optenv32/db+32/autobuild/patches/0016-Fedora-db-5.3.28-cwd-db_config.patch b/runtime-optenv32/db+32/autobuild/patches/0016-Fedora-db-5.3.28-cwd-db_config.patch deleted file mode 100644 index 652e962bbe1..00000000000 --- a/runtime-optenv32/db+32/autobuild/patches/0016-Fedora-db-5.3.28-cwd-db_config.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- db-5.3.28/src/env/env_open.c.old 2017-06-26 10:32:11.011419981 +0200 -+++ db-5.3.28/src/env/env_open.c 2017-06-26 10:32:46.893721233 +0200 -@@ -473,7 +473,7 @@ - env->db_mode = mode == 0 ? DB_MODE_660 : mode; - - /* Read the DB_CONFIG file. */ -- if ((ret = __env_read_db_config(env)) != 0) -+ if (env->db_home != NULL && (ret = __env_read_db_config(env)) != 0) - return (ret); - - /* diff --git a/runtime-optenv32/db+32/autobuild/patches/0017-Fedora-libdb-5.3.21-region-size-check.patch b/runtime-optenv32/db+32/autobuild/patches/0017-Fedora-libdb-5.3.21-region-size-check.patch deleted file mode 100644 index 77be25e8267..00000000000 --- a/runtime-optenv32/db+32/autobuild/patches/0017-Fedora-libdb-5.3.21-region-size-check.patch +++ /dev/null @@ -1,39 +0,0 @@ -diff -up db-5.3.21/src/env/env_region.c.zero-region db-5.3.21/src/env/env_region.c ---- db-5.3.21/src/env/env_region.c.zero-region 2012-05-11 19:57:53.000000000 +0200 -+++ db-5.3.21/src/env/env_region.c 2017-09-06 08:50:45.310276385 +0200 -@@ -1060,6 +1060,7 @@ __env_region_attach(env, infop, init, ma - REGION *rp; - int ret; - char buf[sizeof(DB_REGION_FMT) + 20]; -+ struct stat st; - - /* - * Find or create a REGION structure for this region. If we create -@@ -1090,6 +1091,14 @@ __env_region_attach(env, infop, init, ma - if ((ret = __env_sys_attach(env, infop, rp)) != 0) - goto err; - -+ /* Check the size of the underlying file */ -+ if (infop->fhp != NULL && F_ISSET(infop->fhp, DB_FH_OPENED) && -+ infop->fhp->fd != -1 && fstat(infop->fhp->fd, &st) != -1 && -+ st.st_size == 0) { -+ ret = DB_RUNRECOVERY; -+ goto err; -+ } -+ - /* - * Fault the pages into memory. Note, do this BEFORE we initialize - * anything because we're writing pages in created regions, not just -diff -up db-5.3.21/src/os/os_map.c.zero-region db-5.3.21/src/os/os_map.c ---- db-5.3.21/src/os/os_map.c.zero-region 2012-05-11 19:57:54.000000000 +0200 -+++ db-5.3.21/src/os/os_map.c 2017-09-06 08:49:39.144546552 +0200 -@@ -265,6 +265,9 @@ __os_detach(env, infop, destroy) - dbenv = env->dbenv; - - rp = infop->rp; -+ /* Do not touch the region information if it no longer exists */ -+ if (rp == NULL) -+ return EINVAL; - - /* If the user replaced the unmap call, call through their interface. */ - if (DB_GLOBAL(j_region_unmap) != NULL) diff --git a/runtime-optenv32/db+32/autobuild/patches/0018-Fedora-checkpoint-opd-deadlock.patch b/runtime-optenv32/db+32/autobuild/patches/0018-Fedora-checkpoint-opd-deadlock.patch deleted file mode 100644 index 7aab6e129a7..00000000000 --- a/runtime-optenv32/db+32/autobuild/patches/0018-Fedora-checkpoint-opd-deadlock.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- db-5.3.21/src/db/db_cam.c.opd_deadlock 2017-10-31 12:20:54.118979690 +0100 -+++ db-5.3.21/src/db/db_cam.c 2017-10-31 12:21:06.828739341 +0100 -@@ -868,6 +868,11 @@ - flags == DB_PREV || flags == DB_PREV_DUP)) { - if (tmp_rmw && (ret = dbc->am_writelock(dbc)) != 0) - goto err; -+ /* Latch the primary tree page here in order to not deadlock later. */ -+ if (cp->page == NULL && -+ (ret = __memp_fget(mpf, &cp->pgno, -+ dbc->thread_info, dbc->txn, 0, &cp->page)) != 0) -+ goto err; - if (F_ISSET(dbc, DBC_TRANSIENT)) - opd = cp->opd; - else if ((ret = __dbc_idup(cp->opd, &opd, DB_POSITION)) != 0) diff --git a/runtime-optenv32/db+32/autobuild/patches/0019-Fedora-db-5.3.28-atomic_compare_exchange.patch b/runtime-optenv32/db+32/autobuild/patches/0019-Fedora-db-5.3.28-atomic_compare_exchange.patch deleted file mode 100644 index 4eab02cbd39..00000000000 --- a/runtime-optenv32/db+32/autobuild/patches/0019-Fedora-db-5.3.28-atomic_compare_exchange.patch +++ /dev/null @@ -1,20 +0,0 @@ ---- db-5.3.28/src/dbinc/atomic.h.old 2018-05-23 09:20:04.216914922 +0200 -+++ db-5.3.28/src/dbinc/atomic.h 2018-05-23 09:20:49.510057897 +0200 -@@ -144,7 +144,7 @@ - #define atomic_inc(env, p) __atomic_inc(p) - #define atomic_dec(env, p) __atomic_dec(p) - #define atomic_compare_exchange(env, p, o, n) \ -- __atomic_compare_exchange((p), (o), (n)) -+ __db_atomic_compare_exchange((p), (o), (n)) - static inline int __atomic_inc(db_atomic_t *p) - { - int temp; -@@ -176,7 +176,7 @@ - * http://gcc.gnu.org/onlinedocs/gcc-4.1.0/gcc/Atomic-Builtins.html - * which configure could be changed to use. - */ --static inline int __atomic_compare_exchange( -+static inline int __db_atomic_compare_exchange( - db_atomic_t *p, atomic_value_t oldval, atomic_value_t newval) - { - atomic_value_t was; diff --git a/runtime-optenv32/db+32/autobuild/patches/0020-Fedora-libdb-cbd-race.patch b/runtime-optenv32/db+32/autobuild/patches/0020-Fedora-libdb-cbd-race.patch deleted file mode 100644 index ad56d060733..00000000000 --- a/runtime-optenv32/db+32/autobuild/patches/0020-Fedora-libdb-cbd-race.patch +++ /dev/null @@ -1,110 +0,0 @@ -From 4ae2eb88fadc256ddf9862b2e72ed216ddbb919d Mon Sep 17 00:00:00 2001 -From: michael brey -Date: Tue, 20 May 2014 14:49:44 +0200 -Subject: [PATCH] Fix a CDB race - -Report and reproducer here: -https://community.oracle.com/thread/3514381 - -From: michael brey -To: Lubomir Rintel -Subject: Re: BDB crash -Date: Tue, 13 May 2014 09:07:45 -0600 (05/13/2014 05:07:45 PM) -Message-id: <53723541.7040203@oracle.com> - - attached are patches for each release. the 5.3.28 patch will apply on -top of 5.3.21. - -thanks -mike - -RHBZ: #1099509 ---- - src/env/env_failchk.c | 24 ++++++++++++++++++++++++ - src/mutex/mut_tas.c | 18 +++++++++++++++++- - 2 files changed, 41 insertions(+), 1 deletion(-) - -diff --git a/src/env/env_failchk.c b/src/env/env_failchk.c -index 05752f0..b09df96 100644 ---- a/src/env/env_failchk.c -+++ b/src/env/env_failchk.c -@@ -312,6 +312,7 @@ __env_in_api(env) - REGINFO *infop; - THREAD_INFO *thread; - u_int32_t i; -+ pid_t pid; - int unpin, ret; - - if ((htab = env->thr_hashtab) == NULL) -@@ -325,6 +326,7 @@ __env_in_api(env) - - for (i = 0; i < env->thr_nbucket; i++) - SH_TAILQ_FOREACH(ip, &htab[i], dbth_links, __db_thread_info) { -+ pid = ip->dbth_pid; - if (ip->dbth_state == THREAD_SLOT_NOT_IN_USE || - (ip->dbth_state == THREAD_OUT && - thread->thr_count < thread->thr_max)) -@@ -341,6 +343,28 @@ __env_in_api(env) - ip->dbth_state = THREAD_SLOT_NOT_IN_USE; - continue; - } -+ /* -+ * The above tests are not atomic, so it is possible that -+ * the process pointed by ip has changed during the tests. -+ * In particular, if the process pointed by ip when is_alive -+ * was executed terminated normally, a new process may reuse -+ * the same ip structure and change its dbth_state before the -+ * next two tests were performed. Therefore, we need to test -+ * here that all four tests above are done on the same process. -+ * If the process pointed by ip changed, all tests are invalid -+ * and can be ignored. -+ * Similarly, it's also possible for two processes racing to -+ * change the dbth_state of the same ip structure. For example, -+ * both process A and B reach the above test for the same -+ * terminated process C where C's dbth_state is THREAD_OUT. -+ * If A goes into the 'if' block and changes C's dbth_state to -+ * THREAD_SLOT_NOT_IN_USE before B checks the condition, B -+ * would incorrectly fail the test and run into this line. -+ * Therefore, we need to check C's dbth_state again and fail -+ * the db only if C's dbth_state is indeed THREAD_ACTIVE. -+ */ -+ if (ip->dbth_state != THREAD_ACTIVE || ip->dbth_pid != pid) -+ continue; - return (__db_failed(env, DB_STR("1507", - "Thread died in Berkeley DB library"), - ip->dbth_pid, ip->dbth_tid)); -diff --git a/src/mutex/mut_tas.c b/src/mutex/mut_tas.c -index 0899d23..db95030 100644 ---- a/src/mutex/mut_tas.c -+++ b/src/mutex/mut_tas.c -@@ -151,10 +151,26 @@ loop: /* Attempt to acquire the resource for N spins. */ - if (F_ISSET(dbenv, DB_ENV_FAILCHK) && - ip == NULL && dbenv->is_alive(dbenv, - mutexp->pid, mutexp->tid, 0) == 0) { -+ /* -+ * The process owing the mutex is "dead" now, but it may -+ * have already released the mutex. We need to check again -+ * by going back to the top of the loop -+ * if the mutex is still held by the "dead" process. We -+ * yield 10 us to increase the likelyhood of mutexp fields -+ * being up-to-date. Set spin so we spin one more time -+ * because no need to spin more if dead process owns mutex. -+ */ -+ if (nspins > 1) { -+ nspins = 2; -+ __os_yield(env, 0, 10); -+ continue; -+ } - ret = __env_set_state(env, &ip, THREAD_VERIFY); - if (ret != 0 || -- ip->dbth_state == THREAD_FAILCHK) -+ ip->dbth_state == THREAD_FAILCHK) { -+ printf("mut_tas:172, pid: %d, flag: %d\n", mutexp->pid, mutexp->flags); - return (DB_RUNRECOVERY); -+ } - } - if (nowait) - return (DB_LOCK_NOTGRANTED); --- -1.8.3.1 - diff --git a/runtime-optenv32/db+32/autobuild/patches/0021-Fedora-libdb-limit-cpu.patch b/runtime-optenv32/db+32/autobuild/patches/0021-Fedora-libdb-limit-cpu.patch deleted file mode 100644 index 475aa507492..00000000000 --- a/runtime-optenv32/db+32/autobuild/patches/0021-Fedora-libdb-limit-cpu.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Naurp db_old/src/os/os_cpu.c db_new/src/os/os_cpu.c ---- db_old/src/os/os_cpu.c 2012-05-11 12:57:54.000000000 -0500 -+++ db_new/src/os/os_cpu.c 2015-08-12 14:00:37.232498880 -0500 -@@ -40,6 +40,8 @@ __os_cpu_count() - long nproc; - - nproc = sysconf(_SC_NPROCESSORS_ONLN); -+ if (nproc > 1024) -+ nproc = 1024; - return ((u_int32_t)(nproc > 1 ? nproc : 1)); - #else - return (1); diff --git a/runtime-optenv32/db+32/autobuild/patches/0022-Fedora-libdb-5.3.21-trickle_cpu.patch b/runtime-optenv32/db+32/autobuild/patches/0022-Fedora-libdb-5.3.21-trickle_cpu.patch deleted file mode 100644 index 20b0e88de1c..00000000000 --- a/runtime-optenv32/db+32/autobuild/patches/0022-Fedora-libdb-5.3.21-trickle_cpu.patch +++ /dev/null @@ -1,150 +0,0 @@ -diff -up db-5.3.21/src/dbinc_auto/int_def.in.trickle db-5.3.21/src/dbinc_auto/int_def.in ---- db-5.3.21/src/dbinc_auto/int_def.in.trickle 2018-08-21 10:54:06.066757392 +0200 -+++ db-5.3.21/src/dbinc_auto/int_def.in 2018-08-21 10:54:06.111756561 +0200 -@@ -1458,6 +1458,7 @@ - #define __memp_sync_int __memp_sync_int@DB_VERSION_UNIQUE_NAME@ - #define __memp_mf_sync __memp_mf_sync@DB_VERSION_UNIQUE_NAME@ - #define __memp_purge_dead_files __memp_purge_dead_files@DB_VERSION_UNIQUE_NAME@ -+#define __memp_purge_dead_and_count __memp_purge_dead_and_count@DB_VERSION_UNIQUE_NAME@ - #define __memp_trickle_pp __memp_trickle_pp@DB_VERSION_UNIQUE_NAME@ - #define __mutex_alloc __mutex_alloc@DB_VERSION_UNIQUE_NAME@ - #define __mutex_alloc_int __mutex_alloc_int@DB_VERSION_UNIQUE_NAME@ -diff -up db-5.3.21/src/dbinc_auto/mp_ext.h.trickle db-5.3.21/src/dbinc_auto/mp_ext.h ---- db-5.3.21/src/dbinc_auto/mp_ext.h.trickle 2018-08-21 10:54:06.103756709 +0200 -+++ db-5.3.21/src/dbinc_auto/mp_ext.h 2018-08-21 10:54:06.112756543 +0200 -@@ -101,6 +101,7 @@ int __mp_xxx_fh __P((DB_MPOOLFILE *, DB_ - int __memp_sync_int __P((ENV *, DB_MPOOLFILE *, u_int32_t, u_int32_t, u_int32_t *, int *)); - int __memp_mf_sync __P((DB_MPOOL *, MPOOLFILE *, int)); - int __memp_purge_dead_files __P((ENV *)); -+int __memp_purge_dead_and_count __P((ENV *, u_int32_t *, u_int32_t *)); - int __memp_trickle_pp __P((DB_ENV *, int, int *)); - - #if defined(__cplusplus) -diff -up db-5.3.21/src/mp/mp_sync.c.trickle db-5.3.21/src/mp/mp_sync.c ---- db-5.3.21/src/mp/mp_sync.c.trickle 2018-08-21 10:54:06.105756672 +0200 -+++ db-5.3.21/src/mp/mp_sync.c 2018-09-04 09:43:57.502992291 +0200 -@@ -965,17 +965,34 @@ __bhcmp(p1, p2) - return (0); - } - -+ - /* - * __memp_purge_dead_files -- -+ * Thin wrapper over __memp_purge_dead_and_count. Does not return any -+ * information about the number of total/dirty buffers. -+ * -+ * PUBLIC: int __memp_purge_dead_files __P((ENV *)); -+ */ -+int -+__memp_purge_dead_files(env) -+ ENV *env; -+{ -+ return __memp_purge_dead_and_count(env, NULL, NULL); -+} -+ -+/* -+ * __memp_purge_dead_and_count -- - * Remove all dead files and their buffers from the mpool. The caller - * cannot hold any lock on the dead MPOOLFILE handles, their buffers - * or their hash buckets. - * -- * PUBLIC: int __memp_purge_dead_files __P((ENV *)); -+ * PUBLIC: int __memp_purge_dead_and_count __P((ENV *, u_int32_t *, u_int32_t *)); - */ - int --__memp_purge_dead_files(env) -+__memp_purge_dead_and_count(env, totalp, dirtyp) - ENV *env; -+ u_int32_t *totalp; -+ u_int32_t *dirtyp; - { - BH *bhp; - DB_MPOOL *dbmp; -@@ -983,7 +1000,7 @@ __memp_purge_dead_files(env) - REGINFO *infop; - MPOOL *c_mp, *mp; - MPOOLFILE *mfp; -- u_int32_t i_cache; -+ u_int32_t i_cache, dirty, total; - int ret, t_ret, h_lock; - - if (!MPOOL_ON(env)) -@@ -992,6 +1009,7 @@ __memp_purge_dead_files(env) - dbmp = env->mp_handle; - mp = dbmp->reginfo[0].primary; - ret = t_ret = h_lock = 0; -+ dirty = total = 0; - - /* - * Walk each cache's list of buffers and free all buffers whose -@@ -1000,6 +1018,7 @@ __memp_purge_dead_files(env) - for (i_cache = 0; i_cache < mp->nreg; i_cache++) { - infop = &dbmp->reginfo[i_cache]; - c_mp = infop->primary; -+ total += c_mp->pages; - - hp = R_ADDR(infop, c_mp->htab); - hp_end = &hp[c_mp->htab_buckets]; -@@ -1008,6 +1027,9 @@ __memp_purge_dead_files(env) - if (SH_TAILQ_FIRST(&hp->hash_bucket, __bh) == NULL) - continue; - -+ /* Count dirty pages first as we do not wait on mutex locks */ -+ dirty += (u_int32_t)atomic_read(&hp->hash_page_dirty); -+ - /* - * Search for a dead buffer. Other places that call - * __memp_bhfree() acquire the buffer lock before the -@@ -1073,6 +1095,11 @@ __memp_purge_dead_files(env) - } - } - -+ if (dirtyp != NULL) -+ *dirtyp = dirty; -+ if (totalp != NULL) -+ *totalp = total; -+ - return (ret); - } - -diff -up db-5.3.21/src/mp/mp_trickle.c.trickle db-5.3.21/src/mp/mp_trickle.c ---- db-5.3.21/src/mp/mp_trickle.c.trickle 2018-08-21 10:54:06.105756672 +0200 -+++ db-5.3.21/src/mp/mp_trickle.c 2018-08-21 10:54:06.112756543 +0200 -@@ -56,6 +56,7 @@ __memp_trickle(env, pct, nwrotep) - - dbmp = env->mp_handle; - mp = dbmp->reginfo[0].primary; -+ dirty = total = 0; - - if (nwrotep != NULL) - *nwrotep = 0; -@@ -67,12 +68,8 @@ __memp_trickle(env, pct, nwrotep) - return (EINVAL); - } - -- /* First we purge all dead files and their buffers. */ -- if ((ret = __memp_purge_dead_files(env)) != 0) -- return (ret); -- -- /* -- * Loop through the caches counting total/dirty buffers. -+ /* First we purge all dead files and their buffers and -+ * loop through the caches counting total/dirty buffers. - * - * XXX - * Using hash_page_dirty is our only choice at the moment, but it's not -@@ -80,12 +77,8 @@ __memp_trickle(env, pct, nwrotep) - * than one page size, as a free 512B buffer may not be equivalent to - * having a free 8KB buffer. - */ -- for (ret = 0, i = dirty = total = 0; i < mp->nreg; ++i) { -- c_mp = dbmp->reginfo[i].primary; -- total += c_mp->pages; -- __memp_stat_hash(&dbmp->reginfo[i], c_mp, &dtmp); -- dirty += dtmp; -- } -+ if ((ret = __memp_purge_dead_and_count(env, &total, &dirty)) != 0) -+ return (ret); - - /* - * If there are sufficient clean buffers, no buffers or no dirty diff --git a/runtime-optenv32/db+32/autobuild/patches/0023-Fedora-db-5.3.28_cve-2019-2708.patch b/runtime-optenv32/db+32/autobuild/patches/0023-Fedora-db-5.3.28_cve-2019-2708.patch deleted file mode 100644 index 341cb4b6ab4..00000000000 --- a/runtime-optenv32/db+32/autobuild/patches/0023-Fedora-db-5.3.28_cve-2019-2708.patch +++ /dev/null @@ -1,694 +0,0 @@ ---- db-18.1.32/src/btree/bt_cursor.c 2019-02-20 03:21:20.000000000 +0530 -+++ db-18.1.40/src/btree/bt_cursor.c 2020-05-29 23:28:22.000000000 +0530 -@@ -282,6 +282,8 @@ - * - * Recno uses the btree bt_ovflsize value -- it's close enough. - */ -+ if (t->bt_minkey == 0) -+ return (DB_RECOVER); - cp->ovflsize = B_MINKEY_TO_OVFLSIZE( - dbp, F_ISSET(dbc, DBC_OPD) ? 2 : t->bt_minkey, dbp->pgsize); - ---- db-18.1.32/src/btree/bt_verify.c 2019-02-20 03:21:20.000000000 +0530 -+++ db-18.1.40/src/btree/bt_verify.c 2020-05-29 23:28:22.000000000 +0530 -@@ -700,7 +700,11 @@ - isbad = 1; - goto err; - default: -+ if (ret == 0) { -+ isbad = 1; -+ ret = DB_VERIFY_FATAL; -+ goto err; -+ } -- DB_ASSERT(env, ret != 0); - break; - } - -@@ -1074,7 +1078,7 @@ - DBT dbta, dbtb, dup_1, dup_2, *p1, *p2, *tmp; - ENV *env; - PAGE *child; -+ db_pgno_t cpgno, grandparent; -- db_pgno_t cpgno; - VRFY_PAGEINFO *pip; - db_indx_t i, *inp; - int adj, cmp, freedup_1, freedup_2, isbad, ret, t_ret; -@@ -1106,7 +1110,8 @@ - - buf1 = buf2 = NULL; - -+ if (LF_ISSET(DB_NOORDERCHK)) -+ return (EINVAL); -- DB_ASSERT(env, !LF_ISSET(DB_NOORDERCHK)); - - dupfunc = (dbp->dup_compare == NULL) ? __bam_defcmp : dbp->dup_compare; - if (TYPE(h) == P_LDUP) -@@ -1115,6 +1120,7 @@ - func = __bam_defcmp; - if (dbp->bt_internal != NULL) { - bt = (BTREE *)dbp->bt_internal; -+ grandparent = bt->bt_root; - if (TYPE(h) == P_IBTREE && (bt->bt_compare != NULL || - dupfunc != __bam_defcmp)) { - /* -@@ -974,8 +980,24 @@ - */ - mpf = dbp->mpf; - child = h; -+ cpgno = pgno; - while (TYPE(child) == P_IBTREE) { -+ if (NUM_ENT(child) == 0) { -+ EPRINT((env, DB_STR_A("1088", -+ "Page %lu: internal page is empty and should not be", -+ "%lu"), (u_long)cpgno)); -+ ret = DB_VERIFY_BAD; -+ goto err; -+ } - bi = GET_BINTERNAL(dbp, child, 0); -+ if (grandparent == bi->pgno) { -+ EPRINT((env, DB_STR_A("5552", -+ "Page %lu: found twice in the btree", -+ "%lu"), (u_long)grandparent)); -+ ret = DB_VERIFY_FATAL; -+ goto err; -+ } else -+ grandparent = cpgno; - cpgno = bi->pgno; - if (child != h && - (ret = __memp_fput(mpf, -@@ -1402,7 +1416,10 @@ - */ - if (dup_1.data == NULL || - dup_2.data == NULL) { -+ if (ovflok) { -+ isbad = 1; -+ goto err; -+ } -- DB_ASSERT(env, !ovflok); - if (pip != NULL) - F_SET(pip, - VRFY_INCOMPLETE); -@@ -1747,9 +1764,10 @@ - (ret = __db_vrfy_ovfl_structure(dbp, vdp, - child->pgno, child->tlen, - flags | DB_ST_OVFL_LEAF)) != 0) { -+ if (ret == DB_VERIFY_BAD) { -- if (ret == DB_VERIFY_BAD) - isbad = 1; -+ break; -+ } else -- else - goto done; - } - -@@ -1823,9 +1841,10 @@ - stflags | DB_ST_TOPLEVEL, - NULL, NULL, NULL)) != 0) { - if (ret == -+ DB_VERIFY_BAD) { -- DB_VERIFY_BAD) - isbad = 1; -+ break; -+ } else -- else - goto err; - } - } -@@ -1969,7 +1988,10 @@ - */ - - /* Otherwise, __db_vrfy_childput would be broken. */ -+ if (child->refcnt < 1) { -+ isbad = 1; -+ goto err; -+ } -- DB_ASSERT(env, child->refcnt >= 1); - - /* - * An overflow referenced more than twice here -@@ -1986,9 +2008,10 @@ - if ((ret = __db_vrfy_ovfl_structure(dbp, - vdp, child->pgno, child->tlen, - flags)) != 0) { -+ if (ret == DB_VERIFY_BAD) { -- if (ret == DB_VERIFY_BAD) - isbad = 1; -+ break; -+ } else -- else - goto done; - } - } -@@ -2026,9 +2049,10 @@ - if ((ret = __bam_vrfy_subtree(dbp, vdp, li->pgno, - i == 0 ? NULL : li, ri, flags, &child_level, - &child_nrecs, NULL)) != 0) { -+ if (ret == DB_VERIFY_BAD) { -- if (ret == DB_VERIFY_BAD) - isbad = 1; -+ break; -+ } else -- else - goto done; - } - -@@ -2929,7 +2953,11 @@ - db_pgno_t current, p; - int err_ret, ret; - -+ if (pgset == NULL) { -+ EPRINT((dbp->env, DB_STR("5542", -+ "Error, database contains no visible pages."))); -+ return (DB_RUNRECOVERY); -+ } -- DB_ASSERT(dbp->env, pgset != NULL); - - mpf = dbp->mpf; - h = NULL; ---- db-18.1.32/src/db/db_conv.c 2019-02-20 03:21:20.000000000 +0530 -+++ db-18.1.40/src/db/db_conv.c 2020-05-29 23:28:22.000000000 +0530 -@@ -493,8 +493,11 @@ - db_indx_t i, *inp, len, tmp; - u_int8_t *end, *p, *pgend; - -- if (pagesize == 0) -- return (0); -+ /* This function is also used to byteswap logs, so -+ * the pagesize might not be an actual page size. -+ */ -+ if (!(pagesize >= 24 && pagesize <= DB_MAX_PGSIZE)) -+ return (EINVAL); - - if (pgin) { - M_32_SWAP(h->lsn.file); -@@ -513,26 +516,41 @@ - pgend = (u_int8_t *)h + pagesize; - - inp = P_INP(dbp, h); -- if ((u_int8_t *)inp >= pgend) -- goto out; -+ if ((u_int8_t *)inp > pgend) -+ return (__db_pgfmt(env, pg)); - - switch (TYPE(h)) { - case P_HASH_UNSORTED: - case P_HASH: - for (i = 0; i < NUM_ENT(h); i++) { -+ if ((u_int8_t*)(inp + i) >= pgend) -+ return (__db_pgfmt(env, pg)); -+ if (inp[i] == 0) -+ continue; - if (pgin) - M_16_SWAP(inp[i]); -+ if (inp[i] >= pagesize) -+ return (__db_pgfmt(env, pg)); - -- if (P_ENTRY(dbp, h, i) >= pgend) -- continue; -+ if (P_ENTRY(dbp, h, i) >= pgend) -+ return (__db_pgfmt(env, pg)); - - switch (HPAGE_TYPE(dbp, h, i)) { - case H_KEYDATA: - break; - case H_DUPLICATE: -+ if (LEN_HITEM(dbp, h, pagesize, i) < -+ HKEYDATA_SIZE(0)) -+ return (__db_pgfmt(env, pg)); -+ - len = LEN_HKEYDATA(dbp, h, pagesize, i); - p = HKEYDATA_DATA(P_ENTRY(dbp, h, i)); -- for (end = p + len; p < end;) { -+ -+ end = p + len; -+ if (end > pgend) -+ return (__db_pgfmt(env, pg)); -+ -+ while (p < end) { - if (pgin) { - P_16_SWAP(p); - memcpy(&tmp, -@@ -544,14 +562,20 @@ - SWAP16(p); - } - p += tmp; -+ if (p >= end) -+ return (__db_pgfmt(env, pg)); - SWAP16(p); - } - break; - case H_OFFDUP: -+ if ((inp[i] + HOFFDUP_SIZE) > pagesize) -+ return (__db_pgfmt(env, pg)); - p = HOFFPAGE_PGNO(P_ENTRY(dbp, h, i)); - SWAP32(p); /* pgno */ - break; - case H_OFFPAGE: -+ if ((inp[i] + HOFFPAGE_SIZE) > pagesize) -+ return (__db_pgfmt(env, pg)); - p = HOFFPAGE_PGNO(P_ENTRY(dbp, h, i)); - SWAP32(p); /* pgno */ - SWAP32(p); /* tlen */ -@@ -559,7 +583,6 @@ - default: - return (__db_pgfmt(env, pg)); - } -- - } - - /* -@@ -576,8 +599,12 @@ - case P_LDUP: - case P_LRECNO: - for (i = 0; i < NUM_ENT(h); i++) { -+ if ((u_int8_t *)(inp + i) >= pgend) -+ return (__db_pgfmt(env, pg)); - if (pgin) - M_16_SWAP(inp[i]); -+ if (inp[i] >= pagesize) -+ return (__db_pgfmt(env, pg)); - - /* - * In the case of on-page duplicates, key information -@@ -597,7 +624,7 @@ - - bk = GET_BKEYDATA(dbp, h, i); - if ((u_int8_t *)bk >= pgend) -- continue; -+ return (__db_pgfmt(env, pg)); - switch (B_TYPE(bk->type)) { - case B_KEYDATA: - M_16_SWAP(bk->len); -@@ -605,6 +632,8 @@ - case B_DUPLICATE: - case B_OVERFLOW: - bo = (BOVERFLOW *)bk; -+ if (((u_int8_t *)bo + BOVERFLOW_SIZE) > pgend) -+ return (__db_pgfmt(env, pg)); - M_32_SWAP(bo->pgno); - M_32_SWAP(bo->tlen); - break; -@@ -618,12 +647,17 @@ - break; - case P_IBTREE: - for (i = 0; i < NUM_ENT(h); i++) { -+ if ((u_int8_t *)(inp + i) > pgend) -+ return (__db_pgfmt(env, pg)); - if (pgin) - M_16_SWAP(inp[i]); -+ if ((u_int16_t)(inp[i] + -+ BINTERNAL_SIZE(0) - 1) > pagesize) -+ break; - - bi = GET_BINTERNAL(dbp, h, i); -- if ((u_int8_t *)bi >= pgend) -- continue; -+ if (((u_int8_t *)bi + BINTERNAL_SIZE(0)) > pgend) -+ return (__db_pgfmt(env, pg)); - - M_16_SWAP(bi->len); - M_32_SWAP(bi->pgno); -@@ -634,6 +668,10 @@ - break; - case B_DUPLICATE: - case B_OVERFLOW: -+ if ((u_int16_t)(inp[i] + -+ BINTERNAL_SIZE(BOVERFLOW_SIZE) - 1) > -+ pagesize) -+ goto out; - bo = (BOVERFLOW *)bi->data; - M_32_SWAP(bo->pgno); - M_32_SWAP(bo->tlen); -@@ -648,12 +686,16 @@ - break; - case P_IRECNO: - for (i = 0; i < NUM_ENT(h); i++) { -+ if ((u_int8_t *)(inp + i) >= pgend) -+ return (__db_pgfmt(env, pg)); - if (pgin) - M_16_SWAP(inp[i]); -+ if (inp[i] >= pagesize) -+ return (__db_pgfmt(env, pg)); - - ri = GET_RINTERNAL(dbp, h, i); -- if ((u_int8_t *)ri >= pgend) -- continue; -+ if ((((u_int8_t *)ri) + RINTERNAL_SIZE) > pgend) -+ return (__db_pgfmt(env, pg)); - - M_32_SWAP(ri->pgno); - M_32_SWAP(ri->nrecs); ---- db-18.1.32/src/db/db_vrfy.c 2019-02-20 03:21:20.000000000 +0530 -+++ db-18.1.40/src/db/db_vrfy.c 2020-05-29 23:28:22.000000000 +0530 -@@ -381,8 +381,10 @@ - vdp, name, 0, lp, rp, flags)) != 0) { - if (t_ret == DB_VERIFY_BAD) - isbad = 1; -+ else { -+ ret = t_ret; -+ goto err; -+ } -- else -- goto err; - } - - /* -@@ -771,9 +773,10 @@ - */ - if ((t_ret = __memp_fget(mpf, &i, - vdp->thread_info, NULL, 0, &h)) != 0) { -+ if ((dbp->type == DB_HASH || -- if (dbp->type == DB_HASH || - (dbp->type == DB_QUEUE && -+ F_ISSET(dbp, DB_AM_INMEM))) && -+ t_ret != DB_RUNRECOVERY) { -- F_ISSET(dbp, DB_AM_INMEM))) { - if ((t_ret = - __db_vrfy_getpageinfo(vdp, i, &pip)) != 0) - goto err1; -@@ -945,6 +948,8 @@ - return (ret == 0 ? t_ret : ret); - } - -+ if (ret == DB_PAGE_NOTFOUND && isbad == 1) -+ ret = 0; - return ((isbad == 1 && ret == 0) ? DB_VERIFY_BAD : ret); - } - -@@ -1581,7 +1586,7 @@ - if (pgno == PGNO_BASE_MD && - dbtype != DB_QUEUE && meta->last_pgno != vdp->last_pgno) { - #ifdef HAVE_FTRUNCATE -+ ret = DB_VERIFY_FATAL; -- isbad = 1; - EPRINT((env, DB_STR_A("0552", - "Page %lu: last_pgno is not correct: %lu != %lu", - "%lu %lu %lu"), (u_long)pgno, -@@ -1622,7 +1627,11 @@ - - env = dbp->env; - pgset = vdp->pgset; -+ if (pgset == NULL) { -+ EPRINT((env, DB_STR("5543", -+ "Error, database contains no visible pages."))); -+ return (DB_RUNRECOVERY); -+ } -- DB_ASSERT(env, pgset != NULL); - - if ((ret = __db_vrfy_getpageinfo(vdp, meta, &pip)) != 0) - return (ret); -@@ -2014,7 +2023,8 @@ - int keyflag, ret, t_ret; - - env = dbp->env; -+ if (!LF_ISSET(DB_SALVAGE)) -+ return (EINVAL); -- DB_ASSERT(env, LF_ISSET(DB_SALVAGE)); - - /* - * !!! -@@ -2126,10 +2136,8 @@ - int (*callback) __P((void *, const void *)); - u_int32_t flags; - { -- ENV *env; -- -- env = dbp->env; -- DB_ASSERT(env, LF_ISSET(DB_SALVAGE)); -+ if (!LF_ISSET(DB_SALVAGE)) -+ return (EINVAL); - - /* If we got this page in the subdb pass, we can safely skip it. */ - if (__db_salvage_isdone(vdp, pgno)) -@@ -2242,8 +2253,8 @@ - ret = t_ret; - break; - case SALVAGE_OVERFLOW: -+ EPRINT((env, DB_STR("5544", "Invalid page type to salvage."))); -+ return (EINVAL); -- DB_ASSERT(env, 0); /* Shouldn't ever happen. */ -- break; - case SALVAGE_HASH: - if ((t_ret = __ham_salvage(dbp, vdp, - pgno, h, handle, callback, flags)) != 0 && ret == 0) -@@ -2256,8 +2267,8 @@ - * Shouldn't happen, but if it does, just do what the - * nice man says. - */ -+ EPRINT((env, DB_STR("5545", "Invalid page type to salvage."))); -+ return (EINVAL); -- DB_ASSERT(env, 0); -- break; - } - if ((t_ret = __memp_fput(mpf, - vdp->thread_info, h, dbp->priority)) != 0 && ret == 0) -@@ -2303,8 +2314,8 @@ - ret = t_ret; - break; - default: -+ EPRINT((env, DB_STR("5546", "Invalid page type to salvage."))); -+ return (EINVAL); -- DB_ASSERT(env, 0); /* Shouldn't ever happen. */ -- break; - } - if ((t_ret = __memp_fput(mpf, - vdp->thread_info, h, dbp->priority)) != 0 && ret == 0) -@@ -2361,7 +2372,10 @@ - - env = dbp->env; - -+ if (himarkp == NULL) { -+ __db_msg(env, "Page %lu index has no end.", (u_long)pgno); -+ return (DB_VERIFY_FATAL); -+ } -- DB_ASSERT(env, himarkp != NULL); - inp = P_INP(dbp, h); - - /* -@@ -2783,7 +2797,11 @@ - goto err; - ovfl_bufsz = bkkey->len + 1; - } -+ if (subdbname == NULL) { -+ EPRINT((env, DB_STR("5547", "Subdatabase cannot be null."))); -+ ret = EINVAL; -+ goto err; -+ } -- DB_ASSERT(env, subdbname != NULL); - memcpy(subdbname, bkkey->data, bkkey->len); - subdbname[bkkey->len] = '\0'; - } ---- db-18.1.32/src/db/db_vrfyutil.c 2019-02-20 03:21:20.000000000 +0530 -+++ db-18.1.40/src/db/db_vrfyutil.c 2020-05-29 23:28:22.000000000 +0530 -@@ -214,7 +214,8 @@ - if ((ret = __db_get(pgdbp, - vdp->thread_info, vdp->txn, &key, &data, 0)) == 0) { - /* Found it. */ -+ if (data.size != sizeof(VRFY_PAGEINFO)) -+ return (DB_VERIFY_FATAL); -- DB_ASSERT(env, data.size == sizeof(VRFY_PAGEINFO)); - pip = data.data; - LIST_INSERT_HEAD(&vdp->activepips, pip, links); - goto found; -@@ -342,7 +343,8 @@ - F_SET(&data, DB_DBT_USERMEM); - - if ((ret = __db_get(dbp, ip, txn, &key, &data, 0)) == 0) { -+ if (data.size != sizeof(int)) -+ return (EINVAL); -- DB_ASSERT(dbp->env, data.size == sizeof(int)); - } else if (ret == DB_NOTFOUND) - val = 0; - else -@@ -382,7 +384,8 @@ - F_SET(&data, DB_DBT_USERMEM); - - if ((ret = __db_get(dbp, ip, txn, &key, &data, 0)) == 0) { -+ if (data.size != sizeof(int)) -+ return (DB_VERIFY_FATAL); -- DB_ASSERT(dbp->env, data.size == sizeof(int)); - } else if (ret != DB_NOTFOUND) - return (ret); - -@@ -419,7 +422,8 @@ - if ((ret = __dbc_get(dbc, &key, &data, DB_NEXT)) != 0) - return (ret); - -+ if (key.size != sizeof(db_pgno_t)) -+ return (DB_VERIFY_FATAL); -- DB_ASSERT(dbc->env, key.size == sizeof(db_pgno_t)); - *pgnop = pgno; - - return (0); -@@ -566,7 +570,8 @@ - if ((ret = __dbc_get(dbc, &key, &data, DB_SET)) != 0) - return (ret); - -+ if (data.size != sizeof(VRFY_CHILDINFO)) -+ return (DB_VERIFY_FATAL); -- DB_ASSERT(dbc->env, data.size == sizeof(VRFY_CHILDINFO)); - *cipp = (VRFY_CHILDINFO *)data.data; - - return (0); -@@ -594,7 +599,8 @@ - if ((ret = __dbc_get(dbc, &key, &data, DB_NEXT_DUP)) != 0) - return (ret); - -+ if (data.size != sizeof(VRFY_CHILDINFO)) -+ return (DB_VERIFY_FATAL); -- DB_ASSERT(dbc->env, data.size == sizeof(VRFY_CHILDINFO)); - *cipp = (VRFY_CHILDINFO *)data.data; - - return (0); -@@ -721,7 +727,8 @@ - return (ret); - - while ((ret = __dbc_get(*dbcp, &key, &data, DB_NEXT)) == 0) { -+ if (data.size != sizeof(u_int32_t)) -+ return (DB_VERIFY_FATAL); -- DB_ASSERT(dbp->env, data.size == sizeof(u_int32_t)); - memcpy(&pgtype, data.data, sizeof(pgtype)); - - if (skip_overflow && pgtype == SALVAGE_OVERFLOW) -@@ -730,8 +737,9 @@ - if ((ret = __dbc_del(*dbcp, 0)) != 0) - return (ret); - if (pgtype != SALVAGE_IGNORE) { -+ if (key.size != sizeof(db_pgno_t) -+ || data.size != sizeof(u_int32_t)) -+ return (DB_VERIFY_FATAL); -- DB_ASSERT(dbp->env, key.size == sizeof(db_pgno_t)); -- DB_ASSERT(dbp->env, data.size == sizeof(u_int32_t)); - - *pgnop = *(db_pgno_t *)key.data; - *pgtypep = *(u_int32_t *)data.data; ---- db-18.1.32/src/db/partition.c 2019-02-20 03:21:20.000000000 +0530 -+++ db-18.1.40/src/db/partition.c 2020-05-29 23:28:22.000000000 +0530 -@@ -461,9 +461,19 @@ - } else - part->nparts = meta->nparts; - } else if (meta->nparts != 0 && part->nparts != meta->nparts) { -+ ret = EINVAL; - __db_errx(env, DB_STR("0656", - "Number of partitions does not match.")); -- ret = EINVAL; -+ goto err; -+ } -+ /* -+ * There is no limit on the number of partitions, but I cannot imagine a real -+ * database having more than 10000. -+ */ -+ if (meta->nparts > 10000) { -+ ret = EINVAL; -+ __db_errx(env, DB_STR_A("5553", -+ "Too many partitions %lu", "%lu"), (u_long)(meta->nparts)); - goto err; - } - -@@ -2106,10 +2116,13 @@ - memcpy(rp->data, key->data, key->size); - B_TSET(rp->type, B_KEYDATA); - } -+vrfy: if ((t_ret = __db_verify(*pdbp, ip, (*pdbp)->fname, -+ NULL, handle, callback, -+ lp, rp, flags | DB_VERIFY_PARTITION)) != 0 && ret == 0) { -+ ret = t_ret; -+ if (ret == ENOENT) -+ break; -+ } --vrfy: if ((t_ret = __db_verify(*pdbp, ip, (*pdbp)->fname, -- NULL, handle, callback, -- lp, rp, flags | DB_VERIFY_PARTITION)) != 0 && ret == 0) -- ret = t_ret; - } - - err: if (lp != NULL) ---- db-18.1.32/src/hash/hash_page.c 2019-02-20 03:21:20.000000000 +0530 -+++ db-18.1.40/src/hash/hash_page.c 2020-05-29 23:28:22.000000000 +0530 -@@ -869,7 +869,11 @@ - /* Validate that next, prev pointers are OK */ - n = NUM_ENT(p); - dbp = dbc->dbp; -+ if (n % 2 != 0) { -+ __db_errx(dbp->env, DB_STR_A("5549", -+ "Odd number of entries on page: %lu", "%lu"), (u_long)(p->pgno)); -+ return (DB_VERIFY_FATAL); -+ } -- DB_ASSERT(dbp->env, n%2 == 0 ); - - env = dbp->env; - t = dbp->h_internal; -@@ -940,7 +944,12 @@ - if ((ret = __db_prpage(dbp, p, DB_PR_PAGE)) != 0) - return (ret); - #endif -+ if (res >= 0) { -+ __db_errx(env, DB_STR_A("5550", -+ "Odd number of entries on page: %lu", "%lu"), -+ (u_long)p->pgno); -+ return (DB_VERIFY_FATAL); -+ } -- DB_ASSERT(dbp->env, res < 0); - } - - prev = curr; ---- db-18.1.32/src/hash/hash_verify.c 2019-02-20 03:21:20.000000000 +0530 -+++ db-18.1.40/src/hash/hash_verify.c 2020-05-29 23:28:22.000000000 +0530 -@@ -615,7 +615,7 @@ - isbad = 1; - else - goto err; -+ } -- } - - /* - * There may be unused hash pages corresponding to buckets -@@ -746,7 +746,7 @@ - "Page %lu: impossible first page in bucket %lu", "%lu %lu"), - (u_long)pgno, (u_long)bucket)); - /* Unsafe to continue. */ -+ ret = DB_VERIFY_FATAL; -- isbad = 1; - goto err; - } - -@@ -776,7 +776,7 @@ - EPRINT((env, DB_STR_A("1116", - "Page %lu: hash page referenced twice", "%lu"), - (u_long)pgno)); -+ ret = DB_VERIFY_FATAL; -- isbad = 1; - /* Unsafe to continue. */ - goto err; - } else if ((ret = __db_vrfy_pgset_inc(vdp->pgset, -@@ -1307,7 +1307,11 @@ - COMPQUIET(flags, 0); - ip = vdp->thread_info; - -+ if (pgset == NULL) { -+ EPRINT((dbp->env, DB_STR("5548", -+ "Error, database contains no visible pages."))); -+ return (DB_VERIFY_FATAL); -+ } -- DB_ASSERT(dbp->env, pgset != NULL); - - mpf = dbp->mpf; - totpgs = 0; ---- db-18.1.32/src/qam/qam_verify.c 2019-02-20 03:21:20.000000000 +0530 -+++ db-18.1.40/src/qam/qam_verify.c 2020-05-29 23:28:22.000000000 +0530 -@@ -465,7 +465,14 @@ - /* Verify/salvage each page. */ - if ((ret = __db_cursor(dbp, vdp->thread_info, NULL, &dbc, 0)) != 0) - return (ret); --begin: for (; i <= stop; i++) { -+begin: if ((stop - i) > 100000) { -+ EPRINT((env, DB_STR_A("5551", -+"Warning, many possible extends files (%lu), will take a long time to verify", -+ "%lu"), (u_long)(stop - i))); -+ } -+ for (; i <= stop; i++) { -+ if (i == UINT32_MAX) -+ break; - /* - * If DB_SALVAGE is set, we inspect our database of completed - * pages, and skip any we've already printed in the subdb pass. diff --git a/runtime-optenv32/db+32/autobuild/patches/0024-Fedora-db-5.3.28-mmap-high-cpu-usage.patch b/runtime-optenv32/db+32/autobuild/patches/0024-Fedora-db-5.3.28-mmap-high-cpu-usage.patch deleted file mode 100644 index b11ce08234d..00000000000 --- a/runtime-optenv32/db+32/autobuild/patches/0024-Fedora-db-5.3.28-mmap-high-cpu-usage.patch +++ /dev/null @@ -1,19 +0,0 @@ -Author: Filip Januš -Date: 6 Sep 2021 -Related: https://bugzilla.redhat.com/show_bug.cgi?id=1992402 -Patch was created based on the discussion in the previous link -diff -ur db-5.3.28/src/os/os_map.c db_patch/src/os/os_map.c ---- db-5.3.28/src/os/os_map.c 2013-09-09 17:35:09.000000000 +0200 -+++ db_patch/src/os/os_map.c 2021-09-09 07:33:12.027328265 +0200 -@@ -213,7 +213,10 @@ - if (rp->max < rp->size) - rp->max = rp->size; - if (ret == 0 && F_ISSET(infop, REGION_CREATE)) { -- if (F_ISSET(dbenv, DB_ENV_REGION_INIT)) -+ -+ rp->size = rp->max; -+ -+ if (F_ISSET(dbenv, DB_ENV_REGION_INIT)) - ret = __db_file_write(env, infop->fhp, - rp->size / MEGABYTE, rp->size % MEGABYTE, 0x00); - else diff --git a/runtime-optenv32/db+32/autobuild/patches/0025-Debian-versioned_symbols.patch b/runtime-optenv32/db+32/autobuild/patches/0025-Debian-versioned_symbols.patch deleted file mode 100644 index 4c16ccfdbb4..00000000000 --- a/runtime-optenv32/db+32/autobuild/patches/0025-Debian-versioned_symbols.patch +++ /dev/null @@ -1,21 +0,0 @@ ---- db5.3.orig/dist/Makefile.in -+++ db5.3/dist/Makefile.in -@@ -855,9 +855,15 @@ $(libdb_version): $(C_OBJS) - $(RM) $(libdb) - $(LN) -s $(libdb_version) $(libdb) - -+Versions: $(C_OBJS) -+ rm -f $@ -+ printf "DB5_3 {\n global:\n" > $@ -+ nm $$(sed -n "/^pic_object='\(.*\)'$$/ { s//\1/;s,.libs/,,;p;}" $(C_OBJS)) | grep " [DTR] " | cut -d" " -f3 | sed -e 's/$$/;/' >> $@ -+ printf "local: *; };\n" >> $@ -+ - # Shared C library. --$(libso_target): $(C_OBJS) -- $(SOLINK) $(SOFLAGS) $(LDFLAGS) -o $@ $(C_OBJS) \ -+$(libso_target): $(C_OBJS) Versions -+ $(SOLINK) $(SOFLAGS) -Wl,--version-script=Versions $(LDFLAGS) -o $@ $(C_OBJS) \ - $(LIBCSO_LIBS) - $(RM) $(libdb) - $(LN) -s .libs/$(libdb_version) $(libdb) - diff --git a/runtime-optenv32/db+32/spec b/runtime-optenv32/db+32/spec deleted file mode 100644 index 39e9855ca56..00000000000 --- a/runtime-optenv32/db+32/spec +++ /dev/null @@ -1,5 +0,0 @@ -VER=5.3.28 -REL=1 -SRCS="https://download.oracle.com/berkeley-db/db-$VER.tar.gz" -CHKSUMS="sha256::e0a992d740709892e81f9d93f06daf305cf73fb81b545afe72478043172c3628" -CHKUPDATE="anitya::id=64941" From d1b8156e2d2533a77310db245784756e67344837 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 20:02:37 +0800 Subject: [PATCH 461/722] libsidplay+32: drop orphaned --- groups/optenv32 | 1 - .../32subsystem/autobuild/defines | 34 +++++++++---------- .../libsidplay+32/autobuild/defines | 7 ---- runtime-optenv32/libsidplay+32/spec | 5 --- 4 files changed, 17 insertions(+), 30 deletions(-) delete mode 100644 runtime-optenv32/libsidplay+32/autobuild/defines delete mode 100644 runtime-optenv32/libsidplay+32/spec diff --git a/groups/optenv32 b/groups/optenv32 index be7fd2b6f3c..7c3ecc1c91d 100644 --- a/groups/optenv32 +++ b/groups/optenv32 @@ -169,7 +169,6 @@ runtime-optenv32/libmad+32 runtime-optenv32/libpcap+32 runtime-optenv32/librsvg+32 runtime-optenv32/libshout+32 -runtime-optenv32/libsidplay+32 runtime-optenv32/libtasn1+32 runtime-optenv32/libusb-compat+32 runtime-optenv32/libva-intel-driver+32 diff --git a/runtime-optenv32/32subsystem/autobuild/defines b/runtime-optenv32/32subsystem/autobuild/defines index 594387cbc3d..34a0c93a9bc 100644 --- a/runtime-optenv32/32subsystem/autobuild/defines +++ b/runtime-optenv32/32subsystem/autobuild/defines @@ -16,23 +16,23 @@ libdvdread+32 libepoxy+32 libexif+32 libffi+32 libgcrypt+32 libglvnd+32 libgpg-error+32 libid3tag+32 libidn+32 libiec61883+32 libjpeg-turbo+32 libmad+32 libmd+32 libmikmod+32 libmms+32 libmodplug+32 libmpeg2+32 libnl+32 libofa+32 libogg+32 libpcap+32 libpng-1.6+32 libpng+32 libraw1394+32 librsvg+32 -libshout+32 libsidplay+32 libsndfile+32 libssh2+32 libssh+32 libtasn1+32 -libthai+32 libtheora+32 libtiff+32 libtool+32 libunwind+32 libusb+32 -libusb-compat+32 libva+32 libva-intel-driver+32 libva-vdpau-driver+32 -libvdpau+32 libvisual+32 libvorbis+32 libvpx+32 libwebp+32 libxau+32 libxcb+32 -libxcrypt+32 libxdmcp+32 libxkbcommon+32 libxml2+32 libxnvctrl+32 libxslt+32 -linux+api+32 llvm+32 lm-sensors+32 lzo+32 mangohud+32 mbedtls+32 mesa+32 -mjpegtools+32 mp4v2+32 mpc+32 mpfr+32 mpg123+32 nasm+32 ncurses+32 neon+32 -nettle+32 nlohmann-json+32 nspr+32 nss+32 openal-soft+32 opencore-amr+32 -openjpeg-legacy+32 openldap+32 openssl-1.1+32 openssl+32 opus+32 orc+32 -p11-kit+32 pango+32 pcre2+32 pcre+32 pixman+32 popt+32 portaudio+32 -proxychains-ng+32 pulseaudio+32 readline+32 recode+32 rtmpdump+32 rustc+32 -s2tc+32 sbc+32 schroedinger+32 sdl+32 sdl-ttf+32 shared-mime-info+32 smpeg+32 -soundtouch+32 soxr+32 speex+32 spirv-llvm-translator+32 spirv-tools+32 -sqlite+32 srtp+32 taglib+32 tcl+32 tk+32 twolame+32 util-linux+32 v4l-utils+32 -vkd3d+32 volk-meta-loader+32 vulkan+32 vulkan-headers+32 vulkan-loader+32 -vulkan-tools+32 wavpack+32 wayland+32 wildmidi+32 x11-lib+32 x11-proto+32 -x264+32 x265+32 xvidcore+32 xz+32 zlib+32 zstd+32 +libshout+32 libsndfile+32 libssh2+32 libssh+32 libtasn1+32 libthai+32 +libtheora+32 libtiff+32 libtool+32 libunwind+32 libusb+32 libusb-compat+32 +libva+32 libva-intel-driver+32 libva-vdpau-driver+32 libvdpau+32 libvisual+32 +libvorbis+32 libvpx+32 libwebp+32 libxau+32 libxcb+32 libxcrypt+32 libxdmcp+32 +libxkbcommon+32 libxml2+32 libxnvctrl+32 libxslt+32 linux+api+32 llvm+32 +lm-sensors+32 lzo+32 mangohud+32 mbedtls+32 mesa+32 mjpegtools+32 mp4v2+32 +mpc+32 mpfr+32 mpg123+32 nasm+32 ncurses+32 neon+32 nettle+32 nlohmann-json+32 +nspr+32 nss+32 openal-soft+32 opencore-amr+32 openjpeg-legacy+32 openldap+32 +openssl-1.1+32 openssl+32 opus+32 orc+32 p11-kit+32 pango+32 pcre2+32 pcre+32 +pixman+32 popt+32 portaudio+32 proxychains-ng+32 pulseaudio+32 readline+32 +recode+32 rtmpdump+32 rustc+32 s2tc+32 sbc+32 schroedinger+32 sdl+32 sdl-ttf+32 +shared-mime-info+32 smpeg+32 soundtouch+32 soxr+32 speex+32 +spirv-llvm-translator+32 spirv-tools+32 sqlite+32 srtp+32 taglib+32 tcl+32 +tk+32 twolame+32 util-linux+32 v4l-utils+32 vkd3d+32 volk-meta-loader+32 +vulkan+32 vulkan-headers+32 vulkan-loader+32 vulkan-tools+32 wavpack+32 +wayland+32 wildmidi+32 x11-lib+32 x11-proto+32 x264+32 x265+32 xvidcore+32 +xz+32 zlib+32 zstd+32 """ PKGDES="32-bit runtime and development environment" diff --git a/runtime-optenv32/libsidplay+32/autobuild/defines b/runtime-optenv32/libsidplay+32/autobuild/defines deleted file mode 100644 index ecff9bfffc7..00000000000 --- a/runtime-optenv32/libsidplay+32/autobuild/defines +++ /dev/null @@ -1,7 +0,0 @@ -PKGNAME=libsidplay+32 -PKGSEC=libs -PKGDEP="glibc+32" -BUILDDEP="devel-base+32" -PKGDES="A library for playing SID music files (32-bit x86 runtime)" - -ABHOST=optenv32 diff --git a/runtime-optenv32/libsidplay+32/spec b/runtime-optenv32/libsidplay+32/spec deleted file mode 100644 index 6d481b690d8..00000000000 --- a/runtime-optenv32/libsidplay+32/spec +++ /dev/null @@ -1,5 +0,0 @@ -VER=1.36.59 -REL=3 -SRCS="tbl::https://critical.ch/distfiles/libsidplay-$VER.tgz" -CHKSUMS="sha256::3da9b38d4eb5bf9e936b9604ba92da0594ef38047d50cf806a8e11c400008024" -CHKUPDATE="anitya::id=21492" From 8977d82e61bda8292d1c3e593cd2d1cc6ab097f0 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 20:06:03 +0800 Subject: [PATCH 462/722] libvisual+32: drop, orphaned --- groups/optenv32 | 1 - .../32subsystem/autobuild/defines | 4 +- .../libvisual+32/autobuild/defines | 7 - ...001-Debian-99_add_german_translation.patch | 916 ------------------ .../patches/0002-Debian-01_x86_fxsr_magic_fix | 32 - .../patches/0003-Debian-02_redefine_fix | 12 - .../patches/0004-Debian-03_configure_fix | 13 - .../0005-Debian-Werror-format-security-fix | 25 - .../patches/0006-Debian-fix-spelling-errors | 59 -- runtime-optenv32/libvisual+32/spec | 5 - 10 files changed, 2 insertions(+), 1072 deletions(-) delete mode 100644 runtime-optenv32/libvisual+32/autobuild/defines delete mode 100644 runtime-optenv32/libvisual+32/autobuild/patches/0001-Debian-99_add_german_translation.patch delete mode 100644 runtime-optenv32/libvisual+32/autobuild/patches/0002-Debian-01_x86_fxsr_magic_fix delete mode 100644 runtime-optenv32/libvisual+32/autobuild/patches/0003-Debian-02_redefine_fix delete mode 100644 runtime-optenv32/libvisual+32/autobuild/patches/0004-Debian-03_configure_fix delete mode 100644 runtime-optenv32/libvisual+32/autobuild/patches/0005-Debian-Werror-format-security-fix delete mode 100644 runtime-optenv32/libvisual+32/autobuild/patches/0006-Debian-fix-spelling-errors delete mode 100644 runtime-optenv32/libvisual+32/spec diff --git a/groups/optenv32 b/groups/optenv32 index 7c3ecc1c91d..665f935061b 100644 --- a/groups/optenv32 +++ b/groups/optenv32 @@ -172,7 +172,6 @@ runtime-optenv32/libshout+32 runtime-optenv32/libtasn1+32 runtime-optenv32/libusb-compat+32 runtime-optenv32/libva-intel-driver+32 -runtime-optenv32/libvisual+32 runtime-optenv32/nlohmann-json+32 runtime-optenv32/vulkan-headers+32 runtime-optenv32/mangohud+32 diff --git a/runtime-optenv32/32subsystem/autobuild/defines b/runtime-optenv32/32subsystem/autobuild/defines index 34a0c93a9bc..cf35ea35bdb 100644 --- a/runtime-optenv32/32subsystem/autobuild/defines +++ b/runtime-optenv32/32subsystem/autobuild/defines @@ -18,8 +18,8 @@ libmad+32 libmd+32 libmikmod+32 libmms+32 libmodplug+32 libmpeg2+32 libnl+32 libofa+32 libogg+32 libpcap+32 libpng-1.6+32 libpng+32 libraw1394+32 librsvg+32 libshout+32 libsndfile+32 libssh2+32 libssh+32 libtasn1+32 libthai+32 libtheora+32 libtiff+32 libtool+32 libunwind+32 libusb+32 libusb-compat+32 -libva+32 libva-intel-driver+32 libva-vdpau-driver+32 libvdpau+32 libvisual+32 -libvorbis+32 libvpx+32 libwebp+32 libxau+32 libxcb+32 libxcrypt+32 libxdmcp+32 +libva+32 libva-intel-driver+32 libva-vdpau-driver+32 libvdpau+32 libvorbis+32 +libvpx+32 libwebp+32 libxau+32 libxcb+32 libxcrypt+32 libxdmcp+32 libxkbcommon+32 libxml2+32 libxnvctrl+32 libxslt+32 linux+api+32 llvm+32 lm-sensors+32 lzo+32 mangohud+32 mbedtls+32 mesa+32 mjpegtools+32 mp4v2+32 mpc+32 mpfr+32 mpg123+32 nasm+32 ncurses+32 neon+32 nettle+32 nlohmann-json+32 diff --git a/runtime-optenv32/libvisual+32/autobuild/defines b/runtime-optenv32/libvisual+32/autobuild/defines deleted file mode 100644 index 2a6d5c4ada4..00000000000 --- a/runtime-optenv32/libvisual+32/autobuild/defines +++ /dev/null @@ -1,7 +0,0 @@ -PKGNAME=libvisual+32 -PKGSEC=libs -PKGDEP="glibc+32" -BUILDDEP="devel-base+32" -PKGDES="Abstraction library that come between applications and audio visualization plugins (32-bit x86 runtime)" - -ABHOST=optenv32 diff --git a/runtime-optenv32/libvisual+32/autobuild/patches/0001-Debian-99_add_german_translation.patch b/runtime-optenv32/libvisual+32/autobuild/patches/0001-Debian-99_add_german_translation.patch deleted file mode 100644 index 51ef6e8f8ac..00000000000 --- a/runtime-optenv32/libvisual+32/autobuild/patches/0001-Debian-99_add_german_translation.patch +++ /dev/null @@ -1,916 +0,0 @@ -Index: libvisual-0.4.0.nmu/po/de.po -=================================================================== ---- /dev/null -+++ libvisual-0.4.0.nmu/po/de.po -@@ -0,0 +1,903 @@ -+# Translation of libvisual to German -+# Copyright (C) Chris Leick , 2008. -+# This file is distributed under the same license as the libvisual package. -+# Chris Leick , 2008. -+# -+msgid "" -+msgstr "" -+"Project-Id-Version: libvisual 0.4.0-2.2\n" -+"Report-Msgid-Bugs-To: http://libvisual.sf.net\n" -+"POT-Creation-Date: 2006-03-21 02:43+0800\n" -+"PO-Revision-Date: 2014-10-11 19:40+0200\n" -+"Last-Translator: Chris Leick \n" -+"Language-Team: German \n" -+"Language: de\n" -+"MIME-Version: 1.0\n" -+"Content-Type: text/plain; charset=UTF-8\n" -+"Content-Transfer-Encoding: 8bit\n" -+ -+#: libvisual/lv_libvisual.c:137 -+msgid "Show info for" -+msgstr "Zeige Information über" -+ -+#: libvisual/lv_libvisual.c:138 -+msgid "seconds" -+msgstr "Sekunden" -+ -+#: libvisual/lv_libvisual.c:139 -+msgid "cover art width" -+msgstr "Breite des Covers" -+ -+#: libvisual/lv_libvisual.c:140 -+msgid "cover art height" -+msgstr "Höhe des Covers" -+ -+#: libvisual/lv_libvisual.c:142 -+msgid "Show song information" -+msgstr "Zeige Liedinformation" -+ -+#: libvisual/lv_libvisual.c:146 -+msgid "Show song information in plugins" -+msgstr "Zeige Liedinformation in den Erweiterungen" -+ -+#: libvisual/lv_libvisual.c:286 -+msgid "Over initialized" -+msgstr "Überinitialisiert" -+ -+#: libvisual/lv_libvisual.c:292 -+msgid "no progname" -+msgstr "kein Programmname" -+ -+#: libvisual/lv_libvisual.c:296 libvisual/lv_libvisual.c:311 -+msgid "Could not set program name" -+msgstr "Programmname kann nicht gesetzt werden." -+ -+#: libvisual/lv_libvisual.c:298 -+msgid "Initialization failed, bad argv, argc" -+msgstr "Initialisierung fehlgeschlagen, falsche argv, argc" -+ -+#: libvisual/lv_libvisual.c:408 -+msgid "Never initialized" -+msgstr "Nicht initialisiert" -+ -+#: libvisual/lv_libvisual.c:418 -+#, c-format -+msgid "Plugins references list: destroy failed: %s" -+msgstr "Erweiterungs-Bezugsliste: Löschen fehlgeschlagen: %s" -+ -+#: libvisual/lv_libvisual.c:422 -+#, c-format -+msgid "Actor plugins list: destroy failed: %s" -+msgstr "Interpreten-Erweiterungsliste: Löschen fehlgeschlagen: %s" -+ -+#: libvisual/lv_libvisual.c:426 -+#, c-format -+msgid "Input plugins list: destroy failed: %s" -+msgstr "Eingabe-Erweiterungsliste: Löschen fehlgeschlagen: %s" -+ -+#: libvisual/lv_libvisual.c:430 -+#, c-format -+msgid "Morph plugins list: destroy failed: %s" -+msgstr "Verformungs-Erweiterungsliste: Löschen fehlgeschlagen: %s" -+ -+#: libvisual/lv_libvisual.c:434 -+#, c-format -+msgid "Transform plugins list: destroy failed: %s" -+msgstr "Verwandlungs-Erweiterungsliste: Löschen fehlgeschlagen: %s" -+ -+#: libvisual/lv_libvisual.c:438 -+#, c-format -+msgid "Global param container: destroy failed: %s" -+msgstr "Behälter für globale Kennwerte: Löschen fehlgeschlagen: %s" -+ -+#: libvisual/lv_libvisual.c:442 -+#, c-format -+msgid "Error during UI destroy: %s" -+msgstr "Fehler beim Löschen des UI: %s" -+ -+#: libvisual/lv_actor.c:359 libvisual/lv_input.c:183 libvisual/lv_morph.c:183 -+#: libvisual/lv_transform.c:182 -+msgid "the plugin list is NULL" -+msgstr "die Erweiterungsliste ist NULL" -+ -+#: libvisual/lv_actor.c:457 libvisual/lv_actor.c:728 -+msgid "The given actor does not reference any actor plugin" -+msgstr "" -+"Der gegebene Interpret hat keine Entsprechung in der Interpreten-Erweiterung" -+ -+#: libvisual/lv_actor.c:553 -+#, c-format -+msgid "run depth %d forced %d\n" -+msgstr "Ausführtiefe %d erzwingt %d\n" -+ -+#: libvisual/lv_actor.c:561 -+#, c-format -+msgid "transpitch1 %d depth %d bpp %d" -+msgstr "transpitch1 %d Tiefe %d bpp %d" -+ -+#: libvisual/lv_actor.c:569 -+#, c-format -+msgid "transpitch2 %d %d" -+msgstr "transpitch2 %d %d" -+ -+#: libvisual/lv_actor.c:572 -+#, c-format -+msgid "transpitch3 %d" -+msgstr "transpitch3 %d" -+ -+#: libvisual/lv_actor.c:586 -+#, c-format -+msgid "rundepth: %d transpitch %d\n" -+msgstr "Ausführtiefe: %d transpitch %d\n" -+ -+#: libvisual/lv_bin.c:500 -+msgid "Switching to Gl mode" -+msgstr "Zum GL-Modus schalten" -+ -+#: libvisual/lv_bin.c:511 -+msgid "Switching away from Gl mode -- or non Gl switch" -+msgstr "Vom GL-Modus wegschalten -- oder GL nicht schalten" -+ -+#: libvisual/lv_bin.c:524 -+#, c-format -+msgid "video depth (from fixate): %d" -+msgstr "Videotiefe (vom Befestigen): %d" -+ -+#: libvisual/lv_bin.c:540 -+#, c-format -+msgid "old depth is higher, video depth %d, depth %d, bin depth %d" -+msgstr "alte Tiefe ist höher, Videotiefe %d, Tiefe %d, Behältertiefe %d" -+ -+#: libvisual/lv_bin.c:552 -+#, c-format -+msgid "new depth is higher, or equal: video depth %d, depth %d bin depth %d" -+msgstr "" -+"neue Tiefe ist höher oder gleich: Videotiefe %d, Tiefe %d, Behältertiefe %d" -+ -+#: libvisual/lv_bin.c:571 -+#, c-format -+msgid "Switching from Gl TO framebuffer for real, framebuffer depth: %d" -+msgstr "Wirklich von Gl zum Framebuffer schalten: Framebuffer-Tiefe: %d" -+ -+#: libvisual/lv_bin.c:574 -+#, c-format -+msgid "Target depth selected: %d" -+msgstr "Ausgewählte Tiefe des Ziels: %d" -+ -+#: libvisual/lv_bin.c:577 -+#, c-format -+msgid "Switch to new pitch: %d" -+msgstr "Zur neuen Tonhöhe schalten: %d" -+ -+#: libvisual/lv_bin.c:586 -+#, c-format -+msgid "video pitch of that what connects to the new actor %d" -+msgstr "Videotonhöhe dessen, was zum neuen Interpreten %d verbindet" -+ -+#: libvisual/lv_bin.c:592 -+msgid "switching... ******************************************" -+msgstr "Es wird geschaltet...******************************************" -+ -+#: libvisual/lv_bin.c:595 -+msgid "end switch actor by name function ******************" -+msgstr "" -+"Beende das Schalten der Interpreten per Funktionsname ******************" -+ -+#: libvisual/lv_bin.c:618 -+#, c-format -+msgid "depth of the main actor: %d" -+msgstr "Tiefe des Hauptdarstellers: %d" -+ -+#: libvisual/lv_bin.c:739 -+msgid "negotiate without event" -+msgstr "handeln ohne Ereignis" -+ -+#: libvisual/lv_bin.c:741 -+msgid "end negotiate without event" -+msgstr "handeln ohne Ereignis beenden" -+ -+#: libvisual/lv_bmp.c:125 libvisual/lv_bmp.c:229 -+msgid "Bitmap data is not complete" -+msgstr "Bitmap-Daten nicht vollständig" -+ -+#: libvisual/lv_bmp.c:280 -+#, c-format -+msgid "Bitmap file not found: %s" -+msgstr "Bitmap-Datei nicht gefunden: %s" -+ -+#: libvisual/lv_bmp.c:287 -+msgid "Not a bitmap file" -+msgstr "Keine Bitmap-Datei" -+ -+#: libvisual/lv_bmp.c:352 -+msgid "Only bitmaps with 1, 4, 8 or 24 bits per pixel are supported" -+msgstr "Nur Bitmaps mit 1, 4, 8 Bits pro Punkt werden unterstützt" -+ -+#: libvisual/lv_bmp.c:358 -+msgid "Bitmap uses an invalid or unsupported compression scheme" -+msgstr "Bitmap benutzt ein ungültiges oder nicht unterstütztes Packschema" -+ -+#: libvisual/lv_config.c:137 -+msgid "" -+"The config registry file format is of an obsolete file format, won't load it" -+msgstr "" -+"Das Datenformat der Einrichtungsregistrierung ist ein veraltetes \n" -+"Dateiformat, es wird nicht geladen" -+ -+#: libvisual/lv_config.c:173 -+msgid "Broken config registry, won't load" -+msgstr "Unterbrochene Einrichtungsregistrierung wird nicht geladen" -+ -+#: libvisual/lv_error.c:39 -+msgid "There was no error" -+msgstr "Es ist kein Fehler aufgetreten" -+ -+#: libvisual/lv_error.c:41 -+msgid "General error occurred" -+msgstr "Allgemeiner Fehler aufgetreten" -+ -+#: libvisual/lv_error.c:42 -+msgid "General NULL pointer error" -+msgstr "Allgemeiner NULL-Zeiger-Fehler" -+ -+#: libvisual/lv_error.c:43 -+msgid "An impossible event occurred" -+msgstr "Ein unmögliches Ereignis ist aufgetreten" -+ -+#: libvisual/lv_error.c:45 -+msgid "VisActor is NULL" -+msgstr "VisActor ist NULL" -+ -+#: libvisual/lv_error.c:46 -+msgid "VisActor it's video is NULL" -+msgstr "Das Video von VisActor ist NULL" -+ -+#: libvisual/lv_error.c:47 -+msgid "VisActor it's plugin is NULL" -+msgstr "Die Erweiterung von VisActor ist NULL" -+ -+#: libvisual/lv_error.c:48 -+msgid "VisActor failed while trying to forcefully negotiate a GL surface" -+msgstr "" -+"VisActor scheitert beim Versuch gewaltsam die GL-Oberfläche zu übertragen." -+ -+#: libvisual/lv_error.c:50 -+msgid "VisAudio is NULL" -+msgstr "VisAudio ist NULL" -+ -+#: libvisual/lv_error.c:51 -+msgid "The VisAudioSamplePool is NULL" -+msgstr "Der VisAudioSamplePool ist NULL" -+ -+#: libvisual/lv_error.c:52 -+msgid "The VisAudioSamplePoolChannel is NULL" -+msgstr "Der VisAudioSamplePoolChannel ist NULL" -+ -+#: libvisual/lv_error.c:53 -+msgid "The VisAudioSample is NULL" -+msgstr "Das VisAudioSample ist NULL" -+ -+#: libvisual/lv_error.c:55 -+msgid "Bitmap is not a bitmap file" -+msgstr "Bitmap ist keine Bitmap-Datei" -+ -+#: libvisual/lv_error.c:56 -+msgid "Bitmap can not be found" -+msgstr "Bitmap kann nicht gefunden werden" -+ -+#: libvisual/lv_error.c:57 -+msgid "Bitmap is not supported" -+msgstr "Bitmap wird nicht unterstützt" -+ -+#: libvisual/lv_error.c:58 -+msgid "Bitmap is corrupted" -+msgstr "Bitmap ist beschädigt" -+ -+#: libvisual/lv_error.c:60 -+msgid "VisBuffer is NULL" -+msgstr "VisBuffer ist NULL" -+ -+#: libvisual/lv_error.c:61 -+msgid "The requested operation on the VisBuffer is out of bounds" -+msgstr "" -+"Die angeforderte Operation auf dem VisBuffer ist außerhalb der Begrenzung" -+ -+#: libvisual/lv_error.c:63 -+msgid "The VisCache is NULL" -+msgstr "Der VisCache ist NULL" -+ -+#: libvisual/lv_error.c:65 -+msgid "VisCollection is NULL" -+msgstr "VisCollection ist NULL" -+ -+#: libvisual/lv_error.c:66 -+msgid "VisCollectionIter is NULL" -+msgstr "VisCollectionIter ist NULL" -+ -+#: libvisual/lv_error.c:68 -+msgid "VisColor is NULL" -+msgstr "VisColor ist NULL" -+ -+#: libvisual/lv_error.c:70 -+msgid "VisConfigRegistry is NULL" -+msgstr "VisConfigRegistry ist NULL" -+ -+#: libvisual/lv_error.c:71 -+msgid "VisConfigRegistrySection is NULL" -+msgstr "VisConfigRegistrySection ist NULL" -+ -+#: libvisual/lv_error.c:73 -+msgid "The code can not run on this architecture" -+msgstr "Der Code ist auf dieser Architektur nicht lauffähig" -+ -+#: libvisual/lv_error.c:74 -+msgid "CPU feature is not supported" -+msgstr "CPU-Merkmal ist nicht unterstützt" -+ -+#: libvisual/lv_error.c:76 -+msgid "Global error handler is NULL" -+msgstr "Globale Fehlerbehandlung ist NULL " -+ -+#: libvisual/lv_error.c:78 -+msgid "VisEvent is NULL" -+msgstr "VisEvent ist NULL" -+ -+#: libvisual/lv_error.c:79 -+msgid "VisEventQueue is NULL" -+msgstr "VisEventQueue ist NULL" -+ -+#: libvisual/lv_error.c:81 -+msgid "VisFourier is NULL" -+msgstr "VisFourier ist NULL" -+ -+#: libvisual/lv_error.c:82 -+msgid "The VisFourier subsystem is not initialized" -+msgstr "Das VisFourier-Untersystem ist nicht initialisiert" -+ -+#: libvisual/lv_error.c:84 -+msgid "The native callback for a gl related function is not present." -+msgstr "" -+"Der ursprüngliche Rückruf für eine GL-bezogene Funktion ist nicht vorhanden." -+ -+#: libvisual/lv_error.c:86 -+msgid "The VisHashlist is NULL" -+msgstr "Die VisHashlist ist NULL" -+ -+#: libvisual/lv_error.c:88 -+msgid "VisHashmap is NULL" -+msgstr "VisHashmap ist NULL" -+ -+#: libvisual/lv_error.c:89 -+msgid "Key is not in hashmap" -+msgstr "Schlüssel ist nicht in der Hashmap" -+ -+#: libvisual/lv_error.c:90 -+msgid "Key type is not valid" -+msgstr "Schlüsseltyp ist ungültig" -+ -+#: libvisual/lv_error.c:92 -+msgid "VisInput is NULL" -+msgstr "VisInput ist NULL" -+ -+#: libvisual/lv_error.c:93 -+msgid "VisInput it's plugin is NULL" -+msgstr "Erweiterung von VisInput ist NULL" -+ -+#: libvisual/lv_error.c:95 -+msgid "No paths were given to seek for plugins" -+msgstr "Für die Erweiterungssuche wurden keine Pfade angegeben" -+ -+#: libvisual/lv_error.c:96 -+msgid "Libvisual is already initialized" -+msgstr "Libvisual ist bereits initialisiert" -+ -+#: libvisual/lv_error.c:97 -+msgid "Libvisual is not initialized" -+msgstr "Libvisual ist nicht initialisiert" -+ -+#: libvisual/lv_error.c:98 -+msgid "Libvisual has not build a plugin registry" -+msgstr "Libvisual hat keine Erweiterungsregistrierung erstellt" -+ -+#: libvisual/lv_error.c:100 -+msgid "VisList is NULL" -+msgstr "VisList ist NULL" -+ -+#: libvisual/lv_error.c:101 -+msgid "VisListEntry is NULL" -+msgstr "VisListEntry ist NULL" -+ -+#: libvisual/lv_error.c:102 -+msgid "VisListEntry is invalid" -+msgstr "VisListEntry ist ungültig" -+ -+#: libvisual/lv_error.c:104 -+msgid "Given memory pointer is NULL" -+msgstr "Gegebener Speicherzeiger ist NULL" -+ -+#: libvisual/lv_error.c:106 -+msgid "VisMorph is NULL" -+msgstr "VisMorph ist NULL" -+ -+#: libvisual/lv_error.c:107 -+msgid "VisMorph it's plugin is NULL" -+msgstr "Erweiterung von VisMorph ist NULL" -+ -+#: libvisual/lv_error.c:109 -+msgid "The scheduler related call wasn't successful." -+msgstr "Der Aufruf mit Bezug zum Zeitplaners war nicht erfolgreich." -+ -+#: libvisual/lv_error.c:110 -+msgid "Scheduler operations are not supported on the platform." -+msgstr "Zeitplaneroperationen werden von dieser Plattform nicht unterstützt" -+ -+#: libvisual/lv_error.c:112 -+msgid "VisPalette is NULL" -+msgstr "VisPalette ist NULL" -+ -+#: libvisual/lv_error.c:113 -+msgid "VisPalette it's size conflicts" -+msgstr "Grössenkonflikt der VisPalette" -+ -+#: libvisual/lv_error.c:115 -+msgid "VisParamEntry is NULL" -+msgstr "VisParamEntry ist NULL" -+ -+#: libvisual/lv_error.c:116 -+msgid "VisParamContainer is NULL" -+msgstr "VisParamContainer ist NULL" -+ -+#: libvisual/lv_error.c:117 -+msgid "VisParamEntry not found in VisParamContainer" -+msgstr "VisParamEntry wurde im VisParamContainer nicht gefunden." -+ -+#: libvisual/lv_error.c:118 -+msgid "VisParamEntry it's change notify callback is NULL" -+msgstr "Rückrufbenachrichtigung des Wechsels von VisParamEntry ist NULL" -+ -+#: libvisual/lv_error.c:119 -+msgid "VisParamEntry contains too many change notify callbacks" -+msgstr "VisParamEntry enthält zu viele Rückrufbenachrichtigungen" -+ -+#: libvisual/lv_error.c:120 -+msgid "VisParamEntry is of invalid type" -+msgstr "Der Typ von VisParamEntry ist ungültig" -+ -+#: libvisual/lv_error.c:122 -+msgid "VisPluginData is NULL" -+msgstr "VisPluginData ist NULL" -+ -+#: libvisual/lv_error.c:123 -+msgid "VisPluginInfo is NULL" -+msgstr "VisPluginInfo ist NULL" -+ -+#: libvisual/lv_error.c:124 -+msgid "VisPluginRef is NULL" -+msgstr "VisPluginRef ist NULL" -+ -+#: libvisual/lv_error.c:125 -+msgid "VisPluginEnvironElement is NULL" -+msgstr "VisPluginEnvironElement ist NULL" -+ -+#: libvisual/lv_error.c:126 -+msgid "Plugin does not have an event handler" -+msgstr "Erweiterung hat keine Ereignisbehandlungsroutine" -+ -+#: libvisual/lv_error.c:127 -+msgid "Plugin handle is NULL" -+msgstr "Erweiterungsbehandlungsroutine ist NULL" -+ -+#: libvisual/lv_error.c:128 -+msgid "Plugin is already realized" -+msgstr "Erweiterung ist bereits realisiert" -+ -+#: libvisual/lv_error.c:129 -+msgid "Plugin list can not be found in memory" -+msgstr "Erweiterungsliste kann nicht im Speicher gefunden werden" -+ -+#: libvisual/lv_error.c:131 -+msgid "VisRandomContext is NULL" -+msgstr "VisRandomContext ist NULL" -+ -+#: libvisual/lv_error.c:133 -+msgid "VisRectangle is NULL" -+msgstr "VisRectangle ist NULL" -+ -+#: libvisual/lv_error.c:134 -+msgid "The VisRectangle operation is out of bounds" -+msgstr "Die VisRectangle-Operation ist außerhalb der Begrenzung" -+ -+#: libvisual/lv_error.c:136 -+msgid "The VisRingBuffer is NULL" -+msgstr "Der VisRingBuffer ist NULL" -+ -+#: libvisual/lv_error.c:137 -+msgid "The VisRingBufferEntry is NULL" -+msgstr "Der VisRingBufferEntry ist NULL" -+ -+#: libvisual/lv_error.c:138 -+msgid "The VisRingBufferDataFunc data provider function callback is NULL" -+msgstr "Der VisRingBufferDataFunc Datenlieferfunktionsrücksruf ist NULL" -+ -+#: libvisual/lv_error.c:140 -+msgid "VisSongInfo is NULL" -+msgstr "VisSongInfo ist NULL" -+ -+#: libvisual/lv_error.c:142 -+msgid "VisThread is NULL" -+msgstr "VisThread ist NULL" -+ -+#: libvisual/lv_error.c:143 -+msgid "The VisThread subsystem is not initialized" -+msgstr "Das VisThread-Untersystem ist nicht initialisiert" -+ -+#: libvisual/lv_error.c:144 -+msgid "The VisThread subsystem couldn't find any threading model to use" -+msgstr "" -+"Das VisThread-Untersystem kann kein Führungsmodell zur\n" -+"Benutzung finden." -+ -+#: libvisual/lv_error.c:145 -+msgid "The VisThread subsystem is not enabled" -+msgstr "Das VisThread-Untersystem ist nicht eingeschaltet." -+ -+#: libvisual/lv_error.c:147 -+msgid "VisMutex is NULL" -+msgstr "VisMutex ist NULL" -+ -+#: libvisual/lv_error.c:148 -+msgid "VisMutex lock failed" -+msgstr "VisMutex sperren ist fehlgeschlagen" -+ -+#: libvisual/lv_error.c:149 -+msgid "VisMutex trylock failed" -+msgstr "Der Versuch VisMutex zu sperren ist fehlgeschlagen" -+ -+#: libvisual/lv_error.c:150 -+msgid "VisMutex unlock failed" -+msgstr "Entsperren von VisMutex fehlgeschlagen" -+ -+#: libvisual/lv_error.c:152 -+msgid "VisTransform is NULL" -+msgstr "VisTransform ist NULL" -+ -+#: libvisual/lv_error.c:153 -+msgid "The VisTransform negotiate with the target VisVideo failed" -+msgstr "" -+"Das Verhandeln von VisTransform mit dem VisVideo-Ziel ist \n" -+"fehlgeschlagen" -+ -+#: libvisual/lv_error.c:154 -+msgid "The VisTransform it's plugin is NULL" -+msgstr "Die Erweiterung von VisTransform ist NULL" -+ -+#: libvisual/lv_error.c:155 -+msgid "The VisTransform it's video is NULL" -+msgstr "Das Video von VisTransform ist NULL" -+ -+#: libvisual/lv_error.c:156 -+msgid "The VisTransform it's palette is NULL" -+msgstr "Die Palette von VisTransform ist NULL" -+ -+#: libvisual/lv_error.c:158 -+msgid "VisObject destruction failed" -+msgstr "Zerstörung von VisObject fehlgeschlagen" -+ -+#: libvisual/lv_error.c:159 -+msgid "VisObject is NULL" -+msgstr "VisObject ist NULL" -+ -+#: libvisual/lv_error.c:160 -+msgid "VisObject is not allocated" -+msgstr "VisObject ist nicht zugewiesen" -+ -+#: libvisual/lv_error.c:162 -+msgid "VisTime is NULL" -+msgstr "VisTime ist NULL" -+ -+#: libvisual/lv_error.c:163 -+msgid "visual_time_usleep() is not supported" -+msgstr "visual_time_usleep() wird nicht unterstützt" -+ -+#: libvisual/lv_error.c:164 -+msgid "VisTimer is NULL" -+msgstr "VisTimer ist NULL" -+ -+#: libvisual/lv_error.c:166 -+msgid "VisUIWidget is NULL" -+msgstr "VisUIWidget ist NULL" -+ -+#: libvisual/lv_error.c:167 -+msgid "VisUIContainer is NULL" -+msgstr "VisUIContainer ist NULL" -+ -+#: libvisual/lv_error.c:168 -+msgid "VisUIBox is NULL" -+msgstr "VisUIBox ist NULL" -+ -+#: libvisual/lv_error.c:169 -+msgid "VisUITable is NULL" -+msgstr "VisUITable ist NULL" -+ -+#: libvisual/lv_error.c:170 -+msgid "VisUINotebook is NULL" -+msgstr "VisUINotebook ist NULL" -+ -+#: libvisual/lv_error.c:171 -+msgid "VisUIFrame is NULL" -+msgstr "VisUIFrame ist NULL" -+ -+#: libvisual/lv_error.c:172 -+msgid "VisUILabel is NULL" -+msgstr "VisUILabel ist NULL" -+ -+#: libvisual/lv_error.c:173 -+msgid "VisUIImage is NULL" -+msgstr "VisUIImage ist NULL" -+ -+#: libvisual/lv_error.c:174 -+msgid "VisUISeparator is NULL" -+msgstr "VisUISeparator ist NULL" -+ -+#: libvisual/lv_error.c:175 -+msgid "VisUIMutator is NULL" -+msgstr "VisUIMutator ist NULL" -+ -+#: libvisual/lv_error.c:176 -+msgid "VisUIRange is NULL" -+msgstr "VisUIRange ist NULL" -+ -+#: libvisual/lv_error.c:177 -+msgid "VisUIEntry is NULL" -+msgstr "VisUIEntry ist NULL" -+ -+#: libvisual/lv_error.c:178 -+msgid "VisUISlider is NULL" -+msgstr "VisUISlider ist NULL" -+ -+#: libvisual/lv_error.c:179 -+msgid "VisUINumeric is NULL" -+msgstr "VisUINumeric ist NULL" -+ -+#: libvisual/lv_error.c:180 -+msgid "VisUIColor is NULL" -+msgstr "VisUIColor ist NULL" -+ -+#: libvisual/lv_error.c:181 -+msgid "VisUIChoice is NULL" -+msgstr "VisUIChoice ist NULL" -+ -+#: libvisual/lv_error.c:182 -+msgid "VisUIPopup is NULL" -+msgstr "VisUIPopup ist NULL" -+ -+#: libvisual/lv_error.c:183 -+msgid "VisUIList is NULL" -+msgstr "VisUIList ist NULL" -+ -+#: libvisual/lv_error.c:184 -+msgid "VisUIRadio is NULL" -+msgstr "VisUIRadio ist NULL" -+ -+#: libvisual/lv_error.c:185 -+msgid "VisUICheckbox is NULL" -+msgstr "VisUICheckbox ist NULL" -+ -+#: libvisual/lv_error.c:186 -+msgid "VisUIChoiceEntry is NULL" -+msgstr "VisUIChoiceEntry ist NULL" -+ -+#: libvisual/lv_error.c:187 -+msgid "No choice in VisUIChoice is activated" -+msgstr "In VisUIChoice ist keine Auswahl aktiviert" -+ -+#: libvisual/lv_error.c:189 -+msgid "The VisVideoAttributeOptions is NULL." -+msgstr "Die VisVideoAttributeOptions sind NULL." -+ -+#: libvisual/lv_error.c:190 -+msgid "VisVideo is NULL" -+msgstr "VisVideo ist NULL" -+ -+#: libvisual/lv_error.c:191 -+msgid "VisVideo has allocated pixel buffer" -+msgstr "VisVideo hat den Punktpuffer zugewiesen" -+ -+#: libvisual/lv_error.c:192 -+msgid "VisVideo has no VisBuffer object" -+msgstr "VisVideo hat kein VisBuffer-Objekt" -+ -+#: libvisual/lv_error.c:193 -+msgid "VisVideo it's pixel buffer is NULL" -+msgstr "Der Punktpuffer von VisVideo ist NULL" -+ -+#: libvisual/lv_error.c:194 -+msgid "VisVideo it's pixel buffer is not allocated" -+msgstr "Der Punktpuffer von VisVideo ist nicht zugewiesen" -+ -+#: libvisual/lv_error.c:195 -+msgid "VisVideo has pixel buffer" -+msgstr "VisVideo hat einen Punktpuffer" -+ -+#: libvisual/lv_error.c:196 -+msgid "VisVideo is of invalid bytes per pixel" -+msgstr "VisVideo hat ungültige Bytes pro Punkt" -+ -+#: libvisual/lv_error.c:197 -+msgid "VisVideo is of invalid depth" -+msgstr "VisVideo hat ungültige Tiefe" -+ -+#: libvisual/lv_error.c:198 -+msgid "Invalid scale method given" -+msgstr "Ungültige Skalierungsmethode angegeben" -+ -+#: libvisual/lv_error.c:199 -+msgid "Invalid rotate degrees given" -+msgstr "Ungültige Rotationsgrade angegeben" -+ -+#: libvisual/lv_error.c:200 -+msgid "Given coordinates are out of bounds" -+msgstr "Angegebene Koordinaten befinden sich außerhalb der Begrenzung" -+ -+#: libvisual/lv_error.c:201 -+msgid "Given VisVideos are not indentical" -+msgstr "Angegebene VisVideos sind nicht gleich" -+ -+#: libvisual/lv_error.c:202 -+msgid "VisVideo is not depth transformed as requested" -+msgstr "VisVideo ist nicht so stark umgewandelt wie gefordert" -+ -+#: libvisual/lv_error.c:265 -+msgid "The error value given to visual_error_to_string() is invalid" -+msgstr "Der an visual_error_to_string() gegebene Fehlerwert ist ungültig" -+ -+#: libvisual/lv_event.c:266 -+msgid "Cannot create a new VisEvent structure" -+msgstr "Neue VisEvent-Struktur kann nicht erzeugt werden" -+ -+#: libvisual/lv_mem.c:134 -+msgid "Cannot get %" -+msgstr "% kann nicht erlangt werden" -+ -+#: libvisual/lv_mem.c:134 -+msgid " bytes of memory" -+msgstr " Bytes des Speichers" -+ -+#: libvisual/lv_morph.c:429 libvisual/lv_morph.c:468 -+msgid "The given morph does not reference any plugin" -+msgstr "Der angegebene Umwandler betrifft keine Erweiterung" -+ -+#: libvisual/lv_param.c:568 libvisual/lv_param.c:632 -+msgid "param type is not valid" -+msgstr "Parametertyp ist ungültig" -+ -+#: libvisual/lv_param.c:904 -+msgid "Requesting string from a non string param" -+msgstr "" -+"Zeichenkette wird von einem Parameter angefordert, der keine Zeichenkette ist" -+ -+#: libvisual/lv_param.c:924 -+msgid "Requesting integer from a non integer param" -+msgstr "Ganzzahl wird von einem Parameter angefordert, der keine Ganzzahl ist" -+ -+#: libvisual/lv_param.c:941 -+msgid "Requesting float from a non float param" -+msgstr "" -+"Fließkommazahl wird von einem Parameter angefordert, der keine " -+"Fließkommazahl ist" -+ -+#: libvisual/lv_param.c:958 -+msgid "Requesting double from a non double param" -+msgstr "" -+"Double-Zahl wird von einem Parameter angefordert, der keine Double-Zahl ist" -+ -+#: libvisual/lv_param.c:978 -+msgid "Requesting color from a non color param" -+msgstr "Farbe wird von einem Parameter angefordert, der keine Farbe ist" -+ -+#: libvisual/lv_param.c:999 -+msgid "Requested palette from a non palette param\n" -+msgstr "Palette wird von einem Parameter angefordert, der keine Palette ist\n" -+ -+#: libvisual/lv_param.c:1019 -+msgid "Requested object from a non object param\n" -+msgstr "Objekt wird von einem Parameter angefordert, der kein Objekt ist\n" -+ -+#: libvisual/lv_plugin.c:101 -+#, c-format -+msgid "A plugin reference with %d instances has been destroyed." -+msgstr "Ein Erweiterungsbezug mit %d Instanzen wurde zerstört." -+ -+#: libvisual/lv_plugin.c:432 -+msgid "Cannot create a new list" -+msgstr "Neue Liste kann nicht erstellt werden" -+ -+#: libvisual/lv_plugin.c:649 -+msgid "Tried unloading a plugin that never has been loaded." -+msgstr "Der Versuch, eine nicht geladene Erweiterung zu entladen, scheiterte." -+ -+#: libvisual/lv_plugin.c:709 -+#, c-format -+msgid "" -+"Cannot load plugin %s, the plugin is already loaded and is not reentrant." -+msgstr "" -+"Die Erweiterung %s konnte nicht geladen werden. Die Erweiterungs ist bereits " -+"geladen und ein neuer Aufruf nicht möglich." -+ -+#: libvisual/lv_plugin.c:725 libvisual/lv_plugin.c:842 -+#, c-format -+msgid "Cannot load plugin: %s" -+msgstr "Erweiterung kann nicht geladen werden: %s" -+ -+#: libvisual/lv_plugin.c:742 libvisual/lv_plugin.c:879 -+#, c-format -+msgid "Cannot initialize plugin: %s" -+msgstr "Erweiterung kann nicht initialisiert werden: %s" -+ -+#: libvisual/lv_plugin.c:753 -+msgid "Cannot get plugin info while loading." -+msgstr "Erweiterung kann während des Ladens nicht aufgerufen werden." -+ -+#: libvisual/lv_plugin.c:855 -+#, c-format -+msgid "Plugin %s is not compatible with version %s of libvisual" -+msgstr "Erweiterung %s ist nicht mit Version %s von libvisual kompatibel" -+ -+#: libvisual/lv_plugin.c:890 -+msgid "Cannot get plugin info" -+msgstr "Information der Erweiterung nicht verfügbar" -+ -+#: libvisual/lv_plugin.c:946 -+#, c-format -+msgid "Failed to add the %s directory to the plugin registry" -+msgstr "" -+"Hinzufügen des Verzeichnisses %s zur Erweiterungsregistrierung fehlgeschlagen" -+ -+#: libvisual/lv_thread.c:277 -+msgid "" -+"Tried freeing thread memory while threading is not supported, simply freeing " -+"mem" -+msgstr "" -+"Speicherfreigabe während Zuteilung wird nicht unterstützt. Der Speicher wird " -+"einfach freigegeben." -+ -+#: libvisual/lv_thread.c:358 -+msgid "" -+"Tried freeing mutex memory while threading is not supported, simply freeing " -+"mem" -+msgstr "" -+"Mutex-Speicherfreigabe während Zuteilung wird nicht unterstützt. Der " -+"Speicher wird einfach freigegeben." -+ -+#: libvisual/lv_thread.c:478 libvisual/lv_thread.c:707 -+msgid "Error while creating thread" -+msgstr "Fehler bei Erzeugung des Threads" -+ -+#: libvisual/lv_thread.c:500 -+msgid "Error while joining thread" -+msgstr "Fehler beim Zusammenführen des Threads" -+ -+#: libvisual/lv_transform.c:398 libvisual/lv_transform.c:434 -+msgid "The given transform does not reference any transform plugin" -+msgstr "" -+"Die gegebene Umformung bezieht sich nicht auf eine Umformungserweiterung" -+ -+#: libvisual/lv_video.c:288 -+msgid "" -+"Trying to allocate an screen buffer on a VisVideo structure which points to " -+"an external screen buffer" -+msgstr "" -+"Es wird versucht einen Speicherpuffer für eine VisVideo-Struktur " -+"bereitzustellen, die auf einen exteren Videopuffer verweist." -+ -+#: libvisual/lv_video.c:447 -+msgid "" -+"Trying to set a screen buffer on a VisVideo structure which points to an " -+"allocated screen buffer" -+msgstr "" -+"Es wird versucht einen Speicherpuffer für eine VisVideo-Struktur zu setzen, " -+"die auf einen zugewiesenen Videopuffer verweist." -+ -+#: libvisual/lv_video.c:2775 libvisual/lv_video.c:2922 -+msgid "Invalid depth passed to the scaler" -+msgstr "Ungültige Tiefe an Scaler übergeben" -Index: libvisual-0.4.0.nmu/po/LINGUAS -=================================================================== ---- libvisual-0.4.0.nmu.orig/po/LINGUAS -+++ libvisual-0.4.0.nmu/po/LINGUAS -@@ -1,2 +1,2 @@ - # Set of available languages. --es_ES es_AR -+de es_ES es_AR diff --git a/runtime-optenv32/libvisual+32/autobuild/patches/0002-Debian-01_x86_fxsr_magic_fix b/runtime-optenv32/libvisual+32/autobuild/patches/0002-Debian-01_x86_fxsr_magic_fix deleted file mode 100644 index fba54eefd25..00000000000 --- a/runtime-optenv32/libvisual+32/autobuild/patches/0002-Debian-01_x86_fxsr_magic_fix +++ /dev/null @@ -1,32 +0,0 @@ -Description: Fix for X86_FXSR_MAGIC - -Index: b/libvisual/lv_cpu.c -=================================================================== ---- a/libvisual/lv_cpu.c -+++ b/libvisual/lv_cpu.c -@@ -76,7 +76,7 @@ - - /* The sigill handlers */ - #if defined(VISUAL_ARCH_X86) //x86 (linux katmai handler check thing) --#if defined(VISUAL_OS_LINUX) && defined(_POSIX_SOURCE) && defined(X86_FXSR_MAGIC) -+#if defined(VISUAL_OS_LINUX) && defined(_POSIX_SOURCE) - static void sigill_handler_sse( int signal, struct sigcontext sc ) - { - /* Both the "xorps %%xmm0,%%xmm0" and "divps %xmm0,%%xmm1" -@@ -109,7 +109,7 @@ - } - } - #endif --#endif /* VISUAL_OS_LINUX && _POSIX_SOURCE && X86_FXSR_MAGIC */ -+#endif /* VISUAL_OS_LINUX && _POSIX_SOURCE */ - - #if defined(VISUAL_OS_WIN32) - LONG CALLBACK win32_sig_handler_sse(EXCEPTION_POINTERS* ep) -@@ -143,6 +143,7 @@ - - static void check_os_altivec_support( void ) - { -+ return; - #if defined(VISUAL_OS_DARWIN) - int sels[2] = {CTL_HW, HW_VECTORUNIT}; - int has_vu = 0; diff --git a/runtime-optenv32/libvisual+32/autobuild/patches/0003-Debian-02_redefine_fix b/runtime-optenv32/libvisual+32/autobuild/patches/0003-Debian-02_redefine_fix deleted file mode 100644 index 7f6c2bb986c..00000000000 --- a/runtime-optenv32/libvisual+32/autobuild/patches/0003-Debian-02_redefine_fix +++ /dev/null @@ -1,12 +0,0 @@ -Description: Fixes redefine - ---- ../libvisual/lv_defines.h 2006-01-22 07:23:37.000000000 -0600 -+++ libvisual/lv_defines.h 2010-05-02 05:33:44.000000000 -0500 -@@ -63,7 +63,6 @@ - - /* Compiler specific optimalization macros */ - #if __GNUC__ >= 3 --# define inline inline __attribute__ ((always_inline)) - # define __malloc __attribute__ ((malloc)) - # define __packed __attribute__ ((packed)) - # define VIS_LIKELY(x) __builtin_expect (!!(x), 1) diff --git a/runtime-optenv32/libvisual+32/autobuild/patches/0004-Debian-03_configure_fix b/runtime-optenv32/libvisual+32/autobuild/patches/0004-Debian-03_configure_fix deleted file mode 100644 index 025bbeae760..00000000000 --- a/runtime-optenv32/libvisual+32/autobuild/patches/0004-Debian-03_configure_fix +++ /dev/null @@ -1,13 +0,0 @@ -Description: Fix for gettext version in configure script - ---- ../configure.ac 2006-02-20 06:43:49.000000000 -0600 -+++ configure.ac 2010-05-02 06:55:44.289738622 -0500 -@@ -155,7 +155,7 @@ - AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE", [GETTEXT package name]) - AC_DEFINE_UNQUOTED(LOCALEDIR, "${prefix}/share/locale", [String catalog location]) - AM_GNU_GETTEXT([external]) --AM_GNU_GETTEXT_VERSION([0.14.1]) -+AM_GNU_GETTEXT_VERSION([0.17]) - - dnl ------------------------------- - dnl Check for native thread support diff --git a/runtime-optenv32/libvisual+32/autobuild/patches/0005-Debian-Werror-format-security-fix b/runtime-optenv32/libvisual+32/autobuild/patches/0005-Debian-Werror-format-security-fix deleted file mode 100644 index 96ae00a2c0a..00000000000 --- a/runtime-optenv32/libvisual+32/autobuild/patches/0005-Debian-Werror-format-security-fix +++ /dev/null @@ -1,25 +0,0 @@ -Author: Steve Langasek -Description: Fixes for -Werror=format-security - Source fails to build with -Werror=format-security because a function return - value is being passed to the visual_log() function where a format string is - expected. This isn't a security hole because the strings returned aren't - based on untrusted input, but we should clean up anyway. - -Index: debian/libvisual/lv_plugin.c -=================================================================== ---- debian.orig/libvisual/lv_plugin.c -+++ debian/libvisual/lv_plugin.c -@@ -442,11 +442,11 @@ - - visual_list_add (list, ref); - } else if (ret != FALSE) { -- visual_log (VISUAL_LOG_WARNING, visual_error_to_string (ret)); -+ visual_log (VISUAL_LOG_WARNING, "%s", visual_error_to_string (ret)); - } - } - else if (ret != FALSE) { /* FIXME XXX TODO, patch frmo duilio check how this works */ -- visual_log (VISUAL_LOG_WARNING, visual_error_to_string (ret)); -+ visual_log (VISUAL_LOG_WARNING, "%s", visual_error_to_string (ret)); - } - } - diff --git a/runtime-optenv32/libvisual+32/autobuild/patches/0006-Debian-fix-spelling-errors b/runtime-optenv32/libvisual+32/autobuild/patches/0006-Debian-fix-spelling-errors deleted file mode 100644 index c7c8becfb77..00000000000 --- a/runtime-optenv32/libvisual+32/autobuild/patches/0006-Debian-fix-spelling-errors +++ /dev/null @@ -1,59 +0,0 @@ -Description: Fix spelling errors -Author: Boris Pek -Last-Update: 2012-06-20 - ---- a/libvisual/lv_error.c -+++ b/libvisual/lv_error.c -@@ -106,7 +106,7 @@ - [VISUAL_ERROR_MORPH_NULL] = N_("VisMorph is NULL"), - [VISUAL_ERROR_MORPH_PLUGIN_NULL] = N_("VisMorph it's plugin is NULL"), - -- [VISUAL_ERROR_OS_SCHED] = N_("The scheduler related call wasn't succesful."), -+ [VISUAL_ERROR_OS_SCHED] = N_("The scheduler related call wasn't successful."), - [VISUAL_ERROR_OS_SCHED_NOT_SUPPORTED] = N_("Scheduler operations are not supported on the platform."), - - [VISUAL_ERROR_PALETTE_NULL] = N_("VisPalette is NULL"), ---- a/libvisual/lv_error.h -+++ b/libvisual/lv_error.h -@@ -127,7 +127,7 @@ - VISUAL_ERROR_MORPH_PLUGIN_NULL, /**< The VisMorphPlugin is NULL. */ - - /* Error entries for the VisOS system */ -- VISUAL_ERROR_OS_SCHED, /**< The scheduler related call wasn't succesful. */ -+ VISUAL_ERROR_OS_SCHED, /**< The scheduler related call wasn't successful. */ - VISUAL_ERROR_OS_SCHED_NOT_SUPPORTED, /**< Scheduler operations are not supported on the platform. */ - - /* Error entries for the VisPalette system */ ---- a/po/es_AR.po -+++ b/po/es_AR.po -@@ -430,7 +430,7 @@ - msgstr "" - - #: libvisual/lv_error.c:109 --msgid "The scheduler related call wasn't succesful." -+msgid "The scheduler related call wasn't successful." - msgstr "" - - #: libvisual/lv_error.c:110 ---- a/po/es_ES.po -+++ b/po/es_ES.po -@@ -430,7 +430,7 @@ - msgstr "" - - #: libvisual/lv_error.c:109 --msgid "The scheduler related call wasn't succesful." -+msgid "The scheduler related call wasn't successful." - msgstr "" - - #: libvisual/lv_error.c:110 ---- a/po/libvisual-0.4.pot -+++ b/po/libvisual-0.4.pot -@@ -416,7 +416,7 @@ - msgstr "" - - #: libvisual/lv_error.c:109 --msgid "The scheduler related call wasn't succesful." -+msgid "The scheduler related call wasn't successful." - msgstr "" - - #: libvisual/lv_error.c:110 diff --git a/runtime-optenv32/libvisual+32/spec b/runtime-optenv32/libvisual+32/spec deleted file mode 100644 index a07cd5176c4..00000000000 --- a/runtime-optenv32/libvisual+32/spec +++ /dev/null @@ -1,5 +0,0 @@ -VER=0.4.0 -REL=4 -SRCS="tbl::https://sourceforge.net/projects/libvisual/files/libvisual/libvisual-$VER/libvisual-$VER.tar.bz2" -CHKSUMS="sha256::78f38d3ce857edde5482aa4415b504bbcd4d4a688fd4de09ec2131ad08174279" -CHKUPDATE="anitya::id=13113" From 8eb881bd427596835c368e18d171bf90becbcd2a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 20:24:52 +0800 Subject: [PATCH 463/722] nvidia-open: drop libXNVCtrl headers Ship this with libxnvctrl, libxnvctrl+32. --- runtime-display/nvidia-open/autobuild/build | 4 ---- runtime-display/nvidia-open/spec | 1 + 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/runtime-display/nvidia-open/autobuild/build b/runtime-display/nvidia-open/autobuild/build index 01d7c5d5a9a..d49dd409e30 100644 --- a/runtime-display/nvidia-open/autobuild/build +++ b/runtime-display/nvidia-open/autobuild/build @@ -18,10 +18,6 @@ make -C doc install \ DESTDIR="$PKGDIR" \ PREFIX=/usr -abinfo "Installing XNVCtrl headers ..." -install -Dvm644 src/libXNVCtrl/*.h -t "$PKGDIR"/usr/include/NVCtrl -popd - pushd "$SRCDIR"/nvidia-xconfig abinfo "Building nvidia-xconfig ..." make all DO_STRIP= diff --git a/runtime-display/nvidia-open/spec b/runtime-display/nvidia-open/spec index a9e47e37275..ea70059fce2 100644 --- a/runtime-display/nvidia-open/spec +++ b/runtime-display/nvidia-open/spec @@ -2,6 +2,7 @@ _DRIVER_VER=565.77 # Note: sometimes utilities are not updated timely _UTILS_VERS=565.57.01 VER=${_DRIVER_VER}+utils${_UTILS_VERS} +REL=1 SRCS="git::rename=nvidia-driver;commit=tags/aosc/${_DRIVER_VER}/1::https://github.com/AOSC-Tracking/nvidia-open git::rename=nvidia-settings;commit=tags/${_UTILS_VERS}::https://github.com/NVIDIA/nvidia-settings git::rename=nvidia-xconfig;commit=tags/${_UTILS_VERS}::https://github.com/NVIDIA/nvidia-xconfig From c5dbe0630a22b80bdf4a3f1278914b5cd4517959 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 20:33:05 +0800 Subject: [PATCH 464/722] libxvnctrl: ship headers Previously found in nvidia, and later nvidia-open. --- runtime-display/libxnvctrl/autobuild/build | 4 ++++ runtime-display/libxnvctrl/autobuild/defines | 3 +++ runtime-display/libxnvctrl/spec | 1 + 3 files changed, 8 insertions(+) diff --git a/runtime-display/libxnvctrl/autobuild/build b/runtime-display/libxnvctrl/autobuild/build index 4df52d6cd08..34f98dc5af0 100644 --- a/runtime-display/libxnvctrl/autobuild/build +++ b/runtime-display/libxnvctrl/autobuild/build @@ -4,3 +4,7 @@ make abinfo "Installing libXNVCtrl.so ..." install -dvm755 "$PKGDIR"/usr/lib/ cp -Pv "$SRCDIR"/_out/Linux_*/libXNVCtrl.so* "$PKGDIR"/usr/lib/ + +abinfo "Installing headers ..." +install -Dvm644 "$SRCDIR"/*.h \ + -t "$PKGDIR"/usr/include/NVCtrl/ diff --git a/runtime-display/libxnvctrl/autobuild/defines b/runtime-display/libxnvctrl/autobuild/defines index 3f7805a488e..07d970f64a6 100644 --- a/runtime-display/libxnvctrl/autobuild/defines +++ b/runtime-display/libxnvctrl/autobuild/defines @@ -4,3 +4,6 @@ PKGDEP="x11-lib" PKGDES="X extension for the NVIDIA NV-CONTROL API" FAIL_ARCH="!(amd64|arm64)" + +PKGBREAK="nvidia<=565.77 565.77+utils565.57.01<=565.77+utils565.57.01" +PKGREP="nvidia<=565.77 565.77+utils565.57.01<=565.77+utils565.57.01" diff --git a/runtime-display/libxnvctrl/spec b/runtime-display/libxnvctrl/spec index 7dce69e7b07..c1a47eabc86 100644 --- a/runtime-display/libxnvctrl/spec +++ b/runtime-display/libxnvctrl/spec @@ -1,4 +1,5 @@ VER=565.57.01 +REL=1 SRCS="git::commit=tags/$VER::https://github.com/NVIDIA/nvidia-settings" CHKSUMS="SKIP" CHKUPDATE="anitya::id=5435" From 9bf311b489ed3c1f338df73be734c90c87fc4957 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 21:27:16 +0800 Subject: [PATCH 465/722] aalib+32: sync patches from Debian Fixes build with glibc >= 2.40. --- ...-Gimp-produce-better-man-page-output.patch | 3 - ...an-0002-Typo-fix-KEY_MOUDE-KEY_MOUSE.patch | 3 - ...or-aalib-config-and-aafire-1-updates.patch | 3 - .../0004-Debian-0004-Fix-linux_init.patch | 3 - ...an-0005-Fix-the-info-file-s-direntry.patch | 3 - ...ge-has-errors-from-man-l-not-defined.patch | 3 - .../0007-Debian-0007-Better-Dim-support.patch | 3 - .../0008-Debian-0008-Symbol-versioning.patch | 3 - ...an-0009-Various-build-system-changes.patch | 3 - .../0010-Debian-0010-Gpm_GetEvent-fix.patch | 3 - .../0011-Debian-0011-Fix-TexInfo-error.patch | 3 - ...alinuxkbd-Always-return-with-a-value.patch | 3 - .../patches/0013-Debian-fix-wording.patch | 24 ++++ .../0014-Debian-fix-netscape-typo.patch | 15 +++ ...-Debian-fix-ftbfs-incomplete-typedef.patch | 19 +++ ...an-fix-implicit-function-declaration.patch | 109 ++++++++++++++++++ 16 files changed, 167 insertions(+), 36 deletions(-) create mode 100644 runtime-optenv32/aalib+32/autobuild/patches/0013-Debian-fix-wording.patch create mode 100644 runtime-optenv32/aalib+32/autobuild/patches/0014-Debian-fix-netscape-typo.patch create mode 100644 runtime-optenv32/aalib+32/autobuild/patches/0015-Debian-fix-ftbfs-incomplete-typedef.patch create mode 100644 runtime-optenv32/aalib+32/autobuild/patches/0016-Debian-fix-implicit-function-declaration.patch diff --git a/runtime-optenv32/aalib+32/autobuild/patches/0001-Debian-0001-Make-Gimp-produce-better-man-page-output.patch b/runtime-optenv32/aalib+32/autobuild/patches/0001-Debian-0001-Make-Gimp-produce-better-man-page-output.patch index bd6ed32e33d..8548770efd5 100644 --- a/runtime-optenv32/aalib+32/autobuild/patches/0001-Debian-0001-Make-Gimp-produce-better-man-page-output.patch +++ b/runtime-optenv32/aalib+32/autobuild/patches/0001-Debian-0001-Make-Gimp-produce-better-man-page-output.patch @@ -35,6 +35,3 @@ index e96f10e..ea57fbb 100644 "", "" }, --- -2.0.1 - diff --git a/runtime-optenv32/aalib+32/autobuild/patches/0002-Debian-0002-Typo-fix-KEY_MOUDE-KEY_MOUSE.patch b/runtime-optenv32/aalib+32/autobuild/patches/0002-Debian-0002-Typo-fix-KEY_MOUDE-KEY_MOUSE.patch index 351b253aa29..99b07c5ff5d 100644 --- a/runtime-optenv32/aalib+32/autobuild/patches/0002-Debian-0002-Typo-fix-KEY_MOUDE-KEY_MOUSE.patch +++ b/runtime-optenv32/aalib+32/autobuild/patches/0002-Debian-0002-Typo-fix-KEY_MOUDE-KEY_MOUSE.patch @@ -37,6 +37,3 @@ index 696d87b..e2dabe4 100644 case KEY_MOUSE: return AA_MOUSE #endif --- -2.0.1 - diff --git a/runtime-optenv32/aalib+32/autobuild/patches/0003-Debian-0003-Manual-page-for-aalib-config-and-aafire-1-updates.patch b/runtime-optenv32/aalib+32/autobuild/patches/0003-Debian-0003-Manual-page-for-aalib-config-and-aafire-1-updates.patch index e67486f45d0..81524e0cb46 100644 --- a/runtime-optenv32/aalib+32/autobuild/patches/0003-Debian-0003-Manual-page-for-aalib-config-and-aafire-1-updates.patch +++ b/runtime-optenv32/aalib+32/autobuild/patches/0003-Debian-0003-Manual-page-for-aalib-config-and-aafire-1-updates.patch @@ -114,6 +114,3 @@ index 0000000..223df54 +supporting documentation. + +Modified for aalib by Joey Hess --- -2.0.1 - diff --git a/runtime-optenv32/aalib+32/autobuild/patches/0004-Debian-0004-Fix-linux_init.patch b/runtime-optenv32/aalib+32/autobuild/patches/0004-Debian-0004-Fix-linux_init.patch index ccffc76187e..ddb1c28e68d 100644 --- a/runtime-optenv32/aalib+32/autobuild/patches/0004-Debian-0004-Fix-linux_init.patch +++ b/runtime-optenv32/aalib+32/autobuild/patches/0004-Debian-0004-Fix-linux_init.patch @@ -23,6 +23,3 @@ index 0006d37..a732d4f 100644 nvcs = 1; } if (vc[0] == NULL) --- -2.0.1 - diff --git a/runtime-optenv32/aalib+32/autobuild/patches/0005-Debian-0005-Fix-the-info-file-s-direntry.patch b/runtime-optenv32/aalib+32/autobuild/patches/0005-Debian-0005-Fix-the-info-file-s-direntry.patch index 912cc28a155..4a05bbaa841 100644 --- a/runtime-optenv32/aalib+32/autobuild/patches/0005-Debian-0005-Fix-the-info-file-s-direntry.patch +++ b/runtime-optenv32/aalib+32/autobuild/patches/0005-Debian-0005-Fix-the-info-file-s-direntry.patch @@ -23,6 +23,3 @@ index bff13c1..42e1612 100644 @end direntry --- -2.0.1 - diff --git a/runtime-optenv32/aalib+32/autobuild/patches/0006-Debian-0006-Fixes-manpage-has-errors-from-man-l-not-defined.patch b/runtime-optenv32/aalib+32/autobuild/patches/0006-Debian-0006-Fixes-manpage-has-errors-from-man-l-not-defined.patch index fb99b42ffc2..169e262c619 100644 --- a/runtime-optenv32/aalib+32/autobuild/patches/0006-Debian-0006-Fixes-manpage-has-errors-from-man-l-not-defined.patch +++ b/runtime-optenv32/aalib+32/autobuild/patches/0006-Debian-0006-Fixes-manpage-has-errors-from-man-l-not-defined.patch @@ -20,6 +20,3 @@ index 223df54..db13383 100644 \fIaalib-config\fP accepts the following options: .TP 8 .B \-\-version --- -2.0.1 - diff --git a/runtime-optenv32/aalib+32/autobuild/patches/0007-Debian-0007-Better-Dim-support.patch b/runtime-optenv32/aalib+32/autobuild/patches/0007-Debian-0007-Better-Dim-support.patch index c90aa9e313a..dbc206e5a07 100644 --- a/runtime-optenv32/aalib+32/autobuild/patches/0007-Debian-0007-Better-Dim-support.patch +++ b/runtime-optenv32/aalib+32/autobuild/patches/0007-Debian-0007-Better-Dim-support.patch @@ -43,6 +43,3 @@ index a3dc713..dc3b220 100644 break; case AA_BOLD: attrset(A_BOLD); --- -2.0.1 - diff --git a/runtime-optenv32/aalib+32/autobuild/patches/0008-Debian-0008-Symbol-versioning.patch b/runtime-optenv32/aalib+32/autobuild/patches/0008-Debian-0008-Symbol-versioning.patch index d5e5cc5e69d..c50bced5ddd 100644 --- a/runtime-optenv32/aalib+32/autobuild/patches/0008-Debian-0008-Symbol-versioning.patch +++ b/runtime-optenv32/aalib+32/autobuild/patches/0008-Debian-0008-Symbol-versioning.patch @@ -37,6 +37,3 @@ index 0000000..fd62716 + local: + *; +}; --- -2.0.1 - diff --git a/runtime-optenv32/aalib+32/autobuild/patches/0009-Debian-0009-Various-build-system-changes.patch b/runtime-optenv32/aalib+32/autobuild/patches/0009-Debian-0009-Various-build-system-changes.patch index fa444023f86..8617fcf1c56 100644 --- a/runtime-optenv32/aalib+32/autobuild/patches/0009-Debian-0009-Various-build-system-changes.patch +++ b/runtime-optenv32/aalib+32/autobuild/patches/0009-Debian-0009-Various-build-system-changes.patch @@ -119,6 +119,3 @@ index 4de06a8..5901f80 100644 if test $ARCH = solaris; then AALIB_RLD_FLAGS="-R\${exec_prefix}/lib" --- -2.0.1 - diff --git a/runtime-optenv32/aalib+32/autobuild/patches/0010-Debian-0010-Gpm_GetEvent-fix.patch b/runtime-optenv32/aalib+32/autobuild/patches/0010-Debian-0010-Gpm_GetEvent-fix.patch index 4b4be8755fa..844969a033d 100644 --- a/runtime-optenv32/aalib+32/autobuild/patches/0010-Debian-0010-Gpm_GetEvent-fix.patch +++ b/runtime-optenv32/aalib+32/autobuild/patches/0010-Debian-0010-Gpm_GetEvent-fix.patch @@ -34,6 +34,3 @@ index 36742ac..d717983 100644 && ((*gpm_handler) (&ev, gpm_data))) { gpm_hflag = 1; return AA_MOUSE; --- -2.0.1 - diff --git a/runtime-optenv32/aalib+32/autobuild/patches/0011-Debian-0011-Fix-TexInfo-error.patch b/runtime-optenv32/aalib+32/autobuild/patches/0011-Debian-0011-Fix-TexInfo-error.patch index 45792eb3e53..1973dacc833 100644 --- a/runtime-optenv32/aalib+32/autobuild/patches/0011-Debian-0011-Fix-TexInfo-error.patch +++ b/runtime-optenv32/aalib+32/autobuild/patches/0011-Debian-0011-Fix-TexInfo-error.patch @@ -40,6 +40,3 @@ index 42e1612..2a4b514 100644 Display driver is the most significant driver (of course) so it is recomended to implement it first. Its structure is as follows: --- -2.0.1 - diff --git a/runtime-optenv32/aalib+32/autobuild/patches/0012-Debian-0012-aalinuxkbd-Always-return-with-a-value.patch b/runtime-optenv32/aalib+32/autobuild/patches/0012-Debian-0012-aalinuxkbd-Always-return-with-a-value.patch index 4dc5d982cf5..0713cf12c7c 100644 --- a/runtime-optenv32/aalib+32/autobuild/patches/0012-Debian-0012-aalinuxkbd-Always-return-with-a-value.patch +++ b/runtime-optenv32/aalib+32/autobuild/patches/0012-Debian-0012-aalinuxkbd-Always-return-with-a-value.patch @@ -25,6 +25,3 @@ index 610e026..918cb3a 100644 mypid = getpid(); if (tty_fd == -1) { tty_fd = fileno(stdin); --- -2.0.1 - diff --git a/runtime-optenv32/aalib+32/autobuild/patches/0013-Debian-fix-wording.patch b/runtime-optenv32/aalib+32/autobuild/patches/0013-Debian-fix-wording.patch new file mode 100644 index 00000000000..77acdd0bc63 --- /dev/null +++ b/runtime-optenv32/aalib+32/autobuild/patches/0013-Debian-fix-wording.patch @@ -0,0 +1,24 @@ +Description: fix typos and grammar in help + Fix a whole paragraph in the help printout. +Author: Jonathan Carter +Bug-Debian: https://bugs.debian.org/396824 +Last-Update: 2019-02-28 + +--- aalib-1.4p5.orig/src/aahelp.c ++++ aalib-1.4p5/src/aahelp.c +@@ -98,9 +98,9 @@ __AA_CONST char * __AA_CONST aa_help = + "Monitor parameters:\n" + " -dimmul multiply factor for dim color (5.3)\n" + " -boldmul multiply factor for dim color (2.7)\n" +-" The default parameters are set to fit my monitor (15\" goldstar)\n" +-" With contrast set to maximum and bright set to make black black\n" +-" This values depends at quality of your monitor (and setting of controls\n" +-" Defaultd settings should be OK for most PC monitors. But ideal monitor\n" +-" Needs dimmul=1.71 boldmul=1.43. For example monitor used by SGI is very\n" +-" close to this values. Also old 14\" vga monitors needs higher values.\n"; ++" The default parameters are based on my 15\" Goldstar monitor,)\n" ++" With contrast set to maximum, and brightness to the minimum.\n" ++" This values depend on your particular monitor and how the controls are set.\n" ++" Default settings should be OK for most PC monitors, but an ideal monitor\n" ++" needs dimmul=1.71 boldmul=1.43. SGI monitors, for example, are very\n" ++" close to this values. Old 14\" VGA monitors need higher values.\n"; diff --git a/runtime-optenv32/aalib+32/autobuild/patches/0014-Debian-fix-netscape-typo.patch b/runtime-optenv32/aalib+32/autobuild/patches/0014-Debian-fix-netscape-typo.patch new file mode 100644 index 00000000000..b50fe71a39d --- /dev/null +++ b/runtime-optenv32/aalib+32/autobuild/patches/0014-Debian-fix-netscape-typo.patch @@ -0,0 +1,15 @@ +Description: fix netscape typo + Replace Nestcape with Netscape. +Author: Jonathan Carter + +--- aalib-1.4p5.orig/src/aasave.c ++++ aalib-1.4p5/src/aasave.c +@@ -28,7 +28,7 @@ __AA_CONST struct aa_format aa_nhtml_for + 0, + AA_NORMAL_MASK | AA_BOLD_MASK | AA_BOLDFONT_MASK | AA_DIM_MASK, + &aa_fontcourier, +- "Nestcapeized html", ++ "Netscapeized html", + ".html", + "\nAscii arted image done using aalib\n\n\n
\n",
+     "
\n\n", diff --git a/runtime-optenv32/aalib+32/autobuild/patches/0015-Debian-fix-ftbfs-incomplete-typedef.patch b/runtime-optenv32/aalib+32/autobuild/patches/0015-Debian-fix-ftbfs-incomplete-typedef.patch new file mode 100644 index 00000000000..a49db5ccf40 --- /dev/null +++ b/runtime-optenv32/aalib+32/autobuild/patches/0015-Debian-fix-ftbfs-incomplete-typedef.patch @@ -0,0 +1,19 @@ +Description: fix-ftbfs-incomplete-typedef + This has been caused by a recent change in ncurses which makes the + WINDOW structure opaque. Accessing its members directly is no longer + possible +Bug-Debian: 1057381 +Last-Update: 2024-01-25 + +--- aalib-1.4p5.orig/src/aacurses.c ++++ aalib-1.4p5/src/aacurses.c +@@ -77,8 +77,7 @@ static void curses_getsize(aa_context * + { + if (__resized_curses) + curses_uninit(c), curses_init(&c->params, NULL,&c->driverparams, NULL), __resized_curses = 0; +- *width = stdscr->_maxx + 1; +- *height = stdscr->_maxy + 1; ++ getmaxyx(stdscr, *width, *height); + #ifdef GPM_MOUSEDRIVER + gpm_mx = *width; + gpm_my = *height; diff --git a/runtime-optenv32/aalib+32/autobuild/patches/0016-Debian-fix-implicit-function-declaration.patch b/runtime-optenv32/aalib+32/autobuild/patches/0016-Debian-fix-implicit-function-declaration.patch new file mode 100644 index 00000000000..76b41fc735f --- /dev/null +++ b/runtime-optenv32/aalib+32/autobuild/patches/0016-Debian-fix-implicit-function-declaration.patch @@ -0,0 +1,109 @@ +Description: Add missing header includes. +Author: Andrey Rakhmatullin +Bug-Debian: https://bugs.debian.org/1066351 +Last-Update: 2024-03-13 + +Index: aalib-1.4p5/src/aainfo.c +=================================================================== +--- aalib-1.4p5.orig/src/aainfo.c ++++ aalib-1.4p5/src/aainfo.c +@@ -1,3 +1,4 @@ ++#include + + #include "aalib.h" + #include "aaint.h" +Index: aalib-1.4p5/src/aalinuxkbd.c +=================================================================== +--- aalib-1.4p5.orig/src/aalinuxkbd.c ++++ aalib-1.4p5/src/aalinuxkbd.c +@@ -22,6 +22,7 @@ + #include /* for VT stuff - nah, really? :) */ + #include + #include ++#include + #ifdef GPM_MOUSEDRIVER + #include + #endif +Index: aalib-1.4p5/src/aaxkbd.c +=================================================================== +--- aalib-1.4p5.orig/src/aaxkbd.c ++++ aalib-1.4p5/src/aaxkbd.c +@@ -7,6 +7,7 @@ + #include + #include + #include ++#include + #include "aalib.h" + #include "aaint.h" + #include "aaxint.h" +Index: aalib-1.4p5/src/aalib.c +=================================================================== +--- aalib-1.4p5.orig/src/aalib.c ++++ aalib-1.4p5/src/aalib.c +@@ -1,6 +1,7 @@ + #include + #include + #include ++#include + #include "aalib.h" + #include "aaint.h" + +Index: aalib-1.4p5/src/aaregist.c +=================================================================== +--- aalib-1.4p5.orig/src/aaregist.c ++++ aalib-1.4p5/src/aaregist.c +@@ -1,4 +1,5 @@ + #include ++#include + #include "config.h" + #include "aalib.h" + #include "aaint.h" +Index: aalib-1.4p5/src/aakbdreg.c +=================================================================== +--- aalib-1.4p5.orig/src/aakbdreg.c ++++ aalib-1.4p5/src/aakbdreg.c +@@ -1,4 +1,5 @@ + #include ++#include + #include "config.h" + #include "aalib.h" + #include "aaint.h" +Index: aalib-1.4p5/src/aamoureg.c +=================================================================== +--- aalib-1.4p5.orig/src/aamoureg.c ++++ aalib-1.4p5/src/aamoureg.c +@@ -1,4 +1,5 @@ + #include ++#include + #include "config.h" + #include "aalib.h" + #include "aaint.h" +Index: aalib-1.4p5/src/aatest.c +=================================================================== +--- aalib-1.4p5.orig/src/aatest.c ++++ aalib-1.4p5/src/aatest.c +@@ -1,3 +1,5 @@ ++#include ++#include + #include "aalib.h" + int main(int argc, char **argv) + { +Index: aalib-1.4p5/src/aafire.c +=================================================================== +--- aalib-1.4p5.orig/src/aafire.c ++++ aalib-1.4p5/src/aafire.c +@@ -1,4 +1,5 @@ + #include ++#include + #include "aalib.h" + + #define XSIZ aa_imgwidth(context) +Index: aalib-1.4p5/src/aasavefont.c +=================================================================== +--- aalib-1.4p5.orig/src/aasavefont.c ++++ aalib-1.4p5/src/aasavefont.c +@@ -1,3 +1,4 @@ ++#include + #include "aalib.h" + int main(int argc, char **argv) + { From 31672a1514e06515ce8fb21afa9ecffec8c4b362 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 21:27:27 +0800 Subject: [PATCH 466/722] ffmpeg+32: disable documentation --- runtime-optenv32/ffmpeg+32/autobuild/build | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/runtime-optenv32/ffmpeg+32/autobuild/build b/runtime-optenv32/ffmpeg+32/autobuild/build index 6e4bf3ed071..6985f7bb1e4 100644 --- a/runtime-optenv32/ffmpeg+32/autobuild/build +++ b/runtime-optenv32/ffmpeg+32/autobuild/build @@ -34,7 +34,8 @@ abinfo "Configuring FFmpeg ..." --enable-swresample \ --enable-vdpau \ --enable-version3 \ - --enable-vaapi + --enable-vaapi \ + --disable-doc abinfo "Building FFmpeg ..." make From 6828ab88e0f7b06ad083dbefbfdc50a722fe6ea2 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 21:28:08 +0800 Subject: [PATCH 467/722] gtk-2+32: use at-spi2-core+32 --- runtime-optenv32/gtk-2+32/autobuild/beyond | 2 + runtime-optenv32/gtk-2+32/autobuild/defines | 2 +- ...Fix-fallout-from-g_object_ref-change.patch | 131 ++++++++++++++++++ ...02-FEDORA-immodule-fix-a-GCC-warning.patch | 40 ++++++ ...A-GtkScale-Fix-late-setting-of-marks.patch | 29 ++++ ...ORA-Return-the-expected-GObject-type.patch | 29 ++++ ...-gtk-defaultvalue-Actually-build.-fi.patch | 60 ++++++++ ...DORA-Convert-to-the-expected-pointer.patch | 29 ++++ ...-many-arguments-in-call-to-create_me.patch | 56 ++++++++ 9 files changed, 377 insertions(+), 1 deletion(-) create mode 100644 runtime-optenv32/gtk-2+32/autobuild/beyond create mode 100644 runtime-optenv32/gtk-2+32/autobuild/patches/0001-FEDORA-Fix-fallout-from-g_object_ref-change.patch create mode 100644 runtime-optenv32/gtk-2+32/autobuild/patches/0002-FEDORA-immodule-fix-a-GCC-warning.patch create mode 100644 runtime-optenv32/gtk-2+32/autobuild/patches/0003-FEDORA-GtkScale-Fix-late-setting-of-marks.patch create mode 100644 runtime-optenv32/gtk-2+32/autobuild/patches/0004-FEDORA-Return-the-expected-GObject-type.patch create mode 100644 runtime-optenv32/gtk-2+32/autobuild/patches/0005-FEDORA-testsuite-gtk-defaultvalue-Actually-build.-fi.patch create mode 100644 runtime-optenv32/gtk-2+32/autobuild/patches/0006-FEDORA-Convert-to-the-expected-pointer.patch create mode 100644 runtime-optenv32/gtk-2+32/autobuild/patches/0007-FEDORA-tests-Too-many-arguments-in-call-to-create_me.patch diff --git a/runtime-optenv32/gtk-2+32/autobuild/beyond b/runtime-optenv32/gtk-2+32/autobuild/beyond new file mode 100644 index 00000000000..80d27be7101 --- /dev/null +++ b/runtime-optenv32/gtk-2+32/autobuild/beyond @@ -0,0 +1,2 @@ +abinfo "Dropping gtk-update-icon-cache ..." +rm -v "$PKGDIR"/opt/32/bin/gtk-update-icon-cache diff --git a/runtime-optenv32/gtk-2+32/autobuild/defines b/runtime-optenv32/gtk-2+32/autobuild/defines index 88caedd34fe..4b0125cdab9 100644 --- a/runtime-optenv32/gtk-2+32/autobuild/defines +++ b/runtime-optenv32/gtk-2+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=gtk-2+32 PKGSEC=x11 -PKGDEP="atk+32 cairo+32 gdk-pixbuf+32 pango+32 shared-mime-info" +PKGDEP="at-spi2-core+32 cairo+32 gdk-pixbuf+32 pango+32 shared-mime-info" BUILDDEP="devel-base+32 gtk-doc python-2" PKGDES="GIMP toolkit version 2 (32-bit x86 runtime)" diff --git a/runtime-optenv32/gtk-2+32/autobuild/patches/0001-FEDORA-Fix-fallout-from-g_object_ref-change.patch b/runtime-optenv32/gtk-2+32/autobuild/patches/0001-FEDORA-Fix-fallout-from-g_object_ref-change.patch new file mode 100644 index 00000000000..70665626c17 --- /dev/null +++ b/runtime-optenv32/gtk-2+32/autobuild/patches/0001-FEDORA-Fix-fallout-from-g_object_ref-change.patch @@ -0,0 +1,131 @@ +From 3b918dda33931ab9bab423a5fc0e778d67fc8fdf Mon Sep 17 00:00:00 2001 +From: Matthias Clasen +Date: Sat, 25 Jan 2025 17:03:28 +0800 +Subject: [PATCH 1/7] FEDORA: Fix fallout from g_object_ref change + +g_object_ref now returns the type of the object that was passed. Introduce +cast as necessary to avoid warnings due to this. + +Signed-off-by: Matthias Clasen + +Link: https://src.fedoraproject.org/rpms/gtk2/blob/a3a398f4f95684dba7a461acf389626eb2a3b90e/f/gtk2-c89.patch +Signed-off-by: Mingcong Bai +--- + gtk/gtkcellrendererspin.c | 3 ++- + gtk/gtkcomboboxtext.c | 2 +- + gtk/gtklabel.c | 2 +- + gtk/gtktoolpalette.c | 2 +- + gtk/gtktreeview.c | 2 +- + gtk/gtkwidget.c | 2 +- + modules/printbackends/cups/gtkprintbackendcups.c | 2 +- + tests/testentrycompletion.c | 2 +- + 8 files changed, 9 insertions(+), 8 deletions(-) + +diff --git a/gtk/gtkcellrendererspin.c b/gtk/gtkcellrendererspin.c +index 2a3961bf20..7129d05e3b 100644 +--- a/gtk/gtkcellrendererspin.c ++++ b/gtk/gtkcellrendererspin.c +@@ -207,7 +207,8 @@ gtk_cell_renderer_spin_set_property (GObject *object, + } + + if (obj) +- priv->adjustment = g_object_ref_sink (obj); ++ priv->adjustment = GTK_ADJUSTMENT (g_object_ref_sink (obj)); ++ + break; + case PROP_CLIMB_RATE: + priv->climb_rate = g_value_get_double (value); +diff --git a/gtk/gtkcomboboxtext.c b/gtk/gtkcomboboxtext.c +index 9ffba68766..5e75323c2c 100644 +--- a/gtk/gtkcomboboxtext.c ++++ b/gtk/gtkcomboboxtext.c +@@ -275,7 +275,7 @@ gtk_combo_box_text_buildable_custom_tag_start (GtkBuildable *buildable, + + parser_data = g_slice_new0 (ItemParserData); + parser_data->builder = g_object_ref (builder); +- parser_data->object = g_object_ref (buildable); ++ parser_data->object = (GObject *)g_object_ref (buildable); + parser_data->domain = gtk_builder_get_translation_domain (builder); + *parser = item_parser; + *data = parser_data; +diff --git a/gtk/gtklabel.c b/gtk/gtklabel.c +index c47de5924f..879586b0d9 100644 +--- a/gtk/gtklabel.c ++++ b/gtk/gtklabel.c +@@ -1336,7 +1336,7 @@ gtk_label_buildable_custom_tag_start (GtkBuildable *buildable, + + parser_data = g_slice_new0 (PangoParserData); + parser_data->builder = g_object_ref (builder); +- parser_data->object = g_object_ref (buildable); ++ parser_data->object = (GObject *) g_object_ref (buildable); + *parser = pango_parser; + *data = parser_data; + return TRUE; +diff --git a/gtk/gtktoolpalette.c b/gtk/gtktoolpalette.c +index b984193ca3..ba4e472dea 100644 +--- a/gtk/gtktoolpalette.c ++++ b/gtk/gtktoolpalette.c +@@ -734,7 +734,7 @@ gtk_tool_palette_add (GtkContainer *container, + + g_ptr_array_add (palette->priv->groups, info); + info->pos = palette->priv->groups->len - 1; +- info->widget = g_object_ref_sink (child); ++ info->widget = (GtkToolItemGroup *)g_object_ref_sink (child); + + gtk_widget_set_parent (child, GTK_WIDGET (palette)); + } +diff --git a/gtk/gtktreeview.c b/gtk/gtktreeview.c +index 89301eb91d..0d2d15b488 100644 +--- a/gtk/gtktreeview.c ++++ b/gtk/gtktreeview.c +@@ -14147,7 +14147,7 @@ gtk_tree_view_set_search_entry (GtkTreeView *tree_view, + + if (entry) + { +- tree_view->priv->search_entry = g_object_ref (entry); ++ tree_view->priv->search_entry = GTK_WIDGET (g_object_ref (entry)); + tree_view->priv->search_custom_entry_set = TRUE; + + if (tree_view->priv->search_entry_changed_id == 0) +diff --git a/gtk/gtkwidget.c b/gtk/gtkwidget.c +index 1d1f6bb60e..391df5ed54 100644 +--- a/gtk/gtkwidget.c ++++ b/gtk/gtkwidget.c +@@ -10679,7 +10679,7 @@ gtk_widget_buildable_custom_tag_start (GtkBuildable *buildable, + AccelGroupParserData *parser_data; + + parser_data = g_slice_new0 (AccelGroupParserData); +- parser_data->object = g_object_ref (buildable); ++ parser_data->object = (GObject *)g_object_ref (buildable); + *parser = accel_group_parser; + *data = parser_data; + return TRUE; +diff --git a/modules/printbackends/cups/gtkprintbackendcups.c b/modules/printbackends/cups/gtkprintbackendcups.c +index 2a000dc16f..e081a70c45 100644 +--- a/modules/printbackends/cups/gtkprintbackendcups.c ++++ b/modules/printbackends/cups/gtkprintbackendcups.c +@@ -3479,7 +3479,7 @@ cups_request_ppd (GtkPrinter *printer) + g_io_channel_set_encoding (data->ppd_io, NULL, NULL); + g_io_channel_set_close_on_unref (data->ppd_io, TRUE); + +- data->printer = g_object_ref (printer); ++ data->printer = (GtkPrinterCups *) g_object_ref (printer); + + resource = g_strdup_printf ("/printers/%s.ppd", + gtk_printer_cups_get_ppd_name (GTK_PRINTER_CUPS (printer))); +diff --git a/tests/testentrycompletion.c b/tests/testentrycompletion.c +index 36c41f78a4..c556734b72 100644 +--- a/tests/testentrycompletion.c ++++ b/tests/testentrycompletion.c +@@ -237,7 +237,7 @@ animation_timer (GtkEntryCompletion *completion) + { + g_print ("removing model!\n"); + +- old_store = g_object_ref (gtk_entry_completion_get_model (completion)); ++ old_store = GTK_LIST_STORE (g_object_ref (gtk_entry_completion_get_model (completion))); + gtk_entry_completion_set_model (completion, NULL); + } + else +-- +2.48.1 + diff --git a/runtime-optenv32/gtk-2+32/autobuild/patches/0002-FEDORA-immodule-fix-a-GCC-warning.patch b/runtime-optenv32/gtk-2+32/autobuild/patches/0002-FEDORA-immodule-fix-a-GCC-warning.patch new file mode 100644 index 00000000000..776cbb5ed2f --- /dev/null +++ b/runtime-optenv32/gtk-2+32/autobuild/patches/0002-FEDORA-immodule-fix-a-GCC-warning.patch @@ -0,0 +1,40 @@ +From a1de5eb3e2641887f62cfdec89e238ed76fd41a0 Mon Sep 17 00:00:00 2001 +From: Cosimo Cecchi +Date: Sat, 25 Jan 2025 17:19:02 +0800 +Subject: [PATCH 2/7] FEDORA: immodule: fix a GCC warning + +Signed-off-by: Cosimo Cecchi + +[Mingcong Bai: This is now an error: + +gtk/gtkimmodule.c:665:49: error: passing argument 3 of 'g_hash_table_lookup_extended' + from incompatible pointer type [-Wincompatible-pointer-types] + 665 | &context_id, NULL); + | ^~~~~~~~~~~ + | | + | gchar ** {aka char **} + +Possibly due to recent GLib API changes.] + +Link: https://src.fedoraproject.org/rpms/gtk2/blob/a3a398f4f95684dba7a461acf389626eb2a3b90e/f/gtk2-c89-2.patch +Signed-off-by: Mingcong Bai +--- + gtk/gtkimmodule.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/gtk/gtkimmodule.c b/gtk/gtkimmodule.c +index 1fcb17a7d8..445b2be87f 100644 +--- a/gtk/gtkimmodule.c ++++ b/gtk/gtkimmodule.c +@@ -662,7 +662,7 @@ lookup_immodule (gchar **immodules_list) + gboolean found; + gchar *context_id; + found = g_hash_table_lookup_extended (contexts_hash, *immodules_list, +- &context_id, NULL); ++ (gpointer *) &context_id, NULL); + if (found) + return context_id; + } +-- +2.48.1 + diff --git a/runtime-optenv32/gtk-2+32/autobuild/patches/0003-FEDORA-GtkScale-Fix-late-setting-of-marks.patch b/runtime-optenv32/gtk-2+32/autobuild/patches/0003-FEDORA-GtkScale-Fix-late-setting-of-marks.patch new file mode 100644 index 00000000000..b8f0e537170 --- /dev/null +++ b/runtime-optenv32/gtk-2+32/autobuild/patches/0003-FEDORA-GtkScale-Fix-late-setting-of-marks.patch @@ -0,0 +1,29 @@ +From bd74d2d30ff2b9778b2ec8b624d8792040ee1366 Mon Sep 17 00:00:00 2001 +From: Matthias Clasen +Date: Sat, 25 Jan 2025 17:23:08 +0800 +Subject: [PATCH 3/7] FEDORA: GtkScale: Fix late setting of marks + +Signed-off-by: Matthias Clasen + +Link: https://src.fedoraproject.org/rpms/gtk2/blob/a3a398f4f95684dba7a461acf389626eb2a3b90e/f/gtk2-c89-3.patch +Signed-off-by: Mingcong Bai +--- + gtk/gtkscale.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/gtk/gtkscale.c b/gtk/gtkscale.c +index 4317523fb8..a573b2f6ba 100644 +--- a/gtk/gtkscale.c ++++ b/gtk/gtkscale.c +@@ -1471,7 +1471,7 @@ gtk_scale_add_mark (GtkScale *scale, + mark->position = position; + + priv->marks = g_slist_insert_sorted_with_data (priv->marks, mark, +- (GCompareFunc) compare_marks, ++ compare_marks, + GINT_TO_POINTER ( + gtk_range_get_inverted (GTK_RANGE (scale)) + )); +-- +2.48.1 + diff --git a/runtime-optenv32/gtk-2+32/autobuild/patches/0004-FEDORA-Return-the-expected-GObject-type.patch b/runtime-optenv32/gtk-2+32/autobuild/patches/0004-FEDORA-Return-the-expected-GObject-type.patch new file mode 100644 index 00000000000..73dc9c18e2a --- /dev/null +++ b/runtime-optenv32/gtk-2+32/autobuild/patches/0004-FEDORA-Return-the-expected-GObject-type.patch @@ -0,0 +1,29 @@ +From a93f60498176d86f25cadd864b0719bc786087db Mon Sep 17 00:00:00 2001 +From: Mingcong Bai +Date: Sat, 25 Jan 2025 17:28:06 +0800 +Subject: [PATCH 4/7] FEDORA: Return the expected GObject * type + +This was not fixed upstream before this file was removed. + +Link: https://src.fedoraproject.org/rpms/gtk2/blob/a3a398f4f95684dba7a461acf389626eb2a3b90e/f/gtk2-c89-4.patch +Signed-off-by: Mingcong Bai +--- + gtk/gtkuimanager.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/gtk/gtkuimanager.c b/gtk/gtkuimanager.c +index d004cf1ed3..8cbeda9e85 100644 +--- a/gtk/gtkuimanager.c ++++ b/gtk/gtkuimanager.c +@@ -503,7 +503,7 @@ gtk_ui_manager_buildable_construct_child (GtkBuildable *buildable, + g_signal_connect (widget, "hierarchy-changed", + G_CALLBACK (child_hierarchy_changed_cb), + GTK_UI_MANAGER (buildable)); +- return g_object_ref (widget); ++ return G_OBJECT (g_object_ref (widget)); + } + + static void +-- +2.48.1 + diff --git a/runtime-optenv32/gtk-2+32/autobuild/patches/0005-FEDORA-testsuite-gtk-defaultvalue-Actually-build.-fi.patch b/runtime-optenv32/gtk-2+32/autobuild/patches/0005-FEDORA-testsuite-gtk-defaultvalue-Actually-build.-fi.patch new file mode 100644 index 00000000000..f8ea7e49405 --- /dev/null +++ b/runtime-optenv32/gtk-2+32/autobuild/patches/0005-FEDORA-testsuite-gtk-defaultvalue-Actually-build.-fi.patch @@ -0,0 +1,60 @@ +From 16bba514191387b92bb49a02216d41f4c383a769 Mon Sep 17 00:00:00 2001 +From: Mingcong Bai +Date: Sat, 25 Jan 2025 17:31:09 +0800 +Subject: [PATCH 5/7] FEDORA: testsuite/gtk/defaultvalue: Actually build...& + fix + +It looks like this got dropped during the move from autotools and never +restored. I can see why, since making it work wasn't a hugely fun task! + +Notes on some less then obvious details: + * PlacesSidebar is private now and didn't seem to be to be particularly + easy to adapt to, so this moves to checking for it by name, not TYPE. + I couldn't find a (fast) better way; if you know how, please clean up + * added 2 casts to avoid warnings from the new type-propagating ref() + * GdkClipboard and GdkContentProvider need some properties dodged + * GtkToolItemGroup is gone + * fixed indentation and used TypeName:property-name syntax in a print() + +Signed-off-by: Daniel Boles + +Link: https://src.fedoraproject.org/rpms/gtk2/blob/a3a398f4f95684dba7a461acf389626eb2a3b90e/f/gtk2-c89-5.patch +Signed-off-by: Mingcong Bai +--- + gtk/tests/defaultvalue.c | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/gtk/tests/defaultvalue.c b/gtk/tests/defaultvalue.c +index 64a113c955..b78dcd6f59 100644 +--- a/gtk/tests/defaultvalue.c ++++ b/gtk/tests/defaultvalue.c +@@ -91,13 +91,13 @@ test_type (gconstpointer data) + klass = g_type_class_ref (type); + + if (g_type_is_a (type, GTK_TYPE_SETTINGS)) +- instance = g_object_ref (gtk_settings_get_default ()); ++ instance = G_OBJECT (g_object_ref (gtk_settings_get_default ())); + else if (g_type_is_a (type, GDK_TYPE_PANGO_RENDERER)) +- instance = g_object_ref (gdk_pango_renderer_get_default (gdk_screen_get_default ())); ++ instance = G_OBJECT (g_object_ref (gdk_pango_renderer_get_default (gdk_screen_get_default ()))); + else if (g_type_is_a (type, GDK_TYPE_PIXMAP)) +- instance = g_object_ref (gdk_pixmap_new (NULL, 1, 1, 1)); ++ instance = G_OBJECT (g_object_ref (gdk_pixmap_new (NULL, 1, 1, 1))); + else if (g_type_is_a (type, GDK_TYPE_COLORMAP)) +- instance = g_object_ref (gdk_colormap_new (gdk_visual_get_best (), TRUE)); ++ instance = G_OBJECT (g_object_ref (gdk_colormap_new (gdk_visual_get_best (), TRUE))); + else if (g_type_is_a (type, GDK_TYPE_WINDOW)) + { + GdkWindowAttr attributes; +@@ -105,7 +105,7 @@ test_type (gconstpointer data) + attributes.event_mask = 0; + attributes.width = 100; + attributes.height = 100; +- instance = g_object_ref (gdk_window_new (NULL, &attributes, 0)); ++ instance = G_OBJECT (g_object_ref (gdk_window_new (NULL, &attributes, 0))); + } + else + instance = g_object_new (type, NULL); +-- +2.48.1 + diff --git a/runtime-optenv32/gtk-2+32/autobuild/patches/0006-FEDORA-Convert-to-the-expected-pointer.patch b/runtime-optenv32/gtk-2+32/autobuild/patches/0006-FEDORA-Convert-to-the-expected-pointer.patch new file mode 100644 index 00000000000..6fc93cc52c4 --- /dev/null +++ b/runtime-optenv32/gtk-2+32/autobuild/patches/0006-FEDORA-Convert-to-the-expected-pointer.patch @@ -0,0 +1,29 @@ +From d6e96880c8c82898296b592e6fe4bb291995f5aa Mon Sep 17 00:00:00 2001 +From: Mingcong Bai +Date: Sat, 25 Jan 2025 19:41:10 +0800 +Subject: [PATCH 6/7] FEDORA: Convert to the expected pointer + +This was not fixed before the file was removed upstream. + +Link: https://src.fedoraproject.org/rpms/gtk2/blob/a3a398f4f95684dba7a461acf389626eb2a3b90e/f/gtk2-c89-6.patch +Signed-off-by: Mingcong Bai +--- + modules/other/gail/gailtreeview.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/modules/other/gail/gailtreeview.c b/modules/other/gail/gailtreeview.c +index 23923c59a1..ac6ff0a1c4 100644 +--- a/modules/other/gail/gailtreeview.c ++++ b/modules/other/gail/gailtreeview.c +@@ -995,7 +995,7 @@ gail_tree_view_ref_child (AtkObject *obj, + gail_cell_add_state (cell, ATK_STATE_FOCUSABLE, FALSE); + if (focus_index == i) + { +- gailview->focus_cell = g_object_ref (cell); ++ gailview->focus_cell = ATK_OBJECT (g_object_ref (cell)); + gail_cell_add_state (cell, ATK_STATE_FOCUSED, FALSE); + g_signal_emit_by_name (gailview, + "active-descendant-changed", +-- +2.48.1 + diff --git a/runtime-optenv32/gtk-2+32/autobuild/patches/0007-FEDORA-tests-Too-many-arguments-in-call-to-create_me.patch b/runtime-optenv32/gtk-2+32/autobuild/patches/0007-FEDORA-tests-Too-many-arguments-in-call-to-create_me.patch new file mode 100644 index 00000000000..2958ceb1b76 --- /dev/null +++ b/runtime-optenv32/gtk-2+32/autobuild/patches/0007-FEDORA-tests-Too-many-arguments-in-call-to-create_me.patch @@ -0,0 +1,56 @@ +From 5178e5c92c565efa694ffedbacba64283eb0f9d6 Mon Sep 17 00:00:00 2001 +From: Mingcong Bai +Date: Sat, 25 Jan 2025 19:46:08 +0800 +Subject: [PATCH 7/7] FEDORA: tests: Too many arguments in call to + 'create_menu' +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Signed-off-by: Javier Jardón + +Link: https://src.fedoraproject.org/rpms/gtk2/blob/595aab443e7fefb1b4347c7959f82133ffe48c78/f/gtk2-c99.patch +Signed-off-by: Mingcong Bai +--- + tests/testmenubars.c | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/tests/testmenubars.c b/tests/testmenubars.c +index 416a939861..853d822a9b 100644 +--- a/tests/testmenubars.c ++++ b/tests/testmenubars.c +@@ -21,7 +21,7 @@ + #include + + static GtkWidget * +-create_menu (depth) ++create_menu (guint depth) + { + GtkWidget *menu; + GtkWidget *menuitem; +@@ -70,19 +70,19 @@ create_menubar (GtkPackDirection pack_dir, + menuitem = gtk_image_menu_item_new_from_stock (GTK_STOCK_HOME, NULL); + gtk_menu_shell_append (GTK_MENU_SHELL (menubar), menuitem); + gtk_label_set_angle (GTK_LABEL (GTK_BIN (menuitem)->child), angle); +- menu = create_menu (2, TRUE); ++ menu = create_menu (2); + gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem), menu); + + menuitem = gtk_menu_item_new_with_label ("foo"); + gtk_menu_shell_append (GTK_MENU_SHELL (menubar), menuitem); + gtk_label_set_angle (GTK_LABEL (GTK_BIN (menuitem)->child), angle); +- menu = create_menu (2, TRUE); ++ menu = create_menu (2); + gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem), menu); + + menuitem = gtk_menu_item_new_with_label ("bar"); + gtk_menu_shell_append (GTK_MENU_SHELL (menubar), menuitem); + gtk_label_set_angle (GTK_LABEL (GTK_BIN (menuitem)->child), angle); +- menu = create_menu (2, TRUE); ++ menu = create_menu (2); + gtk_menu_item_set_submenu (GTK_MENU_ITEM (menuitem), menu); + + return menubar; +-- +2.48.1 + From 5459f8318d60c1b29516c4c7ec9fea69a1825f75 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 21:28:50 +0800 Subject: [PATCH 468/722] krb5+32: update to 1.21.3 - This version fixes build with glibc >= 2.40. - Drop removed --without-tcl option. --- runtime-optenv32/krb5+32/autobuild/defines | 1 - runtime-optenv32/krb5+32/spec | 6 +++--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/runtime-optenv32/krb5+32/autobuild/defines b/runtime-optenv32/krb5+32/autobuild/defines index 00d4cf01e7c..d0549f184ff 100644 --- a/runtime-optenv32/krb5+32/autobuild/defines +++ b/runtime-optenv32/krb5+32/autobuild/defines @@ -7,7 +7,6 @@ PKGDES="The Kerberos network authentication system (32-bit x86 runtime)" AUTOTOOLS_AFTER="--enable-shared \ --without-system-et \ --without-system-ss \ - --without-tcl \ --enable-dns-for-realm \ --with-ldap \ --without-system-verto \ diff --git a/runtime-optenv32/krb5+32/spec b/runtime-optenv32/krb5+32/spec index a6d2cae85a3..23afa25e342 100644 --- a/runtime-optenv32/krb5+32/spec +++ b/runtime-optenv32/krb5+32/spec @@ -1,6 +1,6 @@ -VER=1.17.1 -REL=2 +UPSTREAM_VER=1.21.3-final +VER=${UPSTREAM_VER/-final/} SRCS="tbl::https://web.mit.edu/kerberos/dist/krb5/${VER%.*}/krb5-$VER.tar.gz" -CHKSUMS="sha256::3706d7ec2eaa773e0e32d3a87bf742ebaecae7d064e190443a3acddfd8afb181" +CHKSUMS="sha256::b7a4cd5ead67fb08b980b21abd150ff7217e85ea320c9ed0c6dadd304840ad35" CHKUPDATE="anitya::id=13287" SUBDIR="krb5-$VER/src" From 753d3b560f472ef1ad47edd88fb678fb10a01920 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 21:29:09 +0800 Subject: [PATCH 469/722] libxnvctrl+32: ship headers Previously shipped with nvidia, and later nvidia-open. --- runtime-optenv32/libxnvctrl+32/autobuild/build | 4 ++++ runtime-optenv32/libxnvctrl+32/autobuild/defines | 3 +++ 2 files changed, 7 insertions(+) diff --git a/runtime-optenv32/libxnvctrl+32/autobuild/build b/runtime-optenv32/libxnvctrl+32/autobuild/build index 6760f3ad6e3..7d78bdbece3 100644 --- a/runtime-optenv32/libxnvctrl+32/autobuild/build +++ b/runtime-optenv32/libxnvctrl+32/autobuild/build @@ -4,3 +4,7 @@ make abinfo "Installing libXNVCtrl.so ..." install -dvm755 "$PKGDIR"/opt/32/lib/ cp -Pv "$SRCDIR"/_out/Linux_*/libXNVCtrl.so* "$PKGDIR"/opt/32/lib/ + +abinfo "Installing headers ..." +install -Dvm644 "$SRCDIR"/*.h \ + -t "$PKGDIR"/opt/32/include/NVCtrl/ diff --git a/runtime-optenv32/libxnvctrl+32/autobuild/defines b/runtime-optenv32/libxnvctrl+32/autobuild/defines index 8e5d0d997c3..f48c7751f22 100644 --- a/runtime-optenv32/libxnvctrl+32/autobuild/defines +++ b/runtime-optenv32/libxnvctrl+32/autobuild/defines @@ -5,3 +5,6 @@ BUILDDEP="devel-base+32" PKGDES="X extension for the NVIDIA NV-CONTROL API (32-bit x86 runtime)" ABHOST=optenv32 + +PKGBREAK="nvidia<=565.77 565.77+utils565.57.01<=565.77+utils565.57.01" +PKGREP="nvidia<=565.77 565.77+utils565.57.01<=565.77+utils565.57.01" From 1c0de9c28e0623de50b83012f1844f5419cdb51d Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 21:29:46 +0800 Subject: [PATCH 470/722] mangohud+32: drop nvidia build dep The libXNVCtrl headers are now shipped in libxnvctrl. --- runtime-optenv32/mangohud+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/mangohud+32/autobuild/defines b/runtime-optenv32/mangohud+32/autobuild/defines index 56f1e8962c2..845b22e2b62 100644 --- a/runtime-optenv32/mangohud+32/autobuild/defines +++ b/runtime-optenv32/mangohud+32/autobuild/defines @@ -2,7 +2,7 @@ PKGNAME=mangohud+32 PKGSEC=utils PKGDEP="dbus+32 glslang+32 libglvnd+32 libxkbcommon+32 libxnvctrl+32 \ mesa+32 wayland+32 x11-lib+32" -BUILDDEP="devel-base+32 mako nlohmann-json+32 nvidia+32 vulkan-headers+32" +BUILDDEP="devel-base+32 mako nlohmann-json+32 vulkan-headers+32" PKGDES="A Vulkan and OpenGL overlay for monitoring FPS, temperatures, CPU/GPU load and more (32-bit x86 runtime)" ABTYPE=meson From 2def7e7ab088abe6ab0bd2141203d30f48b88ea0 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 21:32:53 +0800 Subject: [PATCH 471/722] openldap+32: update to 2.6.9 This version fixes build with glibc >= 2.40. --- runtime-optenv32/openldap+32/spec | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/openldap+32/spec b/runtime-optenv32/openldap+32/spec index 7adf528d366..2318104f1d3 100644 --- a/runtime-optenv32/openldap+32/spec +++ b/runtime-optenv32/openldap+32/spec @@ -1,4 +1,5 @@ -VER=2.6.7 +UPSTREAM_VER=2_6_9 +VER=${UPSTREAM_VER//_/.} SRCS="tbl::https://www.openldap.org/software/download/OpenLDAP/openldap-release/openldap-$VER.tgz" -CHKSUMS="sha256::cd775f625c944ed78a3da18a03b03b08eea73c8aabc97b41bb336e9a10954930" +CHKSUMS="sha256::2cb7dc73e9c8340dff0d99357fbaa578abf30cc6619f0521972c555681e6b2ff" CHKUPDATE="anitya::id=2551" From 0a3521be16a8402930804e5f732f6525659f7a1f Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 21:33:17 +0800 Subject: [PATCH 472/722] p11-kit+32: update to 0.25.5 This version fixes build with glibc >= 2.40. --- runtime-optenv32/p11-kit+32/spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/p11-kit+32/spec b/runtime-optenv32/p11-kit+32/spec index 297327af274..7bc615a3bf2 100644 --- a/runtime-optenv32/p11-kit+32/spec +++ b/runtime-optenv32/p11-kit+32/spec @@ -1,4 +1,4 @@ -VER=0.25.3 +VER=0.25.5 SRCS="tbl::https://github.com/p11-glue/p11-kit/releases/download/$VER/p11-kit-$VER.tar.xz" -CHKSUMS="sha256::d8ddce1bb7e898986f9d250ccae7c09ce14d82f1009046d202a0eb1b428b2adc" +CHKSUMS="sha256::04d0a86450cdb1be018f26af6699857171a188ac6d5b8c90786a60854e1198e5" CHKUPDATE="anitya::id=2582" From c24e238ce3878fe4e690eca01bd7c3b88021b659 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 21:34:05 +0800 Subject: [PATCH 473/722] x264+32: use build script Autobuild is now stricter about what constitutes a proper Autotool source tree. This is not one. --- runtime-optenv32/x264+32/autobuild/build | 13 +++++++++++++ runtime-optenv32/x264+32/autobuild/defines | 4 ---- 2 files changed, 13 insertions(+), 4 deletions(-) create mode 100644 runtime-optenv32/x264+32/autobuild/build diff --git a/runtime-optenv32/x264+32/autobuild/build b/runtime-optenv32/x264+32/autobuild/build new file mode 100644 index 00000000000..894318b1e08 --- /dev/null +++ b/runtime-optenv32/x264+32/autobuild/build @@ -0,0 +1,13 @@ +abinfo "Configuring x264 ..." +"$SRCDIR"/configure \ + ${AUTOTOOLS_DEF[@]} \ + --host=i686-aosc-linux-gnu \ + --enable-shared \ + --enable-pic + +abinfo "Building x264 ..." +make + +abinfo "Installing x264 ..." +make install \ + DESTDIR="$PKGDIR" diff --git a/runtime-optenv32/x264+32/autobuild/defines b/runtime-optenv32/x264+32/autobuild/defines index eb05336f6da..3f581fe0504 100644 --- a/runtime-optenv32/x264+32/autobuild/defines +++ b/runtime-optenv32/x264+32/autobuild/defines @@ -6,8 +6,4 @@ PKGDES="H264 encoding library (32-bit x86 runtime)" PKGEPOCH=1 -RECONF=0 -ABSHADOW=0 -AUTOTOOLS_AFTER="--enable-shared --enable-pic" - ABHOST=optenv32 From f6a0297ff97c3a52e9e24c8489fe7d331ca7fe80 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 21:34:31 +0800 Subject: [PATCH 474/722] x265+32: use tarbal The Bitbucket source is often inaccessible from China. --- runtime-optenv32/x265+32/spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/runtime-optenv32/x265+32/spec b/runtime-optenv32/x265+32/spec index 0a803d5817d..844de1c5fa9 100644 --- a/runtime-optenv32/x265+32/spec +++ b/runtime-optenv32/x265+32/spec @@ -1,5 +1,5 @@ VER=3.6 -SRCS="git::commit=tags/$VER::https://bitbucket.org/multicoreware/x265_git" -CHKSUMS="SKIP" +SRCS="tbl::http://ftp.videolan.org/pub/videolan/x265/x265_$VER.tar.gz" +CHKSUMS="sha256::663531f341c5389f460d730e62e10a4fcca3428ca2ca109693867bc5fe2e2807" CHKUPDATE="anitya::id=7275" -SUBDIR="x265+32/source" +SUBDIR="x265_$VER/source" From bf99bcc78af66e72a3e53e7a34c4bd6bc69f9e48 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 21:34:51 +0800 Subject: [PATCH 475/722] libcdio+32: (Gentoo patch) fix build Fixes: https://bugs.gentoo.org/918988 Link: https://gitweb.gentoo.org/repo/gentoo.git/commit/dev-libs/libcdio/files/libcdio-2.1.0-no-lfs-shims.patch?id=83f41b5d07068d1910d20d3554740971109419d8 --- ...e-LFS-shims-rely-on-_FILE_OFFSET_BIT.patch | 91 +++++++++++++++++++ 1 file changed, 91 insertions(+) create mode 100644 runtime-optenv32/libcdio+32/autobuild/patches/0001-GENTOO-Do-not-use-LFS-shims-rely-on-_FILE_OFFSET_BIT.patch diff --git a/runtime-optenv32/libcdio+32/autobuild/patches/0001-GENTOO-Do-not-use-LFS-shims-rely-on-_FILE_OFFSET_BIT.patch b/runtime-optenv32/libcdio+32/autobuild/patches/0001-GENTOO-Do-not-use-LFS-shims-rely-on-_FILE_OFFSET_BIT.patch new file mode 100644 index 00000000000..9e973d1e5ae --- /dev/null +++ b/runtime-optenv32/libcdio+32/autobuild/patches/0001-GENTOO-Do-not-use-LFS-shims-rely-on-_FILE_OFFSET_BIT.patch @@ -0,0 +1,91 @@ +From 12975e67d701daba390c1635439c9d2d31bdeab2 Mon Sep 17 00:00:00 2001 +From: Alfred Wingate +Date: Mon, 20 May 2024 22:02:08 +0300 +Subject: [PATCH] GENTOO: Do not use LFS shims, rely on _FILE_OFFSET_BITS=64 + +See https://savannah.gnu.org/bugs/?65751 and https://bugs.gentoo.org/918988 + +Setting _FILE_OFFSET_BITS=64 is enough to get the LFS interface, +using LFS shims is unnecessary on 64-bit systems and they may +not be available on 32-bit systems on glibc. + +Signed-off-by: Alfred Wingate + +Fixes: https://bugs.gentoo.org/918988 +Link: https://gitweb.gentoo.org/repo/gentoo.git/commit/dev-libs/libcdio/files/libcdio-2.1.0-no-lfs-shims.patch?id=83f41b5d07068d1910d20d3554740971109419d8 +Signed-off-by: Mingcong Bai +--- + configure.ac | 8 ++++---- + lib/driver/_cdio_generic.c | 12 +----------- + lib/driver/_cdio_stdio.c | 6 +----- + 3 files changed, 6 insertions(+), 20 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 5f9f9e78..37e5928e 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -561,10 +561,10 @@ AC_DEFINE_UNQUOTED(LIBCDIO_SOURCE_PATH, "$LIBCDIO_SOURCE_PATH", + [Full path to libcdio top_sourcedir.]) + AC_SUBST(LIBCDIO_SOURCE_PATH) + +-AC_CHECK_FUNCS( [chdir drand48 fseeko fseeko64 ftruncate geteuid getgid \ +- getuid getpwuid gettimeofday lseek64 lstat memcpy memset mkstemp rand \ +- seteuid setegid snprintf setenv strndup unsetenv tzset sleep \ +- _stati64 usleep vsnprintf readlink realpath gmtime_r localtime_r] ) ++AC_CHECK_FUNCS( [chdir drand48 fseeko ftruncate geteuid getgid getuid \ ++ getpwuid gettimeofday lstat memcpy memset mkstemp rand seteuid \ ++ setegid snprintf setenv strndup unsetenv tzset sleep _stati64 \ ++ usleep vsnprintf readlink realpath gmtime_r localtime_r] ) + + # check for timegm() support + AC_CHECK_FUNC(timegm, AC_DEFINE(HAVE_TIMEGM,1, +diff --git a/lib/driver/_cdio_generic.c b/lib/driver/_cdio_generic.c +index 4a7fcadf..f5c8c402 100644 +--- a/lib/driver/_cdio_generic.c ++++ b/lib/driver/_cdio_generic.c +@@ -55,16 +55,6 @@ + #define PATH_MAX 4096 + #endif + +-/* If available and LFS is enabled, try to use lseek64 */ +-#if defined(HAVE_LSEEK64) && defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64) +-#if defined(_MSC_VER) +-#include +-#endif +-#define CDIO_LSEEK lseek64 +-#else +-#define CDIO_LSEEK lseek +-#endif +- + /*! + Eject media -- there's nothing to do here. We always return -2. + Should we also free resources? +@@ -170,7 +160,7 @@ off_t + cdio_generic_lseek (void *user_data, off_t offset, int whence) + { + generic_img_private_t *p_env = user_data; +- return CDIO_LSEEK(p_env->fd, offset, whence); ++ return lseek(p_env->fd, offset, whence); + } + + /*! +diff --git a/lib/driver/_cdio_stdio.c b/lib/driver/_cdio_stdio.c +index 1d46b156..c26a35d0 100644 +--- a/lib/driver/_cdio_stdio.c ++++ b/lib/driver/_cdio_stdio.c +@@ -47,11 +47,7 @@ + #include "_cdio_stdio.h" + #include "cdio_assert.h" + +-/* On 32 bit platforms, fseek can only access streams of 2 GB or less. +- Prefer fseeko/fseeko64, that take a 64 bit offset when LFS is enabled */ +-#if defined(HAVE_FSEEKO64) && defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64) +-#define CDIO_FSEEK fseeko64 +-#elif defined(HAVE_FSEEKO) ++#if defined(HAVE_FSEEKO) + #define CDIO_FSEEK fseeko + #else + #define CDIO_FSEEK fseek +-- +2.48.1 + From d8b40427adff3d8a6a31898c1b33cbdc2ce92d55 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 21:48:49 +0800 Subject: [PATCH 476/722] 32subsystem: move multilib wrappers to gcc+32 --- runtime-optenv32/32subsystem/autobuild/build | 13 ++++--------- .../autobuild/wrappers/clang++-multilib-wrapper | 12 ------------ .../autobuild/wrappers/clang-multilib-wrapper | 12 ------------ .../autobuild/wrappers/g++-multilib-wrapper | 12 ------------ .../autobuild/wrappers/gcc-multilib-wrapper | 12 ------------ 5 files changed, 4 insertions(+), 57 deletions(-) delete mode 100755 runtime-optenv32/32subsystem/autobuild/wrappers/clang++-multilib-wrapper delete mode 100755 runtime-optenv32/32subsystem/autobuild/wrappers/clang-multilib-wrapper delete mode 100755 runtime-optenv32/32subsystem/autobuild/wrappers/g++-multilib-wrapper delete mode 100755 runtime-optenv32/32subsystem/autobuild/wrappers/gcc-multilib-wrapper diff --git a/runtime-optenv32/32subsystem/autobuild/build b/runtime-optenv32/32subsystem/autobuild/build index c48db015e89..94dcdac9712 100644 --- a/runtime-optenv32/32subsystem/autobuild/build +++ b/runtime-optenv32/32subsystem/autobuild/build @@ -1,9 +1,4 @@ -echo Working... - -mkdir -p "$PKGDIR/usr/include/gnu" -ln -st "$PKGDIR/usr/include/gnu" /opt/32/include/gnu/stubs-32.h -mkdir -p "$PKGDIR"/usr/bin -cp autobuild/wrappers/* "$PKGDIR"/usr/bin/ - -mkdir -p "$PKGDIR"/{opt/32/lib,usr/include/gnu} -ln -st "$PKGDIR/opt/32/lib" /usr/lib/locale +abinfo "Building symlinks to shared data between main and 32-bit environments ..." +mkdir -pv "$PKGDIR"/{opt/32/lib,usr/include/gnu} +ln -sv ../../../usr/lib/locale \ + "$PKGDIR"/opt/32/lib diff --git a/runtime-optenv32/32subsystem/autobuild/wrappers/clang++-multilib-wrapper b/runtime-optenv32/32subsystem/autobuild/wrappers/clang++-multilib-wrapper deleted file mode 100755 index 49d9c73e296..00000000000 --- a/runtime-optenv32/32subsystem/autobuild/wrappers/clang++-multilib-wrapper +++ /dev/null @@ -1,12 +0,0 @@ -#! /bin/bash - -for i -do - if [ "x$i" = "x-m32" ] - then - export PATH="/opt/32/bin:$PATH" - exec /opt/32/bin/clang++ "$@" - fi -done - -exec /usr/bin/clang++ "$@" diff --git a/runtime-optenv32/32subsystem/autobuild/wrappers/clang-multilib-wrapper b/runtime-optenv32/32subsystem/autobuild/wrappers/clang-multilib-wrapper deleted file mode 100755 index c1a98980f23..00000000000 --- a/runtime-optenv32/32subsystem/autobuild/wrappers/clang-multilib-wrapper +++ /dev/null @@ -1,12 +0,0 @@ -#! /bin/bash - -for i -do - if [ "x$i" = "x-m32" ] - then - export PATH="/opt/32/bin:$PATH" - exec /opt/32/bin/clang "$@" - fi -done - -exec /usr/bin/clang "$@" diff --git a/runtime-optenv32/32subsystem/autobuild/wrappers/g++-multilib-wrapper b/runtime-optenv32/32subsystem/autobuild/wrappers/g++-multilib-wrapper deleted file mode 100755 index 6c3368f1d91..00000000000 --- a/runtime-optenv32/32subsystem/autobuild/wrappers/g++-multilib-wrapper +++ /dev/null @@ -1,12 +0,0 @@ -#! /bin/bash - -for i -do - if [ "x$i" = "x-m32" ] - then - export PATH="/opt/32/bin:$PATH" - exec /opt/32/bin/g++ "$@" - fi -done - -exec /usr/bin/g++ "$@" diff --git a/runtime-optenv32/32subsystem/autobuild/wrappers/gcc-multilib-wrapper b/runtime-optenv32/32subsystem/autobuild/wrappers/gcc-multilib-wrapper deleted file mode 100755 index a06e4d03317..00000000000 --- a/runtime-optenv32/32subsystem/autobuild/wrappers/gcc-multilib-wrapper +++ /dev/null @@ -1,12 +0,0 @@ -#! /bin/bash - -for i -do - if [ "x$i" = "x-m32" ] - then - export PATH="/opt/32/bin:$PATH" - exec /opt/32/bin/gcc "$@" - fi -done - -exec /usr/bin/gcc "$@" From e556289826a56500543d42145c07a723608eda0b Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sat, 25 Jan 2025 21:51:44 +0800 Subject: [PATCH 477/722] gcc+32: include multilib wrappers Previously shipped with 32subsystem. Do this to make the use of devel-base+32 possible. --- runtime-optenv32/gcc+32/autobuild/beyond | 5 +++++ runtime-optenv32/gcc+32/autobuild/defines | 3 +++ runtime-optenv32/gcc+32/autobuild/defines.stage2 | 5 ++++- .../overrides/usr/bin/clang++-multilib-wrapper | 12 ++++++++++++ .../overrides/usr/bin/clang-multilib-wrapper | 12 ++++++++++++ .../autobuild/overrides/usr/bin/g++-multilib-wrapper | 12 ++++++++++++ .../autobuild/overrides/usr/bin/gcc-multilib-wrapper | 12 ++++++++++++ 7 files changed, 60 insertions(+), 1 deletion(-) create mode 100755 runtime-optenv32/gcc+32/autobuild/overrides/usr/bin/clang++-multilib-wrapper create mode 100755 runtime-optenv32/gcc+32/autobuild/overrides/usr/bin/clang-multilib-wrapper create mode 100755 runtime-optenv32/gcc+32/autobuild/overrides/usr/bin/g++-multilib-wrapper create mode 100755 runtime-optenv32/gcc+32/autobuild/overrides/usr/bin/gcc-multilib-wrapper diff --git a/runtime-optenv32/gcc+32/autobuild/beyond b/runtime-optenv32/gcc+32/autobuild/beyond index b3af88be4fb..a59ac19201a 100644 --- a/runtime-optenv32/gcc+32/autobuild/beyond +++ b/runtime-optenv32/gcc+32/autobuild/beyond @@ -6,3 +6,8 @@ rm -v "$PKGDIR"/opt/32/lib/libiberty.a abinfo "Marking libgcc_s.so.1 as executable ..." chmod -v 0755 "$PKGDIR"/opt/32/lib/libgcc_s.so.1 + +abinfo "Installing multilib header ..." +mkdir -pv "$PKGDIR/usr/include/gnu" +ln -sv ../../../opt/32/include/gnu/stubs-32.h \ + "$PKGDIR"/usr/include/gnu/stubs-32.h diff --git a/runtime-optenv32/gcc+32/autobuild/defines b/runtime-optenv32/gcc+32/autobuild/defines index 4efa6c91c96..9ac7a8336e3 100644 --- a/runtime-optenv32/gcc+32/autobuild/defines +++ b/runtime-optenv32/gcc+32/autobuild/defines @@ -48,3 +48,6 @@ NOSTATIC=0 AB_FLAGS_O3=1 AB_FLAGS_SPECS=0 ABHOST=optenv32 + +PKGBREAK="32subsystem<=1:2" +PKGREP="32subsystem<=1:2" diff --git a/runtime-optenv32/gcc+32/autobuild/defines.stage2 b/runtime-optenv32/gcc+32/autobuild/defines.stage2 index 1e5b36e6e4b..153270a49ff 100644 --- a/runtime-optenv32/gcc+32/autobuild/defines.stage2 +++ b/runtime-optenv32/gcc+32/autobuild/defines.stage2 @@ -1,8 +1,11 @@ PKGNAME=gcc+32 -PKGDES="GNU Compiler Collection (optenv32)" +PKGDES="GNU Compiler Collection (32-bit x86 runtime)" PKGSEC=devel PKGDEP="binutils+32 gmp mpfr mpc zlib" NOSTATIC=0 ABSPLITDBG=0 + +PKGBREAK="32subsystem<=1:2" +PKGREP="32subsystem<=1:2" diff --git a/runtime-optenv32/gcc+32/autobuild/overrides/usr/bin/clang++-multilib-wrapper b/runtime-optenv32/gcc+32/autobuild/overrides/usr/bin/clang++-multilib-wrapper new file mode 100755 index 00000000000..49d9c73e296 --- /dev/null +++ b/runtime-optenv32/gcc+32/autobuild/overrides/usr/bin/clang++-multilib-wrapper @@ -0,0 +1,12 @@ +#! /bin/bash + +for i +do + if [ "x$i" = "x-m32" ] + then + export PATH="/opt/32/bin:$PATH" + exec /opt/32/bin/clang++ "$@" + fi +done + +exec /usr/bin/clang++ "$@" diff --git a/runtime-optenv32/gcc+32/autobuild/overrides/usr/bin/clang-multilib-wrapper b/runtime-optenv32/gcc+32/autobuild/overrides/usr/bin/clang-multilib-wrapper new file mode 100755 index 00000000000..c1a98980f23 --- /dev/null +++ b/runtime-optenv32/gcc+32/autobuild/overrides/usr/bin/clang-multilib-wrapper @@ -0,0 +1,12 @@ +#! /bin/bash + +for i +do + if [ "x$i" = "x-m32" ] + then + export PATH="/opt/32/bin:$PATH" + exec /opt/32/bin/clang "$@" + fi +done + +exec /usr/bin/clang "$@" diff --git a/runtime-optenv32/gcc+32/autobuild/overrides/usr/bin/g++-multilib-wrapper b/runtime-optenv32/gcc+32/autobuild/overrides/usr/bin/g++-multilib-wrapper new file mode 100755 index 00000000000..6c3368f1d91 --- /dev/null +++ b/runtime-optenv32/gcc+32/autobuild/overrides/usr/bin/g++-multilib-wrapper @@ -0,0 +1,12 @@ +#! /bin/bash + +for i +do + if [ "x$i" = "x-m32" ] + then + export PATH="/opt/32/bin:$PATH" + exec /opt/32/bin/g++ "$@" + fi +done + +exec /usr/bin/g++ "$@" diff --git a/runtime-optenv32/gcc+32/autobuild/overrides/usr/bin/gcc-multilib-wrapper b/runtime-optenv32/gcc+32/autobuild/overrides/usr/bin/gcc-multilib-wrapper new file mode 100755 index 00000000000..a06e4d03317 --- /dev/null +++ b/runtime-optenv32/gcc+32/autobuild/overrides/usr/bin/gcc-multilib-wrapper @@ -0,0 +1,12 @@ +#! /bin/bash + +for i +do + if [ "x$i" = "x-m32" ] + then + export PATH="/opt/32/bin:$PATH" + exec /opt/32/bin/gcc "$@" + fi +done + +exec /usr/bin/gcc "$@" From a956414193dea6a31fc45c385098a29f3308245a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 16 Feb 2025 16:33:05 +0800 Subject: [PATCH 478/722] nlohmann-json+32: add comment about version syncing --- runtime-optenv32/nlohmann-json+32/spec | 1 + 1 file changed, 1 insertion(+) diff --git a/runtime-optenv32/nlohmann-json+32/spec b/runtime-optenv32/nlohmann-json+32/spec index 10523e5c2f3..c6132f36d71 100644 --- a/runtime-optenv32/nlohmann-json+32/spec +++ b/runtime-optenv32/nlohmann-json+32/spec @@ -1,3 +1,4 @@ +# Note: Sync version with the main package. VER=3.11.3 REL=1 DUMMYSRC=1 From fbe53dad93940b40618265fb48c2bc2de16cb739 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 16 Feb 2025 16:33:27 +0800 Subject: [PATCH 479/722] 32subsystem: add missing EPOCH --- runtime-optenv32/32subsystem/autobuild/defines | 2 ++ 1 file changed, 2 insertions(+) diff --git a/runtime-optenv32/32subsystem/autobuild/defines b/runtime-optenv32/32subsystem/autobuild/defines index cf35ea35bdb..0352ca5f81c 100644 --- a/runtime-optenv32/32subsystem/autobuild/defines +++ b/runtime-optenv32/32subsystem/autobuild/defines @@ -41,3 +41,5 @@ PKGPROV="optenv32 ia32-libs" ABHOST=optenv32 # Note: Non-arch-agnostic package. ABSPLITDBG=0 + +PKGEPOCH=1 From 9d833be2652c96933f8cc93a582dc640d348921e Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 16 Feb 2025 16:34:05 +0800 Subject: [PATCH 480/722] opencl-registry-api+32: new, 2024.05.08 --- runtime-optenv32/opencl-registry-api+32/autobuild/build | 4 ++++ .../opencl-registry-api+32/autobuild/defines | 9 +++++++++ runtime-optenv32/opencl-registry-api+32/spec | 3 +++ 3 files changed, 16 insertions(+) create mode 100644 runtime-optenv32/opencl-registry-api+32/autobuild/build create mode 100644 runtime-optenv32/opencl-registry-api+32/autobuild/defines create mode 100644 runtime-optenv32/opencl-registry-api+32/spec diff --git a/runtime-optenv32/opencl-registry-api+32/autobuild/build b/runtime-optenv32/opencl-registry-api+32/autobuild/build new file mode 100644 index 00000000000..a07115bb00d --- /dev/null +++ b/runtime-optenv32/opencl-registry-api+32/autobuild/build @@ -0,0 +1,4 @@ +abinfo "Linking /opt/32/include/CL -> /usr/include/CL ..." +install -dv "$PKGDIR"/opt/32/include +ln -sv ../../../usr/include/CL \ + "$PKGDIR"/opt/32/include/CL diff --git a/runtime-optenv32/opencl-registry-api+32/autobuild/defines b/runtime-optenv32/opencl-registry-api+32/autobuild/defines new file mode 100644 index 00000000000..f9007ec1750 --- /dev/null +++ b/runtime-optenv32/opencl-registry-api+32/autobuild/defines @@ -0,0 +1,9 @@ +PKGNAME=opencl-registry-api+32 +PKGSEC=libs +PKGDEP="opencl-registry-api" +PKGDES="OpenCL (Open Computing Language) header files (32-bit x86 runtime)" + +ABHOST=optenv32 + +# Note: Header-only package. +ABSPLITDBG=0 diff --git a/runtime-optenv32/opencl-registry-api+32/spec b/runtime-optenv32/opencl-registry-api+32/spec new file mode 100644 index 00000000000..d8f47aef02f --- /dev/null +++ b/runtime-optenv32/opencl-registry-api+32/spec @@ -0,0 +1,3 @@ +# Note: Sync version with the main package. +VER=2024.05.08 +DUMMYSRC=1 From 4ffb7750bd5fd60f68a937a101ed108c057efdb4 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 16 Feb 2025 16:34:25 +0800 Subject: [PATCH 481/722] libcl+32: new, 2.3.2 --- runtime-optenv32/libcl+32/autobuild/defines | 10 ++++++++++ runtime-optenv32/libcl+32/spec | 4 ++++ 2 files changed, 14 insertions(+) create mode 100644 runtime-optenv32/libcl+32/autobuild/defines create mode 100644 runtime-optenv32/libcl+32/spec diff --git a/runtime-optenv32/libcl+32/autobuild/defines b/runtime-optenv32/libcl+32/autobuild/defines new file mode 100644 index 00000000000..6f924c70562 --- /dev/null +++ b/runtime-optenv32/libcl+32/autobuild/defines @@ -0,0 +1,10 @@ +PKGNAME=libcl+32 +PKGSEC=libs +PKGDEP="glibc+32" +BUILDDEP="devel-base+32 opencl-registry-api+32 ruby" +PKGDES="OpenCL ICD bindings and headers (32-bit x86 runtime)" + +# The "real name". +PKGPROV="ocl-icd" + +ABHOST=optenv32 diff --git a/runtime-optenv32/libcl+32/spec b/runtime-optenv32/libcl+32/spec new file mode 100644 index 00000000000..593b1558f80 --- /dev/null +++ b/runtime-optenv32/libcl+32/spec @@ -0,0 +1,4 @@ +VER=2.3.2 +SRCS="git::commit=tags/v$VER::https://github.com/OCL-dev/ocl-icd" +CHKSUMS="SKIP" +CHKUPDATE="anitya::id=2525" From 2b30e9c01f2ef0b4683ba4f5d13f67e7c5efedb7 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 16 Feb 2025 16:34:40 +0800 Subject: [PATCH 482/722] libclc+32: new, 18.1.8 --- runtime-optenv32/libclc+32/autobuild/build | 4 ++++ runtime-optenv32/libclc+32/autobuild/defines | 9 +++++++++ runtime-optenv32/libclc+32/spec | 3 +++ 3 files changed, 16 insertions(+) create mode 100644 runtime-optenv32/libclc+32/autobuild/build create mode 100644 runtime-optenv32/libclc+32/autobuild/defines create mode 100644 runtime-optenv32/libclc+32/spec diff --git a/runtime-optenv32/libclc+32/autobuild/build b/runtime-optenv32/libclc+32/autobuild/build new file mode 100644 index 00000000000..658a7aa29fd --- /dev/null +++ b/runtime-optenv32/libclc+32/autobuild/build @@ -0,0 +1,4 @@ +abinfo "Linking /opt/32/include/clc => usr/include/clc ..." +install -dv "$PKGDIR"/opt/32/include +ln -sv ../../../usr/include/clc \ + "$PKGDIR"/opt/32/include/clc diff --git a/runtime-optenv32/libclc+32/autobuild/defines b/runtime-optenv32/libclc+32/autobuild/defines new file mode 100644 index 00000000000..0cc945b9c1e --- /dev/null +++ b/runtime-optenv32/libclc+32/autobuild/defines @@ -0,0 +1,9 @@ +PKGNAME=libclc+32 +PKGSEC=libs +PKGDEP="libclc" +PKGDES="Library requirements of the OpenCL C programming language (32-bit x86 runtime)" + +ABHOST=optenv32 + +# Note: Header-only package. +ABSPLITDBG=0 diff --git a/runtime-optenv32/libclc+32/spec b/runtime-optenv32/libclc+32/spec new file mode 100644 index 00000000000..75528348a74 --- /dev/null +++ b/runtime-optenv32/libclc+32/spec @@ -0,0 +1,3 @@ +# Note: Follow version of the main package. +VER=18.1.8 +DUMMYSRC=1 From 755ab83d447bc1d46352a8fec3790c508e5a1f8d Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 16 Feb 2025 16:35:02 +0800 Subject: [PATCH 483/722] tslib+32: new, 1.21 --- runtime-optenv32/tslib+32/autobuild/defines | 7 +++++++ runtime-optenv32/tslib+32/spec | 4 ++++ 2 files changed, 11 insertions(+) create mode 100644 runtime-optenv32/tslib+32/autobuild/defines create mode 100644 runtime-optenv32/tslib+32/spec diff --git a/runtime-optenv32/tslib+32/autobuild/defines b/runtime-optenv32/tslib+32/autobuild/defines new file mode 100644 index 00000000000..9750ccf35e1 --- /dev/null +++ b/runtime-optenv32/tslib+32/autobuild/defines @@ -0,0 +1,7 @@ +PKGNAME=tslib+32 +PKGSEC=libs +PKGDEP="glibc+32" +BUILDDEP="devel-base+32" +PKGDES="Touchscreen access library (32-bit x86 runtime)" + +ABHOST=optenv32 diff --git a/runtime-optenv32/tslib+32/spec b/runtime-optenv32/tslib+32/spec new file mode 100644 index 00000000000..9eda4807d9b --- /dev/null +++ b/runtime-optenv32/tslib+32/spec @@ -0,0 +1,4 @@ +VER=1.21 +SRCS="tbl::https://github.com/kergoth/tslib/releases/download/$VER/tslib-$VER.tar.xz" +CHKSUMS="sha256::d2a57b823ea59e53a3b130eef05dfed1190b857854f886eec764e1ca1957cf56" +CHKUPDATE="anitya::id=15156" From ea351338588d1c178ffc0de2e8eab75500e1bd68 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 16 Feb 2025 16:35:11 +0800 Subject: [PATCH 484/722] sdl2+32: new, 2.30.4 --- runtime-optenv32/sdl2+32/autobuild/defines | 16 ++++++++++++++++ runtime-optenv32/sdl2+32/spec | 4 ++++ 2 files changed, 20 insertions(+) create mode 100644 runtime-optenv32/sdl2+32/autobuild/defines create mode 100644 runtime-optenv32/sdl2+32/spec diff --git a/runtime-optenv32/sdl2+32/autobuild/defines b/runtime-optenv32/sdl2+32/autobuild/defines new file mode 100644 index 00000000000..3ded7fa2249 --- /dev/null +++ b/runtime-optenv32/sdl2+32/autobuild/defines @@ -0,0 +1,16 @@ +PKGNAME=sdl2+32 +PKGSEC=x11 +PKGDEP="glibc+32 libxkbcommon+32 mesa+32 tslib+32 x11-lib+32" +BUILDDEP="devel-base+32 alsa-lib+32 pulseaudio+32 wayland+32" +PKGDES="A library for portable low-level access to a video framebuffer, audio output, mouse, and keyboard (Version 2, 32-bit x86 runtime)" + +# FIXME: The CMake configuration for SDL2 is painful for cross-like builds. +# +# We needed to specify the path to each library (and it defaults to /usr/lib) +# as the search path. +ABTYPE=autotools +AUTOTOOLS_AFTER=( + '--disable-jack' +) + +ABHOST=optenv32 diff --git a/runtime-optenv32/sdl2+32/spec b/runtime-optenv32/sdl2+32/spec new file mode 100644 index 00000000000..c92f54be1fb --- /dev/null +++ b/runtime-optenv32/sdl2+32/spec @@ -0,0 +1,4 @@ +VER=2.30.4 +SRCS="tbl::https://www.libsdl.org/release/SDL2-$VER.tar.gz" +CHKSUMS="sha256::59c89d0ed40d4efb23b7318aa29fe7039dbbc098334b14f17f1e7e561da31a26" +CHKUPDATE="anitya::id=4779" From eb61969f1a06f67d423faa463b122d8c2b5d27c6 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 16 Feb 2025 16:35:24 +0800 Subject: [PATCH 485/722] pulseaudio+32: drop unused udev rules --- runtime-optenv32/pulseaudio+32/autobuild/beyond | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 runtime-optenv32/pulseaudio+32/autobuild/beyond diff --git a/runtime-optenv32/pulseaudio+32/autobuild/beyond b/runtime-optenv32/pulseaudio+32/autobuild/beyond new file mode 100644 index 00000000000..4bf137b55d4 --- /dev/null +++ b/runtime-optenv32/pulseaudio+32/autobuild/beyond @@ -0,0 +1,2 @@ +abinfo "Dropping unused udev rules ..." +rm -rv "$PKGDIR"/usr/lib/udev From 2ec685e5965f13e8ad672c37e673468ae391dd62 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 16 Feb 2025 16:35:44 +0800 Subject: [PATCH 486/722] mesa+32: enable OpenCL support --- runtime-optenv32/mesa+32/autobuild/defines | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/runtime-optenv32/mesa+32/autobuild/defines b/runtime-optenv32/mesa+32/autobuild/defines index 7df7af9b729..b63dd882430 100644 --- a/runtime-optenv32/mesa+32/autobuild/defines +++ b/runtime-optenv32/mesa+32/autobuild/defines @@ -2,7 +2,7 @@ PKGNAME=mesa+32 PKGSEC=x11 PKGDEP="llvm+32 x11-lib+32 libdrm+32 expat+32 eudev+32 elfutils+32 \ libvdpau+32 libglvnd+32 libva+32 spirv-llvm-translator+32 \ - libunwind+32 lm-sensors+32 wayland+32" + libunwind+32 lm-sensors+32 wayland+32 libcl+32 libclc+32" BUILDDEP="devel-base+32 glslang mako pyyaml rust-bindgen rustc+32 \ spirv-tools+32 cbindgen" PKGDES="Runtime library for OpenGL, Vulkan, OpenCL, and more (32-bit x86 runtime)" @@ -16,6 +16,7 @@ NOLTO=1 ABHOST=optenv32 # Note: Intel Ray Tracing is only supported for x86_64. +# Note: RustICL was disabled, as there is no useful driver for x86 yet. MESON_AFTER=( '-Ddri-drivers-path=/opt/32/lib/xorg/modules/dri' '-Db_ndebug=true' @@ -43,4 +44,8 @@ MESON_AFTER=( '-Dsse2=true' '-Dvulkan-icd-dir=/usr/share/vulkan/icd.d' '-Dlmsensors=enabled' + '-Dgallium-opencl=icd' + '-Dgallium-rusticl=false' + '-Dopencl-spirv=true' + '-Dintel-clc=enabled' ) From 4205a40990da90d8f45fa6b54044a2085a9d2dd1 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 16 Feb 2025 19:36:13 +0800 Subject: [PATCH 487/722] wine: update to 10.1 - Unify build scripts for all targets. - Track patches at AOSC-Tracking/wine @ aosc/wine-10.1 (HEAD: 1673337714dbd782884b9efff9e73e794a8e5752). --- app-emulation/wine/autobuild/amd64/build | 12 -- app-emulation/wine/autobuild/amd64/build32 | 25 ---- app-emulation/wine/autobuild/amd64/build64 | 22 ---- app-emulation/wine/autobuild/arm64/build | 20 ---- app-emulation/wine/autobuild/build | 66 +++++++++++ app-emulation/wine/autobuild/defines | 108 +++++++++++++++--- app-emulation/wine/autobuild/i486/beyond | 43 ------- app-emulation/wine/autobuild/i486/build | 29 ----- ...o-disable-floating-shadow-for-WeChat.patch | 8 +- .../patches/0002-CJK-font-replacement.patch | 8 +- app-emulation/wine/autobuild/pax | 1 - app-emulation/wine/spec | 6 +- 12 files changed, 168 insertions(+), 180 deletions(-) delete mode 100644 app-emulation/wine/autobuild/amd64/build delete mode 100644 app-emulation/wine/autobuild/amd64/build32 delete mode 100644 app-emulation/wine/autobuild/amd64/build64 delete mode 100644 app-emulation/wine/autobuild/arm64/build create mode 100644 app-emulation/wine/autobuild/build delete mode 100644 app-emulation/wine/autobuild/i486/beyond delete mode 100644 app-emulation/wine/autobuild/i486/build delete mode 100644 app-emulation/wine/autobuild/pax diff --git a/app-emulation/wine/autobuild/amd64/build b/app-emulation/wine/autobuild/amd64/build deleted file mode 100644 index 928125cbada..00000000000 --- a/app-emulation/wine/autobuild/amd64/build +++ /dev/null @@ -1,12 +0,0 @@ -abinfo "Applying Wine Staging patches ..." -ln -sv "$SRCDIR" "$SRCDIR"/../wine-staging/patches/wine -"$SRCDIR"/../wine-staging/staging/patchinstall.py DESTDIR="$SRCDIR" --all - -export CC="gcc-multilib-wrapper" CXX="g++-multilib-wrapper" - -abinfo "Building Wine (64-bit runtime) ..." -. autobuild/amd64/build64 -abinfo "Building Wine (32-bit runtime) ..." -. autobuild/amd64/build32 - -PATH=/usr/bin:$PATH diff --git a/app-emulation/wine/autobuild/amd64/build32 b/app-emulation/wine/autobuild/amd64/build32 deleted file mode 100644 index 596eef28e28..00000000000 --- a/app-emulation/wine/autobuild/amd64/build32 +++ /dev/null @@ -1,25 +0,0 @@ -mkdir wine32 -pushd wine32 - -../configure \ - --prefix=/usr \ - --with-x \ - --with-xattr \ - --with-dbus \ - --with-gstreamer \ - --with-d3dadapter \ - --libdir=/usr/lib/wine32 \ - --with-wine64=`pwd`/../wine64 \ - --with-va \ - --with-gtk3 \ - --with-pulse \ - --with-vulkan \ - --with-mingw \ - --with-vkd3d \ - PKG_CONFIG_PATH="/opt/32/lib/pkgconfig" -make -make prefix="$PKGDIR/usr" \ - libdir="$PKGDIR/usr/lib/wine32" \ - dlldir="$PKGDIR/usr/lib/wine32/wine" install -j1 - -popd diff --git a/app-emulation/wine/autobuild/amd64/build64 b/app-emulation/wine/autobuild/amd64/build64 deleted file mode 100644 index 0e814828e1c..00000000000 --- a/app-emulation/wine/autobuild/amd64/build64 +++ /dev/null @@ -1,22 +0,0 @@ -mkdir wine64 -pushd wine64 - -../configure \ - --prefix=/usr \ - --libdir=/usr/lib/wine64 \ - --with-x \ - --with-xattr \ - --with-dbus \ - --with-gstreamer \ - --enable-win64 \ - --with-gtk3 \ - --with-pulse \ - --with-vulkan \ - --with-mingw \ - --with-vkd3d -make -make prefix="$PKGDIR/usr" \ - libdir="$PKGDIR/usr/lib/wine64" \ - dlldir="$PKGDIR/usr/lib/wine64/wine" install -j1 - -popd diff --git a/app-emulation/wine/autobuild/arm64/build b/app-emulation/wine/autobuild/arm64/build deleted file mode 100644 index d461f5ce164..00000000000 --- a/app-emulation/wine/autobuild/arm64/build +++ /dev/null @@ -1,20 +0,0 @@ -mkdir wine64 -pushd wine64 - -../configure \ - --prefix=/usr \ - --libdir=/usr/lib/wine64 \ - --with-x \ - --with-xattr \ - --with-dbus \ - --with-gstreamer \ - --with-gtk3 \ - --with-pulse \ - --with-vulkan \ - --with-vkd3d -make -make prefix="$PKGDIR/usr" \ - libdir="$PKGDIR/usr/lib/wine64" \ - dlldir="$PKGDIR/usr/lib/wine64/wine" install -j1 - -popd diff --git a/app-emulation/wine/autobuild/build b/app-emulation/wine/autobuild/build new file mode 100644 index 00000000000..cecd24c790e --- /dev/null +++ b/app-emulation/wine/autobuild/build @@ -0,0 +1,66 @@ +abinfo "Applying Wine Staging patches ..." +ln -sv "$SRCDIR" \ + "$SRCDIR"/../wine-staging/patches/wine +"$SRCDIR"/../wine-staging/staging/patchinstall.py \ + DESTDIR="$SRCDIR" --all + +abinfo "Preparing to build main (native) Wine runtime ..." +mkdir -pv "$SRCDIR"/wine +cd "$SRCDIR"/wine +if ! ab_match_arch i486; then + _WINE_SUFFIX="64" + _WINE_WIN64="--enable-win64" +else + _WINE_WIN16="--enable-win16" +fi + +abinfo "Configuring main (native) Wine runtime ..." +../configure \ + --prefix=/usr \ + --libdir=/usr/lib/wine${_WINE_SUFFIX} \ + ${AUTOTOOLS_AFTER[@]} ${_WINE_WIN64} ${_WINE_WIN16} + +abinfo "Building main (native) Wine runtime ..." +make + +abinfo "Installing main (native) Wine runtime ..." +make install \ + prefix="$PKGDIR/usr" \ + libdir="$PKGDIR/usr/lib/wine64" \ + dlldir="$PKGDIR/usr/lib/wine64/wine" \ + -j1 + +if ab_match_arch amd64; then + abinfo "Setting up multilib wrapper ..." + export \ + CC="gcc-multilib-wrapper" \ + CXX="g++-multilib-wrapper" + + abinfo "Preparing to build 32-bit Wine runtime ..." + mkdir -pv "$SRCDIR"/wine32 + cd "$SRCDIR"/wine32 + + abinfo "Configuring 32-bit Wine runtime ..." + ../configure \ + --prefix=/usr \ + --libdir=/usr/lib/wine32 \ + --with-wine64="$SRCDIR"/wine \ + --enable-win16 \ + ${AUTOTOOLS_AFTER[@]} \ + --without-pcsclite \ + --without-sane \ + --without-gphoto \ + --without-cups \ + --without-netapi \ + PKG_CONFIG_PATH="/opt/32/lib/pkgconfig" + + abinfo "Building 32-bit Wine runtime ..." + make + + abinfo "Installing 32-bit Wine runtime ..." + make install \ + prefix="$PKGDIR/usr" \ + libdir="$PKGDIR/usr/lib/wine32" \ + dlldir="$PKGDIR/usr/lib/wine32/wine" \ + -j1 +fi diff --git a/app-emulation/wine/autobuild/defines b/app-emulation/wine/autobuild/defines index 21030fa8493..8739d145ef5 100644 --- a/app-emulation/wine/autobuild/defines +++ b/app-emulation/wine/autobuild/defines @@ -1,35 +1,109 @@ PKGNAME=wine PKGSEC=utils -PKGDEP="desktop-file-utils fontconfig freetype gettext glu x11-lib libpcap alsa-lib \ - alsa-plugins gnutls giflib cups lcms2 pulseaudio openldap libjpeg-turbo libxml2 libxslt \ - mpg123 ncurses openal-soft v4l-utils samba libcl gtk-3\ - gst-plugins-base-1-0 libgphoto2 sane-backends vulkan vkd3d" -PKGDEP__AMD64="${PKGDEP} 32subsystem vulkan+32 vkd3d+32 llvm-runtime" +PKGDEP="desktop-file-utils fontconfig freetype gettext glu x11-lib libpcap \ + alsa-lib alsa-plugins gnutls giflib cups lcms2 pulseaudio openldap \ + libjpeg-turbo libxml2 libxslt mpg123 ncurses openal-soft v4l-utils \ + samba libcl gtk-3 libgphoto2 sane-backends vulkan vkd3d ffmpeg" +PKGDEP__AMD64=" \ + ${PKGDEP} devel-base+32 ffmpeg+32 libcl+32 libclc+32 libpcap+32 \ + mesa+32 sdl2+32 vkd3d+32 vulkan+32 llvm-runtime" PKGDEP__ARM64="${PKGDEP} llvm-runtime" -PKGDEP__RETRO="desktop-file-utils fontconfig freetype gettext glu x11-lib libpcap alsa-lib \ - gnutls giflib cups lcms2 openldap libjpeg-turbo libxml2 libxslt mpg123 ncurses \ - openal-soft v4l-utils samba libgphoto2 sane-backends" +PKGDEP__RETRO=" \ + desktop-file-utils fontconfig freetype gettext glu x11-lib libpcap \ + alsa-lib gnutls giflib cups lcms2 openldap libjpeg-turbo libxml2 \ + libxslt mpg123 ncurses openal-soft v4l-utils samba libgphoto2 \ + sane-backends" PKGDEP__I486="${PKGDEP__RETRO}" PKGSUG="noto-fonts noto-cjk-fonts" PKGSUG__RETRO="" PKGSUG__I486="${PKGSUG__RETRO}" -BUILDDEP="chrpath wayland-protocols opencl-registry-api dos2unix llvm" +BUILDDEP="chrpath dos2unix llvm opencl-registry-api opencl-registry-api+32 \ + wayland-protocols" BUILDDEP__RETRO="chrpath dos2unix" BUILDDEP__I486="${BUILDDEP__RETRO}" PKGDES="Runtime/Compatibility Layer for running programs designed for Microsoft Windows" -# AMD64 build requires MingW-w64, according to https://bugs.winehq.org/show_bug.cgi?id=49436#c27 +# Note: AMD64 build requires MingW-w64. +# +# See https://bugs.winehq.org/show_bug.cgi?id=49436#c27. BUILDDEP__AMD64="${BUILDDEP} gcc+w64 binutils+w64 mingw+w64" -# AArch64 build requires Clang. -BUILDDEP__ARM64="${BUILDDEP} llvm" -USECLANG__ARM64=1 +# Note: Wine seems to prefer Clang. +USECLANG=1 -NOSTATIC=0 - -PKGEPOCH=3 +# FIXME: /usr/bin/ld: /tmp/cc2aPEVj.ltrans0.ltrans.o: in function `_start': +# :(.text+0x12): undefined reference to `thread_data' +# /usr/bin/ld: :(.text+0x2a): undefined reference to `wld_start' +# collect2: error: ld returned 1 exit status NOLTO=1 -AB_FLAGS_SPECS=0 + +# Note: --disable-win16, only enable this for 32-bit x86 builds. +# Note: --without-capi, what is the point of using CAPI (ISDN) with Wine? +AUTOTOOLS_AFTER=( + '--disable-win16' + '--disable-win64' + '--enable-largefile' + '--enable-year2038' + '--with-alsa' + '--without-capi' + '--without-coreaudio' + '--with-cups' + '--with-dbus' + '--with-ffmpeg' + '--with-fontconfig' + '--with-freetype' + '--with-gettext' + '--without-gettextpo' + '--with-gphoto' + '--with-gnutls' + '--with-gssapi' + '--without-gstreamer' + '--with-inotify' + '--with-krb5' + '--with-mingw' + '--with-netapi' + '--with-opencl' + '--with-opengl' + '--with-osmesa' + '--without-oss' + '--with-pcap' + '--with-pcsclite' + '--with-pthread' + '--with-pulse' + '--with-sane' + '--with-sdl' + '--with-udev' + '--with-unwind' + '--with-usb' + '--with-v4l2' + '--with-vulkan' + '--with-wayland' + '--with-xcomposite' + '--with-xcursor' + '--with-xfixes' + '--with-xinerama' + '--with-xinput' + '--with-xinput2' + '--with-xrandr' + '--with-xrender' + '--with-xshape' + '--with-xshm' + '--with-xxf86vm' + '--with-x' + '--with-dbus' + '--with-pulse' + '--with-vulkan' + '--with-mingw' +) +AUTOTOOLS_AFTER__I486=( + "${AUTOTOOLS_AFTER[@]}" + '--without-gtk3' + '--without-pulse' + '--without-vulkan' + '--without-mingw' +) # Wine is currently not available for Loongson and POWER. FAIL_ARCH="!(amd64|arm64|i486)" + +PKGEPOCH=3 diff --git a/app-emulation/wine/autobuild/i486/beyond b/app-emulation/wine/autobuild/i486/beyond deleted file mode 100644 index e1ab81713f0..00000000000 --- a/app-emulation/wine/autobuild/i486/beyond +++ /dev/null @@ -1,43 +0,0 @@ -abinfo "Deleting rpath from Wine executables ..." -chrpath --delete "$PKGDIR"/usr/bin/wmc -chrpath --delete "$PKGDIR"/usr/bin/wrc -chrpath --delete "$PKGDIR"/usr/bin/wine -chrpath --delete "$PKGDIR"/usr/bin/wineserver - -abinfo "Installing Wine icons ..." -mkdir -pv "$PKGDIR"/usr/share/icons/hicolor/scalable/apps - -PROGRAM_ICONFIX='s/height="272"/height="256"/;'\ -'s/width="632"/width="256"\n'\ -' x="368"\n'\ -' y="8"\n'\ -' viewBox="368, 8, 256, 256"/;' - -install -pvm644 "$SRCDIR"/dlls/user32/resources/oic_winlogo.svg \ - "$PKGDIR"/usr/share/icons/hicolor/scalable/apps/wine.svg -sed -e '3s/368/64/' \ - -i "$PKGDIR"/usr/share/icons/hicolor/scalable/apps/wine.svg - -install -pvm644 "$SRCDIR"/programs/winhlp32/winhelp.svg \ - "$PKGDIR"/usr/share/icons/hicolor/scalable/apps/winhelp.svg -sed -e "$PROGRAM_ICONFIX" \ - -i "$PKGDIR"/usr/share/icons/hicolor/scalable/apps/winhelp.svg - -for i in notepad regedit msiexec winecfg \ - winefile winemine wordpad; do - install -pvm644 "$SRCDIR"/programs/${i}/${i}.svg \ - "$PKGDIR"/usr/share/icons/hicolor/scalable/apps/${i}.svg - sed -e "$PROGRAM_ICONFIX" \ - -i "$PKGDIR"/usr/share/icons/hicolor/scalable/apps/${i}.svg -done - -abinfo "Installing man pages ..." -install -pvm0644 "$SRCDIR"/loader/wine.man \ - "$PKGDIR"/usr/share/man/man1/wine.1 -install -pvm0644 "$SRCDIR"/loader/wine.de.UTF-8.man \ - "$PKGDIR"/usr/share/man/de.UTF-8/man1/wine.1 -install -pvm0644 "$SRCDIR"/loader/wine.fr.UTF-8.man \ - "$PKGDIR"/usr/share/man/fr.UTF-8/man1/wine.1 -mkdir -pv "$PKGDIR"/usr/share/man/pl.UTF-8/man1 -install -pvm0644 "$SRCDIR"/loader/wine.pl.UTF-8.man \ - "$PKGDIR"/usr/share/man/pl.UTF-8/man1/wine.1 diff --git a/app-emulation/wine/autobuild/i486/build b/app-emulation/wine/autobuild/i486/build deleted file mode 100644 index 5430120b8cd..00000000000 --- a/app-emulation/wine/autobuild/i486/build +++ /dev/null @@ -1,29 +0,0 @@ -abinfo "Applying Wine Staging patches ..." -ln -sv "$SRCDIR" "$SRCDIR"/../wine-staging/patches/wine -"$SRCDIR"/../wine-staging/patches/patchinstall.sh DESTDIR="$SRCDIR" --all - -abinfo "Dropping -march=i486 to fix build ..." -export CFLAGS="${CFLAGS/-march=i486/}" - -abinfo "Configuring Wine ..." -"$SRCDIR"/configure \ - --prefix=/usr \ - --with-x \ - --with-xattr \ - --with-dbus \ - --without-gstreamer \ - --with-d3dadapter \ - --libdir=/usr/lib/wine \ - --with-va \ - --without-gtk3 \ - --without-pulse \ - --without-vulkan \ - --without-mingw - -abinfo "Building Wine ..." -make - -abinfo "Installing Wine ..." -make prefix="$PKGDIR/usr" \ - libdir="$PKGDIR/usr/lib/wine" \ - dlldir="$PKGDIR/usr/lib/wine/wine" install -j1 diff --git a/app-emulation/wine/autobuild/patches/0001-AUR-hack-to-disable-floating-shadow-for-WeChat.patch b/app-emulation/wine/autobuild/patches/0001-AUR-hack-to-disable-floating-shadow-for-WeChat.patch index 18ac195a9b3..7f8d1ea0483 100644 --- a/app-emulation/wine/autobuild/patches/0001-AUR-hack-to-disable-floating-shadow-for-WeChat.patch +++ b/app-emulation/wine/autobuild/patches/0001-AUR-hack-to-disable-floating-shadow-for-WeChat.patch @@ -1,4 +1,4 @@ -From c20a5119b8e908b0fc9de39d8cf982765f5af21f Mon Sep 17 00:00:00 2001 +From 06ac46c5d2cb658fef5b30e3db476e97e60924a6 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 20 Feb 2024 12:32:22 +0800 Subject: [PATCH 1/2] AUR: hack to disable floating shadow for WeChat @@ -8,10 +8,10 @@ Subject: [PATCH 1/2] AUR: hack to disable floating shadow for WeChat 1 file changed, 11 insertions(+) diff --git a/dlls/user32/win.c b/dlls/user32/win.c -index b8c04047333..0aaf027b0db 100644 +index e6eb05aeebb..f4e4c42a400 100644 --- a/dlls/user32/win.c +++ b/dlls/user32/win.c -@@ -467,6 +467,17 @@ HWND WINAPI DECLSPEC_HOTPATCH CreateWindowExW( DWORD exStyle, LPCWSTR className, +@@ -474,6 +474,17 @@ HWND WINAPI DECLSPEC_HOTPATCH CreateWindowExW( DWORD exStyle, LPCWSTR className, cs.lpszClass = className; cs.dwExStyle = exStyle; @@ -30,5 +30,5 @@ index b8c04047333..0aaf027b0db 100644 } -- -2.43.0 +2.48.1 diff --git a/app-emulation/wine/autobuild/patches/0002-CJK-font-replacement.patch b/app-emulation/wine/autobuild/patches/0002-CJK-font-replacement.patch index c4f1463bc8b..bc16bfc1e84 100644 --- a/app-emulation/wine/autobuild/patches/0002-CJK-font-replacement.patch +++ b/app-emulation/wine/autobuild/patches/0002-CJK-font-replacement.patch @@ -1,4 +1,4 @@ -From 5477a958d16d7d02b936726feb343c78ef7247e0 Mon Sep 17 00:00:00 2001 +From 1673337714dbd782884b9efff9e73e794a8e5752 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 20 Feb 2024 16:49:43 +0800 Subject: [PATCH 2/2] CJK font replacement @@ -8,10 +8,10 @@ Subject: [PATCH 2/2] CJK font replacement 1 file changed, 12 insertions(+) diff --git a/loader/wine.inf.in b/loader/wine.inf.in -index 06551152f3a..85ee5a2beae 100644 +index cedcf16fba7..cbd64211897 100644 --- a/loader/wine.inf.in +++ b/loader/wine.inf.in -@@ -511,6 +511,18 @@ HKLM,%FontSubStr%,"Times New Roman CE,238",,"Times New Roman,238" +@@ -519,6 +519,18 @@ HKLM,%FontSubStr%,"Times New Roman CE,238",,"Times New Roman,238" HKLM,%FontSubStr%,"Times New Roman CYR,204",,"Times New Roman,204" HKLM,%FontSubStr%,"Times New Roman Greek,161",,"Times New Roman,161" HKLM,%FontSubStr%,"Times New Roman TUR,162",,"Times New Roman,162" @@ -31,5 +31,5 @@ index 06551152f3a..85ee5a2beae 100644 [MCI] -- -2.43.0 +2.48.1 diff --git a/app-emulation/wine/autobuild/pax b/app-emulation/wine/autobuild/pax deleted file mode 100644 index 477b683a4c1..00000000000 --- a/app-emulation/wine/autobuild/pax +++ /dev/null @@ -1 +0,0 @@ -abpaxctl m /usr/bin/wine{,64}{,-preloader} diff --git a/app-emulation/wine/spec b/app-emulation/wine/spec index 61b88ca04eb..4ec0d1cc192 100644 --- a/app-emulation/wine/spec +++ b/app-emulation/wine/spec @@ -1,13 +1,13 @@ __GECKO_VER=2.47.4 __MONO_VER=9.4.0 -UPSTREAM_VER=9.22 +UPSTREAM_VER=10.1 VER=${UPSTREAM_VER}+gecko${__GECKO_VER}+mono${__MONO_VER} -SRCS="tbl::https://dl.winehq.org/wine/source/${UPSTREAM_VER:0:1}.x/wine-${UPSTREAM_VER}.tar.xz \ +SRCS="tbl::https://dl.winehq.org/wine/source/${UPSTREAM_VER%%.*}.x/wine-${UPSTREAM_VER}.tar.xz \ git::rename=wine-staging;commit=tags/v${UPSTREAM_VER}::https://github.com/wine-staging/wine-staging \ tbl::rename=wine-gecko-${__GECKO_VER}-x86.tar.xz::https://dl.winehq.org/wine/wine-gecko/${__GECKO_VER}/wine-gecko-${__GECKO_VER}-x86.tar.xz \ tbl::rename=wine-gecko-${__GECKO_VER}-x86_64.tar.xz::https://dl.winehq.org/wine/wine-gecko/${__GECKO_VER}/wine-gecko-${__GECKO_VER}-x86_64.tar.xz \ tbl::rename=wine-mono-${__MONO_VER}-x86.tar.xz::https://dl.winehq.org/wine/wine-mono/${__MONO_VER}/wine-mono-${__MONO_VER}-x86.tar.xz" -CHKSUMS="sha256::e150d29742aa54f768ef3e976ed861aaa4f9f48542e409bea902d0f49b359683 \ +CHKSUMS="sha256::63471e37b1a515795ff3368d26a039261660e1377cb427d1b61b3a7b76091663 \ SKIP \ sha256::2cfc8d5c948602e21eff8a78613e1826f2d033df9672cace87fed56e8310afb6 \ sha256::fd88fc7e537d058d7a8abf0c1ebc90c574892a466de86706a26d254710a82814 \ From 6db4e0b79d5f5ae0b1a47f63d27d6735840a8384 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 16 Feb 2025 19:40:03 +0800 Subject: [PATCH 488/722] groups/optenv32: update build sequence --- groups/optenv32 | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/groups/optenv32 b/groups/optenv32 index 665f935061b..5b0a29493d4 100644 --- a/groups/optenv32 +++ b/groups/optenv32 @@ -1,5 +1,4 @@ runtime-optenv32/linux+api+32 -runtime-optenv32/libxcrypt+32 runtime-optenv32/mpc+32 runtime-optenv32/mpfr+32 runtime-optenv32/gmp+32 @@ -8,6 +7,7 @@ runtime-optenv32/binutils+32 runtime-optenv32/gcc+32 runtime-optenv32/devel-base+32 runtime-optenv32/glibc+32 +runtime-optenv32/libxcrypt+32 runtime-optenv32/lm-sensors+32 runtime-optenv32/libidn+32 runtime-optenv32/expat+32 @@ -32,18 +32,18 @@ runtime-optenv32/json-c+32 runtime-optenv32/elfutils+32 runtime-optenv32/libffi+32 runtime-optenv32/pcre2+32 -runtime-optenv32/glib+32 runtime-optenv32/dbus+32 +runtime-optenv32/glib+32 runtime-optenv32/icu+32 -runtime-optenv32/x11-lib+32 -runtime-optenv32/libpng-1.6+32 -runtime-optenv32/harfbuzz+32 -runtime-optenv32/freetype+32 -runtime-optenv32/fontconfig+32 runtime-optenv32/lzo+32 runtime-optenv32/pixman+32 -runtime-optenv32/cairo+32 runtime-optenv32/libdrm+32 +runtime-optenv32/cairo+32 +runtime-optenv32/harfbuzz+32 +runtime-optenv32/freetype+32 +runtime-optenv32/fontconfig+32 +runtime-optenv32/x11-lib+32 +runtime-optenv32/libpng-1.6+32 runtime-optenv32/libunwind+32 runtime-optenv32/libjpeg-turbo+32 runtime-optenv32/libtiff+32 @@ -66,8 +66,11 @@ runtime-optenv32/libglvnd+32 runtime-optenv32/spirv-llvm-translator+32 runtime-optenv32/wayland+32 runtime-optenv32/rustc+32 -runtime-optenv32/mesa+32 +runtime-optenv32/opencl-registry-api+32 +runtime-optenv32/libcl+32 +runtime-optenv32/libclc+32 runtime-optenv32/libva+32 +runtime-optenv32/mesa+32 runtime-optenv32/libepoxy+32 runtime-optenv32/libxkbcommon+32 runtime-optenv32/fribidi+32 @@ -198,5 +201,7 @@ runtime-optenv32/vulkan-tools+32 runtime-optenv32/vulkan+32 runtime-optenv32/wavpack+32 runtime-optenv32/wildmidi+32 -runtime-optenv32/faad2+32 runtime-optenv32/32subsystem +runtime-optenv32/faad2+32 +runtime-optenv32/tslib+32 +runtime-optenv32/sdl2+32 \ No newline at end of file From bd22ae9993344c1e68ebfce033d6388d53e62a91 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 16 Feb 2025 19:49:15 +0800 Subject: [PATCH 489/722] curl+32: update to 8.12.1 --- runtime-optenv32/curl+32/spec | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/runtime-optenv32/curl+32/spec b/runtime-optenv32/curl+32/spec index d550e75361e..e92eaf12578 100644 --- a/runtime-optenv32/curl+32/spec +++ b/runtime-optenv32/curl+32/spec @@ -1,5 +1,4 @@ -VER=8.11.0 -REL=1 +VER=8.12.1 SRCS="tbl::https://curl.se/download/curl-$VER.tar.xz" -CHKSUMS="sha256::db59cf0d671ca6e7f5c2c5ec177084a33a79e04c97e71cf183a5cdea235054eb" +CHKSUMS="sha256::0341f1ed97a26c811abaebd37d62b833956792b7607ea3f15d001613c76de202" CHKUPDATE="anitya::id=381" From 4f1e7ca2270f91ccae5b6bbba1a79d63431cbc65 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 16 Feb 2025 19:49:15 +0800 Subject: [PATCH 490/722] glib+32: update to 2.83.3 --- runtime-optenv32/glib+32/spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/glib+32/spec b/runtime-optenv32/glib+32/spec index 2d82bad40d3..f54e22231ef 100644 --- a/runtime-optenv32/glib+32/spec +++ b/runtime-optenv32/glib+32/spec @@ -1,4 +1,4 @@ -VER=2.80.0 +VER=2.83.3 SRCS="https://download.gnome.org/sources/glib/${VER:0:4}/glib-$VER.tar.xz" -CHKSUMS="sha256::8228a92f92a412160b139ae68b6345bd28f24434a7b5af150ebe21ff587a561d" +CHKSUMS="sha256::d0c65318bb2e3fa594277cf98a71cffaf5f666c078db39dcec121757b2ba328d" CHKUPDATE="anitya::id=10024" From ec225626664373e5faa4e5193d66ebb418ee64d2 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 16 Feb 2025 19:49:15 +0800 Subject: [PATCH 491/722] json-c+32: update to 0.18 --- runtime-optenv32/json-c+32/spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/json-c+32/spec b/runtime-optenv32/json-c+32/spec index 84cb79c33a8..329aa27b7e5 100644 --- a/runtime-optenv32/json-c+32/spec +++ b/runtime-optenv32/json-c+32/spec @@ -1,4 +1,4 @@ -VER=0.16 +VER=0.18 SRCS="tbl::https://github.com/json-c/json-c/archive/json-c-${VER/+/-}.tar.gz" -CHKSUMS="sha256::c169436bd63a30fce4f9560befccb6bad3d375c8c7e9905ceb4e1f28f2cb24f7" +CHKSUMS="sha256::8069b5e6100bb8b9908dcfdd368f0e99bdeea2cb139cba558e536715c8c8ac8e" CHKUPDATE="anitya::id=1477" From 44ad108453cd4b5c6a326781c0b6345b5bc7ea90 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 16 Feb 2025 19:49:15 +0800 Subject: [PATCH 492/722] libcap+32: update to 2.73 --- runtime-optenv32/libcap+32/spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/libcap+32/spec b/runtime-optenv32/libcap+32/spec index 5db9b294457..16e004793f8 100644 --- a/runtime-optenv32/libcap+32/spec +++ b/runtime-optenv32/libcap+32/spec @@ -1,4 +1,4 @@ -VER=2.69 +VER=2.73 SRCS="tbl::https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/libcap-$VER.tar.xz" -CHKSUMS="sha256::f311f8f3dad84699d0566d1d6f7ec943a9298b28f714cae3c931dfd57492d7eb" +CHKSUMS="sha256::6405f6089cf4cdd8c271540cd990654d78dd0b1989b2d9bda20f933a75a795a5" CHKUPDATE="anitya::id=1569" From 04a45b89a336445d323f5f7e494ec208b5dc4807 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 16 Feb 2025 19:49:15 +0800 Subject: [PATCH 493/722] libdrm+32: update to 2.4.124 --- runtime-optenv32/libdrm+32/spec | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/runtime-optenv32/libdrm+32/spec b/runtime-optenv32/libdrm+32/spec index 51066698862..a9009a5445d 100644 --- a/runtime-optenv32/libdrm+32/spec +++ b/runtime-optenv32/libdrm+32/spec @@ -1,5 +1,4 @@ -VER=2.4.123 -REL=1 +VER=2.4.124 SRCS="tbl::https://dri.freedesktop.org/libdrm/libdrm-$VER.tar.xz" -CHKSUMS="sha256::a2b98567a149a74b0f50e91e825f9c0315d86e7be9b74394dae8b298caadb79e" +CHKSUMS="sha256::ac36293f61ca4aafaf4b16a2a7afff312aa4f5c37c9fbd797de9e3c0863ca379" CHKUPDATE="anitya::id=1596" From 63a911b2dcda4c553de472125ab15de8b28b6e15 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 16 Feb 2025 19:49:15 +0800 Subject: [PATCH 494/722] libffi+32: update to 3.4.7 --- runtime-optenv32/libffi+32/spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/libffi+32/spec b/runtime-optenv32/libffi+32/spec index 61a122f2197..ba7fb6747fb 100644 --- a/runtime-optenv32/libffi+32/spec +++ b/runtime-optenv32/libffi+32/spec @@ -1,4 +1,4 @@ -VER=3.4.6 +VER=3.4.7 SRCS="tbl::https://github.com/libffi/libffi/releases/download/v${VER}/libffi-${VER}.tar.gz" -CHKSUMS="sha256::b0dea9df23c863a7a50e825440f3ebffabd65df1497108e5d437747843895a4e" +CHKSUMS="sha256::138607dee268bdecf374adf9144c00e839e38541f75f24a1fcf18b78fda48b2d" CHKUPDATE="anitya::id=1611" From d103d34a2c8209cfeeaaebfe9450fac8036d8b7e Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 16 Feb 2025 19:49:15 +0800 Subject: [PATCH 495/722] libtasn1+32: update to 4.20.0 --- runtime-optenv32/libtasn1+32/spec | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/runtime-optenv32/libtasn1+32/spec b/runtime-optenv32/libtasn1+32/spec index 82ef898ab46..aa08d9682e8 100644 --- a/runtime-optenv32/libtasn1+32/spec +++ b/runtime-optenv32/libtasn1+32/spec @@ -1,5 +1,4 @@ -VER=4.15.0 -REL=2 +VER=4.20.0 SRCS="tbl::https://ftp.gnu.org/gnu/libtasn1/libtasn1-$VER.tar.gz" -CHKSUMS="sha256::dd77509fe8f5304deafbca654dc7f0ea57f5841f41ba530cff9a5bf71382739e" +CHKSUMS="sha256::92e0e3bd4c02d4aeee76036b2ddd83f0c732ba4cda5cb71d583272b23587a76c" CHKUPDATE="anitya::id=1734" From dabee22a2ecc0d75ae255ac7f1a3ec7c0d05346a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 16 Feb 2025 19:49:15 +0800 Subject: [PATCH 496/722] libxcrypt+32: update to 4.4.37 --- runtime-optenv32/libxcrypt+32/spec | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/runtime-optenv32/libxcrypt+32/spec b/runtime-optenv32/libxcrypt+32/spec index 0ec18d601f6..d4b65638e65 100644 --- a/runtime-optenv32/libxcrypt+32/spec +++ b/runtime-optenv32/libxcrypt+32/spec @@ -1,5 +1,4 @@ -VER=4.4.36 -REL=1 +VER=4.4.37 SRCS="tbl::https://github.com/besser82/libxcrypt/releases/download/v$VER/libxcrypt-$VER.tar.xz" -CHKSUMS="sha256::e5e1f4caee0a01de2aee26e3138807d6d3ca2b8e67287966d1fefd65e1fd8943" +CHKSUMS="sha256::902aa2976f959b5ebe55679b1722b8479f8f13cd4ce2ef432b0a84ae298fffd0" CHKUPDATE="anitya::id=16436" From ea069e87d5a3fa71f87c136ba6a2763e4ece6512 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 16 Feb 2025 19:49:15 +0800 Subject: [PATCH 497/722] mangohud+32: update to 0.8.0 --- runtime-optenv32/mangohud+32/spec | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/runtime-optenv32/mangohud+32/spec b/runtime-optenv32/mangohud+32/spec index 9a374606536..0e1db9312af 100644 --- a/runtime-optenv32/mangohud+32/spec +++ b/runtime-optenv32/mangohud+32/spec @@ -1,5 +1,4 @@ -VER=0.7.2 -REL=1 +VER=0.8.0 SRCS="tbl::https://github.com/flightlessmango/MangoHud/releases/download/v${VER/\+/-}/MangoHud-v${VER/\+/-}-Source.tar.xz" -CHKSUMS="sha256::114ad3ea87b1db7358816c7b8e7843aaee356ff048b9e15d6fff02d89414841b" +CHKSUMS="sha256::c860c733b1328f0fb479fc880281110799ebc13a4183033affc591c6d10719d9" CHKUPDATE="anitya::id=138139" From 5eb13f97cef3aca6fcb183f88db107562a1232cc Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 16 Feb 2025 19:49:15 +0800 Subject: [PATCH 498/722] pango+32: update to 1.56.1 --- runtime-optenv32/pango+32/spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/pango+32/spec b/runtime-optenv32/pango+32/spec index 393dd1510b8..63381c8b4b8 100644 --- a/runtime-optenv32/pango+32/spec +++ b/runtime-optenv32/pango+32/spec @@ -1,4 +1,4 @@ -VER=1.52.2 +VER=1.56.1 SRCS="tbl::https://download.gnome.org/sources/pango/${VER%.*}/pango-$VER.tar.xz" -CHKSUMS="sha256::d0076afe01082814b853deec99f9349ece5f2ce83908b8e58ff736b41f78a96b" +CHKSUMS="sha256::426be66460c98b8378573e7f6b0b2ab450f6bb6d2ec7cecc33ae81178f246480" CHKUPDATE="anitya::id=11783" From c74f28bdc562c76fbcd7909175db103f6ba7765c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 16 Feb 2025 19:49:15 +0800 Subject: [PATCH 499/722] rustc+32: update to 1.84.1 --- runtime-optenv32/rustc+32/spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/rustc+32/spec b/runtime-optenv32/rustc+32/spec index 79a96f81333..7467831e2d4 100644 --- a/runtime-optenv32/rustc+32/spec +++ b/runtime-optenv32/rustc+32/spec @@ -1,8 +1,8 @@ -VER=1.84.0 +VER=1.84.1 # Note: Uncomment this if we have the last version built and ready. SRCS="tbl::https://static.rust-lang.org/dist/rustc-${VER}-src.tar.xz" -CHKSUMS="sha256::bc2c1639f26814c7b17a323992f1e08c3b01fe88cdff9a27d951987d886e00b3" +CHKSUMS="sha256::e23ec747a06ffd3e94155046f40b6664ac152c9ee3c2adfd90353a7ccff24226" # FIXME: Using local bootstrap tarball as we missed a release - rustc needs # to bootstrap from an adjacent release. From b6c6f565129733b76e2e76328fe1b690422db6c3 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 16 Feb 2025 19:49:16 +0800 Subject: [PATCH 500/722] util-linux+32: update to 2.40.4 --- runtime-optenv32/util-linux+32/spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/util-linux+32/spec b/runtime-optenv32/util-linux+32/spec index b75ca8ff75e..476f966d5d5 100644 --- a/runtime-optenv32/util-linux+32/spec +++ b/runtime-optenv32/util-linux+32/spec @@ -1,4 +1,4 @@ -VER=2.40.2 +VER=2.40.4 SRCS="tbl::https://www.kernel.org/pub/linux/utils/util-linux/v${VER:0:4}/util-linux-$VER.tar.xz" -CHKSUMS="sha256::d78b37a66f5922d70edf3bdfb01a6b33d34ed3c3cafd6628203b2a2b67c8e8b3" +CHKSUMS="sha256::5c1daf733b04e9859afdc3bd87cc481180ee0f88b5c0946b16fdec931975fb79" CHKUPDATE="anitya::id=8179" From fa44bfde4eed8ca190b788e097c7eeb6725577aa Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 16 Feb 2025 19:49:16 +0800 Subject: [PATCH 501/722] wavpack+32: update to 5.8.1 --- runtime-optenv32/wavpack+32/spec | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/runtime-optenv32/wavpack+32/spec b/runtime-optenv32/wavpack+32/spec index 4c6c98f6db0..9c31421a255 100644 --- a/runtime-optenv32/wavpack+32/spec +++ b/runtime-optenv32/wavpack+32/spec @@ -1,5 +1,4 @@ -VER=5.2.0 -REL=2 +VER=5.8.1 SRCS="tbl::http://www.wavpack.com/wavpack-$VER.tar.xz" -CHKSUMS="sha256::77e5b1cfa26e387e4275b362f0c3fb9a27106447d9bce00f9f794f30badb77e3" +CHKSUMS="sha256::7322775498602c8850afcfc1ae38f99df4cbcd51386e873d6b0f8047e55c0c26" CHKUPDATE="anitya::id=5121" From dfff3d2a5bca88346c4f0e921bcb78851514d9fd Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 16 Feb 2025 19:50:09 +0800 Subject: [PATCH 502/722] tk+32: drop, orphaned --- groups/optenv32 | 3 +-- runtime-optenv32/32subsystem/autobuild/defines | 2 +- runtime-optenv32/tk+32/autobuild/beyond | 7 ------- runtime-optenv32/tk+32/autobuild/defines | 8 -------- runtime-optenv32/tk+32/spec | 6 ------ 5 files changed, 2 insertions(+), 24 deletions(-) delete mode 100644 runtime-optenv32/tk+32/autobuild/beyond delete mode 100644 runtime-optenv32/tk+32/autobuild/defines delete mode 100644 runtime-optenv32/tk+32/spec diff --git a/groups/optenv32 b/groups/optenv32 index 5b0a29493d4..a7639746455 100644 --- a/groups/optenv32 +++ b/groups/optenv32 @@ -146,7 +146,6 @@ runtime-optenv32/speex+32 runtime-optenv32/soxr+32 runtime-optenv32/ffmpeg+32 runtime-optenv32/libnl+32 -runtime-optenv32/tk+32 runtime-optenv32/libexif+32 runtime-optenv32/libdvdcss+32 runtime-optenv32/libdvdread+32 @@ -204,4 +203,4 @@ runtime-optenv32/wildmidi+32 runtime-optenv32/32subsystem runtime-optenv32/faad2+32 runtime-optenv32/tslib+32 -runtime-optenv32/sdl2+32 \ No newline at end of file +runtime-optenv32/sdl2+32 diff --git a/runtime-optenv32/32subsystem/autobuild/defines b/runtime-optenv32/32subsystem/autobuild/defines index 0352ca5f81c..03c1309d19e 100644 --- a/runtime-optenv32/32subsystem/autobuild/defines +++ b/runtime-optenv32/32subsystem/autobuild/defines @@ -29,7 +29,7 @@ pixman+32 popt+32 portaudio+32 proxychains-ng+32 pulseaudio+32 readline+32 recode+32 rtmpdump+32 rustc+32 s2tc+32 sbc+32 schroedinger+32 sdl+32 sdl-ttf+32 shared-mime-info+32 smpeg+32 soundtouch+32 soxr+32 speex+32 spirv-llvm-translator+32 spirv-tools+32 sqlite+32 srtp+32 taglib+32 tcl+32 -tk+32 twolame+32 util-linux+32 v4l-utils+32 vkd3d+32 volk-meta-loader+32 +twolame+32 util-linux+32 v4l-utils+32 vkd3d+32 volk-meta-loader+32 vulkan+32 vulkan-headers+32 vulkan-loader+32 vulkan-tools+32 wavpack+32 wayland+32 wildmidi+32 x11-lib+32 x11-proto+32 x264+32 x265+32 xvidcore+32 xz+32 zlib+32 zstd+32 diff --git a/runtime-optenv32/tk+32/autobuild/beyond b/runtime-optenv32/tk+32/autobuild/beyond deleted file mode 100644 index aca8feceb71..00000000000 --- a/runtime-optenv32/tk+32/autobuild/beyond +++ /dev/null @@ -1,7 +0,0 @@ -abinfo "Installing private headers ..." -make install-private-headers \ - -C "$BLDDIR" \ - DESTDIR="$PKGDIR" - -abinfo "Dropping unneeded demos ..." -rm -rf "$PKGDIR"/opt/32/lib/tk${PKGVER:0:3}/demos/ diff --git a/runtime-optenv32/tk+32/autobuild/defines b/runtime-optenv32/tk+32/autobuild/defines deleted file mode 100644 index eb890f22037..00000000000 --- a/runtime-optenv32/tk+32/autobuild/defines +++ /dev/null @@ -1,8 +0,0 @@ -PKGNAME=tk+32 -PKGSEC=devel -PKGDEP="glibc+32 gcc+32 tcl+32 x11-lib+32" -BUILDDEP="devel-base+32" -PKGDES="Tool Command Lanuage Toolkit (32-bit x86 runtime)" - -NOSTATIC=0 -ABHOST=optenv32 diff --git a/runtime-optenv32/tk+32/spec b/runtime-optenv32/tk+32/spec deleted file mode 100644 index 14cc0ec4f62..00000000000 --- a/runtime-optenv32/tk+32/spec +++ /dev/null @@ -1,6 +0,0 @@ -VER=8.6.10 -REL=2 -SRCS="tbl::https://downloads.sourceforge.net/tcl/tk$VER-src.tar.gz" -CHKSUMS="sha256::63df418a859d0a463347f95ded5cd88a3dd3aaa1ceecaeee362194bc30f3e386" -CHKUPDATE="anitya::id=11426" -SUBDIR="tk${VER}/unix" From 2816b9cdf0874ad258f9012367e6a9c93784eb93 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Sun, 16 Feb 2025 21:38:59 +0800 Subject: [PATCH 503/722] harfbuzz+32: add ragel build dep --- runtime-optenv32/harfbuzz+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/harfbuzz+32/autobuild/defines b/runtime-optenv32/harfbuzz+32/autobuild/defines index 49438fe769a..0672494b999 100644 --- a/runtime-optenv32/harfbuzz+32/autobuild/defines +++ b/runtime-optenv32/harfbuzz+32/autobuild/defines @@ -1,7 +1,7 @@ PKGNAME=harfbuzz+32 PKGSEC=libs PKGDEP="cairo+32 freetype+32 glibc+32 glib+32 icu+32" -BUILDDEP="devel-base+32" +BUILDDEP="devel-base+32 ragel" PKGDES="OpenType text shaping engine (32-bit x86 runtime)" ABHOST=optenv32 From d568548716db85f0d29cee1d89e4c66078e3e47d Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Mon, 17 Feb 2025 11:22:27 +0800 Subject: [PATCH 504/722] groups/optenv32: build glib+32 before dbus+32 Works around undefined reference errors to new libmount symbols. --- groups/optenv32 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/groups/optenv32 b/groups/optenv32 index a7639746455..8bae6550336 100644 --- a/groups/optenv32 +++ b/groups/optenv32 @@ -32,8 +32,8 @@ runtime-optenv32/json-c+32 runtime-optenv32/elfutils+32 runtime-optenv32/libffi+32 runtime-optenv32/pcre2+32 -runtime-optenv32/dbus+32 runtime-optenv32/glib+32 +runtime-optenv32/dbus+32 runtime-optenv32/icu+32 runtime-optenv32/lzo+32 runtime-optenv32/pixman+32 From 15a97a5ab53f4760a3611a626ce9e019a0eb47dd Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Mon, 17 Feb 2025 14:21:32 +0800 Subject: [PATCH 505/722] groups/optenv32: move libpng-1.6+32 up --- groups/optenv32 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/groups/optenv32 b/groups/optenv32 index 8bae6550336..e40a493e9d2 100644 --- a/groups/optenv32 +++ b/groups/optenv32 @@ -14,6 +14,7 @@ runtime-optenv32/expat+32 runtime-optenv32/brotli+32 runtime-optenv32/bzip2+32 runtime-optenv32/libpng+32 +runtime-optenv32/libpng-1.6+32 runtime-optenv32/x11-proto+32 runtime-optenv32/libxau+32 runtime-optenv32/libxdmcp+32 @@ -43,7 +44,6 @@ runtime-optenv32/harfbuzz+32 runtime-optenv32/freetype+32 runtime-optenv32/fontconfig+32 runtime-optenv32/x11-lib+32 -runtime-optenv32/libpng-1.6+32 runtime-optenv32/libunwind+32 runtime-optenv32/libjpeg-turbo+32 runtime-optenv32/libtiff+32 From 4c46e4e97bca061d633b94aef5be724d902bb8cc Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Mon, 17 Feb 2025 17:29:01 +0800 Subject: [PATCH 506/722] librsvg+32: add gdk-pixbuf+32 dep --- runtime-optenv32/librsvg+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/librsvg+32/autobuild/defines b/runtime-optenv32/librsvg+32/autobuild/defines index 8960c12dc97..ddab7ce29bf 100644 --- a/runtime-optenv32/librsvg+32/autobuild/defines +++ b/runtime-optenv32/librsvg+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=librsvg+32 PKGSEC=libs -PKGDEP="cairo+32 freetype+32 glib+32 libxml2+32 pango+32" +PKGDEP="cairo+32 freetype+32 gdk-pixbuf+32 glib+32 libxml2+32 pango+32" BUILDDEP="devel-base+32 rustc+32 cargo-c" PKGDES="SVG rendering and manipulation library (32-bit x86 runtime)" From a982e75d46afc894872b5ba26f39a1e694f47f81 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 14:51:02 +0800 Subject: [PATCH 507/722] fontconfig+32: add libpng+32 dep --- runtime-optenv32/fontconfig+32/autobuild/defines | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/runtime-optenv32/fontconfig+32/autobuild/defines b/runtime-optenv32/fontconfig+32/autobuild/defines index 182a057bdf8..b9bb5b2c642 100644 --- a/runtime-optenv32/fontconfig+32/autobuild/defines +++ b/runtime-optenv32/fontconfig+32/autobuild/defines @@ -1,6 +1,7 @@ PKGNAME=fontconfig+32 PKGSEC=libs -PKGDEP="expat+32 freetype+32 glibc+32 json-c+32 libxml2+32 util-linux+32" +PKGDEP="expat+32 freetype+32 glibc+32 json-c+32 libpng+32 libxml2+32 \ + util-linux+32" BUILDDEP="devel-base+32 gperf" PKGDES="A library for configuring and customizing font access (32-bit x86 runtime)" From c320dbbf127bb0071bea65c85fe8e0fc5b214ced Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 15:42:33 +0800 Subject: [PATCH 508/722] autobuild4: flight - aosc-aaa+32 --- app-devel/autobuild4/spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app-devel/autobuild4/spec b/app-devel/autobuild4/spec index 090705374e2..c7e94b8829e 100644 --- a/app-devel/autobuild4/spec +++ b/app-devel/autobuild4/spec @@ -1,4 +1,4 @@ -VER=4.7.9 -SRCS="git::commit=tags/v$VER::https://github.com/AOSC-Dev/autobuild4" +VER=4.7.9+git20250218 +SRCS="git::commit=40f52da3692b6dd023bd86906dfa2c700a24ed5c::https://github.com/AOSC-Dev/autobuild4" CHKSUMS="SKIP" CHKUPDATE="anitya::id=372345" From 9185c9fa7ece4141323daacf6fbe22957ad214e3 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 15:46:22 +0800 Subject: [PATCH 509/722] 32subsystem: do not handle runtime data symlinks Handle them in aosc-aaa+32 instead, which will become a common dependency for all +32 packages. --- runtime-optenv32/32subsystem/autobuild/build | 4 ---- .../32subsystem/autobuild/defines | 6 ++++-- .../32subsystem/autobuild/postinst | 20 ------------------- runtime-optenv32/32subsystem/autobuild/postrm | 2 -- 4 files changed, 4 insertions(+), 28 deletions(-) delete mode 100644 runtime-optenv32/32subsystem/autobuild/build delete mode 100644 runtime-optenv32/32subsystem/autobuild/postinst delete mode 100644 runtime-optenv32/32subsystem/autobuild/postrm diff --git a/runtime-optenv32/32subsystem/autobuild/build b/runtime-optenv32/32subsystem/autobuild/build deleted file mode 100644 index 94dcdac9712..00000000000 --- a/runtime-optenv32/32subsystem/autobuild/build +++ /dev/null @@ -1,4 +0,0 @@ -abinfo "Building symlinks to shared data between main and 32-bit environments ..." -mkdir -pv "$PKGDIR"/{opt/32/lib,usr/include/gnu} -ln -sv ../../../usr/lib/locale \ - "$PKGDIR"/opt/32/lib diff --git a/runtime-optenv32/32subsystem/autobuild/defines b/runtime-optenv32/32subsystem/autobuild/defines index 03c1309d19e..356a173fbd0 100644 --- a/runtime-optenv32/32subsystem/autobuild/defines +++ b/runtime-optenv32/32subsystem/autobuild/defines @@ -1,5 +1,5 @@ PKGNAME=32subsystem -PKGSEC=libs +PKGSEC=libs # Note: Everything, basically. PKGDEP=""" a52dec+32 aalib+32 acl+32 alsa-lib+32 alsa-plugins+32 at-spi2-core+32 attr+32 @@ -32,7 +32,7 @@ spirv-llvm-translator+32 spirv-tools+32 sqlite+32 srtp+32 taglib+32 tcl+32 twolame+32 util-linux+32 v4l-utils+32 vkd3d+32 volk-meta-loader+32 vulkan+32 vulkan-headers+32 vulkan-loader+32 vulkan-tools+32 wavpack+32 wayland+32 wildmidi+32 x11-lib+32 x11-proto+32 x264+32 x265+32 xvidcore+32 -xz+32 zlib+32 zstd+32 +xz+32 zlib+32 zstd+32 aosc-aaa+32 """ PKGDES="32-bit runtime and development environment" @@ -43,3 +43,5 @@ ABHOST=optenv32 ABSPLITDBG=0 PKGEPOCH=1 + +ABTYPE=dummy diff --git a/runtime-optenv32/32subsystem/autobuild/postinst b/runtime-optenv32/32subsystem/autobuild/postinst deleted file mode 100644 index cae9069bc9a..00000000000 --- a/runtime-optenv32/32subsystem/autobuild/postinst +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/bash -# Paranoia -for j in /usr/share /etc /var /usr/lib/locale; do - e=/opt/32/${j#/usr/} - if [ -d "$e" ]; then - rm -rf "$e" - if [ "$e" = "/opt/32/lib/locale" ]; then - ln -st /opt/32/lib "$j" - else - ln -st /opt/32 "$j" - fi - elif ! [ -L "$e" ]; then - if [ "$e" = "/opt/32/lib/locale" ]; then - ln -st /opt/32/lib "$j" - else - ln -st /opt/32 "$j" - fi - fi -done - diff --git a/runtime-optenv32/32subsystem/autobuild/postrm b/runtime-optenv32/32subsystem/autobuild/postrm deleted file mode 100644 index ce5d710e018..00000000000 --- a/runtime-optenv32/32subsystem/autobuild/postrm +++ /dev/null @@ -1,2 +0,0 @@ -rm -f /opt/32/{etc,lib/locale,share,var} 2>&1 >/dev/null || true - From 5a7eb56328a13b23edaef46fe2d93803186f0afe Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:01:12 +0800 Subject: [PATCH 510/722] aosc-aaa+32: new, 12.0.4 This will serve as the new base skeleton for optenv32. --- runtime-optenv32/aosc-aaa+32/autobuild/build | 16 ++++++++++++++++ runtime-optenv32/aosc-aaa+32/autobuild/defines | 13 +++++++++++++ runtime-optenv32/aosc-aaa+32/autobuild/preinst | 5 +++++ runtime-optenv32/aosc-aaa+32/spec | 5 +++++ 4 files changed, 39 insertions(+) create mode 100644 runtime-optenv32/aosc-aaa+32/autobuild/build create mode 100644 runtime-optenv32/aosc-aaa+32/autobuild/defines create mode 100644 runtime-optenv32/aosc-aaa+32/autobuild/preinst create mode 100644 runtime-optenv32/aosc-aaa+32/spec diff --git a/runtime-optenv32/aosc-aaa+32/autobuild/build b/runtime-optenv32/aosc-aaa+32/autobuild/build new file mode 100644 index 00000000000..ae59f7cb2f9 --- /dev/null +++ b/runtime-optenv32/aosc-aaa+32/autobuild/build @@ -0,0 +1,16 @@ +abinfo "Creating runtime skeleton ..." +mkdir -pv "$PKGDIR"/opt/32/{bin,include,lib,libexec} + +abinfo "Creating symlinks for internal paths ..." +ln -sv bin \ + "$PKGDIR"/opt/32/sbin + +abinfo "Creating symlinks for shared runtime data ..." +ln -sv ../../etc \ + "$PKGDIR"/opt/32/etc +ln -sv ../../usr/share \ + "$PKGDIR"/opt/32/share +ln -sv ../../var \ + "$PKGDIR"/opt/32/var +ln -sv ../../../usr/lib/locale \ + "$PKGDIR"/opt/32/lib diff --git a/runtime-optenv32/aosc-aaa+32/autobuild/defines b/runtime-optenv32/aosc-aaa+32/autobuild/defines new file mode 100644 index 00000000000..18bad8d3987 --- /dev/null +++ b/runtime-optenv32/aosc-aaa+32/autobuild/defines @@ -0,0 +1,13 @@ +PKGNAME=aosc-aaa+32 +PKGSEC=misc +PKGDEP="" +PKGDES="Bed-rock level system definitions (32-bit x86 runtime)" + +ABQA=0 +ABHOST=optenv32 + +# Note: Skeleton package. +ABSPLITDBG=0 + +PKGBREAK="32subsystem<=1:2" +PKGREP="32subystem<=1:2" diff --git a/runtime-optenv32/aosc-aaa+32/autobuild/preinst b/runtime-optenv32/aosc-aaa+32/autobuild/preinst new file mode 100644 index 00000000000..7464caef932 --- /dev/null +++ b/runtime-optenv32/aosc-aaa+32/autobuild/preinst @@ -0,0 +1,5 @@ +for i in etc share var; do + if [ -L /opt/32/$i ]; then + rm /opt/32/$i + fi +done diff --git a/runtime-optenv32/aosc-aaa+32/spec b/runtime-optenv32/aosc-aaa+32/spec new file mode 100644 index 00000000000..4179d97b0f0 --- /dev/null +++ b/runtime-optenv32/aosc-aaa+32/spec @@ -0,0 +1,5 @@ +VER=12.0.4 +__CODENAME="localhost" +__BUILD_ID="20250122" +DUMMYSRC=1 +CHKSUMS="SKIP" From eccaa789a51fe7b5b04fa65c469df4be752f0794 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:14 +0800 Subject: [PATCH 511/722] a52dec+32: depend on aosc-aaa+32 --- runtime-optenv32/a52dec+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/a52dec+32/autobuild/defines b/runtime-optenv32/a52dec+32/autobuild/defines index e6d116c7187..27dd4a26d71 100644 --- a/runtime-optenv32/a52dec+32/autobuild/defines +++ b/runtime-optenv32/a52dec+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=a52dec+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="A free library for decoding ATSC A/52 streams (32-bit x86 runtime)" From 0dc455a2e7fdfa6c3c182ba12f11e275d56d0c8a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:14 +0800 Subject: [PATCH 512/722] aalib+32: depend on aosc-aaa+32 --- runtime-optenv32/aalib+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/aalib+32/autobuild/defines b/runtime-optenv32/aalib+32/autobuild/defines index ab222b9f8c1..6e2f8c27646 100644 --- a/runtime-optenv32/aalib+32/autobuild/defines +++ b/runtime-optenv32/aalib+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=aalib+32 PKGSEC=libs -PKGDEP="ncurses+32 x11-lib+32" +PKGDEP="aosc-aaa+32 ncurses+32 x11-lib+32" BUILDDEP="devel-base+32" PKGDES="ASCII Art Library (32-bit x86 runtime)" From e9c5f1a897f10457b9b446a935960e5a7009bc44 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:14 +0800 Subject: [PATCH 513/722] acl+32: depend on aosc-aaa+32 --- runtime-optenv32/acl+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/acl+32/autobuild/defines b/runtime-optenv32/acl+32/autobuild/defines index 587b9b8ad1a..b0f6021c9da 100644 --- a/runtime-optenv32/acl+32/autobuild/defines +++ b/runtime-optenv32/acl+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=acl+32 PKGSEC=utils -PKGDEP="attr+32" +PKGDEP="aosc-aaa+32 attr+32" BUILDDEP="devel-base+32" PKGDES="Access Control List (32-bit x86 runtime)" From 5aa778effd1bc4cb8ed8ec33c7780791b3bc3cda Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:14 +0800 Subject: [PATCH 514/722] alsa-lib+32: depend on aosc-aaa+32 --- runtime-optenv32/alsa-lib+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/alsa-lib+32/autobuild/defines b/runtime-optenv32/alsa-lib+32/autobuild/defines index 007334a3fd2..1620bde6521 100644 --- a/runtime-optenv32/alsa-lib+32/autobuild/defines +++ b/runtime-optenv32/alsa-lib+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=alsa-lib+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="The ALSA interface library (32-bit x86 runtime)" From b289a956df9cee586b25a182833b0d65ff3a5ee4 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:14 +0800 Subject: [PATCH 515/722] alsa-plugins+32: depend on aosc-aaa+32 --- runtime-optenv32/alsa-plugins+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/alsa-plugins+32/autobuild/defines b/runtime-optenv32/alsa-plugins+32/autobuild/defines index d6feddedecd..e9d6ca47292 100644 --- a/runtime-optenv32/alsa-plugins+32/autobuild/defines +++ b/runtime-optenv32/alsa-plugins+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=alsa-plugins+32 PKGSEC=libs -PKGDEP="alsa-lib+32 pulseaudio+32 speex+32" +PKGDEP="aosc-aaa+32 alsa-lib+32 pulseaudio+32 speex+32" BUILDDEP="devel-base+32" PKGDES="Extra ALSA plugins (32-bit x86 runtime)" From 88373e5328907618bef38b15400c58de88cd5060 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:14 +0800 Subject: [PATCH 516/722] at-spi2-core+32: depend on aosc-aaa+32 --- runtime-optenv32/at-spi2-core+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/at-spi2-core+32/autobuild/defines b/runtime-optenv32/at-spi2-core+32/autobuild/defines index 0bf4ddc0229..89a4dffa06e 100644 --- a/runtime-optenv32/at-spi2-core+32/autobuild/defines +++ b/runtime-optenv32/at-spi2-core+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=at-spi2-core+32 PKGSEC=gnome -PKGDEP="dbus+32 glib+32 x11-lib+32" +PKGDEP="aosc-aaa+32 dbus+32 glib+32 x11-lib+32" BUILDDEP="devel-base+32" PKGDES="Protocol definitions and daemon for D-Bus at-spi (32-bit x86 runtime)" From 603af41a0d67e226f7588d5b82bf78ba207f0460 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:15 +0800 Subject: [PATCH 517/722] attr+32: depend on aosc-aaa+32 --- runtime-optenv32/attr+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/attr+32/autobuild/defines b/runtime-optenv32/attr+32/autobuild/defines index b982b93c999..c4802a2270f 100644 --- a/runtime-optenv32/attr+32/autobuild/defines +++ b/runtime-optenv32/attr+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=attr+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="Extended attribute support library for ACL support (32-bit x86 runtime)" From b6042a318bdbc2cbb8101741b0427908df93bb70 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:15 +0800 Subject: [PATCH 518/722] binutils+32: depend on aosc-aaa+32 --- runtime-optenv32/binutils+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/binutils+32/autobuild/defines b/runtime-optenv32/binutils+32/autobuild/defines index 2530085dc6b..d93d2d371da 100644 --- a/runtime-optenv32/binutils+32/autobuild/defines +++ b/runtime-optenv32/binutils+32/autobuild/defines @@ -1,7 +1,7 @@ PKGNAME=binutils+32 PKGDES="A set of programs to assemble and manipulate binary and object files (32-bit x86 runtime)" PKGSEC=devel -PKGDEP="glibc+32 zlib+32" +PKGDEP="aosc-aaa+32 glibc+32 zlib+32" BUILDDEP="devel-base+32" # Flags from the main tree. From 237ce56e2e349ceb06f646ae11ef27dd76bc2b2e Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:15 +0800 Subject: [PATCH 519/722] brotli+32: depend on aosc-aaa+32 --- runtime-optenv32/brotli+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/brotli+32/autobuild/defines b/runtime-optenv32/brotli+32/autobuild/defines index 3ad2e86c431..909c95194d6 100644 --- a/runtime-optenv32/brotli+32/autobuild/defines +++ b/runtime-optenv32/brotli+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=brotli+32 PKGSEC=utils -PKGDEP="gcc+32" +PKGDEP="aosc-aaa+32 gcc+32" BUILDDEP="devel-base+32" PKGDES="Brotli compression library and utility (32-bit x86 runtime)" From ad8e77e31ad8dcb2a908918d8697b0eadd26730f Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:15 +0800 Subject: [PATCH 520/722] bzip2+32: depend on aosc-aaa+32 --- runtime-optenv32/bzip2+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/bzip2+32/autobuild/defines b/runtime-optenv32/bzip2+32/autobuild/defines index bf766f2b5e1..b3f445fe399 100644 --- a/runtime-optenv32/bzip2+32/autobuild/defines +++ b/runtime-optenv32/bzip2+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=bzip2+32 PKGSEC=utils -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="A freely available, patent free, high-quality data compressor (32-bit x86 runtime)" From bfbf635d738555f6f90a646d3555c3662d9b44ef Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:15 +0800 Subject: [PATCH 521/722] cairo+32: depend on aosc-aaa+32 --- runtime-optenv32/cairo+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/cairo+32/autobuild/defines b/runtime-optenv32/cairo+32/autobuild/defines index 9d1a82792ce..7e0249b9ea3 100644 --- a/runtime-optenv32/cairo+32/autobuild/defines +++ b/runtime-optenv32/cairo+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=cairo+32 PKGSEC=libs -PKGDEP="fontconfig+32 glib+32 libdrm+32 libpng+32 lzo+32 \ +PKGDEP="aosc-aaa+32 fontconfig+32 glib+32 libdrm+32 libpng+32 lzo+32 \ pixman+32 x11-lib+32" BUILDDEP="devel-base+32" PKGDES="A 2D graphics library with support for multiple output devices (32-bit x86 runtime)" From 355506b78497975195ff396e57ac6947111ce06e Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:15 +0800 Subject: [PATCH 522/722] cdparanoia+32: depend on aosc-aaa+32 --- runtime-optenv32/cdparanoia+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/cdparanoia+32/autobuild/defines b/runtime-optenv32/cdparanoia+32/autobuild/defines index 9b124d3c9c4..0cae7abf516 100644 --- a/runtime-optenv32/cdparanoia+32/autobuild/defines +++ b/runtime-optenv32/cdparanoia+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=cdparanoia+32 PKGSEC=utils -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="A CD audio extraction tool (32-bit x86 runtime)" From 35fed8c0717ce3ac434cb9778934696aa822348c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:15 +0800 Subject: [PATCH 523/722] celt+32: depend on aosc-aaa+32 --- runtime-optenv32/celt+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/celt+32/autobuild/defines b/runtime-optenv32/celt+32/autobuild/defines index 037821a83b7..599b7370cdf 100644 --- a/runtime-optenv32/celt+32/autobuild/defines +++ b/runtime-optenv32/celt+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=celt+32 PKGSEC=libs -PKGDEP="libogg+32" +PKGDEP="aosc-aaa+32 libogg+32" BUILDDEP="devel-base+32" PKGDES="Low-latency audio communication codec (32-bit x86 runtime)" From 92eeade3c050c5eed8e40a7bc7b55922345080e0 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:15 +0800 Subject: [PATCH 524/722] cups+32: depend on aosc-aaa+32 --- runtime-optenv32/cups+32/autobuild/defines | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/runtime-optenv32/cups+32/autobuild/defines b/runtime-optenv32/cups+32/autobuild/defines index e05eb06ca3b..e8df66e9c49 100644 --- a/runtime-optenv32/cups+32/autobuild/defines +++ b/runtime-optenv32/cups+32/autobuild/defines @@ -1,6 +1,7 @@ PKGNAME=cups+32 PKGSEC=libs -PKGDEP="krb5+32 libtiff+32 libpng+32 gnutls+32 openldap+32 libusb+32 dbus+32" +PKGDEP="aosc-aaa+32 krb5+32 libtiff+32 libpng+32 gnutls+32 openldap+32 \ + libusb+32 dbus+32" BUILDDEP="devel-base+32" PKGDES="The CUPS Printing System (32-bit x86 runtime)" From 6044b09edaf802b52ee88d360a53bce90ac09453 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:15 +0800 Subject: [PATCH 525/722] curl+32: depend on aosc-aaa+32 --- runtime-optenv32/curl+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/curl+32/autobuild/defines b/runtime-optenv32/curl+32/autobuild/defines index 4fce354c458..0806e871f23 100644 --- a/runtime-optenv32/curl+32/autobuild/defines +++ b/runtime-optenv32/curl+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=curl+32 PKGSEC=utils -PKGDEP="ca-certs gnutls+32 krb5+32 libssh2+32 openssl+32 rtmpdump+32 zlib+32" +PKGDEP="aosc-aaa+32 ca-certs gnutls+32 krb5+32 libssh2+32 openssl+32 rtmpdump+32 zlib+32" BUILDDEP="devel-base+32 patchelf" PKGDES="A URL retrieval utility and library (32-bit x86 runtime)" From d98b39f231b42603de7248df9db87acda188efb3 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:15 +0800 Subject: [PATCH 526/722] dbus+32: depend on aosc-aaa+32 --- runtime-optenv32/dbus+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/dbus+32/autobuild/defines b/runtime-optenv32/dbus+32/autobuild/defines index bacb6082931..c59ef42d764 100644 --- a/runtime-optenv32/dbus+32/autobuild/defines +++ b/runtime-optenv32/dbus+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=dbus+32 PKGSEC=libs -PKGDEP="expat+32 glib+32 glibc+32" +PKGDEP="aosc-aaa+32 expat+32 glib+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="D-Bus, a system message bus (32-bit x86 runtime)" From 235b5abc445b9e317bf771d29f33bb467d2415dd Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:15 +0800 Subject: [PATCH 527/722] dbus-glib+32: depend on aosc-aaa+32 --- runtime-optenv32/dbus-glib+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/dbus-glib+32/autobuild/defines b/runtime-optenv32/dbus-glib+32/autobuild/defines index 6c24ffb3c4f..53b38aa2c41 100644 --- a/runtime-optenv32/dbus-glib+32/autobuild/defines +++ b/runtime-optenv32/dbus-glib+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=dbus-glib+32 PKGSEC=libs -PKGDEP="glib+32 dbus+32" +PKGDEP="aosc-aaa+32 glib+32 dbus+32" BUILDDEP="devel-base+32 gtk-doc" PKGDES="D-Bus GLib Binding (32-bit x86 runtime)" From 3c51ce111a7a9c90de83b6b471c4cc70ce6afbda Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:15 +0800 Subject: [PATCH 528/722] devel-base+32: depend on aosc-aaa+32 --- runtime-optenv32/devel-base+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/devel-base+32/autobuild/defines b/runtime-optenv32/devel-base+32/autobuild/defines index 9bab2d808c5..4c021227887 100644 --- a/runtime-optenv32/devel-base+32/autobuild/defines +++ b/runtime-optenv32/devel-base+32/autobuild/defines @@ -1,7 +1,7 @@ PKGNAME="devel-base+32" PKGDES="Meta package for AOSC OS optenv32 development support (32-bit x86 runtime)" PKGSEC=misc -PKGDEP="devel-base gcc+32 binutils+32 linux+api+32 glibc+32" +PKGDEP="aosc-aaa+32 devel-base gcc+32 binutils+32 linux+api+32 glibc+32" ABSPLITDBG=0 ABHOST="optenv32" From b8e31e64e56fade458be9f50d0cc5a651eaa8916 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:15 +0800 Subject: [PATCH 529/722] elfutils+32: depend on aosc-aaa+32 --- runtime-optenv32/elfutils+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/elfutils+32/autobuild/defines b/runtime-optenv32/elfutils+32/autobuild/defines index 85eb27e24e5..9bb0fa4045c 100644 --- a/runtime-optenv32/elfutils+32/autobuild/defines +++ b/runtime-optenv32/elfutils+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=elfutils+32 PKGSEC=utils -PKGDEP="bzip2+32 zlib+32" +PKGDEP="aosc-aaa+32 bzip2+32 zlib+32" BUILDDEP="devel-base+32" PKGDES="Libraries and utilities to handle ELF object files and DWARF debugging information (32-bit x86 runtime)" From 0b93a7913a9daf2b3b9b6b39fba9b8193ea856fb Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:15 +0800 Subject: [PATCH 530/722] enca+32: depend on aosc-aaa+32 --- runtime-optenv32/enca+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/enca+32/autobuild/defines b/runtime-optenv32/enca+32/autobuild/defines index a9f5eaa6de6..3a4b1fc5566 100644 --- a/runtime-optenv32/enca+32/autobuild/defines +++ b/runtime-optenv32/enca+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=enca+32 PKGSEC=utils -PKGDEP="recode+32" +PKGDEP="aosc-aaa+32 recode+32" BUILDDEP="devel-base+32" PKGDES="Charset analyzer and converter (32-bit x86 runtime)" From cfe9c1a63f1021ae61c2d15623449ef363b3ed6a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:15 +0800 Subject: [PATCH 531/722] eudev+32: depend on aosc-aaa+32 --- runtime-optenv32/eudev+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/eudev+32/autobuild/defines b/runtime-optenv32/eudev+32/autobuild/defines index 96ffa64e4f8..7c9d0eecae7 100644 --- a/runtime-optenv32/eudev+32/autobuild/defines +++ b/runtime-optenv32/eudev+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=eudev+32 PKGSEC=libs -PKGDEP="acl+32 dbus+32 hwdata glib+32 util-linux+32" +PKGDEP="aosc-aaa+32 acl+32 dbus+32 hwdata glib+32 util-linux+32" BUILDDEP="devel-base+32 docbook-dtd docbook-xsl gperf libxslt" PKGDES="A stripped-down version of UDev by Gentoo (32-bit x86 runtime)" From febd2604baca6883d665a8e8d7a98a6396a88ebd Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:15 +0800 Subject: [PATCH 532/722] expat+32: depend on aosc-aaa+32 --- runtime-optenv32/expat+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/expat+32/autobuild/defines b/runtime-optenv32/expat+32/autobuild/defines index ccab9e13e1b..c0ff5a8240a 100644 --- a/runtime-optenv32/expat+32/autobuild/defines +++ b/runtime-optenv32/expat+32/autobuild/defines @@ -1,7 +1,7 @@ PKGNAME=expat+32 PKGDES="A stream oriented C library for parsing XML (32-bit x86 runtime)" PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" RECONF=0 From 50291d85536d879372bd630fd94e4cd05666f22c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:15 +0800 Subject: [PATCH 533/722] faac+32: depend on aosc-aaa+32 --- runtime-optenv32/faac+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/faac+32/autobuild/defines b/runtime-optenv32/faac+32/autobuild/defines index 7fffcfa9b0b..8f4291624a5 100644 --- a/runtime-optenv32/faac+32/autobuild/defines +++ b/runtime-optenv32/faac+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=faac+32 PKGSEC=libs -PKGDEP="mp4v2+32" +PKGDEP="aosc-aaa+32 mp4v2+32" BUILDDEP="devel-base+32" PKGDES="An encoder for Advanced Audio Coding (AAC) (32-bit x86 runtime)" From add98e6fa902d70d3fe01a67527dcc159aa08b8c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:15 +0800 Subject: [PATCH 534/722] faad2+32: depend on aosc-aaa+32 --- runtime-optenv32/faad2+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/faad2+32/autobuild/defines b/runtime-optenv32/faad2+32/autobuild/defines index 9f67d8e74ef..0ece05d670a 100644 --- a/runtime-optenv32/faad2+32/autobuild/defines +++ b/runtime-optenv32/faad2+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=faad2+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="32subsystem" PKGDES="ISO AAC audio decoder (optenv32)" From a92e2f5e0cf69d52f616604b22650af09fd9c97f Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:16 +0800 Subject: [PATCH 535/722] ffmpeg+32: depend on aosc-aaa+32 --- runtime-optenv32/ffmpeg+32/autobuild/defines | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/runtime-optenv32/ffmpeg+32/autobuild/defines b/runtime-optenv32/ffmpeg+32/autobuild/defines index 75b1fad9625..8299bd8718e 100644 --- a/runtime-optenv32/ffmpeg+32/autobuild/defines +++ b/runtime-optenv32/ffmpeg+32/autobuild/defines @@ -1,10 +1,10 @@ PKGNAME=ffmpeg+32 PKGSEC=sound -PKGDEP="alsa-lib+32 bzip2+32 fontconfig+32 fribidi+32 gnutls+32 gsm+32 \ - lame+32 libass+32 libbluray+32 libmodplug+32 pulseaudio+32 libssh+32 \ - libtheora+32 libvdpau+32 libvorbis+32 libvpx+32 x264+32 x265+32 \ - opencore-amr+32 opus+32 schroedinger+32 sdl+32 speex+32 v4l-utils+32 \ - xvidcore+32 zlib+32 soxr+32 libva+32" +PKGDEP="aosc-aaa+32 alsa-lib+32 bzip2+32 fontconfig+32 fribidi+32 gnutls+32 \ + gsm+32 lame+32 libass+32 libbluray+32 libmodplug+32 pulseaudio+32 \ + libssh+32 libtheora+32 libvdpau+32 libvorbis+32 libvpx+32 x264+32 \ + x265+32 opencore-amr+32 opus+32 schroedinger+32 sdl+32 speex+32 \ + v4l-utils+32 xvidcore+32 zlib+32 soxr+32 libva+32" BUILDDEP="devel-base+32 yasm" PKGDES="Complete and free Internet live audio and video broadcasting solution (32-bit x86 runtime)" From 73b9e22b707eae7a2cf88d018ce04302328165e8 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:16 +0800 Subject: [PATCH 536/722] fftw+32: depend on aosc-aaa+32 --- runtime-optenv32/fftw+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/fftw+32/autobuild/defines b/runtime-optenv32/fftw+32/autobuild/defines index 6299ed40f73..e387606021c 100644 --- a/runtime-optenv32/fftw+32/autobuild/defines +++ b/runtime-optenv32/fftw+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=fftw+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" PKGDES="Library for computing the discrete Fourier transform (DFT) (32-bit x86 runtime)" ABHOST=optenv32 From 8a6b58018f09499986c0bd9e0d918b766ea9920f Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:16 +0800 Subject: [PATCH 537/722] flac+32: depend on aosc-aaa+32 --- runtime-optenv32/flac+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/flac+32/autobuild/defines b/runtime-optenv32/flac+32/autobuild/defines index b51eff7dfb6..df49a03eb6d 100644 --- a/runtime-optenv32/flac+32/autobuild/defines +++ b/runtime-optenv32/flac+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=flac+32 PKGSEC=libs -PKGDEP="libogg+32" +PKGDEP="aosc-aaa+32 libogg+32" BUILDDEP="devel-base+32" PKGDES="FLAC analyzing library (32-bit x86 runtime)" From be9dcd184d2008b696034ebd1055182e87a5b133 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:16 +0800 Subject: [PATCH 538/722] fluidsynth+32: depend on aosc-aaa+32 --- runtime-optenv32/fluidsynth+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/fluidsynth+32/autobuild/defines b/runtime-optenv32/fluidsynth+32/autobuild/defines index 1b1721129be..485dc06816a 100644 --- a/runtime-optenv32/fluidsynth+32/autobuild/defines +++ b/runtime-optenv32/fluidsynth+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=fluidsynth+32 PKGSEC=sound -PKGDEP="glib+32 pulseaudio+32" +PKGDEP="aosc-aaa+32 glib+32 pulseaudio+32" BUILDDEP="devel-base+32" PKGDES="A real-time software synthesizer based on the SoundFont 2 specifications (32-bit x86 runtime)" From d47f946770ab95ebc4b6164ff8ebb8fe5d5b506e Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:16 +0800 Subject: [PATCH 539/722] fontconfig+32: depend on aosc-aaa+32 --- runtime-optenv32/fontconfig+32/autobuild/defines | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/fontconfig+32/autobuild/defines b/runtime-optenv32/fontconfig+32/autobuild/defines index b9bb5b2c642..9efde84a04f 100644 --- a/runtime-optenv32/fontconfig+32/autobuild/defines +++ b/runtime-optenv32/fontconfig+32/autobuild/defines @@ -1,7 +1,7 @@ PKGNAME=fontconfig+32 PKGSEC=libs -PKGDEP="expat+32 freetype+32 glibc+32 json-c+32 libpng+32 libxml2+32 \ - util-linux+32" +PKGDEP="aosc-aaa+32 expat+32 freetype+32 glibc+32 json-c+32 libpng+32 \ + libxml2+32 util-linux+32" BUILDDEP="devel-base+32 gperf" PKGDES="A library for configuring and customizing font access (32-bit x86 runtime)" From c518b3c9bc347c6d095d31589f2e0623ee3179ab Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:16 +0800 Subject: [PATCH 540/722] freealut+32: depend on aosc-aaa+32 --- runtime-optenv32/freealut+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/freealut+32/autobuild/defines b/runtime-optenv32/freealut+32/autobuild/defines index 0f7c710d35d..e65e7f378bd 100644 --- a/runtime-optenv32/freealut+32/autobuild/defines +++ b/runtime-optenv32/freealut+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=freealut+32 PKGSEC=sound -PKGDEP="openal-soft+32" +PKGDEP="aosc-aaa+32 openal-soft+32" BUILDDEP="devel-base+32" PKGDES="OpenAL Utility Toolkit (32-bit x86 runtime)" From 2a21cd68792f6e4469d9eae694c096f5a738a3c1 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:16 +0800 Subject: [PATCH 541/722] freeglut+32: depend on aosc-aaa+32 --- runtime-optenv32/freeglut+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/freeglut+32/autobuild/defines b/runtime-optenv32/freeglut+32/autobuild/defines index 35b0704729f..cb25192bcc4 100644 --- a/runtime-optenv32/freeglut+32/autobuild/defines +++ b/runtime-optenv32/freeglut+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=freeglut+32 PKGSEC=devel -PKGDEP="glu+32 mesa+32 x11-lib+32" +PKGDEP="aosc-aaa+32 glu+32 mesa+32 x11-lib+32" BUILDDEP="devel-base+32" PKGDES="Free GL User Toolkit (32-bit x86 runtime)" From 6489a78778fc7b06b88117dcc5ba85361ea1b35a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:16 +0800 Subject: [PATCH 542/722] freetype+32: depend on aosc-aaa+32 --- runtime-optenv32/freetype+32/autobuild/defines | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/runtime-optenv32/freetype+32/autobuild/defines b/runtime-optenv32/freetype+32/autobuild/defines index bf6fe0cf784..3c4b778b127 100644 --- a/runtime-optenv32/freetype+32/autobuild/defines +++ b/runtime-optenv32/freetype+32/autobuild/defines @@ -1,6 +1,7 @@ PKGNAME=freetype+32 PKGSEC=libs -PKGDEP="brotli+32 bzip2+32 harfbuzz+32 libpng+32 x11-lib+32 zlib+32" +PKGDEP="aosc-aaa+32 brotli+32 bzip2+32 harfbuzz+32 libpng+32 x11-lib+32 \ + zlib+32" BUILDDEP="devel-base+32" PKGDES="Font rendering engine (32-bit x86 runtime)" From 32871c0180715bbf239531b7b8f6afd7af89fbb9 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:16 +0800 Subject: [PATCH 543/722] fribidi+32: depend on aosc-aaa+32 --- runtime-optenv32/fribidi+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/fribidi+32/autobuild/defines b/runtime-optenv32/fribidi+32/autobuild/defines index 534abeb75e0..4364d910159 100644 --- a/runtime-optenv32/fribidi+32/autobuild/defines +++ b/runtime-optenv32/fribidi+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=fribidi+32 PKGSEC=libs -PKGDEP="glib+32" +PKGDEP="aosc-aaa+32 glib+32" BUILDDEP="devel-base+32" PKGDES="Free implementation of BiDi algorithm (32-bit x86 runtime)" From b8b6d11ae6a4a935e02a7d9d8bd7df3f12d80f1b Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:16 +0800 Subject: [PATCH 544/722] game-music-emu+32: depend on aosc-aaa+32 --- runtime-optenv32/game-music-emu+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/game-music-emu+32/autobuild/defines b/runtime-optenv32/game-music-emu+32/autobuild/defines index 2506ed4e2d9..2ac8cdd8f2b 100644 --- a/runtime-optenv32/game-music-emu+32/autobuild/defines +++ b/runtime-optenv32/game-music-emu+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=game-music-emu+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="Video game music file emulation/playback library (32-bit x86 runtime)" From bc1712d58fe0ca3add2ab01048170a6f21397047 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:16 +0800 Subject: [PATCH 545/722] gcc+32: depend on aosc-aaa+32 --- runtime-optenv32/gcc+32/autobuild/defines | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/runtime-optenv32/gcc+32/autobuild/defines b/runtime-optenv32/gcc+32/autobuild/defines index 9ac7a8336e3..aff4168f50b 100644 --- a/runtime-optenv32/gcc+32/autobuild/defines +++ b/runtime-optenv32/gcc+32/autobuild/defines @@ -1,7 +1,8 @@ PKGNAME=gcc+32 PKGDES="GNU Compiler Collection (32-bit x86 runtime)" PKGSEC=devel -PKGDEP="binutils+32 gmp+32 mpfr+32 mpc+32 zlib+32 glibc+32 linux+api+32 libxcrypt+32" +PKGDEP="aosc-aaa+32 binutils+32 gmp+32 mpfr+32 mpc+32 zlib+32 glibc+32 \ + linux+api+32 libxcrypt+32" BUILDDEP="devel-base+32" AUTOTOOLS_STRICT=0 From 98da8cf88ca9344d96c6481c0c254692ba147056 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:16 +0800 Subject: [PATCH 546/722] gconf+32: depend on aosc-aaa+32 --- runtime-optenv32/gconf+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/gconf+32/autobuild/defines b/runtime-optenv32/gconf+32/autobuild/defines index 9bebb5a488d..c726dfda2e5 100644 --- a/runtime-optenv32/gconf+32/autobuild/defines +++ b/runtime-optenv32/gconf+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=gconf+32 PKGSEC=gnome -PKGDEP="dbus-glib+32 libxml2+32 openldap+32" +PKGDEP="aosc-aaa+32 dbus-glib+32 libxml2+32 openldap+32" BUILDDEP="devel-base+32 gtk-doc intltool" PKGDES="GConf configuration database system (32-bit x86 runtime)" From d183110bc9d8fc84b4dd31e7eea1e16af3c5aabd Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:16 +0800 Subject: [PATCH 547/722] gdbm+32: depend on aosc-aaa+32 --- runtime-optenv32/gdbm+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/gdbm+32/autobuild/defines b/runtime-optenv32/gdbm+32/autobuild/defines index 53baeeb667c..eac02edd791 100644 --- a/runtime-optenv32/gdbm+32/autobuild/defines +++ b/runtime-optenv32/gdbm+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=gdbm+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="GNU Database Manager library (32-bit x86 runtime)" From e37787b5f819283c5f15403069f0dfe1851cb7fe Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:16 +0800 Subject: [PATCH 548/722] gdk-pixbuf+32: depend on aosc-aaa+32 --- runtime-optenv32/gdk-pixbuf+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/gdk-pixbuf+32/autobuild/defines b/runtime-optenv32/gdk-pixbuf+32/autobuild/defines index 2534c7d16df..b3083442b95 100644 --- a/runtime-optenv32/gdk-pixbuf+32/autobuild/defines +++ b/runtime-optenv32/gdk-pixbuf+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=gdk-pixbuf+32 PKGSEC=libs -PKGDEP="glib+32 libpng+32 libtiff+32 libjpeg-turbo+32" +PKGDEP="aosc-aaa+32 glib+32 libpng+32 libtiff+32 libjpeg-turbo+32" BUILDDEP="devel-base+32 shared-mime-info+32" PKGDES="Toolkit for image loading and pixel buffer manipulation (32-bit x86 runtime)" From b2ed4acaef8ebc39f0366944773867177e8cce9a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:16 +0800 Subject: [PATCH 549/722] giflib+32: depend on aosc-aaa+32 --- runtime-optenv32/giflib+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/giflib+32/autobuild/defines b/runtime-optenv32/giflib+32/autobuild/defines index 63a20d1144c..5d475f8f58b 100644 --- a/runtime-optenv32/giflib+32/autobuild/defines +++ b/runtime-optenv32/giflib+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=giflib+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32 xmlto docbook-xsl" PKGDES="A library for reading and writing GIF images (32-bit x86 runtime)" From 35e634a26e833a023b43ce46e982a6fb884ea333 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:16 +0800 Subject: [PATCH 550/722] glew+32: depend on aosc-aaa+32 --- runtime-optenv32/glew+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/glew+32/autobuild/defines b/runtime-optenv32/glew+32/autobuild/defines index 39850ba65ea..40ff1051e71 100644 --- a/runtime-optenv32/glew+32/autobuild/defines +++ b/runtime-optenv32/glew+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=glew+32 PKGSEC=libs -PKGDEP="glu+32" +PKGDEP="aosc-aaa+32 glu+32" BUILDDEP="devel-base+32" PKGDES="The OpenGL Extension Wrangler Library (32-bit x86 runtime)" From c5a333d01faaff993b557cd00d151e45abc18239 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:16 +0800 Subject: [PATCH 551/722] glib+32: depend on aosc-aaa+32 --- runtime-optenv32/glib+32/autobuild/defines | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/runtime-optenv32/glib+32/autobuild/defines b/runtime-optenv32/glib+32/autobuild/defines index 7019c00a44d..e8ad4970a9c 100644 --- a/runtime-optenv32/glib+32/autobuild/defines +++ b/runtime-optenv32/glib+32/autobuild/defines @@ -1,6 +1,7 @@ PKGNAME=glib+32 PKGSEC=libs -PKGDEP="dbus+32 elfutils+32 glibc+32 libffi+32 pcre2+32 util-linux+32" +PKGDEP="aosc-aaa+32 dbus+32 elfutils+32 glibc+32 libffi+32 pcre2+32 \ + util-linux+32" BUILDDEP="devel-base+32 python-2" PKGDES="Common C routines used by GTK+ and other libs (32-bit x86 runtime)" From bfaedcc445a7ec75668c9940c182d5927c901778 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:16 +0800 Subject: [PATCH 552/722] glibc+32: depend on aosc-aaa+32 --- runtime-optenv32/glibc+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/glibc+32/autobuild/defines b/runtime-optenv32/glibc+32/autobuild/defines index fed2a26ab13..d6e491fde84 100644 --- a/runtime-optenv32/glibc+32/autobuild/defines +++ b/runtime-optenv32/glibc+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=glibc+32 PKGSEC=libs -PKGDEP="tzdata" +PKGDEP="aosc-aaa+32 tzdata" BUILDDEP="devel-base+32" PKGDES="GNU C Library (32-bit x86 runtime)" From ef307f418f792a17a586f1e66f095fa4e5891d4a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:16 +0800 Subject: [PATCH 553/722] glslang+32: depend on aosc-aaa+32 --- runtime-optenv32/glslang+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/glslang+32/autobuild/defines b/runtime-optenv32/glslang+32/autobuild/defines index 688442010b8..65493474d22 100644 --- a/runtime-optenv32/glslang+32/autobuild/defines +++ b/runtime-optenv32/glslang+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=glslang+32 PKGSEC=graphics -PKGDEP="glibc+32 spirv-tools+32" +PKGDEP="aosc-aaa+32 glibc+32 spirv-tools+32" BUILDDEP="devel-base+32" PKGDES="An OpenGL and OpenGL ES shader front end and validator (32-bit x86 runtime)" From 100dd7eaafbf678ea0d51700ecbe45412706c3f0 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:17 +0800 Subject: [PATCH 554/722] glu+32: depend on aosc-aaa+32 --- runtime-optenv32/glu+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/glu+32/autobuild/defines b/runtime-optenv32/glu+32/autobuild/defines index 9f199b16bd3..b51b676c017 100644 --- a/runtime-optenv32/glu+32/autobuild/defines +++ b/runtime-optenv32/glu+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=glu+32 PKGSEC=libs -PKGDEP="mesa+32" +PKGDEP="aosc-aaa+32 mesa+32" BUILDDEP="devel-base+32" PKGDES="GLU GL API libs (32-bit x86 runtime)" From e585ae1518a29aff82668c4f9001cd549bee1248 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:17 +0800 Subject: [PATCH 555/722] gmp+32: depend on aosc-aaa+32 --- runtime-optenv32/gmp+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/gmp+32/autobuild/defines b/runtime-optenv32/gmp+32/autobuild/defines index cfb075e2774..96fcff63047 100644 --- a/runtime-optenv32/gmp+32/autobuild/defines +++ b/runtime-optenv32/gmp+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=gmp+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="GNU Multiprecision library (32-bit x86 runtime)" From b2c5a4f239ae81e29fbb20653cd79041a962e59d Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:17 +0800 Subject: [PATCH 556/722] gnutls+32: depend on aosc-aaa+32 --- runtime-optenv32/gnutls+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/gnutls+32/autobuild/defines b/runtime-optenv32/gnutls+32/autobuild/defines index 732f441bf91..5f7b7849a7c 100644 --- a/runtime-optenv32/gnutls+32/autobuild/defines +++ b/runtime-optenv32/gnutls+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=gnutls+32 PKGSEC=libs -PKGDEP="brotli+32 nettle+32 zstd+32" +PKGDEP="aosc-aaa+32 brotli+32 nettle+32 zstd+32" BUILDDEP="devel-base+32 gtk-doc python-3" PKGDES="Library that provides a secure layer over a reliable transport layer (32-bit x86 runtime)" From 082fef9f07cbb6b4bf7485b85df5e9c8eb121ea2 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:17 +0800 Subject: [PATCH 557/722] gsm+32: depend on aosc-aaa+32 --- runtime-optenv32/gsm+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/gsm+32/autobuild/defines b/runtime-optenv32/gsm+32/autobuild/defines index ef50993d8b7..b08273c2ca6 100644 --- a/runtime-optenv32/gsm+32/autobuild/defines +++ b/runtime-optenv32/gsm+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=gsm+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="Shared libraries for GSM 06.10 lossy speech compression (32-bit x86 runtime)" From 1065efd4687431efd6dc465383dfd5c0c3679d48 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:17 +0800 Subject: [PATCH 558/722] gtk-2+32: depend on aosc-aaa+32 --- runtime-optenv32/gtk-2+32/autobuild/defines | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/runtime-optenv32/gtk-2+32/autobuild/defines b/runtime-optenv32/gtk-2+32/autobuild/defines index 4b0125cdab9..273b9c51f2c 100644 --- a/runtime-optenv32/gtk-2+32/autobuild/defines +++ b/runtime-optenv32/gtk-2+32/autobuild/defines @@ -1,6 +1,7 @@ PKGNAME=gtk-2+32 PKGSEC=x11 -PKGDEP="at-spi2-core+32 cairo+32 gdk-pixbuf+32 pango+32 shared-mime-info" +PKGDEP="aosc-aaa+32 at-spi2-core+32 cairo+32 gdk-pixbuf+32 pango+32 \ + shared-mime-info" BUILDDEP="devel-base+32 gtk-doc python-2" PKGDES="GIMP toolkit version 2 (32-bit x86 runtime)" From 9829f029306e2c595f4ce97e69313400cd02a3bc Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:17 +0800 Subject: [PATCH 559/722] gtk-3+32: depend on aosc-aaa+32 --- runtime-optenv32/gtk-3+32/autobuild/defines | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/gtk-3+32/autobuild/defines b/runtime-optenv32/gtk-3+32/autobuild/defines index 4d1d6893885..9f8eb5e4f9e 100644 --- a/runtime-optenv32/gtk-3+32/autobuild/defines +++ b/runtime-optenv32/gtk-3+32/autobuild/defines @@ -1,7 +1,8 @@ PKGNAME=gtk-3+32 PKGSEC=x11 -PKGDEP="adwaita-icon-theme at-spi2-core+32 cairo+32 gdk-pixbuf+32 libepoxy+32 \ - libxkbcommon+32 pango+32 shared-mime-info+32 wayland+32 x11-lib+32" +PKGDEP="aosc-aaa+32 adwaita-icon-theme at-spi2-core+32 cairo+32 gdk-pixbuf+32 \ + libepoxy+32 libxkbcommon+32 pango+32 shared-mime-info+32 wayland+32 \ + x11-lib+32" BUILDDEP="devel-base+32 gtk-doc" PKGDES="GIMP toolkit version 3 (32-bit x86 runtime)" From 2e5c69b4a2de30db04b7566f7af180b9ff4a9a6c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:17 +0800 Subject: [PATCH 560/722] harfbuzz+32: depend on aosc-aaa+32 --- runtime-optenv32/harfbuzz+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/harfbuzz+32/autobuild/defines b/runtime-optenv32/harfbuzz+32/autobuild/defines index 0672494b999..4cd03bb3018 100644 --- a/runtime-optenv32/harfbuzz+32/autobuild/defines +++ b/runtime-optenv32/harfbuzz+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=harfbuzz+32 PKGSEC=libs -PKGDEP="cairo+32 freetype+32 glibc+32 glib+32 icu+32" +PKGDEP="aosc-aaa+32 cairo+32 freetype+32 glibc+32 glib+32 icu+32" BUILDDEP="devel-base+32 ragel" PKGDES="OpenType text shaping engine (32-bit x86 runtime)" From 39e2ea6652ab35ff7a213e161fa1fbf98c03c0a0 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:17 +0800 Subject: [PATCH 561/722] imlib2+32: depend on aosc-aaa+32 --- runtime-optenv32/imlib2+32/autobuild/defines | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/imlib2+32/autobuild/defines b/runtime-optenv32/imlib2+32/autobuild/defines index e2cf1682fde..2b2a086b078 100644 --- a/runtime-optenv32/imlib2+32/autobuild/defines +++ b/runtime-optenv32/imlib2+32/autobuild/defines @@ -1,7 +1,7 @@ PKGNAME=imlib2+32 PKGSEC=libs -PKGDEP="libtiff+32 giflib+32 bzip2+32 freetype+32 x11-lib+32 libpng+32 \ - libid3tag+32 libjpeg-turbo+32" +PKGDEP="aosc-aaa+32 libtiff+32 giflib+32 bzip2+32 freetype+32 x11-lib+32 \ + libpng+32 libid3tag+32 libjpeg-turbo+32" BUILDDEP="devel-base+32" PKGDES="Image loading, saving, rendering, and manipulation library (32-bit x86 runtime)" From c84423c485a340defb8129b5e82c3eb9249c08d6 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:17 +0800 Subject: [PATCH 562/722] json-c+32: depend on aosc-aaa+32 --- runtime-optenv32/json-c+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/json-c+32/autobuild/defines b/runtime-optenv32/json-c+32/autobuild/defines index f7474e5790d..5b8e2e5842a 100644 --- a/runtime-optenv32/json-c+32/autobuild/defines +++ b/runtime-optenv32/json-c+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=json-c+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="A JSON implementation in C (32-bit x86 runtime)" From 9d9b1c58b0844ad97d5f922b461515d5b1c2f5f7 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:17 +0800 Subject: [PATCH 563/722] krb5+32: depend on aosc-aaa+32 --- runtime-optenv32/krb5+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/krb5+32/autobuild/defines b/runtime-optenv32/krb5+32/autobuild/defines index d0549f184ff..b297b20d6f3 100644 --- a/runtime-optenv32/krb5+32/autobuild/defines +++ b/runtime-optenv32/krb5+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=krb5+32 PKGSEC=libs -PKGDEP="openldap+32" +PKGDEP="aosc-aaa+32 openldap+32" BUILDDEP="devel-base+32" PKGDES="The Kerberos network authentication system (32-bit x86 runtime)" From 6fcbb082b3a19d02fb7f69aec25246445e000b4b Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:17 +0800 Subject: [PATCH 564/722] lame+32: depend on aosc-aaa+32 --- runtime-optenv32/lame+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/lame+32/autobuild/defines b/runtime-optenv32/lame+32/autobuild/defines index a53d46db59b..768c77a15cf 100644 --- a/runtime-optenv32/lame+32/autobuild/defines +++ b/runtime-optenv32/lame+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=lame+32 PKGSEC=sound -PKGDEP="ncurses+32" +PKGDEP="aosc-aaa+32 ncurses+32" BUILDDEP="devel-base+32" PKGDES="A high quality MP3 Encoder (32-bit x86 runtime)" From ad7d154eef5c90b196313f005105bd8494244de7 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:17 +0800 Subject: [PATCH 565/722] lcms2+32: depend on aosc-aaa+32 --- runtime-optenv32/lcms2+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/lcms2+32/autobuild/defines b/runtime-optenv32/lcms2+32/autobuild/defines index c31c63f693a..4b1b47cd69a 100644 --- a/runtime-optenv32/lcms2+32/autobuild/defines +++ b/runtime-optenv32/lcms2+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=lcms2+32 PKGSEC=libs -PKGDEP="libtiff+32" +PKGDEP="aosc-aaa+32 libtiff+32" BUILDDEP="devel-base+32" PKGDES="Little CMS 2 color management library (32-bit x86 runtime)" From 1b970734c0e683444d00fb3d7cafcf76487ae6ef Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:17 +0800 Subject: [PATCH 566/722] libaio+32: depend on aosc-aaa+32 --- runtime-optenv32/libaio+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libaio+32/autobuild/defines b/runtime-optenv32/libaio+32/autobuild/defines index 2836a48abcd..6a941bdb430 100644 --- a/runtime-optenv32/libaio+32/autobuild/defines +++ b/runtime-optenv32/libaio+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libaio+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="The Linux-native asynchronous I/O facility (aio) library (32-bit x86 runtime)" From aaa033f1f6956d5e26abd04ebbe916d0d272892a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:17 +0800 Subject: [PATCH 567/722] libass+32: depend on aosc-aaa+32 --- runtime-optenv32/libass+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libass+32/autobuild/defines b/runtime-optenv32/libass+32/autobuild/defines index 7d3b968992f..7c3b212ed41 100644 --- a/runtime-optenv32/libass+32/autobuild/defines +++ b/runtime-optenv32/libass+32/autobuild/defines @@ -1,7 +1,7 @@ PKGNAME=libass+32 PKGDES="Library for SSA/ASS subtitles rendering (32-bit x86 runtime)" PKGSEC=libs -PKGDEP="enca+32 fontconfig+32 fribidi+32" +PKGDEP="aosc-aaa+32 enca+32 fontconfig+32 fribidi+32" BUILDDEP="devel-base+32 yasm" AUTOTOOLS_AFTER="--enable-fontconfig" From 86187e7f696ec6f1d894f1f933928c9980801c10 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:17 +0800 Subject: [PATCH 568/722] libasyncns+32: depend on aosc-aaa+32 --- runtime-optenv32/libasyncns+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libasyncns+32/autobuild/defines b/runtime-optenv32/libasyncns+32/autobuild/defines index 366a3e18f7e..ec80ef0e470 100644 --- a/runtime-optenv32/libasyncns+32/autobuild/defines +++ b/runtime-optenv32/libasyncns+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libasyncns+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="A C library for executing name service queries asynchronously (32-bit x86 runtime)" From e13d1933ceab0d4276f81b09bac2aea6e7aff719 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:17 +0800 Subject: [PATCH 569/722] libavc1394+32: depend on aosc-aaa+32 --- runtime-optenv32/libavc1394+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libavc1394+32/autobuild/defines b/runtime-optenv32/libavc1394+32/autobuild/defines index df10c671fc6..77adbb2dce3 100644 --- a/runtime-optenv32/libavc1394+32/autobuild/defines +++ b/runtime-optenv32/libavc1394+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libavc1394+32 PKGSEC=libs -PKGDEP="libraw1394+32" +PKGDEP="aosc-aaa+32 libraw1394+32" BUILDDEP="devel-base+32" PKGDES="A library to control A/V devices using the 1394ta AV/C commands (32-bit x86 runtime)" From a4f6a53bfd36b5367de708cb992e43a5a7502f0e Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:17 +0800 Subject: [PATCH 570/722] libbluray+32: depend on aosc-aaa+32 --- runtime-optenv32/libbluray+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libbluray+32/autobuild/defines b/runtime-optenv32/libbluray+32/autobuild/defines index 1e1d1e93a25..dd151af8bab 100644 --- a/runtime-optenv32/libbluray+32/autobuild/defines +++ b/runtime-optenv32/libbluray+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libbluray+32 PKGSEC=libs -PKGDEP="libxml2+32 freetype+32" +PKGDEP="aosc-aaa+32 libxml2+32 freetype+32" BUILDDEP="devel-base+32" PKGDES="Library to access Blu-Ray disks for video playback (32-bit x86 runtime)" From df02e29963d5e1fb4e006f39e630d2642ad2a669 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:17 +0800 Subject: [PATCH 571/722] libbsd+32: depend on aosc-aaa+32 --- runtime-optenv32/libbsd+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libbsd+32/autobuild/defines b/runtime-optenv32/libbsd+32/autobuild/defines index 887ac9fe837..8e40ce711d5 100644 --- a/runtime-optenv32/libbsd+32/autobuild/defines +++ b/runtime-optenv32/libbsd+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libbsd+32 PKGSEC=libs -PKGDEP="glibc+32 libmd+32" +PKGDEP="aosc-aaa+32 glibc+32 libmd+32" BUILDDEP="devel-base+32" PKGDES="Utility functions from BSD systems (32-bit x86 runtime)" From 1f54cfa4bba6f6e6561052e5b0067af07285ecdf Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:18 +0800 Subject: [PATCH 572/722] libcaca+32: depend on aosc-aaa+32 --- runtime-optenv32/libcaca+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libcaca+32/autobuild/defines b/runtime-optenv32/libcaca+32/autobuild/defines index df834931c01..4d35c81d6f5 100644 --- a/runtime-optenv32/libcaca+32/autobuild/defines +++ b/runtime-optenv32/libcaca+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libcaca+32 PKGSEC=libs -PKGDEP="imlib2+32 ncurses+32 pango+32" +PKGDEP="aosc-aaa+32 imlib2+32 ncurses+32 pango+32" BUILDDEP="devel-base+32" PKGDES="Color ASCII art libraries (32-bit x86 runtime)" From 6eefa2e19a51209032e3a2a2ff4655ef3ccaefef Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:18 +0800 Subject: [PATCH 573/722] libcap+32: depend on aosc-aaa+32 --- runtime-optenv32/libcap+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libcap+32/autobuild/defines b/runtime-optenv32/libcap+32/autobuild/defines index 456a9e300e6..8eaa36b8077 100644 --- a/runtime-optenv32/libcap+32/autobuild/defines +++ b/runtime-optenv32/libcap+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libcap+32 PKGSEC=libs -PKGDEP="attr+32 glibc+32" +PKGDEP="aosc-aaa+32 attr+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="POSIX 1003.1e capabilities (32-bit x86 runtime)" From 0b0c667842bd176b2784f4646c2cf7223d83bf13 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:18 +0800 Subject: [PATCH 574/722] libcddb+32: depend on aosc-aaa+32 --- runtime-optenv32/libcddb+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libcddb+32/autobuild/defines b/runtime-optenv32/libcddb+32/autobuild/defines index f39dfac9d85..5fd5630ac1e 100644 --- a/runtime-optenv32/libcddb+32/autobuild/defines +++ b/runtime-optenv32/libcddb+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libcddb+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="Library that implements the different protocols (CDDBP, HTTP, SMTP) to access data on a CDDB server (e.g. http://freedb.org) (32-bit x86 runtime)" From 6333561e0f18fe44acda4eba44e443f2f1a8c44e Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:18 +0800 Subject: [PATCH 575/722] libcdio+32: depend on aosc-aaa+32 --- runtime-optenv32/libcdio+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libcdio+32/autobuild/defines b/runtime-optenv32/libcdio+32/autobuild/defines index 5832ff46331..e4215ccc3ca 100644 --- a/runtime-optenv32/libcdio+32/autobuild/defines +++ b/runtime-optenv32/libcdio+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libcdio+32 PKGSEC=libs -PKGDEP="libcddb+32 ncurses+32" +PKGDEP="aosc-aaa+32 libcddb+32 ncurses+32" BUILDDEP="devel-base+32" PKGDES="GNU compact disk input and control library (32-bit x86 runtime)" From aa26a32bb08244e610e5ca92cdffcfb35be215b5 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:18 +0800 Subject: [PATCH 576/722] libcl+32: depend on aosc-aaa+32 --- runtime-optenv32/libcl+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libcl+32/autobuild/defines b/runtime-optenv32/libcl+32/autobuild/defines index 6f924c70562..fff92a021e0 100644 --- a/runtime-optenv32/libcl+32/autobuild/defines +++ b/runtime-optenv32/libcl+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libcl+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32 opencl-registry-api+32 ruby" PKGDES="OpenCL ICD bindings and headers (32-bit x86 runtime)" From 80abeee94a804e43b084d4ab24c11dc468513cf3 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:18 +0800 Subject: [PATCH 577/722] libclc+32: depend on aosc-aaa+32 --- runtime-optenv32/libclc+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libclc+32/autobuild/defines b/runtime-optenv32/libclc+32/autobuild/defines index 0cc945b9c1e..b9026103624 100644 --- a/runtime-optenv32/libclc+32/autobuild/defines +++ b/runtime-optenv32/libclc+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libclc+32 PKGSEC=libs -PKGDEP="libclc" +PKGDEP="aosc-aaa+32 libclc" PKGDES="Library requirements of the OpenCL C programming language (32-bit x86 runtime)" ABHOST=optenv32 From 84c45108418f3cab45acf7d1d56adc34e3a1e6cd Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:18 +0800 Subject: [PATCH 578/722] libcroco+32: depend on aosc-aaa+32 --- runtime-optenv32/libcroco+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libcroco+32/autobuild/defines b/runtime-optenv32/libcroco+32/autobuild/defines index 49d752a4ee9..b16877ae973 100644 --- a/runtime-optenv32/libcroco+32/autobuild/defines +++ b/runtime-optenv32/libcroco+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libcroco+32 PKGSEC=libs -PKGDEP="glib+32 libxml2+32" +PKGDEP="aosc-aaa+32 glib+32 libxml2+32" BUILDDEP="devel-base+32 gtk-doc" PKGDES="A standalone CSS parsing and manipulation library (optenv32)" From eeab9ba7f4d215b648ccc306152568b67e9c92e0 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:18 +0800 Subject: [PATCH 579/722] libdatrie+32: depend on aosc-aaa+32 --- runtime-optenv32/libdatrie+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libdatrie+32/autobuild/defines b/runtime-optenv32/libdatrie+32/autobuild/defines index 2c23bbf7765..1476c204ef6 100644 --- a/runtime-optenv32/libdatrie+32/autobuild/defines +++ b/runtime-optenv32/libdatrie+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libdatrie+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="Implementation of double-array structure for representing trie (32-bit x86 runtime)" From e689fa7a062c5b50dcee544324beb51cb33b5032 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:18 +0800 Subject: [PATCH 580/722] libdca+32: depend on aosc-aaa+32 --- runtime-optenv32/libdca+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libdca+32/autobuild/defines b/runtime-optenv32/libdca+32/autobuild/defines index f36155d37ec..bcbc5715432 100644 --- a/runtime-optenv32/libdca+32/autobuild/defines +++ b/runtime-optenv32/libdca+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libdca+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="Free library for decoding DTS Coherent Acoustics streams (32-bit x86 runtime)" From e42cfae30e28ff84f111fb91be7ed14ef9b13021 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:18 +0800 Subject: [PATCH 581/722] libdrm+32: depend on aosc-aaa+32 --- runtime-optenv32/libdrm+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libdrm+32/autobuild/defines b/runtime-optenv32/libdrm+32/autobuild/defines index c2b330e35ed..1f3de04fdbe 100644 --- a/runtime-optenv32/libdrm+32/autobuild/defines +++ b/runtime-optenv32/libdrm+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libdrm+32 PKGSEC=x11 -PKGDEP="cairo+32 x11-lib+32" +PKGDEP="aosc-aaa+32 cairo+32 x11-lib+32" BUILDDEP="devel-base+32" PKGDES="Direct Rendering Manager runtime library (32-bit x86 runtime)" From dc1e15fedc78f1cedb45ec33ed0fa8de7596d782 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:18 +0800 Subject: [PATCH 582/722] libdv+32: depend on aosc-aaa+32 --- runtime-optenv32/libdv+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libdv+32/autobuild/defines b/runtime-optenv32/libdv+32/autobuild/defines index 4439f72424a..e1378386299 100644 --- a/runtime-optenv32/libdv+32/autobuild/defines +++ b/runtime-optenv32/libdv+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libdv+32 PKGSEC=libs -PKGDEP="popt+32" +PKGDEP="aosc-aaa+32 popt+32" BUILDDEP="autoconf-archive devel-base+32" PKGDES="The Quarsar DV codec (32-bit x86 runtime)" From 7ef011b5ecb58dfe46eaae85be28556c0469195b Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:18 +0800 Subject: [PATCH 583/722] libdvdcss+32: depend on aosc-aaa+32 --- runtime-optenv32/libdvdcss+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libdvdcss+32/autobuild/defines b/runtime-optenv32/libdvdcss+32/autobuild/defines index 3a3a2c7e23c..7dcff1cb426 100644 --- a/runtime-optenv32/libdvdcss+32/autobuild/defines +++ b/runtime-optenv32/libdvdcss+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libdvdcss+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="Portable abstraction library for DVD decryption (32-bit x86 runtime)" From 9d6456b7a4081ffa2fbd31c6024af3f069c130a9 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:18 +0800 Subject: [PATCH 584/722] libdvdnav+32: depend on aosc-aaa+32 --- runtime-optenv32/libdvdnav+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libdvdnav+32/autobuild/defines b/runtime-optenv32/libdvdnav+32/autobuild/defines index eb0e2016d74..d3ff78ed0a4 100644 --- a/runtime-optenv32/libdvdnav+32/autobuild/defines +++ b/runtime-optenv32/libdvdnav+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libdvdnav+32 PKGSEC=libs -PKGDEP="libdvdread+32" +PKGDEP="aosc-aaa+32 libdvdread+32" BUILDDEP="devel-base+32" PKGDES="Library for xine-dvdnav plugin (32-bit x86 runtime)" From 964d31c9233c7009f07972c2465efa12e198369f Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:18 +0800 Subject: [PATCH 585/722] libdvdread+32: depend on aosc-aaa+32 --- runtime-optenv32/libdvdread+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libdvdread+32/autobuild/defines b/runtime-optenv32/libdvdread+32/autobuild/defines index 6494524b0ea..c4bb3b1e5d7 100644 --- a/runtime-optenv32/libdvdread+32/autobuild/defines +++ b/runtime-optenv32/libdvdread+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libdvdread+32 PKGSEC=libs -PKGDEP="libdvdcss+32" +PKGDEP="aosc-aaa+32 libdvdcss+32" BUILDDEP="devel-base+32" PKGDES="Provides a simple foundation for reading DVD video disks (32-bit x86 runtime)" From fe84a23a91062dbf50ad29649ca2db978f2eb791 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:18 +0800 Subject: [PATCH 586/722] libepoxy+32: depend on aosc-aaa+32 --- runtime-optenv32/libepoxy+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libepoxy+32/autobuild/defines b/runtime-optenv32/libepoxy+32/autobuild/defines index bb1877b8aab..fdfebb308fd 100644 --- a/runtime-optenv32/libepoxy+32/autobuild/defines +++ b/runtime-optenv32/libepoxy+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libepoxy+32 PKGSEC=libs -PKGDEP="mesa+32 x11-lib+32" +PKGDEP="aosc-aaa+32 mesa+32 x11-lib+32" BUILDDEP="devel-base+32" PKGDES="A library for handling OpenGL function pointer management for you (32-bit x86 runtime)" From 1c047cabb895f4ebae99f131b8a1b34541bebb15 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:18 +0800 Subject: [PATCH 587/722] libexif+32: depend on aosc-aaa+32 --- runtime-optenv32/libexif+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libexif+32/autobuild/defines b/runtime-optenv32/libexif+32/autobuild/defines index 38d8ce44613..7b45604c677 100644 --- a/runtime-optenv32/libexif+32/autobuild/defines +++ b/runtime-optenv32/libexif+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libexif+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="A library for parsing, editing, and saving EXIF data (32-bit x86 runtime)" From 978b8b1be37ab5936e7c23cab7503d4148bcc666 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:18 +0800 Subject: [PATCH 588/722] libffi+32: depend on aosc-aaa+32 --- runtime-optenv32/libffi+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libffi+32/autobuild/defines b/runtime-optenv32/libffi+32/autobuild/defines index 71b490eadde..0b6c6c8fb5c 100644 --- a/runtime-optenv32/libffi+32/autobuild/defines +++ b/runtime-optenv32/libffi+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libffi+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="Portable foreign function interface library (32-bit x86 runtime)" From 6082493eba7a3e0e2a2ff75fd116159e202623ea Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:18 +0800 Subject: [PATCH 589/722] libgcrypt+32: depend on aosc-aaa+32 --- runtime-optenv32/libgcrypt+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libgcrypt+32/autobuild/defines b/runtime-optenv32/libgcrypt+32/autobuild/defines index 935b02d970d..bc88992d145 100644 --- a/runtime-optenv32/libgcrypt+32/autobuild/defines +++ b/runtime-optenv32/libgcrypt+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libgcrypt+32 PKGSEC=libs -PKGDEP="libgpg-error+32" +PKGDEP="aosc-aaa+32 libgpg-error+32" BUILDDEP="devel-base+32" PKGDES="General purpose cryptographic library based on the code from GnuPG (32-bit x86 runtime)" From 627f17a6fd24eb22ffd6bd724fa5efdf44539dd2 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:18 +0800 Subject: [PATCH 590/722] libglvnd+32: depend on aosc-aaa+32 --- runtime-optenv32/libglvnd+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libglvnd+32/autobuild/defines b/runtime-optenv32/libglvnd+32/autobuild/defines index f05cadad2ea..2940a75267c 100644 --- a/runtime-optenv32/libglvnd+32/autobuild/defines +++ b/runtime-optenv32/libglvnd+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libglvnd+32 PKGSEC=libs -PKGDEP="x11-lib+32" +PKGDEP="aosc-aaa+32 x11-lib+32" BUILDDEP="devel-base+32 python-3" PKGDES="The GL Vendor-Neutral Dispatch library (32-bit x86 runtime)" From ffe5dea2fa28e20ab5cae87fde24cc19aff75a10 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:19 +0800 Subject: [PATCH 591/722] libgpg-error+32: depend on aosc-aaa+32 --- runtime-optenv32/libgpg-error+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libgpg-error+32/autobuild/defines b/runtime-optenv32/libgpg-error+32/autobuild/defines index 232536d8655..1b6e83e8b55 100644 --- a/runtime-optenv32/libgpg-error+32/autobuild/defines +++ b/runtime-optenv32/libgpg-error+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libgpg-error+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="Support library for GnuPG components (32-bit x86 runtime)" From 70c06c6bb4360b265c72f1deabdd80d6372baf92 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:19 +0800 Subject: [PATCH 592/722] libid3tag+32: depend on aosc-aaa+32 --- runtime-optenv32/libid3tag+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libid3tag+32/autobuild/defines b/runtime-optenv32/libid3tag+32/autobuild/defines index 54937a4353b..0311fbd9a3d 100644 --- a/runtime-optenv32/libid3tag+32/autobuild/defines +++ b/runtime-optenv32/libid3tag+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libid3tag+32 PKGSEC=libs -PKGDEP="zlib+32" +PKGDEP="aosc-aaa+32 zlib+32" BUILDDEP="devel-base+32 gperf" PKGDES="ID3 Tag Library (32-bit x86 runtime)" From 88d1f385189e6dfe39d106f0bbac00090b3a38f4 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:19 +0800 Subject: [PATCH 593/722] libidn+32: depend on aosc-aaa+32 --- runtime-optenv32/libidn+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libidn+32/autobuild/defines b/runtime-optenv32/libidn+32/autobuild/defines index f2db99e034c..a6f72ff3ee7 100644 --- a/runtime-optenv32/libidn+32/autobuild/defines +++ b/runtime-optenv32/libidn+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libidn+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32 gtk-doc" PKGDES="Implementation of the Stringprep, Punycode and IDNA specifications (32-bit x86 runtime)" From cd95c372b5f96f1aa37c502cd86e3b75494a2cea Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:19 +0800 Subject: [PATCH 594/722] libiec61883+32: depend on aosc-aaa+32 --- runtime-optenv32/libiec61883+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libiec61883+32/autobuild/defines b/runtime-optenv32/libiec61883+32/autobuild/defines index 64124f107e6..f53088afde5 100644 --- a/runtime-optenv32/libiec61883+32/autobuild/defines +++ b/runtime-optenv32/libiec61883+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libiec61883+32 PKGSEC=libs -PKGDEP="libraw1394+32" +PKGDEP="aosc-aaa+32 libraw1394+32" BUILDDEP="devel-base+32" PKGDES="A higher level API for streaming DV, MPEG-2 and audio over Linux IEEE 1394 (32-bit x86 runtime)" From 027265e2d8aaa33ace6afc6a2a80e458bfeffe38 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:19 +0800 Subject: [PATCH 595/722] libjpeg-turbo+32: depend on aosc-aaa+32 --- runtime-optenv32/libjpeg-turbo+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libjpeg-turbo+32/autobuild/defines b/runtime-optenv32/libjpeg-turbo+32/autobuild/defines index e37baa54346..a74d1a74ec4 100644 --- a/runtime-optenv32/libjpeg-turbo+32/autobuild/defines +++ b/runtime-optenv32/libjpeg-turbo+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libjpeg-turbo+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="JPEG image codec with accelerated baseline compression and decompression (32-bit x86 runtime)" From c7408f7b83b357d98f5d06d863bc758a268a99ed Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:19 +0800 Subject: [PATCH 596/722] libmad+32: depend on aosc-aaa+32 --- runtime-optenv32/libmad+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libmad+32/autobuild/defines b/runtime-optenv32/libmad+32/autobuild/defines index 896c61e21e6..061b90186e1 100644 --- a/runtime-optenv32/libmad+32/autobuild/defines +++ b/runtime-optenv32/libmad+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libmad+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="LibMAD, an MPEG audio decoder (32-bit x86 runtime)" From 5b952e4c2a97bff24cb75b87e3ebd94a8cfe47c3 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:19 +0800 Subject: [PATCH 597/722] libmd+32: depend on aosc-aaa+32 --- runtime-optenv32/libmd+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libmd+32/autobuild/defines b/runtime-optenv32/libmd+32/autobuild/defines index f40bcf6cbc5..2c312ff7dfe 100644 --- a/runtime-optenv32/libmd+32/autobuild/defines +++ b/runtime-optenv32/libmd+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libmd+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="A message digest functions library (32-bit x86 runtime)" From 43db1483a5edaf3a80b01ed8f72e1aad27708ad2 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:19 +0800 Subject: [PATCH 598/722] libmikmod+32: depend on aosc-aaa+32 --- runtime-optenv32/libmikmod+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libmikmod+32/autobuild/defines b/runtime-optenv32/libmikmod+32/autobuild/defines index ccf73849870..a657095fb0e 100644 --- a/runtime-optenv32/libmikmod+32/autobuild/defines +++ b/runtime-optenv32/libmikmod+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libmikmod+32 PKGSEC=libs -PKGDEP="pulseaudio+32" +PKGDEP="aosc-aaa+32 pulseaudio+32" BUILDDEP="devel-base+32" PKGDES="Modular music player and library (32-bit x86 runtime)" From f32a51f672b1179ca547af623c75d7d3d7e58919 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:19 +0800 Subject: [PATCH 599/722] libmms+32: depend on aosc-aaa+32 --- runtime-optenv32/libmms+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libmms+32/autobuild/defines b/runtime-optenv32/libmms+32/autobuild/defines index 525d30d877c..88e51d8e075 100644 --- a/runtime-optenv32/libmms+32/autobuild/defines +++ b/runtime-optenv32/libmms+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libmms+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="MMS stream protocol library (32-bit x86 runtime)" From 4ac42abc337c0bd846e3fc891685a896c5d99ee6 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:19 +0800 Subject: [PATCH 600/722] libmodplug+32: depend on aosc-aaa+32 --- runtime-optenv32/libmodplug+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libmodplug+32/autobuild/defines b/runtime-optenv32/libmodplug+32/autobuild/defines index bb983a69bde..2f6d1ca89f8 100644 --- a/runtime-optenv32/libmodplug+32/autobuild/defines +++ b/runtime-optenv32/libmodplug+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libmodplug+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="Libraries for mod music based on ModPlug (32-bit x86 runtime)" From a45a3d131bd83062e18f71b22ff1ac8a6f49fc5f Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:19 +0800 Subject: [PATCH 601/722] libmpeg2+32: depend on aosc-aaa+32 --- runtime-optenv32/libmpeg2+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libmpeg2+32/autobuild/defines b/runtime-optenv32/libmpeg2+32/autobuild/defines index c9851bb59e6..3d392402135 100644 --- a/runtime-optenv32/libmpeg2+32/autobuild/defines +++ b/runtime-optenv32/libmpeg2+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libmpeg2+32 PKGSEC=libs -PKGDEP="sdl+32 x11-lib+32" +PKGDEP="aosc-aaa+32 sdl+32 x11-lib+32" BUILDDEP="devel-base+32" PKGDES="Library for decoding MPEG-1 and MPEG-2 video streams (32-bit x86 runtime)" From a237f1f251201dd9a6b3d70ce2b1eab551122684 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:19 +0800 Subject: [PATCH 602/722] libnl+32: depend on aosc-aaa+32 --- runtime-optenv32/libnl+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libnl+32/autobuild/defines b/runtime-optenv32/libnl+32/autobuild/defines index 29a5a5e39e7..055cac1e86d 100644 --- a/runtime-optenv32/libnl+32/autobuild/defines +++ b/runtime-optenv32/libnl+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libnl+32 PKGSEC=net -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="APIs to netlink protocol based Linux Kernel interfaces (32-bit x86 runtime)" From ef6850afd394d09294406f5bed5c81687b73b409 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:19 +0800 Subject: [PATCH 603/722] libofa+32: depend on aosc-aaa+32 --- runtime-optenv32/libofa+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libofa+32/autobuild/defines b/runtime-optenv32/libofa+32/autobuild/defines index f94d815aeb6..3e04e0a0e21 100644 --- a/runtime-optenv32/libofa+32/autobuild/defines +++ b/runtime-optenv32/libofa+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libofa+32 PKGSEC=libs -PKGDEP="fftw+32 curl+32 expat+32" +PKGDEP="aosc-aaa+32 fftw+32 curl+32 expat+32" BUILDDEP="devel-base+32" PKGDES="Libraries that implements MusicIP (32-bit x86 runtime)" From e32306cd5d828e66c220a05aa788433f2da6ebe8 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:19 +0800 Subject: [PATCH 604/722] libogg+32: depend on aosc-aaa+32 --- runtime-optenv32/libogg+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libogg+32/autobuild/defines b/runtime-optenv32/libogg+32/autobuild/defines index d493b4ca7d1..a51bf3030ad 100644 --- a/runtime-optenv32/libogg+32/autobuild/defines +++ b/runtime-optenv32/libogg+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libogg+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="Ogg analyzing library (32-bit x86 runtime)" From 37f919d9c962dbb43aa5c04464fa0f53d8d8832b Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:19 +0800 Subject: [PATCH 605/722] libpcap+32: depend on aosc-aaa+32 --- runtime-optenv32/libpcap+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libpcap+32/autobuild/defines b/runtime-optenv32/libpcap+32/autobuild/defines index 2e8830372f9..d742f2a53c3 100644 --- a/runtime-optenv32/libpcap+32/autobuild/defines +++ b/runtime-optenv32/libpcap+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libpcap+32 PKGSEC=libs -PKGDEP="libnl+32 libusb+32" +PKGDEP="aosc-aaa+32 libnl+32 libusb+32" BUILDDEP="devel-base+32" PKGDES="A system-independent interface for user-level packet capture (32-bit x86 runtime)" From 32814afb08aaf6f2702953c61b64bd7a85468ceb Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:19 +0800 Subject: [PATCH 606/722] libpng+32: depend on aosc-aaa+32 --- runtime-optenv32/libpng+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libpng+32/autobuild/defines b/runtime-optenv32/libpng+32/autobuild/defines index 472c5456e77..83756301cd0 100644 --- a/runtime-optenv32/libpng+32/autobuild/defines +++ b/runtime-optenv32/libpng+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libpng+32 PKGSEC=libs -PKGDEP="zlib+32" +PKGDEP="aosc-aaa+32 zlib+32" BUILDDEP="devel-base+32" PKGDES="Libraries used by other programs for reading and writing PNG files (32-bit x86 runtime)" From 7e65da7bd8cce410697e2b386353f353261db129 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:19 +0800 Subject: [PATCH 607/722] libpng-1.6+32: depend on aosc-aaa+32 --- runtime-optenv32/libpng-1.6+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libpng-1.6+32/autobuild/defines b/runtime-optenv32/libpng-1.6+32/autobuild/defines index 69e2d379e66..ecf5f955696 100644 --- a/runtime-optenv32/libpng-1.6+32/autobuild/defines +++ b/runtime-optenv32/libpng-1.6+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libpng-1.6+32 PKGSEC=libs -PKGDEP="libpng+32" +PKGDEP="aosc-aaa+32 libpng+32" PKGDES="Transitional package for libpng+32 (32-bit x86 runtime)" PKGEPOCH=2 From 98a6c4821d853f938ddaa105001195a164ede9fd Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:19 +0800 Subject: [PATCH 608/722] libraw1394+32: depend on aosc-aaa+32 --- runtime-optenv32/libraw1394+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libraw1394+32/autobuild/defines b/runtime-optenv32/libraw1394+32/autobuild/defines index 218d0a3729f..0097e60e0db 100644 --- a/runtime-optenv32/libraw1394+32/autobuild/defines +++ b/runtime-optenv32/libraw1394+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libraw1394+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="API for the Linux IEEE1394 driver stack (32-bit x86 runtime)" From 6743db3600f5be2b47a4918a8450222e3fa07a68 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:20 +0800 Subject: [PATCH 609/722] librsvg+32: depend on aosc-aaa+32 --- runtime-optenv32/librsvg+32/autobuild/defines | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/runtime-optenv32/librsvg+32/autobuild/defines b/runtime-optenv32/librsvg+32/autobuild/defines index ddab7ce29bf..23861a142a8 100644 --- a/runtime-optenv32/librsvg+32/autobuild/defines +++ b/runtime-optenv32/librsvg+32/autobuild/defines @@ -1,6 +1,7 @@ PKGNAME=librsvg+32 PKGSEC=libs -PKGDEP="cairo+32 freetype+32 gdk-pixbuf+32 glib+32 libxml2+32 pango+32" +PKGDEP="aosc-aaa+32 cairo+32 freetype+32 gdk-pixbuf+32 glib+32 libxml2+32 \ + pango+32" BUILDDEP="devel-base+32 rustc+32 cargo-c" PKGDES="SVG rendering and manipulation library (32-bit x86 runtime)" From 5eec286001f71ef1146ac33bb39342ca330a8aa7 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:20 +0800 Subject: [PATCH 610/722] libshout+32: depend on aosc-aaa+32 --- runtime-optenv32/libshout+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libshout+32/autobuild/defines b/runtime-optenv32/libshout+32/autobuild/defines index 977b070087b..adf8add0c2c 100644 --- a/runtime-optenv32/libshout+32/autobuild/defines +++ b/runtime-optenv32/libshout+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libshout+32 PKGSEC=libs -PKGDEP="libogg+32 libvorbis+32 speex+32 libtheora+32" +PKGDEP="aosc-aaa+32 libogg+32 libvorbis+32 speex+32 libtheora+32" BUILDDEP="devel-base+32" PKGDES="MP3/Ogg Vorbis broadcast streaming library (32-bit x86 runtime)" From 2e7f3ae35b47426ebb058e5f970252fdc40e8803 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:20 +0800 Subject: [PATCH 611/722] libsndfile+32: depend on aosc-aaa+32 --- runtime-optenv32/libsndfile+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libsndfile+32/autobuild/defines b/runtime-optenv32/libsndfile+32/autobuild/defines index 4f34b6ffab8..37cf59c569f 100644 --- a/runtime-optenv32/libsndfile+32/autobuild/defines +++ b/runtime-optenv32/libsndfile+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libsndfile+32 PKGSEC=libs -PKGDEP="alsa-lib+32 flac+32 libvorbis+32" +PKGDEP="aosc-aaa+32 alsa-lib+32 flac+32 libvorbis+32" BUILDDEP="autogen devel-base+32" PKGDES="A C library for reading and writing files containing sampled sound (32-bit x86 runtime)" From 39aab6c1786a5c14da1baa44f405ed9e2b70ec8e Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:20 +0800 Subject: [PATCH 612/722] libssh+32: depend on aosc-aaa+32 --- runtime-optenv32/libssh+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libssh+32/autobuild/defines b/runtime-optenv32/libssh+32/autobuild/defines index fd044c5fbc7..083046b391c 100644 --- a/runtime-optenv32/libssh+32/autobuild/defines +++ b/runtime-optenv32/libssh+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libssh+32 PKGSEC=libs -PKGDEP="krb5+32 openssl+32 zlib+32" +PKGDEP="aosc-aaa+32 krb5+32 openssl+32 zlib+32" BUILDDEP="devel-base+32" PKGDES="A client-side C library implementing the SSH protocol (32-bit x86 runtime)" From 5b7acebf85679785bf174fd128092866690256fa Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:20 +0800 Subject: [PATCH 613/722] libssh2+32: depend on aosc-aaa+32 --- runtime-optenv32/libssh2+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libssh2+32/autobuild/defines b/runtime-optenv32/libssh2+32/autobuild/defines index d0c8e05edc2..539bac95dd6 100644 --- a/runtime-optenv32/libssh2+32/autobuild/defines +++ b/runtime-optenv32/libssh2+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libssh2+32 PKGSEC=libs -PKGDEP="openssl+32 zlib+32" +PKGDEP="aosc-aaa+32 openssl+32 zlib+32" BUILDDEP="autoconf-archive devel-base+32" PKGDES="A client-side C library implementing the SSH2 protocol (32-bit x86 runtime)" From bd16d1a42e97b3eb0584f30834cc4f0ddea88b3a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:20 +0800 Subject: [PATCH 614/722] libtasn1+32: depend on aosc-aaa+32 --- runtime-optenv32/libtasn1+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libtasn1+32/autobuild/defines b/runtime-optenv32/libtasn1+32/autobuild/defines index 692344f63a5..fcb4a8484f3 100644 --- a/runtime-optenv32/libtasn1+32/autobuild/defines +++ b/runtime-optenv32/libtasn1+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libtasn1+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32 gtk-doc" PKGDES="A highly portable C library that encodes and decodes DER/BER data following an ASN.1 schema (32-bit x86 runtime)" From 6a643cd555db1dbeac5267b11124e7554c859869 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:20 +0800 Subject: [PATCH 615/722] libthai+32: depend on aosc-aaa+32 --- runtime-optenv32/libthai+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libthai+32/autobuild/defines b/runtime-optenv32/libthai+32/autobuild/defines index 5c781c57029..41b44f720ac 100644 --- a/runtime-optenv32/libthai+32/autobuild/defines +++ b/runtime-optenv32/libthai+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libthai+32 PKGSEC=libs -PKGDEP="libdatrie+32" +PKGDEP="aosc-aaa+32 libdatrie+32" BUILDDEP="devel-base+32" PKGDES="Thai language support routines (32-bit x86 runtime)" From 55237fea35ad76ce0e01cf312a056e596de0ccee Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:20 +0800 Subject: [PATCH 616/722] libtheora+32: depend on aosc-aaa+32 --- runtime-optenv32/libtheora+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libtheora+32/autobuild/defines b/runtime-optenv32/libtheora+32/autobuild/defines index ba72d0347ca..43c1798035d 100644 --- a/runtime-optenv32/libtheora+32/autobuild/defines +++ b/runtime-optenv32/libtheora+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libtheora+32 PKGSEC=libs -PKGDEP="libogg+32 libpng+32 libvorbis+32" +PKGDEP="aosc-aaa+32 libogg+32 libpng+32 libvorbis+32" BUILDDEP="devel-base+32" PKGDES="An open video codec developed by the Xiph.org (32-bit x86 runtime)" From 6edb8efb59a2f742de214d6f46b11d31d5a8c4ba Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:20 +0800 Subject: [PATCH 617/722] libtiff+32: depend on aosc-aaa+32 --- runtime-optenv32/libtiff+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libtiff+32/autobuild/defines b/runtime-optenv32/libtiff+32/autobuild/defines index 1b121aa473e..f4f1c212b92 100644 --- a/runtime-optenv32/libtiff+32/autobuild/defines +++ b/runtime-optenv32/libtiff+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libtiff+32 PKGSEC=libs -PKGDEP="glibc+32 libjpeg-turbo+32 x11-lib+32" +PKGDEP="aosc-aaa+32 glibc+32 libjpeg-turbo+32 x11-lib+32" BUILDDEP="devel-base+32" PKGDES="Library for manipulation of TIFF images (32-bit x86 runtime)" From e0289434ecda17405519284e38b8b2f8ae69d7e1 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:20 +0800 Subject: [PATCH 618/722] libtool+32: depend on aosc-aaa+32 --- runtime-optenv32/libtool+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libtool+32/autobuild/defines b/runtime-optenv32/libtool+32/autobuild/defines index 830776bf053..1995e75faf1 100644 --- a/runtime-optenv32/libtool+32/autobuild/defines +++ b/runtime-optenv32/libtool+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libtool+32 PKGSEC=devel -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="GNU generic library support script (32-bit x86 runtime)" From a4a77f2fafb2b07d39f55dc262bc3e5170971b5a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:20 +0800 Subject: [PATCH 619/722] libunwind+32: depend on aosc-aaa+32 --- runtime-optenv32/libunwind+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libunwind+32/autobuild/defines b/runtime-optenv32/libunwind+32/autobuild/defines index 454bee2ee59..a577a1d8320 100644 --- a/runtime-optenv32/libunwind+32/autobuild/defines +++ b/runtime-optenv32/libunwind+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libunwind+32 PKGSEC=libs -PKGDEP="glibc+32 xz+32" +PKGDEP="aosc-aaa+32 glibc+32 xz+32" BUILDDEP="devel-base+32" PKGDES="Portable and efficient C programming interface (API) to determine the call-chain of a program (32-bit x86 runtime)" From 912f0ffa96e158ccaec015f65290fda6450d0107 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:20 +0800 Subject: [PATCH 620/722] libusb+32: depend on aosc-aaa+32 --- runtime-optenv32/libusb+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libusb+32/autobuild/defines b/runtime-optenv32/libusb+32/autobuild/defines index 5076c316892..979dad98671 100644 --- a/runtime-optenv32/libusb+32/autobuild/defines +++ b/runtime-optenv32/libusb+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libusb+32 PKGSEC=libs -PKGDEP="eudev+32 glibc+32" +PKGDEP="aosc-aaa+32 eudev+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="A library providing USB device access and manipulation support (32-bit x86 runtime)" From ee06717ac3e4f246e29bdb477f0c6245395b13d4 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:20 +0800 Subject: [PATCH 621/722] libusb-compat+32: depend on aosc-aaa+32 --- runtime-optenv32/libusb-compat+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libusb-compat+32/autobuild/defines b/runtime-optenv32/libusb-compat+32/autobuild/defines index 330032e7ed2..03d025ed1a0 100644 --- a/runtime-optenv32/libusb-compat+32/autobuild/defines +++ b/runtime-optenv32/libusb-compat+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libusb-compat+32 PKGSEC=libs -PKGDEP="libusb+32" +PKGDEP="aosc-aaa+32 libusb+32" BUILDDEP="devel-base+32" PKGDES="A compatibility layer needed by packages that have not been upgraded to the libusb-1.0 API (32-bit x86 runtime)" From 03039c263377f3c9e982d61a8f1c424107d394f7 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:20 +0800 Subject: [PATCH 622/722] libva+32: depend on aosc-aaa+32 --- runtime-optenv32/libva+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libva+32/autobuild/defines b/runtime-optenv32/libva+32/autobuild/defines index b1005c8806f..e8707c96a29 100644 --- a/runtime-optenv32/libva+32/autobuild/defines +++ b/runtime-optenv32/libva+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libva+32 PKGSEC=libs -PKGDEP="mesa+32 libdrm+32" +PKGDEP="aosc-aaa+32 mesa+32 libdrm+32" BUILDDEP="devel-base+32" PKGDES="Video Acceleration (VA) API for Linux (32-bit x86 runtime)" From eeff871734f90c57e14d81f97221e8af45b6dd42 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:20 +0800 Subject: [PATCH 623/722] libva-intel-driver+32: depend on aosc-aaa+32 --- runtime-optenv32/libva-intel-driver+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libva-intel-driver+32/autobuild/defines b/runtime-optenv32/libva-intel-driver+32/autobuild/defines index 7b355b675f3..98c0f8aa5a4 100644 --- a/runtime-optenv32/libva-intel-driver+32/autobuild/defines +++ b/runtime-optenv32/libva-intel-driver+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libva-intel-driver+32 PKGSEC=libs -PKGDEP="libva+32" +PKGDEP="aosc-aaa+32 libva+32" BUILDDEP="devel-base+32" PKGDES="VA-API implementation for Intel G45 and HD Graphics family (32-bit x86 runtime)" From b1ceb7c5d953dddad6ec09da31a18d131e4d2c07 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:20 +0800 Subject: [PATCH 624/722] libva-vdpau-driver+32: depend on aosc-aaa+32 --- runtime-optenv32/libva-vdpau-driver+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libva-vdpau-driver+32/autobuild/defines b/runtime-optenv32/libva-vdpau-driver+32/autobuild/defines index f183ca68d08..90b3729a681 100644 --- a/runtime-optenv32/libva-vdpau-driver+32/autobuild/defines +++ b/runtime-optenv32/libva-vdpau-driver+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libva-vdpau-driver+32 PKGSEC=libs -PKGDEP="libva+32 libvdpau+32" +PKGDEP="aosc-aaa+32 libva+32 libvdpau+32" BUILDDEP="devel-base+32" PKGDES="VDPAU backend for VA-API (32-bit x86 runtime)" From d8dc5132b1ce286ee97befd3c7b6f605e8dfa286 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:20 +0800 Subject: [PATCH 625/722] libvdpau+32: depend on aosc-aaa+32 --- runtime-optenv32/libvdpau+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libvdpau+32/autobuild/defines b/runtime-optenv32/libvdpau+32/autobuild/defines index 6ac2d34533b..eafd0016633 100644 --- a/runtime-optenv32/libvdpau+32/autobuild/defines +++ b/runtime-optenv32/libvdpau+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libvdpau+32 PKGSEC=libs -PKGDEP="x11-lib+32" +PKGDEP="aosc-aaa+32 x11-lib+32" BUILDDEP="devel-base+32" PKGDES="Video Decode and Presentation API for Unix, from NVIDIA (32-bit x86 runtime)" From 45ea36126fef673bc5b692baf02333dd12aaac2b Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:20 +0800 Subject: [PATCH 626/722] libvorbis+32: depend on aosc-aaa+32 --- runtime-optenv32/libvorbis+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libvorbis+32/autobuild/defines b/runtime-optenv32/libvorbis+32/autobuild/defines index 000ee2589ce..d01a1b51528 100644 --- a/runtime-optenv32/libvorbis+32/autobuild/defines +++ b/runtime-optenv32/libvorbis+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libvorbis+32 PKGSEC=libs -PKGDEP="libogg+32" +PKGDEP="aosc-aaa+32 libogg+32" BUILDDEP="devel-base+32" PKGDES="Vorbis codec library (32-bit x86 runtime)" From 6ac4d1232a0c22d7e0bbc341e97b471bd83df8ac Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:20 +0800 Subject: [PATCH 627/722] libvpx+32: depend on aosc-aaa+32 --- runtime-optenv32/libvpx+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libvpx+32/autobuild/defines b/runtime-optenv32/libvpx+32/autobuild/defines index c5c2edab80f..435d52d4f59 100644 --- a/runtime-optenv32/libvpx+32/autobuild/defines +++ b/runtime-optenv32/libvpx+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libvpx+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32 nasm" PKGDES="VPx (8, 9, 10) Video Codec SDK (32-bit x86 runtime)" From 59c70e733f0149bce193bdc8e1773e2835536131 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:21 +0800 Subject: [PATCH 628/722] libwebp+32: depend on aosc-aaa+32 --- runtime-optenv32/libwebp+32/autobuild/defines | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/runtime-optenv32/libwebp+32/autobuild/defines b/runtime-optenv32/libwebp+32/autobuild/defines index 4d8cde07264..72b5345818a 100644 --- a/runtime-optenv32/libwebp+32/autobuild/defines +++ b/runtime-optenv32/libwebp+32/autobuild/defines @@ -1,6 +1,7 @@ PKGNAME=libwebp+32 PKGSEC=libs -PKGDEP="libjpeg-turbo+32 libpng+32 libtiff+32 giflib+32 freeglut+32" +PKGDEP="aosc-aaa+32 libjpeg-turbo+32 libpng+32 libtiff+32 giflib+32 \ + freeglut+32" BUILDDEP="devel-base+32" PKGDES="Libraries and support programs to encode and decode images in WebP format (32-bit x86 runtime)" From e0bc398b150ba59b696651ae2049b90b46f93866 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:21 +0800 Subject: [PATCH 629/722] libxau+32: depend on aosc-aaa+32 --- runtime-optenv32/libxau+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libxau+32/autobuild/defines b/runtime-optenv32/libxau+32/autobuild/defines index 1e588c422bc..fe340ee76f2 100644 --- a/runtime-optenv32/libxau+32/autobuild/defines +++ b/runtime-optenv32/libxau+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libxau+32 PKGSEC=libs -PKGDEP="glibc+32 x11-proto+32" +PKGDEP="aosc-aaa+32 glibc+32 x11-proto+32" BUILDDEP="devel-base+32" PKGDES="X11 Authorization Library (32-bit x86 runtime)" From a603c28e96d0bd3202a9674d10771990536dc7f0 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:21 +0800 Subject: [PATCH 630/722] libxcb+32: depend on aosc-aaa+32 --- runtime-optenv32/libxcb+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libxcb+32/autobuild/defines b/runtime-optenv32/libxcb+32/autobuild/defines index 5a448b9419b..0b72449b090 100644 --- a/runtime-optenv32/libxcb+32/autobuild/defines +++ b/runtime-optenv32/libxcb+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libxcb+32 PKGSEC=libs -PKGDEP="glibc+32 xcb-proto libxau+32 libxdmcp+32 libxslt+32" +PKGDEP="aosc-aaa+32 glibc+32 xcb-proto libxau+32 libxdmcp+32 libxslt+32" BUILDDEP="devel-base+32" PKGDES="XCB library (32-bit x86 runtime)" From 3e8000bb1b9f016179ade9e1c4f554c7744def58 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:21 +0800 Subject: [PATCH 631/722] libxcrypt+32: depend on aosc-aaa+32 --- runtime-optenv32/libxcrypt+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libxcrypt+32/autobuild/defines b/runtime-optenv32/libxcrypt+32/autobuild/defines index d2456402089..b6dfd9324c5 100644 --- a/runtime-optenv32/libxcrypt+32/autobuild/defines +++ b/runtime-optenv32/libxcrypt+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libxcrypt+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" PKGDES="Library for one-way hashing of passwords (32-bit x86 runtime)" BUILDDEP="devel-base+32" ABHOST=optenv32 From f99612b7ea5f3fceec4bc80227bde6cefcd5896c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:21 +0800 Subject: [PATCH 632/722] libxdmcp+32: depend on aosc-aaa+32 --- runtime-optenv32/libxdmcp+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libxdmcp+32/autobuild/defines b/runtime-optenv32/libxdmcp+32/autobuild/defines index fb9dfc54cda..5d873d132a3 100644 --- a/runtime-optenv32/libxdmcp+32/autobuild/defines +++ b/runtime-optenv32/libxdmcp+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libxdmcp+32 PKGSEC=libs -PKGDEP="glibc+32 x11-proto+32" +PKGDEP="aosc-aaa+32 glibc+32 x11-proto+32" BUILDDEP="devel-base+32" PKGDES="The X Display Manager Control Protocol Library (32-bit x86 runtime)" From 547dedd6a31268dfec2f03b37726d40bf1acd835 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:21 +0800 Subject: [PATCH 633/722] libxkbcommon+32: depend on aosc-aaa+32 --- runtime-optenv32/libxkbcommon+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libxkbcommon+32/autobuild/defines b/runtime-optenv32/libxkbcommon+32/autobuild/defines index 64756f2692b..03a7539bcf7 100644 --- a/runtime-optenv32/libxkbcommon+32/autobuild/defines +++ b/runtime-optenv32/libxkbcommon+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libxkbcommon+32 PKGSEC=x11 -PKGDEP="libxcb+32 wayland+32 x11-lib+32" +PKGDEP="aosc-aaa+32 libxcb+32 wayland+32 x11-lib+32" BUILDDEP="devel-base+32" PKGDES="Keyboard handling library using XKB data for X11 XCB clients (32-bit x86 runtime)" From 0f5b2271ef3ea98bf9b5fe96238578486f5a6727 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:21 +0800 Subject: [PATCH 634/722] libxml2+32: depend on aosc-aaa+32 --- runtime-optenv32/libxml2+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libxml2+32/autobuild/defines b/runtime-optenv32/libxml2+32/autobuild/defines index b4ab76d8c62..45fa3ee16fb 100644 --- a/runtime-optenv32/libxml2+32/autobuild/defines +++ b/runtime-optenv32/libxml2+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libxml2+32 PKGSEC=libs -PKGDEP="glibc+32 zlib+32 readline+32 ncurses+32 xz+32" +PKGDEP="aosc-aaa+32 glibc+32 zlib+32 readline+32 ncurses+32 xz+32" BUILDDEP="devel-base+32" PKGDES="Utilities and libraries for parsing XMLs (32-bit x86 runtime)" From 4762a396815abf803ce9979c639d02af1c5f79fa Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:21 +0800 Subject: [PATCH 635/722] libxnvctrl+32: depend on aosc-aaa+32 --- runtime-optenv32/libxnvctrl+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libxnvctrl+32/autobuild/defines b/runtime-optenv32/libxnvctrl+32/autobuild/defines index f48c7751f22..97503635ff4 100644 --- a/runtime-optenv32/libxnvctrl+32/autobuild/defines +++ b/runtime-optenv32/libxnvctrl+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libxnvctrl+32 PKGSEC=libs -PKGDEP="x11-lib+32" +PKGDEP="aosc-aaa+32 x11-lib+32" BUILDDEP="devel-base+32" PKGDES="X extension for the NVIDIA NV-CONTROL API (32-bit x86 runtime)" From c1287ece7c5fb57fe67d2155041daed46114673e Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:21 +0800 Subject: [PATCH 636/722] libxslt+32: depend on aosc-aaa+32 --- runtime-optenv32/libxslt+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libxslt+32/autobuild/defines b/runtime-optenv32/libxslt+32/autobuild/defines index 75dccb46d54..6f2d34e83e2 100644 --- a/runtime-optenv32/libxslt+32/autobuild/defines +++ b/runtime-optenv32/libxslt+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libxslt+32 PKGSEC=libs -PKGDEP="glibc+32 libxml2+32 libgcrypt+32 python-2+32" +PKGDEP="aosc-aaa+32 glibc+32 libxml2+32 libgcrypt+32 python-2+32" BUILDDEP="devel-base+32" PKGDES="C library for eXtensible Stylesheet Language Transformations (XSLT) (32-bit x86 runtime)" From 71b7879441b779b65b5acb622610750b2f7ad32b Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:21 +0800 Subject: [PATCH 637/722] llvm+32: depend on aosc-aaa+32 --- runtime-optenv32/llvm+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/llvm+32/autobuild/defines b/runtime-optenv32/llvm+32/autobuild/defines index 5c498a06b19..4728a713b19 100644 --- a/runtime-optenv32/llvm+32/autobuild/defines +++ b/runtime-optenv32/llvm+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=llvm+32 PKGSEC=devel -PKGDEP="libffi+32 llvm zstd+32" +PKGDEP="aosc-aaa+32 libffi+32 llvm zstd+32" BUILDDEP="devel-base+32" PKGDES="Low Level Virtual Machine Infrastructure (32-bit x86 runtime)" From 08b72bcce4257ab37a68602556f82e559c2d9bc0 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:21 +0800 Subject: [PATCH 638/722] lm-sensors+32: depend on aosc-aaa+32 --- runtime-optenv32/lm-sensors+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/lm-sensors+32/autobuild/defines b/runtime-optenv32/lm-sensors+32/autobuild/defines index d1734c8ce72..e1b9deac228 100644 --- a/runtime-optenv32/lm-sensors+32/autobuild/defines +++ b/runtime-optenv32/lm-sensors+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=lm-sensors+32 PKGSEC=utils -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="Collection of userspace tools for general SMBus access and hardware monitoring (32-bit x86 runtime)" From 0f9ca6806fac5738bdf09fd182a8e394ba10b77b Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:21 +0800 Subject: [PATCH 639/722] lzo+32: depend on aosc-aaa+32 --- runtime-optenv32/lzo+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/lzo+32/autobuild/defines b/runtime-optenv32/lzo+32/autobuild/defines index 94d8f867f91..fcb59555e9b 100644 --- a/runtime-optenv32/lzo+32/autobuild/defines +++ b/runtime-optenv32/lzo+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=lzo+32 PKGSEC=utils -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="LZO compression library (32-bit x86 runtime)" From e3127e729e8737a12129bd06f85445b3213ce516 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:21 +0800 Subject: [PATCH 640/722] mangohud+32: depend on aosc-aaa+32 --- runtime-optenv32/mangohud+32/autobuild/defines | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/mangohud+32/autobuild/defines b/runtime-optenv32/mangohud+32/autobuild/defines index 845b22e2b62..dc682c486a2 100644 --- a/runtime-optenv32/mangohud+32/autobuild/defines +++ b/runtime-optenv32/mangohud+32/autobuild/defines @@ -1,7 +1,7 @@ PKGNAME=mangohud+32 PKGSEC=utils -PKGDEP="dbus+32 glslang+32 libglvnd+32 libxkbcommon+32 libxnvctrl+32 \ - mesa+32 wayland+32 x11-lib+32" +PKGDEP="aosc-aaa+32 dbus+32 glslang+32 libglvnd+32 libxkbcommon+32 \ + libxnvctrl+32 mesa+32 wayland+32 x11-lib+32" BUILDDEP="devel-base+32 mako nlohmann-json+32 vulkan-headers+32" PKGDES="A Vulkan and OpenGL overlay for monitoring FPS, temperatures, CPU/GPU load and more (32-bit x86 runtime)" From 715945fc854048904003b66c2fad69cd3986a82a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:21 +0800 Subject: [PATCH 641/722] mbedtls+32: depend on aosc-aaa+32 --- runtime-optenv32/mbedtls+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/mbedtls+32/autobuild/defines b/runtime-optenv32/mbedtls+32/autobuild/defines index 7d4bab69ee1..ff4286c59c1 100644 --- a/runtime-optenv32/mbedtls+32/autobuild/defines +++ b/runtime-optenv32/mbedtls+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=mbedtls+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="Portable cryptographic and SSL/TLS library (32-bit x86 runtime)" From d3a3d518bdc56fa90c7ac851f99bd7ef8b2184e1 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:21 +0800 Subject: [PATCH 642/722] mesa+32: depend on aosc-aaa+32 --- runtime-optenv32/mesa+32/autobuild/defines | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/mesa+32/autobuild/defines b/runtime-optenv32/mesa+32/autobuild/defines index b63dd882430..5456e7dd860 100644 --- a/runtime-optenv32/mesa+32/autobuild/defines +++ b/runtime-optenv32/mesa+32/autobuild/defines @@ -1,7 +1,7 @@ PKGNAME=mesa+32 PKGSEC=x11 -PKGDEP="llvm+32 x11-lib+32 libdrm+32 expat+32 eudev+32 elfutils+32 \ - libvdpau+32 libglvnd+32 libva+32 spirv-llvm-translator+32 \ +PKGDEP="aosc-aaa+32 llvm+32 x11-lib+32 libdrm+32 expat+32 eudev+32 \ + elfutils+32 libvdpau+32 libglvnd+32 libva+32 spirv-llvm-translator+32 \ libunwind+32 lm-sensors+32 wayland+32 libcl+32 libclc+32" BUILDDEP="devel-base+32 glslang mako pyyaml rust-bindgen rustc+32 \ spirv-tools+32 cbindgen" From 574daaba5dd20977a68827d18988baf9680b6d55 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:21 +0800 Subject: [PATCH 643/722] mjpegtools+32: depend on aosc-aaa+32 --- runtime-optenv32/mjpegtools+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/mjpegtools+32/autobuild/defines b/runtime-optenv32/mjpegtools+32/autobuild/defines index c80fec6594c..833f309c420 100644 --- a/runtime-optenv32/mjpegtools+32/autobuild/defines +++ b/runtime-optenv32/mjpegtools+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=mjpegtools+32 PKGSEC=utils -PKGDEP="libjpeg-turbo+32 libpng+32 sdl+32 libdv+32" +PKGDEP="aosc-aaa+32 libjpeg-turbo+32 libpng+32 sdl+32 libdv+32" BUILDDEP="devel-base+32" PKGDES="Tools for manipulating and playback of MPEG compressed media files (32-bit x86 runtime)" From 8050b0b74f701b262e3188d610e26e45baa99172 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:21 +0800 Subject: [PATCH 644/722] mp4v2+32: depend on aosc-aaa+32 --- runtime-optenv32/mp4v2+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/mp4v2+32/autobuild/defines b/runtime-optenv32/mp4v2+32/autobuild/defines index 12e5b05c2fc..737d30213fc 100644 --- a/runtime-optenv32/mp4v2+32/autobuild/defines +++ b/runtime-optenv32/mp4v2+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=mp4v2+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="Provides functions to read, create, and modify mp4 files (32-bit x86 runtime)" From 89b1f6f46b1fd0b4d99a451919af8cb274d359c9 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:21 +0800 Subject: [PATCH 645/722] mpc+32: depend on aosc-aaa+32 --- runtime-optenv32/mpc+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/mpc+32/autobuild/defines b/runtime-optenv32/mpc+32/autobuild/defines index 163a72e95b1..953983945ca 100644 --- a/runtime-optenv32/mpc+32/autobuild/defines +++ b/runtime-optenv32/mpc+32/autobuild/defines @@ -1,5 +1,5 @@ PKGNAME=mpc+32 -PKGDEP="gmp+32 mpfr+32" +PKGDEP="aosc-aaa+32 gmp+32 mpfr+32" PKGSEC=libs PKGDES="Library for the arithmetic of complex numbers (32-bit x86 runtime)" BUILDDEP="devel-base+32" From edec579645eb95e2982e8905382b5c88ed612088 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:22 +0800 Subject: [PATCH 646/722] mpfr+32: depend on aosc-aaa+32 --- runtime-optenv32/mpfr+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/mpfr+32/autobuild/defines b/runtime-optenv32/mpfr+32/autobuild/defines index 72f53e1d34f..cd256286753 100644 --- a/runtime-optenv32/mpfr+32/autobuild/defines +++ b/runtime-optenv32/mpfr+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=mpfr+32 PKGSEC=libs -PKGDEP="gmp+32 glibc+32" +PKGDEP="aosc-aaa+32 gmp+32 glibc+32" PKGDES="Functions for multiple precision math (32-bit x86 runtime)" BUILDDEP="devel-base+32" From dbccc75d268ae6dbb3c54d767e1d157964873c95 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:22 +0800 Subject: [PATCH 647/722] mpg123+32: depend on aosc-aaa+32 --- runtime-optenv32/mpg123+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/mpg123+32/autobuild/defines b/runtime-optenv32/mpg123+32/autobuild/defines index ba93bdc9ef6..730561e1030 100644 --- a/runtime-optenv32/mpg123+32/autobuild/defines +++ b/runtime-optenv32/mpg123+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=mpg123+32 PKGSEC=sound -PKGDEP="alsa-lib+32 libtool+32 pulseaudio+32" +PKGDEP="aosc-aaa+32 alsa-lib+32 libtool+32 pulseaudio+32" BUILDDEP="devel-base+32" PKGDES="A console-based MP3 player (32-bit x86 runtime)" From 5d97a93ff53ccae99d6f750ec3d8fd2126d08b36 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:22 +0800 Subject: [PATCH 648/722] nasm+32: depend on aosc-aaa+32 --- runtime-optenv32/nasm+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/nasm+32/autobuild/defines b/runtime-optenv32/nasm+32/autobuild/defines index b49ad029042..c6443bbe0d6 100644 --- a/runtime-optenv32/nasm+32/autobuild/defines +++ b/runtime-optenv32/nasm+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=nasm+32 PKGSEC=devel -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="An 80x86 assembler designed for portability and modularity (32-bit x86 runtime)" From 2f3b55d8de6cd0d6ed9ba8da839b2a10b9d1cf0b Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:22 +0800 Subject: [PATCH 649/722] ncurses+32: depend on aosc-aaa+32 --- runtime-optenv32/ncurses+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/ncurses+32/autobuild/defines b/runtime-optenv32/ncurses+32/autobuild/defines index f2a52b985fc..bab2513d91c 100644 --- a/runtime-optenv32/ncurses+32/autobuild/defines +++ b/runtime-optenv32/ncurses+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=ncurses+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="System V Release 4.0 curses emulation library (32-bit x86 runtime)" From 0e717c65191e0a03fbd5f4a9ebba4d1ab59922f4 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:22 +0800 Subject: [PATCH 650/722] neon+32: depend on aosc-aaa+32 --- runtime-optenv32/neon+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/neon+32/autobuild/defines b/runtime-optenv32/neon+32/autobuild/defines index edd69e7c307..bcdba9a519a 100644 --- a/runtime-optenv32/neon+32/autobuild/defines +++ b/runtime-optenv32/neon+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=neon+32 PKGSEC=libs -PKGDEP="expat+32 krb5+32 ca-certs" +PKGDEP="aosc-aaa+32 expat+32 krb5+32 ca-certs" BUILDDEP="devel-base+32" PKGDES="An HTTP and WebDAV client library, with a C interface (32-bit x86 runtime)" From 4465b49efbb7d28feab6bb7c0780fdf7884fbdcb Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:22 +0800 Subject: [PATCH 651/722] nettle+32: depend on aosc-aaa+32 --- runtime-optenv32/nettle+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/nettle+32/autobuild/defines b/runtime-optenv32/nettle+32/autobuild/defines index 2d533ffef27..48dd049a97f 100644 --- a/runtime-optenv32/nettle+32/autobuild/defines +++ b/runtime-optenv32/nettle+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=nettle+32 PKGSEC=libs -PKGDEP="gmp+32" +PKGDEP="aosc-aaa+32 gmp+32" BUILDDEP="devel-base+32" PKGDES="Low-level cryptographic library (32-bit x86 runtime)" From 6b004fa858d2988e5ef7974744c4df7db69c8584 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:22 +0800 Subject: [PATCH 652/722] nlohmann-json+32: depend on aosc-aaa+32 --- runtime-optenv32/nlohmann-json+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/nlohmann-json+32/autobuild/defines b/runtime-optenv32/nlohmann-json+32/autobuild/defines index d63b6d5d807..cb00b77f28d 100644 --- a/runtime-optenv32/nlohmann-json+32/autobuild/defines +++ b/runtime-optenv32/nlohmann-json+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=nlohmann-json+32 PKGSEC=libs -PKGDEP="nlohmann-json" +PKGDEP="aosc-aaa+32 nlohmann-json" PKGDES="JSON for Modern C++ (32-bit x86 runtime)" ABHOST=optenv32 From 64d9f53fff609e92d02e9e5cadbc43f833eb701b Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:22 +0800 Subject: [PATCH 653/722] nspr+32: depend on aosc-aaa+32 --- runtime-optenv32/nspr+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/nspr+32/autobuild/defines b/runtime-optenv32/nspr+32/autobuild/defines index 4176259218a..0c00c3bafff 100644 --- a/runtime-optenv32/nspr+32/autobuild/defines +++ b/runtime-optenv32/nspr+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=nspr+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="Netscape Portable Runtime (32-bit x86 runtime)" From 3e3139f236c5a34edc2740ba5c1324c6921d83b2 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:22 +0800 Subject: [PATCH 654/722] nss+32: depend on aosc-aaa+32 --- runtime-optenv32/nss+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/nss+32/autobuild/defines b/runtime-optenv32/nss+32/autobuild/defines index ce0ad4f2009..0bcaa61e3e1 100644 --- a/runtime-optenv32/nss+32/autobuild/defines +++ b/runtime-optenv32/nss+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=nss+32 PKGSEC=libs -PKGDEP="nspr+32 sqlite+32 zlib+32 p11-kit+32" +PKGDEP="aosc-aaa+32 nspr+32 sqlite+32 zlib+32 p11-kit+32" BUILDDEP="devel-base+32" PKGDES="Netscape security library (32-bit x86 runtime)" From f83a8ef89f0311fe965d735c17c395805da3afdd Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:22 +0800 Subject: [PATCH 655/722] openal-soft+32: depend on aosc-aaa+32 --- runtime-optenv32/openal-soft+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/openal-soft+32/autobuild/defines b/runtime-optenv32/openal-soft+32/autobuild/defines index 1293fa0c38a..76ba46c8a8e 100644 --- a/runtime-optenv32/openal-soft+32/autobuild/defines +++ b/runtime-optenv32/openal-soft+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=openal-soft+32 PKGSEC=libs -PKGDEP="glibc+32 libsndfile+32" +PKGDEP="aosc-aaa+32 glibc+32 libsndfile+32" BUILDDEP="devel-base+32" PKGDES="A cross platform 3D audio library (32-bit x86 runtime)" From c5d6f23bbe66e48d435bca29af2727669a162a39 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:22 +0800 Subject: [PATCH 656/722] opencl-registry-api+32: depend on aosc-aaa+32 --- runtime-optenv32/opencl-registry-api+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/opencl-registry-api+32/autobuild/defines b/runtime-optenv32/opencl-registry-api+32/autobuild/defines index f9007ec1750..de2456b8c0b 100644 --- a/runtime-optenv32/opencl-registry-api+32/autobuild/defines +++ b/runtime-optenv32/opencl-registry-api+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=opencl-registry-api+32 PKGSEC=libs -PKGDEP="opencl-registry-api" +PKGDEP="aosc-aaa+32 opencl-registry-api" PKGDES="OpenCL (Open Computing Language) header files (32-bit x86 runtime)" ABHOST=optenv32 From 12b2db87c91ea01948e556345c47df492fbaaeb2 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:22 +0800 Subject: [PATCH 657/722] opencore-amr+32: depend on aosc-aaa+32 --- runtime-optenv32/opencore-amr+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/opencore-amr+32/autobuild/defines b/runtime-optenv32/opencore-amr+32/autobuild/defines index a76b89aa8a3..0248ab841ee 100644 --- a/runtime-optenv32/opencore-amr+32/autobuild/defines +++ b/runtime-optenv32/opencore-amr+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=opencore-amr+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="Open source implementation of the Adaptive Multi Rate (AMR) speech codec (32-bit x86 runtime)" From ae91e535baac98c448e7925f91352c3f34b1b0d3 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:22 +0800 Subject: [PATCH 658/722] openjpeg-legacy+32: depend on aosc-aaa+32 --- runtime-optenv32/openjpeg-legacy+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/openjpeg-legacy+32/autobuild/defines b/runtime-optenv32/openjpeg-legacy+32/autobuild/defines index 5e8a0e19868..9cd6475da64 100644 --- a/runtime-optenv32/openjpeg-legacy+32/autobuild/defines +++ b/runtime-optenv32/openjpeg-legacy+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=openjpeg-legacy+32 PKGSEC=libs -PKGDEP="zlib+32 lcms2+32 libpng+32" +PKGDEP="aosc-aaa+32 zlib+32 lcms2+32 libpng+32" BUILDDEP="devel-base+32" PKGDES="An open source JPEG 2000 codec (legacy 1.x, 32-bit x86 runtime)" From bc254fb11b5cd64dd5363e530fd7c99ae2e00bb8 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:22 +0800 Subject: [PATCH 659/722] openldap+32: depend on aosc-aaa+32 --- runtime-optenv32/openldap+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/openldap+32/autobuild/defines b/runtime-optenv32/openldap+32/autobuild/defines index 0255ba5699c..6a1bfee2bff 100644 --- a/runtime-optenv32/openldap+32/autobuild/defines +++ b/runtime-optenv32/openldap+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=openldap+32 PKGSEC=net -PKGDEP="openssl+32" +PKGDEP="aosc-aaa+32 openssl+32" BUILDDEP="devel-base+32" PKGDES="Lightweight Directory Access Protocol (LDAP) client/server (32-bit x86 runtime)" From ecd65b521bc6c371d9d5fa2700056af5d658ec86 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:22 +0800 Subject: [PATCH 660/722] openssl+32: depend on aosc-aaa+32 --- runtime-optenv32/openssl+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/openssl+32/autobuild/defines b/runtime-optenv32/openssl+32/autobuild/defines index ddbdf7af1a7..414f185107b 100644 --- a/runtime-optenv32/openssl+32/autobuild/defines +++ b/runtime-optenv32/openssl+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=openssl+32 PKGSEC=libs -PKGDEP="glibc+32 zlib+32 ca-certs" +PKGDEP="aosc-aaa+32 glibc+32 zlib+32 ca-certs" BUILDDEP="devel-base+32" PKGDES="Open Source toolkit for Secure Sockets Layer and Transport Layer Security (32-bit x86 runtime)" From d48d5a997a363c5b3b9c25a1b2ef1527801b63c8 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:22 +0800 Subject: [PATCH 661/722] openssl-1.1+32: depend on aosc-aaa+32 --- runtime-optenv32/openssl-1.1+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/openssl-1.1+32/autobuild/defines b/runtime-optenv32/openssl-1.1+32/autobuild/defines index 1291568a255..b17e2276fa2 100644 --- a/runtime-optenv32/openssl-1.1+32/autobuild/defines +++ b/runtime-optenv32/openssl-1.1+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=openssl-1.1+32 PKGSEC=libs -PKGDEP="ca-certs glibc+32 zlib+32" +PKGDEP="aosc-aaa+32 ca-certs glibc+32 zlib+32" BUILDDEP="devel-base+32" PKGDES="Open Source toolkit for Secure Sockets Layer and Transport Layer Security (1.1, 32-bit x86 runtime)" From 302c9b435be956f012aa5460e44737b9d7ee204f Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:22 +0800 Subject: [PATCH 662/722] opus+32: depend on aosc-aaa+32 --- runtime-optenv32/opus+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/opus+32/autobuild/defines b/runtime-optenv32/opus+32/autobuild/defines index 4d63c5c59f4..87bb1c28c8f 100644 --- a/runtime-optenv32/opus+32/autobuild/defines +++ b/runtime-optenv32/opus+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=opus+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="Codec designed for interactive speech and audio transmission over the Internet (32-bit x86 runtime)" From 26a9294a8dba0f01e292a993a03d70d3f9284e7d Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:22 +0800 Subject: [PATCH 663/722] orc+32: depend on aosc-aaa+32 --- runtime-optenv32/orc+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/orc+32/autobuild/defines b/runtime-optenv32/orc+32/autobuild/defines index a971187aae8..62fd115b659 100644 --- a/runtime-optenv32/orc+32/autobuild/defines +++ b/runtime-optenv32/orc+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=orc+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="The Oild Runtime Compiler (32-bit x86 runtime)" From 973f6c9843bc76fa1ea1023b50b47ae334b2aed3 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:22 +0800 Subject: [PATCH 664/722] p11-kit+32: depend on aosc-aaa+32 --- runtime-optenv32/p11-kit+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/p11-kit+32/autobuild/defines b/runtime-optenv32/p11-kit+32/autobuild/defines index 71195dbcc0d..9fe0020b04a 100644 --- a/runtime-optenv32/p11-kit+32/autobuild/defines +++ b/runtime-optenv32/p11-kit+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=p11-kit+32 PKGSEC=libs -PKGDEP="ca-certs libffi+32 libtasn1+32" +PKGDEP="aosc-aaa+32 ca-certs libffi+32 libtasn1+32" BUILDDEP="devel-base+32" PKGDES="A way to load and enumerate PKCS #11 (a Cryptographic Token Interface Standard) modules (32-bit x86 runtime)" From 30384e703a9b2203ce5e2b2e2236b9cf579ec332 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:23 +0800 Subject: [PATCH 665/722] pango+32: depend on aosc-aaa+32 --- runtime-optenv32/pango+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/pango+32/autobuild/defines b/runtime-optenv32/pango+32/autobuild/defines index 03a1d32d50a..2724fcec3ef 100644 --- a/runtime-optenv32/pango+32/autobuild/defines +++ b/runtime-optenv32/pango+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=pango+32 PKGSEC=libs -PKGDEP="cairo+32 fribidi+32 harfbuzz+32 libthai+32 x11-lib+32" +PKGDEP="aosc-aaa+32 cairo+32 fribidi+32 harfbuzz+32 libthai+32 x11-lib+32" BUILDDEP="devel-base+32" PKGDES="System for layout and rendering of internationalized text (32-bit x86 runtime)" From e71c9a9352b90c49720204756b67c6defcd2ad3c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:23 +0800 Subject: [PATCH 666/722] pcre+32: depend on aosc-aaa+32 --- runtime-optenv32/pcre+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/pcre+32/autobuild/defines b/runtime-optenv32/pcre+32/autobuild/defines index 518687e9c19..9cfa0622dd8 100644 --- a/runtime-optenv32/pcre+32/autobuild/defines +++ b/runtime-optenv32/pcre+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=pcre+32 PKGSEC=libs -PKGDEP="zlib+32 bzip2+32 readline+32 glibc+32" +PKGDEP="aosc-aaa+32 zlib+32 bzip2+32 readline+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="Perl Compatible Regular Expression (32-bit x86 runtime)" From 4000e25a7f0b419da7536dc4d45e1e4cd69f951d Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:23 +0800 Subject: [PATCH 667/722] pcre2+32: depend on aosc-aaa+32 --- runtime-optenv32/pcre2+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/pcre2+32/autobuild/defines b/runtime-optenv32/pcre2+32/autobuild/defines index 654b33c544c..d8e603b39d0 100644 --- a/runtime-optenv32/pcre2+32/autobuild/defines +++ b/runtime-optenv32/pcre2+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=pcre2+32 PKGSEC=libs -PKGDEP="bzip2+32 readline+32 zlib+32" +PKGDEP="aosc-aaa+32 bzip2+32 readline+32 zlib+32" BUILDDEP="devel-base+32" PKGDES="Perl Compatible Regular Expression (2nd Edition, 32-bit x86 runtime)" From dba08f7b7d45bf3e84224356067008cac121f8d1 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:23 +0800 Subject: [PATCH 668/722] pixman+32: depend on aosc-aaa+32 --- runtime-optenv32/pixman+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/pixman+32/autobuild/defines b/runtime-optenv32/pixman+32/autobuild/defines index 014ac3fd2fb..c6b0a95cd28 100644 --- a/runtime-optenv32/pixman+32/autobuild/defines +++ b/runtime-optenv32/pixman+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=pixman+32 PKGSEC=libs -PKGDEP="glibc+32 libpng+32" +PKGDEP="aosc-aaa+32 glibc+32 libpng+32" BUILDDEP="devel-base+32" PKGDES="Pixel manipulation library for X and Cairo (32-bit x86 runtime)" From 2901c70f7c35f00291a15e2c368fda6369161826 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:23 +0800 Subject: [PATCH 669/722] popt+32: depend on aosc-aaa+32 --- runtime-optenv32/popt+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/popt+32/autobuild/defines b/runtime-optenv32/popt+32/autobuild/defines index 37358412da6..0bd80d5c9f7 100644 --- a/runtime-optenv32/popt+32/autobuild/defines +++ b/runtime-optenv32/popt+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=popt+32 PKGSEC=utils -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="A command line option parser (32-bit x86 runtime)" From da651f571f54d35957cc8a0741ea3c4e8b177be5 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:23 +0800 Subject: [PATCH 670/722] portaudio+32: depend on aosc-aaa+32 --- runtime-optenv32/portaudio+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/portaudio+32/autobuild/defines b/runtime-optenv32/portaudio+32/autobuild/defines index c008c1f6cea..94bbd6f8dd7 100644 --- a/runtime-optenv32/portaudio+32/autobuild/defines +++ b/runtime-optenv32/portaudio+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=portaudio+32 PKGSEC=sound -PKGDEP="alsa-lib+32" +PKGDEP="aosc-aaa+32 alsa-lib+32" BUILDDEP="devel-base+32" PKGDES="A free, cross platform, open source audio I/O library (32-bit x86 runtime)" From 06e168ff9de5d2c5df883898319a3448efbf1634 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:23 +0800 Subject: [PATCH 671/722] proxychains-ng+32: depend on aosc-aaa+32 --- runtime-optenv32/proxychains-ng+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/proxychains-ng+32/autobuild/defines b/runtime-optenv32/proxychains-ng+32/autobuild/defines index e735ea2aa2a..7986ce94bb5 100644 --- a/runtime-optenv32/proxychains-ng+32/autobuild/defines +++ b/runtime-optenv32/proxychains-ng+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=proxychains-ng+32 PKGSEC=net -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="A hook preloader that allows redirecting TCP traffics of existing dynamically linked programs through one or more SOCKS or HTTP proxies (32-bit x86 runtime)" From a0f59ec0af7b0c361c6ddb3bf68bd88f43daf1a4 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:23 +0800 Subject: [PATCH 672/722] pulseaudio+32: depend on aosc-aaa+32 --- runtime-optenv32/pulseaudio+32/autobuild/defines | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/pulseaudio+32/autobuild/defines b/runtime-optenv32/pulseaudio+32/autobuild/defines index c15d739bbc9..2e27011de1c 100644 --- a/runtime-optenv32/pulseaudio+32/autobuild/defines +++ b/runtime-optenv32/pulseaudio+32/autobuild/defines @@ -1,7 +1,8 @@ PKGNAME=pulseaudio+32 PKGSEC=sound -PKGDEP="alsa-lib+32 dbus+32 eudev+32 gdbm+32 json-c+32 libasyncns+32 \ - libcap+32 libsndfile+32 libtool+32 libxcb+32 openssl+32 x11-lib+32" +PKGDEP="aosc-aaa+32 alsa-lib+32 dbus+32 eudev+32 gdbm+32 json-c+32 \ + libasyncns+32 libcap+32 libsndfile+32 libtool+32 libxcb+32 \ + openssl+32 x11-lib+32" BUILDDEP="devel-base+32" PKGDES="A featureful, general-purpose sound server (32-bit x86 runtime)" From 63f873caa7017ed65b7c0c25b6aa02fb95d6e0bc Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:23 +0800 Subject: [PATCH 673/722] readline+32: depend on aosc-aaa+32 --- runtime-optenv32/readline+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/readline+32/autobuild/defines b/runtime-optenv32/readline+32/autobuild/defines index 12e1fb50ba4..fceaa836a4c 100644 --- a/runtime-optenv32/readline+32/autobuild/defines +++ b/runtime-optenv32/readline+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=readline+32 PKGSEC=libs -PKGDEP="glibc+32 ncurses+32" +PKGDEP="aosc-aaa+32 glibc+32 ncurses+32" BUILDDEP="devel-base+32" PKGDES="GNU readline library (32-bit x86 runtime)" From 789ffaa936d74621ea20da27c2a877f64b32f493 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:23 +0800 Subject: [PATCH 674/722] recode+32: depend on aosc-aaa+32 --- runtime-optenv32/recode+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/recode+32/autobuild/defines b/runtime-optenv32/recode+32/autobuild/defines index 608749727f9..5fd62479973 100644 --- a/runtime-optenv32/recode+32/autobuild/defines +++ b/runtime-optenv32/recode+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=recode+32 PKGSEC=utils -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="Converts file between various character sets and usages (32-bit x86 runtime)" From 393ceb2cf8d78814ea885e4e0d4f4a58054602a9 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:23 +0800 Subject: [PATCH 675/722] rtmpdump+32: depend on aosc-aaa+32 --- runtime-optenv32/rtmpdump+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/rtmpdump+32/autobuild/defines b/runtime-optenv32/rtmpdump+32/autobuild/defines index 86d5ba5dbf1..1cba400a786 100644 --- a/runtime-optenv32/rtmpdump+32/autobuild/defines +++ b/runtime-optenv32/rtmpdump+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=rtmpdump+32 PKGSEC=libs -PKGDEP="openssl+32" +PKGDEP="aosc-aaa+32 openssl+32" BUILDDEP="devel-base+32" PKGDES="A tool to download RTMP streams (32-bit x86 runtime)" From c4af3e1f63d8746267c4eba51117578d161515e9 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:23 +0800 Subject: [PATCH 676/722] rustc+32: depend on aosc-aaa+32 --- runtime-optenv32/rustc+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/rustc+32/autobuild/defines b/runtime-optenv32/rustc+32/autobuild/defines index a5e17d25f53..bfd70a82d15 100644 --- a/runtime-optenv32/rustc+32/autobuild/defines +++ b/runtime-optenv32/rustc+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=rustc+32 PKGSEC=devel -PKGDEP="gcc+32 llvm+32 rustc" +PKGDEP="aosc-aaa+32 gcc+32 llvm+32 rustc" BUILDDEP="devel-base+32" PKGDES="General purpose, multi-paradigm programming language (compiler and runtime, 32-bit x86 runtime)" From 06e737a94025348437b283d239ca97106cf7caf3 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:23 +0800 Subject: [PATCH 677/722] s2tc+32: depend on aosc-aaa+32 --- runtime-optenv32/s2tc+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/s2tc+32/autobuild/defines b/runtime-optenv32/s2tc+32/autobuild/defines index f901317a8ac..a693f78c3ca 100644 --- a/runtime-optenv32/s2tc+32/autobuild/defines +++ b/runtime-optenv32/s2tc+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=s2tc+32 PKGSEC=libs -PKGDEP="mesa+32" +PKGDEP="aosc-aaa+32 mesa+32" BUILDDEP="devel-base+32" PKGDES="S2TC texture compress library (32-bit x86 runtime)" From 927473af125d42b3e61c50b294a3822cf9bd52b5 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:23 +0800 Subject: [PATCH 678/722] sbc+32: depend on aosc-aaa+32 --- runtime-optenv32/sbc+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/sbc+32/autobuild/defines b/runtime-optenv32/sbc+32/autobuild/defines index dbd2aec8178..f3c7b39f206 100644 --- a/runtime-optenv32/sbc+32/autobuild/defines +++ b/runtime-optenv32/sbc+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=sbc+32 PKGSEC=libs -PKGDEP="glibc+32 libsndfile+32" +PKGDEP="aosc-aaa+32 glibc+32 libsndfile+32" BUILDDEP="devel-base+32" PKGDES="Bluetooth SubBand Codec (SBC) library (32-bit x86 runtime)" From 97fb7e95d820cde8d58755cafe8c5fc122882f75 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:23 +0800 Subject: [PATCH 679/722] schroedinger+32: depend on aosc-aaa+32 --- runtime-optenv32/schroedinger+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/schroedinger+32/autobuild/defines b/runtime-optenv32/schroedinger+32/autobuild/defines index 4fd38ca2506..664cef215d4 100644 --- a/runtime-optenv32/schroedinger+32/autobuild/defines +++ b/runtime-optenv32/schroedinger+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=schroedinger+32 PKGSEC=libs -PKGDEP="orc+32" +PKGDEP="aosc-aaa+32 orc+32" BUILDDEP="devel-base+32 gtk-doc" PKGDES="An implementation of the Dirac video codec in ANSI C code (32-bit x86 runtime)" From 21e0332513a0bfc9dfe0e58918025206588d5dc6 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:23 +0800 Subject: [PATCH 680/722] sdl+32: depend on aosc-aaa+32 --- runtime-optenv32/sdl+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/sdl+32/autobuild/defines b/runtime-optenv32/sdl+32/autobuild/defines index 31f01f82205..107deb945f3 100644 --- a/runtime-optenv32/sdl+32/autobuild/defines +++ b/runtime-optenv32/sdl+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=sdl+32 PKGSEC=libs -PKGDEP="x11-lib+32 alsa-lib+32" +PKGDEP="aosc-aaa+32 x11-lib+32 alsa-lib+32" BUILDDEP="devel-base+32 nasm" PKGDES="Simple Directmedia Layer (32-bit x86 runtime)" From 417f7adc413f1e5e32368c000c3edafd70be67c1 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:23 +0800 Subject: [PATCH 681/722] sdl-ttf+32: depend on aosc-aaa+32 --- runtime-optenv32/sdl-ttf+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/sdl-ttf+32/autobuild/defines b/runtime-optenv32/sdl-ttf+32/autobuild/defines index 310501e3dbe..d9386e44d92 100644 --- a/runtime-optenv32/sdl-ttf+32/autobuild/defines +++ b/runtime-optenv32/sdl-ttf+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=sdl-ttf+32 PKGSEC=libs -PKGDEP="sdl+32 freetype+32" +PKGDEP="aosc-aaa+32 sdl+32 freetype+32" BUILDDEP="devel-base+32" PKGDES="A library that allows you to use TrueType fonts in your SDL applications (32-bit x86 runtime)" From 2b6a33f1938fb9587f2924996d7cde4b47fe8b99 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:23 +0800 Subject: [PATCH 682/722] sdl2+32: depend on aosc-aaa+32 --- runtime-optenv32/sdl2+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/sdl2+32/autobuild/defines b/runtime-optenv32/sdl2+32/autobuild/defines index 3ded7fa2249..f41c59c9779 100644 --- a/runtime-optenv32/sdl2+32/autobuild/defines +++ b/runtime-optenv32/sdl2+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=sdl2+32 PKGSEC=x11 -PKGDEP="glibc+32 libxkbcommon+32 mesa+32 tslib+32 x11-lib+32" +PKGDEP="aosc-aaa+32 glibc+32 libxkbcommon+32 mesa+32 tslib+32 x11-lib+32" BUILDDEP="devel-base+32 alsa-lib+32 pulseaudio+32 wayland+32" PKGDES="A library for portable low-level access to a video framebuffer, audio output, mouse, and keyboard (Version 2, 32-bit x86 runtime)" From a2e3ef5eb09a82adf11986e2ad727d26a28d2814 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:24 +0800 Subject: [PATCH 683/722] shared-mime-info+32: depend on aosc-aaa+32 --- runtime-optenv32/shared-mime-info+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/shared-mime-info+32/autobuild/defines b/runtime-optenv32/shared-mime-info+32/autobuild/defines index bd49c8b0a7c..a92b0d3e8c2 100644 --- a/runtime-optenv32/shared-mime-info+32/autobuild/defines +++ b/runtime-optenv32/shared-mime-info+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=shared-mime-info+32 PKGSEC=misc -PKGDEP="glib+32 libxml2+32 shared-mime-info" +PKGDEP="aosc-aaa+32 glib+32 libxml2+32 shared-mime-info" BUILDDEP="devel-base+32" PKGDES="Freedesktop.org shared MIME info (32-bit x86 runtime)" From a027d33e082c158ec0cc409e52343121e5047b0a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:24 +0800 Subject: [PATCH 684/722] smpeg+32: depend on aosc-aaa+32 --- runtime-optenv32/smpeg+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/smpeg+32/autobuild/defines b/runtime-optenv32/smpeg+32/autobuild/defines index 3dd8b39ead5..9b6ce1d3091 100644 --- a/runtime-optenv32/smpeg+32/autobuild/defines +++ b/runtime-optenv32/smpeg+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=smpeg+32 PKGSEC=x11 -PKGDEP="sdl+32" +PKGDEP="aosc-aaa+32 sdl+32" BUILDDEP="devel-base+32" PKGDES="SDL MPEG Player Library (32-bit x86 runtime)" From e7351c59fbc9bdc2054894c33c3c332f05de2bb1 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:24 +0800 Subject: [PATCH 685/722] soundtouch+32: depend on aosc-aaa+32 --- runtime-optenv32/soundtouch+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/soundtouch+32/autobuild/defines b/runtime-optenv32/soundtouch+32/autobuild/defines index cba9114c7ac..dbb5f965142 100644 --- a/runtime-optenv32/soundtouch+32/autobuild/defines +++ b/runtime-optenv32/soundtouch+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=soundtouch+32 PKGSEC=libs -PKGDEP="gcc+32" +PKGDEP="aosc-aaa+32 gcc+32" BUILDDEP="devel-base+32" PKGDES="An audio processing library (32-bit x86 runtime)" From b32cbf515deb71db4bdeec7f90f76963fb157da7 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:24 +0800 Subject: [PATCH 686/722] soxr+32: depend on aosc-aaa+32 --- runtime-optenv32/soxr+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/soxr+32/autobuild/defines b/runtime-optenv32/soxr+32/autobuild/defines index 44e84d297c8..1a74a8ae6b2 100644 --- a/runtime-optenv32/soxr+32/autobuild/defines +++ b/runtime-optenv32/soxr+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=soxr+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="A library that aims to give fast and high quality results for any constant resampling ratio (32-bit x86 runtime)" From 2a486260316974d693cf1d9285af4f8393a8aa36 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:24 +0800 Subject: [PATCH 687/722] speex+32: depend on aosc-aaa+32 --- runtime-optenv32/speex+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/speex+32/autobuild/defines b/runtime-optenv32/speex+32/autobuild/defines index b389352ac6c..db1f9d108ce 100644 --- a/runtime-optenv32/speex+32/autobuild/defines +++ b/runtime-optenv32/speex+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=speex+32 PKGSEC=libs -PKGDEP="libogg+32" +PKGDEP="aosc-aaa+32 libogg+32" BUILDDEP="devel-base+32" PKGDES="An audio compression format designed especially for speech (32-bit x86 runtime)" From 33a31ca65ea898f474a1a804ca2950c867641506 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:24 +0800 Subject: [PATCH 688/722] spirv-llvm-translator+32: depend on aosc-aaa+32 --- runtime-optenv32/spirv-llvm-translator+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/spirv-llvm-translator+32/autobuild/defines b/runtime-optenv32/spirv-llvm-translator+32/autobuild/defines index 8e71fe125f1..396f134a16d 100644 --- a/runtime-optenv32/spirv-llvm-translator+32/autobuild/defines +++ b/runtime-optenv32/spirv-llvm-translator+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=spirv-llvm-translator+32 PKGSEC=devel -PKGDEP="llvm+32" +PKGDEP="aosc-aaa+32 llvm+32" BUILDDEP="spirv-tools+32 spirv-headers" PKGDES="A tool and a library for bi-directional translation between SPIR-V and LLVM IR (32-bit x86 runtime)" From b84c86c2a8b39de911e306695379e6cf1db11181 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:24 +0800 Subject: [PATCH 689/722] spirv-tools+32: depend on aosc-aaa+32 --- runtime-optenv32/spirv-tools+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/spirv-tools+32/autobuild/defines b/runtime-optenv32/spirv-tools+32/autobuild/defines index 46cfce52de3..8f6a38f42ee 100644 --- a/runtime-optenv32/spirv-tools+32/autobuild/defines +++ b/runtime-optenv32/spirv-tools+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=spirv-tools+32 PKGSEC=libs -PKGDEP="gcc+32 spirv-headers" +PKGDEP="aosc-aaa+32 gcc+32 spirv-headers" BUILDDEP="python-3" PKGDES="API and commands for processing SPIR-V modules (32-bit x86 runtime)" From f89dfc2a283efa7f07f198419d8669a567b24c34 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:24 +0800 Subject: [PATCH 690/722] sqlite+32: depend on aosc-aaa+32 --- runtime-optenv32/sqlite+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/sqlite+32/autobuild/defines b/runtime-optenv32/sqlite+32/autobuild/defines index 67bba630476..55b55584446 100644 --- a/runtime-optenv32/sqlite+32/autobuild/defines +++ b/runtime-optenv32/sqlite+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=sqlite+32 PKGSEC=database -PKGDEP="readline+32 tcl+32" +PKGDEP="aosc-aaa+32 readline+32 tcl+32" BUILDDEP="devel-base+32" PKGDES="A full-featured and self-contained SQL database engine (32-bit x86 runtime)" From 9cb56319e605e091eee3bfd0d8f888349817989c Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:24 +0800 Subject: [PATCH 691/722] taglib+32: depend on aosc-aaa+32 --- runtime-optenv32/taglib+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/taglib+32/autobuild/defines b/runtime-optenv32/taglib+32/autobuild/defines index 03a1fe12cf4..8c5ed52b926 100644 --- a/runtime-optenv32/taglib+32/autobuild/defines +++ b/runtime-optenv32/taglib+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=taglib+32 PKGSEC=libs -PKGDEP="zlib+32" +PKGDEP="aosc-aaa+32 zlib+32" BUILDDEP="devel-base+32" PKGDES="Library for reading and editing the meta-data of several popular audio formats (32-bit x86 runtime)" From 340ea5053dd55bf4558f1c7e66b28ae2ce3c4f9d Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:24 +0800 Subject: [PATCH 692/722] tcl+32: depend on aosc-aaa+32 --- runtime-optenv32/tcl+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/tcl+32/autobuild/defines b/runtime-optenv32/tcl+32/autobuild/defines index 722095deb3d..49c228c5987 100644 --- a/runtime-optenv32/tcl+32/autobuild/defines +++ b/runtime-optenv32/tcl+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=tcl+32 PKGSEC=devel -PKGDEP="zlib+32" +PKGDEP="aosc-aaa+32 zlib+32" BUILDDEP="devel-base+32" PKGDES="Tool Command Lanuage (32-bit x86 runtime)" From d7dd2d2c8c095896d946dab1eada33ab4c540d23 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:24 +0800 Subject: [PATCH 693/722] tslib+32: depend on aosc-aaa+32 --- runtime-optenv32/tslib+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/tslib+32/autobuild/defines b/runtime-optenv32/tslib+32/autobuild/defines index 9750ccf35e1..88cd346f5de 100644 --- a/runtime-optenv32/tslib+32/autobuild/defines +++ b/runtime-optenv32/tslib+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=tslib+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="Touchscreen access library (32-bit x86 runtime)" From 0aad6f11c0fcd32e99bd74144f8a4fecf7602a01 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:24 +0800 Subject: [PATCH 694/722] twolame+32: depend on aosc-aaa+32 --- runtime-optenv32/twolame+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/twolame+32/autobuild/defines b/runtime-optenv32/twolame+32/autobuild/defines index 20de640addc..ec8ee7f5b9b 100644 --- a/runtime-optenv32/twolame+32/autobuild/defines +++ b/runtime-optenv32/twolame+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=twolame+32 PKGSEC=libs -PKGDEP="libsndfile+32" +PKGDEP="aosc-aaa+32 libsndfile+32" BUILDDEP="devel-base+32" PKGDES="An optimized MPEG Audio Layer 2 encoder (32-bit x86 runtime)" From bbe9dbedd6d6bc62bc3b8c09e29cd6c9d10e8b13 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:24 +0800 Subject: [PATCH 695/722] util-linux+32: depend on aosc-aaa+32 --- runtime-optenv32/util-linux+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/util-linux+32/autobuild/defines b/runtime-optenv32/util-linux+32/autobuild/defines index c7cb8e340db..173f6ba6d49 100644 --- a/runtime-optenv32/util-linux+32/autobuild/defines +++ b/runtime-optenv32/util-linux+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=util-linux+32 PKGSEC=utils -PKGDEP="glibc+32 ncurses+32 sqlite+32 zlib+32" +PKGDEP="aosc-aaa+32 glibc+32 ncurses+32 sqlite+32 zlib+32" BUILDDEP="devel-base+32" PKGDES="Utilities and management tools for Linux (32-bit x86 runtime)" From 2445a522901803415ba72666f6b5553df6a62c42 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:24 +0800 Subject: [PATCH 696/722] v4l-utils+32: depend on aosc-aaa+32 --- runtime-optenv32/v4l-utils+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/v4l-utils+32/autobuild/defines b/runtime-optenv32/v4l-utils+32/autobuild/defines index f4dcb366126..53d2be3e422 100644 --- a/runtime-optenv32/v4l-utils+32/autobuild/defines +++ b/runtime-optenv32/v4l-utils+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=v4l-utils+32 PKGSEC=utils -PKGDEP="glibc+32 eudev+32 libjpeg-turbo+32 x11-lib+32" +PKGDEP="aosc-aaa+32 glibc+32 eudev+32 libjpeg-turbo+32 x11-lib+32" BUILDDEP="devel-base+32" PKGDES="Utilities for Video4Linux and DVB devices (32-bit x86 runtime)" From 633d2f51719ee45d38f2dfd9e9db443db8b303d8 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:24 +0800 Subject: [PATCH 697/722] vkd3d+32: depend on aosc-aaa+32 --- runtime-optenv32/vkd3d+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/vkd3d+32/autobuild/defines b/runtime-optenv32/vkd3d+32/autobuild/defines index 7ff0bb63fbc..8a0d9fda80f 100644 --- a/runtime-optenv32/vkd3d+32/autobuild/defines +++ b/runtime-optenv32/vkd3d+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=vkd3d+32 PKGSEC=libs -PKGDEP="glibc+32 vulkan-loader+32" +PKGDEP="aosc-aaa+32 glibc+32 vulkan-loader+32" BUILDDEP="devel-base+32 spirv-headers vulkan-headers+32" PKGDES="Direct3D 12 to Vulkan translation library By WineHQ (32-bit x86 runtime)" From 65e6f0c84f63cbd90c4f0093193881cb0ee8000a Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:24 +0800 Subject: [PATCH 698/722] volk-meta-loader+32: depend on aosc-aaa+32 --- runtime-optenv32/volk-meta-loader+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/volk-meta-loader+32/autobuild/defines b/runtime-optenv32/volk-meta-loader+32/autobuild/defines index 7e71ce16454..257b4d7adaf 100644 --- a/runtime-optenv32/volk-meta-loader+32/autobuild/defines +++ b/runtime-optenv32/volk-meta-loader+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=volk-meta-loader+32 PKGSEC=libs -PKGDEP="vulkan-headers+32" +PKGDEP="aosc-aaa+32 vulkan-headers+32" BUILDDEP="devel-base+32" PKGDES="Meta loader for Vulkan API (32-bit x86 runtime)" From cdb894ef9de0efe67c36b93a7d09883ec9cbe382 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:24 +0800 Subject: [PATCH 699/722] vulkan+32: depend on aosc-aaa+32 --- runtime-optenv32/vulkan+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/vulkan+32/autobuild/defines b/runtime-optenv32/vulkan+32/autobuild/defines index aba7482cc6a..aa79d7ab013 100644 --- a/runtime-optenv32/vulkan+32/autobuild/defines +++ b/runtime-optenv32/vulkan+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=vulkan+32 PKGSEC=libs -PKGDEP="vulkan-headers+32 vulkan-loader+32 vulkan-tools+32" +PKGDEP="aosc-aaa+32 vulkan-headers+32 vulkan-loader+32 vulkan-tools+32" PKGDES="A low-overhead, cross-platform 3D graphics and compute API (metapackage, 32-bit x86 runtime)" PKGEPOCH=1 From 75a790595a293186b6c265c6a59b3891ff8108ca Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:24 +0800 Subject: [PATCH 700/722] vulkan-headers+32: depend on aosc-aaa+32 --- runtime-optenv32/vulkan-headers+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/vulkan-headers+32/autobuild/defines b/runtime-optenv32/vulkan-headers+32/autobuild/defines index 012f7a2f8f7..07232cdcf84 100644 --- a/runtime-optenv32/vulkan-headers+32/autobuild/defines +++ b/runtime-optenv32/vulkan-headers+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=vulkan-headers+32 PKGSEC=libs -PKGDEP="" +PKGDEP="aosc-aaa+32 " BUILDDEP="devel-base+32" PKGDES="Vulkan header files and API registry (32-bit x86 runtime)" From fd490e6496d45e374821d4c3200e43c42db31299 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:24 +0800 Subject: [PATCH 701/722] vulkan-loader+32: depend on aosc-aaa+32 --- runtime-optenv32/vulkan-loader+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/vulkan-loader+32/autobuild/defines b/runtime-optenv32/vulkan-loader+32/autobuild/defines index 29d53da5b34..abbaeeb08ec 100644 --- a/runtime-optenv32/vulkan-loader+32/autobuild/defines +++ b/runtime-optenv32/vulkan-loader+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=vulkan-loader+32 PKGSEC=libs -PKGDEP="libxkbcommon+32 mesa+32 x11-lib+32" +PKGDEP="aosc-aaa+32 libxkbcommon+32 mesa+32 x11-lib+32" # FIXME: vulkan-headers is used to provide the CMake modules needed during the # CMake configuration process. BUILDDEP="devel-base+32 libxcb+32 lxml vulkan-headers vulkan-headers+32" From 0cc3b11445bf002eeff9414ab160284ee7502be0 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:25 +0800 Subject: [PATCH 702/722] vulkan-tools+32: depend on aosc-aaa+32 --- runtime-optenv32/vulkan-tools+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/vulkan-tools+32/autobuild/defines b/runtime-optenv32/vulkan-tools+32/autobuild/defines index 99630b36b5b..c99b13aef01 100644 --- a/runtime-optenv32/vulkan-tools+32/autobuild/defines +++ b/runtime-optenv32/vulkan-tools+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=vulkan-tools+32 PKGSEC=utils -PKGDEP="libxkbcommon+32 x11-lib+32 vulkan-loader+32" +PKGDEP="aosc-aaa+32 libxkbcommon+32 x11-lib+32 vulkan-loader+32" BUILDDEP="devel-base+32 lxml glslang vulkan-headers+32 volk-meta-loader+32" PKGDES="Vulkan Tools and Utilities (32-bit x86 runtime)" From 6fc885fb8f029d7235e97e1d5a99aa84a2719a72 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:25 +0800 Subject: [PATCH 703/722] wavpack+32: depend on aosc-aaa+32 --- runtime-optenv32/wavpack+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/wavpack+32/autobuild/defines b/runtime-optenv32/wavpack+32/autobuild/defines index 82b5fe63bf7..e7513b0e576 100644 --- a/runtime-optenv32/wavpack+32/autobuild/defines +++ b/runtime-optenv32/wavpack+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=wavpack+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="Audio compression format with lossless, lossy and hybrid compression modes (32-bit x86 runtime)" From c91743aec72c2ce0f7024e1d28e2e40dbd4e3111 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:25 +0800 Subject: [PATCH 704/722] wayland+32: depend on aosc-aaa+32 --- runtime-optenv32/wayland+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/wayland+32/autobuild/defines b/runtime-optenv32/wayland+32/autobuild/defines index 242fa70bc96..2620de8f5bb 100644 --- a/runtime-optenv32/wayland+32/autobuild/defines +++ b/runtime-optenv32/wayland+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=wayland+32 PKGSEC=libs -PKGDEP="libffi+32 expat+32 libxml2+32 wayland-protocols" +PKGDEP="aosc-aaa+32 libffi+32 expat+32 libxml2+32 wayland-protocols" BUILDDEP="devel-base+32" PKGDES="A display server to replace X.Org (32-bit x86 runtime)" From 12ab60dbffc79e891f2ab6a2c023e5d57b3a9bc3 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:25 +0800 Subject: [PATCH 705/722] wildmidi+32: depend on aosc-aaa+32 --- runtime-optenv32/wildmidi+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/wildmidi+32/autobuild/defines b/runtime-optenv32/wildmidi+32/autobuild/defines index 1074e359e50..460848168d0 100644 --- a/runtime-optenv32/wildmidi+32/autobuild/defines +++ b/runtime-optenv32/wildmidi+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=wildmidi+32 PKGSEC=sound -PKGDEP="alsa-lib+32" +PKGDEP="aosc-aaa+32 alsa-lib+32" BUILDDEP="devel-base+32" PKGDES="Open source MIDI synthesizer (32-bit x86 runtime)" From 68308f8ea85a1f5ccef55b4d36291ecaa19c16eb Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:25 +0800 Subject: [PATCH 706/722] x11-lib+32: depend on aosc-aaa+32 --- runtime-optenv32/x11-lib+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/x11-lib+32/autobuild/defines b/runtime-optenv32/x11-lib+32/autobuild/defines index 787ee1e1617..83242df1f6c 100644 --- a/runtime-optenv32/x11-lib+32/autobuild/defines +++ b/runtime-optenv32/x11-lib+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=x11-lib+32 PKGSEC=x11 -PKGDEP="fontconfig+32 libxcb+32 util-linux+32" +PKGDEP="aosc-aaa+32 fontconfig+32 libxcb+32 util-linux+32" BUILDDEP="devel-base+32 x11-lib+32" PKGDES="X11 runtime libraries (32-bit x86 runtime)" From 66a1f26da1ec050f04f5e7ae84632898e580abd0 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:25 +0800 Subject: [PATCH 707/722] x11-proto+32: depend on aosc-aaa+32 --- runtime-optenv32/x11-proto+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/x11-proto+32/autobuild/defines b/runtime-optenv32/x11-proto+32/autobuild/defines index 4c00b4f854a..f8a30eee26a 100644 --- a/runtime-optenv32/x11-proto+32/autobuild/defines +++ b/runtime-optenv32/x11-proto+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=x11-proto+32 PKGSEC=x11 -PKGDEP="" +PKGDEP="aosc-aaa+32 " BUILDDEP="devel-base+32" PKGDES="X11 protocols and development headers (32-bit x86 runtime)" From a70e4bce379195d5f57f26e1b2cf9aa53b956efd Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:25 +0800 Subject: [PATCH 708/722] x264+32: depend on aosc-aaa+32 --- runtime-optenv32/x264+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/x264+32/autobuild/defines b/runtime-optenv32/x264+32/autobuild/defines index 3f581fe0504..5544a9c3f41 100644 --- a/runtime-optenv32/x264+32/autobuild/defines +++ b/runtime-optenv32/x264+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=x264+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32 nasm+32" PKGDES="H264 encoding library (32-bit x86 runtime)" From ef8c51af1fc10fa171732ccae0121e22c2299122 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:25 +0800 Subject: [PATCH 709/722] x265+32: depend on aosc-aaa+32 --- runtime-optenv32/x265+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/x265+32/autobuild/defines b/runtime-optenv32/x265+32/autobuild/defines index 337cce7f6ab..fc72a29bf5e 100644 --- a/runtime-optenv32/x265+32/autobuild/defines +++ b/runtime-optenv32/x265+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=x265+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32 yasm" PKGDES="Open source H265/HEVC video encoder (32-bit x86 runtime)" From b1080538b1514e99af291d23bbecebe959594d43 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:25 +0800 Subject: [PATCH 710/722] xvidcore+32: depend on aosc-aaa+32 --- runtime-optenv32/xvidcore+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/xvidcore+32/autobuild/defines b/runtime-optenv32/xvidcore+32/autobuild/defines index 35999f1b5a5..5829c9b215e 100644 --- a/runtime-optenv32/xvidcore+32/autobuild/defines +++ b/runtime-optenv32/xvidcore+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=xvidcore+32 PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32 nasm+32" PKGDES="Open source MPEG-4 video codec (32-bit x86 runtime)" From 06ec5dc20d77830dab9544b776bccb81f1182d3d Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:25 +0800 Subject: [PATCH 711/722] xz+32: depend on aosc-aaa+32 --- runtime-optenv32/xz+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/xz+32/autobuild/defines b/runtime-optenv32/xz+32/autobuild/defines index 78715fc3a94..0e6378a8861 100644 --- a/runtime-optenv32/xz+32/autobuild/defines +++ b/runtime-optenv32/xz+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=xz+32 PKGDES="General-purpose data compression software with a high compression ratio (32-bit x86 runtime)" -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32 po4a" PKGSEC=utils From 80fd7f90669f07db1e66dfcd448093cbbb973373 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:25 +0800 Subject: [PATCH 712/722] zlib+32: depend on aosc-aaa+32 --- runtime-optenv32/zlib+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/zlib+32/autobuild/defines b/runtime-optenv32/zlib+32/autobuild/defines index f507580a807..395c5c73d97 100644 --- a/runtime-optenv32/zlib+32/autobuild/defines +++ b/runtime-optenv32/zlib+32/autobuild/defines @@ -1,7 +1,7 @@ PKGNAME=zlib+32 PKGDES="A Massively Spiffy Yet Delicately Unobtrusive Compression Library (32-bit x86 runtime)" PKGSEC=libs -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" AB_FLAGS_O3=1 From 3595b5215fd41260c70b046c4213c0e96d79b89d Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Tue, 18 Feb 2025 16:02:25 +0800 Subject: [PATCH 713/722] zstd+32: depend on aosc-aaa+32 --- runtime-optenv32/zstd+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/zstd+32/autobuild/defines b/runtime-optenv32/zstd+32/autobuild/defines index ceac441811f..6f992210162 100644 --- a/runtime-optenv32/zstd+32/autobuild/defines +++ b/runtime-optenv32/zstd+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=zstd+32 PKGSEC=utils -PKGDEP="glibc+32" +PKGDEP="aosc-aaa+32 glibc+32" BUILDDEP="devel-base+32" PKGDES="Zstandard - Fast real-time compression algorithm (32-bit x86 runtime)" From ec697e390cfbd0fa0275925b84655c7b0702993f Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 19 Feb 2025 02:18:19 +0800 Subject: [PATCH 714/722] wavpack+32: correct as optenv32 ABHOST --- runtime-optenv32/wavpack+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/wavpack+32/autobuild/defines b/runtime-optenv32/wavpack+32/autobuild/defines index e7513b0e576..ca548041108 100644 --- a/runtime-optenv32/wavpack+32/autobuild/defines +++ b/runtime-optenv32/wavpack+32/autobuild/defines @@ -6,4 +6,4 @@ PKGDES="Audio compression format with lossless, lossy and hybrid compression mod AUTOTOOLS_AFTER="--disable-asm" -ABHOST=noarch +ABHOST=optenv32 From c984dba786c5af9a8cf919bfdbcae986f731ab0f Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 19 Feb 2025 02:18:38 +0800 Subject: [PATCH 715/722] twolame+32: correct as optenv32 ABHOST --- runtime-optenv32/twolame+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/twolame+32/autobuild/defines b/runtime-optenv32/twolame+32/autobuild/defines index ec8ee7f5b9b..9464e18a70e 100644 --- a/runtime-optenv32/twolame+32/autobuild/defines +++ b/runtime-optenv32/twolame+32/autobuild/defines @@ -4,7 +4,7 @@ PKGDEP="aosc-aaa+32 libsndfile+32" BUILDDEP="devel-base+32" PKGDES="An optimized MPEG Audio Layer 2 encoder (32-bit x86 runtime)" -ABHOST=noarch +ABHOST=optenv32 # FIXME: Fails with "source directory already configured." ABSHADOW=0 From 3269c1b82bffe742531990b83c664b1dba22b8a1 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 19 Feb 2025 02:24:36 +0800 Subject: [PATCH 716/722] aosc-aaa+32: break and replace all previous +32 packages --- .../aosc-aaa+32/autobuild/defines | 231 +++++++++++++++++- 1 file changed, 229 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/aosc-aaa+32/autobuild/defines b/runtime-optenv32/aosc-aaa+32/autobuild/defines index 18bad8d3987..750c5fae240 100644 --- a/runtime-optenv32/aosc-aaa+32/autobuild/defines +++ b/runtime-optenv32/aosc-aaa+32/autobuild/defines @@ -9,5 +9,232 @@ ABHOST=optenv32 # Note: Skeleton package. ABSPLITDBG=0 -PKGBREAK="32subsystem<=1:2" -PKGREP="32subystem<=1:2" +PKGBREAK=""" +32subsystem<=1:2 +a52dec+32<=0.7.4-2 +aalib+32<=1.4rc5-2 +acl+32<=2.2.52-4 +allegro+32<=4.4.2-1 +alsa-lib+32<=1.2.5.1 +alsa-plugins+32<=1.2.7.1 +at-spi2-atk+32<=2.26.3 +at-spi2-core+32<=2.26.3 +atk+32<=2.26.1-1 +attr+32<=2.4.48-1 +binutils+32<=2.42 +boost+32<=1.63.0-4 +bzip2+32<=1.0.8-1 +cairo+32<=1.18.2 +cdparanoia+32<=10.2-3 +celt+32<=0.11.3-2 +cg+32<=3.1.0013-1 +cups+32<=2.3.3 +curl+32<=8.11.0 +db+32<=1:5.3.28 +dbus+32<=1.12.18 +dbus-glib+32<=0.108-1 +devel-base+32<=0 +elfutils+32<=0.166-1 +enca+32<=1.19-1 +eudev+32<=3.1.5-4 +expat+32<=2.6.2 +faac+32<=1.28-1 +faad2+32<=2.11.1 +ffmpeg+32<=4.2.5 +fftw+32<=3.3.4-3 +flac+32<=1.4.3 +fluidsynth+32<=1.1.6-1 +fontconfig+32<=2.14.0 +freealut+32<=1.1.0-1 +freeglut+32<=3.0.0-1 +freetype+32<=2.12.1 +fribidi+32<=1.0.10 +game-music-emu+32<=0.6.0-1 +gcc+32<=13.2.0 +gconf+32<=3.2.6-1 +gdbm+32<=1.11-2 +gdk-pixbuf+32<=2.38.2-1 +ghostscript+32<=9.27-1 +giflib+32<=5.1.8 +glew+32<=2.2.0-1 +glib+32<=2.62.6-1 +glibc+32<=2.38 +glslang+32<=7.11.3214-1 +glu+32<=9.0.1 +gmp+32<=6.3.0 +gnutls+32<=3.6.15-1 +gsm+32<=1.0.19 +gst-libav-1-0+32<=1.16.2 +gst-plugins-bad-1-0+32<=1.16.2-1 +gst-plugins-base-0-10+32<=0.10.36-6 +gst-plugins-base-1-0+32<=1.16.2-1 +gst-plugins-good-1-0+32<=1.16.2-2 +gst-plugins-ugly-1-0+32<=1.16.2 +gstreamer-0-10+32<=0.10.36-1 +gstreamer-1-0+32<=1.16.2 +gtk-2+32<=2.24.32-2 +gtk-3+32<=3.22.30-1 +harfbuzz+32<=2.6.7 +icu+32<=64.2-5 +imlib2+32<=1.4.8-1 +json-c+32<=0.13.1+20180305-2 +krb5+32<=1.17.1-1 +lame+32<=3.100-1 +lcms2+32<=2.9-1 +libaio+32<=0.3.110-4 +libass+32<=0.15.1 +libasyncns+32<=0.8-4 +libavc1394+32<=0.5.4-3 +libbluray+32<=1.2.1 +libcaca+32<=1:0.99.beta19-4 +libcap+32<=2.31 +libcddb+32<=1.3.2-2 +libcdio+32<=0.94-2 +libcroco+32<=0.6.13-1 +libdca+32<=0.0.7 +libdrm+32<=2.4.123 +libdv+32<=1.0.0-1 +libdvdcss+32<=1.4.2 +libdvdnav+32<=5.0.3-1 +libdvdread+32<=5.0.3-1 +libepoxy+32<=1.2-2 +libexif+32<=0.6.22 +libffi+32<=3.4.2 +libgcrypt+32<=1.9.1 +libglvnd+32<=1.6.0 +libgpg-error+32<=1.41 +libid3tag+32<=0.15.1b-3 +libidn+32<=1.33-1 +libiec61883+32<=1.2.0-1 +libjpeg+legacy+32<=6b-1 +libjpeg-turbo+32<=2.0.5 +libmad+32<=0.15.1b-4 +libmikmod+32<=3.3.11.1 +libmms+32<=0.6.4-1 +libmodplug+32<=0.8.8.5-1 +libmpeg2+32<=0.5.1-1 +libnl+32<=3.2.28 +libofa+32<=0.9.3-1 +libogg+32<=1.3.4 +libpcap+32<=1.10.1 +libpng+32<=2:1.2.57-1 +libpng-1.6+32<=1:1.6.43-1 +libraw1394+32<=2.1.2-1 +librsvg+32<=2.40.21 +libshout+32<=2.4.3 +libsidplay+32<=1.36.59-1 +libsndfile+32<=1.2.0-1 +libspectre+32<=0.2.9 +libssh+32<=0.8.9-2 +libssh2+32<=1.9.0-2 +libtasn1+32<=4.15.0 +libtheora+32<=1.1.1-2 +libtiff+32<=4.0.10-5 +libtool+32<=2.4.6-1 +libusb+32<=1.0.23 +libusb-compat+32<=0.1.5-1 +libva+32<=2.15.0 +libva-intel-driver+32<=2.4.1 +libva-vdpau-driver+32<=0.7.4-2 +libvdpau+32<=1.1.1-1 +libvisual+32<=0.4.0-2 +libvorbis+32<=1.3.7 +libvpx+32<=1.9.0 +libwebp+32<=0.4.3-1 +libxau+32<=1.0.8-3 +libxcb+32<=1.13 +libxcrypt+32<=4.4.36 +libxdmcp+32<=1.1.3 +libxkbcommon+32<=0.9.1 +libxml2+32<=2.10.4 +libxnvctrl+32<=545.23.06 +libxslt+32<=1.1.34-1 +linux+api+32<=6.7.12 +llvm+32<=14.0.6-1 +mangohud+32<=0.7.2 +mbedtls+32<=2.16.7 +mesa+32<=22.1.7 +mjpegtools+32<=2.1.0-1 +mp4v2+32<=2.0.0-3 +mpc+32<=1.3.1 +mpfr+32<=4.2.1 +mpg123+32<=1.32.8 +nasm+32<=2.12.01-1 +ncurses+32<=6.4 +neon+32<=0.31.2-1 +nettle+32<=3.7.2 +nlohmann-json+32<=3.11.3 +nspr+32<=4.24-1 +nss+32<=3.78 +nvidia+32<=1:0 +nvidia+340+32<=340.108-3 +nvidia+390+32<=1:0 +nvidia-libgl+340+32<=340.108-1 +openal-soft+32<=1.23.1 +opencore-amr+32<=0.1.5-1 +openjpeg-legacy+32<=1.5.2-1 +openldap+32<=2.4.59-1 +openssl+32<=3.4.1 +openssl-1.1+32<=1.1.1q +opus+32<=1.3.1 +orc+32<=0.4.32 +p11-kit+32<=0.23.18.1-1 +pango+32<=1.44.7 +pcre+32<=8.44 +perl+32<=999-2 +perl-xml-parser+32<=999-2 +pixman+32<=0.40.0 +pkg-config+32<=0.29.2-2 +poppler+32<=0.66.0-5 +popt+32<=1.16-1 +portaudio+32<=19+20140130-2 +primus+32<=20150328-2 +proxychains-ng+32<=20161205 +pulseaudio+32<=13.0 +python-2+32<=999-2 +readline+32<=8.2.1 +recode+32<=3.6-1 +rtmpdump+32<=20150114-5 +s2tc+32<=20150112-2 +sbc+32<=1.3-1 +schroedinger+32<=1.0.11-1 +sdl+32<=1.2.15-8 +sdl-net+32<=1.2.8-1 +sdl-sound+32<=1.0.3-3 +sdl-ttf+32<=2.0.11-2 +smpeg+32<=0.4.5-2 +soundtouch+32<=1.9.2-5 +soxr+32<=0.1.3-4 +speex+32<=1:1.2.0-1 +sqlite+32<=3.32.3 +srtp+32<=1.5.4-3 +taglib+32<=1.11-3 +tbb+32<=4.4u4-1 +tcl+32<=8.6.10 +tk+32<=8.6.10-1 +twolame+32<=0.3.13-3 +util-linux+32<=2.29.2-2 +util-macros+32<=999-3 +v4l-utils+32<=1.18.0 +virtualgl+32<=2.5.2-1 +vkd3d+32<=1.9 +volk-meta-loader+32<=1.3.283.0 +vulkan+32<=1:0-1 +vulkan-headers+32<=1.3.283.0 +vulkan-loader+32<=1.3.283.0 +vulkan-tools+32<=1.3.283.0 +wavpack+32<=5.2.0 +wayland+32<=1.23.0 +wildmidi+32<=0.4.3-1 +wxgtk+32<=2.8.12.1-1 +wxgtk-3+32<=3.0.4-2 +x11-lib+32<=7.7.20200908 +x11-proto+32<=2019.2-1 +x264+32<=20160827.2245-3 +x265+32<=2.2-1 +xcb-proto+32<=1.14-1 +xvidcore+32<=1.3.7-2 +xz+32<=5.4.1 +zlib+32<=1.3.1 +""" +PKGREP="${PKGBREAK}" From b2f3e7e2178d1aa519bed301920e8ef73d72c1cc Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 19 Feb 2025 02:25:11 +0800 Subject: [PATCH 717/722] libpng+32: update last libpng-1.6+32 version --- runtime-optenv32/libpng+32/autobuild/defines | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/runtime-optenv32/libpng+32/autobuild/defines b/runtime-optenv32/libpng+32/autobuild/defines index 83756301cd0..61d257eabe4 100644 --- a/runtime-optenv32/libpng+32/autobuild/defines +++ b/runtime-optenv32/libpng+32/autobuild/defines @@ -12,7 +12,7 @@ PKGEPOCH=2 # the --enable-maintainer-mode option. RECONF=0 -PKGBREAK="libpng-1.6+32<=1:1.6.37" -PKGREP="libpng-1.6+32<=1:1.6.37" +PKGBREAK="libpng-1.6+32<=1:1.6.43-1" +PKGREP="libpng-1.6+32<=1:1.6.43-1" ABHOST=optenv32 From 41edc153f65b41aabcc6e5cd14fa27e8610effb5 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 19 Feb 2025 02:32:07 +0800 Subject: [PATCH 718/722] libxslt+32: drop python-2+32 dep --- runtime-optenv32/libxslt+32/autobuild/defines | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/runtime-optenv32/libxslt+32/autobuild/defines b/runtime-optenv32/libxslt+32/autobuild/defines index 6f2d34e83e2..dfe50e3983a 100644 --- a/runtime-optenv32/libxslt+32/autobuild/defines +++ b/runtime-optenv32/libxslt+32/autobuild/defines @@ -1,6 +1,6 @@ PKGNAME=libxslt+32 PKGSEC=libs -PKGDEP="aosc-aaa+32 glibc+32 libxml2+32 libgcrypt+32 python-2+32" +PKGDEP="aosc-aaa+32 glibc+32 libxml2+32 libgcrypt+32" BUILDDEP="devel-base+32" PKGDES="C library for eXtensible Stylesheet Language Transformations (XSLT) (32-bit x86 runtime)" From 25291deab148f901719d14928333c5d1ade2b855 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 19 Feb 2025 02:37:28 +0800 Subject: [PATCH 719/722] openssl+32: bump REL against stable --- runtime-optenv32/openssl+32/spec | 1 + 1 file changed, 1 insertion(+) diff --git a/runtime-optenv32/openssl+32/spec b/runtime-optenv32/openssl+32/spec index be830c57e01..eb18e318f2d 100644 --- a/runtime-optenv32/openssl+32/spec +++ b/runtime-optenv32/openssl+32/spec @@ -1,4 +1,5 @@ VER=3.4.1 +REL=1 SRCS="tbl::https://github.com/openssl/openssl/releases/download/openssl-$VER/openssl-$VER.tar.gz" CHKSUMS="sha256::002a2d6b30b58bf4bea46c43bdd96365aaf8daa6c428782aa4feee06da197df3" CHKUPDATE="anitya::id=2566" From 8999a82a9830710058e26d400cac9050cbae5bc1 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 19 Feb 2025 02:46:26 +0800 Subject: [PATCH 720/722] 32subsystem: drop orphaned packages --- runtime-optenv32/32subsystem/autobuild/defines | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/runtime-optenv32/32subsystem/autobuild/defines b/runtime-optenv32/32subsystem/autobuild/defines index 356a173fbd0..816f531eb4f 100644 --- a/runtime-optenv32/32subsystem/autobuild/defines +++ b/runtime-optenv32/32subsystem/autobuild/defines @@ -5,13 +5,13 @@ PKGDEP=""" a52dec+32 aalib+32 acl+32 alsa-lib+32 alsa-plugins+32 at-spi2-core+32 attr+32 binutils+32 brotli+32 bzip2+32 cairo+32 cdparanoia+32 celt+32 cups+32 curl+32 dbus+32 dbus-glib+32 devel-base+32 elfutils+32 enca+32 eudev+32 expat+32 -faac+32 faad2+32 ffmpeg+32 fftw+32 flac+32 fluidsynth+32 fontconfig+32 +faac+32 ffmpeg+32 fftw+32 flac+32 fluidsynth+32 fontconfig+32 freealut+32 freeglut+32 freetype+32 fribidi+32 game-music-emu+32 gcc+32 gconf+32 gdbm+32 gdk-pixbuf+32 giflib+32 glew+32 glib+32 glibc+32 glslang+32 glu+32 gmp+32 gnutls+32 gsm+32 gtk-2+32 gtk-3+32 harfbuzz+32 icu+32 imlib2+32 json-c+32 krb5+32 lame+32 lcms2+32 libaio+32 libass+32 libasyncns+32 libavc1394+32 libbluray+32 libbsd+32 libcaca+32 libcap+32 libcddb+32 libcdio+32 -libcroco+32 libdatrie+32 libdca+32 libdrm+32 libdv+32 libdvdcss+32 libdvdnav+32 +libdatrie+32 libdca+32 libdrm+32 libdv+32 libdvdcss+32 libdvdnav+32 libdvdread+32 libepoxy+32 libexif+32 libffi+32 libgcrypt+32 libglvnd+32 libgpg-error+32 libid3tag+32 libidn+32 libiec61883+32 libjpeg-turbo+32 libmad+32 libmd+32 libmikmod+32 libmms+32 libmodplug+32 libmpeg2+32 libnl+32 @@ -28,7 +28,7 @@ openssl-1.1+32 openssl+32 opus+32 orc+32 p11-kit+32 pango+32 pcre2+32 pcre+32 pixman+32 popt+32 portaudio+32 proxychains-ng+32 pulseaudio+32 readline+32 recode+32 rtmpdump+32 rustc+32 s2tc+32 sbc+32 schroedinger+32 sdl+32 sdl-ttf+32 shared-mime-info+32 smpeg+32 soundtouch+32 soxr+32 speex+32 -spirv-llvm-translator+32 spirv-tools+32 sqlite+32 srtp+32 taglib+32 tcl+32 +spirv-llvm-translator+32 spirv-tools+32 sqlite+32 taglib+32 tcl+32 twolame+32 util-linux+32 v4l-utils+32 vkd3d+32 volk-meta-loader+32 vulkan+32 vulkan-headers+32 vulkan-loader+32 vulkan-tools+32 wavpack+32 wayland+32 wildmidi+32 x11-lib+32 x11-proto+32 x264+32 x265+32 xvidcore+32 From eb4be8dd63b78c0d201ce0a2267671c06e42394e Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 19 Feb 2025 02:49:38 +0800 Subject: [PATCH 721/722] fontconfig+32: use shared /etc configuration --- runtime-optenv32/fontconfig+32/autobuild/defines | 1 - 1 file changed, 1 deletion(-) diff --git a/runtime-optenv32/fontconfig+32/autobuild/defines b/runtime-optenv32/fontconfig+32/autobuild/defines index 9efde84a04f..adba9c59e5e 100644 --- a/runtime-optenv32/fontconfig+32/autobuild/defines +++ b/runtime-optenv32/fontconfig+32/autobuild/defines @@ -17,5 +17,4 @@ MESON_AFTER=( '-Dnls=disabled' '-Dtools=enabled' '-Dcache-build=disabled' - '-Dbaseconfig-dir=/etc' ) From 1cf77d15d75f4a87bae17596a921b5e199ea5d84 Mon Sep 17 00:00:00 2001 From: Mingcong Bai Date: Wed, 19 Feb 2025 02:53:37 +0800 Subject: [PATCH 722/722] autobuild4: update to 4.7.9+git20250219 --- app-devel/autobuild4/spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app-devel/autobuild4/spec b/app-devel/autobuild4/spec index c7e94b8829e..22480b78fb8 100644 --- a/app-devel/autobuild4/spec +++ b/app-devel/autobuild4/spec @@ -1,4 +1,4 @@ -VER=4.7.9+git20250218 -SRCS="git::commit=40f52da3692b6dd023bd86906dfa2c700a24ed5c::https://github.com/AOSC-Dev/autobuild4" +VER=4.7.9+git20250219 +SRCS="git::commit=046d6831da004fbde150e321ba9e727c82416522::https://github.com/AOSC-Dev/autobuild4" CHKSUMS="SKIP" CHKUPDATE="anitya::id=372345"