-rw-r--r-- | development/macosx/README_MACOSX | 5 | ||||
-rw-r--r-- | development/macosx/darwin-g++-shared | 94 |
2 files changed, 98 insertions, 1 deletions
diff --git a/development/macosx/README_MACOSX b/development/macosx/README_MACOSX index 864f486..877e2f8 100644 --- a/development/macosx/README_MACOSX +++ b/development/macosx/README_MACOSX @@ -26,33 +26,36 @@ What will follow soon: libopie2 How to compile Opie for MacOS-X: ------------------------------- Before compiling for MacOS-X, you need the following: 1. X11-Server+X11SDK (Provided by Apple) 2. QT-2.3.2 for X11 (Provided by Trolltech) 3. QT/E-2.3.7 (Provided by Trolltech) 4. Patches for QT-2.3.2 for MacOSX (take the one in this directory !) 5. Patches for QT/E-2.3.7 for MacOSX (take the one, provided in $OPIEDIR/qt) The Patch for QT/E for Opie, including all other opie-patches is available in the qt-directory ($OPIEDIR/qt) and is called "qte237-all-macosx.patch". -The Patch for QT-2.3.2 is provided in this directory.. + +The Patch for QT-2.3.2 is provided in this directory and is called "qt232-X11.patch". +ATTENTION: The patch does not contain the darwin config file. Please copy the file +"darwin-g++-shared" into the directory "configs" within the qt-2.3.2 directory !! If your buildsystem is working correctly, you should be able to build opie. HOWTO COMPILE: ------------- Compile QT-2.3.2: Got to into the basic directory of qt-2.3.2 and enter export QTDIR=`pwd` export DYLD_LIBRARY_PATH=$QTDIR/lib ./configure -no-xft -platform darwin-g++ make After compiling successful (I hope) you need qvfb: cd tools/qvfb diff --git a/development/macosx/darwin-g++-shared b/development/macosx/darwin-g++-shared new file mode 100644 index 0000000..18d3b15 --- a/dev/null +++ b/development/macosx/darwin-g++-shared @@ -0,0 +1,94 @@ +# Compiling +INTERFACE_DECL_PATH = . +SYSCONF_CXX = g++ +SYSCONF_CC = gcc +DASHCROSS = + +# Compiling with support libraries +SYSCONF_CXXFLAGS_X11 = -I/usr/X11R6/include -I/usr/X11R6/include/freetype2 +SYSCONF_CXXFLAGS_QT = -I$(QTDIR)/include +SYSCONF_CXXFLAGS_OPENGL = -I/usr/X11R6/include + +# Compiling YACC output +SYSCONF_CXXFLAGS_YACC = -Wno-unused -Wno-parentheses + +# Linking with support libraries +SYSCONF_RPATH_X11 = -L/usr/X11R6/lib +SYSCONF_RPATH_QT = -L$(QTDIR)/lib +SYSCONF_RPATH_OPENGL = -L/usr/X11R6/lib + +# Linking with support libraries +# X11 +SYSCONF_LFLAGS_X11 = -L/usr/X11R6/lib +SYSCONF_LIBS_X11 = -lXext -lX11 -lm +# Qt, Qt+OpenGL +SYSCONF_LFLAGS_QT = -L$(QTDIR)/lib +SYSCONF_LIBS_QT = -lqt$(QT_THREAD_SUFFIX) +SYSCONF_LIBS_QT_OPENGL = +# OpenGL +SYSCONF_LFLAGS_OPENGL = -L/usr/X11R6/lib +SYSCONF_LIBS_OPENGL = -lGLU -lGL -lXmu +# Yacc +SYSCONF_LIBS_YACC = + +# Linking applications +SYSCONF_LINK = g++ +SYSCONF_LFLAGS = +SYSCONF_LIBS = + +# Link flags for shared objects +SYSCONF_LFLAGS_SHOBJ = -dynamiclib + +# Flags for threading +SYSCONF_CFLAGS_THREAD = -pthread -D_THREAD_SAFE +SYSCONF_CXXFLAGS_THREAD = -pthread -D_THREAD_SAFE +SYSCONF_LFLAGS_THREAD = -pthread +SYSCONF_LIBS_THREAD = + +# Meta-object compiler +SYSCONF_MOC = $(QTDIR)/bin/moc + +# UI compiler +SYSCONF_UIC = $(QTDIR)/bin/uic + +# Linking shared libraries +# - Build the $(TARGET) library, eg. lib$(TARGET).so.2.2.2 +# - Place target in $(DESTDIR) - which has a trailing / +# - Usually needs to incorporate $(VER_MAJ), $(VER_MIN) and $(VER_PATCH) +# +SYSCONF_LINK_SHLIB = g++ +SYSCONF_LINK_TARGET_SHARED = lib$(TARGET).dylib.$(VER_MAJ).$(VER_MIN).$(VER_PATCH) +SYSCONF_LINK_LIB_SHARED = $(SYSCONF_LINK_SHLIB) -dynamiclib \ + $(LFLAGS) -o $(SYSCONF_LINK_TARGET_SHARED) \ + $(OBJECTS) $(OBJMOC) $(LIBS) && \ + mv $(SYSCONF_LINK_TARGET_SHARED) $(DESTDIR); \ + cd $(DESTDIR) && \ + rm -f lib$(TARGET).dylib lib$(TARGET).dylib.$(VER_MAJ) lib$(TARGET).dylib.$(VER_MAJ).$(VER_MIN); \ + ln -s $(SYSCONF_LINK_TARGET_SHARED) lib$(TARGET).dylib; \ + ln -s $(SYSCONF_LINK_TARGET_SHARED) lib$(TARGET).dylib.$(VER_MAJ); \ + ln -s $(SYSCONF_LINK_TARGET_SHARED) lib$(TARGET).dylib.$(VER_MAJ).$(VER_MIN) + +# Linking static libraries +# - Build the $(TARGET) library, eg. lib$(TARGET).a +# - Place target in $(DESTDIR) - which has a trailing / +# +SYSCONF_AR = ar cqs +SYSCONF_LINK_TARGET_STATIC = lib$(TARGET).a +SYSCONF_LINK_LIB_STATIC = rm -f $(DESTDIR)$(SYSCONF_LINK_TARGET_STATIC) ; \ + $(SYSCONF_AR) $(DESTDIR)$(SYSCONF_LINK_TARGET_STATIC) $(OBJECTS) $(OBJMOC) +# Compiling application source +SYSCONF_CXXFLAGS = -pipe -fno-exceptions -O2 -Wall -W +SYSCONF_CFLAGS = -pipe -fno-exceptions -O2 -Wall -W +# Default link type (static linking is still be used where required) +SYSCONF_LINK_LIB = $(SYSCONF_LINK_LIB_SHARED) +SYSCONF_LINK_TARGET = $(SYSCONF_LINK_TARGET_SHARED) +# Compiling library source +SYSCONF_CXXFLAGS_LIB = -fPIC +SYSCONF_CFLAGS_LIB = -fPIC +# Compiling shared-object source +SYSCONF_CXXFLAGS_SHOBJ = -fPIC +SYSCONF_CFLAGS_SHOBJ = -fPIC +# Linking Qt +SYSCONF_LIBS_QTLIB = $(SYSCONF_LFLAGS_X11) $(QT_LIBS_MT) $(QT_LIBS_OPT) +# Linking Qt applications +SYSCONF_LIBS_QTAPP = |