]> git.saurik.com Git - wxWidgets.git/blobdiff - build/bakefiles/mac_bundles.bkl
fixes potential crash under gatekeeper
[wxWidgets.git] / build / bakefiles / mac_bundles.bkl
index ca4441b8f6df8b8dbdbcfe85e1de0eae44eae224..470cd19a8948bacb5f79d3628b7fa1878707de52 100644 (file)
@@ -4,7 +4,7 @@
 <makefile>
 
     <!--
-    Support for application bundles, for wxWindows samples.
+    Support for application bundles, for wxWidgets samples.
     -->
     
     <!-- 
         `echo $(DOLLAR)(srcdir) | sed -e 's,\.\./,,g' | sed -e 's,/,.,g'`
     </set>
     
-    <set var="BUNDLE_PLIST">
-        $(TOP_SRCDIR)src/mac/carbon/Info.plist.in
+    <set var="BUNDLE_PLIST" overwrite="0">
+        $(TOP_SRCDIR)src/osx/carbon/Info.plist.in
     </set>
-    <set var="BUNDLE_RESOURCE">
-        $(LIBDIRNAME)/libwx_$(TOOLCHAIN_NAME).$(WXSOVERSION[0]).rsrc
-    </set>
-    <set var="BUNDLE_ICONS">
-        $(TOP_SRCDIR)src/mac/carbon/wxmac.icns
+    <set var="BUNDLE_ICON" overwrite="0">
+        $(TOP_SRCDIR)src/osx/carbon/wxmac.icns
     </set>
+    <set var="BUNDLE_RESOURCES" overwrite="0"></set>
 
     <define-tag name="wx-mac-app-bundle" rules="exe">
 
         <!-- bundle directory: -->
         <set var="BUNDLE">$(id).app/Contents</set>
         <set var="BUNDLE_TGT">$(BUNDLE)/PkgInfo</set>
-        
-        <add-target target="$(BUNDLE_TGT)" type="action"/>
+        <set var="BUNDLE_TGT_REF">
+            <!-- TODO Remove Mac -->
+            <if cond="TOOLKIT=='MAC'">$(BUNDLE)/PkgInfo</if>
+            <if cond="TOOLKIT=='OSX_CARBON'">$(BUNDLE)/PkgInfo</if>
+            <if cond="TOOLKIT=='OSX_COCOA'">$(BUNDLE)/PkgInfo</if>
+            <if cond="TOOLKIT=='OSX_IPHONE'">$(BUNDLE)/PkgInfo</if>
+            <if cond="TOOLKIT=='COCOA'">$(BUNDLE)/PkgInfo</if>
+        </set>
+
+        <add-target target="$(BUNDLE_TGT)" type="action"
+                    cond="target and PLATFORM_MACOSX=='1'"/>
         <modify-target target="$(BUNDLE_TGT)">
             <!-- required data: -->
             <depends>$(id)</depends>
             <depends-on-file>$(BUNDLE_PLIST)</depends-on-file>
-            <depends-on-file>$(BUNDLE_RESOURCE)</depends-on-file>
-            <depends-on-file>$(BUNDLE_ICONS)</depends-on-file>
+            <depends-on-file>$(BUNDLE_ICON)</depends-on-file>
+            <depends-on-file>$(BUNDLE_RESOURCES)</depends-on-file>
 
             <command>
                 <!-- create the directories: -->
                     $(BUNDLE_PLIST) >$(BUNDLE)/Info.plist
 
                 <!-- PkgInfo: -->
-                echo -n "APPL????" >$(BUNDLE)/PkgInfo
+                /bin/echo "APPL????" >$(BUNDLE)/PkgInfo
 
-                <!-- make a hardlink to the binary: -->
+                <!-- move the binary: -->
                 ln -f $(ref("__targetdir",id))$(ref("__targetname",id)) $(BUNDLE)/MacOS/$(id)
 
-                <!-- ditto wxWindows resources and icons: -->
-                cp -f $(BUNDLE_RESOURCE) $(BUNDLE)/Resources/$(id).rsrc
-                cp -f $(BUNDLE_ICONS) $(BUNDLE)/Resources/wxmac.icns
-            </command>            
+                <!-- copy the application icon: -->
+                cp -f $(BUNDLE_ICON) $(BUNDLE)/Resources/wxmac.icns
+               </command>            
+            <if cond="BUNDLE_RESOURCES!=''">
+                <command>
+                    <!-- copy all other bundle resources: -->
+                    cp -f $(BUNDLE_RESOURCES) $(BUNDLE)/Resources
+                </command>
+            </if>
         </modify-target>
         
         <!-- add pseudo target id_bundle: -->
         <add-target target="$(id)_bundle" type="phony"
-                    cond="PLATFORM_MACOSX=='1'"/>
+                    cond="target and PLATFORM_MACOSX=='1'"/>
         <modify-target target="$(id)_bundle">
             <dependency-of>all</dependency-of>
-            <depends>$(BUNDLE_TGT)</depends>
+            <depends>$(BUNDLE_TGT_REF)</depends>
         </modify-target>
 
         <!-- "make clean" should delete the bundle: -->