[Vm-dev] VM Maker: CMakeVMMaker-EstebanLorenzano.180.mcz

commits at source.squeak.org commits at source.squeak.org
Tue Sep 25 07:25:29 UTC 2012


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">
  <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
  		!



More information about the Vm-dev mailing list