Esteban Lorenzano uploaded a new version of CMakeVMMaker to project VM Maker: http://source.squeak.org/VMMaker/CMakeVMMaker-EstebanLorenzano.180.mcz
==================== Summary ====================
Name: CMakeVMMaker-EstebanLorenzano.180 Author: EstebanLorenzano Time: 25 September 2012, 9:25:11.219 am UUID: 7428cef3-fd0f-4307-b8a1-db846287c01f Ancestors: CMakeVMMaker-EstebanLorenzano.176, CMakeVMMaker-IgorStasenko.179
- better iphone bundles - merged
=============== Diff against CMakeVMMaker-EstebanLorenzano.176 ===============
Item was changed: ----- Method: CMLibPng>>archiveMD5Sum (in category 'package properties') ----- archiveMD5Sum
^ '39a35257cd888d29f1d000c2ffcc79eb'!
Item was changed: ----- Method: CMLibPng>>downloadURL (in category 'package properties') ----- downloadURL + ^ 'ftp://ftp.simplesystems.org/pub/libpng/png/src/history/libpng12/libpng-1.2.49.tar.gz' + ! - - ^ 'ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng-1.2.49.tar.gz'!
Item was changed: ----- Method: CMakeVMGenerator>>generate (in category 'code generation') ----- generate | intPlugins extPlugins | output := String new writeStream. config setGlobalOptions: self. self printHeader; project: config executableName.
config setupDirectories: self. + - self message: '${CMAKE_MODULE_PATH}'. self set: 'CMAKE_CONFIGURATION_TYPES' to: 'Release'.
config preferredIncludes do: [ :each | self includeDirectories: each ]. self includeDirectories: self includeDirs. config standardIncludes do: [:each | self includeDirectories: each ].
self addDefinitions: config compilerFlags.
config extraVMSettings: self. self puts: 'add_executable(' , config executableName, ' ', config executableType, ' ' , self sources , ')'. intPlugins := self generatePluginConfigs: config internalPlugins internal: true. extPlugins := self generatePluginConfigs: config externalPlugins internal: false. self processThirdpartyLibraries. - - self processPlugins: intPlugins, extPlugins.
config setExtraTargetProperties: self. self cmd: 'target_link_libraries' params: self moduleName , ' ${LINKLIBS}'.
config postBuildActions: self. self saveFile. + self generateBuildScript.! - !
Item was added: + ----- Method: CMakeVMGenerator>>generateBuildScript (in category 'build script') ----- + generateBuildScript + + (self buildDir forceNewFileNamed: 'build.sh') nextPutAll: (config fixLineEndsOf: config buildScript); close. + !
Item was added: + ----- Method: CPlatformConfig>>buildScript (in category 'build script') ----- + buildScript + "answer the build script for building everything" + + + ^ + '#!!bash + + cmake . + make + + '!
Item was changed: ----- Method: CocoaIOSConfig>>plistKeys (in category 'bundle strings') ----- plistKeys ^#( CFBundleExecutable CFBundleGetInfoString CFBundleName CFBundleShortVersionString CFBundleVersion CFBundleIconFile CFBundleIdentifier NSMainNibFile SqueakDebug)!
Item was changed: ----- Method: CogFamilyCocoaIOSConfig>>compilerFlagsDebug (in category 'settings') ----- compilerFlagsDebug + ^#('-g3' '-O0' '-DDEBUGVM=1')! - ^#('-g3' '-O1' '-DDEBUGVM=1')!
Item was added: + ----- Method: CogFamilyUnixConfig>>buildScript (in category 'build script') ----- + buildScript + "answer the build script for building everything" + + + ^ + '#!!bash + + cmake . + make + + '!
Item was added: + ----- Method: CogFamilyWindowsConfig>>buildScript (in category 'as yet unclassified') ----- + buildScript + "answer the build script for building everything" + + + ^ + '#!!bash + + cmake -G "MSYS Makefiles" . + make + + '!
Item was added: + ----- Method: MacOSConfig>>buildScript (in category 'build script') ----- + buildScript + "answer the build script for building everything" + + + ^ + '#!!bash + + cmake . + make + make install + + '!
Item was changed: ----- Method: StackIPhoneConfig>>CFBundleIconFile (in category 'bundle strings') ----- CFBundleIconFile + "512 x512 icon" ^'Cog.png'!
Item was added: + ----- Method: StackIPhoneConfig>>CFBundleIconFile1024 (in category 'bundle strings') ----- + CFBundleIconFile1024 + "1024x1024 icon" + ^'Cog.png'!
Item was added: + ----- Method: StackIPhoneConfig>>CFBundleIconFile57 (in category 'bundle strings') ----- + CFBundleIconFile57 + "57x57 icon" + ^'Cog.png'!
Item was added: + ----- Method: StackIPhoneConfig>>CFBundleIconFile72 (in category 'bundle strings') ----- + CFBundleIconFile72 + "72x72 icon" + ^'Cog.png'!
Item was changed: ----- Method: StackIPhoneConfig>>architecture (in category 'accessing') ----- architecture + ^'armv6'! - ^'armv7'!
Item was changed: ----- Method: StackIPhoneConfig>>configureFT2Plugin: (in category 'plugin extra rules') ----- configureFT2Plugin: maker "extra rules for Freetype plugin. a custom rule to build freetype library" | lib devRoot sdkRoot | "maker isExternal ifFalse: [ self error: 'building internal FT2Plugin is not supported yet' ]."
devRoot := '/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer'. sdkRoot := '{devRoot}/SDKs/iPhoneOS{sdkVersion}.sdk' nameFormat: {'devRoot'->devRoot. 'sdkVersion'->self sdkVersion} asDictionary.
"add freetype library into loop" lib := self addThirdpartyLibrary: 'freetype2'. lib configurationFlags: ({ '--without-zlib'. '--without-bzip2'. '--host=arm-apple-darwin'. '--enable-static=yes'. '--enable-shared=no'. 'CC={devRoot}/usr/bin/gcc'. 'CXX={devRoot}/usr/bin/g++'. + 'CFLAGS=\"-arch armv6 -std=c99 -Wno-trigraphs -O2 -fwrapv -Wreturn-type -Wunused-variable -fmessage-length=0 -miphoneos-version-min=4.0 -I{sdkRoot}/usr/include/libxml2 -isysroot {sdkRoot}\"'. + 'LDFLAGS=\"-arch armv6 -isysroot {sdkRoot}\"'} - 'CFLAGS=\"-arch armv7 -std=c99 -Wno-trigraphs -O2 -fwrapv -Wreturn-type -Wunused-variable -fmessage-length=0 -miphoneos-version-min=4.0 -I{sdkRoot}/usr/include/libxml2 -isysroot {sdkRoot}\"'. - 'LDFLAGS=\"-arch armv7 -isysroot {sdkRoot}\"'} collect: [ :each | each nameFormat: {'sdkRoot'->sdkRoot. 'devRoot'->devRoot} asDictionary ]).
"maker set: 'XCODE_ATTRIBUTE_CONFIGURATION_BUILD_DIR' toString: ''."
"link plugin with freetype lib" maker addExternalLibrary: '${thirdpartyDir}/out/lib/', lib libraryFileName. maker includeDirectories: lib includeDir. !
Item was changed: ----- Method: StackIPhoneConfig>>plistKeys (in category 'bundle strings') ----- plistKeys + ^super plistKeys, + #(CFBundleIconFile57 + CFBundleIconFile72 + CFBundleIconFile1024 + UIDeviceFamily + UIFileSharingEnabled) + ! - ^super plistKeys, #(UIDeviceFamily UIFileSharingEnabled)!
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%22%3E <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>CFBundleIconFiles</key> + <array> + <string>@CFBundleIconFile@</string> + <string>@CFBundleIconFile57@</string> + <string>@CFBundleIconFile72@</string> + <string>@CFBundleIconFile1024@</string> + </array> <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> @UIDeviceFamily@ </array> <key>UIPrerenderedIcon</key> <false/> <key>UIStatusBarHidden</key> <true/> <key>UIFileSharingEnabled</key> <@UIFileSharingEnabled@/> </dict> </plist> '!
Item was changed: ----- Method: StackIPhoneConfig>>resources (in category 'settings') ----- resources ^{ self CFBundleIconFile. + self CFBundleIconFile57. + self CFBundleIconFile72. + self CFBundleIconFile1024. self imageName, '.image'}, self imageResources !
vm-dev@lists.squeakfoundation.org