summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorlaw <devnull@localhost>1998-04-08 01:39:25 +0000
committerlaw <devnull@localhost>1998-04-08 01:39:25 +0000
commit8810e5373dc3960e83b52bfc42f6e9c5da9d1df0 (patch)
tree40eb892b1ea13b4b3333ec8d8f10c4987733be06
parent7b8a573350336ea42b51d98e364a6221eeb8dee6 (diff)
downloadnspr-hg-8810e5373dc3960e83b52bfc42f6e9c5da9d1df0.tar.gz
Warpzilla patches
-rw-r--r--config/OS2.mk35
-rw-r--r--config/arch.mk15
-rw-r--r--config/rules.mk8
3 files changed, 56 insertions, 2 deletions
diff --git a/config/OS2.mk b/config/OS2.mk
index 405da7e0..e9c75c8c 100644
--- a/config/OS2.mk
+++ b/config/OS2.mk
@@ -26,6 +26,12 @@
# the macro OS_CFLAGS is set to OS_EXE_CFLAGS inside of the
# makefile for the pr/tests directory. ... Hack.
+# Specify toolset. Default to EMX.
+ifeq ($(MOZ_OS2_TOOLS),VACPP)
+XP_OS2_VACPP = 1
+else
+XP_OS2_EMX = 1
+endif
#
# On OS/2 we proudly support gbash...
@@ -40,7 +46,7 @@ RANLIB = echo
BSDECHO = echo
NSINSTALL = nsinstall
INSTALL = $(NSINSTALL)
-MAKE_OBJDIR = mkdir $(OBJDIR)
+MAKE_OBJDIR = -mkdir $(OBJDIR)
IMPLIB = flipper implib -nologo -noignorecase
FILTER = flipper cppfilt -q
RC = rc.exe
@@ -84,3 +90,30 @@ OBJDIR_NAME = $(OS_CONFIG)$(CPU_ARCH)$(OBJDIR_TAG).OBJ
endif
OS_DLLFLAGS = -nologo -DLL -FREE -NOE
+
+ifdef XP_OS2_VACPP
+
+DEFINES += -DXP_OS2_VACPP
+
+else
+
+CC = gcc
+CCC = gcc
+LINK = gcc
+AR = gcc
+RC = rc.exe
+
+DEFINES += -DXP_OS2_EMX
+
+ifdef BUILD_OPT
+OPTIMIZER = -O3
+else
+OPTIMIZER = -g
+endif
+
+OS_CFLAGS = -I. -Wall -Zmt $(DEFINES)
+OS_EXE_CFLAGS = -I. -Wall -Zmt $(DEFINES)
+
+endif
+
+
diff --git a/config/arch.mk b/config/arch.mk
index 92ec312d..afe0af5b 100644
--- a/config/arch.mk
+++ b/config/arch.mk
@@ -117,6 +117,15 @@ ifeq ($(OS_ARCH),Linux)
OS_RELEASE := $(basename $(OS_RELEASE))
endif
+#
+# Handle uname variants for OS/2.
+#
+
+ifeq ($(OS_ARCH),OS_2)
+ OS_ARCH := OS2
+ OS_RELEASE := 4.0
+endif
+
#######################################################################
# Master "Core Components" macros for getting the OS target #
#######################################################################
@@ -161,7 +170,11 @@ endif
#
ifeq ($(OS_ARCH), WINNT)
- CPU_ARCH := $(shell uname -p)
+ ifneq ($(subst /,_,$(shell uname -s)),OS_2)
+ CPU_ARCH := $(shell uname -p)
+ else
+ CPU_ARCH := $(shell uname -m)
+ endif
ifeq ($(CPU_ARCH),I386)
CPU_ARCH = x386
endif
diff --git a/config/rules.mk b/config/rules.mk
index 0ce9d0da..b566d2f0 100644
--- a/config/rules.mk
+++ b/config/rules.mk
@@ -316,10 +316,14 @@ endif
$(OBJDIR)/%.o: %.cpp
@$(MAKE_OBJDIR)
ifeq ($(OS_ARCH), WINNT)
+ifndef XP_OS2_EMX
$(CCC) -Fo$@ -c $(CFLAGS) $<
else
$(CCC) -o $@ -c $(CFLAGS) $<
endif
+else
+ $(CCC) -o $@ -c $(CFLAGS) $<
+endif
WCCFLAGS1 = $(subst /,\\,$(CFLAGS))
WCCFLAGS2 = $(subst -I,-i=,$(WCCFLAGS1))
@@ -333,7 +337,11 @@ ifeq ($(OS_TARGET), WIN16)
$(CC) -zq -fo$(OBJDIR)\\$*.o @w16wccf $*.c
rm w16wccf
else
+ifndef XP_OS2_EMX
$(CC) -Fo$@ -c $(CFLAGS) $*.c
+else
+ $(CC) -o $@ -c $(CFLAGS) $*.c
+endif
endif
else
$(CC) -o $@ -c $(CFLAGS) $*.c