[gnulib] Initial import (#1022283).

Mosaab Alzoubi moceap at fedoraproject.org
Fri Dec 20 14:22:26 UTC 2013


commit cc3f5f7452435eb03556bacae2885a8e8f08f38f
Author: Mosaab Alzoubi <moceap at hotmail.com>
Date:   Fri Dec 20 16:22:24 2013 +0200

    Initial import (#1022283).

 .gitignore     |    1 +
 check-module.1 |   33 ++++++++
 gnulib-tool.1  |  182 ++++++++++++++++++++++++++++++++++++++++
 gnulib.spec    |  251 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 sources        |    1 +
 5 files changed, 468 insertions(+), 0 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index e69de29..c187f2b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/gnulib-0ac90c5.tar.gz
diff --git a/check-module.1 b/check-module.1
new file mode 100644
index 0000000..5a14ecb
--- /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 <bug-gnulib at gnu.org>.
+
+.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 <daniel at debian.org>, for the Debian project (but may be used by others).
diff --git a/gnulib-tool.1 b/gnulib-tool.1
new file mode 100644
index 0000000..a3ed5fa
--- /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 <bug-gnulib at gnu.org>.
+
+.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 <daniel at debian.org>, for the Debian project (but may be used by others).
diff --git a/gnulib.spec b/gnulib.spec
new file mode 100644
index 0000000..d249410
--- /dev/null
+++ b/gnulib.spec
@@ -0,0 +1,251 @@
+%global githead 0ac90c5
+%global gitdate 20131219
+
+# Module Sample: (Alpha Version)
+# % global moduleX %name-of-module
+#
+# % package -n %{moduleX}
+# Summary: %{summary_of_moduleX}
+# License: %{license_of_moduleX}
+#
+# % description -n %{moduleX}
+# %description-of-module
+#
+# % prep
+# ./gnulib-tool --create-testdir --dir=build-%{moduleX} %{moduleX}
+#
+# % build
+# pushd build-%{moduleX}
+# % configure --prefix=%_prefix
+# make %{?_smp_mflags}
+# popd
+#
+# % install
+# pushd build-%{moduleX}
+# make %{?_smp_mflags} install DESTDIR=%{buildroot}
+# popd
+# help2man -N --no-discard-stderr %{buildroot}%{_bindir}/%{moduleX} | gzip -9c > %{buildroot}%{_mandir}/man1/%{moduleX}.1.gz
+#
+# % files -n %{moduleX}
+# %{_bindir}/%{moduleX}
+# %{_mandir}/*/%{moduleX}.*
+
+##################################
+# LIST OF SINGLE MODULE PACKAGES :
+# 1.git-merge-changelog
+##################################
+
+%global module1 git-merge-changelog
+%global common_desc \
+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.
+
+Name:				gnulib
+Version:			0
+Release:			4.%{gitdate}git%{?dist}
+Summary:			GNU Portability Library
+Group:				Development/System
+License:			Public Domain and BSD and GPLv2+ and GPLv3 and GPLv3+ and LGPLv2 and LGPLv2+ and LGPLv3+
+URL:				http://www.gnu.org/software/gnulib
+Source0:			http://git.savannah.gnu.org/gitweb/?p=gnulib.git;a=snapshot;h=%{githead};sf=tgz;name=%{name}-%{githead}.tar.gz
+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:		texinfo
+BuildRequires:		java-devel
+
+# For building Modules, all gnulib requires must be found, Modules BRs:
+BuildRequires:		gettext-devel
+BuildRequires:		bison
+BuildRequires:		gperf
+BuildRequires:		libtool
+BuildRequires:		help2man
+
+%description
+%common_desc
+
+%prep
+%setup -q -n %{name}-%{githead}
+rm lib/javaversion.class
+# MODULE #1 - git-merge-changelog
+./gnulib-tool --create-testdir --dir=build-%{module1} %{module1}
+
+%build
+# MODULE #1 - git-merge-changelog
+pushd build-%{module1}
+%configure --prefix=%_prefix
+make %{?_smp_mflags}
+popd
+# Rebuild removed java class
+javac -d lib -source 1.3 -target 1.3 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
+
+%install
+mkdir -p %{buildroot}%{_datadir}/%{name}
+mkdir -p %{buildroot}%{_bindir}
+mkdir -p %{buildroot}%{_datadir}/info
+mkdir -p %{buildroot}%{_pkgdocdir}
+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}/
+
+cp -p doc/gnulib.info %{buildroot}%{_datadir}/info/
+cp -p doc/gnulib.html MODULES.html NEWS COPYING ChangeLog users.txt doc/COPYING* %{buildroot}%{_pkgdocdir}/
+cp -p %{SOURCE1} %{SOURCE2} %{buildroot}%{_mandir}/man1
+
+# Module installing
+pushd build-%{module1}
+make %{?_smp_mflags} install DESTDIR=%{buildroot}
+popd
+help2man -N --no-discard-stderr %{buildroot}%{_bindir}/%{module1} | gzip -9c > %{buildroot}%{_mandir}/man1/%{module1}.1.gz
+
+#-------------------------------------------------------------------------
+
+%package docs
+Summary: Documentation for %{name} modules
+License: GFDL
+Requires(post):		info
+Requires(preun):	info
+Requires:			%{name}-devel = %{version}-%{release}
+BuildArch: noarch
+
+%description docs
+%common_desc
+
+This package contains documentation for %{name}.
+
+%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
+%{_datadir}/info/gnulib.info.gz
+%{_pkgdocdir}/gnulib.html
+%{_pkgdocdir}/MODULES.html
+# license text is included directly in info and html files.
+
+#-------------------------------------------------------------------------
+
+%package devel
+Summary: Devel files of %{name}
+BuildArch: noarch
+Provides: gnulib
+Requires: gettext-devel
+Requires: bison
+Requires: coreutils
+Requires: gperf
+Requires: libtool
+Requires: make
+Requires: texinfo
+Requires: diffutils
+Requires: patch
+
+%description devel
+%common_desc
+
+This package contains devel files of %{name}.
+
+%files devel
+%{_datadir}/%{name}/
+%{_bindir}/gnulib-tool
+%{_bindir}/check-module
+%{_mandir}/*/check-module.*
+%{_mandir}/*/gnulib-tool.*
+%{_pkgdocdir}/
+%exclude %{_pkgdocdir}/MODULES.html
+%exclude %{_pkgdocdir}/gnulib.html
+
+#-------------------------------------------------------------------------
+
+# MODULE #1 - git-merge-changelog
+%package -n %{module1}
+Summary: Git merge driver for ChangeLog files
+License: GPLv2+
+
+%description -n %{module1}
+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.
+
+%files -n %{module1}
+%{_bindir}/%{module1}
+%{_mandir}/*/%{module1}.*
+%doc doc/COPYINGv2
+
+#-------------------------------------------------------------------------
+
+%changelog
+* Thu Dec 19 2013 Mosaab Alzoubi <moceap at hotmail.com> - 0-4.20131219git
+- Update.
+- General tweaks.
+- Remove META main package.
+- Rename -core into -devel.
+- Remove main package from other packages requires.
+- -docs requires -devel.
+- Move main requires to -devel ones.
+- -devel provides main package.
+- Remove un-need-to-list-BRs diffutils make coreutils patch.
+- United path for documents for all packages.
+
+* Sun Dec 1 2013 Mosaab Alzoubi <moceap at hotmail.com> - 0-3.20131201git
+- Update.
+
+* Thu Nov 14 2013 Mosaab Alzoubi <moceap at hotmail.com> - 0-2.20131112git
+- Fix tag method to 0-$rel.$gitdategit instead of $ver.git$gitdate-$rel. 
+- Release number will increas by new git snapshot.
+
+* Tue Nov 12 2013 Mosaab Alzoubi <moceap at hotmail.com> - 0.1.git20131112-1
+- After more 6 years in 0.0, GnuLib 0.1 released.
+- Replace version method to $ver.git$gitdate instead of $gitdate.git$githead.
+- Update to 0.1.git20131112.
+
+* Fri Nov 1 2013 Mosaab Alzoubi <moceap at hotmail.com> - 20131030.git5c508f6-2
+- Decrease description of git-merge-changelog
+- Add license file to git-merge-changelog
+
+* Wed Oct 30 2013 Mosaab Alzoubi <moceap at hotmail.com> - 20131030.git5c508f6-1
+- Update to 20131030.git5c508f6
+- Create -core noarch package, because rpmbuild can't drive arched subpackage from nonarched main one.
+- Some General Fixes.
+- Add 1st sample form - Module Sample: (Alpha Version)
+- Add 1st module single package - git-merge-changelog
+
+* Mon Oct 28 2013 Mosaab Alzoubi <moceap at hotmail.com> - 20131027.git5191b35-2
+- Fixes after Zbigniew Jędrzejewski-Szmek revision:
+- Remove prebuilt java class.
+- gnulib-docs require gnulib.
+- List all licenses.
+- Replace define by global.
+
+* Sun Oct 27 2013 Mosaab Alzoubi <moceap at hotmail.com> - 20131027.git5191b35-1
+- Update.
+
+* Sat Oct 26 2013 Zbigniew Jędrzejewski-Szmek <zbyszek at in.waw.pl> - 20131022.git25fb29a-4
+- Spec file tweaks.
+- Package MODULES.html.
+
+* Thu Oct 24 2013 Mosaab Alzoubi <moceap at hotmail.com> - 20131022.git25fb29a-3
+- Many Fixes.
+
+* Thu Oct 24 2013 Mosaab Alzoubi <moceap at hotmail.com> - 20131022.git25fb29a-2
+- Many Fixes.
+
+* Tue Oct 22 2013 Mosaab Alzoubi <moceap at hotmail.com> - 20131022.git25fb29a-1
+- Initial build.
diff --git a/sources b/sources
index e69de29..f79266e 100644
--- a/sources
+++ b/sources
@@ -0,0 +1 @@
+ba6f8a6704988f5c7d3f7e8e331461aa  gnulib-0ac90c5.tar.gz


More information about the scm-commits mailing list