summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--development/macosx/README_MACOSX5
-rw-r--r--development/macosx/darwin-g++-shared94
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
@@ -18,49 +18,52 @@ What is ready:
18libqpe 18libqpe
19libopie1 19libopie1
20libopie2/opiedb 20libopie2/opiedb
21pim-applications (addressbook, todolist, datebook, today) 21pim-applications (addressbook, todolist, datebook, today)
22A lot of applications and plugins which are not platform specific. 22A lot of applications and plugins which are not platform specific.
23 23
24What will follow soon: 24What will follow soon:
25 25
26libopie2 26libopie2
27 27
28 28
29How to compile Opie for MacOS-X: 29How to compile Opie for MacOS-X:
30------------------------------- 30-------------------------------
31 31
32Before compiling for MacOS-X, you need the following: 32Before compiling for MacOS-X, you need the following:
33 33
34 1. X11-Server+X11SDK (Provided by Apple) 34 1. X11-Server+X11SDK (Provided by Apple)
35 2. QT-2.3.2 for X11 (Provided by Trolltech) 35 2. QT-2.3.2 for X11 (Provided by Trolltech)
36 3. QT/E-2.3.7 (Provided by Trolltech) 36 3. QT/E-2.3.7 (Provided by Trolltech)
37 4. Patches for QT-2.3.2 for MacOSX (take the one in this directory !) 37 4. Patches for QT-2.3.2 for MacOSX (take the one in this directory !)
38 5. Patches for QT/E-2.3.7 for MacOSX (take the one, provided in $OPIEDIR/qt) 38 5. Patches for QT/E-2.3.7 for MacOSX (take the one, provided in $OPIEDIR/qt)
39 39
40The Patch for QT/E for Opie, including all other opie-patches is available in the 40The Patch for QT/E for Opie, including all other opie-patches is available in the
41qt-directory ($OPIEDIR/qt) and is called "qte237-all-macosx.patch". 41qt-directory ($OPIEDIR/qt) and is called "qte237-all-macosx.patch".
42The Patch for QT-2.3.2 is provided in this directory.. 42
43The Patch for QT-2.3.2 is provided in this directory and is called "qt232-X11.patch".
44ATTENTION: The patch does not contain the darwin config file. Please copy the file
45"darwin-g++-shared" into the directory "configs" within the qt-2.3.2 directory !!
43 46
44If your buildsystem is working correctly, you should be able to build 47If your buildsystem is working correctly, you should be able to build
45opie. 48opie.
46 49
47HOWTO COMPILE: 50HOWTO COMPILE:
48------------- 51-------------
49 52
50Compile QT-2.3.2: 53Compile QT-2.3.2:
51 54
52Got to into the basic directory of qt-2.3.2 and enter 55Got to into the basic directory of qt-2.3.2 and enter
53export QTDIR=`pwd` 56export QTDIR=`pwd`
54export DYLD_LIBRARY_PATH=$QTDIR/lib 57export DYLD_LIBRARY_PATH=$QTDIR/lib
55./configure -no-xft -platform darwin-g++ 58./configure -no-xft -platform darwin-g++
56make 59make
57After compiling successful (I hope) you need qvfb: 60After compiling successful (I hope) you need qvfb:
58cd tools/qvfb 61cd tools/qvfb
59make 62make
60 63
61Compile QT/E-2.3.7: 64Compile QT/E-2.3.7:
62 65
63Got to into the basic directory of qt-2.3.2 and enter 66Got to into the basic directory of qt-2.3.2 and enter
64export QTDIR=`pwd` 67export QTDIR=`pwd`
65export QPEDIR=$QTDIR 68export QPEDIR=$QTDIR
66export DYLD_LIBRARY_PATH=$QTDIR/lib 69export DYLD_LIBRARY_PATH=$QTDIR/lib
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 @@
1# Compiling
2 INTERFACE_DECL_PATH = .
3 SYSCONF_CXX = g++
4 SYSCONF_CC = gcc
5 DASHCROSS =
6
7# Compiling with support libraries
8 SYSCONF_CXXFLAGS_X11= -I/usr/X11R6/include -I/usr/X11R6/include/freetype2
9 SYSCONF_CXXFLAGS_QT= -I$(QTDIR)/include
10 SYSCONF_CXXFLAGS_OPENGL= -I/usr/X11R6/include
11
12# Compiling YACC output
13SYSCONF_CXXFLAGS_YACC = -Wno-unused -Wno-parentheses
14
15# Linking with support libraries
16 SYSCONF_RPATH_X11= -L/usr/X11R6/lib
17 SYSCONF_RPATH_QT= -L$(QTDIR)/lib
18 SYSCONF_RPATH_OPENGL= -L/usr/X11R6/lib
19
20# Linking with support libraries
21# X11
22 SYSCONF_LFLAGS_X11= -L/usr/X11R6/lib
23 SYSCONF_LIBS_X11= -lXext -lX11 -lm
24# Qt, Qt+OpenGL
25 SYSCONF_LFLAGS_QT= -L$(QTDIR)/lib
26 SYSCONF_LIBS_QT = -lqt$(QT_THREAD_SUFFIX)
27 SYSCONF_LIBS_QT_OPENGL=
28# OpenGL
29 SYSCONF_LFLAGS_OPENGL= -L/usr/X11R6/lib
30 SYSCONF_LIBS_OPENGL= -lGLU -lGL -lXmu
31# Yacc
32 SYSCONF_LIBS_YACC=
33
34# Linking applications
35 SYSCONF_LINK = g++
36 SYSCONF_LFLAGS =
37 SYSCONF_LIBS =
38
39# Link flags for shared objects
40 SYSCONF_LFLAGS_SHOBJ= -dynamiclib
41
42# Flags for threading
43 SYSCONF_CFLAGS_THREAD= -pthread -D_THREAD_SAFE
44 SYSCONF_CXXFLAGS_THREAD= -pthread -D_THREAD_SAFE
45 SYSCONF_LFLAGS_THREAD= -pthread
46 SYSCONF_LIBS_THREAD=
47
48# Meta-object compiler
49 SYSCONF_MOC = $(QTDIR)/bin/moc
50
51# UI compiler
52 SYSCONF_UIC = $(QTDIR)/bin/uic
53
54# Linking shared libraries
55# - Build the $(TARGET) library, eg. lib$(TARGET).so.2.2.2
56# - Place target in $(DESTDIR) - which has a trailing /
57# - Usually needs to incorporate $(VER_MAJ), $(VER_MIN) and $(VER_PATCH)
58#
59 SYSCONF_LINK_SHLIB= g++
60 SYSCONF_LINK_TARGET_SHARED= lib$(TARGET).dylib.$(VER_MAJ).$(VER_MIN).$(VER_PATCH)
61 SYSCONF_LINK_LIB_SHARED= $(SYSCONF_LINK_SHLIB) -dynamiclib \
62 $(LFLAGS) -o $(SYSCONF_LINK_TARGET_SHARED) \
63 $(OBJECTS) $(OBJMOC) $(LIBS) && \
64 mv $(SYSCONF_LINK_TARGET_SHARED) $(DESTDIR); \
65 cd $(DESTDIR) && \
66 rm -f lib$(TARGET).dylib lib$(TARGET).dylib.$(VER_MAJ) lib$(TARGET).dylib.$(VER_MAJ).$(VER_MIN); \
67 ln -s $(SYSCONF_LINK_TARGET_SHARED) lib$(TARGET).dylib; \
68 ln -s $(SYSCONF_LINK_TARGET_SHARED) lib$(TARGET).dylib.$(VER_MAJ); \
69 ln -s $(SYSCONF_LINK_TARGET_SHARED) lib$(TARGET).dylib.$(VER_MAJ).$(VER_MIN)
70
71# Linking static libraries
72# - Build the $(TARGET) library, eg. lib$(TARGET).a
73# - Place target in $(DESTDIR) - which has a trailing /
74#
75 SYSCONF_AR = ar cqs
76SYSCONF_LINK_TARGET_STATIC = lib$(TARGET).a
77 SYSCONF_LINK_LIB_STATIC= rm -f $(DESTDIR)$(SYSCONF_LINK_TARGET_STATIC) ; \
78 $(SYSCONF_AR) $(DESTDIR)$(SYSCONF_LINK_TARGET_STATIC) $(OBJECTS) $(OBJMOC)
79# Compiling application source
80 SYSCONF_CXXFLAGS= -pipe -fno-exceptions -O2 -Wall -W
81 SYSCONF_CFLAGS = -pipe -fno-exceptions -O2 -Wall -W
82# Default link type (static linking is still be used where required)
83 SYSCONF_LINK_LIB= $(SYSCONF_LINK_LIB_SHARED)
84 SYSCONF_LINK_TARGET= $(SYSCONF_LINK_TARGET_SHARED)
85# Compiling library source
86 SYSCONF_CXXFLAGS_LIB= -fPIC
87 SYSCONF_CFLAGS_LIB= -fPIC
88# Compiling shared-object source
89 SYSCONF_CXXFLAGS_SHOBJ= -fPIC
90 SYSCONF_CFLAGS_SHOBJ= -fPIC
91# Linking Qt
92 SYSCONF_LIBS_QTLIB= $(SYSCONF_LFLAGS_X11) $(QT_LIBS_MT) $(QT_LIBS_OPT)
93# Linking Qt applications
94 SYSCONF_LIBS_QTAPP=