I had to spend a lot of time today re-remembering how to take a CVS/SVN tree and make a distributable package of it. Here are my notes, for me next time, and for anyone interested, now.
sed -i -e "s/AC_INIT(NetworkManager-ppp_vpn, 0.7.0-beta, email@example.com, NetworkManager-ppp_vpn)/AC_INIT(NetworkManager-pptp, 0.6.5, firstname.lastname@example.org, NetworkManager-pptp)/" configure.in sed -i -e "s/SUBDIRS = src auth-dialog auth-dialog-general properties po/SUBDIRS = src auth-dialog properties po/" Makefile.am sed -i -e "s_auth-dialog-general/Makefile__" configure.in ln -s /usr/include/pppd src/pppd ./autogen.sh --prefix=/usr --sysconfdir=/etc --localstatedir=/var make dist
What's all that do, then?
- Downgrade the version number
- Remove the new auth-dialog-general, which isn't ready for primetime yet, from the Makefile
- (as above, but for the configure script)
- Link the system pppd dir - not actually packaged, but <tt>make dist</tt> fails if the PPP headers are missing
- Run the GNOME autogen script, which runs the autotools
- Builds a NetworkManager-pptp-0.6.5.tar.gz, with a configure script, ready for packaging.
It helps to remember things. Before re-reading the docs, and realising there was an autogen script, I was running all these commands (which of course required Perry to figure out, as I hate the autotools)
aclocal autoheader intltoolize --copy --force --automake libtoolize --force automake --copy --add-missing autoconf ./configure --with-pppd=/usr/include/pppd ln -s /usr/include/pppd src/pppd make dist