(svn r12930) -Add: build support for NetBSD and HP-UX. Patch by ahoka.
authorrubidium
Wed, 30 Apr 2008 07:39:46 +0000
changeset 10388 e21a5b763f76
parent 10387 b452b4949cca
child 10390 8978442f5705
(svn r12930) -Add: build support for NetBSD and HP-UX. Patch by ahoka.
config.lib
src/network/core/os_abstraction.h
src/stdafx.h
--- a/config.lib	Tue Apr 29 23:11:55 2008 +0000
+++ b/config.lib	Wed Apr 30 07:39:46 2008 +0000
@@ -392,9 +392,9 @@
 		exit 1
 	fi
 	# OS only allows DETECT, UNIX, OSX, FREEBSD, OPENBSD, MORPHOS, BEOS, SUNOS, CYGWIN, MINGW, OS2, WINCE, and PSP
-	if [ -z "`echo $os | egrep '^(DETECT|UNIX|OSX|FREEBSD|OPENBSD|MORPHOS|BEOS|SUNOS|CYGWIN|MINGW|OS2|WINCE|PSP)$'`" ]; then
+	if [ -z "`echo $os | egrep '^(DETECT|UNIX|OSX|FREEBSD|OPENBSD|NETBSD|HPUX|MORPHOS|BEOS|SUNOS|CYGWIN|MINGW|OS2|WINCE|PSP)$'`" ]; then
 		echo "configure: error: invalid option --os=$os"
-		echo " Available options are: --os=[DETECT|UNIX|OSX|FREEBSD|OPENBSD|MORPHOS|BEOS|SUNOS|CYGWIN|MINGW|OS2|WINCE|PSP]"
+		echo " Available options are: --os=[DETECT|UNIX|OSX|FREEBSD|OPENBSD|NETBSD|HPUX|MORPHOS|BEOS|SUNOS|CYGWIN|MINGW|OS2|WINCE|PSP]"
 		exit 1
 	fi
 	# cpu_type can be either 32 or 64
@@ -1016,7 +1016,7 @@
 	fi
 
 	# Most targets act like UNIX, just with some additions
-	if [ "$os" = "BEOS" ] || [ "$os" = "OSX" ] || [ "$os" = "MORPHOS" ] || [ "$os" = "FREEBSD" ] || [ "$os" = "OPENBSD" ] || [ "$os" = "SUNOS" ] || [ "$os" = "OS2" ]; then
+	if [ "$os" = "BEOS" ] || [ "$os" = "OSX" ] || [ "$os" = "MORPHOS" ] || [ "$os" = "FREEBSD" ] || [ "$os" = "OPENBSD" ] || [ "$os" = "NETBSD" ] || [ "$os" = "HPUX" ] || [ "$os" = "SUNOS" ] || [ "$os" = "OS2" ]; then
 		CFLAGS="$CFLAGS -DUNIX"
 	fi
 	# And others like Windows
@@ -1524,7 +1524,7 @@
 
 detect_os() {
 	if [ "$os" = "DETECT" ]; then
-		# Detect UNIX, OSX, FREEBSD, OPENBSD, MORPHOS, BEOS, SUNOS, CYGWIN, MINGW, OS2, WINCE, and PSP
+		# Detect UNIX, OSX, FREEBSD, OPENBSD, NETBSD, HPUX, MORPHOS, BEOS, SUNOS, CYGWIN, MINGW, OS2, WINCE, and PSP
 
 		# Try first via dumpmachine, then via uname
 		os=`echo "$host" | tr '[A-Z]' '[a-z]' | $awk '
@@ -1532,6 +1532,8 @@
 					/darwin/       { print "OSX";     exit}
 					/freebsd/      { print "FREEBSD"; exit}
 					/openbsd/      { print "OPENBSD"; exit}
+					/netbsd/       { print "NETBSD";  exit}
+					/hp-ux/        { print "HPUX";    exit}
 					/morphos/      { print "MORPHOS"; exit}
 					/beos/         { print "BEOS";    exit}
 					/sunos/        { print "SUNOS";   exit}
@@ -1549,6 +1551,8 @@
 					/darwin/       { print "OSX";     exit}
 					/freebsd/      { print "FREEBSD"; exit}
 					/openbsd/      { print "OPENBSD"; exit}
+					/netbsd/       { print "NETBSD";  exit}
+					/hp-ux/        { print "HPUX";    exit}
 					/morphos/      { print "MORPHOS"; exit}
 					/beos/         { print "BEOS";    exit}
 					/sunos/        { print "SUNOS";   exit}
@@ -1561,7 +1565,7 @@
 		if [ -z "$os" ]; then
 			log 1 "detecting OS... none detected"
 			log 1 "I couldn't detect your OS. Please use --os=OS to force one"
-			log 1 "Allowed values are: UNIX, OSX, FREEBSD, OPENBSD, MORPHOS, BEOS, SUNOS, CYGWIN, MINGW, OS2, WINCE, and PSP"
+			log 1 "Allowed values are: UNIX, OSX, FREEBSD, OPENBSD, NETBSD, MORPHOS, HPUX, BEOS, SUNOS, CYGWIN, MINGW, OS2, WINCE, and PSP"
 			exit 1
 		fi
 
@@ -2309,8 +2313,9 @@
 	echo "  --awk=AWK                      the awk to use in configure [awk]"
 	echo "  --lipo=LIPO                    the lipo to use (OSX ONLY) [HOST-lipo]"
 	echo "  --os=OS                        the OS we are compiling for [DETECT]"
-	echo "                                 DETECT/UNIX/OSX/FREEBSD/OPENBSD/MORPHOS/"
-	echo "                                 BEOS/SUNOS/CYGWIN/MINGW/OS2/WINCE/PSP"
+	echo "                                 DETECT/UNIX/OSX/FREEBSD/OPENBSD/NETBSD/"
+	echo "                                 MORPHOS/HPUX/BEOS/SUNOS/CYGWIN/MINGW/OS2/"
+	echo "                                 WINCE/PSP"
 	echo "  --endian=ENDIAN                set the endian of the HOST (AUTO/LE/BE)"
 	echo "  --revision=rXXXX               overwrite the revision detection."
 	echo "                                 Use with care!"
--- a/src/network/core/os_abstraction.h	Tue Apr 29 23:11:55 2008 +0000
+++ b/src/network/core/os_abstraction.h	Wed Apr 30 07:39:46 2008 +0000
@@ -62,7 +62,7 @@
 #		include <net/if.h>
 /* According to glibc/NEWS, <ifaddrs.h> appeared in glibc-2.3. */
 #		if !defined(__sgi__) && !defined(SUNOS) && !defined(__MORPHOS__) && !defined(__BEOS__) && !defined(__INNOTEK_LIBC__) \
-		   && !(defined(__GLIBC__) && (__GLIBC__ <= 2) && (__GLIBC_MINOR__ <= 2)) && !defined(__dietlibc__)
+		   && !(defined(__GLIBC__) && (__GLIBC__ <= 2) && (__GLIBC_MINOR__ <= 2)) && !defined(__dietlibc__) && !defined(HPUX)
 /* If for any reason ifaddrs.h does not exist on your system, comment out
  *   the following two lines and an alternative way will be used to fetch
  *   the list of IPs from the system. */
--- a/src/stdafx.h	Tue Apr 29 23:11:55 2008 +0000
+++ b/src/stdafx.h	Wed Apr 30 07:39:46 2008 +0000
@@ -76,7 +76,7 @@
 	#include <SupportDefs.h>
 #endif
 
-#if defined(SUNOS)
+#if defined(SUNOS) || defined(HPUX)
 	#include <alloca.h>
 #endif