info-inventor-dev
[Top] [All Lists]

[PATCH] MacOS X 10.3, build-before-install

To: info-inventor-dev@xxxxxxxxxxx
Subject: [PATCH] MacOS X 10.3, build-before-install
From: Chris Scharver <scharver@xxxxxxxxxxx>
Date: Tue, 12 Apr 2005 11:38:13 -0500
Sender: info-inventor-dev-bounce@xxxxxxxxxxx
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 :=


<Prev in Thread] Current Thread [Next in Thread>
  • [PATCH] MacOS X 10.3, build-before-install, Chris Scharver <=