]> gitweb.factorcode.org Git - factor.git/commitdiff
mason.release.archive: Sign the .app if ~/config/mac_app.cer exists.
authorDoug Coleman <doug.coleman@gmail.com>
Wed, 15 Jul 2015 20:11:08 +0000 (13:11 -0700)
committerDoug Coleman <doug.coleman@gmail.com>
Wed, 15 Jul 2015 20:11:08 +0000 (13:11 -0700)
extra/mason/release/archive/archive.factor

index 464a64ef2892b2124908d2b4bcc26e77cb981567..5932771900d7d1fcac0c85a46d60b63f7f879a9c 100644 (file)
@@ -1,9 +1,9 @@
 ! Copyright (C) 2008 Eduardo Cavazos, Slava Pestov.
 ! See http://factorcode.org/license.txt for BSD license.
 USING: accessors combinators io.directories
-io.directories.hierarchy io.pathnames kernel locals make
-mason.common mason.config mason.platform namespaces sequences
-system words ;
+io.directories.hierarchy io.files io.pathnames kernel locals
+make mason.common mason.config mason.platform namespaces
+sequences system words ;
 IN: mason.release.archive
 
 : base-name ( -- string )
@@ -32,7 +32,23 @@ IN: mason.release.archive
         archive-name
     } short-running-process ;
 
+: cert-path ( -- path )
+    home "config/mac_app.cer" append-path ;
+
+: sign-factor.app? ( -- ? ) cert-path exists? ;
+
+:: sign-factor.app ( -- )
+    {
+        "codesign" "--force" "--sign"
+        "Developer ID Application"
+    }
+    cert-path suffix
+    "Factor.app/" suffix
+    short-running-process ;
+
+! Make the .dmg
 : make-macosx-archive ( archive-name -- )
+    sign-factor.app? [ sign-factor.app ] when
     "dmg-root" make-directory
     "factor" "dmg-root" copy-tree-into
     "factor" "dmg-root" make-disk-image