| Index: chrome/test/data/safe_browsing/mach_o/Makefile
|
| diff --git a/chrome/test/data/safe_browsing/mach_o/Makefile b/chrome/test/data/safe_browsing/mach_o/Makefile
|
| index 199685ba4be827136bd1cbccc42a0a523b0cfa34..d0a749849a934d6a40ff5ac76496fb09ad23cc95 100644
|
| --- a/chrome/test/data/safe_browsing/mach_o/Makefile
|
| +++ b/chrome/test/data/safe_browsing/mach_o/Makefile
|
| @@ -6,6 +6,12 @@ KEYCHAIN_PASSWORD=g0atMaster
|
| # This must match the commonName in codesign.cfg.
|
| KEYCHAIN_IDENTITY=untrusted@goat.local
|
|
|
| +# Funcitons to add and remove codesigning identity to user's keychain. These
|
| +# are necessary since the codesign utility no longer supports the -k option,
|
| +# which reads the identity from a file.
|
| +pre-build = security import codesign.key && security import codesign.crt
|
| +post-build = security delete-identity -c untrusted@goat.local
|
| +
|
| executable32: src.c
|
| clang -m32 -o $@ $^
|
|
|
| @@ -34,58 +40,57 @@ codesign.crt: codesign.csr codesign.key codesign.cfg
|
| openssl x509 -req -signkey codesign.key -sha256 \
|
| -extfile codesign.cfg -extensions req_attrs -in $< -out $@
|
|
|
| -codesign.keychain: codesign.key codesign.crt
|
| - security create-keychain -p $(KEYCHAIN_PASSWORD) $(PWD)/$@
|
| - security unlock-keychain -p $(KEYCHAIN_PASSWORD) $(PWD)/$@
|
| - certtool i ./codesign.crt k=$(PWD)/$@ r=./codesign.key
|
| -
|
| -signedexecutable32: executable32 codesign.keychain
|
| +signedexecutable32: executable32 codesign.crt
|
| + $(call pre-build)
|
| cp $< $@
|
| - security unlock-keychain -p $(KEYCHAIN_PASSWORD) \
|
| - $(PWD)/codesign.keychain
|
| - codesign -s $(KEYCHAIN_IDENTITY) --keychain $(PWD)/codesign.keychain $@
|
| + codesign -s $(KEYCHAIN_IDENTITY) $@
|
| + $(call post-build)
|
|
|
| -libsigned64.dylib: lib64.dylib codesign.keychain
|
| +libsigned64.dylib: lib64.dylib codesign.crt
|
| + $(call pre-build)
|
| cp $< $@
|
| - security unlock-keychain -p $(KEYCHAIN_PASSWORD) \
|
| - $(PWD)/codesign.keychain
|
| - codesign -s $(KEYCHAIN_IDENTITY) --keychain $(PWD)/codesign.keychain $@
|
| + codesign -s $(KEYCHAIN_IDENTITY) $@
|
| + $(call post-build)
|
|
|
| -signedexecutablefat: executablefat codesign.keychain
|
| +signedexecutablefat: executablefat codesign.crt
|
| + $(call pre-build)
|
| cp $< $@
|
| - security unlock-keychain -p $(KEYCHAIN_PASSWORD) \
|
| - $(PWD)/codesign.keychain
|
| - codesign -s $(KEYCHAIN_IDENTITY) --keychain $(PWD)/codesign.keychain \
|
| - $@ --all-architectures
|
| + codesign -s $(KEYCHAIN_IDENTITY) $@ --all-architectures
|
| + $(call post-build)
|
| +
|
| +signed-archive.dmg: test-bundle.app codesign.crt
|
| + $(call pre-build)
|
| + hdiutil create -srcfolder test-bundle.app -format UDZO -layout \
|
| + SPUD -volname "Signed Archive" -ov $@
|
| + codesign -s $(KEYCHAIN_IDENTITY) $@
|
| + $(call post-build)
|
|
|
| .PHONY: test-bundle.app
|
| test-bundle.app: signedexecutablefat libsigned64.dylib executable32
|
| + $(call pre-build)
|
| ditto base-bundle.app $@
|
| ditto $< $@/Contents/MacOS/test-bundle
|
| ditto $(word 2,$^) $@/Contents/Frameworks/$(word 2,$^)
|
| ditto $(word 3,$^) $@/Contents/Resources/$(word 3,$^)
|
| - security unlock-keychain -p $(KEYCHAIN_PASSWORD) \
|
| - $(PWD)/codesign.keychain
|
| - codesign -f -s $(KEYCHAIN_IDENTITY) --keychain $(PWD)/codesign.keychain \
|
| - $@ --all-architectures --resource-rules ResourceRules
|
| + codesign -f -s $(KEYCHAIN_IDENTITY) $@ --all-architectures \
|
| + --resource-rules ResourceRules
|
| + $(call post-build)
|
|
|
| .PHONY: modified-bundle.app
|
| modified-bundle.app: test-bundle.app lib32.dylib executable64
|
| + $(call pre-build)
|
| ditto $< $@
|
| echo "<xml/>" > $@/Contents/Resources/Base.lproj/InfoPlist.strings
|
| - security unlock-keychain -p $(KEYCHAIN_PASSWORD) \
|
| - $(PWD)/codesign.keychain
|
| - codesign -f -s $(KEYCHAIN_IDENTITY) --keychain $(PWD)/codesign.keychain \
|
| - $@ --all-architectures --resource-rules ResourceRules
|
| + codesign -f -s $(KEYCHAIN_IDENTITY) $@ --all-architectures \
|
| + --resource-rules ResourceRules
|
| echo "BAD" > $@/Contents/Resources/Base.lproj/InfoPlist.strings
|
| touch $@/Contents/Resources/codesign.cfg
|
| ditto $(word 2,$^) $@/Contents/Frameworks/libsigned64.dylib
|
| ditto $(word 3,$^) $@/Contents/Resources/executable32
|
| echo "foo" >> $@/Contents/Resources/Base.lproj/MainMenu.nib
|
| - security unlock-keychain -p $(KEYCHAIN_PASSWORD) \
|
| - $(PWD)/codesign.keychain
|
| - codesign -f -s $(KEYCHAIN_IDENTITY) --keychain $(PWD)/codesign.keychain \
|
| + codesign -f -s $(KEYCHAIN_IDENTITY) \
|
| $@/Contents/Resources/Base.lproj/MainMenu.nib
|
| + $(call post-build)
|
|
|
| .PHONY: modified-bundle-and-exec.app
|
| modified-bundle-and-exec.app: test-bundle.app lib32.dylib executable64
|
| @@ -110,10 +115,10 @@ modified-main-exec64.app: test-bundle.app
|
|
|
| .PHONY: modified-localization.app
|
| modified-localization.app: test-bundle.app
|
| + $(call pre-build)
|
| ditto $< $@
|
| echo "<xml/>" > $@/Contents/Resources/Base.lproj/InfoPlist.strings
|
| - security unlock-keychain -p $(KEYCHAIN_PASSWORD) \
|
| - $(PWD)/codesign.keychain
|
| - codesign -f -s $(KEYCHAIN_IDENTITY) --keychain $(PWD)/codesign.keychain \
|
| - $@ --all-architectures --resource-rules ResourceRules
|
| + codesign -f -s $(KEYCHAIN_IDENTITY) $@ --all-architectures \
|
| + --resource-rules ResourceRules
|
| echo "CORRUPT" > $@/Contents/Resources/Base.lproj/InfoPlist.strings
|
| + $(call post-build)
|
|
|