1
0
mirror of https://github.com/nmap/nmap.git synced 2025-12-06 04:31:29 +00:00
Files
nmap/zenmap/install_scripts/macosx/zenmap.bundle
2024-03-21 20:20:00 +00:00

145 lines
5.3 KiB
XML

<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*-->
<!DOCTYPE app-bundle [
<!ENTITY PYVER "3.11">
<!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>