update to makedefs.new makerules.new

This commit is contained in:
Don BURNS
2002-03-27 00:55:52 +00:00
parent 84d2d01163
commit 219f225b9f
2 changed files with 83 additions and 64 deletions

View File

@@ -1,68 +1,27 @@
SHELL = /bin/sh
OS := $(shell uname)
# TOPDIR needs to be redefined for every Makefile
TOPDIR ?= ../
THISDIR = .
MAKEDEPEND = Makedepend
SHELL = /bin/sh
OSTYPE := $(shell uname)
OS := $(shell uname)
INC = -I$(TOPDIR)/include
DEF =
INC = -I$(TOPDIR)/include
DEF =
CXXFLAGS = $(ARCHARGS) $(DOF) $(DEF) $(INC)
LDFLAGS = $(ARCHARGS) $(DOF) $(LINKARGS) -L$(TOPDIR)/lib
OBJS = $(C++FILES:.cpp=.o) \
$(CXXFILES:.cpp=.o) \
$(CFILES:.c=.o) \
#### SUN OS Specific definitions
ifeq ($(OS),SunOS)
C++ = CC
DEPFLAGS = -xM1
INC +=
DEF += -features=extensions
OPTF = -xO2
DBGF = -g
SHARED = -G
ARCHARGS =
LINKERARGS =
DYNAMICLIBRARYLIB = -ldl
OSG_LIBS = -losgGLUT -losgDB -losgUtil -losg
GLUT_LIB = -lglut
GL_LIBS = -lGLU -lGL
X_LIBS = -lXext -lXmu -lXi -lX11
SOCKET_LIBS = -lsocket -lnsl
OTHER_LIBS = -lCstd
endif
#### IRIX Specific definitions
ifeq ($(OS),IRIX)
C++ = CC
CXXFLAGS = $(DOF) $(INC) -LANG:std -OPT:Olimit=0 -DEBUG:wof=1682 -DEBUG:woff=3303
LDFLAGS = $(DOF) -L$(TOPDIR)/lib -LANG:std
DEPFLAGS = -MDupdate $(MAKEFILE)
endif
#### Linux specific definitions
ifeq ($(OS),Linux)
C++ = g++
CXXFLAGS = $(DOF) -W -Wall $(INC)
LDFLAGS = $(DOF) -W -Wall -L/usr/X11R6/lib -L$(TOPDIR)/lib
DEPFLAGS = -M
endif
OBJS = $(C++FILES:.cpp=.o) $(CXXFILES:.cpp=.o) $(CFILES:.c=.o) $(YACCFILES:.y=.o) $(LEXFILES:.l=.o)
DOF = $(OPTF)
CXXFLAGS = $(DOF) $(DEF) $(INC)
INC +=
DEBUGDIR = $(OS).Debug
OPTDIR = $(OS).Opt
BININST = bin
LIBINST = lib
PLUGININST = lib/osgPlugins
LIBS =
LDFLAGS = $(DOF) -L$(TOPDIR)/lib
ALL_TARGETS = \
opt\
debug\
@@ -74,6 +33,61 @@ ALL_TARGETS = \
docs\
depend\
#### SUN OS Specific definitions
ifeq ($(OS),SunOS)
C++ = CC
DEPARG = -xM1
INC +=
DEF += -features=extensions
OPTF = -xO2
DBGF = -g
SHARED = -G
ARCHARGS =
LINKARGS =
DYNAMICLIBRARYLIB = -ldl
OSG_LIBS = -losgGLUT -losgDB -losgUtil -losg
GLUT_LIB = -lglut
GL_LIBS = -lGLU -lGL
X_LIBS = -lXext -lXmu -lXi -lX11
SOCKET_LIBS = -lsocket -lnsl
OTHER_LIBS = -lCstd
SO_EXT = so
PLUGIN_EXT = so
endif
#### IRIX Specific definitions
ifeq ($(OS),IRIX)
C++ = CC
DEPFLAGS = -M
INC +=
DEF += -LANG:std -OPT:Olimit=0 \
-DEBUG:wof=1682 -DEBUG:woff=3303\
-MDupdate $(MAKEDEPEND)
OPTF = -O2
DBGF = -g
SHARED = -shared
ARCHARGS =
LINKARGS = -LANG:std -OPT:Olimit=0
DYNAMICLIBRARYLIB = -ldl
OSG_LIBS = -losgGLUT -losgDB -losgUtil -losg
GLUT_LIB = -lglut
GL_LIBS = -lGLU -lGL
X_LIBS = -lXext -lXi -lXmu -lX11
SOCKET_LIBS =
OTHER_LIBS =
SO_EXT = so
PLUGIN_EXT = so
endif
#### Linux specific definitions
ifeq ($(OS),Linux)
endif
VPATH=..

View File

@@ -70,12 +70,12 @@ $(PLUGIN:=.dbg) :
@$(MAKE) LNSRC=$(DEBUGDIR)/$(PLUGIN) LNDEST=$(PLUGININST)/$(PLUGIN) __link
$(EXEC:=.opt) :
@[ -d $(OPTDIR) ] || mkdir $(OPTDIR)
@cd $(OPTDIR); \
[ -d $(OPTDIR) ] || mkdir $(OPTDIR)
cd $(OPTDIR); \
$(MAKE) -f ../Makefile DOF=$(OPTF) TOPDIR=../${TOPDIR} \
THISDIR=../$(THISDIR)\
MAKEDEPEND=../$(MAKEDEPEND) $(EXEC)
@$(MAKE) LNSRC=$(OPTDIR)/$(EXEC) LNDEST=$(BININST)/$(EXEC) __link
$(MAKE) LNSRC=$(OPTDIR)/$(EXEC) LNDEST=$(BININST)/$(EXEC) __link
$(LIB:=.opt) :
@@ -101,21 +101,26 @@ $(PLUGIN:=.opt) :
# Handle Make dependencies in the next target
# This improves performance drastically, by building Makedepend only for
# files that have changed.
#
# Note that with IRIX compilers the -MDupdate $(MAKEFILE) does the same
# so there is no need to run the dependency code
#
.SUFFIXES: .cpp .o
.cpp.o:
ifneq ($(OS),IRIX)
$(C++) $(INC) $(DEPFLAGS) $< > .temp.dep
if [ -f $(MAKEDEPEND) ] ; \
then \
grep -v $< $(MAKEDEPEND) > .temp.dep1;\
else \
touch .temp.dep1; \
fi
cat .temp.dep1 .temp.dep > $(MAKEDEPEND)
rm -f .temp.dep1 .temp.dep
endif
$(C++) $(CXXFLAGS) -c $<
# @$(C++) $(INC) $(DEPFLAGS) $? > .temp.dep
# @if [ -f $(MAKEDEPEND) ] ; \
# then \
# grep -v $? $(MAKEDEPEND) > .temp.dep1;\
# else \
# touch .temp.dep1; \
# fi
# @cat .temp.dep1 .temp.dep > $(MAKEDEPEND)
# @rm -f .temp.dep1 .temp.dep
depend :
$(C++) $(INC) $(DEPFLAGS) $(CXXFILES) > $(MAKEDEPEND)
@@ -165,7 +170,7 @@ __link :
@[ -n "$(LNDEST)" ] && echo > /dev/null
@if diff -s $(TOPDIR)/$(LNDEST) $(LNSRC) >/dev/null 2>&1;\
then\
echo " =====> $(LNSRC) and $(TOPDIR)/$(LNDEST) are already in sync";\
echo " =====> $(LNSRC) and $(TOPDIR)/$(LNDEST) are in sync";\
else\
echo " =====> resetting $(TOPDIR)/$(LNDEST) to point to $(LNSRC)";\
SRCDIR=`pwd`/`dirname $(LNSRC)`;\