In an effort to get OIV building for DarwinPorts, I had to make a
series of patches. Most significantly, I needed to build the library
before installing it. I needed to use plain 'make' before running 'make
install'. The default makefiles aren't really set up to accommodate
that, as they expect to the find libInventor in the installed location.
I'm not sure if this makes a mess of linking, but perhaps using libtool
with install_name could resolve problems? Anyhow, here are the changes
that I made:
* make/ivcommondefs: removed MATHDEFS for darwin, as apple-gcc 3.3
doesn't need them anymore (same as Edward Patel's patch)
* make/localrules.apple: added -lmx for math library linking (same as
Edward Patel's patch)
* libFL/ang/flfreetype.h: new versions of freetype2 seem to require a
different way to include the header
* several GNUmakefiles: added LLDOPTS with $(IVDEPTH)/lib and
$(IVDEPTH)/libSoXt so that in-place builds work
Chris
Index: apps/converters/ivdowngrade/GNUmakefile
===================================================================
RCS file: /cvs/inventor/apps/converters/ivdowngrade/GNUmakefile,v
retrieving revision 1.2
diff -u -r1.2 GNUmakefile
--- apps/converters/ivdowngrade/GNUmakefile 18 Sep 2000 09:40:59
-0000 1.2
+++ apps/converters/ivdowngrade/GNUmakefile 12 Apr 2005 16:28:02 -0000
@@ -22,6 +22,8 @@
SoText2V2.c++ \
SoText3V2.c++
+LLDOPTS += -L$(IVDEPTH)/lib
+
LLDLIBS = -lInventor
all: all_ivbin
Index: apps/demos/SceneViewer/GNUmakefile
===================================================================
RCS file: /cvs/inventor/apps/demos/SceneViewer/GNUmakefile,v
retrieving revision 1.5
diff -u -r1.5 GNUmakefile
--- apps/demos/SceneViewer/GNUmakefile 7 Jan 2005 12:49:28 -0000 1.5
+++ apps/demos/SceneViewer/GNUmakefile 12 Apr 2005 16:28:02 -0000
@@ -6,7 +6,7 @@
CXXFILES = SceneViewer.c++ SoSceneViewer.c++ SvManipList.c++
-LLDOPTS += -L../../samples/widgets
+LLDOPTS += -L../../samples/widgets -L$(IVDEPTH)/lib
-L$(IVDEPTH)/libSoXt
LLDLIBS = -lInventorWidget -lInventor -lInventorXt
Index: apps/demos/drop/GNUmakefile
===================================================================
RCS file: /cvs/inventor/apps/demos/drop/GNUmakefile,v
retrieving revision 1.2
diff -u -r1.2 GNUmakefile
--- apps/demos/drop/GNUmakefile 18 Sep 2000 09:40:59 -0000 1.2
+++ apps/demos/drop/GNUmakefile 12 Apr 2005 16:28:02 -0000
@@ -8,6 +8,8 @@
TsBlock.c++ TsPiece.c++ TsPieces.c++ TsField.c++ \
TsTrickle.c++ TsEvents.c++ TsRemoval.c++ TsViewer.c++ drop.c++
+LLDOPTS += -L$(IVDEPTH)/lib -L$(IVDEPTH)/libSoXt
+
LLDLIBS = -lInventor -lInventorXt
all: all_ivbin
Index: apps/demos/gview/GNUmakefile
===================================================================
RCS file: /cvs/inventor/apps/demos/gview/GNUmakefile,v
retrieving revision 1.6
diff -u -r1.6 GNUmakefile
--- apps/demos/gview/GNUmakefile 1 Jun 2002 02:22:20 -0000 1.6
+++ apps/demos/gview/GNUmakefile 12 Apr 2005 16:28:02 -0000
@@ -8,6 +8,8 @@
gview.c++ DisplayGraph.c++ Error.c++ FieldEditor.c++ \
GraphIcon.c++ GraphViewer.c++ NodeCreator.c++
+LLDOPTS += -L$(IVDEPTH)/lib -L$(IVDEPTH)/libSoXt
+
LLDLIBS = -lInventor -lInventorXt
all: all_ivbin
Index: apps/demos/maze/GNUmakefile
===================================================================
RCS file: /cvs/inventor/apps/demos/maze/GNUmakefile,v
retrieving revision 1.2
diff -u -r1.2 GNUmakefile
--- apps/demos/maze/GNUmakefile 18 Sep 2000 09:41:00 -0000 1.2
+++ apps/demos/maze/GNUmakefile 12 Apr 2005 16:28:02 -0000
@@ -8,6 +8,8 @@
CXXFILES = maze.c++
+LLDOPTS += -L$(IVDEPTH)/lib -L$(IVDEPTH)/libSoXt
+
LLDLIBS = -lInventor -lInventorXt
all: all_ivbin
Index: apps/demos/noodle/GNUmakefile
===================================================================
RCS file: /cvs/inventor/apps/demos/noodle/GNUmakefile,v
retrieving revision 1.5
diff -u -r1.5 GNUmakefile
--- apps/demos/noodle/GNUmakefile 1 Jun 2002 02:22:20 -0000 1.5
+++ apps/demos/noodle/GNUmakefile 12 Apr 2005 16:28:02 -0000
@@ -12,6 +12,8 @@
NoodleTextureGizmo.c++ noodle.c++ LineManipHilight.c++ \
profile.c++
+LLDOPTS += -L$(IVDEPTH)/lib -L$(IVDEPTH)/libSoXt
+
LLDLIBS = \
../../nodes/GeneralizedCylinder/NurbMaker.o \
../../nodes/GeneralizedCylinder/Triangulator.o \
Index: apps/demos/qmorf/GNUmakefile
===================================================================
RCS file: /cvs/inventor/apps/demos/qmorf/GNUmakefile,v
retrieving revision 1.4
diff -u -r1.4 GNUmakefile
--- apps/demos/qmorf/GNUmakefile 1 Jun 2002 02:22:20 -0000 1.4
+++ apps/demos/qmorf/GNUmakefile 12 Apr 2005 16:28:02 -0000
@@ -6,6 +6,8 @@
CXXFILES = QuadThing.c++ Background.c++ FlashBackground.c++
+LLDOPTS += -L$(IVDEPTH)/lib -L$(IVDEPTH)/libSoXt
+
LLDLIBS = -lInventor -lInventorXt
all: all_ivbin
Index: apps/demos/revo/GNUmakefile
===================================================================
RCS file: /cvs/inventor/apps/demos/revo/GNUmakefile,v
retrieving revision 1.3
diff -u -r1.3 GNUmakefile
--- apps/demos/revo/GNUmakefile 1 Jun 2002 02:22:20 -0000 1.3
+++ apps/demos/revo/GNUmakefile 12 Apr 2005 16:28:02 -0000
@@ -8,7 +8,7 @@
CXXFILES = revo.c++ RevClass.c++ profile.c++
-LLDOPTS += -L../../samples/common
+LLDOPTS += -L../../samples/common -L$(IVDEPTH)/lib -L$(IVDEPTH)/libSoXt
LLDLIBS = -lcommon -lInventor -lInventorXt
Index: apps/demos/textomatic/GNUmakefile
===================================================================
RCS file: /cvs/inventor/apps/demos/textomatic/GNUmakefile,v
retrieving revision 1.4
diff -u -r1.4 GNUmakefile
--- apps/demos/textomatic/GNUmakefile 7 Jan 2005 12:49:28 -0000 1.4
+++ apps/demos/textomatic/GNUmakefile 12 Apr 2005 16:28:02 -0000
@@ -6,7 +6,7 @@
CXXFILES = textomatic.c++ TextGraph.c++ TextWrapper.c++
-LLDOPTS += -L../../samples/common
+LLDOPTS += -L../../samples/common -L$(IVDEPTH)/lib -L$(IVDEPTH)/libSoXt
LLDLIBS = -lcommon -lInventor -lInventorXt
Index: apps/nodes/BarChart/GNUmakefile
===================================================================
RCS file: /cvs/inventor/apps/nodes/BarChart/GNUmakefile,v
retrieving revision 1.2
diff -u -r1.2 GNUmakefile
--- apps/nodes/BarChart/GNUmakefile 18 Sep 2000 09:41:01 -0000 1.2
+++ apps/nodes/BarChart/GNUmakefile 12 Apr 2005 16:28:02 -0000
@@ -5,6 +5,10 @@
CXXFILES = BarChart.c++
+CXXDSOOPTS += -L$(IVDEPTH)/lib -L$(IVDEPTH)/libSoXt
+
+LLDOPTS += -L$(IVDEPTH)/lib -L$(IVDEPTH)/libSoXt
+
LLDLIBS = -lInventor -lInventorXt
all install: all_ivbin
Index: apps/nodes/Decal/GNUmakefile
===================================================================
RCS file: /cvs/inventor/apps/nodes/Decal/GNUmakefile,v
retrieving revision 1.2
diff -u -r1.2 GNUmakefile
--- apps/nodes/Decal/GNUmakefile 18 Sep 2000 09:41:01 -0000 1.2
+++ apps/nodes/Decal/GNUmakefile 12 Apr 2005 16:28:02 -0000
@@ -5,6 +5,10 @@
CXXFILES = Decal.c++
+CXXDSOOPTS += -L$(IVDEPTH)/lib -L$(IVDEPTH)/libSoXt
+
+LLDOPTS += -L$(IVDEPTH)/lib -L$(IVDEPTH)/libSoXt
+
LLDLIBS = -lInventor -lInventorXt
all install: all_ivbin
Index: apps/nodes/GeneralizedCylinder/GNUmakefile
===================================================================
RCS file: /cvs/inventor/apps/nodes/GeneralizedCylinder/GNUmakefile,v
retrieving revision 1.2
diff -u -r1.2 GNUmakefile
--- apps/nodes/GeneralizedCylinder/GNUmakefile 18 Sep 2000 09:41:01
-0000 1.2
+++ apps/nodes/GeneralizedCylinder/GNUmakefile 12 Apr 2005 16:28:02
-0000
@@ -7,6 +7,10 @@
GeneralizedCylinder.c++ Triangulator.c++ \
NurbMaker.c++
+CXXDSOOPTS += -L$(IVDEPTH)/lib -L$(IVDEPTH)/libSoXt
+
+LLDOPTS += -L$(IVDEPTH)/lib -L$(IVDEPTH)/libSoXt
+
LLDLIBS = -lInventor -lInventorXt
all install: all_ivbin
Index: apps/tools/ivcat/GNUmakefile
===================================================================
RCS file: /cvs/inventor/apps/tools/ivcat/GNUmakefile,v
retrieving revision 1.2
diff -u -r1.2 GNUmakefile
--- apps/tools/ivcat/GNUmakefile 18 Sep 2000 09:41:03 -0000 1.2
+++ apps/tools/ivcat/GNUmakefile 12 Apr 2005 16:28:02 -0000
@@ -5,6 +5,8 @@
CXXFILES = ivcat.c++
+LLDOPTS += -L$(IVDEPTH)/lib
+
LLDLIBS = -lInventor
all: all_ivbin
Index: apps/tools/ivfix/GNUmakefile
===================================================================
RCS file: /cvs/inventor/apps/tools/ivfix/GNUmakefile,v
retrieving revision 1.2
diff -u -r1.2 GNUmakefile
--- apps/tools/ivfix/GNUmakefile 18 Sep 2000 09:41:03 -0000 1.2
+++ apps/tools/ivfix/GNUmakefile 12 Apr 2005 16:28:02 -0000
@@ -22,6 +22,8 @@
IfTypes.c++ \
IfWeeder.c++
+LLDOPTS += -L$(IVDEPTH)/lib
+
LLDLIBS = -lInventor
all: all_ivbin
Index: apps/tools/ivinfo/GNUmakefile
===================================================================
RCS file: /cvs/inventor/apps/tools/ivinfo/GNUmakefile,v
retrieving revision 1.2
diff -u -r1.2 GNUmakefile
--- apps/tools/ivinfo/GNUmakefile 18 Sep 2000 09:41:03 -0000 1.2
+++ apps/tools/ivinfo/GNUmakefile 12 Apr 2005 16:28:02 -0000
@@ -5,7 +5,7 @@
CXXFILES = ivinfo.c++
-LLDLIBS = -lInventor
+LLDLIBS = -L$(IVDEPTH)/lib -lInventor
all: all_ivbin
Index: apps/tools/ivview/GNUmakefile
===================================================================
RCS file: /cvs/inventor/apps/tools/ivview/GNUmakefile,v
retrieving revision 1.4
diff -u -r1.4 GNUmakefile
--- apps/tools/ivview/GNUmakefile 7 Jan 2005 12:49:28 -0000 1.4
+++ apps/tools/ivview/GNUmakefile 12 Apr 2005 16:28:02 -0000
@@ -5,7 +5,7 @@
CXXFILES = ivview.c++
-LLDOPTS += -L../../samples/widgets
+LLDOPTS += -L../../samples/widgets -L$(IVDEPTH)/lib
-L$(IVDEPTH)/libSoXt
LLDLIBS = -lInventorWidget -lInventorXt -lInventor
Index: doc/man/ivman/GNUmakefile
===================================================================
RCS file: /cvs/inventor/doc/man/ivman/GNUmakefile,v
retrieving revision 1.4
diff -u -r1.4 GNUmakefile
--- doc/man/ivman/GNUmakefile 6 Mar 2002 21:32:26 -0000 1.4
+++ doc/man/ivman/GNUmakefile 12 Apr 2005 16:28:02 -0000
@@ -5,6 +5,8 @@
CXXFILES = Main.c++ ClassDef.c++ Man.c++ Reader.c++ Writer.c++
BuildIssues.c++
+LLDOPTS = -L$(IVDEPTH)/lib
+
LLDLIBS = -lInventor
all install: $(PROGRAM)
Index: libFL/ang/flfreetype.h
===================================================================
RCS file: /cvs/inventor/libFL/ang/flfreetype.h,v
retrieving revision 1.1
diff -u -r1.1 flfreetype.h
--- libFL/ang/flfreetype.h 24 Mar 2001 02:34:24 -0000 1.1
+++ libFL/ang/flfreetype.h 12 Apr 2005 16:28:03 -0000
@@ -1,7 +1,8 @@
#ifndef __flfreetype_h_
#define __flfreetype_h_
-#include <freetype/freetype.h>
+#include <ft2build.h>
+#include FT_FREETYPE_H
#ifndef __fl_h_
#include "fl.h"
Index: libSoXt/GNUmakefile
===================================================================
RCS file: /cvs/inventor/libSoXt/GNUmakefile,v
retrieving revision 1.5
diff -u -r1.5 GNUmakefile
--- libSoXt/GNUmakefile 7 Jan 2005 12:49:29 -0000 1.5
+++ libSoXt/GNUmakefile 12 Apr 2005 16:28:03 -0000
@@ -3,7 +3,7 @@
LIBDSO = libInventorXt.so
-LLDLIBS = \
+LLDLIBS = -L$(IVDEPTH)/lib \
-lXm -lXt -lXext -lXi -lX11 -lm \
-lInventor -lGLU -lGL
Index: make/ivcommondefs
===================================================================
RCS file: /cvs/inventor/make/ivcommondefs,v
retrieving revision 1.11
diff -u -r1.11 ivcommondefs
--- make/ivcommondefs 7 Jan 2005 13:47:05 -0000 1.11
+++ make/ivcommondefs 12 Apr 2005 16:28:03 -0000
@@ -117,8 +117,9 @@
ARFLAGS = vrs
INSTALL = /usr/bin/install
-LCXXDEFS += $(MATHDEFS)
-LCDEFS += $(MATHDEFS)
+# Don't use MATHDEFs with gcc 3.3+
+#LCXXDEFS += $(MATHDEFS)
+#LCDEFS += $(MATHDEFS)
DARWINOPTS = -dynamic -fno-common
LCXXOPTS += $(DARWINOPTS)
Index: make/localrules.apple
===================================================================
RCS file: /cvs/inventor/make/localrules.apple,v
retrieving revision 1.1
diff -u -r1.1 localrules.apple
--- make/localrules.apple 11 Jul 2003 22:40:54 -0000 1.1
+++ make/localrules.apple 12 Apr 2005 16:28:03 -0000
@@ -4,7 +4,7 @@
ifeq ($(usingDarwin), 1)
LIBDSO := $(LIBDSO:.so=.dylib)
-LLDLIBS += -lXm -lXt -lX11 -lGLU -lGL -liconv -ldl -lcc_dynamic
-lstdc++
+LLDLIBS += -lXm -lXt -lX11 -lGLU -lGL -liconv -ldl -lmx -lcc_dynamic
-lstdc++
BUNDLE := $(DSO:.so=.bundle)
DSO :=
|