1
0
mirror of https://github.com/nmap/nmap.git synced 2025-12-07 13:11:28 +00:00

Update OS X build info for minimum 10.8 (Mountain Lion)

This commit is contained in:
dmiller
2015-03-10 04:26:24 +00:00
parent 1cd6c40bf9
commit 270d1418fe
4 changed files with 24 additions and 25 deletions

View File

@@ -29,7 +29,7 @@ NPING_STAGING_DIR = Nping
NMAP_UPDATE_BUILD_DIR = nmap-update-build NMAP_UPDATE_BUILD_DIR = nmap-update-build
NMAP_UPDATE_STAGING_DIR = nmap-update NMAP_UPDATE_STAGING_DIR = nmap-update
MACPORTS_PREFIX=$(HOME)/macports-10.5 MACPORTS_PREFIX=$(HOME)/macports-10.8
PREFIX = /usr/local PREFIX = /usr/local
PACKAGEMAKER = /Developer/usr/bin/packagemaker PACKAGEMAKER = /Developer/usr/bin/packagemaker
@@ -49,10 +49,10 @@ UNIVERSAL_CXX = g++
# turn uses the arch value to decide which of its bootstrappers to # turn uses the arch value to decide which of its bootstrappers to
# install. # install.
UNIVERSAL_ARCHFLAGS = -arch i386 UNIVERSAL_ARCHFLAGS = -arch i386
UNIVERSAL_CPPFLAGS = -isysroot /Developer/SDKs/MacOSX10.5.sdk UNIVERSAL_CPPFLAGS = -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk
UNIVERSAL_CFLAGS = $(UNIVERSAL_CPPFLAGS) -mmacosx-version-min=10.5 $(UNIVERSAL_ARCHFLAGS) UNIVERSAL_CFLAGS = $(UNIVERSAL_CPPFLAGS) -mmacosx-version-min=10.8 $(UNIVERSAL_ARCHFLAGS)
UNIVERSAL_CXXFLAGS = $(UNIVERSAL_CFLAGS) UNIVERSAL_CXXFLAGS = $(UNIVERSAL_CFLAGS)
UNIVERSAL_LDFLAGS = -Wl,-syslibroot,/Developer/SDKs/MacOSX10.5.sdk -mmacosx-version-min=10.5 $(UNIVERSAL_ARCHFLAGS) UNIVERSAL_LDFLAGS = -Wl,-syslibroot,/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk -mmacosx-version-min=10.8 $(UNIVERSAL_ARCHFLAGS)
CC = $(UNIVERSAL_CC) CC = $(UNIVERSAL_CC)
CXX = $(UNIVERSAL_CXX) CXX = $(UNIVERSAL_CXX)
@@ -63,7 +63,9 @@ CFLAGS += $(UNIVERSAL_CFLAGS)
CXXFLAGS += $(UNIVERSAL_CXXFLAGS) CXXFLAGS += $(UNIVERSAL_CXXFLAGS)
LDFLAGS += $(UNIVERSAL_LDFLAGS) LDFLAGS += $(UNIVERSAL_LDFLAGS)
PYTHON = /usr/bin/python PYTHON = $(MACPORTS_PREFIX)/bin/python2.7
SVN_STATIC = $(MACPORTS_PREFIX)/lib/libsvn_subr-1.a $(MACPORTS_PREFIX)/lib/libsvn_client-1.a $(MACPORTS_PREFIX)/lib/libapr-1.a
OPENSSL_STATIC = $(MACPORTS_PREFIX)/lib/libssl.a $(MACPORTS_PREFIX)/lib/libcrypto.a $(MACPORTS_PREFIX)/lib/libz.a
$(IMAGE_NAME): $(IMAGE_STAGING_DIR)/$(PKG_NAME) $(IMAGE_NAME): $(IMAGE_STAGING_DIR)/$(PKG_NAME)
rm -f $@ rm -f $@
@@ -77,32 +79,29 @@ $(IMAGE_STAGING_DIR)/$(PKG_NAME): stage-nmap stage-ncat stage-ndiff stage-zenmap
export-%: export-%:
rm -rf $* rm -rf $*
# Using @BASE discards local changes. # Using @BASE discards local changes.
svn export ..@BASE $* svn export .. $*
stage-nmap: export-$(NMAP_BUILD_DIR) stage-nmap: export-$(NMAP_BUILD_DIR)
cd $(NMAP_BUILD_DIR) && ./configure --without-zenmap --without-ncat --without-ndiff --without-nping --without-nmap-update --with-openssl="$(MACPORTS_PREFIX)" $(CONFIGURE_ARGS) cd $(NMAP_BUILD_DIR) && ./configure --without-zenmap --without-ncat --without-ndiff --without-nping --without-nmap-update --with-openssl="$(MACPORTS_PREFIX)" $(CONFIGURE_ARGS)
make -C $(NMAP_BUILD_DIR) OPENSSL_LIBS="$(MACPORTS_PREFIX)/lib/libssl.a $(MACPORTS_PREFIX)/lib/libcrypto.a $(MACPORTS_PREFIX)/lib/libz.a" make -C $(NMAP_BUILD_DIR) OPENSSL_LIBS="$(OPENSSL_STATIC)"
rm -rf $(NMAP_STAGING_DIR) rm -rf $(NMAP_STAGING_DIR)
make -C $(NMAP_BUILD_DIR) install DESTDIR="`pwd`/$(NMAP_STAGING_DIR)" make -C $(NMAP_BUILD_DIR) install DESTDIR="`pwd`/$(NMAP_STAGING_DIR)"
stage-ncat: export-$(NCAT_BUILD_DIR) stage-ncat: export-$(NCAT_BUILD_DIR)
cd $(NCAT_BUILD_DIR) && ./configure --without-zenmap --with-ncat --without-ndiff --without-nping --without-nmap-update --with-openssl="$(MACPORTS_PREFIX)" $(CONFIGURE_ARGS) cd $(NCAT_BUILD_DIR) && ./configure --without-zenmap --with-ncat --without-ndiff --without-nping --without-nmap-update --with-openssl="$(MACPORTS_PREFIX)" $(CONFIGURE_ARGS)
make -C $(NCAT_BUILD_DIR) OPENSSL_LIBS="$(MACPORTS_PREFIX)/lib/libssl.a $(MACPORTS_PREFIX)/lib/libcrypto.a $(MACPORTS_PREFIX)/lib/libz.a" make -d -C $(NCAT_BUILD_DIR) ncat_build OPENSSL_LIBS="$(OPENSSL_STATIC)"
rm -rf $(NCAT_STAGING_DIR) rm -rf $(NCAT_STAGING_DIR)
make -C $(NCAT_BUILD_DIR) install-ncat DESTDIR="`pwd`/$(NCAT_STAGING_DIR)" make -d -C $(NCAT_BUILD_DIR) install-ncat DESTDIR="`pwd`/$(NCAT_STAGING_DIR)"
stage-nping: export-$(NPING_BUILD_DIR) stage-nping: export-$(NPING_BUILD_DIR)
# Link against the local MacPorts openssl because the 10.4u SDK doesn't
# have EVP_sha256, used by Nping. We let configure find the libraries
# dynamically, then link with the static libraries with "make".
cd $(NPING_BUILD_DIR) && ./configure --without-zenmap --without-ncat --without-ndiff --with-nping --without-nmap-update --with-openssl="$(MACPORTS_PREFIX)" $(CONFIGURE_ARGS) cd $(NPING_BUILD_DIR) && ./configure --without-zenmap --without-ncat --without-ndiff --with-nping --without-nmap-update --with-openssl="$(MACPORTS_PREFIX)" $(CONFIGURE_ARGS)
make -C $(NPING_BUILD_DIR) OPENSSL_LIBS="$(MACPORTS_PREFIX)/lib/libssl.a $(MACPORTS_PREFIX)/lib/libcrypto.a $(MACPORTS_PREFIX)/lib/libz.a" make -C $(NPING_BUILD_DIR) build-nping OPENSSL_LIBS="$(OPENSSL_STATIC)"
rm -rf $(NPING_STAGING_DIR) rm -rf $(NPING_STAGING_DIR)
make -C $(NPING_BUILD_DIR) install-nping DESTDIR="`pwd`/$(NPING_STAGING_DIR)" make -C $(NPING_BUILD_DIR) install-nping DESTDIR="`pwd`/$(NPING_STAGING_DIR)"
stage-nmap-update: export-$(NMAP_UPDATE_BUILD_DIR) stage-nmap-update: export-$(NMAP_UPDATE_BUILD_DIR)
cd $(NMAP_UPDATE_BUILD_DIR) && ./configure --without-zenmap --without-ncat --without-ndiff --without-nping --with-nmap-update --with-apr=$(MACPORTS_PREFIX) --with-subversion=$(MACPORTS_PREFIX) --with-openssl="$(MACPORTS_PREFIX)" $(CONFIGURE_ARGS) cd $(NMAP_UPDATE_BUILD_DIR) && ./configure --without-zenmap --without-ncat --without-ndiff --without-nping --with-nmap-update --with-apr=$(MACPORTS_PREFIX) --with-subversion=$(MACPORTS_PREFIX) --with-openssl="$(MACPORTS_PREFIX)" $(CONFIGURE_ARGS)
make -C $(NMAP_UPDATE_BUILD_DIR) OPENSSL_LIBS="$(MACPORTS_PREFIX)/lib/libssl.a $(MACPORTS_PREFIX)/lib/libcrypto.a $(MACPORTS_PREFIX)/lib/libz.a" make -C $(NMAP_UPDATE_BUILD_DIR) build-nmap-update OPENSSL_LIBS="$(OPENSSL_STATIC)"
rm -rf $(NMAP_UPDATE_STAGING_DIR) rm -rf $(NMAP_UPDATE_STAGING_DIR)
make -C $(NMAP_UPDATE_BUILD_DIR) install-nmap-update DESTDIR="`pwd`/$(NMAP_UPDATE_STAGING_DIR)" make -C $(NMAP_UPDATE_BUILD_DIR) install-nmap-update DESTDIR="`pwd`/$(NMAP_UPDATE_STAGING_DIR)"

View File

@@ -1,6 +1,6 @@
Nmap is a free and open source utility for network exploration and security auditing. Zenmap is a multi-platform graphical frontend and results viewer for Nmap. Ncat is a general-purpose network sending and receiving utility, a reimplementation of Netcat. Ndiff is a an Nmap scan comparison utility. Nping is a tool for packet generation and sending. Nmap is a free and open source utility for network exploration and security auditing. Zenmap is a multi-platform graphical frontend and results viewer for Nmap. Ncat is a general-purpose network sending and receiving utility, a reimplementation of Netcat. Ndiff is a an Nmap scan comparison utility. Nping is a tool for packet generation and sending.
This package contains Nmap, Zenmap, Ncat, Ndiff, and Nping. It is intended to work on Intel Macs running Mac OS X 10.6 or later. This package contains Nmap, Zenmap, Ncat, Ndiff, and Nping. It is intended to work on Intel Macs running Mac OS X 10.8 or later.
Installation of all packages is optional. Unselect Zenmap to get just the command-line tool. Unselect Nmap if you prefer to use a copy of Nmap that is already installed. Zenmap will not work without Nmap. Installation of all packages is optional. Unselect Zenmap to get just the command-line tool. Unselect Nmap if you prefer to use a copy of Nmap that is already installed. Zenmap will not work without Nmap.

View File

@@ -40,14 +40,14 @@ The following instructions show how to make a 10.5-compatible
environment suitable for building Zenmap packages. It will be a separate environment suitable for building Zenmap packages. It will be a separate
installation in $HOME/macports-10.5 that won't interfere with your installation in $HOME/macports-10.5 that won't interfere with your
normal MacPorts installation in /opt/local. These instructions were done normal MacPorts installation in /opt/local. These instructions were done
with MacPorts 2.0.3 on Mac OS X 10.6.8. with MacPorts 2.3.3 on Mac OS X 10.9.5.
1. Install MacPorts. 1. Install MacPorts.
export PATH=/usr/bin:/bin:/usr/sbin:/sbin export PATH=/usr/bin:/bin:/usr/sbin:/sbin
export PREFIX=$HOME/macports-10.5 export PREFIX=$HOME/macports-10.8
tar xzvf MacPorts-2.1.1.tar.gz tar xzvf MacPorts-2.3.3.tar.gz
cd MacPorts-2.1.1 cd MacPorts-2.3.3
./configure --with-no-root-privileges --prefix=$PREFIX --with-tclpackage=$PREFIX/Library/Tcl --with-applications-dir=$PREFIX/Applications ./configure --with-no-root-privileges --prefix=$PREFIX --with-applications-dir=$PREFIX/Applications
make make
make install make install
2. Update the ports tree. 2. Update the ports tree.
@@ -56,7 +56,7 @@ with MacPorts 2.0.3 on Mac OS X 10.6.8.
Uncomment the line Uncomment the line
build_arch i386 build_arch i386
Add this line at the bottom: Add this line at the bottom:
macosx_deployment_target 10.5 macosx_deployment_target 10.8
4. Make a local patched ports tree. 4. Make a local patched ports tree.
cd $PREFIX cd $PREFIX
mkdir ports mkdir ports
@@ -71,14 +71,14 @@ with MacPorts 2.0.3 on Mac OS X 10.6.8.
$PREFIX/bin/portindex $PREFIX/bin/portindex
6. Edit the file $PREFIX/etc/macports/sources.conf. 6. Edit the file $PREFIX/etc/macports/sources.conf.
Add a line Add a line
file:///Users/user/macports-10.5/ports file:///Users/user/macports-10.8/ports
above the rsync line. (Replace "user" with your user name.) above the rsync line. (Replace "user" with your user name.)
7. Install the dependencies of Zenmap. 7. Install the dependencies of Zenmap.
$PREFIX/bin/port install py26-pygtk py26-py2app apr apr-util $PREFIX/bin/port install py26-pygtk py26-py2app apr apr-util
Here are instructions for updating the patch to keep up with MacPorts Here are instructions for updating the patch to keep up with MacPorts
changes. First, sync the original ports tree. changes. First, sync the original ports tree.
$PREFIX/bin/port sync $PREFIX/bin/port selfupdate -v
Restore a pristine partial ports tree: Restore a pristine partial ports tree:
cd $PREFIX cd $PREFIX
rsync -rv --existing --delete --exclude=PortIndex ports.orig/ ports/ rsync -rv --existing --delete --exclude=PortIndex ports.orig/ ports/

View File

@@ -25,8 +25,8 @@
# environment. You need to have installed the packages py26-gtk and # environment. You need to have installed the packages py26-gtk and
# py26-py2app. # py26-py2app.
LIBPREFIX=$HOME/macports-10.5 LIBPREFIX=$HOME/macports-10.8
PYTHON=$LIBPREFIX/bin/python2.6 PYTHON=$LIBPREFIX/bin/python2.7
PKG_CONFIG=$LIBPREFIX/bin/pkg-config PKG_CONFIG=$LIBPREFIX/bin/pkg-config
APP_NAME=Zenmap APP_NAME=Zenmap
BASE=dist/$APP_NAME.app/Contents BASE=dist/$APP_NAME.app/Contents