From cf7b67ae6f3820f488ff67b00947ab0b75c05cb8 Mon Sep 17 00:00:00 2001 From: Stefan Csomor Date: Sun, 3 Jan 2010 18:20:28 +0000 Subject: [PATCH] building xcode projects from files.bkl git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63042 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- build/osx/makeprojects.applescript | 1 + build/osx/readme.txt | 20 ++ build/osx/wx.xcconfig | 19 ++ build/osx/wxcarbon.xcconfig | 7 + .../osx/wxcarbon_in.xcodeproj/project.pbxproj | 296 ++++++++++++++++++ build/osx/wxcocoa.xcconfig | 6 + .../osx/wxcocoa_in.xcodeproj/project.pbxproj | 296 ++++++++++++++++++ build/osx/wxiphone.xcconfig | 4 + .../osx/wxiphone_in.xcodeproj/project.pbxproj | 215 +++++++++++++ build/osx/wxvers.xcconfig | 4 + 10 files changed, 868 insertions(+) create mode 100644 build/osx/makeprojects.applescript create mode 100644 build/osx/readme.txt create mode 100644 build/osx/wx.xcconfig create mode 100644 build/osx/wxcarbon.xcconfig create mode 100644 build/osx/wxcarbon_in.xcodeproj/project.pbxproj create mode 100644 build/osx/wxcocoa.xcconfig create mode 100644 build/osx/wxcocoa_in.xcodeproj/project.pbxproj create mode 100644 build/osx/wxiphone.xcconfig create mode 100644 build/osx/wxiphone_in.xcodeproj/project.pbxproj create mode 100644 build/osx/wxvers.xcconfig diff --git a/build/osx/makeprojects.applescript b/build/osx/makeprojects.applescript new file mode 100644 index 0000000000..f791a804aa --- /dev/null +++ b/build/osx/makeprojects.applescript @@ -0,0 +1 @@ +global oldDelimiters global variables global variablesRef global bakefilesXML global bakefilesXMLRef global osxBuildFolder property test : false -- retrieves the files from the xml node including optional conditions on parseEntry(theElement, theVariables, theConditions) set AppleScript's text item delimiters to " " set theName to var of XML attributes of theElement set allElements to {} repeat with currElement in XML contents of theElement if class of currElement is text then set allElements to allElements & (every text item of currElement) else if class of currElement is XML element and XML tag of currElement is "if" then if (cond of XML attributes of currElement is in theConditions) then set allElements to allElements & (every text item of (item 1 of XML contents of currElement)) end if end if end if end repeat set AppleScript's text item delimiters to oldDelimiters copy {varname:theName, entries:allElements} to end of theVariables end parseEntry -- iterates through the entire xml tree and populates the variables on parseFiles(theXML, theVariables, theConditions) if class of theXML is XML element or class of theXML is XML document then repeat with anElement in XML contents of theXML try if class of anElement is XML element and ¬ XML tag of anElement is "set" then parseEntry(anElement, theVariables, theConditions) end if on error number -1728 -- ignore this error end try end repeat else if class of theXML is list then repeat with anElement in theXML try if class of anElement is XML element and ¬ XML tag of anElement is "set" and ¬ var of XML attributes of anElement is theName then parseEntry(anElement, theVariables, theConditions) end if on error number -1728 -- ignore this error end try end repeat end if end parseFiles -- gets the entries of the variable named theName on getVar(theName) repeat with anElement in variablesRef if (varname of anElement is theName) then return entries of anElement end if end repeat end getVar -- adds sources from fileList to a group named container on addNode(container, fileList) repeat with listItem in fileList if (listItem starts with "$(") then set AppleScript's text item delimiters to "" set variableName to (characters 3 through ((length of listItem) - 1) of listItem) as text set AppleScript's text item delimiters to oldDelimiters addNode(container, getVar(variableName)) else tell application "Xcode" tell project 1 set theTargets to targets set AppleScript's text item delimiters to "/" set currPath to every text item in listItem set currFile to "../../" & listItem set currFileName to (item -1 in currPath) set currGroup to (items 1 through -2 in currPath as text) set AppleScript's text item delimiters to oldDelimiters try set theGroup to group named container on error tell root group make new group with properties {name:container} end tell end try tell group container try set theGroup to group named currGroup on error make new group with properties {name:currGroup} end try tell group currGroup set newFile to make new file reference with properties {name:currFileName, path:currFile, path type:project relative} repeat with theTarget in theTargets add newFile to (get compile sources phase of theTarget) end repeat end tell end tell end tell end tell end if end repeat end addNode -- retrieves contents of file at posixFilePath on readFile(posixFilePath) set fileRef to open for access POSIX file posixFilePath set theData to read fileRef close access fileRef return theData end readFile on init() tell application "Xcode" quit end tell set variablesRef to a reference to variables set bakefilesXMLRef to a reference to bakefilesXML set oldDelimiters to AppleScript's text item delimiters tell application "Finder" set osxBuildFolder to POSIX path of ((folder of (path to me)) as Unicode text) end tell end init -- reads the files list and evaluates the conditions on readFilesList(theConditions) set variables to {} set bakefilesXML to parse XML (readFile(osxBuildFolder & "../bakefiles/files.bkl")) parseFiles(bakefilesXMLRef, variablesRef, theConditions) end readFilesList -- creates a new project file from the respective template on instantiateProject(theProject) set projectName to projectName of theProject set template to POSIX file (osxBuildFolder & projectName & "_in.xcodeproj") set newFile to POSIX file (osxBuildFolder & projectName & ".xcodeproj") tell application "Finder" try delete file newFile end try set duplicateProject to duplicate template with replace set name of duplicateProject to (projectName & ".xcodeproj") end tell tell application "Xcode" open newFile end tell end instantiateProject -- adds the source files of the nodes of theProject to the xcode project on populateProject(theProject) repeat with theNode in nodes of theProject addNode(label of theNode, entries of theNode) end repeat tell application "Xcode" quit end tell end populateProject on makeProject(theProject) instantiateProject(theProject) readFilesList(conditions of theProject) populateProject(theProject) end makeProject -- main init() set theProject to {conditions:{"PLATFORM_MACOSX=='1'", "TOOLKIT=='OSX_CARBON'", "WXUNIV=='0'", "USE_GUI=='1' and WXUNIV=='0'"}, projectName:¬ "wxcarbon", nodes:{¬ {label:"base", entries:{"$(BASE_SRC)"}}, ¬ {label:"base", entries:{"$(BASE_AND_GUI_SRC)"}}, ¬ {label:"core", entries:{"$(CORE_SRC)"}}, ¬ {label:"net", entries:{"$(NET_SRC)"}}, ¬ {label:"adv", entries:{"$(ADVANCED_SRC)"}}, ¬ {label:"media", entries:{"$(MEDIA_SRC)"}}, ¬ {label:"html", entries:{"$(HTML_SRC)"}}, ¬ {label:"xrc", entries:{"$(XRC_SRC)"}}, ¬ {label:"xml", entries:{"$(XML_SRC)"}}, ¬ {label:"opengl", entries:{"$(OPENGL_SRC)"}}, ¬ {label:"aui", entries:{"$(AUI_SRC)"}}, ¬ {label:"ribbon", entries:{"$(RIBBON_SRC)"}}, ¬ {label:"propgrid", entries:{"$(PROPGRID_SRC)"}}, ¬ {label:"richtext", entries:{"$(RICHTEXT_SRC)"}}, ¬ {label:"stc", entries:{"$(STC_SRC)"}}}} makeProject(theProject) set theProject to {conditions:{"PLATFORM_MACOSX=='1'", "TOOLKIT=='OSX_COCOA'", "WXUNIV=='0'", "USE_GUI=='1' and WXUNIV=='0'"}, projectName:¬ "wxcocoa", nodes:{¬ {label:"base", entries:{"$(BASE_SRC)"}}, ¬ {label:"base", entries:{"$(BASE_AND_GUI_SRC)"}}, ¬ {label:"core", entries:{"$(CORE_SRC)"}}, ¬ {label:"net", entries:{"$(NET_SRC)"}}, ¬ {label:"adv", entries:{"$(ADVANCED_SRC)"}}, ¬ {label:"media", entries:{"$(MEDIA_SRC)"}}, ¬ {label:"html", entries:{"$(HTML_SRC)"}}, ¬ {label:"xrc", entries:{"$(XRC_SRC)"}}, ¬ {label:"xml", entries:{"$(XML_SRC)"}}, ¬ {label:"opengl", entries:{"$(OPENGL_SRC)"}}, ¬ {label:"aui", entries:{"$(AUI_SRC)"}}, ¬ {label:"ribbon", entries:{"$(RIBBON_SRC)"}}, ¬ {label:"propgrid", entries:{"$(PROPGRID_SRC)"}}, ¬ {label:"richtext", entries:{"$(RICHTEXT_SRC)"}}, ¬ {label:"stc", entries:{"$(STC_SRC)"}}}} makeProject(theProject) \ No newline at end of file diff --git a/build/osx/readme.txt b/build/osx/readme.txt new file mode 100644 index 0000000000..f4ef043ceb --- /dev/null +++ b/build/osx/readme.txt @@ -0,0 +1,20 @@ +Updating Library Version Info +----------------------------- + +for a new release the wxvers.xcconfig has to be updated accordingly + +Building Projects +----------------- + +makeprojects is an AppleScript that uses the XML Tools from +http://www.latenightsw.com/freeware/XMLTools2/ + +the reason for this script is to support a single place of definition for the files needed +for a certain platform by building XCode projects from the bakefiles files.bkl file list. + +it creates new projects from the ..._in.xcodeproj templates in this folder and then +reads in the files lists from the files.bkl in the build/bakefiles directory, evaluates the +conditions in these definitions and then adds the correct files to the newly created XCode +projects + +Stefan Csomor diff --git a/build/osx/wx.xcconfig b/build/osx/wx.xcconfig new file mode 100644 index 0000000000..940c31b74e --- /dev/null +++ b/build/osx/wx.xcconfig @@ -0,0 +1,19 @@ +// must be included from the proper toolkit xcconfig + +#include "wxvers.xcconfig" + +WXPLATFORM = __WXOSX_$(WXTOOLKITUPPER)__ +PRODUCT_NAME = wx_osx_$(WXTOOLKIT) + +// USER_HEADER_SEARCH_PATHS = ${SYMROOT}/include ../include osx/carbon/morefilex common jpeg png regex expat/lib tiff/libtiff stc stc/scintilla/include stc/scintilla/src + + +GCC_PREFIX_HEADER = $(WXROOT)/include/wx/wxprec.h +GCC_PRECOMPILE_PREFIX_HEADER = YES +HEADER_SEARCH_PATHS = $(WXROOT)/src/tiff/libtiff +USER_HEADER_SEARCH_PATHS = $(WXROOT)/include $(WXROOT)/build/osx/setup/$(WXTOOLKIT)/include $(WXROOT)/src/jpeg $(WXROOT)/src/png $(WXROOT)/src/regex $(WXROOT)/src/expat/lib $(WXROOT)/src/tiff/libtiff +ALWAYS_SEARCH_USER_PATHS = NO +GCC_PREPROCESSOR_DEFINITIONS = $(WXPLATFORM) NO_GCC_PRAGMA __WX__ wxUSE_BASE=1 _FILE_OFFSET_BITS=64 _LARGE_FILES MACOS_CLASSIC __WXMAC_XCODE__=1 SCI_LEXER WX_PRECOMP=1 +GCC_PFE_FILE_C_DIALECTS = c++ objective-c++ +// USE_HEADERMAP = NO +// USE_SEPARATE_HEADERMAPS = YES diff --git a/build/osx/wxcarbon.xcconfig b/build/osx/wxcarbon.xcconfig new file mode 100644 index 0000000000..30c020aa2c --- /dev/null +++ b/build/osx/wxcarbon.xcconfig @@ -0,0 +1,7 @@ +WXTOOLKIT = carbon +WXTOOLKITUPPER = CARBON + +#include "wx.xcconfig" + +OTHER_LDFLAGS = -lz -framework WebKit -framework IOKit -framework Carbon -framework Cocoa -framework AudioToolbox -framework OpenGL -framework QuickTime +VALID_ARCHS = i386 ppc ppc7400 ppc970 diff --git a/build/osx/wxcarbon_in.xcodeproj/project.pbxproj b/build/osx/wxcarbon_in.xcodeproj/project.pbxproj new file mode 100644 index 0000000000..fa9a86a9b5 --- /dev/null +++ b/build/osx/wxcarbon_in.xcodeproj/project.pbxproj @@ -0,0 +1,296 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 45; + objects = { + +/* Begin PBXFileReference section */ + 404BEE6110EC83280080E2B8 /* libwx_osx_carbon_static.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libwx_osx_carbon_static.a; sourceTree = BUILT_PRODUCTS_DIR; }; + 40E3507E10EF2C130029DC34 /* wxcarbon.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = wxcarbon.xcconfig; sourceTree = ""; }; + D2AAC0C705546C1D00DB518D /* libwx_osx_carbon.dylib */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; path = libwx_osx_carbon.dylib; sourceTree = BUILT_PRODUCTS_DIR; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 404BEE5F10EC83280080E2B8 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + D2AAC0C505546C1D00DB518D /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 034768DFFF38A50411DB9C8B /* Products */ = { + isa = PBXGroup; + children = ( + D2AAC0C705546C1D00DB518D /* libwx_osx_carbon.dylib */, + 404BEE6110EC83280080E2B8 /* libwx_osx_carbon_static.a */, + ); + name = Products; + sourceTree = ""; + }; + 0867D691FE84028FC02AAC07 /* wxcocoa */ = { + isa = PBXGroup; + children = ( + 40E3507E10EF2C130029DC34 /* wxcarbon.xcconfig */, + 034768DFFF38A50411DB9C8B /* Products */, + ); + name = wxcocoa; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXHeadersBuildPhase section */ + 404BEE5D10EC83280080E2B8 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + D2AAC0C305546C1D00DB518D /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXHeadersBuildPhase section */ + +/* Begin PBXNativeTarget section */ + 404BEE6010EC83280080E2B8 /* static */ = { + isa = PBXNativeTarget; + buildConfigurationList = 404BEE6410EC83480080E2B8 /* Build configuration list for PBXNativeTarget "static" */; + buildPhases = ( + 404B023E10EC882E0080E2B8 /* ShellScript */, + 404BEE5D10EC83280080E2B8 /* Headers */, + 404BEE5E10EC83280080E2B8 /* Sources */, + 404BEE5F10EC83280080E2B8 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = static; + productName = static; + productReference = 404BEE6110EC83280080E2B8 /* libwx_osx_carbon_static.a */; + productType = "com.apple.product-type.library.static"; + }; + D2AAC0C605546C1D00DB518D /* dynamic */ = { + isa = PBXNativeTarget; + buildConfigurationList = 1DEB917D08733D990010E9CD /* Build configuration list for PBXNativeTarget "dynamic" */; + buildPhases = ( + 404B023C10EC88180080E2B8 /* ShellScript */, + D2AAC0C305546C1D00DB518D /* Headers */, + D2AAC0C405546C1D00DB518D /* Sources */, + D2AAC0C505546C1D00DB518D /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = dynamic; + productName = wxcocoa; + productReference = D2AAC0C705546C1D00DB518D /* libwx_osx_carbon.dylib */; + productType = "com.apple.product-type.library.dynamic"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 0867D690FE84028FC02AAC07 /* Project object */ = { + isa = PBXProject; + buildConfigurationList = 1DEB918108733D990010E9CD /* Build configuration list for PBXProject "wxcarbon_in" */; + compatibilityVersion = "Xcode 3.1"; + hasScannedForEncodings = 1; + mainGroup = 0867D691FE84028FC02AAC07 /* wxcocoa */; + productRefGroup = 034768DFFF38A50411DB9C8B /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + D2AAC0C605546C1D00DB518D /* dynamic */, + 404BEE6010EC83280080E2B8 /* static */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXShellScriptBuildPhase section */ + 404B023C10EC88180080E2B8 /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${WXROOT}/distrib/mac/pbsetup-sh\" \"${WXROOT}/src\" \"${WXROOT}/build/osx/setup/${WXTOOLKIT}\""; + }; + 404B023E10EC882E0080E2B8 /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${WXROOT}/distrib/mac/pbsetup-sh\" \"${WXROOT}/src\" \"${WXROOT}/build/osx/setup/${WXTOOLKIT}\""; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 404BEE5E10EC83280080E2B8 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + D2AAC0C405546C1D00DB518D /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin XCBuildConfiguration section */ + 1DEB917E08733D990010E9CD /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 40E3507E10EF2C130029DC34 /* wxcarbon.xcconfig */; + buildSettings = { + COPY_PHASE_STRIP = NO; + EXECUTABLE_PREFIX = lib; + GCC_DYNAMIC_NO_PIC = NO; + GCC_ENABLE_FIX_AND_CONTINUE = YES; + GCC_MODEL_TUNING = G5; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(GCC_PREPROCESSOR_DEFINITIONS)", + "__WXDEBUG__=1", + ); + INSTALL_PATH = "@executable_path/../Frameworks/"; + }; + name = Debug; + }; + 1DEB917F08733D990010E9CD /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 40E3507E10EF2C130029DC34 /* wxcarbon.xcconfig */; + buildSettings = { + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + EXECUTABLE_PREFIX = lib; + GCC_MODEL_TUNING = G5; + INSTALL_PATH = "@executable_path/../Frameworks/"; + }; + name = Release; + }; + 1DEB918208733D990010E9CD /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_64_BIT)"; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + ONLY_ACTIVE_ARCH = YES; + PREBINDING = NO; + SDKROOT = macosx10.6; + WXROOT = "$(PROJECT_DIR)/../.."; + }; + name = Debug; + }; + 1DEB918308733D990010E9CD /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_64_BIT)"; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + PREBINDING = NO; + SDKROOT = macosx10.6; + WXROOT = "$(PROJECT_DIR)/../.."; + }; + name = Release; + }; + 404BEE6210EC832A0080E2B8 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 40E3507E10EF2C130029DC34 /* wxcarbon.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + COPY_PHASE_STRIP = NO; + GCC_DYNAMIC_NO_PIC = NO; + GCC_ENABLE_FIX_AND_CONTINUE = YES; + GCC_MODEL_TUNING = G5; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(GCC_PREPROCESSOR_DEFINITIONS)", + "__WXDEBUG__=1", + ); + INSTALL_PATH = /usr/local/lib; + PREBINDING = NO; + PRODUCT_NAME = "$(PRODUCT_NAME)_static"; + }; + name = Debug; + }; + 404BEE6310EC832A0080E2B8 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 40E3507E10EF2C130029DC34 /* wxcarbon.xcconfig */; + buildSettings = { + COPY_PHASE_STRIP = YES; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + GCC_ENABLE_FIX_AND_CONTINUE = NO; + GCC_MODEL_TUNING = G5; + INSTALL_PATH = /usr/local/lib; + PREBINDING = NO; + PRODUCT_NAME = "$(PRODUCT_NAME)_static"; + ZERO_LINK = NO; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 1DEB917D08733D990010E9CD /* Build configuration list for PBXNativeTarget "dynamic" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 1DEB917E08733D990010E9CD /* Debug */, + 1DEB917F08733D990010E9CD /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 1DEB918108733D990010E9CD /* Build configuration list for PBXProject "wxcarbon_in" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 1DEB918208733D990010E9CD /* Debug */, + 1DEB918308733D990010E9CD /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 404BEE6410EC83480080E2B8 /* Build configuration list for PBXNativeTarget "static" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 404BEE6210EC832A0080E2B8 /* Debug */, + 404BEE6310EC832A0080E2B8 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 0867D690FE84028FC02AAC07 /* Project object */; +} diff --git a/build/osx/wxcocoa.xcconfig b/build/osx/wxcocoa.xcconfig new file mode 100644 index 0000000000..b649e81359 --- /dev/null +++ b/build/osx/wxcocoa.xcconfig @@ -0,0 +1,6 @@ +WXTOOLKIT = cocoa +WXTOOLKITUPPER = COCOA + +#include "wx.xcconfig" + +OTHER_LDFLAGS = -lz -framework WebKit -framework IOKit -framework Carbon -framework Cocoa -framework AudioToolbox -framework OpenGL -framework QuickTime diff --git a/build/osx/wxcocoa_in.xcodeproj/project.pbxproj b/build/osx/wxcocoa_in.xcodeproj/project.pbxproj new file mode 100644 index 0000000000..f20964b074 --- /dev/null +++ b/build/osx/wxcocoa_in.xcodeproj/project.pbxproj @@ -0,0 +1,296 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 45; + objects = { + +/* Begin PBXFileReference section */ + 404BEE6110EC83280080E2B8 /* libwx_osx_cocoa_static.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libwx_osx_cocoa_static.a; sourceTree = BUILT_PRODUCTS_DIR; }; + 404BEEC910EC872F0080E2B8 /* wxcocoa.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = wxcocoa.xcconfig; sourceTree = ""; }; + D2AAC0C705546C1D00DB518D /* libwx_osx_cocoa.dylib */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; path = libwx_osx_cocoa.dylib; sourceTree = BUILT_PRODUCTS_DIR; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 404BEE5F10EC83280080E2B8 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + D2AAC0C505546C1D00DB518D /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 034768DFFF38A50411DB9C8B /* Products */ = { + isa = PBXGroup; + children = ( + D2AAC0C705546C1D00DB518D /* libwx_osx_cocoa.dylib */, + 404BEE6110EC83280080E2B8 /* libwx_osx_cocoa_static.a */, + ); + name = Products; + sourceTree = ""; + }; + 0867D691FE84028FC02AAC07 /* wxcocoa */ = { + isa = PBXGroup; + children = ( + 404BEEC910EC872F0080E2B8 /* wxcocoa.xcconfig */, + 034768DFFF38A50411DB9C8B /* Products */, + ); + name = wxcocoa; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXHeadersBuildPhase section */ + 404BEE5D10EC83280080E2B8 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + D2AAC0C305546C1D00DB518D /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXHeadersBuildPhase section */ + +/* Begin PBXNativeTarget section */ + 404BEE6010EC83280080E2B8 /* static */ = { + isa = PBXNativeTarget; + buildConfigurationList = 404BEE6410EC83480080E2B8 /* Build configuration list for PBXNativeTarget "static" */; + buildPhases = ( + 404B023E10EC882E0080E2B8 /* ShellScript */, + 404BEE5D10EC83280080E2B8 /* Headers */, + 404BEE5E10EC83280080E2B8 /* Sources */, + 404BEE5F10EC83280080E2B8 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = static; + productName = static; + productReference = 404BEE6110EC83280080E2B8 /* libwx_osx_cocoa_static.a */; + productType = "com.apple.product-type.library.static"; + }; + D2AAC0C605546C1D00DB518D /* dynamic */ = { + isa = PBXNativeTarget; + buildConfigurationList = 1DEB917D08733D990010E9CD /* Build configuration list for PBXNativeTarget "dynamic" */; + buildPhases = ( + 404B023C10EC88180080E2B8 /* ShellScript */, + D2AAC0C305546C1D00DB518D /* Headers */, + D2AAC0C405546C1D00DB518D /* Sources */, + D2AAC0C505546C1D00DB518D /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = dynamic; + productName = wxcocoa; + productReference = D2AAC0C705546C1D00DB518D /* libwx_osx_cocoa.dylib */; + productType = "com.apple.product-type.library.dynamic"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 0867D690FE84028FC02AAC07 /* Project object */ = { + isa = PBXProject; + buildConfigurationList = 1DEB918108733D990010E9CD /* Build configuration list for PBXProject "wxcocoa_in" */; + compatibilityVersion = "Xcode 3.1"; + hasScannedForEncodings = 1; + mainGroup = 0867D691FE84028FC02AAC07 /* wxcocoa */; + productRefGroup = 034768DFFF38A50411DB9C8B /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + D2AAC0C605546C1D00DB518D /* dynamic */, + 404BEE6010EC83280080E2B8 /* static */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXShellScriptBuildPhase section */ + 404B023C10EC88180080E2B8 /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${WXROOT}/distrib/mac/pbsetup-sh\" \"${WXROOT}/src\" \"${WXROOT}/build/osx/setup/${WXTOOLKIT}\""; + }; + 404B023E10EC882E0080E2B8 /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${WXROOT}/distrib/mac/pbsetup-sh\" \"${WXROOT}/src\" \"${WXROOT}/build/osx/setup/${WXTOOLKIT}\""; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 404BEE5E10EC83280080E2B8 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + D2AAC0C405546C1D00DB518D /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin XCBuildConfiguration section */ + 1DEB917E08733D990010E9CD /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 404BEEC910EC872F0080E2B8 /* wxcocoa.xcconfig */; + buildSettings = { + COPY_PHASE_STRIP = NO; + EXECUTABLE_PREFIX = lib; + GCC_DYNAMIC_NO_PIC = NO; + GCC_ENABLE_FIX_AND_CONTINUE = YES; + GCC_MODEL_TUNING = G5; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(GCC_PREPROCESSOR_DEFINITIONS)", + "__WXDEBUG__=1", + ); + INSTALL_PATH = "@executable_path/../Frameworks/"; + }; + name = Debug; + }; + 1DEB917F08733D990010E9CD /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 404BEEC910EC872F0080E2B8 /* wxcocoa.xcconfig */; + buildSettings = { + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + EXECUTABLE_PREFIX = lib; + GCC_MODEL_TUNING = G5; + INSTALL_PATH = "@executable_path/../Frameworks/"; + }; + name = Release; + }; + 1DEB918208733D990010E9CD /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_64_BIT)"; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + ONLY_ACTIVE_ARCH = YES; + PREBINDING = NO; + SDKROOT = macosx10.6; + WXROOT = "$(PROJECT_DIR)/../.."; + }; + name = Debug; + }; + 1DEB918308733D990010E9CD /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_64_BIT)"; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + PREBINDING = NO; + SDKROOT = macosx10.6; + WXROOT = "$(PROJECT_DIR)/../.."; + }; + name = Release; + }; + 404BEE6210EC832A0080E2B8 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 404BEEC910EC872F0080E2B8 /* wxcocoa.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + COPY_PHASE_STRIP = NO; + GCC_DYNAMIC_NO_PIC = NO; + GCC_ENABLE_FIX_AND_CONTINUE = YES; + GCC_MODEL_TUNING = G5; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(GCC_PREPROCESSOR_DEFINITIONS)", + "__WXDEBUG__=1", + ); + INSTALL_PATH = /usr/local/lib; + PREBINDING = NO; + PRODUCT_NAME = "$(PRODUCT_NAME)_static"; + }; + name = Debug; + }; + 404BEE6310EC832A0080E2B8 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 404BEEC910EC872F0080E2B8 /* wxcocoa.xcconfig */; + buildSettings = { + COPY_PHASE_STRIP = YES; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + GCC_ENABLE_FIX_AND_CONTINUE = NO; + GCC_MODEL_TUNING = G5; + INSTALL_PATH = /usr/local/lib; + PREBINDING = NO; + PRODUCT_NAME = "$(PRODUCT_NAME)_static"; + ZERO_LINK = NO; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 1DEB917D08733D990010E9CD /* Build configuration list for PBXNativeTarget "dynamic" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 1DEB917E08733D990010E9CD /* Debug */, + 1DEB917F08733D990010E9CD /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 1DEB918108733D990010E9CD /* Build configuration list for PBXProject "wxcocoa_in" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 1DEB918208733D990010E9CD /* Debug */, + 1DEB918308733D990010E9CD /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 404BEE6410EC83480080E2B8 /* Build configuration list for PBXNativeTarget "static" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 404BEE6210EC832A0080E2B8 /* Debug */, + 404BEE6310EC832A0080E2B8 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 0867D690FE84028FC02AAC07 /* Project object */; +} diff --git a/build/osx/wxiphone.xcconfig b/build/osx/wxiphone.xcconfig new file mode 100644 index 0000000000..030eec9729 --- /dev/null +++ b/build/osx/wxiphone.xcconfig @@ -0,0 +1,4 @@ +WXTOOLKIT = iphone +WXTOOLKITUPPER = IPHONE + +#include "wx.xcconfig" \ No newline at end of file diff --git a/build/osx/wxiphone_in.xcodeproj/project.pbxproj b/build/osx/wxiphone_in.xcodeproj/project.pbxproj new file mode 100644 index 0000000000..88a54150a7 --- /dev/null +++ b/build/osx/wxiphone_in.xcodeproj/project.pbxproj @@ -0,0 +1,215 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 45; + objects = { + +/* Begin PBXBuildFile section */ + AACBBE4A0F95108600F1A2B1 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AACBBE490F95108600F1A2B1 /* Foundation.framework */; }; +/* End PBXBuildFile section */ + +/* Begin PBXFileReference section */ + 404BECEE10EBF6330080E2B8 /* wxiphone.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = wxiphone.xcconfig; sourceTree = ""; }; + AACBBE490F95108600F1A2B1 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; + D2AAC07E0554694100DB518D /* libwx_osx_iphone.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libwx_osx_iphone.a; sourceTree = BUILT_PRODUCTS_DIR; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + D2AAC07C0554694100DB518D /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + AACBBE4A0F95108600F1A2B1 /* Foundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 034768DFFF38A50411DB9C8B /* Products */ = { + isa = PBXGroup; + children = ( + D2AAC07E0554694100DB518D /* libwx_osx_iphone.a */, + ); + name = Products; + sourceTree = ""; + }; + 0867D691FE84028FC02AAC07 /* wxiPhone */ = { + isa = PBXGroup; + children = ( + 0867D69AFE84028FC02AAC07 /* Frameworks */, + 034768DFFF38A50411DB9C8B /* Products */, + 404BECEE10EBF6330080E2B8 /* wxiphone.xcconfig */, + ); + name = wxiPhone; + sourceTree = ""; + }; + 0867D69AFE84028FC02AAC07 /* Frameworks */ = { + isa = PBXGroup; + children = ( + AACBBE490F95108600F1A2B1 /* Foundation.framework */, + ); + name = Frameworks; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXHeadersBuildPhase section */ + D2AAC07A0554694100DB518D /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXHeadersBuildPhase section */ + +/* Begin PBXNativeTarget section */ + D2AAC07D0554694100DB518D /* static */ = { + isa = PBXNativeTarget; + buildConfigurationList = 1DEB921E08733DC00010E9CD /* Build configuration list for PBXNativeTarget "static" */; + buildPhases = ( + 4095368310EBBDC800857D4F /* ShellScript */, + D2AAC07A0554694100DB518D /* Headers */, + D2AAC07B0554694100DB518D /* Sources */, + D2AAC07C0554694100DB518D /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = static; + productName = wxiPhone; + productReference = D2AAC07E0554694100DB518D /* libwx_osx_iphone.a */; + productType = "com.apple.product-type.library.static"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 0867D690FE84028FC02AAC07 /* Project object */ = { + isa = PBXProject; + buildConfigurationList = 1DEB922208733DC00010E9CD /* Build configuration list for PBXProject "wxiphone_in" */; + compatibilityVersion = "Xcode 3.1"; + hasScannedForEncodings = 1; + mainGroup = 0867D691FE84028FC02AAC07 /* wxiPhone */; + productRefGroup = 034768DFFF38A50411DB9C8B /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + D2AAC07D0554694100DB518D /* static */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXShellScriptBuildPhase section */ + 4095368310EBBDC800857D4F /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${WXROOT}/distrib/mac/pbsetup-sh\" \"${WXROOT}/src\" \"${WXROOT}/build/osx/setup/${WXTOOLKIT}\""; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + D2AAC07B0554694100DB518D /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin XCBuildConfiguration section */ + 1DEB921F08733DC00010E9CD /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 404BECEE10EBF6330080E2B8 /* wxiphone.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_BIT)"; + COPY_PHASE_STRIP = NO; + DSTROOT = /tmp/wxiPhone.dst; + GCC_DYNAMIC_NO_PIC = NO; + GCC_ENABLE_FIX_AND_CONTINUE = YES; + GCC_MODEL_TUNING = G5; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "$(GCC_PREPROCESSOR_DEFINITIONS)", + "__WXDEBUG__=1", + ); + INSTALL_PATH = /usr/local/lib; + }; + name = Debug; + }; + 1DEB922008733DC00010E9CD /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 404BECEE10EBF6330080E2B8 /* wxiphone.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_BIT)"; + DSTROOT = /tmp/wxiPhone.dst; + GCC_MODEL_TUNING = G5; + INSTALL_PATH = /usr/local/lib; + PRODUCT_NAME = wx_osx_iphone; + }; + name = Release; + }; + 1DEB922308733DC00010E9CD /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_BIT)"; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + OTHER_LDFLAGS = "-ObjC"; + PREBINDING = NO; + SDKROOT = iphoneos3.1.2; + WXROOT = "$(PROJECT_DIR)/../.."; + }; + name = Debug; + }; + 1DEB922408733DC00010E9CD /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_BIT)"; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + OTHER_LDFLAGS = "-ObjC"; + PREBINDING = NO; + SDKROOT = iphoneos3.1.2; + WXROOT = "$(PROJECT_DIR)/../.."; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 1DEB921E08733DC00010E9CD /* Build configuration list for PBXNativeTarget "static" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 1DEB921F08733DC00010E9CD /* Debug */, + 1DEB922008733DC00010E9CD /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 1DEB922208733DC00010E9CD /* Build configuration list for PBXProject "wxiphone_in" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 1DEB922308733DC00010E9CD /* Debug */, + 1DEB922408733DC00010E9CD /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 0867D690FE84028FC02AAC07 /* Project object */; +} diff --git a/build/osx/wxvers.xcconfig b/build/osx/wxvers.xcconfig new file mode 100644 index 0000000000..fe371c8519 --- /dev/null +++ b/build/osx/wxvers.xcconfig @@ -0,0 +1,4 @@ +// update this file with new version numbers + +DYLIB_COMPATIBILITY_VERSION = 2.9 +DYLIB_CURRENT_VERSION = 2.9.0