VM Maker: CMakeVMMaker-EstebanLorenzano.183.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-EstebanLorenzano.183.mcz

commits-2
 
Esteban Lorenzano uploaded a new version of CMakeVMMaker to project VM Maker:
http://source.squeak.org/VMMaker/CMakeVMMaker-EstebanLorenzano.183.mcz

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

Name: CMakeVMMaker-EstebanLorenzano.183
Author: EstebanLorenzano
Time: 23 October 2012, 6:44:06.075 pm
UUID: 441cb284-f69f-4186-ab8e-15645689e2b9
Ancestors: CMakeVMMaker-EstebanLorenzano.182, CMakeVMMaker-IgorStasenko.182

- merged with Igors

=============== Diff against CMakeVMMaker-EstebanLorenzano.182 ===============

Item was changed:
  ----- Method: CMCairo>>archiveMD5Sum (in category 'package properties') -----
  archiveMD5Sum
 
+ ^ '645b7c1421ed52260d0853e3215c1d8f'!
- ^ '87649eb75789739d517c743e94879e51'!

Item was changed:
  ----- Method: CMCairo>>build (in category 'generating actions') -----
  build
-
  gen
  puts:
  '
  add_custom_command(OUTPUT "${libcairoInstalled}"
  COMMAND ./configure --prefix=''${installPrefix}'' PKG_CONFIG="${pkgconfigPath}"
  PKG_CONFIG_PATH="${installPrefix}/lib/pkgconfig" CFLAGS=''-arch i386'' LDFLAGS=''-arch i386''
  --disable-silent-rules --disable-xlib --disable-dependency-tracking
  COMMAND make
  COMMAND make install
  WORKING_DIRECTORY "${libSourcesDir}"
  DEPENDS "${unpackTarget}" pkg-config freetype2 libpng pixman
  COMMENT "Building ${libName}"
  )
  '
  !

Item was changed:
  ----- Method: CMCairo>>copyArtefacts (in category 'generating actions') -----
  copyArtefacts
 
+ self
+ copy: '${libcairoInstalled}'
+ to: '${externalModulesDir}/${libraryFileName}'
+ !
- gen puts:
- 'add_custom_command(
- OUTPUT "${externalModulesDir}/${libraryFileName}"
- COMMAND cp ${libcairoInstalled} ${externalModulesDir}/${libraryFileName}
- DEPENDS "${libcairoInstalled}"
- )'!

Item was changed:
  ----- Method: CMCairo>>defineAsTarget (in category 'generating actions') -----
  defineAsTarget
 
  gen puts:
  'add_custom_target(${libName}
+ DEPENDS pixman freetype2 "${externalModulesDir}/${libraryFileName}"
- DEPENDS "${externalModulesDir}/${libraryFileName}"
  )'!

Item was changed:
  ----- Method: CMCairo>>downloadURL (in category 'package properties') -----
  downloadURL
 
+ ^ 'http://www.cairographics.org/releases/cairo-1.12.6.tar.xz'!
- ^ 'http://www.cairographics.org/releases/cairo-1.12.2.tar.xz'!

Item was changed:
  ----- Method: CMCairo>>unpackedDirName (in category 'package properties') -----
  unpackedDirName
+ ^ 'cairo-1.12.6'!
- ^ 'cairo-1.12.2'!

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

Item was added:
+ ----- Method: CMCairoBundle>>macOSXBuildFlags (in category 'as yet unclassified') -----
+ macOSXBuildFlags
+ ^ 'CFLAGS=''-m32 -march=pentium4'' LDFLAGS=''-m32 -march=pentium4"'!

Item was added:
+ ----- Method: CMCairoBundle>>win32BuildFlags (in category 'as yet unclassified') -----
+ win32BuildFlags
+ ^ 'CFLAGS=''-m32 -march=pentium4'' LDFLAGS=''-m32 -march=pentium4"'!

Item was changed:
  ----- Method: CMFreetype2>>copyArtefacts (in category 'generating actions') -----
  copyArtefacts
 
+ self
+ copy: '${ft2libInstalled}'
+ to: '${externalModulesDir}/${libraryFileName}'.!
- gen puts:
- 'add_custom_command(
- OUTPUT "${externalModulesDir}/${libraryFileName}"
- COMMAND cp "${ft2libInstalled}" "${externalModulesDir}/${libraryFileName}"
- DEPENDS "${ft2libInstalled}"
- )'!

Item was added:
+ ----- Method: CMIOSFreetype2 class>>supports: (in category 'as yet unclassified') -----
+ supports: aConfig
+ "just for iPhone"
+ ^ aConfig class = StackIPhoneConfig!

Item was changed:
  ----- Method: CMLibPng>>defineAsTarget (in category 'generating actions') -----
  defineAsTarget
 
  gen puts:
  'add_custom_target(${libName}
+ DEPENDS zlib "${externalModulesDir}/${libraryFileName}"
- DEPENDS "${externalModulesDir}/${libraryFileName}"
  )'!

Item was removed:
- ----- Method: CMOSXFreetype2 class>>supports: (in category 'as yet unclassified') -----
- supports: aConfig
- ^self = aConfig freetypeLibClass!

Item was added:
+ CMThirdpartyLibrary subclass: #CMOpenSSL
+ instanceVariableNames: ''
+ classVariableNames: ''
+ poolDictionaries: ''
+ category: 'CMakeVMMaker-Libs'!

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

Item was changed:
  ----- Method: CMPixman>>defineAsTarget (in category 'generating actions') -----
  defineAsTarget
 
  gen puts:
  'add_custom_target(${libName}
+ DEPENDS libpng "${externalModulesDir}/${libraryFileName}"
- DEPENDS "${externalModulesDir}/${libraryFileName}"
  )'!

Item was changed:
  ----- Method: CMPkgConfig>>defineAsTarget (in category 'generating actions') -----
  defineAsTarget
 
  gen puts: '
  add_custom_target(${libName}
  DEPENDS "${pkgConfigBinary}"
  )
  '
 
  !

Item was added:
+ ----- Method: CMThirdpartyLibrary>>copy:to: (in category 'generating actions') -----
+ copy: src to: dest
+
+ | str |
+
+
+ str := 'add_custom_command( OUTPUT "{2}"
+ COMMAND cp "{1}" "{2}"
+ DEPENDS "{1}"
+ )' format: {src. dest }.
+
+ gen puts: str!

Item was changed:
  ----- Method: CMThirdpartyLibrary>>generateFor: (in category 'generating cmake file') -----
  generateFor: aVMGenerator
 
+ | libDir stream contents |
- | libDir stream |
 
  vmGen := aVMGenerator.
 
  gen := CMakeGenerator new
  output: (String new writeStream).
 
  libDir := (aVMGenerator thirdpartyDir / self canonicalName) assureExistence.
 
+ stream := String new writeStream.
+
- stream := libDir forceNewFileNamed: gen outputFileName.
- stream ifNil: [ self error: 'Cannot write ',  gen outputFileName , 'to: ', libDir fullName ].
-
  self generate.
 
+ stream nextPutAll: (vmGen config fixLineEndsOf: gen output contents).
- stream nextPutAll: (vmGen config fixLineEndsOf: gen output contents); close.
 
+ contents := stream contents.
+
+ (self isFile: (libDir fullNameFor: gen outputFileName)  hasContents: contents) ifFalse: [
+ "contents changed, update the file. Because fucking cmake will force rebuild everything if we change its modification date
+ without changing its contents"
+ (libDir forceNewFileNamed: gen outputFileName) nextPutAll: contents; close.
+ ].
+
+
  vmGen addSubdirectory:  vmGen thirdpartyDirName , '/' , self canonicalName.
  self defineGlobalTargets.
  !

Item was added:
+ ----- Method: CMThirdpartyLibrary>>isFile:hasContents: (in category 'generating cmake file') -----
+ isFile: aFileName hasContents: aString
+
+ | newContents old |
+
+ newContents := false.
+
+ old := FileStream oldFileOrNoneNamed: aFileName.
+
+ old ifNil: [ ^ false ].
+
+ ^ [ old contents = aString ] ensure: [ old close ]!

Item was added:
+ CMCairo subclass: #CMWin32Cairo
+ instanceVariableNames: ''
+ classVariableNames: ''
+ poolDictionaries: ''
+ category: 'CMakeVMMaker-Libs'!

Item was added:
+ ----- Method: CMWin32Cairo class>>supports: (in category 'as yet unclassified') -----
+ supports: aConfig
+ ^  aConfig platformName  = 'win32' !

Item was added:
+ ----- Method: CMWin32Cairo>>build (in category 'as yet unclassified') -----
+ build
+ " Note: echo  #define _SSIZE_T_DEFINED 1 >> config.h
+ there just for a workaround of bug in cairo,
+ which fails the build it when building some unrelared utils. It does not affects library build, but i don't know how to tell it to not bother
+ building everything but just library
+ "
+
+
+ gen
+ puts:
+ '
+ add_custom_command(OUTPUT "${libcairoInstalled}"
+ COMMAND ./configure --prefix=''${installPrefix}'' PKG_CONFIG="${pkgconfigPath}"
+ PKG_CONFIG_PATH="${installPrefix}/lib/pkgconfig" CFLAGS="-m32 -march=pentium4 -I${installPrefix}/include" LDFLAGS="-m32 -march=pentium4 -L${installPrefix}/lib"
+ --disable-silent-rules --disable-xlib --disable-dependency-tracking
+
+ COMMAND echo "#define _SSIZE_T_DEFINED 1" >> config.h
+ COMMAND make
+ COMMAND make install
+ WORKING_DIRECTORY "${libSourcesDir}"
+ DEPENDS "${unpackTarget}" pkg-config freetype2 libpng pixman
+ COMMENT "Building ${libName}"
+ )
+ '
+ !

Item was added:
+ ----- Method: CMWin32Cairo>>libraryFileName (in category 'as yet unclassified') -----
+ libraryFileName
+
+ ^ 'libcairo-2.dll'!

Item was added:
+ ----- Method: CMWin32Cairo>>setVariables (in category 'as yet unclassified') -----
+ setVariables
+ super setVariables.
+ gen
+ set: #libraryFileName to: self libraryFileName;
+ set: #libcairoInstalled toString: '${installPrefix}/bin/${libraryFileName}'.
+ !

Item was added:
+ CMLibPng subclass: #CMWin32LibPng
+ instanceVariableNames: ''
+ classVariableNames: ''
+ poolDictionaries: ''
+ category: 'CMakeVMMaker-Libs'!

Item was added:
+ ----- Method: CMWin32LibPng class>>supports: (in category 'as yet unclassified') -----
+ supports: aConfig
+ ^  aConfig platformName  = 'win32' !

Item was added:
+ ----- Method: CMWin32LibPng>>build (in category 'as yet unclassified') -----
+ build
+
+ "LIBS=-L${installPrefix}/lib"
+ gen
+ puts:
+ '
+ add_custom_command(OUTPUT "${libpngInstalled}"
+ COMMAND ./configure --prefix=''${installPrefix}'' CFLAGS="-m32 -march=pentium4 -I${installPrefix}/include" CPPFLAGS="-m32 -I${installPrefix}/include" LDFLAGS="-m32 -march=pentium4 -L${installPrefix}/lib"
+ COMMAND make
+ COMMAND make install
+ COMMAND cp "${installPrefix}/lib/libpng.dll.a" "${installPrefix}/lib/libpng12.dll.a"
+ WORKING_DIRECTORY "${libSourcesDir}"
+ DEPENDS "${unpackTarget}" pkg-config
+ COMMENT "Building ${libName}"
+ )
+ '
+ !

Item was added:
+ ----- Method: CMWin32LibPng>>dependencies (in category 'as yet unclassified') -----
+ dependencies
+ ^ #( 'pkg-config' 'zlib')!

Item was added:
+ ----- Method: CMWin32LibPng>>downloadURL (in category 'as yet unclassified') -----
+ downloadURL
+ ^ 'ftp://ftp.simplesystems.org/pub/libpng/png/src/history/libpng12/libpng-1.2.49.tar.gz'
+ !

Item was added:
+ ----- Method: CMWin32LibPng>>libraryFileName (in category 'as yet unclassified') -----
+ libraryFileName
+
+ ^ 'libpng-3.dll'!

Item was added:
+ ----- Method: CMWin32LibPng>>setVariables (in category 'as yet unclassified') -----
+ setVariables
+ super setVariables.
+
+ "add include path"
+ gen
+ set: #libraryFileName to: self libraryFileName;
+ set: #libpngInstalled toString: '${installPrefix}/bin/${libraryFileName}'.
+ !

Item was added:
+ CMOpenSSL subclass: #CMWin32OpenSSL
+ instanceVariableNames: ''
+ classVariableNames: ''
+ poolDictionaries: ''
+ category: 'CMakeVMMaker-Libs'!

Item was added:
+ ----- Method: CMWin32OpenSSL class>>platformName (in category 'as yet unclassified') -----
+ platformName
+ ^'win32'!

Item was added:
+ ----- Method: CMWin32OpenSSL>>archiveMD5Sum (in category 'as yet unclassified') -----
+ archiveMD5Sum
+ "answer the MD5 checksum (in string) for downloaded library archive
+ (to check that downloaded file is not corrupt).
+
+ You can take this sum by issuing:
+  md5 filename
+ from command line
+ "
+ ^ 'ae412727c8c15b67880aef7bd2999b2e'!

Item was added:
+ ----- Method: CMWin32OpenSSL>>build (in category 'as yet unclassified') -----
+ build
+
+ gen
+ puts:
+ '
+ add_custom_command(OUTPUT "${libSourcesDir}/Makefile"
+ COMMAND ./config shared --prefix=''${installPrefix}''
+ WORKING_DIRECTORY "${libSourcesDir}"
+ DEPENDS "${unpackTarget}"
+ )
+
+ add_custom_command(OUTPUT "${libInstalled}"
+ COMMAND make
+ COMMAND make install
+ WORKING_DIRECTORY "${libSourcesDir}"
+ DEPENDS "${libSourcesDir}/Makefile"
+ COMMENT "Building ${libName}"
+ )
+ '
+ !

Item was added:
+ ----- Method: CMWin32OpenSSL>>configurationFlags (in category 'as yet unclassified') -----
+ configurationFlags
+ ^ 'shared'!

Item was added:
+ ----- Method: CMWin32OpenSSL>>copyArtefacts (in category 'as yet unclassified') -----
+ copyArtefacts
+
+ self copy: '${installPrefix}/bin/libeay32.dll' to: '${externalModulesDir}/libeay32.dll'.
+ self copy: '${installPrefix}/bin/ssleay32.dll' to: '${externalModulesDir}/ssleay32.dll'.
+ " self copy: '${installPrefix}/lib/libssl.dll.a' to: '${externalModulesDir}/libssl.dll.a'.
+ self copy: '${installPrefix}/lib/libcrypto.dll.a' to: '${externalModulesDir}/libcrypto.dll.a'.
+ "
+ "
+ 'libcrypto.dll.a' 'libssl.dll.a'.
+ "!

Item was added:
+ ----- Method: CMWin32OpenSSL>>defineAsTarget (in category 'as yet unclassified') -----
+ defineAsTarget
+
+ gen puts:
+ 'add_custom_target(', self buildTarget , '
+ DEPENDS
+ "${externalModulesDir}/libeay32.dll"
+ "${externalModulesDir}/ssleay32.dll"
+ )'
+
+ "${externalModulesDir}/${libraryFileName}"
+ !

Item was added:
+ ----- Method: CMWin32OpenSSL>>defineGlobalTargets (in category 'as yet unclassified') -----
+ defineGlobalTargets
+
+ !

Item was added:
+ ----- Method: CMWin32OpenSSL>>downloadURL (in category 'as yet unclassified') -----
+ downloadURL
+ ^'http://www.openssl.org/source/openssl-1.0.1c.tar.gz'!

Item was added:
+ ----- Method: CMWin32OpenSSL>>includeDir (in category 'as yet unclassified') -----
+ includeDir
+
+ ^ '"${thirdpartyDir}/out/include"'!

Item was added:
+ ----- Method: CMWin32OpenSSL>>libraryFileName (in category 'as yet unclassified') -----
+ libraryFileName
+ ^ 'libssl.dll.a'!

Item was added:
+ ----- Method: CMWin32OpenSSL>>setVariables (in category 'as yet unclassified') -----
+ setVariables
+ super setVariables.
+
+ gen
+ set: #libraryFileName to: self libraryFileName;
+ set: #libInstalled to: '${installPrefix}/lib/${libraryFileName}'!

Item was added:
+ ----- Method: CMWin32OpenSSL>>unpackedDirName (in category 'as yet unclassified') -----
+ unpackedDirName
+ ^ 'openssl-1.0.1c'!

Item was added:
+ CMPixman subclass: #CMWin32Pixman
+ instanceVariableNames: ''
+ classVariableNames: ''
+ poolDictionaries: ''
+ category: 'CMakeVMMaker-Libs'!

Item was added:
+ ----- Method: CMWin32Pixman class>>supports: (in category 'as yet unclassified') -----
+ supports: aConfig
+ ^  aConfig platformName  = 'win32' !

Item was added:
+ ----- Method: CMWin32Pixman>>build (in category 'as yet unclassified') -----
+ build
+
+ gen
+ puts:
+ '
+ add_custom_command(OUTPUT "${libpixmanInstalled}"
+ COMMAND ./configure --prefix=''${installPrefix}'' PKG_CONFIG="${pkgconfigPath}"
+ PKG_CONFIG_PATH="${installPrefix}/lib/pkgconfig" CFLAGS="-m32 -march=pentium4 -I${installPrefix}/include" LDFLAGS="-m32 -march=pentium4" LIBS="-L${installPrefix}/lib"
+ COMMAND make
+ COMMAND make install
+ WORKING_DIRECTORY "${libSourcesDir}"
+ DEPENDS "${unpackTarget}" pkg-config
+ COMMENT "Building ${libName}"
+ )
+ '
+ !

Item was added:
+ ----- Method: CMWin32Pixman>>libraryFileName (in category 'as yet unclassified') -----
+ libraryFileName
+ ^ 'libpixman-1-0.dll'!

Item was added:
+ ----- Method: CMWin32Pixman>>setVariables (in category 'as yet unclassified') -----
+ setVariables
+ super setVariables.
+
+ "add include path"
+ gen
+ set: #libraryFileName to: self libraryFileName;
+ set: #libpixmanInstalled toString: '${installPrefix}/bin/${libraryFileName}'.
+ !

Item was added:
+ CMPkgConfig subclass: #CMWin32PkgConfig
+ instanceVariableNames: ''
+ classVariableNames: ''
+ poolDictionaries: ''
+ category: 'CMakeVMMaker-Libs'!
+
+ !CMWin32PkgConfig commentStamp: '<historical>' prior: 0!
+ - use 0.27.1 version from official source, which builds on windows
+
+ http://pkgconfig.freedesktop.org/releases/pkg-config-0.27.1.tar.gz
+
+ - ./configure --with-internal-glib -!

Item was added:
+ ----- Method: CMWin32PkgConfig class>>supports: (in category 'as yet unclassified') -----
+ supports: aConfig
+ ^  aConfig platformName  = 'win32' !

Item was added:
+ ----- Method: CMWin32PkgConfig>>archiveMD5Sum (in category 'as yet unclassified') -----
+ archiveMD5Sum
+ ^ '5392b4e3372879c5bf856173b418d6a2'!

Item was added:
+ ----- Method: CMWin32PkgConfig>>build (in category 'as yet unclassified') -----
+ build
+ gen
+ puts: '
+ add_custom_command(OUTPUT "${pkgConfigBinary}"
+ COMMAND ./configure --prefix="${installPrefix}" --with-internal-glib CFLAGS="-m32 -march=pentium4" LDFLAGS="-m32 -march=pentium4"
+ COMMAND make
+ COMMAND make install
+ WORKING_DIRECTORY "${libSourcesDir}"
+ DEPENDS "${unpackTarget}"
+ COMMENT "Building ${libName}"
+ )
+ '
+ !

Item was added:
+ ----- Method: CMWin32PkgConfig>>defineGlobalTargets (in category 'as yet unclassified') -----
+ defineGlobalTargets
+
+ "none"
+ vmGen
+ set: #installPrefix toString: '${thirdpartyDir}/out';
+ set: #pkgconfigPath toString: '${installPrefix}/bin/pkg-config.exe'
+ !

Item was added:
+ ----- Method: CMWin32PkgConfig>>downloadURL (in category 'as yet unclassified') -----
+ downloadURL
+ ^ 'http://pkgconfig.freedesktop.org/releases/pkg-config-0.27.1.tar.gz'!

Item was added:
+ ----- Method: CMWin32PkgConfig>>setVariables (in category 'as yet unclassified') -----
+ setVariables
+
+ super setVariables.
+
+ gen set: #pkgConfigBinary toString: '${installPrefix}/bin/pkg-config.exe'!

Item was added:
+ ----- Method: CMWin32PkgConfig>>unpackedDirName (in category 'as yet unclassified') -----
+ unpackedDirName
+
+ ^ 'pkg-config-0.27.1'!

Item was added:
+ CMThirdpartyLibrary subclass: #CMWin32ZLib
+ instanceVariableNames: ''
+ classVariableNames: ''
+ poolDictionaries: ''
+ category: 'CMakeVMMaker-Libs'!

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

Item was added:
+ ----- Method: CMWin32ZLib class>>supports: (in category 'as yet unclassified') -----
+ supports: aConfig
+ ^  aConfig platformName  = 'win32' !

Item was added:
+ ----- Method: CMWin32ZLib>>archiveMD5Sum (in category 'as yet unclassified') -----
+ archiveMD5Sum
+ "answer the MD5 checksum (in string) for downloaded library archive
+ (to check that downloaded file is not corrupt).
+
+ You can take this sum by issuing:
+  md5 filename
+ from command line
+ "
+ ^ '60df6a37c56e7c1366cca812414f7b85'!

Item was added:
+ ----- Method: CMWin32ZLib>>build (in category 'as yet unclassified') -----
+ build
+
+ ' COMMAND ./configure --prefix="${installPrefix}" --archs="-arch i386" '.
+
+ gen
+ puts: '
+ add_custom_command(OUTPUT "${libzInstalled}"
+ COMMAND make -fwin32/Makefile.gcc
+ COMMAND make install -fwin32/Makefile.gcc prefix="${installPrefix}" INCLUDE_PATH="${installPrefix}/include" LIBRARY_PATH="${installPrefix}/lib" BINARY_PATH="${installPrefix}/bin" SHARED_MODE=1
+ WORKING_DIRECTORY "${libSourcesDir}"
+ DEPENDS "${unpackTarget}"
+ COMMENT "Building ${libName}"
+ )
+ '
+ !

Item was added:
+ ----- Method: CMWin32ZLib>>copyArtefacts (in category 'as yet unclassified') -----
+ copyArtefacts
+
+ self
+ copy: '${libzInstalled}'
+ to: '${externalModulesDir}/${libraryFileName}'
+ !

Item was added:
+ ----- Method: CMWin32ZLib>>defineAsTarget (in category 'as yet unclassified') -----
+ defineAsTarget
+
+ gen puts:
+ 'add_custom_target(', self buildTarget , '
+ DEPENDS
+ "${externalModulesDir}/${libraryFileName}"
+ )'
+
+ "${externalModulesDir}/${libraryFileName}"
+ !

Item was added:
+ ----- Method: CMWin32ZLib>>defineGlobalTargets (in category 'as yet unclassified') -----
+ defineGlobalTargets
+ !

Item was added:
+ ----- Method: CMWin32ZLib>>downloadURL (in category 'as yet unclassified') -----
+ downloadURL
+ ^ 'http://zlib.net/zlib-1.2.7.tar.gz'!

Item was added:
+ ----- Method: CMWin32ZLib>>libraryFileName (in category 'as yet unclassified') -----
+ libraryFileName
+ ^ 'zlib1.dll'!

Item was added:
+ ----- Method: CMWin32ZLib>>setVariables (in category 'as yet unclassified') -----
+ setVariables
+ super setVariables.
+ gen
+ set: #libraryFileName to: self libraryFileName;
+ set: #libzInstalled toString: '${installPrefix}/bin/${libraryFileName}'.
+ !

Item was added:
+ ----- Method: CMWin32ZLib>>unpackedDirName (in category 'as yet unclassified') -----
+ unpackedDirName
+ ^ 'zlib-1.2.7'!

Item was changed:
  ----- Method: CMakePluginGenerator>>generate (in category 'code generation') -----
  generate
 
  | name |
  output := String new writeStream.
 
  name := plugin moduleName.
  #( vmGen config setGlobalOptions: self.
 
  self
  printHeader;
  project: name;
  "include directories generated for build"
  include: '../directories.cmake'.
 
  self set: 'CMAKE_CONFIGURATION_TYPES' to: 'Release'.
  ).
 
  self message: (internal ifTrue: [ 'Adding internal plugin: '] ifFalse: ['Adding external plugin: '])  , name.
 
  self
  set: #pluginName toString: name;
  set: #pluginSrc toString: '${srcPluginsDir}/', name;
  set: #pluginCross toString: '${crossDir}/plugins/', name;
  set: #pluginPlatform toString: '${targetPlatform}/plugins/', name.
 
  "clear LINKLIBS variable"
  self set: #LINKLIBS to: ''.
 
  internal
  ifTrue: [ self puts: 'add_definitions(-DSQUEAK_BUILTIN_PLUGIN)'].
 
  self addSources: { name , '.c' } prefixed: '${pluginSrc}/'.
 
  " default include directories for plugin "
  self includeDirectories: '${pluginSrc} ${pluginCross} ${targetPlatform}/plugins/${pluginName}'.
 
  "Not needed because there are already there (inherited from main configuration)"
  "self addDefinitions: vmGen config compilerFlags."
 
  " perform config's configureXYZ: message to apply per-plugin custom rules, if any "
 
  vmGen config configurePlugin: plugin with: self.
 
  extraRules ifNotNil: [ extraRules value: self ].
 
  " generate a static lib for internal plugin, or shared for external"
  internal ifTrue: [
  self cmd: 'add_library' params:  name , ' STATIC ${sources}'.
  ] ifFalse: [
  self cmd: 'add_library' params: name , ' SHARED ${sources}'.
 
  " self cmd: 'set_property' params: 'TARGET ' , name , ' PROPERTY LINK_FLAGS -bundle'"
  ].
 
  vmGen config extraPluginSettings: self.
 
  self isExternal ifTrue: [
  self cmd: 'target_link_libraries'
  params: self moduleName , ' ${LINKLIBS}'.
  ].
 
  " see senders of #linkFlags "
  self
  cmd: 'set_property'
  params: 'TARGET ', name, ' PROPERTY LINK_FLAGS "${linkFlags}"'.
 
  "set dependencies"
+ self puts: 'IF (',self moduleName , '_dependencies)'.
- self puts: 'IF (${',self moduleName , '_dependencies})'.
 
  self cmd: 'add_dependencies'
  params: name , ' ${', self moduleName , '_dependencies}'.
 
+ self puts: 'ENDIF (',self moduleName , '_dependencies)'.
- self puts: 'ENDIF (${',self moduleName , '_dependencies})'.
  self saveFile.!

Item was changed:
  ----- Method: CogFamilyWindowsConfig>>configureSqueakSSLPlugin: (in category 'plugin extra rules') -----
  configureSqueakSSLPlugin: maker
+ | lib |
-
  maker addPlatformSources: #('sqUnixOpenSSL.c').
 
+ lib := self addThirdpartyLibrary: 'openssl'.
- maker addPlatformSources: #('libcrypto.dll.a' 'libssl.dll.a').
 
+ maker includeDirectories: lib includeDir.
- maker includeDirectories: '"C:/MinGW/msys/1.0/home/sig/openssl/openssl-1.0.1c/include/"'.
  maker linkDirectories: '${outputDir}'.
 
  maker addExternalLibraries:
  #(
+ 'libeay32.dll'
- 'libeay32.dll'
  'ssleay32.dll'
+ ).
+
+ maker addDependency: lib buildTarget
+ !
- )!

Item was changed:
  ----- Method: CogWindowsConfig>>compilerFlags (in category 'compiler flags') -----
  compilerFlags
  "depends on config ..."
  ^ self commonCompilerFlags, ' ' , self compilerFlagsRelease!

Item was added:
+ CogWindowsConfig subclass: #CogWindowsDebugConfig
+ instanceVariableNames: ''
+ classVariableNames: ''
+ poolDictionaries: ''
+ category: 'CMakeVMMaker-Windows'!

Item was added:
+ ----- Method: CogWindowsDebugConfig>>compilerFlags (in category 'as yet unclassified') -----
+ compilerFlags
+ "depends on config ..."
+ ^ self commonCompilerFlags, ' ' , self compilerFlagsDebug!

Item was added:
+ ----- Method: CogWindowsDebugConfig>>setExtraTargetProperties: (in category 'as yet unclassified') -----
+ setExtraTargetProperties: maker
+
+ maker addExternalLibraries: self externalLibraries.
+ maker set: 'EXECUTABLE_OUTPUT_PATH' toString: '${outputDir}'.
+
+ !