[Vm-dev] VM Maker: CMakeVMMaker-EstebanLorenzano.149.mcz
commits at source.squeak.org
commits at source.squeak.org
Sat Feb 18 13:24:44 UTC 2012
Esteban Lorenzano uploaded a new version of CMakeVMMaker to project VM Maker:
http://source.squeak.org/VMMaker/CMakeVMMaker-EstebanLorenzano.149.mcz
==================== Summary ====================
Name: CMakeVMMaker-EstebanLorenzano.149
Author: EstebanLorenzano
Time: 18 February 2012, 10:24:26 am
UUID: 4c3586ea-949b-483f-b059-9123508e2e67
Ancestors: CMakeVMMaker-EstebanLorenzano.148
StackIPhoneConfig working with Xcode generation, not with regular makes (it is not placing files in proper place)
=============== Diff against CMakeVMMaker-EstebanLorenzano.148 ===============
Item was changed:
----- Method: CocoaIOSConfig>>plistFile (in category 'bundle strings') -----
plistFile
-
| plist |
+ plist := self plistTemplate.
+ self plistKeys
+ do: [:key |
+ plist := plist
+ copyReplaceAll: '@' , key , '@'
+ with: (self perform: key) asString ].
- plist := self plistTemplate.
-
- #(
- CFBundleExecutable
- CFBundleGetInfoString
- CFBundleName
- CFBundleShortVersionString
- CFBundleVersion
- CFBundleIconFile
- CFBundleIdentifier
- NSMainNibFile
- SqueakDebug) do: [:key |
- plist := plist copyReplaceAll: '@' , key , '@' with: (self perform: key) asString
- ].
^ self fixLineEndsOf: plist!
Item was added:
+ ----- Method: CocoaIOSConfig>>plistKeys (in category 'bundle strings') -----
+ plistKeys
+ ^#(
+ CFBundleExecutable
+ CFBundleGetInfoString
+ CFBundleName
+ CFBundleShortVersionString
+ CFBundleVersion
+ CFBundleIconFile
+ CFBundleIdentifier
+ NSMainNibFile
+ SqueakDebug)!
Item was added:
+ ----- Method: StackIPhoneConfig class>>deviceIPad (in category 'accessing') -----
+ deviceIPad
+ ^'2'!
Item was added:
+ ----- Method: StackIPhoneConfig class>>deviceIPhone (in category 'accessing') -----
+ deviceIPhone
+ ^'1'!
Item was added:
+ ----- Method: StackIPhoneConfig>>CFBundleIconFile (in category 'bundle strings') -----
+ CFBundleIconFile
+ ^'Cog.png'!
Item was added:
+ ----- Method: StackIPhoneConfig>>UIDeviceFamily (in category 'bundle strings') -----
+ UIDeviceFamily
+ ^self targetedDeviceFamily!
Item was added:
+ ----- Method: StackIPhoneConfig>>codeSignIdentity (in category 'accessing') -----
+ codeSignIdentity
+ ^'iPhone Developer'!
Item was changed:
----- Method: StackIPhoneConfig>>commonCompilerFlags (in category 'settings') -----
commonCompilerFlags
"Common compiler flags"
^{
"'-miphoneos-version-min=4.3'. "
'-isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS', self sdkVersion, '.sdk'.
'-x objective-c'.
'-std=gnu99'.
'-falign-functions=16'.
'-fno-gcse'.
'-fno-cse-follow-jumps'.
'-fvisibility=hidden'.
'-funroll-loops'.
'-finline-functions'.
+ '-mno-thumb'.
'-DSTACKVM=1'.
'-DCOGMTVM=0'.
'-DUSE_GLOBAL_STRUCT=0'.
'-DBASE_HEADER_SIZE=4'.
'-DTARGET_OS_IS_IPHONE'.
'-DHAVE_UUID_GENERATE'.
'-DUSE_INLINE_MEMORY_ACCESSORS'.
'-DHAVE_SYS_TIME_H'.
'-DLSB_FIRST'.
'-DHAVE_NANOSLEEP'.
"'-DXXXUSE_INLINE_MEMORY_ACCESSORS'."
+ '-DISQUEAK_IMAGE=', self imageName.
- '-DISQUEAK_IMAGE=iPhone'.
'-DISQUEAK_SOURCES=PharoV10'}!
Item was changed:
----- Method: StackIPhoneConfig>>compilerFlagsRelease (in category 'settings') -----
compilerFlagsRelease
+ ^#('-g0' '-O3' "'-fasm-blocks'" '-finline-functions' "'-mfpmath=sse'" '-fomit-frame-pointer' "'-march=pentium-m'" "'-mtune=prescott'" '-DNDEBUG' '-DDEBUGVM=0')!
- ^#('-g0' '-Os' "'-fasm-blocks'" '-finline-functions' "'-mfpmath=sse'" '-fomit-frame-pointer' "'-march=pentium-m'" "'-mtune=prescott'" '-DNDEBUG' '-DDEBUGVM=0')!
Item was added:
+ ----- Method: StackIPhoneConfig>>deploymentTargetVersion (in category 'accessing') -----
+ deploymentTargetVersion
+ ^'4.0'!
Item was added:
+ ----- Method: StackIPhoneConfig>>imageName (in category 'accessing') -----
+ imageName
+ ^'iPhone'!
Item was changed:
----- Method: StackIPhoneConfig>>imageResources (in category 'settings') -----
imageResources
^#(
- 'iPhone.image'
'iPhone.changes'
'PharoV10.sources')!
Item was added:
+ ----- Method: StackIPhoneConfig>>plistKeys (in category 'bundle strings') -----
+ plistKeys
+ ^super plistKeys
+ copyWith: #UIDeviceFamily!
Item was changed:
----- Method: StackIPhoneConfig>>plistTemplate (in category 'bundle strings') -----
plistTemplate
self flag: #todo. "CFBundleDisplayName is using @CFBundleExecutable@ that's probably wrong"
^'<?xml version="1.0" encoding="UTF-8"?>
<!!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleDisplayName</key>
<string>@CFBundleExecutable@</string>
<key>CFBundleExecutable</key>
<string>@CFBundleExecutable@</string>
<key>CFBundleIconFile</key>
<string>@CFBundleIconFile@</string>
<key>CFBundleIdentifier</key>
<string>@CFBundleIdentifier@</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>@CFBundleName@</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleResourceSpecification</key>
<string>ResourceRules.plist</string>
<key>CFBundleSignature</key>
<string>FRAC</string>
<key>CFBundleSupportedPlatforms</key>
<array>
<string>iPhoneOS</string>
</array>
<key>CFBundleVersion</key>
<string>1.1.7</string>
<key>LSRequiresIPhoneOS</key>
<true/>
<key>MinimumOSVersion</key>
<string>3.1.3</string>
<key>NSMainNibFile</key>
<string>MainWindow</string>
<key>UIDeviceFamily</key>
<array>
+ <integer>@UIDeviceFamily@</integer>
- <integer>1</integer>
</array>
<key>UIPrerenderedIcon</key>
<false/>
<key>UIStatusBarHidden</key>
<true/>
</dict>
</plist>
'!
Item was changed:
----- Method: StackIPhoneConfig>>resources (in category 'settings') -----
resources
+ ^{
+ self CFBundleIconFile.
+ self imageName, '.image'},
+ self imageResources
+ !
- ^#('Cog.icns'), self imageResources!
Item was added:
+ ----- Method: StackIPhoneConfig>>resourcesDir (in category 'accessing') -----
+ resourcesDir
+ "Answer the value of resourcesDir"
+ ^ resourcesDir ifNil: [ resourcesDir := (self topDir / 'iosbuild' / 'resources') fullName ]!
Item was changed:
----- Method: StackIPhoneConfig>>setCommonProperties: (in category 'settings') -----
setCommonProperties: maker
maker set: 'CMAKE_CROSSCOMPILING' to: 'TRUE'.
maker set: 'CMAKE_SYSTEM_NAME' to: 'Darwin'.
maker set: 'CMAKE_SYSTEM_PROCESSOR' to: 'arm'.
maker set: 'SDKVER' toString: self sdkVersion.
maker set: 'DEVROOT' toString: '/Developer/Platforms/iPhoneOS.platform/Developer'.
maker set: 'SDKROOT' toString: '${DEVROOT}/SDKs/iPhoneOS${SDKVER}.sdk'.
+ maker set: 'CMAKE_OSX_SYSROOT' to: 'iphoneos${SDKVER}'.
- maker
- set: 'CMAKE_OSX_SYSROOT'
- to: 'iphoneos${SDKVER}'.
maker set: 'CMAKE_C_COMPILER' to: '${DEVROOT}/usr/bin/llvm-gcc'.
maker set: 'CMAKE_CXX_COMPILER' to: '${DEVROOT}/usr/bin/llvm-g++'.
"maker set: 'CMAKE_C_COMPILER' to: 'gcc-4.2'.
maker set: 'CMAKE_CXX_COMPILER' to: 'g++-4.2'."
maker set: 'CMAKE_FIND_ROOT_PATH' to: '"${SDKROOT}" "${DEVROOT}"'.
maker set: 'CMAKE_FIND_ROOT_PATH_MODE_PROGRAM' to: 'ONLY'.
maker set: 'CMAKE_FIND_ROOT_PATH_MODE_LIBRARY' to: 'ONLY'.
maker set: 'CMAKE_FIND_ROOT_PATH_MODE_INCLUDE' to: 'ONLY'.
maker set: 'CMAKE_EXE_LINKER_FLAGS' toString: '-L${SDKROOT}/usr/lib -L${SDKROOT}/usr/lib/system'.
+ maker addFrameworks: self frameworks.!
- maker addFrameworks: self frameworks.
- !
Item was changed:
----- Method: StackIPhoneConfig>>setExtraTargetProperties: (in category 'settings') -----
setExtraTargetProperties: maker
"super setExtraTargetProperties: maker."
| precompiledHeaders plist |
precompiledHeaders := (self executableName, '_Prefix.pch').
(maker buildDir forceNewFileNamed: precompiledHeaders)
nextPutAll: self precompiledHeaders;
close.
+
maker addXCodeProperty: 'GCC_PREFIX_HEADER' value: '${buildDir}/', precompiledHeaders.
self setCommonProperties: maker.
" generated and add Info.plist file "
plist := self plistFile.
-
(maker buildDir forceNewFileNamed: 'Info.plist')
nextPutAll: plist;
close.
+ maker addProperty: 'MACOSX_BUNDLE_INFO_PLIST' value: '${buildDir}/Info.plist'.
maker
- addProperty: 'MACOSX_BUNDLE_INFO_PLIST'
- value: '${buildDir}/Info.plist'.
-
- maker
cmd: 'set_target_properties'
params: self executableName, ' PROPERTIES COMPILE_FLAGS "-include \"', (self buildDir / self prefixHeaderFileName) fullName, '\""'.
+
+ maker set: 'CMAKE_XCODE_ATTRIBUTE_CODE_SIGN_IDENTITY' toString: self codeSignIdentity.
+ maker set: 'CMAKE_XCODE_ATTRIBUTE_TARGETED_DEVICE_FAMILY' toString: self targetedDeviceFamily.
+ maker set: 'CMAKE_XCODE_ATTRIBUTE_IPHONEOS_DEPLOYMENT_TARGET' to: self deploymentTargetVersion.
+ maker set: 'EXECUTABLE_OUTPUT_PATH' toString: self outputDir.!
- maker set: 'EXECUTABLE_OUTPUT_PATH' toString: self outputDir.
- maker set: 'RUNTIME_OUTPUT_DIRECTORY' toString: self outputDir.
- !
Item was changed:
----- Method: StackIPhoneConfig>>setResourceProperties: (in category 'settings') -----
setResourceProperties: maker
+ maker set: 'resourceDir' toString: self resourcesDir.
- maker set: 'resourceDir' toString: self resourcesDir, '/ProjectBuilder'.
maker
set: 'resources'
to: (String streamContents: [ :stream |
self resources
do: [ :each |
stream
nextPut: $";
nextPutAll: '${resourceDir}/';
nextPutAll: each;
nextPut: $"]
separatedBy: [ stream space ] ]).
maker
set: 'resourcesLocaleEnglish'
+ toString: '${resourceDir}/English.lproj/MainWindow.nib'.
- toString: '${resourceDir}/iPhone-English.lproj/MainWindow.nib'.
maker
cmd: 'set_source_files_properties'
params: '${resources} PROPERTIES MACOSX_PACKAGE_LOCATION Resources'.
maker
cmd: 'set_source_files_properties'
params: '${resourcesLocaleEnglish} PROPERTIES MACOSX_PACKAGE_LOCATION Resources'.
-
!
Item was added:
+ ----- Method: StackIPhoneConfig>>targetedDeviceFamily (in category 'accessing') -----
+ targetedDeviceFamily
+ ^self class deviceIPad!
More information about the Vm-dev
mailing list