summaryrefslogtreecommitdiffstats
path: root/zenmap/install_scripts/macosx/zenmap.bundle
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--zenmap/install_scripts/macosx/zenmap.bundle144
1 files changed, 144 insertions, 0 deletions
diff --git a/zenmap/install_scripts/macosx/zenmap.bundle b/zenmap/install_scripts/macosx/zenmap.bundle
new file mode 100644
index 0000000..dff4c31
--- /dev/null
+++ b/zenmap/install_scripts/macosx/zenmap.bundle
@@ -0,0 +1,144 @@
+<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*-->
+<!DOCTYPE app-bundle [
+<!ENTITY PYVER "3.10">
+<!ENTITY pyreqs SYSTEM "pyreqs.xml">
+]>
+<app-bundle>
+
+ <meta>
+ <!-- Where to pick up the GTK+ installation, icon themes,
+ etc. Note that "${env:JHBUILD_PREFIX}" is evaluated to the
+ value of the environment variable JHBUILD_PREFIX. You can
+ define additional prefixes and refer to them in paths
+ throughout this file on the form "${prefix:name}". This is
+ useful for installing certain libraries or even the
+ application itself separately. Note that JHBUILD_PREFIX is
+ defined by jhbuild, so it you are not using jhbuild you can
+ either define your own or just hardcode the path here.
+ -->
+ <prefix name="default">${env:JHBUILD_PREFIX}</prefix>
+
+ <!-- The project directory is the default location of the created
+ app. If you leave out the path, the current directory is
+ used. Note the usage of an environment variable here again.
+ -->
+ <destination overwrite="yes">${env:ZENMAP_DIST_DIR}</destination>
+
+ <!-- Comment this out to keep the install names in binaries. -->
+ <run-install-name-tool/>
+
+ <!-- REMOVED: A launcher script is pretty much mandatory here so that we can
+ set $PYTHON to point to the python in the bundle.
+ <launcher-script>${project}/launcher.sh</launcher-script>
+ -->
+
+ <!-- Indicate the active gtk version to use. This is needed only
+ for gtk+-3.0 projects. -->
+ <gtk>gtk+-3.0</gtk>
+ </meta>
+
+ <!-- The special macro "${project}" refers to the directory where
+ this bundle file is located. The application name and bundle
+ identifier are taken from the plist file.
+ -->
+ <plist>${project}/Info.plist</plist>
+
+<!-- See examples/python-launcher.bundle for info on entitlements if needed -->
+<!-- NEW! -->
+ <!-- Build gramps-launcher with:
+ gcc -L$PREFIX/lib `python-config -\-cflags -\-ldflags` \
+ -o $PREFIX/bin/python-launcher \
+ path/to/gtk-mac-bundler/examples/python-launcher.c
+ with the obvious substitution.
+ -->
+ <main-binary>
+ ${prefix}/bin/zenmap-launcher
+ </main-binary>
+
+ <!-- We need to pack our own Python to avoid compatibility problems. -->
+ <binary dest="${bundle}/Contents/MacOS">
+ ${prefix}/bin/python3
+ </binary>
+ <!-- Copy in GTK+ modules. Note the use of the
+ "${pkg:module:variable}" macro, which evaluates to a pkg-config
+ variable in the specified module. Note that any libraries that
+ binaries link to are also copied in automatically.
+ -->
+<!-- PNG is built-in -->
+ <binary>
+ ${prefix}/lib/gdk-pixbuf-2.0/${pkg:gdk-pixbuf-2.0:gdk_pixbuf_binary_version}/loaders/libpixbufloader-gif.so
+ </binary>
+
+<!-- Copy in the quartz input method. The rest aren't used on MacOS. -->
+ <binary>
+ ${prefix}/lib/${gtkdir}/${pkg:${gtk}:gtk_binary_version}/immodules/im-quartz.so
+ </binary>
+
+<!-- And the print backends -->
+ <binary>
+ ${prefix}/lib/${gtkdir}/${pkg:${gtk}:gtk_binary_version}/printbackends/*.so
+ </binary>
+
+ <!-- Python modules other than tnese are grabbed with get_deps.py -->
+ <binary>
+ ${prefix}/lib/python&PYVER;/site-packages/gi/*.so
+ </binary>
+ <binary>
+ ${prefix}/lib/python&PYVER;/site-packages/cairo/*.so
+ </binary>
+
+&pyreqs;
+
+ <binary>
+ ${prefix}/lib/libgtkmacintegration-gtk3.dylib
+ </binary>
+
+ <gir> ${prefix}/share/gir-1.0/Atk-1.0.gir </gir>
+ <gir> ${prefix}/share/gir-1.0/GLib-2.0.gir </gir>
+ <gir> ${prefix}/share/gir-1.0/GModule-2.0.gir </gir>
+ <gir> ${prefix}/share/gir-1.0/GObject-2.0.gir </gir>
+ <gir> ${prefix}/share/gir-1.0/Gdk-3.0.gir </gir>
+ <gir> ${prefix}/share/gir-1.0/GdkPixbuf-2.0.gir </gir>
+ <gir> ${prefix}/share/gir-1.0/Gio-2.0.gir </gir>
+ <gir> ${prefix}/share/gir-1.0/Gtk-3.0.gir </gir>
+ <gir> ${prefix}/share/gir-1.0/HarfBuzz-0.0.gir </gir>
+ <gir> ${prefix}/share/gir-1.0/Pango-1.0.gir </gir>
+ <gir> ${prefix}/share/gir-1.0/PangoCairo-1.0.gir </gir>
+ <gir> ${prefix}/share/gir-1.0/PangoOT-1.0.gir </gir>
+ <gir> ${prefix}/share/gir-1.0/cairo-1.0.gir </gir>
+ <gir> ${prefix}/share/gir-1.0/freetype2-2.0.gir </gir>
+
+ <!-- This python file sets up all of the environment variables
+ needed to run your program. The example contains those
+ necessary for running a basic Gtk program. -->
+ <data dest="${bundle}/Contents/Resources">
+ ${project}/zenmap_launcher.py
+ </data>
+
+ <data>
+ ${prefix}/share/glib-2.0/schemas
+ </data>
+
+
+ <!-- Copy icons. Note that the .icns file is an Apple format which
+ contains up to 4 sizes of icon. You can use
+ /Developer/Applications/Utilities/Icon Composer.app to import
+ artwork and create the file. -->
+ <data dest="${bundle}/Contents/Resources">
+ ${project}/zenmap.icns
+ </data>
+
+ <!-- Icon themes to copy. The "icons" property can be either of
+ "auto", "all", or "none". All or none should be
+ self-explanatory, while auto means that the script will try to
+ figure out which icons are needed. This is done by getting all
+ the strings from all copied binaries, and matching them against
+ icon names. To be safe, you should use "all". "none" is useful
+ if you want just the index.theme file but no icons, mostly
+ needed for the "hicolor" base theme.
+ >
+ <icon-theme icons="none">
+ Tango
+ </icon-theme -->
+
+</app-bundle>