[vlc-commits] [Git][videolan/vlc][master] 6 commits: contrib: gettext: update to 0.26

Felix Paul Kühne (@fkuehne) gitlab at videolan.org
Thu Sep 11 05:06:26 UTC 2025



Felix Paul Kühne pushed to branch master at VideoLAN / VLC


Commits:
031aff1c by Steve Lhomme at 2025-09-11T04:13:21+00:00
contrib: gettext: update to 0.26

It builds properly with gcc 14 mingw-w64.

We only need the runtime part to compile/link with.
The native tools are in the system or in extras/tools.

- - - - -
36356178 by Steve Lhomme at 2025-09-11T04:13:21+00:00
tools: use ftpmirror for GNU packages

It's less overloaded and the recommended URL [^1].

Similar to 03d3b0a941b1bce0715af0dda612fa080a975d1c for tools.

[^1]: https://www.gnu.org/prep/ftp.en.html

- - - - -
21a36f8c by Steve Lhomme at 2025-09-11T04:13:21+00:00
tools: make use of parallel builds

- - - - -
8f2fd35d by Steve Lhomme at 2025-09-11T04:13:21+00:00
tools: update gettext to 0.26

- - - - -
26c7fa76 by Steve Lhomme at 2025-09-11T04:13:21+00:00
contrib: build iconv for macOS

Recent iconv.m4 detects a conversion issue:

```
  /* Test against macOS 14.4 bug: Failures are not distinguishable from
     successful returns.
     POSIX:2018 says: "The iconv() function shall ... return the number of
     non-identical conversions performed."
     But here, the conversion always does transliteration (the suffixes
     "//TRANSLIT" and "//IGNORE" have no effect, nor does iconvctl()) and
     does not report when it does a non-identical conversion.  */
```

- - - - -
35fb2388 by Steve Lhomme at 2025-09-11T04:13:21+00:00
contrib: gettext: build Android runtime as other platforms

If the runtime builds when building everything, it should also
build when we only build that.

- - - - -


6 changed files:

- contrib/src/gettext/SHA512SUMS
- contrib/src/gettext/rules.mak
- contrib/src/iconv/rules.mak
- extras/tools/SHA512SUMS
- extras/tools/packages.mak
- extras/tools/tools.mak


Changes:

=====================================
contrib/src/gettext/SHA512SUMS
=====================================
@@ -1 +1 @@
-d8b22d7fba10052a2045f477f0a5b684d932513bdb3b295c22fbd9dfc2a9d8fccd9aefd90692136c62897149aa2f7d1145ce6618aa1f0be787cb88eba5bc09be  gettext-0.22.5.tar.gz
+544e41c9390695df1c21542842e9ca027a03cb7d4045d8cd759dec1a3dfb624aae900751b458bdb31d6454b37c40c474a952059b884555a03c7c95d6d0e687b1  gettext-0.26.tar.xz


=====================================
contrib/src/gettext/rules.mak
=====================================
@@ -1,6 +1,6 @@
 # gettext
-GETTEXT_VERSION := 0.22.5
-GETTEXT_URL := $(GNU)/gettext/gettext-$(GETTEXT_VERSION).tar.gz
+GETTEXT_VERSION := 0.26
+GETTEXT_URL := $(GNU)/gettext/gettext-$(GETTEXT_VERSION).tar.xz
 
 ifndef HAVE_WINSTORE # FIXME uses sys/socket.h improperly
 PKGS += gettext
@@ -10,36 +10,21 @@ ifneq ($(filter gnu%,$(subst -, ,$(HOST))),)
 PKGS_FOUND += gettext
 endif
 
-$(TARBALLS)/gettext-$(GETTEXT_VERSION).tar.gz:
+$(TARBALLS)/gettext-$(GETTEXT_VERSION).tar.xz:
 	$(call download_pkg,$(GETTEXT_URL),gettext)
 
-.sum-gettext: gettext-$(GETTEXT_VERSION).tar.gz
+.sum-gettext: gettext-$(GETTEXT_VERSION).tar.xz
 
-GETTEXT_TOOLS_DIRS := gettext-runtime/src gettext-tools/src
-
-gettext: gettext-$(GETTEXT_VERSION).tar.gz .sum-gettext
+gettext: gettext-$(GETTEXT_VERSION).tar.xz .sum-gettext
 	$(UNPACK)
 	$(call update_autoconfig,build-aux)
-	# disable libtextstyle
-	sed -i.orig -e 's,gettext-runtime libtextstyle gettext-tools,gettext-runtime gettext-tools,g' $(UNPACK_DIR)/configure
-	sed -i.orig -e 's,gettext-runtime libtextstyle gettext-tools,gettext-runtime gettext-tools,g' $(UNPACK_DIR)/Makefile.in
-	sed -i.orig -e 's,ENABLE_COLOR 1,ENABLE_COLOR 0,g' $(UNPACK_DIR)/gettext-tools/src/write-catalog.c
-	# disable gettext-tools examples configure
-	sed -i.orig -e "s,ac_subdirs_all='examples',ac_subdirs_all=," $(UNPACK_DIR)/gettext-tools/configure
-	sed -i.orig -e 's, examples",",' $(UNPACK_DIR)/gettext-tools/configure
-	# disable gettext-tools tests/samples
-	sed -i.orig -e 's,tests system-tests gnulib-tests examples doc,,' $(UNPACK_DIR)/gettext-tools/Makefile.in
+	$(call update_autoconfig,libtextstyle/build-aux)
 	# disable useless gettext-runtime targets
-	sed -i.orig -e 's,doc ,,' $(UNPACK_DIR)/gettext-runtime/Makefile.in
-	sed -i.orig -e 's,po man m4 tests,,' $(UNPACK_DIR)/gettext-runtime/Makefile.in
-	sed -i.orig -e 's,doc ,,' $(UNPACK_DIR)/gettext-runtime/Makefile.in
-ifdef HAVE_CROSS_COMPILE
-	# disable cross-compiled command line tools that can't be run
-	sed -i.orig -e 's,install-binPROGRAMS install-exec-local,,' $(UNPACK_DIR)/gettext-tools/src/Makefile.in
-	for subdir in $(GETTEXT_TOOLS_DIRS); do \
-	    sed -i.orig -e 's,^bin_PROGRAMS = ,bin_PROGRAMS_disabled = ,g' $(UNPACK_DIR)/$$subdir/Makefile.in && \
-	    sed -i.orig -e 's,^noinst_PROGRAMS = ,noinst_PROGRAMS_disabled = ,g' $(UNPACK_DIR)/$$subdir/Makefile.in; done
-endif
+	sed -i.orig -e 's,doc ,,' $(UNPACK_DIR)/gettext-runtime/Makefile.am
+	sed -i.orig -e 's,intl-java intl-csharp intl-d intl-modula2 ,,' $(UNPACK_DIR)/gettext-runtime/Makefile.am
+	sed -i.orig -e 's, tests,,' $(UNPACK_DIR)/gettext-runtime/Makefile.am
+	# disable useless gettext-tools configure
+	sed -i.orig -e 's,gettext-runtime libtextstyle gettext-tools,gettext-runtime libtextstyle,' $(UNPACK_DIR)/configure.ac
 	$(MOVE)
 
 DEPS_gettext = iconv $(DEPS_iconv) libxml2 $(DEPS_libxml2)
@@ -49,11 +34,14 @@ GETTEXT_CONF = \
 	--disable-java \
 	--disable-native-java \
 	--disable-csharp \
+	--disable-d \
+	--disable-go \
+	--disable-modula2 \
+	--disable-openmp \
 	--without-emacs \
 	--without-included-libxml \
-	--with-installed-libtextstyle \
-	--without-libtextstyle-prefix \
-	--without-git
+	--without-git \
+	--without-cvs
 
 ifdef HAVE_WIN32
 GETTEXT_CONF += --disable-threads
@@ -65,23 +53,14 @@ ifdef HAVE_MINGW_W64
 GETTEXT_CONF += --disable-libasprintf
 endif
 
+ifeq ($(findstring libxml2,$(PKGS_FOUND)),)
+GETTEXT_CONF += --with-libxml2-prefix=$(PREFIX)
+endif
+
 .gettext: gettext
+	$(RECONF)
 	$(MAKEBUILDDIR)
 	$(MAKECONFIGURE) $(GETTEXT_CONF)
 	+$(MAKEBUILD) -C gettext-runtime
-ifndef HAVE_ANDROID
-	# build libgettextpo first so we can use its textstyle.h and unistd.h (fsync)
-	+$(MAKEBUILD) -C gettext-tools -C libgettextpo
-	cd $(BUILD_DIR) && cp gettext-tools/libgettextpo/textstyle.h gettext-tools/src/textstyle.h
-	cd $(BUILD_DIR) && cp gettext-tools/libgettextpo/unistd.h    gettext-tools/src/unistd.h
-	+$(MAKEBUILD) -C gettext-tools
-	+$(MAKEBUILD) -C gettext-tools install
-else
-	# Android 32bits does not have localeconv
-	+$(MAKEBUILD) -C gettext-tools/misc
-	+$(MAKEBUILD) -C gettext-tools/m4
-	+$(MAKEBUILD) -C gettext-tools/misc install
-	+$(MAKEBUILD) -C gettext-tools/m4 install
-endif
 	+$(MAKEBUILD) -C gettext-runtime install
 	touch $@


=====================================
contrib/src/iconv/rules.mak
=====================================
@@ -6,6 +6,7 @@ PKGS += iconv
 # iconv cannot be detect with pkg-config, but it is mandated by POSIX.
 # Hard-code based on the operating system.
 ifndef HAVE_WIN32
+ifndef HAVE_MACOSX # in macOS 14.4 iconv seems broken (check iconv.m4 tests)
 ifndef HAVE_ANDROID
 PKGS_FOUND += iconv
 else
@@ -14,6 +15,7 @@ PKGS_FOUND += iconv
 endif
 endif
 endif
+endif
 
 DEPS_iconv =
 ifdef HAVE_WINSTORE


=====================================
extras/tools/SHA512SUMS
=====================================
@@ -10,7 +10,7 @@ dbbb0bb348fac54612d29182c09c88bda7096dea03bd94f03c580c24146e65a06db12808c6a1a9ad
 d4d23af6671406e97257892f90651b67f2ab95219831372be032190b7156c10a3435d457857e677445df8b2327aacccc15344acbbc3808a6f332a93cce23b444  bison-3.8.2.tar.xz
 e9785f3d620a204b7d20222888917dc065c2036cae28667065bf7862dfa1b25235095a12fd04efdbd09bfd17d3452e6b9ef953a8c1137862ff671c97132a082e  flex-2.6.4.tar.gz
 611e573756e3e936ce16b456df9583eb9acae51a0fbd28212444ddc0c1c5ec21e893d7a666bd77ef53423024939291a31dcf86d129126fa707b729d80b24184d  nasm-2.13.03.tar.gz
-e2a58dde1cae3e6b79c03e7ef3d888f7577c1f4cba283b3b0f31123ceea8c33d7c9700e83de57104644de23e5f5c374868caa0e091f9c45edbbe87b98ee51c04  gettext-0.22.tar.gz
+6c2afb0737843028e1cd27f1cd7dd5b81372ccff8cd8e01e17cfdc517afdd9a849c232f1ff5adca5eb4b03f2cc64f4a3f689ae8b84e523ceeae85384f3844083  gettext-0.26.tar.gz
 d24849b93de58b20f518c071687e7bfa653a96600382f36c4cf7fc1047656458f75f093b911b786b18b6931b2453cb60868ecbe07cc7d2984e5981a874b34942  help2man-1.47.6.tar.xz
 8d23dde18525dccaa648ca01df40151e7f00cec4846bd611c8970dbcfc1fb57a453facfe4d41462e7c3c8bb548d44b961a04e4fc3073ab6b65063e53f42bf6fd  nasm-2.14.tar.gz
 37b3a421419b16930e53181c431fe3b4afd55ac54733a5df08376641fd2fb88eeb73ee7abe3788f3e491e7c1b215c7f35aefa66f44b09008ad22b76ab2998830  ninja-1.11.1.tar.gz


=====================================
extras/tools/packages.mak
=====================================
@@ -1,4 +1,4 @@
-GNU=https://ftp.gnu.org/gnu
+GNU=https://ftpmirror.gnu.org/gnu
 APACHE=https://downloads.apache.org/
 SF=https://downloads.sourceforge.net/project
 VIDEOLAN=https://downloads.videolan.org/pub/contrib
@@ -43,7 +43,7 @@ BISON_URL=$(GNU)/bison/bison-$(BISON_VERSION).tar.xz
 FLEX_VERSION=2.6.4
 FLEX_URL=https://github.com/westes/flex/releases/download/v$(FLEX_VERSION)/flex-$(FLEX_VERSION).tar.gz
 
-GETTEXT_VERSION=0.22
+GETTEXT_VERSION=0.26
 GETTEXT_URL=$(GNU)/gettext/gettext-$(GETTEXT_VERSION).tar.gz
 
 HELP2MAN_VERSION=1.47.6


=====================================
extras/tools/tools.mak
=====================================
@@ -67,7 +67,9 @@ nasm: nasm-$(NASM_VERSION).tar.gz
 	$(MOVE)
 
 .buildnasm: nasm
-	(cd $<; ./configure --prefix=$(PREFIX) && $(MAKE) && $(MAKE) install)
+	cd $<; ./configure --prefix=$(PREFIX)
+	+$(MAKE) -C $<
+	+$(MAKE) -C $< install
 	touch $@
 
 CLEAN_FILE += .buildnasm
@@ -85,7 +87,9 @@ cmake: cmake-$(CMAKE_VERSION).tar.gz
 	$(MOVE)
 
 .buildcmake: cmake
-	(cd $<; ./configure --prefix=$(PREFIX) $(CMAKEFLAGS) --no-qt-gui -- -DCMAKE_USE_OPENSSL:BOOL=OFF -DBUILD_TESTING:BOOL=OFF && $(MAKE) && $(MAKE) install)
+	cd $<; ./configure --prefix=$(PREFIX) $(CMAKEFLAGS) --no-qt-gui -- -DCMAKE_USE_OPENSSL:BOOL=OFF -DBUILD_TESTING:BOOL=OFF
+	+$(MAKE) -C $<
+	+$(MAKE) -C $< install
 	touch $@
 
 CLEAN_FILE += .buildcmake
@@ -101,7 +105,9 @@ help2man: help2man-$(HELP2MAN_VERSION).tar.xz .xz .tar
 	$(MOVE)
 
 .buildhelp2man: help2man
-	(cd $<; ./configure --prefix=$(PREFIX) && $(MAKE) && $(MAKE) install)
+	cd $<; ./configure --prefix=$(PREFIX)
+	+$(MAKE) -C $<
+	+$(MAKE) -C $< install
 	touch $@
 
 CLEAN_FILE += .buildhelp2man
@@ -124,7 +130,9 @@ libtool: libtool-$(LIBTOOL_VERSION).tar.gz
 
 .buildlibtool: libtool .automake .help2man
 	(cd $(UNPACK_DIR) && autoreconf -fv)
-	(cd $<; ./configure --prefix=$(PREFIX) && $(MAKE) && $(MAKE) install)
+	cd $<; ./configure --prefix=$(PREFIX)
+	+$(MAKE) -C $<
+	+$(MAKE) -C $< install
 	ln -sf libtool $(PREFIX)/bin/glibtool
 	ln -sf libtoolize $(PREFIX)/bin/glibtoolize
 	touch $@
@@ -143,7 +151,9 @@ tar: tar-$(TAR_VERSION).tar.bz2
 	$(MOVE)
 
 .buildtar: .xz tar
-	(cd $<; ./configure --prefix=$(PREFIX) && $(MAKE) && $(MAKE) install)
+	cd $<; ./configure --prefix=$(PREFIX)
+	+$(MAKE) -C $<
+	+$(MAKE) -C $< install
 	touch $@
 
 CLEAN_PKG += tar
@@ -160,7 +170,10 @@ xz: xz-$(XZ_VERSION).tar.bz2
 	$(MOVE)
 
 .buildxz: xz
-	(cd $<; ./configure --prefix=$(PREFIX) && $(MAKE) && $(MAKE) install && rm $(PREFIX)/lib/pkgconfig/liblzma.pc)
+	cd $<; ./configure --prefix=$(PREFIX)
+	+$(MAKE) -C $<
+	+$(MAKE) -C $< install
+	rm $(PREFIX)/lib/pkgconfig/liblzma.pc
 	touch $@
 
 CLEAN_PKG += xz
@@ -204,7 +217,9 @@ autoconf: autoconf-$(AUTOCONF_VERSION).tar.gz .configguess
 	$(MOVE)
 
 .buildautoconf: autoconf .pkg-config .m4
-	(cd $<; ./configure --prefix=$(PREFIX) && $(MAKE) && $(MAKE) install)
+	cd $<; ./configure --prefix=$(PREFIX)
+	+$(MAKE) -C $<
+	+$(MAKE) -C $< install
 	touch $@
 
 CLEAN_FILE += .buildautoconf
@@ -226,7 +241,9 @@ automake: automake-$(AUTOMAKE_VERSION).tar.gz .configguess
 
 .buildautomake: automake .autoconf
 	(cd $<; ./bootstrap)
-	(cd $<; ./configure --prefix=$(PREFIX) && $(MAKE) && $(MAKE) install)
+	cd $<; ./configure --prefix=$(PREFIX)
+	+$(MAKE) -C $<
+	+$(MAKE) -C $< install
 	touch $@
 
 CLEAN_FILE += .buildautomake
@@ -243,7 +260,9 @@ m4: m4-$(M4_VERSION).tar.gz
 	$(MOVE)
 
 .buildm4: m4
-	(cd $<; ./configure --prefix=$(PREFIX) && $(MAKE) && $(MAKE) install)
+	cd $<; ./configure --prefix=$(PREFIX)
+	+$(MAKE) -C $<
+	+$(MAKE) -C $< install
 	touch $@
 
 CLEAN_FILE += .buildm4
@@ -261,7 +280,9 @@ pkgconfig: pkg-config-$(PKGCFG_VERSION).tar.gz
 	$(MOVE)
 
 .buildpkg-config: pkgconfig
-	(cd pkgconfig; ./configure --prefix=$(PREFIX) --disable-shared --enable-static --disable-dependency-tracking && $(MAKE) && $(MAKE) install)
+	cd $<; ./configure --prefix=$(PREFIX) --disable-shared --enable-static --disable-dependency-tracking
+	+$(MAKE) -C $<
+	+$(MAKE) -C $< install
 	touch $@
 
 CLEAN_FILE += .buildpkg-config
@@ -278,7 +299,9 @@ sed: sed-$(SED_VERSION).tar.bz2
 	$(MOVE)
 
 .buildsed: sed
-	(cd $<; ./configure --prefix=$(PREFIX) && $(MAKE) && $(MAKE) install)
+	cd $<; ./configure --prefix=$(PREFIX)
+	+$(MAKE) -C $<
+	+$(MAKE) -C $< install
 	touch $@
 
 CLEAN_PKG += sed
@@ -316,7 +339,9 @@ bison: bison-$(BISON_VERSION).tar.xz .xz .tar
 	$(MOVE)
 
 .buildbison: bison
-	(cd $<; ./configure --prefix=$(PREFIX) && $(MAKE) && $(MAKE) install)
+	cd $<; ./configure --prefix=$(PREFIX)
+	+$(MAKE) -C $<
+	+$(MAKE) -C $< install
 	touch $@
 
 CLEAN_PKG += bison
@@ -335,7 +360,9 @@ flex: flex-$(FLEX_VERSION).tar.gz
 	$(MOVE)
 
 .buildflex: flex
-	(cd $<; ./configure --prefix=$(PREFIX) && $(MAKE) && $(MAKE) install)
+	cd $<; ./configure --prefix=$(PREFIX)
+	+$(MAKE) -C $<
+	+$(MAKE) -C $< install
 	touch $@
 
 CLEAN_PKG += flex
@@ -348,6 +375,20 @@ CLEAN_FILE += .buildflex
 # GNU gettext
 #
 
+GETTEXT_CONF = \
+	--disable-relocatable \
+	--disable-java \
+	--disable-native-java \
+	--disable-csharp \
+	--disable-d \
+	--disable-go \
+	--disable-modula2 \
+	--disable-openmp \
+	--without-emacs \
+	--without-included-libxml \
+	--without-git \
+	--without-cvs
+
 gettext-$(GETTEXT_VERSION).tar.gz:
 	$(call download_pkg,$(GETTEXT_URL),gettext)
 
@@ -356,7 +397,9 @@ gettext: gettext-$(GETTEXT_VERSION).tar.gz
 	$(MOVE)
 
 .buildgettext: gettext
-	(cd $<; ./configure --prefix=$(PREFIX) && $(MAKE) && $(MAKE) install)
+	cd $<; ./configure --prefix=$(PREFIX) $(GETTEXT_CONF)
+	+$(MAKE) -C $< EXAMPLESFILES= EXAMPLESDIRS= TESTS=
+	+$(MAKE) -C $< EXAMPLESFILES= EXAMPLESDIRS= TESTS= install
 	touch $@
 
 CLEAN_PKG += gettext
@@ -417,7 +460,9 @@ gperf: gperf-$(GPERF_VERSION).tar.gz
 	$(MOVE)
 
 .buildgperf: gperf
-	(cd $<; ./configure --prefix=$(PREFIX) && $(MAKE) && $(MAKE) install)
+	cd $<; ./configure --prefix=$(PREFIX)
+	+$(MAKE) -C $<
+	+$(MAKE) -C $< install
 	touch $@
 
 CLEAN_PKG += gperf



View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/6835f76fe95a8fbf9204bfc65febb6dffcf10731...35fb238850937ae08381f8dedc95e5b66fc6426b

-- 
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/6835f76fe95a8fbf9204bfc65febb6dffcf10731...35fb238850937ae08381f8dedc95e5b66fc6426b
You're receiving this email because of your account on code.videolan.org.


VideoLAN code repository instance


More information about the vlc-commits mailing list