mirror of
https://github.com/nmap/nmap.git
synced 2025-12-31 20:09:02 +00:00
Visual C++ 2008 runtime components if they aren't already installed on a system. These are some reasonably small DLLs that are generally necessary for applications compiled with Visual C++ (with dynamic linking). Many or most systems already have these installed from other software packages. The lack of these components led to the error message "The Application failed to intialize properly (0xc0150002)." with Nmap 4.65. A related change is that Nmap on Windows is now compiled with /MD rather than /MT so that it consistently uses these runtime libraries. The patch was created by Rob Nicholls.
44 lines
2.5 KiB
Makefile
44 lines
2.5 KiB
Makefile
MAKENSIS="/c/apps/NSIS/makensis.exe"
|
|
VCEXPRESS="/c/Program Files/Microsoft Visual Studio 9.0/Common7/IDE/VCExpress.exe"
|
|
export NMAP_VERSION := $(shell grep '^\#[ \t]*define[ \t]\+NMAP_VERSION' ../nmap.h | sed -e 's/.*"\(.*\)".*/\1/' -e 'q')
|
|
export NMAP_NUM_VERSION := $(shell grep '^\#[ \t]*define[ \t]\+NMAP_NUM_VERSION' ../nmap.h | sed -e 's/.*"\(.*\)".*/\1/' -e 'q')
|
|
COMMA_VERSION=$(shell echo $(NMAP_NUM_VERSION) | tr '.' ',')
|
|
LOGLOC=c:nmapbuild.log
|
|
NSE_FILES = scripts/script.db scripts/*.nse
|
|
|
|
winbuild:
|
|
# VCExpress.exe is devenv.com with the commercial Visual Studio suite instead of VC++ Express
|
|
|
|
@echo "Setting version: $(NMAP_VERSION) ($(NMAP_NUM_VERSION))"
|
|
@cat ./nmap.rc | sed 's/VALUE "FileVersion", .*"/VALUE "FileVersion", "$(NMAP_VERSION)\\0"/' > ./nmap.rc.tmp
|
|
@cat ./nmap.rc.tmp | sed 's/FILEVERSION .*,.*,.*,.*/FILEVERSION $(COMMA_VERSION)/' > ./nmap.rc
|
|
@cat ./nsis/Nmap.nsi | sed 's/VIProductVersion ".*"/VIProductVersion "$(NMAP_NUM_VERSION)"/' > ./nmap.nsi.tmp
|
|
@cat ./nmap.nsi.tmp | sed 's/!define VERSION ".*"/!define VERSION "$(NMAP_VERSION)"/' > ./nsis/Nmap.nsi
|
|
@rm ./nmap.nsi.tmp ./nmap.rc.tmp
|
|
@sed -f ./license-sed/lic_sedexp_1 ../COPYING | sed -f ./license-sed/lic_sedexp_2 | sed -f ./license-sed/lic_sedexp_3 | sed -f ./license-sed/lic_sedexp_4 > LICENSE
|
|
|
|
$(VCEXPRESS) nmap.sln /build release /log $(LOGLOC)
|
|
$(MAKENSIS) winpcap/winpcap-nmap.nsi
|
|
rm -rf nmap-$(NMAP_VERSION)
|
|
mkdir nmap-$(NMAP_VERSION)
|
|
cd Release && cp -r ../../CHANGELOG ../../COPYING nmap-mac-prefixes nmap-os-db nmap-protocols nmap-rpc nmap-service-probes nmap-services nmap.exe nmap.xsl ../nmap_performance.reg ../../README-WIN32 ../nmap-$(NMAP_VERSION)/
|
|
cp -f OpenSSL/bin/*.dll ./nmap-$(NMAP_VERSION)/
|
|
mkdir nmap-$(NMAP_VERSION)/scripts
|
|
cd Release && cp -f $(NSE_FILES) ../nmap-$(NMAP_VERSION)/scripts/
|
|
mkdir nmap-$(NMAP_VERSION)/nselib
|
|
cp -a Release/nselib nmap-$(NMAP_VERSION)
|
|
cp -a Release/nselib-bin nmap-$(NMAP_VERSION)
|
|
cp winpcap/winpcap-nmap-*.exe nmap-$(NMAP_VERSION)
|
|
cp vcredist_x86.exe nmap-$(NMAP_VERSION)
|
|
zip -r nmap-$(NMAP_VERSION)-win32.zip nmap-$(NMAP_VERSION)
|
|
mkdir nmap-$(NMAP_VERSION)/zenmap
|
|
cd ../zenmap && install_scripts/windows/copy_and_compile.bat
|
|
cp -R ../zenmap/dist/* ../zenmap/COPYING* ../zenmap/README nmap-$(NMAP_VERSION)/zenmap
|
|
cp nsis/AddToPath.nsh nsis/Nmap.nsi nsis/shortcuts.ini nsis/final.ini nmap-$(NMAP_VERSION)
|
|
$(MAKENSIS) nmap-$(NMAP_VERSION)/Nmap.nsi
|
|
mv nmap-$(NMAP_VERSION)/NmapInstaller.exe nmap-$(NMAP_VERSION)-setup.exe
|
|
|
|
clean:
|
|
$(VCEXPRESS) nmap.sln /clean
|
|
rm -rf Debug Release nmapbuild.log
|