diff --git a/Makefile.in b/Makefile.in index 3e0459116..b2e09fc30 100644 --- a/Makefile.in +++ b/Makefile.in @@ -75,10 +75,10 @@ OBJS = main.o nmap.o targets.o tcpip.o nmap_error.o utils.o idle_scan.o osscan.o .cc.o: $(CXX) -c $(CPPFLAGS) $(CXXFLAGS) $< -o $@ -all: @LUA_DEPENDS@ @PCAP_DEPENDS@ @PCRE_DEPENDS@ @DNET_DEPENDS@ $(NBASEDIR)/libnbase.a $(NSOCKDIR)/src/libnsock.a $(NSESTDLIB) - $(MAKE) $(TARGET) $(BUILDZENMAP) +all: @LUA_BUILD@ @PCAP_BUILD@ @PCRE_BUILD@ @DNET_BUILD@ @NBASE_BUILD@ @NSOCK_BUILD@ + $(MAKE) $(TARGET) $(NSESTDLIB) $(BUILDZENMAP) -$(TARGET): $(OBJS) +$(TARGET): @LUA_DEPENDS@ @PCAP_DEPENDS@ @PCRE_DEPENDS@ @DNET_DEPENDS@ $(NBASEDIR)/libnbase.a $(NSOCKDIR)/src/libnsock.a $(OBJS) echo Compiling nmap rm -f $@ $(CXX) $(LDFLAGS) -o $@ $(OBJS) $(LIBS) @@ -87,28 +87,24 @@ nsestdlib: nselib/Makefile @echo Compiling nse-standard-library; cd nselib && $(MAKE) -# This empty rule is used to force execution of certain rules where I can't conveniently specify -# all of the prerequisites (e.g. recursive makes and such) -FORCE: - -$(LIBPCREDIR)/libpcre.a: $(LIBPCREDIR)/Makefile FORCE +pcre_build: $(LIBPCREDIR)/Makefile @echo Compiling libpcre; cd $(LIBPCREDIR) && $(MAKE) -$(LIBDNETDIR)/src/.libs/libdnet.a: $(LIBDNETDIR)/Makefile FORCE +dnet_build: $(LIBDNETDIR)/Makefile @echo Compiling libdnet; cd $(LIBDNETDIR) && $(MAKE) -$(LIBPCAPDIR)/libpcap.a: $(LIBPCAPDIR)/Makefile FORCE +pcap_build: $(LIBPCAPDIR)/Makefile @echo Compiling libpcap; cd $(LIBPCAPDIR) && $(MAKE) -$(NBASEDIR)/libnbase.a: $(NBASEDIR)/Makefile FORCE +nbase_build: $(NBASEDIR)/Makefile @echo Compiling libnbase; cd $(NBASEDIR) && $(MAKE) -$(NSOCKDIR)/src/libnsock.a: $(NSOCKDIR)/src/Makefile FORCE +nsock_build: $(NSOCKDIR)/src/Makefile @echo Compiling libnsock; cd $(NSOCKDIR)/src && $(MAKE) -$(LIBLUADIR)/liblua.a: $(LIBLUADIR)/Makefile FORCE +lua_build: $(LIBLUADIR)/Makefile @echo Compiling liblua; cd $(LIBLUADIR) && $(MAKE) liblua.a @LUAFLAGS@ #$(LIBPCAPDIR)/Makefile: diff --git a/configure b/configure index 658aba038..9cd14c136 100755 --- a/configure +++ b/configure @@ -684,6 +684,7 @@ ZENMAP_CLEAN ZENMAP_DIST_CLEAN OPENSSL_LIBS PCAP_DEPENDS +PCAP_BUILD PCAP_CLEAN PCAP_DIST_CLEAN LIBPCAP_LIBS @@ -691,24 +692,29 @@ subdirs LIBPCRE_LIBS LIBPCREDIR PCRE_DEPENDS +PCRE_BUILD PCRE_CLEAN PCRE_DIST_CLEAN LIBDNET_LIBS LIBDNETDIR DNET_DEPENDS +DNET_BUILD DNET_CLEAN DNET_DIST_CLEAN LIBLUA_LIBS LIBLUADIR LUA_DEPENDS +LUA_BUILD LUA_CLEAN LUA_DIST_CLEAN INSTALLNSE NSELIB_CLEAN NSELIB_DIST_CLEAN NBASEDIR +NBASE_BUILD LIBNBASE_LIBS NSOCKDIR +NSOCK_BUILD LIBNSOCK_LIBS PYTHON PYTHON_VERSION @@ -6279,6 +6285,7 @@ fi LIBPCAP_LIBS="-lpcap" if test $have_libpcap = yes; then PCAP_DEPENDS="" + PCAP_BUILD="" PCAP_CLEAN="" PCAP_DIST_CLEAN="" cat >>confdefs.h <<\_ACEOF @@ -6294,6 +6301,7 @@ else CXXFLAGS="$CXXFLAGS -I$libpcapdir" fi PCAP_DEPENDS='$(LIBPCAPDIR)/libpcap.a' + PCAP_BUILD="pcap_build" PCAP_CLEAN="pcap_clean" PCAP_DIST_CLEAN="pcap_dist_clean" fi @@ -6303,6 +6311,7 @@ fi + if test $have_libpcap != yes ; then subdirs="$subdirs libpcap" @@ -6744,11 +6753,13 @@ if test $have_pcre != yes ; then CXXFLAGS="-I$LIBPCREDIR $CXXFLAGS" LIBPCRE_LIBS="$LIBPCREDIR/libpcre.a" PCRE_DEPENDS="$LIBPCREDIR/libpcre.a" + PCRE_BUILD="pcre_build" PCRE_CLEAN="pcre_clean" PCRE_DIST_CLEAN="pcre_dist_clean" else LIBPCRE_LIBS="-lpcre" PCRE_DEPENDS="" + PCRE_BUILD="" PCRE_CLEAN="" PCRE_DIST_CLEAN="" fi @@ -6759,6 +6770,7 @@ fi + have_dnet=no requested_included_dnet=no LIBDNETDIR=libdnet-stripped @@ -6789,11 +6801,13 @@ if test $have_dnet != yes ; then CXXFLAGS="-I$LIBDNETDIR/include $CXXFLAGS" LIBDNET_LIBS="$LIBDNETDIR/src/.libs/libdnet.a" DNET_DEPENDS="$LIBDNETDIR/src/.libs/libdnet.a" + DNET_BUILD="dnet_build" DNET_CLEAN="dnet_clean" DNET_DIST_CLEAN="dnet_dist_clean" else LIBDNET_LIBS="-ldnet" DNET_DEPENDS="" + DNET_BUILD="" DNET_CLEAN="" DNET_DIST_CLEAN="" fi @@ -6804,6 +6818,7 @@ fi + LIBLUADIR=liblua have_lua=no @@ -6821,6 +6836,7 @@ if test "${with_liblua+set}" = set; then CXXFLAGS="-I$LIBLUADIR $CXXFLAGS" LIBLUA_LIBS="$LIBLUADIR/liblua.a" LUA_DEPENDS="$LIBLUADIR/liblua.a" + LUA_BUILD="lua_build" LUA_CLEAN="lua_clean" LUA_DIST_CLEAN="lua_dist_clean" have_lua="yes" @@ -6844,6 +6860,7 @@ if test $no_lua == yes; then CXXFLAGS="-DNOLUA $CXXFLAGS" LIBLUA_LIBS="" LUA_DEPENDS="" + LUA_BUILD="" LUA_CLEAN="" LUA_DIST_CLEAN="" INSTALLNSE="" @@ -7411,6 +7428,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu LIBLUA_LIBS="-llua" LUA_DEPENDS="" + LUA_BUILD="" LUA_CLEAN="" LUA_DIST_CLEAN="" fi @@ -7422,6 +7440,7 @@ echo "${ECHO_T}no" >&6; } CXXFLAGS="-I$LIBLUADIR $CXXFLAGS" LIBLUA_LIBS="$LIBLUADIR/liblua.a" LUA_DEPENDS="$LIBLUADIR/liblua.a" + LUA_BUILD="lua_build" LUA_CLEAN="lua_clean" LUA_DIST_CLEAN="lua_dist_clean" else @@ -7449,6 +7468,7 @@ fi + { echo "$as_me:$LINENO: checking if sockaddr{} has sa_len member" >&5 echo $ECHO_N "checking if sockaddr{} has sa_len member... $ECHO_C" >&6; } if test "${ac_cv_sockaddr_has_sa_len+set}" = set; then @@ -8225,10 +8245,12 @@ if test "${with_libnbase+set}" = set; then ;; *) NBASEDIR="$with_libnbase" + NBASE_BUILD="" ;; esac else - NBASEDIR="nbase" + NBASE_BUILD="nbase_build" +NBASEDIR="nbase" fi @@ -8240,10 +8262,12 @@ LIBNBASE_LIBS="-lnbase" + subdirs="$subdirs nbase" NSOCKDIR="nsock" +NSOCK_BUILD="nsock_build" # Check whether --with-libnsock was given. if test "${with_libnsock+set}" = set; then @@ -8252,6 +8276,7 @@ if test "${with_libnsock+set}" = set; then ;; *) NSOCKDIR="$with_nsock" + NSOCK_BUILD="" ;; esac @@ -8265,6 +8290,7 @@ LIBNSOCK_LIBS="-lnsock" + subdirs="$subdirs nsock/src" @@ -9092,6 +9118,7 @@ ZENMAP_CLEAN!$ZENMAP_CLEAN$ac_delim ZENMAP_DIST_CLEAN!$ZENMAP_DIST_CLEAN$ac_delim OPENSSL_LIBS!$OPENSSL_LIBS$ac_delim PCAP_DEPENDS!$PCAP_DEPENDS$ac_delim +PCAP_BUILD!$PCAP_BUILD$ac_delim PCAP_CLEAN!$PCAP_CLEAN$ac_delim PCAP_DIST_CLEAN!$PCAP_DIST_CLEAN$ac_delim LIBPCAP_LIBS!$LIBPCAP_LIBS$ac_delim @@ -9099,25 +9126,24 @@ subdirs!$subdirs$ac_delim LIBPCRE_LIBS!$LIBPCRE_LIBS$ac_delim LIBPCREDIR!$LIBPCREDIR$ac_delim PCRE_DEPENDS!$PCRE_DEPENDS$ac_delim +PCRE_BUILD!$PCRE_BUILD$ac_delim PCRE_CLEAN!$PCRE_CLEAN$ac_delim PCRE_DIST_CLEAN!$PCRE_DIST_CLEAN$ac_delim LIBDNET_LIBS!$LIBDNET_LIBS$ac_delim LIBDNETDIR!$LIBDNETDIR$ac_delim DNET_DEPENDS!$DNET_DEPENDS$ac_delim +DNET_BUILD!$DNET_BUILD$ac_delim DNET_CLEAN!$DNET_CLEAN$ac_delim DNET_DIST_CLEAN!$DNET_DIST_CLEAN$ac_delim LIBLUA_LIBS!$LIBLUA_LIBS$ac_delim LIBLUADIR!$LIBLUADIR$ac_delim LUA_DEPENDS!$LUA_DEPENDS$ac_delim +LUA_BUILD!$LUA_BUILD$ac_delim LUA_CLEAN!$LUA_CLEAN$ac_delim LUA_DIST_CLEAN!$LUA_DIST_CLEAN$ac_delim INSTALLNSE!$INSTALLNSE$ac_delim NSELIB_CLEAN!$NSELIB_CLEAN$ac_delim NSELIB_DIST_CLEAN!$NSELIB_DIST_CLEAN$ac_delim -NBASEDIR!$NBASEDIR$ac_delim -LIBNBASE_LIBS!$LIBNBASE_LIBS$ac_delim -NSOCKDIR!$NSOCKDIR$ac_delim -LIBNSOCK_LIBS!$LIBNSOCK_LIBS$ac_delim _ACEOF if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then @@ -9159,6 +9185,12 @@ _ACEOF ac_delim='%!_!# ' for ac_last_try in false false false false false :; do cat >conf$$subs.sed <<_ACEOF +NBASEDIR!$NBASEDIR$ac_delim +NBASE_BUILD!$NBASE_BUILD$ac_delim +LIBNBASE_LIBS!$LIBNBASE_LIBS$ac_delim +NSOCKDIR!$NSOCKDIR$ac_delim +NSOCK_BUILD!$NSOCK_BUILD$ac_delim +LIBNSOCK_LIBS!$LIBNSOCK_LIBS$ac_delim PYTHON!$PYTHON$ac_delim PYTHON_VERSION!$PYTHON_VERSION$ac_delim PYTHON_PREFIX!$PYTHON_PREFIX$ac_delim @@ -9172,7 +9204,7 @@ LIBOBJS!$LIBOBJS$ac_delim LTLIBOBJS!$LTLIBOBJS$ac_delim _ACEOF - if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 11; then + if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 17; then break elif $ac_last_try; then { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 diff --git a/configure.ac b/configure.ac index 90751dfaa..68b0fb804 100644 --- a/configure.ac +++ b/configure.ac @@ -321,6 +321,7 @@ fi LIBPCAP_LIBS="-lpcap" if test $have_libpcap = yes; then PCAP_DEPENDS="" + PCAP_BUILD="" PCAP_CLEAN="" PCAP_DIST_CLEAN="" AC_DEFINE(HAVE_LIBPCAP) @@ -333,11 +334,13 @@ else CXXFLAGS="$CXXFLAGS -I$libpcapdir" fi PCAP_DEPENDS='$(LIBPCAPDIR)/libpcap.a' + PCAP_BUILD="pcap_build" PCAP_CLEAN="pcap_clean" PCAP_DIST_CLEAN="pcap_dist_clean" fi AC_SUBST(PCAP_DEPENDS) +AC_SUBST(PCAP_BUILD) AC_SUBST(PCAP_CLEAN) AC_SUBST(PCAP_DIST_CLEAN) AC_SUBST(LIBPCAP_LIBS) @@ -384,11 +387,13 @@ if test $have_pcre != yes ; then CXXFLAGS="-I$LIBPCREDIR $CXXFLAGS" LIBPCRE_LIBS="$LIBPCREDIR/libpcre.a" PCRE_DEPENDS="$LIBPCREDIR/libpcre.a" + PCRE_BUILD="pcre_build" PCRE_CLEAN="pcre_clean" PCRE_DIST_CLEAN="pcre_dist_clean" else LIBPCRE_LIBS="-lpcre" PCRE_DEPENDS="" + PCRE_BUILD="" PCRE_CLEAN="" PCRE_DIST_CLEAN="" fi @@ -396,6 +401,7 @@ fi AC_SUBST(LIBPCRE_LIBS) AC_SUBST(LIBPCREDIR) AC_SUBST(PCRE_DEPENDS) +AC_SUBST(PCRE_BUILD) AC_SUBST(PCRE_CLEAN) AC_SUBST(PCRE_DIST_CLEAN) @@ -425,11 +431,13 @@ if test $have_dnet != yes ; then CXXFLAGS="-I$LIBDNETDIR/include $CXXFLAGS" LIBDNET_LIBS="$LIBDNETDIR/src/.libs/libdnet.a" DNET_DEPENDS="$LIBDNETDIR/src/.libs/libdnet.a" + DNET_BUILD="dnet_build" DNET_CLEAN="dnet_clean" DNET_DIST_CLEAN="dnet_dist_clean" else LIBDNET_LIBS="-ldnet" DNET_DEPENDS="" + DNET_BUILD="" DNET_CLEAN="" DNET_DIST_CLEAN="" fi @@ -437,6 +445,7 @@ fi AC_SUBST(LIBDNET_LIBS) AC_SUBST(LIBDNETDIR) AC_SUBST(DNET_DEPENDS) +AC_SUBST(DNET_BUILD) AC_SUBST(DNET_CLEAN) AC_SUBST(DNET_DIST_CLEAN) @@ -458,6 +467,7 @@ AC_HELP_STRING([--without-liblua], [Compile without lua (this will exclude all o CXXFLAGS="-I$LIBLUADIR $CXXFLAGS" LIBLUA_LIBS="$LIBLUADIR/liblua.a" LUA_DEPENDS="$LIBLUADIR/liblua.a" + LUA_BUILD="lua_build" LUA_CLEAN="lua_clean" LUA_DIST_CLEAN="lua_dist_clean" have_lua="yes" @@ -479,6 +489,7 @@ if test $no_lua == yes; then CXXFLAGS="-DNOLUA $CXXFLAGS" LIBLUA_LIBS="" LUA_DEPENDS="" + LUA_BUILD="" LUA_CLEAN="" LUA_DIST_CLEAN="" INSTALLNSE="" @@ -506,6 +517,7 @@ else LIBLUA_LIBS="-llua" LUA_DEPENDS="" + LUA_BUILD="" LUA_CLEAN="" LUA_DIST_CLEAN="" fi @@ -516,6 +528,7 @@ else CXXFLAGS="-I$LIBLUADIR $CXXFLAGS" LIBLUA_LIBS="$LIBLUADIR/liblua.a" LUA_DEPENDS="$LIBLUADIR/liblua.a" + LUA_BUILD="lua_build" LUA_CLEAN="lua_clean" LUA_DIST_CLEAN="lua_dist_clean" else @@ -534,6 +547,7 @@ fi AC_SUBST(LIBLUA_LIBS) AC_SUBST(LIBLUADIR) AC_SUBST(LUA_DEPENDS) +AC_SUBST(LUA_BUILD) AC_SUBST(LUA_CLEAN) AC_SUBST(LUA_DIST_CLEAN) AC_SUBST(INSTALLNSE) @@ -635,8 +649,10 @@ AC_HELP_STRING([--with-libnbase=DIR], [Look for nbase include/libs in DIR]), ;; *) NBASEDIR="$with_libnbase" + NBASE_BUILD="" ;; esac], +NBASE_BUILD="nbase_build" NBASEDIR="nbase" ) @@ -645,11 +661,13 @@ CXXFLAGS="$CXXFLAGS -I$NBASEDIR" LIBNBASE_LIBS="-lnbase" AC_SUBST(NBASEDIR) +AC_SUBST(NBASE_BUILD) AC_SUBST(LIBNBASE_LIBS) AC_CONFIG_SUBDIRS(nbase) NSOCKDIR="nsock" +NSOCK_BUILD="nsock_build" AC_ARG_WITH(libnsock, AC_HELP_STRING([--with-libnsock=DIR], [Compile and link to libnsock in DIR]), [ case "$with_nsock" in @@ -657,6 +675,7 @@ AC_HELP_STRING([--with-libnsock=DIR], [Compile and link to libnsock in DIR]), ;; *) NSOCKDIR="$with_nsock" + NSOCK_BUILD="" ;; esac] ) @@ -666,6 +685,7 @@ CXXFLAGS="$CXXFLAGS -I$NSOCKDIR/include" LIBNSOCK_LIBS="-lnsock" AC_SUBST(NSOCKDIR) +AC_SUBST(NSOCK_BUILD) AC_SUBST(LIBNSOCK_LIBS) AC_CONFIG_SUBDIRS(nsock/src)