November 2011
Create a dir src
and put the entire source tree in it.
Create configure.ac
(or generate it with autoscan && mv configure.scan configure.ac and then hand-edit:
# -*- Autoconf -*- # Process this file with autoconf to produce a configure script. AC_PREREQ([2.68]) AC_INIT([mainfix], [0.00.00], [j.bokma@rug.nl]) AM_INIT_AUTOMAKE([1.10 -Wall no-define foreign]) AC_CONFIG_SRCDIR([src/main.cc]) AC_CONFIG_HEADERS([config.h]) # Checks for programs. AC_PROG_CXX AC_PROG_CC # Checks for libraries. # Checks for header files. # Checks for typedefs, structures, and compiler characteristics. AC_HEADER_STDBOOL AC_C_INLINE AC_TYPE_SIZE_T # Checks for library functions. AC_CONFIG_FILES([Makefile]) AC_OUTPUT
Create Makefile.am
by hand:
AUTOMAKE_OPTIONS = subdir-objects ACLOCAL_AMFLAGS = ${ACLOCAL_FLAGS} bin_PROGRAMS = mainfix mainfix_SOURCES = src/main.cc \ src/angle/add.cc \ src/angle/set2.cc \ <snip>
Note | |
---|---|
The longish file list can be generated with:
|
Create autogen.sh
:
! /bin/sh aclocal \ && automake --add-missing \ && autoconf
apprentice@progbox:~/dev/c++/myproj/$ autoreconf
apprentice@progbox:~/dev/c++/myproj/$ automake --add-missing
apprentice@progbox:~/dev/c++/myproj/$ autoreconf
apprentice@progbox:~/dev/c++/myproj/$ ./configure
apprentice@progbox:~/dev/c++/myproj/$ make