#2 Merged at 21efcc3

autotools overhaul

  1. Mike Frysinger

i've cleaned up and modernized a number of aspects in the autotool build

Comments (10)

  1. Pierre Joye

    hi Mike!

    Thanks for your work! Much appreciated :)

    I will Ondrej and other comment on the config/ change, I think it was necessary to keep them but not sure :)

    About using pkg-config usage, does it work smoothly when one installs many versions of the respective library in separate directories? I do that a lot while testing various freetype versions f.e., installed in ~/usr and point configure to it.

  2. Mike Frysinger author

    i've left in the support for specifying paths to the freetype-config, so i think your use case should continue to work

    ./configure --with-freetype=~/usr/freetype-2.1.1

    it'll look for ~/usr/freetype-2.1.1/bin/freetype-config and use the values it returns

  3. Mike Frysinger author

    yes, i've left in the bare min for --with-png

    ./configure --with-png=~/usr/png-1.2.3

    it'll look for ~/usr/png-1.2.3/bin/libpng-config and use the values it returns

    1. Mike Frysinger author

      the current code already has autotool files not checked in which means you already have to regen things

      i don't know how tarball releases are created, but in the autotool world, it's simply a matter of:

      $ autoreconf
      $ ./configure
      $ make dist

      and that'll produce a tarball with all the right bits in it

      1. Ondřej Surý

        Yes, but the bits checked-in were from autoconf 2.69, which allowed to reuse them even on system with older autoconf releases. But sure we'll just be doing the tarballs on recent systems.

        1. Mike Frysinger author

          i'm fairly certain that's incorrect. here's the files that i punted and where they come from:

          • config/config.guess: from the GNU config project; snapshots shipped with automake & libtool (this one dates to 2012-04-18)
          • config/config.sub: same as above
          • config/depcomp: comes from automake (1.11.x)
          • config/install-sh: comes from automake (1.11.x)
          • config/ltmain.sh: comes from libtool (2.4.2)
          • config/missing: comes from automake (1.11.x)
          • config/mkinstalldirs: comes from automake (1.11.x)
          • src/config.hin: generated from configure.ac by autoheader (from autoconf) and often changes based on various autotool related inputs as well as configure.ac
          • src/install-sh: actually unused (we get it from config/)
          • src/missing: same as above
          • src/mkinstalldirs: same as above

          so on my system, while i might be running autoconf-2.69, i'm also running gnuconfig-2013.01.11 snapshot, automake-1.13.x, libtool-2.4.2, and gettext-0.18.2. so my local copies of files were constantly in flux as compared to what was checked into the git repo.