From ae707279c6f4eafd693cf266ba496f360d9f44ada5dbde6fdc083960f0a7981e Mon Sep 17 00:00:00 2001 From: "Dr. Werner Fink" Date: Wed, 18 Dec 2024 07:25:21 +0000 Subject: [PATCH] Update to the latest version git.20240213.c99c8d4918 from stable-202401 branch OBS-URL: https://build.opensuse.org/package/show/Base:System/gnulib?expand=0&rev=13 --- .gitattributes | 23 +++ .gitignore | 1 + _service | 18 +++ check-module.1 | 33 +++++ gnulib-git.20211127.db493d1ce.tar.xz | 3 + gnulib-git.20240213.c99c8d4918.tar.xz | 3 + gnulib-tool.1 | 182 +++++++++++++++++++++++ gnulib.changes | 65 +++++++++ gnulib.spec | 203 ++++++++++++++++++++++++++ 9 files changed, 531 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 _service create mode 100644 check-module.1 create mode 100644 gnulib-git.20211127.db493d1ce.tar.xz create mode 100644 gnulib-git.20240213.c99c8d4918.tar.xz create mode 100644 gnulib-tool.1 create mode 100644 gnulib.changes create mode 100644 gnulib.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/_service b/_service new file mode 100644 index 0000000..f126759 --- /dev/null +++ b/_service @@ -0,0 +1,18 @@ + + + + git://git.savannah.gnu.org/gnulib.git + git + enable + gnulib + git.%cd.%h + stable-202401 + + + + *.tar + xz + + + + diff --git a/check-module.1 b/check-module.1 new file mode 100644 index 0000000..74f7346 --- /dev/null +++ b/check-module.1 @@ -0,0 +1,33 @@ +.TH CHECK-MODULE 1 "2006-06-01" "0.0.20060601" "GNU Portability Library" + +.SH NAME +check-module \- program to check gnulib modules. + +.SH SYNOPSIS +.B check-module [OPTIONS] FILE... + +.SH DESCRIPTION +The GNU portability library is a macro system and C declarations and definitions for commonly-used API elements and abstracted system behaviors. It can be used to improve portability and other functionality in your programs. +.PP +.B check-module +reads a module description file and derives the set of files included directly by any .c or .h file listed in the `Files:' section. First, it takes the union of all such sets for any dependent modules. Then, it compares that set with the set derived from the names listed in the various Files: sections. +.PP + +.SH OPTIONS +.TP +.B \-h, \-\-help +Show summary of options. +.TP +.B \-v, \-\-version +Show version of program. + +.SH BUGS +Report bugs to . + +.SH SEE ALSO +.BR gnulib (1). + +.SH AUTHOR +check-module was written by the Free Software Foundation and others (sources of various origins). +.PP +This manual page was written by Daniel Baumann , for the Debian project (but may be used by others). diff --git a/gnulib-git.20211127.db493d1ce.tar.xz b/gnulib-git.20211127.db493d1ce.tar.xz new file mode 100644 index 0000000..a1df6b1 --- /dev/null +++ b/gnulib-git.20211127.db493d1ce.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4f91267dcd962ba16b1d32f9bea2dcd788400f81ea953acbb48590cd363be1cc +size 4598580 diff --git a/gnulib-git.20240213.c99c8d4918.tar.xz b/gnulib-git.20240213.c99c8d4918.tar.xz new file mode 100644 index 0000000..7d165fd --- /dev/null +++ b/gnulib-git.20240213.c99c8d4918.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f3a00fb1f3b0b1b12c62a7491082e984c9887909809e715b66e742e6e7525940 +size 5059604 diff --git a/gnulib-tool.1 b/gnulib-tool.1 new file mode 100644 index 0000000..1b33566 --- /dev/null +++ b/gnulib-tool.1 @@ -0,0 +1,182 @@ +.TH GNULIB\-TOOL 1 "2006-06-01" "0.0.20060601" "GNU Portability Library" + +.SH NAME +gnulib\-tool \- program for authors or maintainers which want to import modules +from gnulib into their packages. + +.SH SYNOPSIS +.B gnulib\-tool +\-\-list +.PP +.B gnulib\-tool +\-\-import [module1 ... moduleN] +.PP +.B gnulib\-tool +\-\-update +.PP +.B gnulib\-tool +\-\-create-testdir \-\-dir=directory module1 ... moduleN +.PP +.B gnulib\-tool +\-\-create-megatestdir \-\-dir=directory [module1 ... moduleN] +.PP +.B gnulib\-tool +\-\-test \-\-dir=directory module1 ... moduleN +.PP +.B gnulib\-tool +\-\-megatest \-\-dir=directory [module1 ... moduleN] +.PP +.B gnulib\-tool +\-\-extract-description module +.PP +.B gnulib\-tool +\-\-extract-filelist module +.PP +.B gnulib\-tool +\-\-extract-dependencies module +.PP +.B gnulib\-tool +\-\-extract-autoconf-snippet module +.PP +.B gnulib\-tool +\-\-extract-automake-snippet module +.PP +.B gnulib\-tool +\-\-extract-include-directive module +.PP +.B gnulib\-tool +\-\-extract-license module +.PP +.B gnulib\-tool +\-\-extract-maintainer module +.PP +.B gnulib\-tool +\-\-extract-tests-module module + +.SH DESCRIPTION +The GNU portability library is a macro system and C declarations and definitions +for commonly-used API elements and abstracted system behaviors. It can be used +to improve portability and other functionality in your programs. +.PP + +.SH OPTIONS +Operation modes: +.TP +.B \-\-list +print the available module names. +.TP +.B \-\-import +import the given modules into the current package; if no modules are specified, +update the current package from the current gnulib. +.TP +.B \-\-update +update the current package, restore files omitted from CVS. +.TP +.B \-\-create-testdir +create a scratch package with the given modules. +.TP +.B \-\-create-megatestdir +create a mega scratch package with the given modules one by one and all +together. +.TP +.B \-\-test +test the combination of the given modules (recommended to use CC="gcc \-Wall" +here). +.TP +.B \-\-megatest +test the given modules one by one and all together (recommended to use CC="gcc +\-Wall" here). +.TP +.B \-\-extract-description +extract the description. +.TP +.B \-\-extract-filelist +extract the list of files. +.TP +.B \-\-extract-dependencies +extract the dependencies. +.TP +.B \-\-extract-autoconf-snippet +extract the snippet for configure.ac. +.TP +.B \-\-extract-automake-snippet +extract the snippet for lib/Makefile.am. +.TP +.B \-\-extract-include-directive +extract the #include directive. +.TP +.B \-\-extract-license +report the license terms of the source files under lib/. +.TP +.B \-\-extract-maintainer +report the maintainer(s) inside gnulib. +.TP +.B \-\-extract-tests-module +report the unit test module, if it exists. +.PP + +Options: +.TP +.B \-\-dir=DIRECTORY +specify the target directory. For \-\-import, this specifies where your +configure.ac can be found. Defaults to current directory. +.TP +.B \-\-lib=LIBRARY +Specify the library name. Defaults to 'libgnu'. +.TP +.B \-\-source-base=DIRECTORY +Directory relative \-\-dir where source code is placed (default "lib"), for +\-\-import. +.TP +.B \-\-m4-base=DIRECTORY +Directory relative \-\-dir where *.m4 macros are placed (default "m4"), for +\-\-import. +.TP +.B \-\-tests-base=DIRECTORY +Directory relative \-\-dir where unit tests are placed (default "tests"), for +\-\-import. +.TP +.B \-\-aux-dir=DIRECTORY +Directory relative \-\-dir where auxiliary build tools are placed (default +"build-aux"). +.TP +.B \-\-with-tests +Include unit tests for the included modules. +.TP +.B \-\-avoid=MODULE +Avoid including the given MODULE. Useful if you have code that provides +equivalent functionality. This option can be repeated. +.TP +.B \-\-lgpl +Abort if modules aren't available under the LGPL. Also modify license template +from GPL to LGPL. +.TP +.B \-\-libtool +Use libtool rules, for \-\-import. +.TP +.B \-\-macro-prefix=PREFIX +Specify the prefix of the macros 'gl_EARLY' and 'gl_INIT'. Default is 'gl'. +.TP +.B \-\-no-changelog +don't update or create ChangeLog files. +.TP +.B \-\-dry-run +For \-\-import, only print what would have been done. +.TP +.B -s, \-\-symbolic, \-\-symlink +Make symbolic links instead of copying files. +.PP +.TP +.B \-h, \-\-help +Show summary of options. + +.SH BUGS +Report bugs to . + +.SH SEE ALSO +.BR check-module (1). + +.SH AUTHOR +gnulib was written by the Free Software Foundation and others (sources of various origins). +.PP +This manual page was written by Daniel Baumann , for the Debian project (but may be used by others). diff --git a/gnulib.changes b/gnulib.changes new file mode 100644 index 0000000..b97d777 --- /dev/null +++ b/gnulib.changes @@ -0,0 +1,65 @@ +------------------------------------------------------------------- +Mon Mar 11 10:21:20 UTC 2024 - opensuse.lietuviu.kalba@gmail.com + +- Update to the latest version git.20240213.c99c8d4918 from + stable-202401 branch. See detailed changelog here: + https://git.savannah.gnu.org/gitweb/?p=gnulib.git;f=ChangeLog;hb=refs/heads/stable-202401 + +------------------------------------------------------------------- +Fri Apr 8 15:10:47 UTC 2022 - Fridrich Strba + +- Build with java source target levels 8 + * fixes build in factory + +------------------------------------------------------------------- +Mon Nov 29 08:29:59 UTC 2021 - mliska@suse.cz + +- Update to version git.20211127.db493d1ce: No changelog provided. + +------------------------------------------------------------------- +Thu Sep 3 14:58:56 UTC 2020 - opensuse.lietuviu.kalba@gmail.com + +- Update to version git.20200809.d6dabe8ee + to Use __builtin_signbit* with clang.: + * lib/math.in.h (signbit): Use __builtin_signbit{,f,l} also on clang. + * m4/signbit.m4 (gl_SIGNBIT): Use __builtin_signbit{,f,l} also on clang. + Set REPLACE_SIGNBIT_USING_BUILTINS, not REPLACE_SIGNBIT_USING_GCC. + * m4/math_h.m4 (gl_MATH_H_DEFAULTS): Initialize + REPLACE_SIGNBIT_USING_BUILTINS, not REPLACE_SIGNBIT_USING_GCC. + * modules/math (Makefile.am): Substitute REPLACE_SIGNBIT_USING_BUILTINS, + not REPLACE_SIGNBIT_USING_GCC. +- Earler changes can be found here: + https://git.savannah.gnu.org/cgit/gnulib.git/tree/ChangeLog +- This gnulib version is required by PSPP 1.4.0, 1.4.1 and current master. + +------------------------------------------------------------------- +Thu Sep 3 11:21:25 UTC 2020 - opensuse.lietuviu.kalba@gmail.com + +- Install relocatable.texi as well (rh#1474792). + +------------------------------------------------------------------- +Wed Feb 19 10:33:56 UTC 2020 - mliska@suse.cz + +- Update to version git.20200216.f4693b016: + * fchmodat: Make more future-proof. + * lchmod: Make more future-proof. + * lchmod: Fix buggy override on macOS, HP-UX (regression from 2020-02-08). + * xnanosleep: prefer pause, and get remaining time + * lchmod: Improve cross-compilation guess. + * fstrcmp: Add API to clean up resources. + * wctype-h: Fix compilation errors in C++ (regression from 2020-01-25). + * fchmodat, lchmod: port to buggy Linux filesystems + * autoupdate + * lchmod: pacify Coverity CID 1491216 + +------------------------------------------------------------------- +Thu Sep 17 13:56:13 UTC 2015 - p.drouand@gmail.com + +- Update to commit 601d8f444dc927daf0fbefbc866b46bfaa44f59b + Fix build + +------------------------------------------------------------------- +Tue Apr 21 16:31:08 UTC 2015 - p.drouand@gmail.com + +- Initial release (version 20150421) + diff --git a/gnulib.spec b/gnulib.spec new file mode 100644 index 0000000..c81db5f --- /dev/null +++ b/gnulib.spec @@ -0,0 +1,203 @@ +# +# spec file for package gnulib +# +# Copyright (c) 2024 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%global module1 git-merge-changelog + +Name: gnulib +Version: git.20240213.c99c8d4918 +Release: 0 +Summary: GNU Portability Library +License: GPL-2.0-or-later AND SUSE-Public-Domain AND GPL-3.0-only AND GPL-3.0-or-later AND LGPL-2.0-only AND LGPL-2.1-or-later AND LGPL-3.0-or-later +Group: Development/Languages/C and C++ +URL: http://www.gnu.org/software/gnulib +Source: %{name}-%{version}.tar.xz +Source1: http://erislabs.net/gitweb/?p=gnulib.git;a=blob_plain;hb=HEAD;f=debian/manpages/check-module.1 +Source2: http://erislabs.net/gitweb/?p=gnulib.git;a=blob_plain;hb=HEAD;f=debian/manpages/gnulib-tool.1 +BuildRequires: bison +# For building Modules, all gnulib requires must be found, Modules BRs: +BuildRequires: gettext-devel +BuildRequires: gperf +BuildRequires: help2man +BuildRequires: java-devel +BuildRequires: libtool +BuildRequires: texinfo + +%description +The GNU portability library is a macro system and C declarations and +definitions for commonly-used API elements and abstracted system behaviors. +It can be used to improve portability and other functionality in your programs. + +%package devel +Summary: Devel files of %{name} +License: GPL-2.0-or-later AND SUSE-Public-Domain AND GPL-3.0-only AND GPL-3.0-or-later AND LGPL-2.0-only AND LGPL-2.1-or-later AND LGPL-3.0-or-later +Group: Development/Languages/C and C++ +Requires: bison +Requires: coreutils +Requires: diffutils +Requires: gettext-devel +Requires: gperf +Requires: libtool +Requires: make +Requires: patch +Requires: texinfo +Provides: gnulib +BuildArch: noarch + +%description devel +The GNU portability library is a macro system and C declarations and +definitions for commonly-used API elements and abstracted system behaviors. +It can be used to improve portability and other functionality in your programs. + +This package contains devel files of %{name}. + +%package docs +Summary: Documentation for %{name} modules +License: GFDL-1.3-only +Group: Development/Languages/C and C++ +Requires: %{name}-devel = %{version}-%{release} +Requires(post): info +Requires(preun):info +BuildArch: noarch + +%description docs +The GNU portability library is a macro system and C declarations and +definitions for commonly-used API elements and abstracted system behaviors. +It can be used to improve portability and other functionality in your programs. + +This package contains documentation for %{name}. + +%package -n git-merge-changelog +Summary: Git merge driver for ChangeLog files +License: GPL-2.0-or-later +Group: Development/Languages/C and C++ + +%description -n git-merge-changelog +Git Merge Changelog is a git merge driver for changelogs that combines +parallel additions to the changelog without generating merge conflicts. +It can be enabled for specific files by setting appropriate git attributes. + +%prep +%setup -q + +#modules not to be tested by direct import +toRemove="lib-symbol-visibility havelib .*-obsolete localcharset gettext-h gettext alloca-opt alloca " + +list="$(./gnulib-tool --list)" +for item in $toRemove +do + list="$(echo $list| sed "s:\b$item\b::g")" +done +#is necessary to avoid some modules to test prep pass +./gnulib-tool --create-testdir --with-tests --with-obsolete --avoid=alloca --avoid=lib-symbol-visibility --avoid=havelib --dir=build-tests $list + +rm lib/javaversion.class +# MODULE #1 - git-merge-changelog +./gnulib-tool --create-testdir --dir=build-git-merge-changelog git-merge-changelog + +%build +# MODULE #1 - git-merge-changelog +pushd build-git-merge-changelog +%configure --prefix=%{_prefix} +make %{?_smp_mflags} +popd +#tests build +cp -p lib/timevar.def build-tests/gllib #Fix timevar.def not found +pushd build-tests +%configure --prefix=%{_prefix} +make %{?_smp_mflags} +popd +# Rebuild removed java class +javac -d lib -source 1.8 -target 1.8 lib/javaversion.java +# This part is done with the original path +make %{?_smp_mflags} MODULES.html +sed -i -r 's#HREF="(lib|m4|modules)#HREF="%{_datadir}/%{name}/\1#g' MODULES.html +sed -i "/^[ ]*gnulib_dir=/s#\`[^\`]*\`#%{_datadir}/%{name}#" gnulib-tool +# This part is done with the target path +make %{?_smp_mflags} info html +# Removing unused files +rm -f */.cvsignore +rm -f */.gitignore +rm -f */.gitattributes +rm -f lib/.cppi-disable +rm -f lib/uniname/gen-uninames.lisp + +%check +pushd build-tests +make %{?_smp_mflags} check +popd + +%install +mkdir -p %{buildroot}%{_bindir} +mkdir -p %{buildroot}%{_datadir}/%{name} +mkdir -p %{buildroot}%{_datadir}/info +mkdir -p %{buildroot}%{_datadir}/%{name}/doc +mkdir -p %{buildroot}%{_docdir}/%{name} +mkdir -p %{buildroot}%{_mandir}/man1 + +cp -p check-module %{buildroot}%{_bindir} +cp -p gnulib-tool %{buildroot}%{_bindir} +cp -rp build-aux lib m4 modules config tests %{buildroot}%{_datadir}/%{name}/ +# relocatable.texi is needed during compilation of PSPP. See rh#1474792 and +# https://src.fedoraproject.org/rpms/gnulib/c/cea2f6f12fe24479e282900341575352689d7cfe?branch=master +cp -p doc/relocatable.texi %{buildroot}%{_datadir}/%{name}/doc +# Needed for jitter +cp -p doc/{gendocs_template,gendocs_template_min,INSTALL} %{buildroot}%{_datadir}/%{name}/doc + +cp -p doc/gnulib.info %{buildroot}%{_infodir}/ +cp -p doc/gnulib.html MODULES.html NEWS COPYING ChangeLog users.txt doc/COPYING* %{buildroot}%{_docdir}/%{name}/ +cp -p %{SOURCE1} %{SOURCE2} %{buildroot}%{_mandir}/man1 + +# Module installing +pushd build-git-merge-changelog +make DESTDIR=%{buildroot} install %{?_smp_mflags} +popd +help2man -N --no-discard-stderr %{buildroot}%{_bindir}/git-merge-changelog | gzip -9c > %{buildroot}%{_mandir}/man1/git-merge-changelog.1.gz + +%post docs +/sbin/install-info %{_infodir}/%{name}.info %{_infodir}/dir || : + +%preun docs +if [ $1 = 0 ] ; then + /sbin/install-info --delete %{_infodir}/%{name}.info %{_infodir}/dir || : +fi + +%files docs +%defattr(-,root,root) +%{_infodir}/gnulib.info* +%{_docdir}/%{name}/gnulib.html +%{_docdir}/%{name}/MODULES.html +# license text is included directly in info and html files. + +%files devel +%defattr(-,root,root) +%{_datadir}/%{name}/ +%{_bindir}/gnulib-tool +%{_bindir}/check-module +%{_mandir}/*/check-module.* +%{_mandir}/*/gnulib-tool.* +%{_docdir}/%{name}/ +%exclude %{_docdir}/%{name}/MODULES.html +%exclude %{_docdir}/%{name}/gnulib.html + +%files -n git-merge-changelog +%defattr(-,root,root) +%{_bindir}/git-merge-changelog +%{_mandir}/*/git-merge-changelog.* +%doc doc/COPYINGv2 + +%changelog