[pacman-dev] [PATCH 0/5] Use more auto in autotools

Dan McGee dpmcgee at gmail.com
Wed Jun 26 08:10:12 EDT 2013


On Wed, Jun 26, 2013 at 12:08 AM, Allan McRae <allan at archlinux.org> wrote:
> On 26/06/13 15:01, Allan McRae wrote:
>> The use of autotools in pacman is interesting...  We commit most autotools
>> generated files, but not configure or Makefile.  One reason for this is that
>> we needed to patch ltmain.sh to properly handle -Wl,-as-needed, because
>> the Arch package maintainer refused to do so unless upstream accepts!
>> Libtool upstream have known about the bug since at least 2006, so that does
>> not look hopeful.
>>
>> The new approach is to have autogen.sh call autoreconf and then have it
>> patch the ltmain.sh file.  This removes a lot of crap that should be
>> autogenerated from our git repo:
>>  38 files changed, 83 insertions(+), 28256 deletions(-)
>>
>>
>> Allan McRae (5):
>>   Remove autotools files
>
> This is too big to send:
>     Message body is too big: 932337 bytes with a limit of 100 KB
>
> But it is purely deletions:
>
>  build-aux/compile             |  347 --
>  build-aux/config.guess        | 1558 -------
>  build-aux/config.rpath        |  614 ---
>  build-aux/config.sub          | 1788 --------
>  build-aux/depcomp             |  791 ----
>  build-aux/install-sh          |  527 ---
>  build-aux/ltmain.sh           | 9672
> -----------------------------------------
>  build-aux/missing             |  215 -
>  build-aux/mkinstalldirs       |  162 -
>  lib/libalpm/po/Makefile.in.in |  444 --
>  m4/gettext.m4                 |  383 --
>  m4/gpgme.m4                   |  307 --
>  m4/iconv.m4                   |  214 -
>  m4/intlmacosx.m4              |   51 -
>  m4/lib-ld.m4                  |  110 -
>  m4/lib-link.m4                |  774 ----
>  m4/lib-prefix.m4              |  224 -
>  m4/libtool.m4                 | 7831 ---------------------------------
>  m4/ltoptions.m4               |  369 --
>  m4/ltsugar.m4                 |  123 -
>  m4/ltversion.m4               |   23 -
>  m4/lt~obsolete.m4             |   98 -
>  m4/nls.m4                     |   32 -
>  m4/pkg.m4                     |  159 -
>  m4/po.m4                      |  449 --
>  m4/progtest.m4                |   92 -
>  scripts/po/Makefile.in.in     |  444 --
>  src/pacman/po/Makefile.in.in  |  444 --
>  28 files changed, 28245 deletions(-)
>  delete mode 100755 build-aux/compile
>  delete mode 100755 build-aux/config.guess
>  delete mode 100755 build-aux/config.rpath
>  delete mode 100755 build-aux/config.sub
>  delete mode 100755 build-aux/depcomp
>  delete mode 100755 build-aux/install-sh
>  delete mode 100644 build-aux/ltmain.sh
>  delete mode 100755 build-aux/missing
>  delete mode 100755 build-aux/mkinstalldirs
>  delete mode 100644 lib/libalpm/po/Makefile.in.in
>  delete mode 100644 m4/gettext.m4
>  delete mode 100644 m4/gpgme.m4
>  delete mode 100644 m4/iconv.m4
>  delete mode 100644 m4/intlmacosx.m4
>  delete mode 100644 m4/lib-ld.m4
>  delete mode 100644 m4/lib-link.m4
>  delete mode 100644 m4/lib-prefix.m4
>  delete mode 100644 m4/libtool.m4
>  delete mode 100644 m4/ltoptions.m4
>  delete mode 100644 m4/ltsugar.m4
>  delete mode 100644 m4/ltversion.m4
>  delete mode 100644 m4/lt~obsolete.m4
>  delete mode 100644 m4/nls.m4
>  delete mode 100644 m4/pkg.m4
>  delete mode 100644 m4/po.m4
>  delete mode 100644 m4/progtest.m4
>  delete mode 100644 scripts/po/Makefile.in.in
>  delete mode 100644 src/pacman/po/Makefile.in.in
>
>
>>   Update gitignore files for use with autoreconf
>>   Use autoreconf in autogen.sh
>>   Patch ltmain on autoreconf
>>   Remove autotools files with autoclean.sh
>>
>>  .gitignore                      |    1 +
>>  autoclean.sh                    |   18 +-
>>  autogen.sh                      |    6 +-
>>  build-aux/.gitignore            |    2 +
>>  build-aux/compile               |  347 --
>>  build-aux/config.guess          | 1558 -------
>>  build-aux/config.rpath          |  614 ---
>>  build-aux/config.sub            | 1788 --------
>>  build-aux/depcomp               |  791 ----
>>  build-aux/install-sh            |  527 ---
>>  build-aux/ltmain-asneeded.patch |   33 +
>>  build-aux/ltmain.sh             | 9672 ---------------------------------------
>>  build-aux/missing               |  215 -
>>  build-aux/mkinstalldirs         |  162 -
>>  configure.ac                    |    2 +-
>>  lib/libalpm/po/.gitignore       |   10 +-
>>  lib/libalpm/po/Makefile.in.in   |  444 --
>>  m4/.gitignore                   |    2 +
>>  m4/gettext.m4                   |  383 --
>>  m4/gpgme.m4                     |  307 --
>>  m4/iconv.m4                     |  214 -
>>  m4/intlmacosx.m4                |   51 -
>>  m4/lib-ld.m4                    |  110 -
>>  m4/lib-link.m4                  |  774 ----
>>  m4/lib-prefix.m4                |  224 -
>>  m4/libtool.m4                   | 7831 -------------------------------
>>  m4/ltoptions.m4                 |  369 --
>>  m4/ltsugar.m4                   |  123 -
>>  m4/ltversion.m4                 |   23 -
>>  m4/lt~obsolete.m4               |   98 -
>>  m4/nls.m4                       |   32 -
>>  m4/pkg.m4                       |  159 -
>>  m4/po.m4                        |  449 --
>>  m4/progtest.m4                  |   92 -
>>  scripts/po/.gitignore           |   10 +-
>>  scripts/po/Makefile.in.in       |  444 --
>>  src/pacman/po/.gitignore        |   10 +-
>>  src/pacman/po/Makefile.in.in    |  444 --
>>  38 files changed, 83 insertions(+), 28256 deletions(-)
>>  create mode 100644 build-aux/.gitignore
>>  delete mode 100755 build-aux/compile
>>  delete mode 100755 build-aux/config.guess
>>  delete mode 100755 build-aux/config.rpath
>>  delete mode 100755 build-aux/config.sub
>>  delete mode 100755 build-aux/depcomp
>>  delete mode 100755 build-aux/install-sh
>>  create mode 100644 build-aux/ltmain-asneeded.patch
>>  delete mode 100644 build-aux/ltmain.sh
>>  delete mode 100755 build-aux/missing
>>  delete mode 100755 build-aux/mkinstalldirs
>>  delete mode 100644 lib/libalpm/po/Makefile.in.in
>>  create mode 100644 m4/.gitignore
>>  delete mode 100644 m4/gettext.m4
>>  delete mode 100644 m4/gpgme.m4
>>  delete mode 100644 m4/iconv.m4
>>  delete mode 100644 m4/intlmacosx.m4
>>  delete mode 100644 m4/lib-ld.m4
>>  delete mode 100644 m4/lib-link.m4
>>  delete mode 100644 m4/lib-prefix.m4
>>  delete mode 100644 m4/libtool.m4
>>  delete mode 100644 m4/ltoptions.m4
>>  delete mode 100644 m4/ltsugar.m4
>>  delete mode 100644 m4/ltversion.m4
>>  delete mode 100644 m4/lt~obsolete.m4
>>  delete mode 100644 m4/nls.m4
>>  delete mode 100644 m4/pkg.m4
>>  delete mode 100644 m4/po.m4
>>  delete mode 100644 m4/progtest.m4
>>  delete mode 100644 scripts/po/Makefile.in.in
>>  delete mode 100644 src/pacman/po/Makefile.in.in

>From man git format-patch, so it fits under the limits next time, you
might want to send it with this:

       -D, --irreversible-delete
           Omit the preimage for deletes, i.e. print only the header
but not the diff between the preimage and /dev/null.
           The resulting patch is not meant to be applied with patch
nor git apply; this is solely for people who want to
           just concentrate on reviewing the text after the change. In
addition, the output obviously lack enough
           information to apply such a patch in reverse, even
manually, hence the name of the option.

           When used together with -B, omit also the preimage in the
deletion part of a delete/create pair.


More information about the pacman-dev mailing list