]>
git.saurik.com Git - wxWidgets.git/blob - docs/metrowerks/mwvars.sh
2 # Author: David Elliott
4 CWINSTALL
="/Applications/Metrowerks CodeWarrior 8.0/Metrowerks CodeWarrior"
5 if ! test -d "$CWINSTALL"; then
6 CWINSTALL
="$HOME/Applications/Metrowerks CodeWarrior 8.0/Metrowerks CodeWarrior"
8 if ! test -d "$CWINSTALL"; then
9 echo "WARNING: Could not find CodeWarrior" 1>&2
12 # NOTE: Do not use this with CW < 9.3
13 # If you do have CW 9.3, please read the documentation.before
14 # attempting this as I don't have it so haven't tested it.
15 #CW_NEXT_ROOT="/Developer/SDKs/MacOSX10.2.8.sdk"
18 # Turn this on to use MW's CRT instead of BSD CRT.w/ mwcc/mwld
20 # NOTE: When you turn this on you MUST define _MSL_USING_MW_C_HEADERS
21 # You probably also want to define _MSL_NEEDS_EXTRAS (for strcasecmp)
22 # Furthermore, you can't use UNIXy stuff like popen when you use these!
23 # That is why it is off by default.
25 ###########################################################################
26 ## Metrowerks Mac OS X and Mach-O
28 ##### MWCMachPPCIncludes #####
29 # Path containing machine/ansi.h fixed to work with Panther headers
30 # standard /usr/include directory
32 # MSL C headers (MSL C++ needs this for mslGlobals.h in particular)
33 # MW compiler specific headers
34 export MWCMachPPCIncludes
=\
35 "$CWINSTALL/MacOS X Support/Headers/(wchar_t Support Panther fix):"\
36 "$CW_NEXT_ROOT/usr/include:"\
37 "$CWINSTALL/MSL/MSL_C++/MSL_Common/Include:"\
38 "$CWINSTALL/MSL/MSL_C/MSL_MacOS/Include:"\
39 "$CWINSTALL/MSL/MSL_C/MSL_Common/Include:"\
40 "$CWINSTALL/MacOS X Support/Headers/PPC Specific:"\
41 #end MWCMachPPCIncludes
43 ##### MWCMacOSXPPCIncludes #####
44 # If using BSD CRT then our includes are like those for the Mach-O compiler.
45 export MWCMacOSXPPCIncludes
="$MWCMachPPCIncludes"
46 if test "x$CW_MWCC_USE_MW_CRT" = "xyes"; then
47 # Path containing machine/ansi.h fixed to work with Panther headers
48 # MSL C++ and C headers
49 # standard /usr/include directory
50 # MSL Extra headers (extras.h defines strcasecmp!)
51 # MW compiler specific headers
52 #NOTE: MSL Extras must be included after /usr/include so mode_t
53 # doesn't get redefined incorrectly for OS X.
54 export MWCMacOSXPPCIncludes
=\
55 "$CWINSTALL/MacOS X Support/Headers/(wchar_t Support Panther fix):"\
56 "$CWINSTALL/MSL/MSL_C++/MSL_Common/Include:"\
57 "$CWINSTALL/MSL/MSL_C/MSL_MacOS/Include:"\
58 "$CWINSTALL/MSL/MSL_C/MSL_Common/Include:"\
59 "$CW_NEXT_ROOT/usr/include:"\
60 "$CWINSTALL/MSL/MSL_Extras/MSL_Common/Include:"\
61 "$CWINSTALL/MacOS X Support/Headers/PPC Specific"
62 #end MWCMacOSXPPCIncludes
65 ##### MWMacOSXPPCLibraries #####
66 # First we must have the path containing mwcrt1.o (see note)
67 # Then we have the normal /usr/lib.
69 # NOTE: For CW 8.3 users using Panther you must link mwcrt1.o to crt1.o
70 # so that the crt1.o from /usr/lib does not get used.
71 export MWMacOSXPPCLibraries
=\
72 "$CWINSTALL/MacOS X Support/Libraries/Startup:"\
73 "$CW_NEXT_ROOT/usr/lib"
74 #end MWMacOSXPPCLibraries
76 ##### MWMachPPCLibraries #####
77 # Mach-O/PPC linker uses the same system library path as Mac OS X/PPC
78 export MWMachPPCLibraries
="$MWMacOSXPPCLibraries"
80 ##### MWMachPPCLibraryFiles #####
81 # First we need the MSL Runtime for basic C++ support.
82 # Second we need the MSL C++ library.
83 # There doesn't appear to be any MSL C for this configuration.
84 export MWMachPPCLibraryFiles
=\
85 "$CWINSTALL/MacOS X Support/Libraries/Runtime/Libs/MSL_Runtime_Mach-O.a:"\
86 "$CWINSTALL/MSL/MSL_C++/MSL_MacOS/Lib/Mach-O/MSL_C++_Mach-O.a:"\
87 #end MWMachPPCLibraryFiles
90 ##### MWMacOSXPPCLibraryFiles #####
91 export MWMacOSXPPCLibraryFiles
="$MWMachPPCLibraryFiles"
92 if test "x$CW_MWCC_USE_MW_CRT" = "xyes"; then
93 # First of all we need the MSL Runtime which appears to implement
94 # the very basic C++ functions like operator new/delete as well
95 # as Metrowerks C++ standard RTTI.
96 # Second we need the MSL C++ library.
97 # Since we're using MSL C++ library we also need the C library.
98 # Finally, we need the console_OS_X.c file which you'll need to compile
99 # for this to work (a normal project would have console_OS_X.c in it)
100 export MWMacOSXPPCLibraryFiles
=\
101 "$CWINSTALL/MacOS X Support/Libraries/Runtime/Libs/MSL_Runtime_Mach-O.lib:"\
102 "$CWINSTALL/MSL/MSL_C++/MSL_MacOS/Lib/Mach-O/MSL_C++_Mach-O.lib:"\
103 "$CWINSTALL/MSL/MSL_C/MSL_MacOS/Lib/Mach-O/MSL_C_Mach-O.lib:"\
104 "$CWINSTALL/MSL/MSL_C/MSL_MacOS/Src/console_OS_X.c.o:"\
105 #end MWMacOSXPPCLibraryFiles
108 ##### MWFrameworkPaths #####
109 # We need /System/Library/Frameworks for the OS X stuff
110 export MWFrameworkPaths
=\
111 "$CW_NEXT_ROOT/System/Library/Frameworks"
112 #end MWFrameworkPaths
115 ###########################################################################
117 export MWPEFCIncludes
=\
118 "$CWINSTALL/MSL/MSL_C++/MSL_Common/Include:"\
119 "$CWINSTALL/MSL/MSL_C/MSL_MacOS/Include:"\
120 "$CWINSTALL/MSL/MSL_C/MSL_Common/Include:"\
121 "$CWINSTALL/MSL/MSL_Extras/MSL_Common/Include:"\
122 "$CWINSTALL/MSL/MSL_Extras/MSL_MacOS/Include:"\
123 "$CWINSTALL/MacOS Support/Headers/PPC Specific:"\
124 "$CWINSTALL/MacOS Support/Universal/Interfaces/CIncludes:"\
125 "$CWINSTALL/MacOS Support/MetroNub Utilities/:"\
128 export MWPEFLibraries
=\
129 "$CWINSTALL"/MacOS\ Support
/Universal
/Libraries
/StubLibraries
:\
130 "$CWINSTALL"/MacOS\ Support
/Libraries
/Runtime
/Libs
:\
131 "$CWINSTALL"/MSL
/MSL_C
/MSL_MacOS
/Lib
/PPC
:\
132 "$CWINSTALL"/MSL
/MSL_C
++/MSL_MacOS
/Lib
/PPC
135 export MWPEFLibraryFiles
=\
136 "$CWINSTALL/MacOS Support/Libraries/Runtime/Libs/MSL_All_Carbon.Lib:"\
137 "$CWINSTALL/MSL/MSL_C/MSL_MacOS/Src/console.stubs.o:"\
138 "$CWINSTALL/MacOS Support/MetroNub Utilities/MNU Carbon.Lib:"\
140 "CarbonFrameworkLib:"\
141 #end MWPEFLibraryFiles
142 # I don't need the following but here they are for reference:
143 #"$CWINSTALL/MacOS Support/Libraries/Runtime/Libs/MSL_StdCRuntime_PPC.lib:"\
144 #"$CWINSTALL/MacOS Support/Libraries/Runtime/Libs/MSL_Runtime_PPC.lib:"\
145 #"$CWINSTALL/MSL/MSL_C++/MSL_MacOS/Lib/PPC/MSL_C++_PPC.lib:"\
146 #"$CWINSTALL/MSL/MSL_C/MSL_MacOS/Lib/PPC/MSL_C_PPC.lib:"\