/
githubmirror
/
nmap
Обзор
Документация
Войти
/
githubmirror
/
nmap
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
zenmap/install_scripts/macosx/zenmap.bundle
147 строк
5 KB
dmiller
macOS build changes
07 авг 2026, 18:40
07 авг 2026, 18:40
2a5d64e
Код
Авторство
О чём код?
<?xml version="1.0" standalone="no"?> <!--*- mode: xml -*--> <!DOCTYPE app-bundle [ <!ENTITY PYVER "3.14"> <!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 and GIF are 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 these 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> <data> ${prefix}/lib/python&PYVER;/site-packages/zenmapCore/data </data> &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>