autoconf2.7x: initial build

This commit is contained in:
Raven 2024-12-05 18:01:54 +06:00
parent 6bd9783494
commit 0b386fe06e
4 changed files with 304 additions and 0 deletions

View File

@ -0,0 +1,16 @@
;; Activate autoconf-mode
;; Uncomment the following code if you feel that autoconf-mode.el does better
;; job than Emacs's default autoconf.el.
;; (autoload 'autoconf-mode "autoconf-mode"
;; "Major mode for editing autoconf files." t)
;; (setq auto-mode-alist
;; (cons '("\.ac\'\|configure\.in\'" . autoconf-mode)
;; auto-mode-alist))
;; Activate autotest-mode
(autoload 'autotest-mode "autotest-mode"
"Major mode for editing autotest files." t)
(setq auto-mode-alist
(cons '("\.at\'" . autotest-mode) auto-mode-alist))

View File

@ -0,0 +1,110 @@
# Enable Emacs support
%bcond_without autoconf_enables_emacs
# Run extended test
%bcond_without autoconf_enables_optional_test
Summary: A GNU tool for automatically configuring source code
Name: autoconf2.7x
Version: 2.72
Release: 1%{?dist}
License: GPLv2+ and GFDL
Source0: https://ftp.gnu.org/gnu/autoconf/autoconf-%{version}.tar.xz
Source1: config.site
Source2: autoconf-init.el
URL: https://www.gnu.org/software/autoconf/
Patch0: autoconf27.patch
BuildArch: noarch
# run "make check" by default
%bcond_without check
# m4 >= 1.4.6 is required, >= 1.4.14 is recommended:
BuildRequires: perl
Requires: perl(File::Compare)
Requires: perl-interpreter
BuildRequires: m4 >= 1.4.14
Requires: m4 >= 1.4.14
%if %{with autoconf_enables_emacs}
Requires: emacs-filesystem
BuildRequires: emacs
%endif
# the filtering macros are currently in /etc/rpm/macros.perl:
BuildRequires: perl-generators
BuildRequires: perl-macros
BuildRequires: perl(Data::Dumper)
# from f19, Text::ParseWords is not the part of 'perl' package
BuildRequires: perl(Text::ParseWords)
# %%configure replaces config.guess/config.sub for us, which confuses autoconf
# build system and it produces empty man pages for those scripts if help2man is
# not installed
BuildRequires: help2man
BuildRequires: make, texinfo
%if %{with check}
%if %{with autoconf_enables_optional_test}
# For extended testsuite coverage
BuildRequires: gcc-gfortran
%if 0%{?fedora} >= 15
BuildRequires: erlang
%endif
%endif
%endif
# filter out bogus perl(Autom4te*) dependencies
%global __requires_exclude %{?__requires_exclude:%__requires_exclude|}^perl\\(Autom4te::
%global __provides_exclude %{?__provides_exclude:%__provides_exclude|}^perl\\(Autom4te::
%description
GNU's Autoconf is a tool for configuring source code and Makefiles.
Using Autoconf, programmers can create portable and configurable
packages, since the person building the package is allowed to
specify various configuration options.
You should install Autoconf if you are developing software and
would like to create shell scripts that configure your source code
packages. If you are installing Autoconf, you will also need to
install the GNU m4 package.
Note that the Autoconf package is not required for the end-user who
may be configuring software with an Autoconf-generated script;
Autoconf is only required for the generation of the scripts, not
their use.
%prep
%setup -n autoconf-%{version}
%patch0 -p1
mv doc/autoconf.info doc/autoconf27.info
mv doc/autoconf.texi doc/autoconf27.texi
%build
%configure --program-suffix=27 --with-lispdir=%{_emacs_sitelispdir}/autoconf27
make
%check
%if %{with check}
make check %{?_smp_mflags}
%endif
%install
%make_install
mkdir -p %{buildroot}/share
install -m 0644 %{SOURCE1} %{buildroot}%{_datadir}
##%%mv %{buildroot}/usr/share/autoconf %{buildroot}/usr/share/autoconf_27
%files
%license COPYING*
%{_bindir}/*
%{_infodir}/autoconf27.info*
# don't include standards.info, because it comes from binutils...
%exclude %{_infodir}/standards*
# don't include info's TOP directory
%exclude %{_infodir}/dir
%{_datadir}/emacs/site-lisp/*
%{_datadir}/autoconf27/
%{_datadir}/config.site
%{_mandir}/man1/*
%doc AUTHORS ChangeLog NEWS README THANKS TODO

View File

@ -0,0 +1,149 @@
Only in autoconf-version/bin: autoconf
Only in autoconf-version/bin: autoconf.in
Only in autoconf-version/bin: autoheader
Only in autoconf-version/bin: autom4te
Only in autoconf-version/bin: autoreconf
Only in autoconf-version/bin: autoscan
Only in autoconf-version/bin: autoupdate
Only in autoconf-version/bin: ifnames
Only in autoconf-version/: config.log
Only in autoconf-version/: config.status
diff -ur autoconf-2.71/doc/autoconf.texi autoconf-version/doc/autoconf.texi
--- autoconf-2.71/doc/autoconf.texi 2021-01-28 21:46:48.000000000 +0100
+++ autoconf-version/doc/autoconf.texi 2022-01-31 10:05:40.000000000 +0100
@@ -1,9 +1,9 @@
\input texinfo @c -*-texinfo-*-
@comment ========================================================
@comment %**start of header
-@setfilename autoconf.info
+@setfilename autoconf27.info
@include version.texi
-@settitle Autoconf
+@settitle Autoconf_27
@documentencoding UTF-8
@set txicodequoteundirected
@set txicodequotebacktick
@@ -227,7 +227,7 @@
@dircategory Software development
@direntry
-* Autoconf: (autoconf). Create source code configuration scripts.
+* Autoconf_27: (autoconf27). Create source code configuration scripts.
@end direntry
@dircategory Individual utilities
Only in autoconf-version/lib/autoconf: autoconf.m4f
Only in autoconf-version/lib: autom4te.cfg
Only in autoconf-version/lib/autoscan: autoscan.list
Only in autoconf-version/lib/autotest: autotest.m4f
Only in autoconf-version/lib/m4sugar: m4sh.m4f
Only in autoconf-version/lib/m4sugar: m4sugar.m4f
Only in autoconf-version/lib/m4sugar: version.m4
Only in autoconf-version/: Makefile
diff -ur autoconf-2.71/Makefile.in autoconf-version/Makefile.in
--- autoconf-2.71/Makefile.in 2021-01-28 22:06:02.000000000 +0100
+++ autoconf-version/Makefile.in 2022-01-31 10:37:04.000000000 +0100
@@ -195,7 +195,7 @@
test $$has_opt = yes
am__make_dryrun = (target_option=n; $(am__make_running_with_option))
am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
-pkgdatadir = $(datadir)/@PACKAGE@
+pkgdatadir = $(datadir)/autoconf27
pkgincludedir = $(includedir)/@PACKAGE@
pkglibdir = $(libdir)/@PACKAGE@
pkglibexecdir = $(libexecdir)/@PACKAGE@
@@ -311,13 +311,13 @@
am__v_texidevnull_0 = > /dev/null
am__v_texidevnull_1 =
am__dirstamp = $(am__leading_dot)dirstamp
-INFO_DEPS = $(srcdir)/doc/autoconf.info $(srcdir)/doc/standards.info
+INFO_DEPS = $(srcdir)/doc/autoconf27.info $(srcdir)/doc/standards.info
am__TEXINFO_TEX_DIR = $(srcdir)/build-aux
DVIS = doc/autoconf.dvi doc/standards.dvi
PDFS = doc/autoconf.pdf doc/standards.pdf
PSS = doc/autoconf.ps doc/standards.ps
HTMLS = doc/autoconf.html doc/standards.html
-TEXINFOS = doc/autoconf.texi doc/standards.texi
+TEXINFOS = doc/autoconf27.texi doc/standards.texi
TEXI2DVI = texi2dvi
TEXI2PDF = $(TEXI2DVI) --pdf --batch
MAKEINFOHTML = $(MAKEINFO) --html
@@ -691,7 +691,7 @@
AM_MAKEINFOFLAGS = --no-split
TEXI2HTML_FLAGS = -split_chapter
TEXINFO_TEX = build-aux/texinfo.tex
-info_TEXINFOS = doc/autoconf.texi doc/standards.texi
+info_TEXINFOS = doc/autoconf27.texi doc/standards.texi
doc_autoconf_TEXINFOS = doc/fdl.texi doc/install.texi
doc_standards_TEXINFOS = doc/fdl.texi doc/gnu-oids.texi doc/make-stds.texi
TAGS_FILES = $(dist_perllib_DATA) $(dist_autoconflib_DATA) \
@@ -1019,7 +1019,7 @@
@$(MKDIR_P) doc
@: > doc/$(am__dirstamp)
-$(srcdir)/doc/autoconf.info: doc/autoconf.texi $(srcdir)/doc/version.texi $(doc_autoconf_TEXINFOS)
+$(srcdir)/doc/autoconf27.info: doc/autoconf27.texi $(srcdir)/doc/version.texi $(doc_autoconf_TEXINFOS)
$(AM_V_MAKEINFO)restore=: && backupdir="$(am__leading_dot)am$$$$" && \
am__cwd=`pwd` && $(am__cd) $(srcdir) && \
rm -rf $$backupdir && mkdir $$backupdir && \
@@ -1030,7 +1030,7 @@
else :; fi && \
cd "$$am__cwd"; \
if $(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I doc -I $(srcdir)/doc \
- -o $@ $(srcdir)/doc/autoconf.texi; \
+ -o $@ $(srcdir)/doc/autoconf27.texi; \
then \
rc=0; \
$(am__cd) $(srcdir); \
@@ -1041,32 +1041,32 @@
fi; \
rm -rf $$backupdir; exit $$rc
-doc/autoconf.dvi: doc/autoconf.texi $(srcdir)/doc/version.texi $(doc_autoconf_TEXINFOS) doc/$(am__dirstamp)
+doc/autoconf.dvi: doc/autoconf27.texi $(srcdir)/doc/version.texi $(doc_autoconf_TEXINFOS) doc/$(am__dirstamp)
$(AM_V_TEXI2DVI)TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \
MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I doc -I $(srcdir)/doc' \
$(TEXI2DVI) $(AM_V_texinfo) --build-dir=$(@:.dvi=.t2d) -o $@ $(AM_V_texidevnull) \
- `test -f 'doc/autoconf.texi' || echo '$(srcdir)/'`doc/autoconf.texi
+ `test -f 'doc/autoconf27.texi' || echo '$(srcdir)/'`doc/autoconf27.texi
-doc/autoconf.pdf: doc/autoconf.texi $(srcdir)/doc/version.texi $(doc_autoconf_TEXINFOS) doc/$(am__dirstamp)
+doc/autoconf.pdf: doc/autoconf27.texi $(srcdir)/doc/version.texi $(doc_autoconf_TEXINFOS) doc/$(am__dirstamp)
$(AM_V_TEXI2PDF)TEXINPUTS="$(am__TEXINFO_TEX_DIR)$(PATH_SEPARATOR)$$TEXINPUTS" \
MAKEINFO='$(MAKEINFO) $(AM_MAKEINFOFLAGS) $(MAKEINFOFLAGS) -I doc -I $(srcdir)/doc' \
$(TEXI2PDF) $(AM_V_texinfo) --build-dir=$(@:.pdf=.t2p) -o $@ $(AM_V_texidevnull) \
- `test -f 'doc/autoconf.texi' || echo '$(srcdir)/'`doc/autoconf.texi
+ `test -f 'doc/autoconf27.texi' || echo '$(srcdir)/'`doc/autoconf27.texi
-doc/autoconf.html: doc/autoconf.texi $(srcdir)/doc/version.texi $(doc_autoconf_TEXINFOS) doc/$(am__dirstamp)
+doc/autoconf.html: doc/autoconf27.texi $(srcdir)/doc/version.texi $(doc_autoconf_TEXINFOS) doc/$(am__dirstamp)
$(AM_V_MAKEINFO)rm -rf $(@:.html=.htp)
$(AM_V_at)if $(MAKEINFOHTML) $(AM_MAKEINFOHTMLFLAGS) $(MAKEINFOFLAGS) -I doc -I $(srcdir)/doc \
- -o $(@:.html=.htp) `test -f 'doc/autoconf.texi' || echo '$(srcdir)/'`doc/autoconf.texi; \
+ -o $(@:.html=.htp) `test -f 'doc/autoconf27.texi' || echo '$(srcdir)/'`doc/autoconf27.texi; \
then \
rm -rf $@ && mv $(@:.html=.htp) $@; \
else \
rm -rf $(@:.html=.htp); exit 1; \
fi
$(srcdir)/doc/version.texi: $(srcdir)/doc/stamp-vti
-$(srcdir)/doc/stamp-vti: doc/autoconf.texi $(top_srcdir)/configure
+$(srcdir)/doc/stamp-vti: doc/autoconf27.texi $(top_srcdir)/configure
@test -f doc/$(am__dirstamp) || $(MAKE) $(AM_MAKEFLAGS) doc/$(am__dirstamp)
- @(dir=.; test -f ./doc/autoconf.texi || dir=$(srcdir); \
- set `$(SHELL) $(top_srcdir)/build-aux/mdate-sh $$dir/doc/autoconf.texi`; \
+ @(dir=.; test -f ./doc/autoconf27.texi || dir=$(srcdir); \
+ set `$(SHELL) $(top_srcdir)/build-aux/mdate-sh $$dir/doc/autoconf27.texi`; \
echo "@set UPDATED $$1 $$2 $$3"; \
echo "@set UPDATED-MONTH $$2 $$3"; \
echo "@set EDITION $(VERSION)"; \
Only in autoconf-version/tests: atconfig
Only in autoconf-version/tests: atlocal
Only in autoconf-version/tests: autoconf
Only in autoconf-version/tests: autoheader
Only in autoconf-version/tests: autom4te
Only in autoconf-version/tests: autoreconf
Only in autoconf-version/tests: autoscan
Only in autoconf-version/tests: autoupdate
Only in autoconf-version/tests: ifnames
Only in autoconf-version/tests: wrapper.in

29
base/autoconf2.7x/config.site Executable file
View File

@ -0,0 +1,29 @@
# This is the config.site file to satisfy FHS defaults when installing below
# /usr.
#
# You may override this file by your config.site using the CONFIG_SITE env
# variable.
#
# Note: This file includes also RHEL/Fedora fix for installing libraries into
# "/lib/lib64" on 64bit systems.
if test -n "$host"; then
# skip when cross-compiling
return 0
fi
if test "$prefix" = /usr \
|| { test "$prefix" = NONE && test "$ac_default_prefix" = /usr ; }
then
test "$sysconfdir" = '${prefix}/etc' && sysconfdir=/etc
test "$sharedstatedir" = '${prefix}/com' && sharedstatedir=/var
test "$localstatedir" = '${prefix}/var' && localstatedir=/var
ARCH=`uname -m`
for i in x86_64 ppc64 s390x aarch64; do
if test $ARCH = $i; then
test "$libdir" = '${exec_prefix}/lib' && libdir='${exec_prefix}/lib64'
break
fi
done
fi