Skip to content

Commit

Permalink
Preparation for 3.4.1 release.
Browse files Browse the repository at this point in the history
  • Loading branch information
erikdoe committed Nov 4, 2017
1 parent c2197a8 commit 37cfe60
Show file tree
Hide file tree
Showing 3 changed files with 28 additions and 9 deletions.
2 changes: 1 addition & 1 deletion OCMock.podspec
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Pod::Spec.new do |s|
s.name = "OCMock"
s.version = "3.4"
s.version = "3.4.1"

s.summary = "Mock objects for Objective-C"
s.description = <<-DESC
Expand Down
12 changes: 12 additions & 0 deletions Source/Changes.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,18 @@
Listing of notable changes by release. More detail is usually found in the Git
commit messages and/or the pull requests.

OCMock 3.4.1 (2017-11-04)

* Added workaround for crashes when mocking NSManagedObjects. As a side effect
it is no longer possible to verify the invocation of class methods on
NSManagedObject; see issue #338 for details.
* Fixed a memory leak with andThrow:. (Nick Gillett)
* Fixed bug that prevented protocol mocks from being used with
invokeWithBlock:. (Christopher McGrath)
* Changed type comparison for structs to match new runtime. (Sylvain Defresne)
* Added polyfill for compilation with 10.9 and lower SDKs. (Sylvain Defresne)


OCMock 3.4 (2016-12-22)

* OCMock now requires iOS 8 as minimum deployment target
Expand Down
23 changes: 15 additions & 8 deletions Tools/build.rb
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ def makeRelease
copySource
buildModules
signFrameworks "[email protected]"
createPackage "ocmock-3.4.dmg", "OCMock 3.4"
createPackage "ocmock-3.4-1.dmg", "OCMock 3.4-1"
sanityCheck
openPackageDir
end
Expand Down Expand Up @@ -47,22 +47,22 @@ def buildModules
@worker.run("mkdir -p #{osxproductdir}")
@worker.run("cp -R #{@env.symroot}/Release/OCMock.framework #{osxproductdir}")

@worker.run("xcodebuild -project OCMock.xcodeproj -target OCMockLib -sdk iphoneos10.2 OBJROOT=#{@env.objroot} SYMROOT=#{@env.symroot}")
@worker.run("xcodebuild -project OCMock.xcodeproj -target OCMockLib -sdk iphonesimulator10.2 OBJROOT=#{@env.objroot} SYMROOT=#{@env.symroot}")
@worker.run("xcodebuild -project OCMock.xcodeproj -target OCMockLib -sdk iphoneos11.1 OBJROOT=#{@env.objroot} SYMROOT=#{@env.symroot}")
@worker.run("xcodebuild -project OCMock.xcodeproj -target OCMockLib -sdk iphonesimulator11.1 OBJROOT=#{@env.objroot} SYMROOT=#{@env.symroot}")
ioslibproductdir = "#{@env.productdir}/iOS\\ library"
@worker.run("mkdir -p #{ioslibproductdir}")
@worker.run("cp -R #{@env.symroot}/Release-iphoneos/OCMock #{ioslibproductdir}")
@worker.run("lipo -create -output #{ioslibproductdir}/libOCMock.a #{@env.symroot}/Release-iphoneos/libOCMock.a #{@env.symroot}/Release-iphonesimulator/libOCMock.a")

@worker.run("xcodebuild -project OCMock.xcodeproj -target 'OCMock iOS' -sdk iphoneos10.2 OBJROOT=#{@env.objroot} SYMROOT=#{@env.symroot}")
@worker.run("xcodebuild -project OCMock.xcodeproj -target 'OCMock iOS' -sdk iphonesimulator10.2 OBJROOT=#{@env.objroot} SYMROOT=#{@env.symroot}")
@worker.run("xcodebuild -project OCMock.xcodeproj -target 'OCMock iOS' -sdk iphoneos11.1 OBJROOT=#{@env.objroot} SYMROOT=#{@env.symroot}")
@worker.run("xcodebuild -project OCMock.xcodeproj -target 'OCMock iOS' -sdk iphonesimulator11.1 OBJROOT=#{@env.objroot} SYMROOT=#{@env.symroot}")
iosproductdir = "#{@env.productdir}/iOS\\ framework"
@worker.run("mkdir -p #{iosproductdir}")
@worker.run("cp -R #{@env.symroot}/Release-iphoneos/OCMock.framework #{iosproductdir}")
@worker.run("lipo -create -output #{iosproductdir}/OCMock.framework/OCMock #{@env.symroot}/Release-iphoneos/OCMock.framework/OCMock #{@env.symroot}/Release-iphonesimulator/OCMock.framework/OCMock")

@worker.run("xcodebuild -project OCMock.xcodeproj -target 'OCMock tvOS' -sdk appletvos10.1 OBJROOT=#{@env.objroot} SYMROOT=#{@env.symroot}")
@worker.run("xcodebuild -project OCMock.xcodeproj -target 'OCMock tvOS' -sdk appletvsimulator10.1 OBJROOT=#{@env.objroot} SYMROOT=#{@env.symroot}")
@worker.run("xcodebuild -project OCMock.xcodeproj -target 'OCMock tvOS' -sdk appletvos11.1 OBJROOT=#{@env.objroot} SYMROOT=#{@env.symroot}")
@worker.run("xcodebuild -project OCMock.xcodeproj -target 'OCMock tvOS' -sdk appletvsimulator11.1 OBJROOT=#{@env.objroot} SYMROOT=#{@env.symroot}")
tvosproductdir = "#{@env.productdir}/tvOS"
@worker.run("mkdir -p #{tvosproductdir}")
@worker.run("cp -R #{@env.symroot}/Release-appletvos/OCMock.framework #{tvosproductdir}")
Expand Down Expand Up @@ -105,13 +105,20 @@ def sanityCheck
tvosproductdir = "#{@env.productdir}/tvOS"

@worker.run("lipo -info #{osxproductdir}/OCMock.framework/OCMock")
puts "^^ 1/4 binaries; architectures should be x86_64\n\n"
@worker.run("lipo -info #{ioslibproductdir}/libOCMock.a")
puts "^^ 2/4 binaries; architectures should be armv7 i386 x86_64 arm64\n\n"
@worker.run("lipo -info #{iosproductdir}/OCMock.framework/OCMock")
puts "^^ 3/4 binaries; architectures should be i386 x86_64 armv7 arm64\n\n"
@worker.run("lipo -info #{tvosproductdir}/OCMock.framework/OCMock")

puts "^^ 4/4 binaries; architectures should be x86_64 arm64\n\n"

@worker.run("codesign -dvv #{osxproductdir}/OCMock.framework")
puts "^^ 1/3 signed binaries\n\n"
@worker.run("codesign -dvv #{iosproductdir}/OCMock.framework")
puts "^^ 2/3 signed binaries\n\n"
@worker.run("codesign -dvv #{tvosproductdir}/OCMock.framework")
puts "^^ 3/3 signed binaries\n\n"
end

def upload(packagename, dest)
Expand Down

0 comments on commit 37cfe60

Please sign in to comment.