NetBSD 4.0 i386, manually built wxWidgets 2.8.7, aMule SVN 20080524
This is only about getting the things to build and run, not about any runtime issues.
Please don't jump on me about the proposed fixes - I'm sure there are better ways to do stuff and I have no idea how to actually implement most of these :p
Starting with vanilla ./configure --enable-amule-daemon --enable-amulecmd --enable-webserver --disable-monolithic --with-toolkit=base --enable-geoip --enable-cas --enable-alcc
Problems:
1) configure cannot find header files for things like gd, geoip etc because in NetBSD the user-installed packages go in /usr/pkg
Workaround: Add -I/usr/pkg/include to CFLAGS/CXXFLAGS/CPPFLAGS and -L/usr/pkg/lib to LDFLAGS
Fix: configure should detect NetBSD and use the include and lib directories under /usr/pkg
2) configure says that system does not have exception handling. In reality, the test progam is compiled with -lGeoIP and it fails because GeoIP .so file is not found
Workaround: Add -R/usr/pkg/lib to LDFLAGS
Fix: See 1) and avoid using unneeded flags for test programs to avoid confusion?
3) Cannot find crypto header
Workaround: Give the --with-crypto-prefix parameter to configure
Fix: The Crypto++ check should use the system include dirs specified above
4) BSD make does not work
Workaround: Use gmake
Fix: configure should detect and force/recommend the use of GNU make. See
http://ac-archive.sourceforge.net/ac-archive/check_gnu_make.html5) file_generator.pl script cannot be run because the perl path is hardcoded to the hashbang line in the scriptifile
Workaround: Fix the script
Fix: Configure should detect the perl path and the script should be called explicitly with the detected path a la "$PERL file_generator.pl file.abstract"
6) libintl.a is not found in ${top_builddir}/intl/ when linking amuleweb
Workaround: run gmake in amule-cvs/intl directory to build it before aMule itself
Fix: Bundled libintl (when used) should be built before any apps that need it
7) amuled crashes at startup in InitLocale. Maybe because configure couldn't find GNU gettext anywhere?
Workaround: Use --disable-nls with configure
Fix: Try harder to make sure that everything is OK with i18n before trying to localize?
So we end up with the following:
export CFLAGS="-I/usr/pkg/include"
export CXXFLAGS="$CFLAGS"
export CPPFLAGS="-I/usr/pkg/include"
export LDFLAGS="-R/usr/pkg/lib -L/usr/pkg/lib"
./configure --enable-amule-daemon --enable-amulecmd --enable-webserver --disable-nls --disable-monolithic --with-toolkit=base --with-crypto-prefix=/usr/pkg --enable-geoip --enable-cas --enable-alcc
gmake