VM Maker: CMakeVMMaker-IgorStasenko.181.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

VM Maker: CMakeVMMaker-IgorStasenko.181.mcz

commits-2
 
Igor Stasenko uploaded a new version of CMakeVMMaker to project VM Maker:
http://source.squeak.org/VMMaker/CMakeVMMaker-IgorStasenko.181.mcz

==================== Summary ====================

Name: CMakeVMMaker-IgorStasenko.181
Author: IgorStasenko
Time: 27 September 2012, 3:21:01.136 pm
UUID: 16166fb5-8e1a-499d-bc00-e315bbbfcc11
Ancestors: CMakeVMMaker-EstebanLorenzano.180

- fix building cairo lib

=============== Diff against CMakeVMMaker-EstebanLorenzano.180 ===============

Item was changed:
+ CMCairoBundle subclass: #CMCairo
- CMThirdpartyLibrary subclass: #CMCairo
  instanceVariableNames: ''
  classVariableNames: ''
  poolDictionaries: ''
  category: 'CMakeVMMaker-Libs'!
+
+ !CMCairo commentStamp: 'IgorStasenko 9/26/2012 14:30' prior: 0!
+ This is Cairo library config for building on MacOSX!

Item was added:
+ CMThirdpartyLibrary subclass: #CMCairoBundle
+ instanceVariableNames: ''
+ classVariableNames: ''
+ poolDictionaries: ''
+ category: 'CMakeVMMaker-Libs'!
+
+ !CMCairoBundle commentStamp: 'IgorStasenko 9/26/2012 16:14' prior: 0!
+ this is common superclass for defining settings for building cairo and accompanied libraries!

Item was added:
+ ----- Method: CMCairoBundle class>>canonicalName (in category 'as yet unclassified') -----
+ canonicalName
+ ^ nil!

Item was added:
+ ----- Method: CMCairoBundle class>>supports: (in category 'as yet unclassified') -----
+ supports: aConfig
+ "right now, Mac only"
+ ^  aConfig platformName  = 'iOS'!

Item was changed:
+ CMCairoBundle subclass: #CMLibPng
- CMThirdpartyLibrary subclass: #CMLibPng
  instanceVariableNames: ''
  classVariableNames: ''
  poolDictionaries: ''
  category: 'CMakeVMMaker-Libs'!

Item was changed:
+ CMCairoBundle subclass: #CMPixman
- CMThirdpartyLibrary subclass: #CMPixman
  instanceVariableNames: ''
  classVariableNames: ''
  poolDictionaries: ''
  category: 'CMakeVMMaker-Libs'!

Item was changed:
+ CMCairoBundle subclass: #CMPkgConfig
- CMThirdpartyLibrary subclass: #CMPkgConfig
  instanceVariableNames: ''
  classVariableNames: ''
  poolDictionaries: ''
  category: 'CMakeVMMaker-Libs'!
 
  !CMPkgConfig commentStamp: 'IgorStasenko 6/9/2012 21:48' prior: 0!
  this will build a pkg-config package, required to built cairo
  !

Item was changed:
  ----- Method: CPlatformConfig>>addThirdpartyLibrary: (in category 'thirdparty libs') -----
  addThirdpartyLibrary: libName
  | libs lib |
 
  libs := self thirdpartyLibs.
 
  lib :=  libs
+ detect: [:each | each canonicalName = libName ]
- detect: [:each | each canonicalName = libName and: [ each supports: self ] ]
  ifNone: [ nil ].
 
  lib ifNil: [
  lib := (CMThirdpartyLibrary named: libName config: self).
  "add dependencies first, so thirpartyLibs collection will be naturally dependency sorted"
  lib dependencies do: [:dep | self addThirdpartyLibrary: dep ].
  libs add: lib ].
 
  ^ lib!