blob: dff4c318bd291c74e9254d0e420329cd9dfdc95a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
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>
|