[ODE] Makefile patches and Borland bcc32 makefile...

Dominique Louis Dominique at SavageSoftware.com.au
Fri Apr 30 23:50:44 MST 2004


I would like to propose a slight change to the use of ODE_LIB_AR_RULE 
variable in the main Makefile which is part of the attached patch.

This change would allow makers of new make files to manipulate the 
ODE_OBJECTS variable when passing it to their respective compilers. Thus 
it gives extra flexibility to the makefile maker. To allow these change 
to have the least impact I have also included patches for the other 2 
makefiles that make use of the ODE_LIB_AR_RULE variable.

It is the aforementioned capability to manipulate the ODE_OBJECT list 
which thus allows me to submit a Makefile for the Borland bcc32 command 
line compiler ( as a few people have asked for it ). As far as I can 
tell it correctly creates the ode.lib file.

NOTE : As of yet this will not compile opcode, due to some C++ issues I 
have not tracked down yet. But I am sure this will not be far off.

Dominique
-------------- next part --------------
WINDOWS=1
THIS_DIR1=
THIS_DIR2=
DEL_CMD=tools\rm
CC=bcc32 -q -DWIN32
OBJ=.obj
C_FLAGS=-P -Vx -Ve -x- -RT- -X- -a8 -b- -k- -vi -tWC -tWM -c
C_INC=-I
C_OUT=-o
C_EXEOUT=-e
C_DEF=-D
C_OPT=-O
AR=
RANLIB=
LIB_PREFIX=
LIB_SUFFIX=.lib
LINK_OPENGL=import32.lib cw32mti.lib Comctl32.lib kernel32.lib user32.lib gdi32.lib OpenGL32.lib Glu32.lib
LINK_MATH=
RC_RULE=brcc32 -r -fo$@ $<

ifeq ($(BUILD),release)
OPT=2
endif

ifeq ($(BUILD),debug)
OPT=d
C_FLAGS+=-y
endif

ODE_LIB_AR_RULE=tlib lib\ode $(foreach o, $(ODE_OBJECTS), +$(o:ode/src/%.obj=ode\src\\%) )
-------------- next part --------------
Index: Makefile
===================================================================
RCS file: /cvsroot/opende/ode/Makefile,v
retrieving revision 1.25
diff -u -r1.25 Makefile
--- Makefile	23 Apr 2004 16:24:59 -0000	1.25
+++ Makefile	30 Apr 2004 21:39:27 -0000
@@ -292,7 +292,7 @@
 else
 #   if we have no command-line-length limitation, directly specify all
 #   object files to be linked.
-	$(ODE_LIB_AR_RULE) $(ODE_OBJECTS)
+	$(ODE_LIB_AR_RULE) 
 endif
 
 ifdef RANLIB
-------------- next part --------------
Index: config/makefile.msvc-dll
===================================================================
RCS file: /cvsroot/opende/ode/config/makefile.msvc-dll,v
retrieving revision 1.5
diff -u -r1.5 makefile.msvc-dll
--- config/makefile.msvc-dll	22 Apr 2004 20:38:47 -0000	1.5
+++ config/makefile.msvc-dll	30 Apr 2004 21:42:46 -0000
@@ -33,4 +33,4 @@
 DEFS_FILE=msvcdefs.def
 endif
 
-ODE_LIB_AR_RULE=link /dll /nologo /SUBSYSTEM:WINDOWS /LIBPATH:"C:\Programme\Micros~2\VC98\Lib" /def:config/$(DEFS_FILE) $(LINK_OPENGL) /OUT:$(patsubst %.lib,%.dll,$@)
+ODE_LIB_AR_RULE=link /dll /nologo /SUBSYSTEM:WINDOWS /LIBPATH:"C:\Programme\Micros~2\VC98\Lib" /def:config/$(DEFS_FILE) $(LINK_OPENGL) /OUT:$(patsubst %.lib,%.dll,$@) $(ODE_OBJECTS)
-------------- next part --------------
Index: config/makefile.msvc-dll-cygwin
===================================================================
RCS file: /cvsroot/opende/ode/config/makefile.msvc-dll-cygwin,v
retrieving revision 1.4
diff -u -r1.4 makefile.msvc-dll-cygwin
--- config/makefile.msvc-dll-cygwin	22 Apr 2004 20:38:47 -0000	1.4
+++ config/makefile.msvc-dll-cygwin	30 Apr 2004 21:43:17 -0000
@@ -35,4 +35,4 @@
 DEFS_FILE=msvcdefs.def
 endif
 
-ODE_LIB_AR_RULE=link /dll /nologo /SUBSYSTEM:WINDOWS /LIBPATH:"C:\Programme\Micros~2\VC98\Lib" /def:config/$(DEFS_FILE) $(LINK_OPENGL) /OUT:$(patsubst %.lib,%.dll,$@)
+ODE_LIB_AR_RULE=link /dll /nologo /SUBSYSTEM:WINDOWS /LIBPATH:"C:\Programme\Micros~2\VC98\Lib" /def:config/$(DEFS_FILE) $(LINK_OPENGL) /OUT:$(patsubst %.lib,%.dll,$@) $(ODE_OBJECTS)


More information about the ODE mailing list