[pacman-dev] [PATCH] Remove autotools support
Anatol Pomozov
anatol.pomozov at gmail.com
Mon May 11 03:21:17 UTC 2020
On Sun, May 10, 2020 at 8:09 PM Allan McRae <allan at archlinux.org> wrote:
>
> This removes support for autotools in favour of meson.
> ---
>
> I'd still like support for including man pages (with --prefix=/usr) when
> running "ninja dist". However, I am also happy taking the heavy handed approach of adding the built man pages to git if no solution is forthcoming.
>
> There is probably some .gitignore cleanup that can be done in the translation
> directories.
>
> .gitignore | 21 --
> .gitlab-ci.yml | 17 -
> HACKING | 13 -
> INSTALL | 370 ---------------------
> Makefile.am | 78 -----
> RELEASE | 9 +-
> configure.ac | 594 ----------------------------------
> doc/Makefile.am | 162 ----------
> doc/index.asciidoc | 8 +-
> etc/Makefile.am | 27 --
> lib/libalpm/Makefile.am | 78 -----
> scripts/Makefile.am | 287 ----------------
> src/common/Makefile.am | 3 -
> src/pacman/Makefile.am | 69 ----
> src/util/Makefile.am | 27 --
> test/pacman/Makefile.am | 22 --
> test/pacman/tests/Makefile.am | 5 -
> test/scripts/Makefile.am | 10 -
> test/util/Makefile.am | 8 -
> 19 files changed, 8 insertions(+), 1800 deletions(-)
> delete mode 100644 INSTALL
> delete mode 100644 Makefile.am
> delete mode 100644 configure.ac
> delete mode 100644 doc/Makefile.am
> delete mode 100644 etc/Makefile.am
> delete mode 100644 lib/libalpm/Makefile.am
> delete mode 100644 scripts/Makefile.am
> delete mode 100644 src/common/Makefile.am
> delete mode 100644 src/pacman/Makefile.am
> delete mode 100644 src/util/Makefile.am
> delete mode 100644 test/pacman/Makefile.am
> delete mode 100644 test/pacman/tests/Makefile.am
> delete mode 100644 test/scripts/Makefile.am
> delete mode 100644 test/util/Makefile.am
>
> diff --git a/.gitignore b/.gitignore
> index 499d499b..01975fd2 100644
> --- a/.gitignore
> +++ b/.gitignore
> @@ -1,24 +1,3 @@
> *~
> *.o
> -ABOUT-NLS
> -aclocal.m4
> -autom4te.cache
> -config.h
> -config.h.in
> -config.log
> -config.status
> -config.status.lineno
> -configure
> -configure.lineno
> -cov-int
> -cscope.in.out
> -cscope.out
> -cscope.po.out
> -intl
> -libtool
> -Makefile
> -Makefile.in
> pacman-*.tar.gz
> -root
> -stamp-h1
> -tags
> diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
> index a53d60cf..65b8c729 100644
> --- a/.gitlab-ci.yml
> +++ b/.gitlab-ci.yml
> @@ -34,23 +34,6 @@ arch-docs:
> - meson -Ddoc=enabled build
> - ninja -C build
>
> -arch-autoconf:
> - extends: .arch-test
> - script:
> - - pacman -Syu --needed --noconfirm autoconf-archive
> - - autoreconf -i
> - - ./configure --enable-warningflags --disable-doc
> - - make
> - - fakechroot make check
> -
> -arch-distcheck:
> - extends: .arch-test
> - script:
> - - pacman -Syu --needed --noconfirm autoconf-archive asciidoc
> - - autoreconf -i
> - - ./configure --enable-warningflags
> - - fakechroot make distcheck
> -
> arch-clang:
> extends: .arch-test
> script:
> diff --git a/HACKING b/HACKING
> index 009a4682..334b7ac0 100644
> --- a/HACKING
> +++ b/HACKING
> @@ -176,16 +176,3 @@ For pacman:
> -------------------------------------------
>
> Never directly include config.h. This will always be added via Makefiles.
> -
> -GDB and Valgrind Usage
> -~~~~~~~~~~~~~~~~~~~~~~
> -
> -When using GDB or valgrind on pacman, you will want to run it on the actual
> -binary rather than the shell script wrapper produced by libtool. The actual
> -binary lives at `src/pacman/.libs/lt-pacman`, and will exist after running
> -`./src/pacman/pacman` at least once.
> -
> -For example, to run valgrind:
> -
> - ./src/pacman/pacman
> - valgrind --leak-check=full -- src/pacman/.libs/lt-pacman -Syu
> diff --git a/INSTALL b/INSTALL
> deleted file mode 100644
> index 007e9396..00000000
> --- a/INSTALL
> +++ /dev/null
> @@ -1,370 +0,0 @@
> -Installation Instructions
> -*************************
> -
> -Copyright (C) 1994-1996, 1999-2002, 2004-2013 Free Software Foundation,
> -Inc.
> -
> - Copying and distribution of this file, with or without modification,
> -are permitted in any medium without royalty provided the copyright
> -notice and this notice are preserved. This file is offered as-is,
> -without warranty of any kind.
> -
> -Basic Installation
> -==================
> -
> - Briefly, the shell commands `./configure; make; make install' should
> -configure, build, and install this package. The following
> -more-detailed instructions are generic; see the `README' file for
> -instructions specific to this package. Some packages provide this
> -`INSTALL' file but do not implement all of the features documented
> -below. The lack of an optional feature in a given package is not
> -necessarily a bug. More recommendations for GNU packages can be found
> -in *note Makefile Conventions: (standards)Makefile Conventions.
> -
> - The `configure' shell script attempts to guess correct values for
> -various system-dependent variables used during compilation. It uses
> -those values to create a `Makefile' in each directory of the package.
> -It may also create one or more `.h' files containing system-dependent
> -definitions. Finally, it creates a shell script `config.status' that
> -you can run in the future to recreate the current configuration, and a
> -file `config.log' containing compiler output (useful mainly for
> -debugging `configure').
> -
> - It can also use an optional file (typically called `config.cache'
> -and enabled with `--cache-file=config.cache' or simply `-C') that saves
> -the results of its tests to speed up reconfiguring. Caching is
> -disabled by default to prevent problems with accidental use of stale
> -cache files.
> -
> - If you need to do unusual things to compile the package, please try
> -to figure out how `configure' could check whether to do them, and mail
> -diffs or instructions to the address given in the `README' so they can
> -be considered for the next release. If you are using the cache, and at
> -some point `config.cache' contains results you don't want to keep, you
> -may remove or edit it.
> -
> - The file `configure.ac' (or `configure.in') is used to create
> -`configure' by a program called `autoconf'. You need `configure.ac' if
> -you want to change it or regenerate `configure' using a newer version
> -of `autoconf'.
> -
> - The simplest way to compile this package is:
> -
> - 1. `cd' to the directory containing the package's source code and type
> - `./configure' to configure the package for your system.
> -
> - Running `configure' might take a while. While running, it prints
> - some messages telling which features it is checking for.
> -
> - 2. Type `make' to compile the package.
> -
> - 3. Optionally, type `make check' to run any self-tests that come with
> - the package, generally using the just-built uninstalled binaries.
> -
> - 4. Type `make install' to install the programs and any data files and
> - documentation. When installing into a prefix owned by root, it is
> - recommended that the package be configured and built as a regular
> - user, and only the `make install' phase executed with root
> - privileges.
> -
> - 5. Optionally, type `make installcheck' to repeat any self-tests, but
> - this time using the binaries in their final installed location.
> - This target does not install anything. Running this target as a
> - regular user, particularly if the prior `make install' required
> - root privileges, verifies that the installation completed
> - correctly.
> -
> - 6. You can remove the program binaries and object files from the
> - source code directory by typing `make clean'. To also remove the
> - files that `configure' created (so you can compile the package for
> - a different kind of computer), type `make distclean'. There is
> - also a `make maintainer-clean' target, but that is intended mainly
> - for the package's developers. If you use it, you may have to get
> - all sorts of other programs in order to regenerate files that came
> - with the distribution.
> -
> - 7. Often, you can also type `make uninstall' to remove the installed
> - files again. In practice, not all packages have tested that
> - uninstallation works correctly, even though it is required by the
> - GNU Coding Standards.
> -
> - 8. Some packages, particularly those that use Automake, provide `make
> - distcheck', which can by used by developers to test that all other
> - targets like `make install' and `make uninstall' work correctly.
> - This target is generally not run by end users.
> -
> -Compilers and Options
> -=====================
> -
> - Some systems require unusual options for compilation or linking that
> -the `configure' script does not know about. Run `./configure --help'
> -for details on some of the pertinent environment variables.
> -
> - You can give `configure' initial values for configuration parameters
> -by setting variables in the command line or in the environment. Here
> -is an example:
> -
> - ./configure CC=c99 CFLAGS=-g LIBS=-lposix
> -
> - *Note Defining Variables::, for more details.
> -
> -Compiling For Multiple Architectures
> -====================================
> -
> - You can compile the package for more than one kind of computer at the
> -same time, by placing the object files for each architecture in their
> -own directory. To do this, you can use GNU `make'. `cd' to the
> -directory where you want the object files and executables to go and run
> -the `configure' script. `configure' automatically checks for the
> -source code in the directory that `configure' is in and in `..'. This
> -is known as a "VPATH" build.
> -
> - With a non-GNU `make', it is safer to compile the package for one
> -architecture at a time in the source code directory. After you have
> -installed the package for one architecture, use `make distclean' before
> -reconfiguring for another architecture.
> -
> - On MacOS X 10.5 and later systems, you can create libraries and
> -executables that work on multiple system types--known as "fat" or
> -"universal" binaries--by specifying multiple `-arch' options to the
> -compiler but only a single `-arch' option to the preprocessor. Like
> -this:
> -
> - ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
> - CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
> - CPP="gcc -E" CXXCPP="g++ -E"
> -
> - This is not guaranteed to produce working output in all cases, you
> -may have to build one architecture at a time and combine the results
> -using the `lipo' tool if you have problems.
> -
> -Installation Names
> -==================
> -
> - By default, `make install' installs the package's commands under
> -`/usr/local/bin', include files under `/usr/local/include', etc. You
> -can specify an installation prefix other than `/usr/local' by giving
> -`configure' the option `--prefix=PREFIX', where PREFIX must be an
> -absolute file name.
> -
> - You can specify separate installation prefixes for
> -architecture-specific files and architecture-independent files. If you
> -pass the option `--exec-prefix=PREFIX' to `configure', the package uses
> -PREFIX as the prefix for installing programs and libraries.
> -Documentation and other data files still use the regular prefix.
> -
> - In addition, if you use an unusual directory layout you can give
> -options like `--bindir=DIR' to specify different values for particular
> -kinds of files. Run `configure --help' for a list of the directories
> -you can set and what kinds of files go in them. In general, the
> -default for these options is expressed in terms of `${prefix}', so that
> -specifying just `--prefix' will affect all of the other directory
> -specifications that were not explicitly provided.
> -
> - The most portable way to affect installation locations is to pass the
> -correct locations to `configure'; however, many packages provide one or
> -both of the following shortcuts of passing variable assignments to the
> -`make install' command line to change installation locations without
> -having to reconfigure or recompile.
> -
> - The first method involves providing an override variable for each
> -affected directory. For example, `make install
> -prefix=/alternate/directory' will choose an alternate location for all
> -directory configuration variables that were expressed in terms of
> -`${prefix}'. Any directories that were specified during `configure',
> -but not in terms of `${prefix}', must each be overridden at install
> -time for the entire installation to be relocated. The approach of
> -makefile variable overrides for each directory variable is required by
> -the GNU Coding Standards, and ideally causes no recompilation.
> -However, some platforms have known limitations with the semantics of
> -shared libraries that end up requiring recompilation when using this
> -method, particularly noticeable in packages that use GNU Libtool.
> -
> - The second method involves providing the `DESTDIR' variable. For
> -example, `make install DESTDIR=/alternate/directory' will prepend
> -`/alternate/directory' before all installation names. The approach of
> -`DESTDIR' overrides is not required by the GNU Coding Standards, and
> -does not work on platforms that have drive letters. On the other hand,
> -it does better at avoiding recompilation issues, and works well even
> -when some directory options were not specified in terms of `${prefix}'
> -at `configure' time.
> -
> -Optional Features
> -=================
> -
> - If the package supports it, you can cause programs to be installed
> -with an extra prefix or suffix on their names by giving `configure' the
> -option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
> -
> - Some packages pay attention to `--enable-FEATURE' options to
> -`configure', where FEATURE indicates an optional part of the package.
> -They may also pay attention to `--with-PACKAGE' options, where PACKAGE
> -is something like `gnu-as' or `x' (for the X Window System). The
> -`README' should mention any `--enable-' and `--with-' options that the
> -package recognizes.
> -
> - For packages that use the X Window System, `configure' can usually
> -find the X include and library files automatically, but if it doesn't,
> -you can use the `configure' options `--x-includes=DIR' and
> -`--x-libraries=DIR' to specify their locations.
> -
> - Some packages offer the ability to configure how verbose the
> -execution of `make' will be. For these packages, running `./configure
> ---enable-silent-rules' sets the default to minimal output, which can be
> -overridden with `make V=1'; while running `./configure
> ---disable-silent-rules' sets the default to verbose, which can be
> -overridden with `make V=0'.
> -
> -Particular systems
> -==================
> -
> - On HP-UX, the default C compiler is not ANSI C compatible. If GNU
> -CC is not installed, it is recommended to use the following options in
> -order to use an ANSI C compiler:
> -
> - ./configure CC="cc -Ae -D_XOPEN_SOURCE=500"
> -
> -and if that doesn't work, install pre-built binaries of GCC for HP-UX.
> -
> - HP-UX `make' updates targets which have the same time stamps as
> -their prerequisites, which makes it generally unusable when shipped
> -generated files such as `configure' are involved. Use GNU `make'
> -instead.
> -
> - On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
> -parse its `<wchar.h>' header file. The option `-nodtk' can be used as
> -a workaround. If GNU CC is not installed, it is therefore recommended
> -to try
> -
> - ./configure CC="cc"
> -
> -and if that doesn't work, try
> -
> - ./configure CC="cc -nodtk"
> -
> - On Solaris, don't put `/usr/ucb' early in your `PATH'. This
> -directory contains several dysfunctional programs; working variants of
> -these programs are available in `/usr/bin'. So, if you need `/usr/ucb'
> -in your `PATH', put it _after_ `/usr/bin'.
> -
> - On Haiku, software installed for all users goes in `/boot/common',
> -not `/usr/local'. It is recommended to use the following options:
> -
> - ./configure --prefix=/boot/common
> -
> -Specifying the System Type
> -==========================
> -
> - There may be some features `configure' cannot figure out
> -automatically, but needs to determine by the type of machine the package
> -will run on. Usually, assuming the package is built to be run on the
> -_same_ architectures, `configure' can figure that out, but if it prints
> -a message saying it cannot guess the machine type, give it the
> -`--build=TYPE' option. TYPE can either be a short name for the system
> -type, such as `sun4', or a canonical name which has the form:
> -
> - CPU-COMPANY-SYSTEM
> -
> -where SYSTEM can have one of these forms:
> -
> - OS
> - KERNEL-OS
> -
> - See the file `config.sub' for the possible values of each field. If
> -`config.sub' isn't included in this package, then this package doesn't
> -need to know the machine type.
> -
> - If you are _building_ compiler tools for cross-compiling, you should
> -use the option `--target=TYPE' to select the type of system they will
> -produce code for.
> -
> - If you want to _use_ a cross compiler, that generates code for a
> -platform different from the build platform, you should specify the
> -"host" platform (i.e., that on which the generated programs will
> -eventually be run) with `--host=TYPE'.
> -
> -Sharing Defaults
> -================
> -
> - If you want to set default values for `configure' scripts to share,
> -you can create a site shell script called `config.site' that gives
> -default values for variables like `CC', `cache_file', and `prefix'.
> -`configure' looks for `PREFIX/share/config.site' if it exists, then
> -`PREFIX/etc/config.site' if it exists. Or, you can set the
> -`CONFIG_SITE' environment variable to the location of the site script.
> -A warning: not all `configure' scripts look for a site script.
> -
> -Defining Variables
> -==================
> -
> - Variables not defined in a site shell script can be set in the
> -environment passed to `configure'. However, some packages may run
> -configure again during the build, and the customized values of these
> -variables may be lost. In order to avoid this problem, you should set
> -them in the `configure' command line, using `VAR=value'. For example:
> -
> - ./configure CC=/usr/local2/bin/gcc
> -
> -causes the specified `gcc' to be used as the C compiler (unless it is
> -overridden in the site shell script).
> -
> -Unfortunately, this technique does not work for `CONFIG_SHELL' due to
> -an Autoconf limitation. Until the limitation is lifted, you can use
> -this workaround:
> -
> - CONFIG_SHELL=/bin/bash ./configure CONFIG_SHELL=/bin/bash
> -
> -`configure' Invocation
> -======================
> -
> - `configure' recognizes the following options to control how it
> -operates.
> -
> -`--help'
> -`-h'
> - Print a summary of all of the options to `configure', and exit.
> -
> -`--help=short'
> -`--help=recursive'
> - Print a summary of the options unique to this package's
> - `configure', and exit. The `short' variant lists options used
> - only in the top level, while the `recursive' variant lists options
> - also present in any nested packages.
> -
> -`--version'
> -`-V'
> - Print the version of Autoconf used to generate the `configure'
> - script, and exit.
> -
> -`--cache-file=FILE'
> - Enable the cache: use and save the results of the tests in FILE,
> - traditionally `config.cache'. FILE defaults to `/dev/null' to
> - disable caching.
> -
> -`--config-cache'
> -`-C'
> - Alias for `--cache-file=config.cache'.
> -
> -`--quiet'
> -`--silent'
> -`-q'
> - Do not print messages saying which checks are being made. To
> - suppress all normal output, redirect it to `/dev/null' (any error
> - messages will still be shown).
> -
> -`--srcdir=DIR'
> - Look for the package's source code in directory DIR. Usually
> - `configure' can determine that directory automatically.
> -
> -`--prefix=DIR'
> - Use DIR as the installation prefix. *note Installation Names::
> - for more details, including other options available for fine-tuning
> - the installation locations.
> -
> -`--no-create'
> -`-n'
> - Run the configure checks, but stop before creating any output
> - files.
> -
> -`configure' also accepts some other, not widely useful, options. Run
> -`configure --help' for more details.
> diff --git a/Makefile.am b/Makefile.am
> deleted file mode 100644
> index fbbc2559..00000000
> --- a/Makefile.am
> +++ /dev/null
> @@ -1,78 +0,0 @@
> -SUBDIRS = lib/libalpm src/util src/pacman scripts etc test/pacman test/util test/scripts
> -if WANT_DOC
> -SUBDIRS += doc
> -endif
> -
> -DIST_SUBDIRS = $(SUBDIRS) src/common
> -
> -ACLOCAL_AMFLAGS = -I m4 --install
> -AM_MAKEFLAGS = --no-print-directory
> -
> -# Make sure we test and build manpages when doing distcheck
> -DISTCHECK_CONFIGURE_FLAGS = --enable-doc --disable-git-version \
> - bashcompdir='$${prefix}/share/bash-completion/completions'
> -
> -# Some files automatically included, so they aren't specified below:
> -# AUTHORS, COPYING, NEWS, README
> -EXTRA_DIST = \
> - HACKING test/tap.sh \
> - meson.build meson_options.txt \
> - build-aux/edit-script.sh.in \
> - build-aux/meson-make-symlink.sh \
> - build-aux/script-wrapper.sh.in
> -
> -
> -# Sample makepkg prototype files
> -pkgdatadir = ${datadir}/${PACKAGE}
> -dist_pkgdata_DATA = \
> - proto/PKGBUILD.proto \
> - proto/PKGBUILD-split.proto \
> - proto/PKGBUILD-vcs.proto \
> - proto/proto.install
> -
> -$(top_srcdir)/test/pacman/tests/TESTS: $(wildcard test/pacman/tests/*.py)
> - @printf "TESTS += %s\n" $^ | LC_ALL=C sort -u > "$@"
> -
> -TESTS = test/scripts/parseopts_test.sh \
> - test/scripts/makepkg-template_test.sh \
> - test/scripts/pacman-db-upgrade-v9.py \
> - test/util/vercmptest.sh
> -include $(top_srcdir)/test/pacman/tests/TESTS
> -
> -TEST_SUITE_LOG = test/test-suite.log
> -TEST_EXTENSIONS = .py
> -AM_TESTS_ENVIRONMENT = \
> - PMTEST_UTIL_DIR=$(top_builddir)/src/util/; export PMTEST_UTIL_DIR; \
> - PMTEST_SCRIPT_DIR=$(top_builddir)/scripts/; export PMTEST_SCRIPT_DIR; \
> - PMTEST_SCRIPTLIB_DIR=$(top_srcdir)/scripts/library/; export PMTEST_SCRIPTLIB_DIR; \
> - PMTEST_LIBMAKEPKG_DIR=$(top_builddir)/scripts/libmakepkg/; export PMTEST_LIBMAKEPKG_DIR;
> -LOG_DRIVER = env AM_TAP_AWK='$(AWK)' $(SHELL) \
> - $(top_srcdir)/build-aux/tap-driver.sh
> -PY_LOG_DRIVER = env AM_TAP_AWK='$(AWK)' $(SHELL) \
> - $(top_srcdir)/build-aux/tap-driver.sh
> -PY_LOG_COMPILER = $(PYTHON) $(top_srcdir)/test/pacman/pactest.py
> -AM_PY_LOG_FLAGS = \
> - --scriptlet-shell $(SCRIPTLET_SHELL) \
> - --ldconfig $(LDCONFIG) \
> - --bindir $(top_builddir)/src/pacman \
> - --bindir $(top_builddir)/scripts
> -if !HAVE_LIBGPGME
> -AM_PY_LOG_FLAGS += --without-gpg
> -endif
> -if !HAVE_LIBCURL
> -AM_PY_LOG_FLAGS += --without-curl
> -endif
> -
> -# create the pacman DB, cache, makepkg-template and system hook directories upon install
> -install-data-local:
> - for dir in "$(DESTDIR)$(localstatedir)/lib/pacman" "$(DESTDIR)$(localstatedir)/cache/pacman/pkg" \
> - "$(DESTDIR)$(datarootdir)/makepkg-template" "$(DESTDIR)$(datarootdir)/libalpm/hooks"; do \
> - test -z "$$dir" || $(MKDIR_P) "$$dir"; \
> - done
> -
> -update-po:
> - $(MAKE) -C lib/libalpm/po update-po
> - $(MAKE) -C scripts/po update-po
> - $(MAKE) -C src/pacman/po update-po
> -
> -.PHONY: update-po
> diff --git a/RELEASE b/RELEASE
> index 7a9184b4..1ce462fd 100644
> --- a/RELEASE
> +++ b/RELEASE
> @@ -1,22 +1,21 @@
> The following checklist should be used for making a pacman release.
>
> -- Ensure "make distcheck" succeeds
> +- Ensure "ninja dist" succeeds
> - Call a freeze to development.
> - Send translation updates to Transifex at least two weeks before a major
> release (see below). At this stage, strings can only be changed for a
> major issue.
> - Update NEWS and README files
> - Pull translation updates from Transifex
> -- Update version in configure.ac as described in file
> +- Update version in meson.build as described in file
> - Update doc/index.asciidoc
> - Create a signed git tag (git tag -s vX.Y.Z -m "commit message")
> -- Create and sign release tarballs (generate with "make distcheck")
> - - In addition to the standard autotools toolchain, autoconf-archive is needed
> +- Create and sign release tarballs (generate with "ninja dist")
> - Update pacman website
>
> Transifex updates are handled using the transifex client. The basic process is:
> - Pull updates from transifex ("tx pull -a -f --minimum-perc 75")
> -- Update po files ("make update-po")
> +- Update po files ("./build-aux/update-po")
> - Fix all translation errors found
> - Add any new locales to the relevant LINGUAS file
> - Optional: Make any manual changes needed (e.g. fixing spacing in a string)
> diff --git a/configure.ac b/configure.ac
> deleted file mode 100644
> index 9db39232..00000000
> --- a/configure.ac
> +++ /dev/null
> @@ -1,594 +0,0 @@
> -# -*- Autoconf -*-
> -# Process this file with autoconf to produce a configure script.
> -# Minimum version of autoconf required
> -AC_PREREQ(2.64)
> -
> -# UPDATING VERSION NUMBERS FOR RELEASES
> -#
> -# libalpm:
> -# current
> -# The most recent interface number that this library implements.
> -# revision
> -# The implementation number of the current interface.
> -# age
> -# The difference between the newest and oldest interfaces that this library
> -# implements. In other words, the library implements all the interface
> -# numbers in the range from number current - age to current.
> -#
> -# 1. Start with version information of `0:0:0' for each libtool library.
> -# 2. Update the version information only immediately before a public release of
> -# your software. More frequent updates are unnecessary, and only guarantee
> -# that the current interface number gets larger faster.
> -# 3. If the library source code has changed at all since the last update, then
> -# increment revision (`c:r:a' becomes `c:r+1:a').
> -# 4. If any interfaces have been added, removed, or changed since the last
> -# update, increment current, and set revision to 0.
> -# 5. If any interfaces have been added since the last public release, then
> -# increment age.
> -# 6. If any interfaces have been removed since the last public release, then
> -# set age to 0.
> -#
> -# pacman:
> -# Extreme huge major changes:
> -# pacman_version_major += 1
> -# pacman_version_minor = 0
> -# pacman_version_micro = 0
> -#
> -# Real releases:
> -# pacman_version_minor += 1
> -# pacman_version_micro = 0
> -#
> -# Bugfix releases:
> -# pacman_version_micro += 1
> -
> -m4_define([lib_current], [12])
> -m4_define([lib_revision], [1])
> -m4_define([lib_age], [0])
> -
> -m4_define([pacman_version_major], [5])
> -m4_define([pacman_version_minor], [2])
> -m4_define([pacman_version_micro], [1])
> -m4_define([pacman_version],
> - [pacman_version_major.pacman_version_minor.pacman_version_micro])
> -
> -# Autoconf initialization
> -AC_INIT([pacman], [pacman_version], [pacman-dev at archlinux.org])
> -AC_CONFIG_SRCDIR([config.h.in])
> -AC_CONFIG_HEADERS([config.h])
> -AC_CONFIG_MACRO_DIR([m4])
> -AC_CONFIG_AUX_DIR([build-aux])
> -AC_REQUIRE_AUX_FILE([tap-driver.sh])
> -
> -AC_CANONICAL_HOST
> -AM_INIT_AUTOMAKE([1.11 foreign])
> -AM_SILENT_RULES([yes])
> -
> -LT_INIT
> -LIB_VERSION=`expr lib_current - lib_age`.lib_age.lib_revision
> -LIB_VERSION_INFO="lib_current:lib_revision:lib_age"
> -
> -# Respect empty CFLAGS during compiler tests
> -if test "x$CFLAGS" = "x"; then
> - CFLAGS=""
> -fi
> -
> -# Set substitution values for version stuff in Makefiles and anywhere else,
> -# and put LIB_VERSION in config.h
> -AC_SUBST(LIB_VERSION)
> -AC_SUBST(LIB_VERSION_INFO)
> -AC_DEFINE_UNQUOTED([LIB_VERSION], ["$LIB_VERSION"], [libalpm version number])
> -
> -# Help line for root directory
> -AC_ARG_WITH(root-dir,
> - AS_HELP_STRING([--with-root-dir=path], [set the location of the root operating directory]),
> - [ROOTDIR=$withval], [ROOTDIR=/])
> -
> -# Help line for package extension
> -AC_ARG_WITH(pkg-ext,
> - AS_HELP_STRING([--with-pkg-ext=ext], [set the file extension used by packages]),
> - [PKGEXT=$withval], [PKGEXT=.pkg.tar.gz])
> -
> -# Help line for source package directory
> -AC_ARG_WITH(src-ext,
> - AS_HELP_STRING([--with-src-ext=ext], [set the file extension used by source packages]),
> - [SRCEXT=$withval], [SRCEXT=.src.tar.gz])
> -
> -# Help line for buildscript filename
> -AC_ARG_WITH(buildscript,
> - AS_HELP_STRING([--with-buildscript=name], [set the build script name used by makepkg]),
> - [BUILDSCRIPT=$withval], [BUILDSCRIPT=PKGBUILD])
> -
> -# Help line for buildscript filename
> -AC_ARG_WITH(makepkg-template-dir,
> - AS_HELP_STRING([--with-makepkg-template-dir=name], [set the template dir used by makepkg-template]),
> - [TEMPLATE_DIR=$withval], [TEMPLATE_DIR=${datarootdir}/makepkg-template])
> -
> -# Help line for debug package suffix
> -AC_ARG_WITH(debug-suffix,
> - AS_HELP_STRING([--with-debug-suffix=name], [set the suffix for split debugging symbol packages used by makepkg]),
> - [DEBUGSUFFIX=$withval], [DEBUGSUFFIX=debug])
> -
> -# Help line for changing shell used to run install scriptlets
> -AC_ARG_WITH(scriptlet-shell,
> - AS_HELP_STRING([--with-scriptlet-shell=shell],
> - [set the full path to the shell used to run install scriptlets]),
> - [SCRIPTLET_SHELL=$withval], [SCRIPTLET_SHELL=/bin/sh])
> -
> -# Help line for ldconfig path
> -AC_ARG_WITH(ldconfig,
> - AS_HELP_STRING([--with-ldconfig=path],
> - [set the full path to ldconfig]),
> - [LDCONFIG=$withval], [LDCONFIG=/sbin/ldconfig])
> -
> -# Help line for determining whether file is seccomp-enabled
> -AC_ARG_WITH(file-seccomp,
> - AS_HELP_STRING([--with-file-seccomp={yes|no|auto}],
> - [determine whether file is seccomp-enabled @<:@default=auto@:>@]),
> - [with_file_seccomp=$withval], [with_file_seccomp=auto])
> -
> -# Help line for selecting a crypto library
> -AC_ARG_WITH(crypto,
> - AS_HELP_STRING([--with-crypto={openssl|nettle}],
> - [select crypto implementation @<:@default=openssl@:>@]),
> - [with_crypto=$withval], [with_crypto=openssl])
> -
> -# Help line for using gpgme
> -AC_ARG_WITH(gpgme,
> - AS_HELP_STRING([--with-gpgme], [use GPGME for PGP signature verification]),
> - [], [with_gpgme=check])
> -
> -# Help line for using libcurl
> -AC_ARG_WITH(libcurl,
> - AS_HELP_STRING([--with-libcurl], [use libcurl for the internal downloader]),
> - [], [with_libcurl=check])
> -
> -# Help line for documentation
> -AC_ARG_ENABLE(doc,
> - AS_HELP_STRING([--disable-doc], [prevent make from looking at doc/ dir]),
> - [wantdoc=$enableval], [wantdoc=yes])
> -
> -# Help line for doxygen
> -AC_ARG_ENABLE(doxygen,
> - AS_HELP_STRING([--enable-doxygen], [build your own API docs via Doxygen]),
> - [wantdoxygen=$enableval], [wantdoxygen=no])
> -
> -# Help line for debug
> -AC_ARG_ENABLE(debug,
> - AS_HELP_STRING([--enable-debug], [enable debugging support]),
> - [debug=$enableval], [debug=no])
> -
> -# Help line for compiler warning flags
> -AC_ARG_ENABLE(warningflags,
> - AS_HELP_STRING([--enable-warningflags], [enable extra compiler warning flags]),
> - [warningflags=$enableval], [warningflags=no])
> -
> -# Help line for using git version in pacman version string
> -AC_ARG_ENABLE(git-version,
> - AS_HELP_STRING([--enable-git-version],
> - [enable use of git version in version string if available]),
> - [wantgitver=$enableval], [wantgitver=no])
> -
> -# Enable large file support if available (must be enabled before
> -# testing compilation against gpgme).
> -AC_SYS_LARGEFILE
> -
> -# Record large file flags in pkgconfig file
> -if test "$enable_largefile" != no; then
> - if test "$ac_cv_sys_file_offset_bits" != 'no'; then
> - LFS_CFLAGS="-D_FILE_OFFSET_BITS=$ac_cv_sys_file_offset_bits"
> - fi
> -fi
> -AC_SUBST(LFS_CFLAGS)
> -
> -
> -# Checks for programs.
> -AC_PROG_AWK
> -AC_PROG_CC_C99
> -AC_PROG_INSTALL
> -AC_CHECK_PROGS([PYTHON], [python3 python], [false])
> -AC_PATH_PROGS([BASH_SHELL], [bash bash4], [false])
> -
> -# check for perl 5.10.1 (needed by makepkg-template)
> -AC_PATH_PROG([PERL],[perl])
> -AC_DEFUN([AX_PROG_PERL_VERSION],
> - [AC_CACHE_CHECK([for Perl version $1 or later], [ax_cv_prog_perl_version],
> - [AS_IF(["$PERL" -e 'require v$1;' >/dev/null 2>&1],
> - [ax_cv_prog_perl_version=yes],
> - [ax_cv_prog_perl_version=no])])
> - AS_IF([test x"$ax_cv_prog_perl_version" = xyes], [$2], [$3])])
> -AX_PROG_PERL_VERSION([5.10.1], [], [AC_MSG_ERROR([perl is too old])])
> -
> -AS_IF([test "x$BASH_SHELL" = "xfalse"],
> - AC_MSG_WARN([*** bash >= 4.4.0 is required for pacman scripts]),
> - [bash_version_major=`$BASH_SHELL -c 'echo "${BASH_VERSINFO[[0]]}"'`
> - bash_version_minor=`$BASH_SHELL -c 'echo "${BASH_VERSINFO[[1]]}"'`
> - ok=yes
> - if test "$bash_version_major" -lt 4; then
> - ok=no
> - fi
> - if test "$bash_version_major" -eq 4 && test "$bash_version_minor" -lt 4; then
> - ok=no
> - fi
> - if test "$ok" = "no"; then
> - AC_MSG_ERROR([*** bash >= 4.4.0 is required for pacman scripts])
> - fi
> - unset bash_version_major bash_version_minor ok])
> -
> -# find installed gettext
> -AM_GNU_GETTEXT([external], [need-ngettext])
> -AM_GNU_GETTEXT_VERSION(0.13.1)
> -
> -AC_CHECK_LIB([m], [fabs], ,
> - AC_MSG_ERROR([libm is needed to compile pacman!]))
> -
> -PKG_CHECK_VAR(bashcompdir, [bash-completion], [completionsdir], ,
> - bashcompdir="${datarootdir}/bash-completion/completions")
> -
> -# Check for libarchive
> -PKG_CHECK_MODULES(LIBARCHIVE, [libarchive >= 3.0.0], ,
> - AC_MSG_ERROR([*** libarchive >= 3.0.0 is needed to compile pacman!]))
> -
> -m4_pattern_forbid([^AX_COMPARE_VERSION$])
> -# Check file for seccomp
> -if test "x$with_file_seccomp" = "xauto"; then
> - file_version="$(file --version| sed -n 's/^file-\(.*\)/\1/p')"
> - AX_COMPARE_VERSION([$file_version], [ge], [5.38], [with_file_seccomp=yes])
> -fi
> -if test "x$with_file_seccomp" = "xyes"; then
> - FILECMD="file -S"
> -else
> - FILECMD="file"
> -fi
> -AC_SUBST(FILECMD)
> -
> -# Check for OpenSSL
> -have_openssl=no
> -have_nettle=no
> -if test "x$with_crypto" = "xnettle"; then
> - AC_SUBST(pc_crypto, [nettle])
> - PKG_CHECK_MODULES(NETTLE, [nettle],
> - [AC_DEFINE(HAVE_LIBNETTLE, 1, [Define whether to use nettle]) have_nettle=yes], have_nettle=no)
> - if test "x$have_nettle" = xno -a "x$with_crypto" = xnettle; then
> - AC_MSG_ERROR([*** nettle support requested but libraries not found])
> - fi
> -else if test "x$with_crypto" = "xopenssl"; then
> - AC_SUBST(pc_crypto, [libcrypto])
> - PKG_CHECK_MODULES(LIBSSL, [libcrypto],
> - [AC_DEFINE(HAVE_LIBSSL, 1, [Define if libcrypto is available]) have_openssl=yes], have_openssl=no)
> - if test "x$have_openssl" = xno; then
> - AC_MSG_ERROR([*** openssl support requested but libraries not found])
> - fi
> -else
> - AC_MSG_ERROR([*** unknown crypto support library requested - $with_crypto])
> -fi
> -fi
> -AM_CONDITIONAL(HAVE_LIBSSL, [test "$have_openssl" = "yes"])
> -AM_CONDITIONAL(HAVE_LIBNETTLE, [test "$have_nettle" = "yes"])
> -
> -# Check for libcurl
> -have_libcurl=no
> -if test "x$with_libcurl" != "xno"; then
> - PKG_CHECK_MODULES(LIBCURL, [libcurl >= 7.32.0],
> - [AC_DEFINE(HAVE_LIBCURL, 1, [Define if libcurl is available]) have_libcurl=yes], have_libcurl=no)
> - if test "x$have_libcurl" = xno -a "x$with_libcurl" = xyes; then
> - AC_MSG_ERROR([*** libcurl >= 7.32.0 is required for internal downloader support])
> - fi
> -fi
> -AM_CONDITIONAL(HAVE_LIBCURL, [test "$have_libcurl" = "yes"])
> -# used to generate libalpm.pc
> -if test "x$have_libcurl" = xyes; then
> - AC_SUBST(pc_libcurl, [libcurl])
> -fi
> -
> -# Check for gpgme
> -AC_MSG_CHECKING(whether to link with libgpgme)
> -AS_IF([test "x$with_gpgme" != "xno"],
> - [AC_MSG_RESULT([yes])],
> - [AC_MSG_RESULT([no])])
> -
> -have_gpgme=no
> -if test "x$with_gpgme" != "xno"; then
> - PKG_CHECK_MODULES(GPGME, [gpgme],
> - [AC_DEFINE([HAVE_LIBGPGME], [1], [Define if gpgme should be used to provide GPG signature support.])
> - AC_SUBST(pc_gpgme, [gpgme])
> - have_gpgme=yes],
> - [AM_PATH_GPGME([1.3.0],
> - [LIBS_save="$LIBS"
> - CPPFLAGS_save="$CPPFLAGS"
> - CFLAGS_save="$CFLAGS"
> -
> - LIBS="$LIBS $GPGME_LIBS"
> - CPPFLAGS="$CPPFLAGS $GPGME_CPPFLAGS"
> - CFLAGS="$CFLAGS $GPGME_CFLAGS"
> -
> - AC_MSG_CHECKING([for sane gpgme])
> - AC_LINK_IFELSE(
> - [AC_LANG_PROGRAM(
> - [[#include <gpgme.h>]],
> - [[return gpgme_check_version("1.3.0");]])],
> - [AC_MSG_RESULT([yes])
> - have_gpgme=yes
> - AC_DEFINE([HAVE_LIBGPGME], [1], [Define if gpgme should be used to provide GPG signature support.])
> - AC_SUBST(pc_gpgme_libs, ["$GPGME_LIBS"])],
> - [AC_MSG_RESULT([no])
> - have_gpgme=no
> - unset GPGME_LIBS
> - unset GPGME_CFLAGS]
> - AS_IF([test "x$with_gpgme" = "xyes"],
> - [AC_MSG_FAILURE([*** gpgme >= 1.3.0 is needed for GPG signature support])])
> - )
> -
> - LIBS="$LIBS_save"
> - CPPFLAGS="$CPPFLAGS_save"
> - CFLAGS="$CFLAGS_save"
> - unset CPPFLAGS_save
> - unset CFLAGS_save],)])
> -fi
> -
> -AS_IF([test "x$have_gpgme" = xno -a "x$with_gpgme" = xyes],
> - [AC_MSG_FAILURE([--with-gpgme was given, but gpgme was not found])])
> -AM_CONDITIONAL([HAVE_LIBGPGME], [test "x$have_gpgme" = "xyes"])
> -
> -# Checks for header files.
> -AC_CHECK_HEADERS([fcntl.h float.h glob.h langinfo.h libintl.h limits.h \
> - locale.h mntent.h netinet/in.h netinet/tcp.h \
> - stddef.h string.h sys/ioctl.h \
> - sys/mnttab.h sys/mount.h \
> - sys/param.h sys/statvfs.h sys/time.h sys/types.h \
> - sys/ucred.h syslog.h termios.h wchar.h])
> -
> -# Checks for typedefs, structures, and compiler characteristics.
> -AC_C_INLINE
> -AC_TYPE_INT64_T
> -AC_TYPE_MODE_T
> -AC_TYPE_OFF_T
> -AC_TYPE_PID_T
> -AC_TYPE_SIZE_T
> -AC_TYPE_SSIZE_T
> -AC_STRUCT_TM
> -AC_TYPE_UID_T
> -AC_STRUCT_DIRENT_D_TYPE
> -PATH_MAX_DEFINED
> -
> -# Checks for library functions.
> -AC_FUNC_FORK
> -AC_FUNC_GETMNTENT
> -AC_FUNC_LSTAT_FOLLOWS_SLASHED_SYMLINK
> -AC_CHECK_FUNCS([dup2 getcwd getmntinfo gettimeofday memmove memset \
> - mkdir realpath regcomp rmdir setenv setlocale strcasecmp \
> - strchr strcspn strdup strerror strndup strnlen strrchr \
> - strsep strstr strtol swprintf tcflush wcwidth uname])
> -AC_CHECK_MEMBERS([struct stat.st_blksize],,,[[#include <sys/stat.h>]])
> -
> -# For the diskspace code
> -FS_STATS_TYPE
> -AC_CHECK_MEMBERS([struct statvfs.f_flag],,,[[#include <sys/statvfs.h>]])
> -AC_CHECK_MEMBERS([struct statfs.f_flags],,,[[#include <sys/param.h>
> - #include <sys/mount.h>]])
> -
> -# Check if we can use symbol visibility support in GCC
> -GCC_VISIBILITY_CC
> -
> -# Host-dependant definitions
> -INODECMD="stat -c '%i %n'"
> -STRIP_BINARIES="--strip-all"
> -STRIP_SHARED="--strip-unneeded"
> -STRIP_STATIC="--strip-debug"
> -case "${host_os}" in
> - *bsd*)
> - INODECMD="stat -f '%i %N'"
> - ;;
> - darwin*)
> - host_os_darwin=yes
> - INODECMD="/usr/bin/stat -f '%i %N'"
> - STRIP_BINARIES=""
> - STRIP_SHARED="-S"
> - STRIP_STATIC="-S"
> - ;;
> -esac
> -AM_CONDITIONAL([DARWIN], test "x$host_os_darwin" = "xyes")
> -AC_SUBST(INODECMD)
> -AC_SUBST(STRIP_BINARIES)
> -AC_SUBST(STRIP_SHARED)
> -AC_SUBST(STRIP_STATIC)
> -
> -# Variables plugged into makepkg.conf
> -CARCH="${host%%-*}"
> -CHOST="${host}"
> -AC_SUBST(CARCH)
> -AC_SUBST(CHOST)
> -
> -# Check for documentation support and status
> -AC_CHECK_PROGS([ASCIIDOC], [asciidoc])
> -AC_MSG_CHECKING([for building documentation])
> -if test "x$wantdoc" = "xyes" ; then
> - if test $ASCIIDOC ; then
> - AC_MSG_RESULT([yes, enabled by configure])
> - else
> - asciidoc="(warning : asciidoc not installed)"
> - AC_MSG_RESULT([yes $asciidoc])
> - fi
> - wantdoc=yes
> -else
> - AC_MSG_RESULT([no, disabled by configure])
> - wantdoc=no
> -fi
> -AM_CONDITIONAL(WANT_DOC, test "x$wantdoc" = "xyes")
> -
> -# Check for doxygen support and status
> -AC_CHECK_PROGS([DOXYGEN], [doxygen])
> -AC_MSG_CHECKING([for doxygen])
> -if test "x$wantdoxygen" = "xyes" ; then
> - if test $DOXYGEN ; then
> - AC_MSG_RESULT([yes])
> - usedoxygen=yes
> - else
> - AC_MSG_RESULT([no, doxygen missing])
> - usedoxygen=no
> - fi
> -else
> - AC_MSG_RESULT([no, disabled by configure])
> - usedoxygen=no
> -fi
> -AM_CONDITIONAL(USE_DOXYGEN, test "x$usedoxygen" = "xyes")
> -
> -# Enable or disable debug code
> -AC_MSG_CHECKING(for debug mode request)
> -if test "x$debug" = "xyes" ; then
> - AC_MSG_RESULT(yes)
> - AC_DEFINE([PACMAN_DEBUG], , [Enable debug code])
> - # Check for -fstack-protector availability
> - GCC_STACK_PROTECT_LIB
> - GCC_STACK_PROTECT_CC
> - GCC_STACK_CLASH_PROTECTION
> - GCC_FORTIFY_SOURCE_CC
> - WARNING_CFLAGS="-g -Wall -Werror"
> -else
> - AC_MSG_RESULT(no)
> - WARNING_CFLAGS="-Wall"
> -fi
> -
> -# Enable or disable compiler warning flags
> -AC_MSG_CHECKING(for excessive compiler warning flags)
> -if test "x$warningflags" = "xyes" ; then
> - AC_MSG_RESULT(yes)
> - CFLAGS_ADD([-Wcast-align], [WARNING_CFLAGS])
> - CFLAGS_ADD([-Wclobbered], [WARNING_CFLAGS])
> - CFLAGS_ADD([-Wempty-body], [WARNING_CFLAGS])
> - CFLAGS_ADD([-Wfloat-equal], [WARNING_CFLAGS])
> - CFLAGS_ADD([-Wformat-nonliteral], [WARNING_CFLAGS])
> - CFLAGS_ADD([-Wformat-security], [WARNING_CFLAGS])
> - CFLAGS_ADD([-Wignored-qualifiers], [WARNING_CFLAGS])
> - CFLAGS_ADD([-Wimplicit-fallthrough], [WARNING_CFLAGS])
> - CFLAGS_ADD([-Winit-self], [WARNING_CFLAGS])
> - CFLAGS_ADD([-Wlogical-op], [WARNING_CFLAGS])
> - CFLAGS_ADD([-Wmissing-declarations], [WARNING_CFLAGS])
> - CFLAGS_ADD([-Wmissing-field-initializers], [WARNING_CFLAGS])
> - CFLAGS_ADD([-Wmissing-parameter-type], [WARNING_CFLAGS])
> - CFLAGS_ADD([-Wmissing-prototypes], [WARNING_CFLAGS])
> - CFLAGS_ADD([-Wold-style-declaration], [WARNING_CFLAGS])
> - CFLAGS_ADD([-Woverride-init], [WARNING_CFLAGS])
> - CFLAGS_ADD([-Wpointer-arith], [WARNING_CFLAGS])
> - CFLAGS_ADD([-Wredundant-decls], [WARNING_CFLAGS])
> - CFLAGS_ADD([-Wshadow], [WARNING_CFLAGS])
> - CFLAGS_ADD([-Wsign-compare], [WARNING_CFLAGS])
> - CFLAGS_ADD([-Wstrict-aliasing], [WARNING_CFLAGS])
> - CFLAGS_ADD([-Wstrict-overflow=5], [WARNING_CFLAGS])
> - CFLAGS_ADD([-Wstrict-prototypes], [WARNING_CFLAGS])
> - CFLAGS_ADD([-Wtype-limits], [WARNING_CFLAGS])
> - CFLAGS_ADD([-Wuninitialized], [WARNING_CFLAGS])
> - CFLAGS_ADD([-Wunused-but-set-parameter], [WARNING_CFLAGS])
> - CFLAGS_ADD([-Wunused-parameter], [WARNING_CFLAGS])
> - CFLAGS_ADD([-Wwrite-strings], [WARNING_CFLAGS])
> -else
> - AC_MSG_RESULT(no)
> -fi
> -
> -# Enable or disable use of git version in pacman version string
> -AC_MSG_CHECKING(whether to use git version if available)
> -if test "x$wantgitver" = "xyes" ; then
> - AC_CHECK_PROGS([GIT], [git])
> - AC_CHECK_FILE([.git/], hasgitdir=yes)
> - usegitver=$ac_cv_file__git_
> - if test $GIT -a "x$hasgitdir" = "xyes"; then
> - AC_DEFINE([USE_GIT_VERSION], , [Use GIT version in version string])
> - fi
> -else
> - AC_MSG_RESULT([no, disabled by configure])
> - usegitver=no
> -fi
> -AM_CONDITIONAL(USE_GIT_VERSION, test "x$usegitver" = "xyes")
> -
> -# Set root directory
> -AC_SUBST(ROOTDIR)
> -AC_DEFINE_UNQUOTED([ROOTDIR], "$ROOTDIR", [The location of the root operating directory])
> -# Set package file extension
> -AC_SUBST(PKGEXT)
> -AC_DEFINE_UNQUOTED([PKGEXT], "$PKGEXT", [The file extension used by pacman packages])
> -# Set source package file extension
> -AC_SUBST(SRCEXT)
> -AC_DEFINE_UNQUOTED([SRCEXT], "$SRCEXT", [The file extension used by pacman source packages])
> -# Set makepkg build script name
> -AC_SUBST(BUILDSCRIPT)
> -AC_DEFINE_UNQUOTED([BUILDSCRIPT], "$BUILDSCRIPT", [The build script name used by makepkg])
> -# Set makepkg-template template directory
> -AC_SUBST(TEMPLATE_DIR)
> -AC_DEFINE_UNQUOTED([TEMPLATE_DIR], "$TEMPLATE_DIR", [The template directory used by makepkg-teplate])
> -# Set makepkg split debugging symbol package suffix
> -AC_SUBST(DEBUGSUFFIX)
> -AC_DEFINE_UNQUOTED([DEBUGSUFFIX], "$DEBUGSUFFIX", [The suffix for debugging symbol packages used by makepkg])
> -# Set shell used by install scriptlets
> -AC_SUBST(SCRIPTLET_SHELL)
> -AC_DEFINE_UNQUOTED([SCRIPTLET_SHELL], "$SCRIPTLET_SHELL", [The full path of the shell used to run install scriptlets])
> -# Set ldconfig path
> -AC_SUBST(LDCONFIG)
> -AC_DEFINE_UNQUOTED([LDCONFIG], "$LDCONFIG", [The full path to ldconfig])
> -
> -
> -# Configuration files
> -AC_CONFIG_FILES([
> -lib/libalpm/Makefile
> -lib/libalpm/po/Makefile.in
> -lib/libalpm/libalpm.pc
> -src/common/Makefile
> -src/pacman/Makefile
> -src/pacman/po/Makefile.in
> -src/util/Makefile
> -scripts/Makefile
> -scripts/po/Makefile.in
> -doc/Makefile
> -etc/Makefile
> -test/pacman/Makefile
> -test/pacman/tests/Makefile
> -test/scripts/Makefile
> -test/util/Makefile
> -Makefile
> -])
> -AC_OUTPUT
> -
> -echo "
> -${PACKAGE_NAME}:
> -
> - Build information:
> - source code location : ${srcdir}
> - prefix : ${prefix}
> - sysconfdir : $(eval echo ${sysconfdir})
> - conf file : $(eval echo ${sysconfdir})/pacman.conf
> - localstatedir : $(eval echo ${localstatedir})
> - database dir : $(eval echo ${localstatedir})/lib/pacman/
> - cache dir : $(eval echo ${localstatedir})/cache/pacman/pkg/
> -
> - compiler : ${CC}
> - preprocessor flags : ${CPPFLAGS}
> - compiler flags : ${WARNING_CFLAGS} ${CFLAGS}
> - library flags : ${LIBS} ${LIBSSL_LIBS} ${NETTLE_LIBS} ${LIBARCHIVE_LIBS} ${LIBCURL_LIBS} ${GPGME_LIBS}
> - linker flags : ${LDFLAGS}
> -
> - Architecture : ${CARCH}
> - Host Type : ${CHOST}
> - File inode command : ${INODECMD}
> - File seccomp command : ${FILECMD}
> -
> - libalpm version : ${LIB_VERSION}
> - libalpm version info : ${LIB_VERSION_INFO}
> - pacman version : ${PACKAGE_VERSION}
> - using git version : ${usegitver}
> -
> - Directory and file information:
> - root working directory : ${ROOTDIR}
> - package extension : ${PKGEXT}
> - source pkg extension : ${SRCEXT}
> - build script name : ${BUILDSCRIPT}
> - template directory : ${TEMPLATE_DIR}
> -
> - Compilation options:
> - Use libcurl : ${have_libcurl}
> - Use GPGME : ${have_gpgme}
> - Use OpenSSL : ${have_openssl}
> - Use nettle : ${have_nettle}
> - Run make in doc/ dir : ${wantdoc} ${asciidoc}
> - Doxygen support : ${usedoxygen}
> - debug support : ${debug}
> - extra warning flags : ${warningflags}
> - use git version : ${wantgitver}
> -"
> diff --git a/doc/Makefile.am b/doc/Makefile.am
> deleted file mode 100644
> index 4de67566..00000000
> --- a/doc/Makefile.am
> +++ /dev/null
> @@ -1,162 +0,0 @@
> -# We have to do some funny stuff here with the manpages. In order to ensure
> -# a dist tarball doesn't get put out there without manpages, we keep those
> -# files listed in EXTRA_DIST no matter what. However, we only add them to
> -# man_MANS if --enable-asciidoc and/or --enable-doxygen are used.
> -
> -MANPAGES = \
> - alpm-hooks.5 \
> - pacman.8 \
> - makepkg.8 \
> - makepkg-template.1 \
> - repo-add.8 \
> - vercmp.8 \
> - pacman-key.8 \
> - PKGBUILD.5 \
> - makepkg.conf.5 \
> - pacman.conf.5 \
> - libalpm.3 \
> - BUILDINFO.5 \
> - pacman-conf.8
> -
> -DOXYGEN_MANS = $(wildcard man3/*.3)
> -
> -HTML_MANPAGES = $(addsuffix .html,$(MANPAGES))
> -ASCIIDOC_MANPAGES = $(addsuffix .asciidoc,$(MANPAGES))
> -
> -HTML_OTHER = \
> - index.html \
> - submitting-patches.html \
> - translation-help.html \
> - HACKING.html
> -
> -HTML_DOCS = \
> - $(HTML_MANPAGES) \
> - $(HTML_OTHER)
> -
> -EXTRA_DIST = \
> - meson.build \
> - asciidoc.conf \
> - asciidoc-override.css \
> - PKGBUILD-example.txt \
> - footer.asciidoc \
> - index.asciidoc \
> - submitting-patches.asciidoc \
> - translation-help.asciidoc \
> - $(ASCIIDOC_MANPAGES) \
> - $(MANPAGES) \
> - $(DOXYGEN_MANS)
> -
> -# Files that should be removed, but which Automake does not know.
> -MOSTLYCLEANFILES = *.xml $(MANPAGES) $(HTML_DOCS) \
> - pacman-hooks.5 repo-remove.8 website.tar.gz
> -
> -# Ensure manpages are fresh when building a dist tarball
> -dist-hook:
> - $(MAKE) $(AM_MAKEFLAGS) clean
> - $(MAKE) $(AM_MAKEFLAGS) all
> -
> -if USE_GIT_VERSION
> -GIT_VERSION := $(shell sh -c 'git describe --abbrev=4 --dirty | sed s/^v//')
> -REAL_PACKAGE_VERSION = $(GIT_VERSION)
> -else
> -REAL_PACKAGE_VERSION = $(PACKAGE_VERSION)
> -endif
> -
> -man_MANS =
> -dist_man_MANS = $(MANPAGES)
> -
> -if USE_DOXYGEN
> -man_MANS += $(DOXYGEN_MANS)
> -
> -all-local: doxygen.in
> -
> -Doxyfile: Doxyfile.in
> - sed 's, at OUTPUT_DIRECTORY@,./,' Doxyfile.in >Doxyfile
> -
> -doxygen.in: Doxyfile
> - $(DOXYGEN) $(srcdir)/Doxyfile
> -endif
> -
> -man: $(MANPAGES)
> -html: $(HTML_DOCS)
> -
> -website: website.tar.gz
> -
> -.PHONY: html website
> -
> -website.tar.gz: html
> - $(AM_V_GEN)bsdtar czf $@ $(HTML_DOCS) \
> - asciidoc-override.css \
> - -C /etc/asciidoc/stylesheets/ \
> - asciidoc.css \
> - -C /etc/asciidoc/javascripts/ \
> - asciidoc.js \
> - -C /etc/asciidoc/ \
> - images
> -
> -pkgdatadir = ${datadir}/${PACKAGE}
> -
> -ASCIIDOC_OPTS = \
> - -f $(srcdir)/asciidoc.conf \
> - -a pacman_version="$(REAL_PACKAGE_VERSION)" \
> - -a pacman_date="`date +%Y-%m-%d`" \
> - -a srcext="$(SRCEXT)" \
> - -a pkgext="$(PKGEXT)" \
> - -a pkgdatadir=$(pkgdatadir) \
> - -a localstatedir=$(localstatedir) \
> - -a sysconfdir=$(sysconfdir) \
> - -a datarootdir=$(datarootdir) \
> - -a rootdir=$(ROOTDIR)
> -
> -A2X_OPTS = \
> - --no-xmllint \
> - -d manpage \
> - -f manpage \
> - --xsltproc-opts='-param man.endnotes.list.enabled 0 -param man.endnotes.are.numbered 0'
> -
> -# Generate manpages
> -%: %.asciidoc asciidoc.conf footer.asciidoc Makefile.am
> - $(AM_V_GEN)a2x $(A2X_OPTS) --asciidoc-opts="$(ASCIIDOC_OPTS) --out-file=./$@.xml" $(srcdir)/$@.asciidoc
> -
> -# Generate HTML pages
> -%.html: %.asciidoc asciidoc.conf footer.asciidoc Makefile.am
> - $(AM_V_GEN)asciidoc $(ASCIIDOC_OPTS) -o - $*.asciidoc | \
> - sed -e 's/\r$$//' > $@
> -
> -HACKING.html: ../HACKING
> - $(AM_V_GEN)asciidoc $(ASCIIDOC_OPTS) -o - ../HACKING | \
> - sed -e 's/\r$$//' > $@
> -
> -# Customizations for certain HTML docs
> -%.html: ASCIIDOC_OPTS += -a linkcss -a toc -a icons -a max-width=960px -a stylesheet=asciidoc-override.css
> -%.8.html: ASCIIDOC_OPTS += -d manpage
> -%.5.html: ASCIIDOC_OPTS += -d manpage
> -%.3.html: ASCIIDOC_OPTS += -d manpage
> -
> -# Custom dependency rules
> -PKGBUILD.5 PKGBUILD.5.html: PKGBUILD.5.asciidoc PKGBUILD-example.txt
> -
> -# Manpages as symlinks
> -repo-remove.8: repo-add.8
> - $(RM) repo-remove.8
> - $(LN_S) repo-add.8 repo-remove.8
> -
> -pacman-hooks.5: alpm-hooks.5
> - $(RM) pacman-hooks.5
> - $(LN_S) alpm-hooks.5 pacman-hooks.5
> -
> -install-data-hook:
> - cd $(DESTDIR)$(mandir)/man8 && \
> - $(RM) repo-remove.8 && \
> - ( $(LN_S) repo-add.8 repo-remove.8 || \
> - ln repo-add.8 repo-remove.8 || \
> - cp repo-add.8 repo-remove.8 )
> - cd $(DESTDIR)$(mandir)/man5 && \
> - $(RM) pacman-hooks.5 && \
> - ( $(LN_S) alpm-hooks.5 pacman-hooks.5 || \
> - ln alpm-hooks.5 pacman-hooks.5 || \
> - cp alpm-hooks.5 pacman-hooks.5 )
> -
> -uninstall-hook:
> - $(RM) $(DESTDIR)$(mandir)/man8/repo-remove.8
> - $(RM) $(DESTDIR)$(mandir)/man5/pacman-hooks.5
> diff --git a/doc/index.asciidoc b/doc/index.asciidoc
> index ebf02c20..716ceabf 100644
> --- a/doc/index.asciidoc
> +++ b/doc/index.asciidoc
> @@ -193,11 +193,11 @@ link:https://sources.archlinux.org/other/pacman/[]. To install, download the new
> available source tarball, unpack it in a directory, and run the three magic
> commands:
>
> - $ ./configure
> - $ make
> - # make install
> + $ meson build
> + $ ninja -C build
> + # ninja -C build install
>
> -You may wish to read the options presented by `./configure --help` in order to
> +You may wish to read the options presented by `meson` in order to
> set appropriate paths and build options that are correct for your system.
>
> Development
> diff --git a/etc/Makefile.am b/etc/Makefile.am
> deleted file mode 100644
> index 0d4fbc07..00000000
> --- a/etc/Makefile.am
> +++ /dev/null
> @@ -1,27 +0,0 @@
> -dist_sysconf_DATA = makepkg.conf pacman.conf
> -EXTRA_DIST = makepkg.conf.in pacman.conf.in
> -
> -# Files that should be removed, but which Automake does not know.
> -MOSTLYCLEANFILES = $(dist_sysconf_DATA)
> -
> -SED_PROCESS = \
> - $(AM_V_GEN)$(MKDIR_P) $(dir $@) && \
> - $(SED) \
> - -e 's|@sysconfdir[@]|$(sysconfdir)|g' \
> - -e 's|@localstatedir[@]|$(localstatedir)|g' \
> - -e 's|@prefix[@]|$(prefix)|g' \
> - -e 's|@PACKAGE_VERSION[@]|$(PACKAGE_VERSION)|g' \
> - -e 's|@PACKAGE_NAME[@]|$(PACKAGE_NAME)|g' \
> - -e 's|@PKGEXT[@]|$(PKGEXT)|g' \
> - -e 's|@SRCEXT[@]|$(SRCEXT)|g' \
> - -e 's|@STRIP_BINARIES[@]|$(STRIP_BINARIES)|g' \
> - -e 's|@STRIP_SHARED[@]|$(STRIP_SHARED)|g' \
> - -e 's|@STRIP_STATIC[@]|$(STRIP_STATIC)|g' \
> - -e 's|@CARCH[@]|$(CARCH)|g' \
> - -e 's|@CHOST[@]|$(CHOST)|g' \
> - -e 's|@ARCHSWITCH[@]|$(ARCHSWITCH)|g' \
> - -e 's|@ROOTDIR[@]|$(ROOTDIR)|g' \
> - < $< > $@
> -
> -%.conf: %.conf.in Makefile
> - $(SED_PROCESS)
> diff --git a/lib/libalpm/Makefile.am b/lib/libalpm/Makefile.am
> deleted file mode 100644
> index e4f83223..00000000
> --- a/lib/libalpm/Makefile.am
> +++ /dev/null
> @@ -1,78 +0,0 @@
> -AUTOMAKE_OPTIONS = gnu
> -
> -SUBDIRS = po
> -
> -EXTRA_DIST = meson.build po/meson.build
> -
> -lib_LTLIBRARIES = libalpm.la
> -include_HEADERS = alpm_list.h alpm.h
> -
> -AM_CPPFLAGS = \
> - -imacros $(top_builddir)/config.h \
> - -DSYSHOOKDIR=\"@datarootdir@/libalpm/hooks/\" \
> - -DLOCALEDIR=\"@localedir@\"
> -
> -AM_CFLAGS = -pedantic -D_GNU_SOURCE $(WARNING_CFLAGS)
> -
> -if ENABLE_VISIBILITY_CC
> -if DARWIN
> -AM_CFLAGS += -fvisibility=hidden
> -else
> -AM_CFLAGS += -fvisibility=internal
> -endif
> -endif
> -
> -pkgconfigdir = $(libdir)/pkgconfig
> -pkgconfig_DATA = libalpm.pc
> -
> -libalpm_la_SOURCES = \
> - add.h add.c \
> - alpm.h alpm.c \
> - alpm_list.h alpm_list.c \
> - backup.h backup.c \
> - base64.h base64.c \
> - be_local.c \
> - be_package.c \
> - be_sync.c \
> - conflict.h conflict.c \
> - db.h db.c \
> - deps.h deps.c \
> - diskspace.h diskspace.c \
> - dload.h dload.c \
> - error.c \
> - filelist.h filelist.c \
> - graph.h graph.c \
> - group.h group.c \
> - handle.h handle.c \
> - hook.h hook.c \
> - ini.h ini.c \
> - libarchive-compat.h \
> - log.h log.c \
> - package.h package.c \
> - pkghash.h pkghash.c \
> - rawstr.c \
> - remove.h remove.c \
> - signing.c signing.h \
> - sync.h sync.c \
> - trans.h trans.c \
> - util.h util.c \
> - util-common.h util-common.c \
> - version.c
> -
> -libalpm_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION_INFO)
> -
> -libalpm_la_CFLAGS = \
> - $(AM_CFLAGS) \
> - $(GPGME_CFLAGS) \
> - $(LIBARCHIVE_CFLAGS) \
> - $(LIBCURL_CFLAGS) \
> - $(LIBSSL_CFLAGS) \
> - $(NETTLE_CFLAGS)
> -
> -libalpm_la_LIBADD = \
> - $(LTLIBINTL) \
> - $(GPGME_LIBS) \
> - $(LIBARCHIVE_LIBS) \
> - $(LIBCURL_LIBS) \
> - $(LIBSSL_LIBS) \
> - $(NETTLE_LIBS)
> diff --git a/scripts/Makefile.am b/scripts/Makefile.am
> deleted file mode 100644
> index 47455ed2..00000000
> --- a/scripts/Makefile.am
> +++ /dev/null
> @@ -1,287 +0,0 @@
> -# enforce that all scripts have a --help and --version option
> -AUTOMAKE_OPTIONS = std-options
> -AM_INSTALLCHECK_STD_OPTIONS_EXEMPT = \
> - $(WRAPPER)
> -
> -SUBDIRS = po
> -
> -pkgconfigdir = $(datarootdir)/pkgconfig
> -pkgconfig_DATA = libmakepkg.pc
> -
> -bin_SCRIPTS = \
> - $(OURSCRIPTS) \
> - makepkg-template \
> - repo-remove \
> - repo-elephant \
> - $(WRAPPER)
> -
> -OURSCRIPTS = \
> - makepkg \
> - pacman-db-upgrade \
> - pacman-key \
> - repo-add
> -
> -EXTRA_DIST = \
> - meson.build \
> - libmakepkg.pc.in \
> - makepkg.sh.in \
> - makepkg-template.pl.in \
> - pacman-db-upgrade.sh.in \
> - pacman-key.sh.in \
> - repo-add.sh.in \
> - wrapper.sh.in \
> - $(COMPLETION_DIST) \
> - $(LIBMAKEPKG_DIST) \
> - po/meson.build
> -
> -libmakepkgdir = $(datarootdir)/makepkg
> -
> -LIBMAKEPKGDIRS = \
> - buildenv \
> - executable \
> - integrity \
> - lint_config \
> - lint_package \
> - lint_pkgbuild \
> - source \
> - tidy \
> - util
> -
> -LIBMAKEPKG_IN = \
> - libmakepkg/executable.sh \
> - libmakepkg/executable/ccache.sh \
> - libmakepkg/executable/checksum.sh \
> - libmakepkg/executable/distcc.sh \
> - libmakepkg/executable/fakeroot.sh \
> - libmakepkg/executable/gpg.sh \
> - libmakepkg/executable/gzip.sh \
> - libmakepkg/executable/pacman.sh \
> - libmakepkg/executable/strip.sh \
> - libmakepkg/executable/sudo.sh \
> - libmakepkg/executable/vcs.sh \
> - libmakepkg/buildenv.sh \
> - libmakepkg/buildenv/buildflags.sh \
> - libmakepkg/buildenv/compiler.sh \
> - libmakepkg/buildenv/debugflags.sh \
> - libmakepkg/buildenv/makeflags.sh \
> - libmakepkg/integrity.sh \
> - libmakepkg/integrity/generate_checksum.sh \
> - libmakepkg/integrity/generate_signature.sh \
> - libmakepkg/integrity/verify_checksum.sh \
> - libmakepkg/integrity/verify_signature.sh \
> - libmakepkg/lint_config.sh \
> - libmakepkg/lint_config/ext.sh \
> - libmakepkg/lint_config/paths.sh \
> - libmakepkg/lint_config/source_date_epoch.sh \
> - libmakepkg/lint_config/variable.sh \
> - libmakepkg/lint_package.sh \
> - libmakepkg/lint_package/build_references.sh \
> - libmakepkg/lint_package/dotfiles.sh \
> - libmakepkg/lint_package/file_names.sh \
> - libmakepkg/lint_package/missing_backup.sh \
> - libmakepkg/lint_pkgbuild.sh \
> - libmakepkg/lint_pkgbuild/arch.sh \
> - libmakepkg/lint_pkgbuild/arch_specific.sh \
> - libmakepkg/lint_pkgbuild/backup.sh \
> - libmakepkg/lint_pkgbuild/changelog.sh \
> - libmakepkg/lint_pkgbuild/checkdepends.sh \
> - libmakepkg/lint_pkgbuild/conflicts.sh \
> - libmakepkg/lint_pkgbuild/depends.sh \
> - libmakepkg/lint_pkgbuild/epoch.sh \
> - libmakepkg/lint_pkgbuild/fullpkgver.sh \
> - libmakepkg/lint_pkgbuild/install.sh \
> - libmakepkg/lint_pkgbuild/makedepends.sh \
> - libmakepkg/lint_pkgbuild/optdepends.sh \
> - libmakepkg/lint_pkgbuild/options.sh \
> - libmakepkg/lint_pkgbuild/package_function.sh \
> - libmakepkg/lint_pkgbuild/package_function_variable.sh \
> - libmakepkg/lint_pkgbuild/pkgbase.sh \
> - libmakepkg/lint_pkgbuild/pkglist.sh \
> - libmakepkg/lint_pkgbuild/pkgname.sh \
> - libmakepkg/lint_pkgbuild/pkgrel.sh \
> - libmakepkg/lint_pkgbuild/pkgver.sh \
> - libmakepkg/lint_pkgbuild/provides.sh \
> - libmakepkg/lint_pkgbuild/source.sh \
> - libmakepkg/lint_pkgbuild/util.sh \
> - libmakepkg/lint_pkgbuild/variable.sh \
> - libmakepkg/source.sh \
> - libmakepkg/source/bzr.sh \
> - libmakepkg/source/file.sh \
> - libmakepkg/source/git.sh \
> - libmakepkg/source/hg.sh \
> - libmakepkg/source/local.sh \
> - libmakepkg/source/svn.sh \
> - libmakepkg/srcinfo.sh \
> - libmakepkg/tidy.sh \
> - libmakepkg/tidy/docs.sh \
> - libmakepkg/tidy/emptydirs.sh \
> - libmakepkg/tidy/libtool.sh \
> - libmakepkg/tidy/purge.sh \
> - libmakepkg/tidy/staticlibs.sh \
> - libmakepkg/tidy/strip.sh \
> - libmakepkg/tidy/zipman.sh \
> - libmakepkg/util.sh \
> - libmakepkg/util/compress.sh \
> - libmakepkg/util/config.sh \
> - libmakepkg/util/dirsize.sh \
> - libmakepkg/util/error.sh \
> - libmakepkg/util/message.sh \
> - libmakepkg/util/option.sh \
> - libmakepkg/util/parseopts.sh \
> - libmakepkg/util/pkgbuild.sh \
> - libmakepkg/util/schema.sh \
> - libmakepkg/util/source.sh \
> - libmakepkg/util/util.sh
> -
> -LIBMAKEPKG_DIST = \
> - libmakepkg/meson.build \
> - $(addprefix libmakepkg/, $(addsuffix /meson.build, $(LIBMAKEPKGDIRS))) \
> - $(addsuffix .in, $(LIBMAKEPKG_IN))
> -
> -WRAPPER = \
> - makepkg-wrapper \
> - pacman-db-upgrade-wrapper \
> - pacman-key-wrapper \
> - repo-add-wrapper
> -
> -COMPLETION_IN = \
> - completion/bash_completion \
> - completion/zsh_completion
> -
> -COMPLETION_DIST = \
> - $(addsuffix .in, $(COMPLETION_IN))
> -
> -# Files that should be removed, but which Automake does not know.
> -MOSTLYCLEANFILES = $(bin_SCRIPTS) $(LIBMAKEPKG_IN) $(COMPLETION_IN) libmakepkg.pc
> -
> -clean-local:
> - $(AM_V_at)$(RM) -r .lib
> -
> -if USE_GIT_VERSION
> -GIT_VERSION := $(shell sh -c 'git describe --abbrev=4 --dirty | sed s/^v//')
> -REAL_PACKAGE_VERSION = $(GIT_VERSION)
> -else
> -REAL_PACKAGE_VERSION = $(PACKAGE_VERSION)
> -endif
> -
> -#### Taken from the autoconf scripts Makefile.am ####
> -edit = sed \
> - -e 's|@rootdir[@]|$(ROOTDIR)|g' \
> - -e 's|@localedir[@]|$(localedir)|g' \
> - -e 's|@sysconfdir[@]|$(sysconfdir)|g' \
> - -e 's|@localstatedir[@]|$(localstatedir)|g' \
> - -e 's|@libmakepkgdir[@]|$(libmakepkgdir)|g' \
> - -e 's|@pkgdatadir[@]|$(pkgdatadir)|g' \
> - -e 's|@prefix[@]|$(prefix)|g' \
> - -e '1s|!/bin/bash|!$(BASH_SHELL)|g' \
> - -e 's|@PACKAGE_VERSION[@]|$(REAL_PACKAGE_VERSION)|g' \
> - -e 's|@PACKAGE_BUGREPORT[@]|$(PACKAGE_BUGREPORT)|g' \
> - -e 's|@PACKAGE_NAME[@]|$(PACKAGE_NAME)|g' \
> - -e 's|@BUILDSCRIPT[@]|$(BUILDSCRIPT)|g' \
> - -e 's|@TEMPLATE_DIR[@]|$(TEMPLATE_DIR)|g' \
> - -e 's|@DEBUGSUFFIX[@]|$(DEBUGSUFFIX)|g' \
> - -e "s|@INODECMD[@]|$(INODECMD)|g" \
> - -e "s|@FILECMD[@]|$(FILECMD)|g" \
> - -e 's|@SCRIPTNAME[@]|$@|g'
> -
> -## All the scripts depend on Makefile so that they are rebuilt when the
> -## prefix etc. changes. Use chmod -w to prevent people from editing the
> -## wrong file by accident.
> -$(OURSCRIPTS): %: %.sh.in wrapper.sh.in $(LIBMAKEPKG_IN) Makefile
> - $(AM_V_at)$(RM) $@
> - $(AM_V_GEN)test -f $(srcdir)/$@.sh.in && $(edit) $(srcdir)/$@.sh.in >$@
> - $(AM_V_at)chmod +x,a-w $@
> - @$(BASH_SHELL) -O extglob -n $@
> -
> -$(LIBMAKEPKG_IN): %: %.in Makefile
> - $(AM_V_at)$(RM) $@
> - $(AM_V_at)$(MKDIR_P) $(dir $@)
> - $(AM_V_GEN)test -f $(srcdir)/$@.in && $(edit) $(srcdir)/$@.in >$@
> - $(AM_V_at)chmod a-w $@
> - @$(BASH_SHELL) -O extglob -n $@
> -
> -$(COMPLETION_IN) libmakepkg.pc: %: %.in Makefile
> - $(AM_V_at)$(RM) $@
> - $(AM_V_at)$(MKDIR_P) $(dir $@)
> - $(AM_V_GEN)$(edit) $(srcdir)/$@.in >$@
> - $(AM_V_at)chmod a-w $@
> -
> -all-am: $(COMPLETION_IN)
> -
> -makepkg-template: \
> - $(srcdir)/makepkg-template.pl.in \
> - Makefile
> -
> - $(AM_V_at)$(RM) -f makepkg-template
> - $(AM_V_GEN)$(edit) $< > $@
> - $(AM_V_at)chmod +x,a-w $@
> -
> -repo-remove repo-elephant: repo-add
> - $(AM_V_at)$(RM) $@
> - $(AM_V_at)$(LN_S) repo-add $@
> -
> -.SECONDEXPANSION:
> -$(WRAPPER): \
> - $(srcdir)/wrapper.sh.in \
> - $$(subst -wrapper,,$$@)
> -
> - $(AM_V_at)$(MKDIR_P) .lib
> - $(AM_V_at)mv -f $(subst -wrapper,,$@) .lib
> - $(AM_V_at)$(RM) $@
> - $(AM_V_GEN)sed \
> - -e "s|@PWD[@]|$$(pwd)|" \
> - -e "s|@PROGNAME[@]|$(subst -wrapper,,$@)|g" \
> - -e '1s|!/bin/bash|!$(BASH_SHELL)|g' \
> - $(srcdir)/wrapper.sh.in > $@
> - $(AM_V_at)chmod +x,a-w $@
> - $(AM_V_at)$(LN_S) $@ $(subst -wrapper,,$@)
> -
> -install-data-local:
> - $(MKDIR_P) $(DESTDIR)$(bashcompdir)
> - $(INSTALL_DATA) completion/bash_completion $(DESTDIR)/$(bashcompdir)/pacman
> - for completion in makepkg pacman-key; do \
> - $(LN_S) pacman $(DESTDIR)/$(bashcompdir)/$$completion; \
> - done
> - $(MKDIR_P) $(DESTDIR)$(datarootdir)/zsh/site-functions/
> - $(INSTALL_DATA) completion/zsh_completion $(DESTDIR)$(datarootdir)/zsh/site-functions/_pacman
> -
> -uninstall-local:
> - $(RM) $(DESTDIR)$(bashcompdir)/makepkg
> - $(RM) $(DESTDIR)$(bashcompdir)/pacman
> - $(RM) $(DESTDIR)$(bashcompdir)/pacman-key
> - $(RM) $(DESTDIR)$(datarootdir)/zsh/site-functions/_pacman
> -
> -install-exec-hook:
> - for wrapper in $(WRAPPER); do \
> - $(RM) $(DESTDIR)$(bindir)/$${wrapper}; \
> - $(INSTALL) .lib/$${wrapper%-wrapper} $(DESTDIR)$(bindir)/$${wrapper%-wrapper}; \
> - done
> - for dir in $(LIBMAKEPKGDIRS); do \
> - $(MKDIR_P) $(DESTDIR)$(libmakepkgdir)/$$dir; \
> - done
> - for lib in $(LIBMAKEPKG); do \
> - $(INSTALL) $(srcdir)/$$lib $(DESTDIR)$(libmakepkgdir)/$${lib#libmakepkg}; \
> - done
> - for lib in $(LIBMAKEPKG_IN); do \
> - $(INSTALL) $$lib $(DESTDIR)$(libmakepkgdir)/$${lib#libmakepkg}; \
> - done
> - cd $(DESTDIR)$(bindir) && \
> - $(RM) repo-elephant && \
> - ( $(LN_S) repo-add repo-elephant || \
> - ln repo-add repo-elephant || \
> - cp repo-add repo-elephant )
> - cd $(DESTDIR)$(bindir) && \
> - $(RM) repo-remove && \
> - ( $(LN_S) repo-add repo-remove || \
> - ln repo-add repo-remove || \
> - cp repo-add repo-remove )
> -
> -uninstall-hook:
> - cd $(DESTDIR)$(bindir) && \
> - $(RM) repo-remove repo-elephant
> - for lib in $(LIBMAKEPKG) $(LIBMAKEPKG_IN); do \
> - $(RM) $(DESTDIR)$(libmakepkgdir)/$${lib#libmakepkg}; \
> - done
> - for dir in $(LIBMAKEPKGDIRS); do \
> - $(RM) -r $(DESTDIR)$(libmakepkgdir)/$$dir; \
> - done
> diff --git a/src/common/Makefile.am b/src/common/Makefile.am
> deleted file mode 100644
> index 05378712..00000000
> --- a/src/common/Makefile.am
> +++ /dev/null
> @@ -1,3 +0,0 @@
> -EXTRA_DIST = \
> - meson.build \
> - ini.h ini.c util-common.h util-common.c
> diff --git a/src/pacman/Makefile.am b/src/pacman/Makefile.am
> deleted file mode 100644
> index ac2f8e46..00000000
> --- a/src/pacman/Makefile.am
> +++ /dev/null
> @@ -1,69 +0,0 @@
> -SUBDIRS = po
> -
> -EXTRA_DIST = meson.build po/meson.build
> -
> -# paths set at make time
> -conffile = ${sysconfdir}/pacman.conf
> -dbpath = ${localstatedir}/lib/pacman/
> -gpgdir = ${sysconfdir}/pacman.d/gnupg/
> -hookdir = ${sysconfdir}/pacman.d/hooks/
> -cachedir = ${localstatedir}/cache/pacman/pkg/
> -logfile = ${localstatedir}/log/pacman.log
> -
> -bin_PROGRAMS = pacman pacman-conf
> -
> -AM_CPPFLAGS = \
> - -imacros $(top_builddir)/config.h \
> - -I$(top_srcdir)/lib/libalpm \
> - -DLOCALEDIR=\"@localedir@\" \
> - -DCONFFILE=\"$(conffile)\" \
> - -DDBPATH=\"$(dbpath)\" \
> - -DGPGDIR=\"$(gpgdir)\" \
> - -DHOOKDIR=\"$(hookdir)\" \
> - -DCACHEDIR=\"$(cachedir)\" \
> - -DLOGFILE=\"$(logfile)\"
> -
> -AM_CFLAGS = -pedantic -D_GNU_SOURCE $(WARNING_CFLAGS) \
> - $(LIBARCHIVE_CFLAGS)
> -
> -if USE_GIT_VERSION
> -GIT_VERSION := $(shell sh -c 'git describe --abbrev=4 --dirty | sed s/^v//')
> -AM_CPPFLAGS += -DGIT_VERSION=\"$(GIT_VERSION)\"
> -endif
> -
> -pacman_SOURCES = \
> - check.h check.c \
> - conf.h conf.c \
> - database.c \
> - deptest.c \
> - files.c \
> - ini.h ini.c \
> - package.h package.c \
> - pacman.h pacman.c \
> - query.c \
> - remove.c \
> - sighandler.h sighandler.c \
> - sync.c \
> - callback.h callback.c \
> - upgrade.c \
> - util.h util.c \
> - util-common.h util-common.c
> -
> -pacman_LDADD = \
> - $(LTLIBINTL) \
> - $(top_builddir)/lib/libalpm/.libs/libalpm.la \
> - $(LIBARCHIVE_LIBS)
> -
> -pacman_conf_SOURCES = pacman-conf.c \
> - util.h \
> - util.c \
> - ini.h \
> - ini.c \
> - util-common.h \
> - util-common.c \
> - callback.h \
> - callback.c \
> - conf.h \
> - conf.c
> -
> -pacman_conf_LDADD = $(top_builddir)/lib/libalpm/.libs/libalpm.la
> diff --git a/src/util/Makefile.am b/src/util/Makefile.am
> deleted file mode 100644
> index a454f224..00000000
> --- a/src/util/Makefile.am
> +++ /dev/null
> @@ -1,27 +0,0 @@
> -EXTRA_DIST = meson.build
> -
> -# paths set at make time
> -conffile = ${sysconfdir}/pacman.conf
> -dbpath = ${localstatedir}/lib/pacman/
> -gpgdir = ${sysconfdir}/pacman.d/gnupg/
> -cachedir = ${localstatedir}/cache/pacman/pkg/
> -
> -bin_PROGRAMS = vercmp testpkg
> -
> -AM_CPPFLAGS = \
> - -imacros $(top_builddir)/config.h \
> - -I$(top_srcdir)/lib/libalpm \
> - -DLOCALEDIR=\"@localedir@\" \
> - -DCONFFILE=\"$(conffile)\" \
> - -DDBPATH=\"$(dbpath)\" \
> - -DGPGDIR=\"$(gpgdir)\" \
> - -DCACHEDIR=\"$(cachedir)\"
> -
> -AM_CFLAGS = -pedantic -D_GNU_SOURCE $(WARNING_CFLAGS) \
> - $(LIBARCHIVE_CFLAGS)
> -
> -testpkg_SOURCES = testpkg.c
> -testpkg_LDADD = $(top_builddir)/lib/libalpm/.libs/libalpm.la
> -
> -vercmp_SOURCES = vercmp.c
> -vercmp_LDADD = $(top_builddir)/lib/libalpm/libalpm_la-version.lo
> diff --git a/test/pacman/Makefile.am b/test/pacman/Makefile.am
> deleted file mode 100644
> index d211215a..00000000
> --- a/test/pacman/Makefile.am
> +++ /dev/null
> @@ -1,22 +0,0 @@
> -SUBDIRS = tests
> -
> -check_SCRIPTS = \
> - pactest.py \
> - pmdb.py \
> - pmenv.py \
> - pmfile.py \
> - pmpkg.py \
> - pmrule.py \
> - pmtest.py \
> - tap.py \
> - util.py
> -
> -noinst_SCRIPTS = $(check_SCRIPTS)
> -
> -EXTRA_DIST = \
> - meson.build \
> - README \
> - TODO \
> - ChangeLog \
> - ldconfig.stub \
> - $(check_SCRIPTS)
> diff --git a/test/pacman/tests/Makefile.am b/test/pacman/tests/Makefile.am
> deleted file mode 100644
> index ba3d0993..00000000
> --- a/test/pacman/tests/Makefile.am
> +++ /dev/null
> @@ -1,5 +0,0 @@
> -check_SCRIPTS = $(wildcard *.py)
> -
> -noinst_SCRIPTS = $(check_SCRIPTS)
> -
> -EXTRA_DIST = $(check_SCRIPTS)
> diff --git a/test/scripts/Makefile.am b/test/scripts/Makefile.am
> deleted file mode 100644
> index 0100bffb..00000000
> --- a/test/scripts/Makefile.am
> +++ /dev/null
> @@ -1,10 +0,0 @@
> -check_SCRIPTS = \
> - parseopts_test.sh \
> - pacman-db-upgrade-v9.py \
> - makepkg-template_test.sh
> -
> -noinst_SCRIPTS = $(check_SCRIPTS)
> -
> -EXTRA_DIST = \
> - meson.build \
> - $(check_SCRIPTS)
> diff --git a/test/util/Makefile.am b/test/util/Makefile.am
> deleted file mode 100644
> index a270079f..00000000
> --- a/test/util/Makefile.am
> +++ /dev/null
> @@ -1,8 +0,0 @@
> -check_SCRIPTS = \
> - vercmptest.sh
> -
> -noinst_SCRIPTS = $(check_SCRIPTS)
> -
> -EXTRA_DIST = \
> - meson.build \
> - $(check_SCRIPTS)
> --
> 2.26.2
+1
Less code is better!
More information about the pacman-dev
mailing list