Nmap Development mailing list archives
Re: ncat's "make all"
From: Jacek Wielemborek <wielemborekj1 () gmail com>
Date: Sat, 7 Sep 2013 19:14:05 +0200
2013/9/7 David Fifield <david () bamsoftware com>:
On Thu, Sep 05, 2013 at 07:00:23PM +0200, Jacek Wielemborek wrote:When building Ncat on my netbook, I noticed it takes quite a lot of time to compile it because every object file change not only implies rebuilding the file and relinking the executable, but also test executables. Perhaps it would be a good idea to create an optional target "make tests" and skip building the tests when a bare "make" command is called? That would speed up building, though at the cost of not seeing the newly introduced build errors for tests.What's the percentage of time used to build the tests versus other things?
[d33tah-pc][/media/shared/ncat/ncat-sa-take2/ncat] $ make clean all 2>&1 | ruby -e 'start = now = Time.now() ; loop { l = STDIN.readline ; printf("%0.3f %0.3f %s",Time.now() - start, Time.now() - now, l) ; now = Time.now() }' 0.000 0.000 rm -f -f *.o test/*.o ncat test/addrset test/test-uri test/test-cmdline-split test/test-wildcard 0.000 0.000 cd ../liblua && make clean 0.000 0.000 make[1]: Entering directory `/media/shared/ncat/ncat-sa-take2/liblua' 0.000 0.000 rm -f liblua.a lua luac lapi.o lcode.o lctype.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o lmem.o lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o ltm.o lundump.o lvm.o lzio.o lauxlib.o lbaselib.o lbitlib.o lcorolib.o ldblib.o liolib.o lmathlib.o loslib.o lstrlib.o ltablib.o loadlib.o linit.o lua.o luac.o 0.008 0.008 make[1]: Leaving directory `/media/shared/ncat/ncat-sa-take2/liblua' 0.012 0.003 Compiling liblua 0.016 0.005 make[1]: Entering directory `/media/shared/ncat/ncat-sa-take2/liblua' 0.016 0.000 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o lapi.o lapi.c 0.038 0.022 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o lcode.o lcode.c 0.054 0.016 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o lctype.o lctype.c 0.059 0.005 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o ldebug.o ldebug.c 0.076 0.017 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o ldo.o ldo.c 0.094 0.018 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o ldump.o ldump.c 0.102 0.008 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o lfunc.o lfunc.c 0.109 0.008 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o lgc.o lgc.c 0.120 0.010 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o llex.o llex.c 0.131 0.011 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o lmem.o lmem.c 0.140 0.009 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o lobject.o lobject.c 0.152 0.012 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o lopcodes.o lopcodes.c 0.158 0.005 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o lparser.o lparser.c 0.179 0.021 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o lstate.o lstate.c 0.191 0.012 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o lstring.o lstring.c 0.200 0.009 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o ltable.o ltable.c 0.210 0.010 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o ltm.o ltm.c 0.219 0.009 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o lundump.o lundump.c 0.232 0.013 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o lvm.o lvm.c 0.245 0.013 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o lzio.o lzio.c 0.254 0.009 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o lauxlib.o lauxlib.c 0.262 0.008 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o lbaselib.o lbaselib.c 0.279 0.017 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o lbitlib.o lbitlib.c 0.284 0.006 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o lcorolib.o lcorolib.c 0.291 0.006 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o ldblib.o ldblib.c 0.298 0.008 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o liolib.o liolib.c 0.305 0.007 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o lmathlib.o lmathlib.c 0.312 0.006 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o loslib.o loslib.c 0.319 0.007 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o lstrlib.o lstrlib.c 0.327 0.008 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o ltablib.o ltablib.c 0.333 0.006 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o loadlib.o loadlib.c 0.340 0.008 gcc -O2 -Wall -g -O2 -Wall -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -c -o linit.o linit.c 0.346 0.005 ar rcu liblua.a lapi.o lcode.o lctype.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o lmem.o lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o ltm.o lundump.o lvm.o lzio.o lauxlib.o lbaselib.o lbitlib.o lcorolib.o ldblib.o liolib.o lmathlib.o loslib.o lstrlib.o ltablib.o loadlib.o linit.o 0.448 0.102 ranlib liblua.a 0.542 0.095 make[1]: Leaving directory `/media/shared/ncat/ncat-sa-take2/liblua' 0.546 0.003 gcc -I./../liblua -DHAVE_CONFIG_H -DNCAT_DATADIR="\"/usr/local/share/ncat\"" -D_FORTIFY_SOURCE=2 -I. -I.. -I../nsock/include/ -I../nbase -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -g -O2 -Wall -c ncat_main.c -o ncat_main.o 0.570 0.024 gcc -I./../liblua -DHAVE_CONFIG_H -DNCAT_DATADIR="\"/usr/local/share/ncat\"" -D_FORTIFY_SOURCE=2 -I. -I.. -I../nsock/include/ -I../nbase -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -g -O2 -Wall -c ncat_connect.c -o ncat_connect.o 0.595 0.026 gcc -I./../liblua -DHAVE_CONFIG_H -DNCAT_DATADIR="\"/usr/local/share/ncat\"" -D_FORTIFY_SOURCE=2 -I. -I.. -I../nsock/include/ -I../nbase -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -g -O2 -Wall -c ncat_core.c -o ncat_core.o 0.619 0.024 gcc -I./../liblua -DHAVE_CONFIG_H -DNCAT_DATADIR="\"/usr/local/share/ncat\"" -D_FORTIFY_SOURCE=2 -I. -I.. -I../nsock/include/ -I../nbase -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -g -O2 -Wall -c ncat_posix.c -o ncat_posix.o 0.642 0.023 gcc -I./../liblua -DHAVE_CONFIG_H -DNCAT_DATADIR="\"/usr/local/share/ncat\"" -D_FORTIFY_SOURCE=2 -I. -I.. -I../nsock/include/ -I../nbase -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -g -O2 -Wall -c ncat_listen.c -o ncat_listen.o 0.667 0.024 gcc -I./../liblua -DHAVE_CONFIG_H -DNCAT_DATADIR="\"/usr/local/share/ncat\"" -D_FORTIFY_SOURCE=2 -I. -I.. -I../nsock/include/ -I../nbase -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -g -O2 -Wall -c ncat_proxy.c -o ncat_proxy.o 0.692 0.026 gcc -I./../liblua -DHAVE_CONFIG_H -DNCAT_DATADIR="\"/usr/local/share/ncat\"" -D_FORTIFY_SOURCE=2 -I. -I.. -I../nsock/include/ -I../nbase -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -g -O2 -Wall -c ncat_ssl.c -o ncat_ssl.o 0.715 0.023 gcc -I./../liblua -DHAVE_CONFIG_H -DNCAT_DATADIR="\"/usr/local/share/ncat\"" -D_FORTIFY_SOURCE=2 -I. -I.. -I../nsock/include/ -I../nbase -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -g -O2 -Wall -c base64.c -o base64.o 0.724 0.009 gcc -I./../liblua -DHAVE_CONFIG_H -DNCAT_DATADIR="\"/usr/local/share/ncat\"" -D_FORTIFY_SOURCE=2 -I. -I.. -I../nsock/include/ -I../nbase -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -g -O2 -Wall -c http.c -o http.o 0.749 0.025 gcc -I./../liblua -DHAVE_CONFIG_H -DNCAT_DATADIR="\"/usr/local/share/ncat\"" -D_FORTIFY_SOURCE=2 -I. -I.. -I../nsock/include/ -I../nbase -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -g -O2 -Wall -c util.c -o util.o 0.773 0.024 gcc -I./../liblua -DHAVE_CONFIG_H -DNCAT_DATADIR="\"/usr/local/share/ncat\"" -D_FORTIFY_SOURCE=2 -I. -I.. -I../nsock/include/ -I../nbase -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -g -O2 -Wall -c sys_wrap.c -o sys_wrap.o 0.788 0.015 gcc -I./../liblua -DHAVE_CONFIG_H -DNCAT_DATADIR="\"/usr/local/share/ncat\"" -D_FORTIFY_SOURCE=2 -I. -I.. -I../nsock/include/ -I../nbase -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -g -O2 -Wall -c http_digest.c -o http_digest.o 0.811 0.023 gcc -I./../liblua -DHAVE_CONFIG_H -DNCAT_DATADIR="\"/usr/local/share/ncat\"" -D_FORTIFY_SOURCE=2 -I. -I.. -I../nsock/include/ -I../nbase -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -g -O2 -Wall -c ncat_lua.c -o ncat_lua.o 0.834 0.022 gcc -I./../liblua -DHAVE_CONFIG_H -DNCAT_DATADIR="\"/usr/local/share/ncat\"" -D_FORTIFY_SOURCE=2 -I. -I.. -I../nsock/include/ -I../nbase -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -g -O2 -Wall -c ncat_lua_exec.c -o ncat_lua_exec.o 0.858 0.024 gcc -I./../liblua -DHAVE_CONFIG_H -DNCAT_DATADIR="\"/usr/local/share/ncat\"" -D_FORTIFY_SOURCE=2 -I. -I.. -I../nsock/include/ -I../nbase -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -g -O2 -Wall -c ncat_lua_filters.c -o ncat_lua_filters.o 0.883 0.026 gcc -I./../liblua -DHAVE_CONFIG_H -DNCAT_DATADIR="\"/usr/local/share/ncat\"" -D_FORTIFY_SOURCE=2 -I. -I.. -I../nsock/include/ -I../nbase -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -g -O2 -Wall -c ncat_lua_connect.c -o ncat_lua_connect.o 0.912 0.029 gcc -o ncat -g -O2 -Wall ncat_main.o ncat_connect.o ncat_core.o ncat_posix.o ncat_listen.o ncat_proxy.o ncat_ssl.o base64.o http.o util.o sys_wrap.o http_digest.o ncat_lua.o ncat_lua_exec.o ncat_lua_filters.o ncat_lua_connect.o ../nsock/src/libnsock.a ../nbase/libnbase.a -lssl -lcrypto -lpcap ./../liblua/liblua.a -lm -ldl -lssl -lcrypto -ldl 1.478 0.566 gcc -I./../liblua -DHAVE_CONFIG_H -DNCAT_DATADIR="\"/usr/local/share/ncat\"" -D_FORTIFY_SOURCE=2 -I. -I.. -I../nsock/include/ -I../nbase -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -g -O2 -Wall -c test/addrset.c -o test/addrset.o 1.499 0.020 gcc -o test/addrset -g -O2 -Wall test/addrset.o ncat_core.o sys_wrap.o util.o ncat_posix.o http.o http_digest.o base64.o ncat_ssl.o ncat_connect.o ncat_lua.o ncat_lua_exec.o ncat_lua_filters.o ncat_lua_connect.o ../nsock/src/libnsock.a ../nbase/libnbase.a -lssl -lcrypto -lpcap ./../liblua/liblua.a -lm -ldl -lssl -lcrypto -ldl 1.970 0.471 gcc -I./../liblua -DHAVE_CONFIG_H -DNCAT_DATADIR="\"/usr/local/share/ncat\"" -D_FORTIFY_SOURCE=2 -I. -I.. -I../nsock/include/ -I../nbase -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -g -O2 -Wall -c test/test-uri.c -o test/test-uri.o 1.987 0.017 gcc -o test/test-uri -g -O2 -Wall test/test-uri.o base64.o http.o ncat_core.o sys_wrap.o util.o ncat_posix.o http_digest.o ncat_ssl.o ncat_connect.o ncat_lua.o ncat_lua_exec.o ncat_lua_filters.o ncat_lua_connect.o ../nsock/src/libnsock.a ../nbase/libnbase.a -lssl -lcrypto -lpcap ./../liblua/liblua.a -lm -ldl -lssl -lcrypto -ldl 2.514 0.527 gcc -I./../liblua -DHAVE_CONFIG_H -DNCAT_DATADIR="\"/usr/local/share/ncat\"" -D_FORTIFY_SOURCE=2 -I. -I.. -I../nsock/include/ -I../nbase -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -g -O2 -Wall -c test/test-cmdline-split.c -o test/test-cmdline-split.o 2.519 0.005 gcc -o test/test-cmdline-split -g -O2 -Wall test/test-cmdline-split.o ncat_posix.o ncat_core.o sys_wrap.o util.o http.o http_digest.o base64.o ncat_ssl.o ncat_connect.o ncat_lua.o ncat_lua_exec.o ncat_lua_filters.o ncat_lua_connect.o ../nsock/src/libnsock.a ../nbase/libnbase.a -lssl -lcrypto -lpcap ./../liblua/liblua.a -lm -ldl -lssl -lcrypto -ldl 2.986 0.467 gcc -I./../liblua -DHAVE_CONFIG_H -DNCAT_DATADIR="\"/usr/local/share/ncat\"" -D_FORTIFY_SOURCE=2 -I. -I.. -I../nsock/include/ -I../nbase -DLUA_USE_POSIX -DLUA_USE_DLOPEN -DHAVE_LUA=1 -I../liblua -g -O2 -Wall -c test/test-wildcard.c -o test/test-wildcard.o 3.011 0.024 gcc -o test/test-wildcard -g -O2 -Wall test/test-wildcard.o ncat_core.o ncat_ssl.o sys_wrap.o util.o ncat_posix.o http.o http_digest.o base64.o ncat_connect.o ncat_lua.o ncat_lua_exec.o ncat_lua_filters.o ncat_lua_connect.o ../nsock/src/libnsock.a ../nbase/libnbase.a -lssl -lcrypto -lpcap ./../liblua/liblua.a -lm -ldl -lssl -lcrypto -ldl The first column is time since starting, the second is time since last command. As you can see, on my box compiling Lua takes half a second, compiling Ncat takes another half and linking Ncat and its tests takes another two seconds.
Install ccache and you will be a happy man. David Fifield
Would it also work for linking? _______________________________________________ Sent through the dev mailing list http://nmap.org/mailman/listinfo/dev Archived at http://seclists.org/nmap-dev/
Current thread:
- ncat's "make all" Jacek Wielemborek (Sep 05)
- Re: ncat's "make all" David Fifield (Sep 06)
- Re: ncat's "make all" Jacek Wielemborek (Sep 07)
- Re: ncat's "make all" Jacek Wielemborek (Sep 07)
- Re: ncat's "make all" Jacek Wielemborek (Sep 07)
- Re: ncat's "make all" David Fifield (Sep 06)