summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile10
-rw-r--r--makefiledir/Makefile.config_writer1
-rw-r--r--makefiledir/Makefile.libdetection7
-rw-r--r--stdafx.h4
4 files changed, 21 insertions, 1 deletions
diff --git a/Makefile b/Makefile
index 55632f699..73a266d90 100644
--- a/Makefile
+++ b/Makefile
@@ -45,6 +45,7 @@
# OSX: building on Mac OS X
# MORPHOS: building on MorphOS
# BEOS: building on BeOS
+# SUNOS: building on SunOS (Solaris)
#
# Summary of library choice defines
# WITH_ZLIB: savegames using zlib
@@ -242,7 +243,7 @@ REV_NUMBER := $(shell if test -d .svn; then svnversion . | tr -dc 0-9; fi)
ifdef RELEASE
REV:=$(RELEASE)
else
-REV := $(shell if test -d .svn; then echo -n r; svnversion .; fi)
+REV := $(shell if test -d .svn; then svnversion . | awk '{ print "r"$0 }'; fi)
tmp_test:=$(shell echo "$(REV)" | grep "M" )
ifdef tmp_test
REV_NUMBER:=1
@@ -341,6 +342,13 @@ ifdef WITH_NETWORK
endif
endif
+ifdef SUNOS
+CDEFS += -DSUNOS
+ifdef WITH_NETWORK
+LDFLAGS += -lnsl -lsocket
+endif
+endif
+
# SDL config
ifdef WITH_SDL
CDEFS += -DWITH_SDL
diff --git a/makefiledir/Makefile.config_writer b/makefiledir/Makefile.config_writer
index cf02dbfa8..116838c1a 100644
--- a/makefiledir/Makefile.config_writer
+++ b/makefiledir/Makefile.config_writer
@@ -77,6 +77,7 @@ $(MAKE_CONFIG):
$(call CONFIG_LINE,FREEBSD:=$(FREEBSD))
$(call CONFIG_LINE,MORPHOS:=$(MORPHOS))
$(call CONFIG_LINE,BEOS:=$(BEOS))
+ $(call CONFIG_LINE,SUNOS:=$(SUNOS))
$(call CONFIG_LINE,CYGWIN:=$(CYGWIN))
$(call CONFIG_LINE,MINGW:=$(MINGW))
$(call CONFIG_LINE,)
diff --git a/makefiledir/Makefile.libdetection b/makefiledir/Makefile.libdetection
index 084d13707..31478d3bb 100644
--- a/makefiledir/Makefile.libdetection
+++ b/makefiledir/Makefile.libdetection
@@ -39,6 +39,13 @@ BEOS_NET_SERVER:=1
endif
endif
+# Automatically recognize if building on SunOS/Solaris
+ifeq ($(shell uname), SunOS)
+SUNOS:=1
+# SunOS uses UNIX setup too
+UNIX:=1
+endif
+
# FreeBSD uses sdl11 instead of sdl
ifdef FREEBSD
SDL-CONFIG:=sdl11-config
diff --git a/stdafx.h b/stdafx.h
index aa5631c07..6785f8552 100644
--- a/stdafx.h
+++ b/stdafx.h
@@ -28,6 +28,10 @@
#include <SupportDefs.h>
#endif
+#ifdef SUNOS
+#include <alloca.h>
+#endif
+
#define BSWAP32(x) ((((x) >> 24) & 0xFF) | (((x) >> 8) & 0xFF00) | (((x) << 8) & 0xFF0000) | (((x) << 24) & 0xFF000000))
#define BSWAP16(x) ((x) >> 8 | (x) << 8)