diff options
author | 2019-09-29 15:30:18 +0200 | |
---|---|---|
committer | 2019-09-29 09:30:18 -0400 | |
commit | ed2b7e5ef1626c0d6318b6ea71897efbb4356277 (patch) | |
tree | 62a84a4a2c804922839dbfa60ec664b84beaaee0 /3rdparty/genie/tests/actions/xcode/test_xcode_project.lua | |
parent | 1bd1288c9e17bdba9544d1e56be7618106fece7e (diff) |
Synced with GENie upstream revision e78d6c1 (#5631)
* Synced with GENie upstream revision e78d6c1
* Add Visual Studio 2019 support
* Fix hardcoded -m64
* Switch appveyor to Visual Studio 2019
* Fix genie being built as 32-bit
* MSVC build is known to be broken currently. Let it fail until all the known issues are fixed.
* Update the packages before building
* Build with 3 threads
Appveyor VMs have only 2 cores and 8 GB RAM.
* Enable caching of pacman cache
Diffstat (limited to '3rdparty/genie/tests/actions/xcode/test_xcode_project.lua')
-rw-r--r-- | 3rdparty/genie/tests/actions/xcode/test_xcode_project.lua | 2025 |
1 files changed, 0 insertions, 2025 deletions
diff --git a/3rdparty/genie/tests/actions/xcode/test_xcode_project.lua b/3rdparty/genie/tests/actions/xcode/test_xcode_project.lua deleted file mode 100644 index 608e399583b..00000000000 --- a/3rdparty/genie/tests/actions/xcode/test_xcode_project.lua +++ /dev/null @@ -1,2025 +0,0 @@ --- --- tests/actions/xcode/test_xcode_project.lua --- Automated test suite for Xcode project generation. --- Copyright (c) 2009-2011 Jason Perkins and the Premake project --- - - T.xcode3_project = { } - - local suite = T.xcode3_project - local xcode = premake.xcode - - ---------------------------------------------------------------------------- --- Setup/Teardown ---------------------------------------------------------------------------- - - local sln, tr - function suite.setup() - _OS = "macosx" - _ACTION = "xcode3" - io.eol = "\n" - xcode.used_ids = { } -- reset the list of generated IDs - sln = test.createsolution() - end - - local function prepare() - premake.bake.buildconfigs() - xcode.preparesolution(sln) - local prj = premake.solution.getproject(sln, 1) - tr = xcode.buildprjtree(prj) - end - - ---------------------------------------------------------------------------- --- PBXBuildFile tests ---------------------------------------------------------------------------- - - function suite.PBXBuildFile_ListsCppSources() - files { "source.h", "source.c", "source.cpp", "Info.plist" } - prepare() - xcode.PBXBuildFile(tr) - test.capture [[ -/* Begin PBXBuildFile section */ - [source.c:build] /* source.c in Sources */ = {isa = PBXBuildFile; fileRef = [source.c] /* source.c */; }; - [source.cpp:build] /* source.cpp in Sources */ = {isa = PBXBuildFile; fileRef = [source.cpp] /* source.cpp */; }; -/* End PBXBuildFile section */ - ]] - end - - function suite.PBXBuildFile_ListsObjCSources() - files { "source.h", "source.m", "source.mm", "Info.plist" } - prepare() - xcode.PBXBuildFile(tr) - test.capture [[ -/* Begin PBXBuildFile section */ - [source.m:build] /* source.m in Sources */ = {isa = PBXBuildFile; fileRef = [source.m] /* source.m */; }; - [source.mm:build] /* source.mm in Sources */ = {isa = PBXBuildFile; fileRef = [source.mm] /* source.mm */; }; -/* End PBXBuildFile section */ - ]] - end - - function suite.PBXBuildFile_ListsResourceFilesOnlyOnceWithGroupID() - files { "English.lproj/MainMenu.xib", "French.lproj/MainMenu.xib" } - prepare() - xcode.PBXBuildFile(tr) - test.capture [[ -/* Begin PBXBuildFile section */ - [MainMenu.xib:build] /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = [MainMenu.xib] /* MainMenu.xib */; }; -/* End PBXBuildFile section */ - ]] - end - - - function suite.PBXBuildFile_ListsFrameworks() - links { "Cocoa.framework", "ldap" } - prepare() - xcode.PBXBuildFile(tr) - test.capture [[ -/* Begin PBXBuildFile section */ - [Cocoa.framework:build] /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = [Cocoa.framework] /* Cocoa.framework */; }; -/* End PBXBuildFile section */ - ]] - end - - function suite.PBXBuildFile_IgnoresVpaths() - files { "source.h", "source.c", "source.cpp", "Info.plist" } - vpaths { ["Source Files"] = { "**.c", "**.cpp" } } - prepare() - xcode.PBXBuildFile(tr) - test.capture [[ -/* Begin PBXBuildFile section */ - [source.c:build] /* source.c in Sources */ = {isa = PBXBuildFile; fileRef = [source.c] /* source.c */; }; - [source.cpp:build] /* source.cpp in Sources */ = {isa = PBXBuildFile; fileRef = [source.cpp] /* source.cpp */; }; -/* End PBXBuildFile section */ - ]] - end - - ---------------------------------------------------------------------------- --- PBXFileReference tests ---------------------------------------------------------------------------- - - function suite.PBXFileReference_ListsConsoleTarget() - prepare() - xcode.PBXFileReference(tr) - test.capture [[ -/* Begin PBXFileReference section */ - [MyProject:product] /* MyProject */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; name = "MyProject"; path = "MyProject"; sourceTree = BUILT_PRODUCTS_DIR; }; -/* End PBXFileReference section */ - ]] - end - - - function suite.PBXFileReference_ListsWindowedTarget() - kind "WindowedApp" - prepare() - xcode.PBXFileReference(tr) - test.capture [[ -/* Begin PBXFileReference section */ - [MyProject.app:product] /* MyProject.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; name = "MyProject.app"; path = "MyProject.app"; sourceTree = BUILT_PRODUCTS_DIR; }; -/* End PBXFileReference section */ - ]] - end - - - function suite.PBXFileReference_ListsStaticLibTarget() - kind "StaticLib" - prepare() - xcode.PBXFileReference(tr) - test.capture [[ -/* Begin PBXFileReference section */ - [libMyProject.a:product] /* libMyProject.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libMyProject.a"; path = "libMyProject.a"; sourceTree = BUILT_PRODUCTS_DIR; }; -/* End PBXFileReference section */ - ]] - end - - - function suite.PBXFileReference_ListsSharedLibTarget() - kind "SharedLib" - prepare() - xcode.PBXFileReference(tr) - test.capture [[ -/* Begin PBXFileReference section */ - [libMyProject.dylib:product] /* libMyProject.dylib */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; name = "libMyProject.dylib"; path = "libMyProject.dylib"; sourceTree = BUILT_PRODUCTS_DIR; }; -/* End PBXFileReference section */ - ]] - end - - - function suite.PBXFileReference_ListsBundleTarget() - kind "Bundle" - prepare() - xcode.PBXFileReference(tr) - test.capture [[ -/* Begin PBXFileReference section */ - [MyProject.bundle:product] /* MyProject.bundle */ = {isa = PBXFileReference; explicitFileType = "wrapper.cfbundle"; includeInIndex = 0; name = "MyProject.bundle"; path = "MyProject.bundle"; sourceTree = BUILT_PRODUCTS_DIR; }; -/* End PBXFileReference section */ - ]] - end - - - function suite.PBXFileReference_ListsSourceFiles() - files { "source.c" } - prepare() - xcode.PBXFileReference(tr) - test.capture [[ -/* Begin PBXFileReference section */ - [source.c] /* source.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = "source.c"; path = "source.c"; sourceTree = "<group>"; }; - ]] - end - - - function suite.PBXFileReference_ListsXibCorrectly() - files { "English.lproj/MainMenu.xib", "French.lproj/MainMenu.xib" } - prepare() - xcode.PBXFileReference(tr) - test.capture [[ -/* Begin PBXFileReference section */ - [English] /* English */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = "English"; path = "English.lproj/MainMenu.xib"; sourceTree = "<group>"; }; - [French] /* French */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = "French"; path = "French.lproj/MainMenu.xib"; sourceTree = "<group>"; }; - ]] - end - - - function suite.PBXFileReference_ListsStringsCorrectly() - files { "English.lproj/InfoPlist.strings", "French.lproj/InfoPlist.strings" } - prepare() - xcode.PBXFileReference(tr) - test.capture [[ -/* Begin PBXFileReference section */ - [English] /* English */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "English"; path = "English.lproj/InfoPlist.strings"; sourceTree = "<group>"; }; - [French] /* French */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "French"; path = "French.lproj/InfoPlist.strings"; sourceTree = "<group>"; }; - ]] - end - - - function suite.PBXFileReference_ListFrameworksCorrectly() - links { "Cocoa.framework" } - prepare() - xcode.PBXFileReference(tr) - test.capture [[ -/* Begin PBXFileReference section */ - [Cocoa.framework] /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = "Cocoa.framework"; path = "/System/Library/Frameworks/Cocoa.framework"; sourceTree = "<absolute>"; }; - ]] - end - - - function suite.PBXFileReference_leavesFrameworkLocationsAsIsWhenSupplied_pathIsSetToInput() - local inputFrameWork = 'somedir/Foo.framework' - links(inputFrameWork) - prepare() - - io.capture() - xcode.PBXFileReference(tr) - local buffer = io.endcapture() - - test.string_contains(buffer,'path = "'..inputFrameWork..'"') - end - - - function suite.PBXFileReference_relativeFrameworkPathSupplied_callsError() - local inputFrameWork = '../somedir/Foo.framework' - links(inputFrameWork) - prepare() - local error_called = false - local old_error = error - error = function( ... )error_called = true end - xcode.PBXFileReference(tr) - error = old_error - test.istrue(error_called) - end - - function suite.PBXFileReference_ListsIconFiles() - files { "Icon.icns" } - prepare() - xcode.PBXFileReference(tr) - test.capture [[ -/* Begin PBXFileReference section */ - [Icon.icns] /* Icon.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; name = "Icon.icns"; path = "Icon.icns"; sourceTree = "<group>"; }; - ]] - end - - function suite.PBXFileReference_IgnoresTargetDir() - targetdir "bin" - kind "WindowedApp" - prepare() - xcode.PBXFileReference(tr) - test.capture [[ -/* Begin PBXFileReference section */ - [MyProject.app:product] /* MyProject.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; name = "MyProject.app"; path = "MyProject.app"; sourceTree = BUILT_PRODUCTS_DIR; }; -/* End PBXFileReference section */ - ]] - end - - - function suite.PBXFileReference_UsesTargetSuffix() - targetsuffix "-d" - kind "SharedLib" - prepare() - xcode.PBXFileReference(tr) - test.capture [[ -/* Begin PBXFileReference section */ - [libMyProject-d.dylib:product] /* libMyProject-d.dylib */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; includeInIndex = 0; name = "libMyProject-d.dylib"; path = "libMyProject-d.dylib"; sourceTree = BUILT_PRODUCTS_DIR; }; -/* End PBXFileReference section */ - ]] - end - - - function suite.PBXFileReference_UsesFullPath_WhenParentIsVirtual() - files { "src/source.c" } - vpaths { ["Source Files"] = "**.c" } - prepare() - xcode.PBXFileReference(tr) - test.capture [[ -/* Begin PBXFileReference section */ - [source.c] /* source.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; name = "source.c"; path = "src/source.c"; sourceTree = "<group>"; }; - ]] - end - - ---------------------------------------------------------------------------- --- PBXFrameworksBuildPhase tests ---------------------------------------------------------------------------- - - function suite.PBXFrameworksBuildPhase_OnNoFiles() - prepare() - xcode.PBXFrameworksBuildPhase(tr) - test.capture [[ -/* Begin PBXFrameworksBuildPhase section */ - [MyProject:fxs] /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - ]] - end - - - function suite.PBXFrameworksBuild_ListsFrameworksCorrectly() - links { "Cocoa.framework" } - prepare() - xcode.PBXFrameworksBuildPhase(tr) - test.capture [[ -/* Begin PBXFrameworksBuildPhase section */ - [MyProject:fxs] /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - [Cocoa.framework:build] /* Cocoa.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - ]] - end - - ---------------------------------------------------------------------------- --- PBXGroup tests ---------------------------------------------------------------------------- - - function suite.PBXGroup_OnNoFiles() - prepare() - xcode.PBXGroup(tr) - test.capture [[ -/* Begin PBXGroup section */ - [MyProject] /* MyProject */ = { - isa = PBXGroup; - children = ( - [Products] /* Products */, - ); - name = "MyProject"; - sourceTree = "<group>"; - }; - [Products] /* Products */ = { - isa = PBXGroup; - children = ( - [MyProject:product] /* MyProject */, - ); - name = "Products"; - sourceTree = "<group>"; - }; -/* End PBXGroup section */ - ]] - end - - - function suite.PBXGroup_OnSourceFiles() - files { "source.h" } - prepare() - xcode.PBXGroup(tr) - test.capture [[ -/* Begin PBXGroup section */ - [MyProject] /* MyProject */ = { - isa = PBXGroup; - children = ( - [source.h] /* source.h */, - [Products] /* Products */, - ); - name = "MyProject"; - sourceTree = "<group>"; - }; - [Products] /* Products */ = { - isa = PBXGroup; - children = ( - [MyProject:product] /* MyProject */, - ); - name = "Products"; - sourceTree = "<group>"; - }; -/* End PBXGroup section */ - ]] - end - - - function suite.PBXGroup_OnSourceSubdirs() - files { "include/premake/source.h" } - prepare() - xcode.PBXGroup(tr) - test.capture [[ -/* Begin PBXGroup section */ - [MyProject] /* MyProject */ = { - isa = PBXGroup; - children = ( - [include] /* include */, - [Products] /* Products */, - ); - name = "MyProject"; - sourceTree = "<group>"; - }; - [include] /* include */ = { - isa = PBXGroup; - children = ( - [premake] /* premake */, - ); - name = "include"; - path = "include"; - sourceTree = "<group>"; - }; - [premake] /* premake */ = { - isa = PBXGroup; - children = ( - [source.h] /* source.h */, - ); - name = "premake"; - path = "premake"; - sourceTree = "<group>"; - }; - ]] - end - - - function suite.PBXGroup_pathHasPlusPlus_PathIsQuoted() - files { "RequiresQuoting++/h.h" } - prepare() - xcode.PBXGroup(tr) - test.string_contains( io.endcapture(),'path = "RequiresQuoting%+%+";' ) - end - - function suite.PBXGroup_SortsFiles() - files { "test.h", "source.h", "source.cpp" } - prepare() - xcode.PBXGroup(tr) - test.capture [[ -/* Begin PBXGroup section */ - [MyProject] /* MyProject */ = { - isa = PBXGroup; - children = ( - [source.cpp] /* source.cpp */, - [source.h] /* source.h */, - [test.h] /* test.h */, - [Products] /* Products */, - ); - name = "MyProject"; - sourceTree = "<group>"; - }; - [Products] /* Products */ = { - isa = PBXGroup; - children = ( - [MyProject:product] /* MyProject */, - ); - name = "Products"; - sourceTree = "<group>"; - }; -/* End PBXGroup section */ - ]] - end - - - function suite.PBXGroup_OnResourceFiles() - files { "English.lproj/MainMenu.xib", "French.lproj/MainMenu.xib", "Info.plist" } - prepare() - xcode.PBXGroup(tr) - test.capture [[ -/* Begin PBXGroup section */ - [MyProject] /* MyProject */ = { - isa = PBXGroup; - children = ( - [Info.plist] /* Info.plist */, - [MainMenu.xib] /* MainMenu.xib */, - [Products] /* Products */, - ); - name = "MyProject"; - sourceTree = "<group>"; - }; - [Products] /* Products */ = { - isa = PBXGroup; - children = ( - [MyProject:product] /* MyProject */, - ); - name = "Products"; - sourceTree = "<group>"; - }; -/* End PBXGroup section */ - ]] - end - - - function suite.PBXGroup_OnFrameworks() - links { "Cocoa.framework" } - prepare() - xcode.PBXGroup(tr) - test.capture [[ -/* Begin PBXGroup section */ - [MyProject] /* MyProject */ = { - isa = PBXGroup; - children = ( - [Frameworks] /* Frameworks */, - [Products] /* Products */, - ); - name = "MyProject"; - sourceTree = "<group>"; - }; - [Frameworks] /* Frameworks */ = { - isa = PBXGroup; - children = ( - [Cocoa.framework] /* Cocoa.framework */, - ); - name = "Frameworks"; - sourceTree = "<group>"; - }; - ]] - end - - - function suite.PBXGroup_OnVpaths() - files { "include/premake/source.h" } - vpaths { ["Headers"] = "**.h" } - prepare() - xcode.PBXGroup(tr) - test.capture [[ -/* Begin PBXGroup section */ - [MyProject] /* MyProject */ = { - isa = PBXGroup; - children = ( - [Headers] /* Headers */, - [Products] /* Products */, - ); - name = "MyProject"; - sourceTree = "<group>"; - }; - [Headers] /* Headers */ = { - isa = PBXGroup; - children = ( - [source.h] /* source.h */, - ); - name = "Headers"; - sourceTree = "<group>"; - }; - ]] - end - - ---------------------------------------------------------------------------- --- PBXNativeTarget tests ---------------------------------------------------------------------------- - - function suite.PBXNativeTarget_OnConsoleApp() - prepare() - xcode.PBXNativeTarget(tr) - test.capture [[ -/* Begin PBXNativeTarget section */ - [MyProject:target] /* MyProject */ = { - isa = PBXNativeTarget; - buildConfigurationList = [MyProject:cfg] /* Build configuration list for PBXNativeTarget "MyProject" */; - buildPhases = ( - [MyProject:rez] /* Resources */, - [MyProject:src] /* Sources */, - [MyProject:fxs] /* Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = "MyProject"; - productInstallPath = "$(HOME)/bin"; - productName = "MyProject"; - productReference = [MyProject:product] /* MyProject */; - productType = "com.apple.product-type.tool"; - }; -/* End PBXNativeTarget section */ - ]] - end - - - function suite.PBXNativeTarget_OnWindowedApp() - kind "WindowedApp" - prepare() - xcode.PBXNativeTarget(tr) - test.capture [[ -/* Begin PBXNativeTarget section */ - [MyProject.app:target] /* MyProject */ = { - isa = PBXNativeTarget; - buildConfigurationList = [MyProject.app:cfg] /* Build configuration list for PBXNativeTarget "MyProject" */; - buildPhases = ( - [MyProject.app:rez] /* Resources */, - [MyProject.app:src] /* Sources */, - [MyProject.app:fxs] /* Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = "MyProject"; - productInstallPath = "$(HOME)/Applications"; - productName = "MyProject"; - productReference = [MyProject.app:product] /* MyProject.app */; - productType = "com.apple.product-type.application"; - }; -/* End PBXNativeTarget section */ - ]] - end - - - function suite.PBXNativeTarget_OnSharedLib() - kind "SharedLib" - prepare() - xcode.PBXNativeTarget(tr) - test.capture [[ -/* Begin PBXNativeTarget section */ - [libMyProject.dylib:target] /* MyProject */ = { - isa = PBXNativeTarget; - buildConfigurationList = [libMyProject.dylib:cfg] /* Build configuration list for PBXNativeTarget "MyProject" */; - buildPhases = ( - [libMyProject.dylib:rez] /* Resources */, - [libMyProject.dylib:src] /* Sources */, - [libMyProject.dylib:fxs] /* Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = "MyProject"; - productName = "MyProject"; - productReference = [libMyProject.dylib:product] /* libMyProject.dylib */; - productType = "com.apple.product-type.library.dynamic"; - }; -/* End PBXNativeTarget section */ - ]] - end - - - function suite.PBXNativeTarget_OnBundle() - kind "Bundle" - prepare() - xcode.PBXNativeTarget(tr) --TODO adapt - test.capture [[ -/* Begin PBXNativeTarget section */ - MyProject.bundle:target] /* MyProject */ = { - isa = PBXNativeTarget; - buildConfigurationList = [MyProject.bundle:cfg] /* Build configuration list for PBXNativeTarget "MyProject" */; - buildPhases = ( - [MyProject.bundle:rez] /* Resources */, - [MyProject.bundle:src] /* Sources */, - [MyProject.bundle:fxs] /* Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = "MyProject"; - productName = "MyProject"; - productReference = [MyProject.bundle:product] /* MyProject.bundle */; - productType = "com.apple.product-type.bundle"; - }; -/* End PBXNativeTarget section */ - ]] - end - - - function suite.PBXNativeTarget_OnBuildCommands() - prebuildcommands { "prebuildcmd" } - prelinkcommands { "prelinkcmd" } - postbuildcommands { "postbuildcmd" } - prepare() - xcode.PBXNativeTarget(tr) - test.capture [[ -/* Begin PBXNativeTarget section */ - [MyProject:target] /* MyProject */ = { - isa = PBXNativeTarget; - buildConfigurationList = [MyProject:cfg] /* Build configuration list for PBXNativeTarget "MyProject" */; - buildPhases = ( - 9607AE1010C857E500CD1376 /* Prebuild */, - [MyProject:rez] /* Resources */, - [MyProject:src] /* Sources */, - 9607AE3510C85E7E00CD1376 /* Prelink */, - [MyProject:fxs] /* Frameworks */, - 9607AE3710C85E8F00CD1376 /* Postbuild */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = "MyProject"; - productInstallPath = "$(HOME)/bin"; - productName = "MyProject"; - productReference = [MyProject:product] /* MyProject */; - productType = "com.apple.product-type.tool"; - }; -/* End PBXNativeTarget section */ - ]] - end - - ---------------------------------------------------------------------------- --- PBXProject tests ---------------------------------------------------------------------------- - - function suite.PBXProject_OnProject() - prepare() - xcode.PBXProject(tr) - test.capture [[ -/* Begin PBXProject section */ - 08FB7793FE84155DC02AAC07 /* Project object */ = { - isa = PBXProject; - buildConfigurationList = 1DEB928908733DD80010E9CD /* Build configuration list for PBXProject "MyProject" */; - compatibilityVersion = "Xcode 3.2"; - hasScannedForEncodings = 1; - mainGroup = [MyProject] /* MyProject */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - [MyProject:target] /* MyProject */, - ); - }; -/* End PBXProject section */ - ]] - end - - ---------------------------------------------------------------------------- --- PBXResourceBuildPhase tests ---------------------------------------------------------------------------- - - function suite.PBXResourcesBuildPhase_OnNoResources() - prepare() - xcode.PBXResourcesBuildPhase(tr) - test.capture [[ -/* Begin PBXResourcesBuildPhase section */ - [MyProject:rez] /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - ]] - end - - - function suite.PBXResourcesBuildPhase_OnResources() - files { "English.lproj/MainMenu.xib", "French.lproj/MainMenu.xib", "Info.plist" } - prepare() - xcode.PBXResourcesBuildPhase(tr) - test.capture [[ -/* Begin PBXResourcesBuildPhase section */ - [MyProject:rez] /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - [MainMenu.xib:build] /* MainMenu.xib in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - ]] - end - - ---------------------------------------------------------------------------- --- PBXShellScriptBuildPhase tests ---------------------------------------------------------------------------- - - function suite.PBXShellScriptBuildPhase_OnNoScripts() - prepare() - xcode.PBXShellScriptBuildPhase(tr) - test.capture [[ - ]] - end - - - function suite.PBXShellScriptBuildPhase_OnPrebuildScripts() - prebuildcommands { 'ls src', 'cp "a" "b"' } - prepare() - xcode.PBXShellScriptBuildPhase(tr) - test.capture [[ -/* Begin PBXShellScriptBuildPhase section */ - 9607AE1010C857E500CD1376 /* Prebuild */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = Prebuild; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "ls src\ncp \"a\" \"b\""; - }; -/* End PBXShellScriptBuildPhase section */ - ]] - end - - - function suite.PBXShellScriptBuildPhase_OnPerConfigCmds() - prebuildcommands { 'ls src' } - configuration "Debug" - prebuildcommands { 'cp a b' } - prepare() - xcode.PBXShellScriptBuildPhase(tr) - test.capture [[ -/* Begin PBXShellScriptBuildPhase section */ - 9607AE1010C857E500CD1376 /* Prebuild */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = Prebuild; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "ls src\nif [ \"${CONFIGURATION}\" = \"Debug\" ]; then\ncp a b\nfi"; - }; -/* End PBXShellScriptBuildPhase section */ - ]] - end - - ---------------------------------------------------------------------------- --- PBXSourcesBuildPhase tests ---------------------------------------------------------------------------- - - function suite.PBXSourcesBuildPhase_OnNoSources() - prepare() - xcode.PBXSourcesBuildPhase(tr) - test.capture [[ -/* Begin PBXSourcesBuildPhase section */ - [MyProject:src] /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - ]] - end - - - function suite.PBXSourcesBuildPhase_OnSources() - files { "hello.cpp", "goodbye.cpp" } - prepare() - xcode.PBXSourcesBuildPhase(tr) - test.capture [[ -/* Begin PBXSourcesBuildPhase section */ - [MyProject:src] /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - [goodbye.cpp:build] /* goodbye.cpp in Sources */, - [hello.cpp:build] /* hello.cpp in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - ]] - end - - ---------------------------------------------------------------------------- --- PBXVariantGroup tests ---------------------------------------------------------------------------- - - function suite.PBXVariantGroup_OnNoGroups() - prepare() - xcode.PBXVariantGroup(tr) - test.capture [[ -/* Begin PBXVariantGroup section */ -/* End PBXVariantGroup section */ - ]] - end - - - function suite.PBXVariantGroup_OnNoResourceGroups() - files { "English.lproj/MainMenu.xib", "French.lproj/MainMenu.xib" } - prepare() - xcode.PBXVariantGroup(tr) - test.capture [[ -/* Begin PBXVariantGroup section */ - [MainMenu.xib] /* MainMenu.xib */ = { - isa = PBXVariantGroup; - children = ( - [English] /* English */, - [French] /* French */, - ); - name = MainMenu.xib; - sourceTree = "<group>"; - }; -/* End PBXVariantGroup section */ - ]] - end - - ---------------------------------------------------------------------------- --- XCBuildConfiguration_Target tests ---------------------------------------------------------------------------- - - function suite.XCBuildConfigurationTarget_OnConsoleApp() - prepare() - xcode.XCBuildConfiguration_Target(tr, tr.products.children[1], tr.configs[1]) - test.capture [[ - [MyProject:Debug] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - GCC_DYNAMIC_NO_PIC = NO; - GCC_MODEL_TUNING = G5; - INSTALL_PATH = /usr/local/bin; - PRODUCT_NAME = "MyProject"; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationTarget_OnWindowedApp() - kind "WindowedApp" - prepare() - xcode.XCBuildConfiguration_Target(tr, tr.products.children[1], tr.configs[1]) - test.capture [[ - [MyProject.app:Debug] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - GCC_DYNAMIC_NO_PIC = NO; - GCC_MODEL_TUNING = G5; - INSTALL_PATH = "$(HOME)/Applications"; - PRODUCT_NAME = "MyProject"; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationTarget_OnStaticLib() - kind "StaticLib" - prepare() - xcode.XCBuildConfiguration_Target(tr, tr.products.children[1], tr.configs[1]) - test.capture [[ - [libMyProject.a:Debug] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - GCC_DYNAMIC_NO_PIC = NO; - GCC_MODEL_TUNING = G5; - INSTALL_PATH = /usr/local/lib; - PRODUCT_NAME = "MyProject"; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationTarget_OnSharedLib() - kind "SharedLib" - prepare() - xcode.XCBuildConfiguration_Target(tr, tr.products.children[1], tr.configs[1]) - test.capture [[ - [libMyProject.dylib:Debug] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - EXECUTABLE_PREFIX = lib; - GCC_DYNAMIC_NO_PIC = NO; - GCC_MODEL_TUNING = G5; - INSTALL_PATH = /usr/local/lib; - PRODUCT_NAME = "MyProject"; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationTarget_OnBundle() - kind "Bundle" - prepare() - xcode.XCBuildConfiguration_Target(tr, tr.products.children[1], tr.configs[1]) - test.capture [[ - [libMyProject.dylib:Debug] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - EXECUTABLE_PREFIX = lib; - GCC_DYNAMIC_NO_PIC = NO; - GCC_MODEL_TUNING = G5; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Bundles"; - PRODUCT_NAME = "MyProject"; - PRODUCT_BUNDLE_IDENTIFIER = genie.MyProject; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationTarget_OnTargetPrefix() - kind "SharedLib" - targetprefix "xyz" - prepare() - xcode.XCBuildConfiguration_Target(tr, tr.products.children[1], tr.configs[1]) - test.capture [[ - [xyzMyProject.dylib:Debug] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - EXECUTABLE_PREFIX = xyz; - GCC_DYNAMIC_NO_PIC = NO; - GCC_MODEL_TUNING = G5; - INSTALL_PATH = /usr/local/lib; - PRODUCT_NAME = "MyProject"; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationTarget_OnTargetExtension() - kind "SharedLib" - targetextension ".xyz" - prepare() - xcode.XCBuildConfiguration_Target(tr, tr.products.children[1], tr.configs[1]) - test.capture [[ - [libMyProject.xyz:Debug] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - EXECUTABLE_PREFIX = lib; - EXECUTABLE_EXTENSION = xyz; - GCC_DYNAMIC_NO_PIC = NO; - GCC_MODEL_TUNING = G5; - INSTALL_PATH = /usr/local/lib; - PRODUCT_NAME = "MyProject"; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationTarget_OnInfoPlist() - files { "../../MyProject-Info.plist" } - prepare() - xcode.XCBuildConfiguration_Target(tr, tr.products.children[1], tr.configs[1]) - test.capture [[ - [MyProject:Debug] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - GCC_DYNAMIC_NO_PIC = NO; - GCC_MODEL_TUNING = G5; - INFOPLIST_FILE = "../../MyProject-Info.plist"; - INSTALL_PATH = /usr/local/bin; - PRODUCT_NAME = "MyProject"; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationTarget_OnSymbols() - flags { "Symbols" } - prepare() - xcode.XCBuildConfiguration_Target(tr, tr.products.children[1], tr.configs[1]) - test.capture [[ - [MyProject:Debug] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - GCC_DYNAMIC_NO_PIC = NO; - GCC_MODEL_TUNING = G5; - INSTALL_PATH = /usr/local/bin; - PRODUCT_NAME = "MyProject"; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationTarget_OnTargetSuffix() - targetsuffix "-d" - prepare() - xcode.XCBuildConfiguration_Target(tr, tr.products.children[1], tr.configs[1]) - test.capture [[ - [MyProject-d:Debug] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - GCC_DYNAMIC_NO_PIC = NO; - GCC_MODEL_TUNING = G5; - INSTALL_PATH = /usr/local/bin; - PRODUCT_NAME = "MyProject-d"; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationTarget_OnSinglePlatform() - platforms { "Universal32" } - prepare() - xcode.XCBuildConfiguration_Target(tr, tr.products.children[1], tr.configs[1]) - test.capture [[ - [MyProject:Debug] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - GCC_DYNAMIC_NO_PIC = NO; - GCC_MODEL_TUNING = G5; - INSTALL_PATH = /usr/local/bin; - PRODUCT_NAME = "MyProject"; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationTarget_OnMultiplePlatforms() - platforms { "Universal32", "Universal64" } - prepare() - xcode.XCBuildConfiguration_Target(tr, tr.products.children[1], tr.configs[1]) - test.capture [[ - [MyProject:Debug] /* Debug 32-bit Universal */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - GCC_DYNAMIC_NO_PIC = NO; - GCC_MODEL_TUNING = G5; - INSTALL_PATH = /usr/local/bin; - PRODUCT_NAME = "MyProject"; - }; - name = "Debug 32-bit Universal"; - }; - ]] - end - - ---------------------------------------------------------------------------- --- XCBuildConfiguration_Project tests ---------------------------------------------------------------------------- - - function suite.XCBuildConfigurationProject_OnConsoleApp() - prepare() - xcode.XCBuildConfiguration_Project(tr, tr.configs[1]) - test.capture [[ - [MyProject:Debug(2)] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(NATIVE_ARCH_ACTUAL)"; - CONFIGURATION_TEMP_DIR = "$(OBJROOT)"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - OBJROOT = "obj/Debug"; - ONLY_ACTIVE_ARCH = NO; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationProject_OnOptimize() - flags { "Optimize" } - prepare() - xcode.XCBuildConfiguration_Project(tr, tr.configs[1]) - test.capture [[ - [MyProject:Debug(2)] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(NATIVE_ARCH_ACTUAL)"; - CONFIGURATION_TEMP_DIR = "$(OBJROOT)"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_OPTIMIZATION_LEVEL = s; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - OBJROOT = "obj/Debug"; - ONLY_ACTIVE_ARCH = NO; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationProject_OnOptimizeSpeed() - flags { "OptimizeSpeed" } - prepare() - xcode.XCBuildConfiguration_Project(tr, tr.configs[1]) - test.capture [[ - [MyProject:Debug(2)] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(NATIVE_ARCH_ACTUAL)"; - CONFIGURATION_TEMP_DIR = "$(OBJROOT)"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_OPTIMIZATION_LEVEL = 3; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - OBJROOT = "obj/Debug"; - ONLY_ACTIVE_ARCH = NO; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationProject_OnStaticRuntime() - flags { "StaticRuntime" } - prepare() - xcode.XCBuildConfiguration_Project(tr, tr.configs[1]) - test.capture [[ - [MyProject:Debug(2)] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(NATIVE_ARCH_ACTUAL)"; - CONFIGURATION_TEMP_DIR = "$(OBJROOT)"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - OBJROOT = "obj/Debug"; - ONLY_ACTIVE_ARCH = NO; - STANDARD_C_PLUS_PLUS_LIBRARY_TYPE = static; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationProject_OnTargetDir() - targetdir "bin" - prepare() - xcode.XCBuildConfiguration_Project(tr, tr.configs[1]) - test.capture [[ - [MyProject:Debug(2)] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(NATIVE_ARCH_ACTUAL)"; - CONFIGURATION_BUILD_DIR = "$(SYMROOT)"; - CONFIGURATION_TEMP_DIR = "$(OBJROOT)"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - OBJROOT = "obj/Debug"; - ONLY_ACTIVE_ARCH = NO; - SYMROOT = "bin"; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationProject_OnDefines() - defines { "_DEBUG", "DEBUG" } - prepare() - xcode.XCBuildConfiguration_Project(tr, tr.configs[1]) - test.capture [[ - [MyProject:Debug(2)] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(NATIVE_ARCH_ACTUAL)"; - CONFIGURATION_TEMP_DIR = "$(OBJROOT)"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "_DEBUG", - "DEBUG", - ); - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - OBJROOT = "obj/Debug"; - ONLY_ACTIVE_ARCH = NO; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationProject_OnIncludeDirs() - includedirs { "../include", "../libs" } - prepare() - xcode.XCBuildConfiguration_Project(tr, tr.configs[1]) - test.capture [[ - [MyProject:Debug(2)] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(NATIVE_ARCH_ACTUAL)"; - CONFIGURATION_TEMP_DIR = "$(OBJROOT)"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - HEADER_SEARCH_PATHS = ( - "../include", - "../libs", - ); - OBJROOT = "obj/Debug"; - ONLY_ACTIVE_ARCH = NO; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationProject_OnBuildOptions() - buildoptions { "build option 1", "build option 2" } - prepare() - xcode.XCBuildConfiguration_Project(tr, tr.configs[1]) - test.capture [[ - [MyProject:Debug(2)] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(NATIVE_ARCH_ACTUAL)"; - CONFIGURATION_TEMP_DIR = "$(OBJROOT)"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - OBJROOT = "obj/Debug"; - ONLY_ACTIVE_ARCH = NO; - OTHER_CFLAGS = ( - "build option 1", - "build option 2", - ); - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationProject_OnLinks() - links { "Cocoa.framework", "ldap" } - prepare() - xcode.XCBuildConfiguration_Project(tr, tr.configs[1]) - test.capture [[ - [MyProject:Debug(2)] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(NATIVE_ARCH_ACTUAL)"; - CONFIGURATION_TEMP_DIR = "$(OBJROOT)"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - OBJROOT = "obj/Debug"; - ONLY_ACTIVE_ARCH = NO; - OTHER_LDFLAGS = ( - "-lldap", - ); - }; - name = "Debug"; - }; - ]] - end - - function suite.XCBuildConfigurationProject_OnLinkOptions() - linkoptions { "link option 1", "link option 2" } - prepare() - xcode.XCBuildConfiguration_Project(tr, tr.configs[1]) - test.capture [[ - [MyProject:Debug(2)] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(NATIVE_ARCH_ACTUAL)"; - CONFIGURATION_TEMP_DIR = "$(OBJROOT)"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - OBJROOT = "obj/Debug"; - ONLY_ACTIVE_ARCH = NO; - OTHER_LDFLAGS = ( - "link option 1", - "link option 2", - ); - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationProject_OnExtraWarnings() - flags { "ExtraWarnings" } - prepare() - xcode.XCBuildConfiguration_Project(tr, tr.configs[1]) - test.capture [[ - [MyProject:Debug(2)] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(NATIVE_ARCH_ACTUAL)"; - CONFIGURATION_TEMP_DIR = "$(OBJROOT)"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - OBJROOT = "obj/Debug"; - ONLY_ACTIVE_ARCH = NO; - WARNING_CFLAGS = "-Wall"; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationProject_OnFatalWarnings() - flags { "FatalWarnings" } - prepare() - xcode.XCBuildConfiguration_Project(tr, tr.configs[1]) - test.capture [[ - [MyProject:Debug(2)] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(NATIVE_ARCH_ACTUAL)"; - CONFIGURATION_TEMP_DIR = "$(OBJROOT)"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_TREAT_WARNINGS_AS_ERRORS = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - OBJROOT = "obj/Debug"; - ONLY_ACTIVE_ARCH = NO; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationProject_OnFloatFast() - flags { "FloatFast" } - prepare() - xcode.XCBuildConfiguration_Project(tr, tr.configs[1]) - test.capture [[ - [MyProject:Debug(2)] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(NATIVE_ARCH_ACTUAL)"; - CONFIGURATION_TEMP_DIR = "$(OBJROOT)"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - OBJROOT = "obj/Debug"; - ONLY_ACTIVE_ARCH = NO; - OTHER_CFLAGS = ( - "-ffast-math", - ); - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationProject_OnFloatStrict() - flags { "FloatStrict" } - prepare() - xcode.XCBuildConfiguration_Project(tr, tr.configs[1]) - test.capture [[ - [MyProject:Debug(2)] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(NATIVE_ARCH_ACTUAL)"; - CONFIGURATION_TEMP_DIR = "$(OBJROOT)"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - OBJROOT = "obj/Debug"; - ONLY_ACTIVE_ARCH = NO; - OTHER_CFLAGS = ( - "-ffloat-store", - ); - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationProject_OnNoEditAndContinue() - flags { "Symbols", "NoEditAndContinue" } - prepare() - xcode.XCBuildConfiguration_Project(tr, tr.configs[1]) - test.capture [[ - [MyProject:Debug(2)] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(NATIVE_ARCH_ACTUAL)"; - CONFIGURATION_TEMP_DIR = "$(OBJROOT)"; - COPY_PHASE_STRIP = NO; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - OBJROOT = "obj/Debug"; - ONLY_ACTIVE_ARCH = YES; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationProject_OnNoExceptions() - flags { "NoExceptions" } - prepare() - xcode.XCBuildConfiguration_Project(tr, tr.configs[1]) - test.capture [[ - [MyProject:Debug(2)] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(NATIVE_ARCH_ACTUAL)"; - CONFIGURATION_TEMP_DIR = "$(OBJROOT)"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_ENABLE_CPP_EXCEPTIONS = NO; - GCC_ENABLE_OBJC_EXCEPTIONS = NO; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - OBJROOT = "obj/Debug"; - ONLY_ACTIVE_ARCH = NO; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationProject_OnNoFramePointer() - flags { "NoFramePointer" } - prepare() - xcode.XCBuildConfiguration_Project(tr, tr.configs[1]) - test.capture [[ - [MyProject:Debug(2)] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(NATIVE_ARCH_ACTUAL)"; - CONFIGURATION_TEMP_DIR = "$(OBJROOT)"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - OBJROOT = "obj/Debug"; - ONLY_ACTIVE_ARCH = NO; - OTHER_CFLAGS = ( - "-fomit-frame-pointer", - ); - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationProject_OnNoPCH() - pchheader "MyProject_Prefix.pch" - flags { "NoPCH" } - prepare() - xcode.XCBuildConfiguration_Project(tr, tr.configs[1]) - test.capture [[ - [MyProject:Debug(2)] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(NATIVE_ARCH_ACTUAL)"; - CONFIGURATION_TEMP_DIR = "$(OBJROOT)"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - OBJROOT = "obj/Debug"; - ONLY_ACTIVE_ARCH = NO; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationProject_OnNoRTTI() - flags { "NoRTTI" } - prepare() - xcode.XCBuildConfiguration_Project(tr, tr.configs[1]) - test.capture [[ - [MyProject:Debug(2)] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(NATIVE_ARCH_ACTUAL)"; - CONFIGURATION_TEMP_DIR = "$(OBJROOT)"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_ENABLE_CPP_RTTI = NO; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - OBJROOT = "obj/Debug"; - ONLY_ACTIVE_ARCH = NO; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationProject_OnSymbols() - flags { "Symbols" } - prepare() - xcode.XCBuildConfiguration_Project(tr, tr.configs[1]) - test.capture [[ - [MyProject:Debug(2)] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(NATIVE_ARCH_ACTUAL)"; - CONFIGURATION_TEMP_DIR = "$(OBJROOT)"; - COPY_PHASE_STRIP = NO; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_ENABLE_FIX_AND_CONTINUE = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - OBJROOT = "obj/Debug"; - ONLY_ACTIVE_ARCH = YES; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationProject_OnLibDirs() - libdirs { "mylibs1", "mylibs2" } - prepare() - xcode.XCBuildConfiguration_Project(tr, tr.configs[1]) - test.capture [[ - [MyProject:Debug(2)] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(NATIVE_ARCH_ACTUAL)"; - CONFIGURATION_TEMP_DIR = "$(OBJROOT)"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - LIBRARY_SEARCH_PATHS = ( - "mylibs1", - "mylibs2", - ); - OBJROOT = "obj/Debug"; - ONLY_ACTIVE_ARCH = NO; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationProject_OnPCH() - pchheader "MyProject_Prefix.pch" - prepare() - xcode.XCBuildConfiguration_Project(tr, tr.configs[1]) - test.capture [[ - [MyProject:Debug(2)] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(NATIVE_ARCH_ACTUAL)"; - CONFIGURATION_TEMP_DIR = "$(OBJROOT)"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PRECOMPILE_PREFIX_HEADER = YES; - GCC_PREFIX_HEADER = "MyProject_Prefix.pch"; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - OBJROOT = "obj/Debug"; - ONLY_ACTIVE_ARCH = NO; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationProject_OnUniversal() - platforms { "Universal" } - prepare() - xcode.XCBuildConfiguration_Project(tr, tr.configs[1]) - test.capture [[ - [MyProject:Debug(2)] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(ARCHS_STANDARD_32_64_BIT)"; - CONFIGURATION_TEMP_DIR = "$(OBJROOT)"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - OBJROOT = "obj/Universal/Debug"; - ONLY_ACTIVE_ARCH = NO; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationProject_OnUniversal32() - platforms { "Universal32" } - prepare() - xcode.XCBuildConfiguration_Project(tr, tr.configs[1]) - test.capture [[ - [MyProject:Debug(2)] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(ARCHS_STANDARD_32_BIT)"; - CONFIGURATION_TEMP_DIR = "$(OBJROOT)"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - OBJROOT = "obj/Universal32/Debug"; - ONLY_ACTIVE_ARCH = NO; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationProject_OnUniversal64() - platforms { "Universal64" } - prepare() - xcode.XCBuildConfiguration_Project(tr, tr.configs[1]) - test.capture [[ - [MyProject:Debug(2)] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(ARCHS_STANDARD_64_BIT)"; - CONFIGURATION_TEMP_DIR = "$(OBJROOT)"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - OBJROOT = "obj/Universal64/Debug"; - ONLY_ACTIVE_ARCH = NO; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationProject_OnNative() - platforms { "Native" } - prepare() - xcode.XCBuildConfiguration_Project(tr, tr.configs[1]) - test.capture [[ - [MyProject:Debug(2)] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(NATIVE_ARCH_ACTUAL)"; - CONFIGURATION_TEMP_DIR = "$(OBJROOT)"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - OBJROOT = "obj/Debug"; - ONLY_ACTIVE_ARCH = NO; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationProject_OnX32() - platforms { "x32" } - prepare() - xcode.XCBuildConfiguration_Project(tr, tr.configs[1]) - test.capture [[ - [MyProject:Debug(2)] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "i386"; - CONFIGURATION_TEMP_DIR = "$(OBJROOT)"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - OBJROOT = "obj/x32/Debug"; - ONLY_ACTIVE_ARCH = NO; - }; - name = "Debug"; - }; - ]] - end - - - function suite.XCBuildConfigurationProject_OnX64() - platforms { "x64" } - prepare() - xcode.XCBuildConfiguration_Project(tr, tr.configs[1]) - test.capture [[ - [MyProject:Debug(2)] /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "x86_64"; - CONFIGURATION_TEMP_DIR = "$(OBJROOT)"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - OBJROOT = "obj/x64/Debug"; - ONLY_ACTIVE_ARCH = NO; - }; - name = "Debug"; - }; - ]] - end - - function suite.XCBuildConfigurationProject_OnMultiplePlatforms() - platforms { "Universal32", "Universal64" } - prepare() - xcode.XCBuildConfiguration_Project(tr, tr.configs[1]) - test.capture [[ - [MyProject:Debug(2)] /* Debug 32-bit Universal */ = { - isa = XCBuildConfiguration; - buildSettings = { - ARCHS = "$(ARCHS_STANDARD_32_BIT)"; - CONFIGURATION_TEMP_DIR = "$(OBJROOT)"; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_ABOUT_RETURN_TYPE = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - OBJROOT = "obj/Universal32/Debug"; - ONLY_ACTIVE_ARCH = NO; - }; - name = "Debug 32-bit Universal"; - }; - ]] - end - - ---------------------------------------------------------------------------- --- XCBuildConfigurationList tests ---------------------------------------------------------------------------- - - function suite.XCBuildConfigurationList_OnNoPlatforms() - prepare() - xcode.XCBuildConfigurationList(tr) - test.capture [[ -/* Begin XCConfigurationList section */ - [MyProject:cfg] /* Build configuration list for PBXNativeTarget "MyProject" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - [MyProject:Debug] /* Debug */, - [MyProject:Release] /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = "Debug"; - }; - 1DEB928908733DD80010E9CD /* Build configuration list for PBXProject "MyProject" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - [MyProject:Debug(2)] /* Debug */, - [MyProject:Release(2)] /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = "Debug"; - }; -/* End XCConfigurationList section */ - ]] - end - - - function suite.XCBuildConfigurationList_OnSinglePlatforms() - platforms { "Universal32" } - prepare() - xcode.XCBuildConfigurationList(tr) - test.capture [[ -/* Begin XCConfigurationList section */ - [MyProject:cfg] /* Build configuration list for PBXNativeTarget "MyProject" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - [MyProject:Debug] /* Debug */, - [MyProject:Release] /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = "Debug"; - }; - 1DEB928908733DD80010E9CD /* Build configuration list for PBXProject "MyProject" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - [MyProject:Debug(2)] /* Debug */, - [MyProject:Release(2)] /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = "Debug"; - }; -/* End XCConfigurationList section */ - ]] - end - - - function suite.XCBuildConfigurationList_OnMultiplePlatforms() - platforms { "Universal32", "Universal64" } - prepare() - xcode.XCBuildConfigurationList(tr) - test.capture [[ -/* Begin XCConfigurationList section */ - [MyProject:cfg] /* Build configuration list for PBXNativeTarget "MyProject" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - [MyProject:Debug] /* Debug 32-bit Universal */, - [MyProject:Debug(3)] /* Debug 64-bit Universal */, - [MyProject:Release] /* Release 32-bit Universal */, - [MyProject:Release(3)] /* Release 64-bit Universal */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = "Debug 32-bit Universal"; - }; - 1DEB928908733DD80010E9CD /* Build configuration list for PBXProject "MyProject" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - [MyProject:Debug(2)] /* Debug 32-bit Universal */, - [MyProject:Debug(4)] /* Debug 64-bit Universal */, - [MyProject:Release(2)] /* Release 32-bit Universal */, - [MyProject:Release(4)] /* Release 64-bit Universal */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = "Debug 32-bit Universal"; - }; -/* End XCConfigurationList section */ - ]] - end - -function suite.defaultVisibility_settingIsFound() - prepare() - xcode.XCBuildConfiguration(tr) - local buffer = io.endcapture() - - test.string_contains(buffer,'GCC_SYMBOLS_PRIVATE_EXTERN') -end - - -function suite.defaultVisibilitySetting_setToNo() - prepare() - xcode.XCBuildConfiguration(tr) - local buffer = io.endcapture() - - test.string_contains(buffer,'GCC_SYMBOLS_PRIVATE_EXTERN = NO;') -end - -function suite.releaseBuild_onlyDefaultArch_equalsNo() - flags { "Optimize" } - prepare() - xcode.XCBuildConfiguration_Project(tr, tr.configs[2]) - local buffer = io.endcapture() - - test.string_contains(buffer,'ONLY_ACTIVE_ARCH = NO;') -end - -function suite.debugBuild_onlyDefaultArch_equalsYes() - flags { "Symbols" } - prepare() - xcode.XCBuildConfiguration_Project(tr, tr.configs[1]) - local buffer = io.endcapture() - - test.string_contains(buffer,'ONLY_ACTIVE_ARCH = YES;') -end
\ No newline at end of file |