Linux ns1.utparral.edu.mx 6.8.0-79-generic #79~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Fri Aug 15 16:54:53 UTC 2 x86_64
Apache/2.4.58 (Unix) OpenSSL/1.1.1w PHP/8.2.12 mod_perl/2.0.12 Perl/v5.34.1
: 10.10.1.9 | : 10.10.1.254
Cant Read [ /etc/named.conf ]
daemon
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
README
+ Create Folder
+ Create File
/
snap /
gnome-42-2204 /
202 /
usr /
bin /
[ HOME SHELL ]
Name
Size
Permission
Action
X11
[ DIR ]
drwxr-xr-x
aclocal-1.16
35.18
KB
-rwxr-xr-x
appstreamcli
118.23
KB
-rwxr-xr-x
appstream-compose
26.3
KB
-rwxr-xr-x
appstream-util
98.3
KB
-rwxr-xr-x
autoconf
14.85
KB
-rwxr-xr-x
autoheader
8.82
KB
-rwxr-xr-x
autom4te
32.69
KB
-rwxr-xr-x
automake-1.16
255.91
KB
-rwxr-xr-x
autoreconf
26.3
KB
-rwxr-xr-x
autoscan
16.77
KB
-rwxr-xr-x
autoupdate
33.22
KB
-rwxr-xr-x
broadwayd
130.21
KB
-rwxr-xr-x
bwrap
70.47
KB
-rwxr-xr-x
c89-gcc
428
B
-rwxr-xr-x
c99-gcc
454
B
-rwxr-xr-x
cairo-trace
2.95
KB
-rwxr-xr-x
canberra-gtk-play
18.2
KB
-rwxr-xr-x
corelist
15.01
KB
-rwxr-xr-x
cpan
8.16
KB
-rwxr-xr-x
cpan5.34-x86_64-linux-gnu
8.18
KB
-rwxr-xr-x
curl-config
6.52
KB
-rwxr-xr-x
dazzle-list-counters
14.13
KB
-rwxr-xr-x
debconf
2.79
KB
-rwxr-xr-x
debconf-apt-progress
11.27
KB
-rwxr-xr-x
debconf-communicate
608
B
-rwxr-xr-x
debconf-copydb
1.68
KB
-rwxr-xr-x
debconf-escape
647
B
-rwxr-xr-x
debconf-set-selections
2.92
KB
-rwxr-xr-x
debconf-show
1.78
KB
-rwxr-xr-x
derb
26.88
KB
-rwxr-xr-x
desktop-file-edit
96.44
KB
-rwxr-xr-x
desktop-file-install
96.44
KB
-rwxr-xr-x
desktop-file-validate
76.69
KB
-rwxr-xr-x
dh_autotools-dev_restoreconfig
1.79
KB
-rwxr-xr-x
dh_autotools-dev_updateconfig
1.81
KB
-rwxr-xr-x
dh_girepository
12.88
KB
-rwxr-xr-x
dumpsexp
18.3
KB
-rwxr-xr-x
enc2xs
40.84
KB
-rwxr-xr-x
encguess
3.01
KB
-rwxr-xr-x
envsubst
34.38
KB
-rwxr-xr-x
fc-cache
22.23
KB
-rwxr-xr-x
fc-cat
18.23
KB
-rwxr-xr-x
fc-conflist
14.23
KB
-rwxr-xr-x
fc-list
14.23
KB
-rwxr-xr-x
fc-match
14.23
KB
-rwxr-xr-x
fc-pattern
14.23
KB
-rwxr-xr-x
fc-query
14.23
KB
-rwxr-xr-x
fc-scan
14.23
KB
-rwxr-xr-x
fc-validate
14.23
KB
-rwxr-xr-x
file
26.56
KB
-rwxr-xr-x
fribidi
26.99
KB
-rwxr-xr-x
gapplication
22.21
KB
-rwxr-xr-x
gdbus
54.21
KB
-rwxr-xr-x
gdbus-codegen
1.99
KB
-rwxr-xr-x
gdk-pixbuf-csource
14.15
KB
-rwxr-xr-x
gdk-pixbuf-pixdata
14.13
KB
-rwxr-xr-x
gdk-pixbuf-thumbnailer
18.21
KB
-rwxr-xr-x
genbrk
14.78
KB
-rwxr-xr-x
gencat
26.37
KB
-rwxr-xr-x
gencfu
14.73
KB
-rwxr-xr-x
gencnval
26.61
KB
-rwxr-xr-x
gendict
26.78
KB
-rwxr-xr-x
genrb
147.91
KB
-rwxr-xr-x
getconf
34.29
KB
-rwxr-xr-x
getent
38.65
KB
-rwxr-xr-x
gettext
34.38
KB
-rwxr-xr-x
gettextize
41.28
KB
-rwxr-xr-x
gettext.sh
5.07
KB
-rwxr-xr-x
gio
102.23
KB
-rwxr-xr-x
gio-querymodules
18.13
KB
-rwxr-xr-x
gjs
26.7
KB
-rwxr-xr-x
gjs-console
26.7
KB
-rwxr-xr-x
glib-compile-schemas
66.21
KB
-rwxr-xr-x
gobject-query
14.14
KB
-rwxr-xr-x
gpg-error-config
2.04
KB
-rwxr-xr-x
gpgrt-config
13.11
KB
-rwxr-xr-x
gresource
26.13
KB
-rwxr-xr-x
gsettings
30.21
KB
-rwxr-xr-x
gsound-play
18.21
KB
-rwxr-xr-x
gtk4-broadwayd
150.22
KB
-rwxr-xr-x
gtk4-encode-symbolic-svg
8.58
MB
-rwxr-xr-x
gtk4-launch
18.29
KB
-rwxr-xr-x
gtk4-query-settings
14.13
KB
-rwxr-xr-x
gtk4-rendernode-tool
30.13
KB
-rwxr-xr-x
gtk-encode-symbolic-svg
22.24
KB
-rwxr-xr-x
gtk-launch
18.29
KB
-rwxr-xr-x
gtk-query-settings
14.13
KB
-rwxr-xr-x
gtk-update-icon-cache
38.57
KB
-rwxr-xr-x
hb-info
54.21
KB
-rwxr-xr-x
hb-ot-shape-closure
46.21
KB
-rwxr-xr-x
hb-shape
50.21
KB
-rwxr-xr-x
hb-subset
46.18
KB
-rwxr-xr-x
hb-view
82.35
KB
-rwxr-xr-x
hmac256
18.7
KB
-rwxr-xr-x
iconv
66.41
KB
-rwxr-xr-x
icuexportdata
30.98
KB
-rwxr-xr-x
icuinfo
14.62
KB
-rwxr-xr-x
ifnames
4.08
KB
-rwxr-xr-x
instmodsh
4.27
KB
-rwxr-xr-x
ispell-wrapper
7.05
KB
-rwxr-xr-x
itstool
67.8
KB
-rwxr-xr-x
js102
28.97
MB
-rwxr-xr-x
js102-config
2.03
KB
-rwxr-xr-x
json-glib-format
18.38
KB
-rwxr-xr-x
json-glib-validate
14.24
KB
-rwxr-xr-x
json_pp
4.88
KB
-rwxr-xr-x
ldd
5.32
KB
-rwxr-xr-x
libgcrypt-config
4.52
KB
-rwxr-xr-x
libinput
62.35
KB
-rwxr-xr-x
libnetcfg
15.41
KB
-rwxr-xr-x
libpng16-config
2.41
KB
-rwxr-xr-x
libpng-config
2.41
KB
-rwxr-xr-x
libtool
366.5
KB
-rwxr-xr-x
libtoolize
128.35
KB
-rwxr-xr-x
libwacom-list-devices
14.24
KB
-rwxr-xr-x
libwacom-list-local-devices
18.29
KB
-rwxr-xr-x
libwacom-show-stylus
5.99
KB
-rwxr-xr-x
libwacom-update-db
8.99
KB
-rwxr-xr-x
locale
57.56
KB
-rwxr-xr-x
localedef
326.96
KB
-rwxr-xr-x
lzmainfo
14.23
KB
-rwxr-xr-x
m4
154.37
KB
-rwxr-xr-x
makeconv
50.89
KB
-rwxr-xr-x
mako-render
961
B
-rwxr-xr-x
markdown_py
973
B
-rwxr-xr-x
mpicalc
22.3
KB
-rwxr-xr-x
msgattrib
26.38
KB
-rwxr-xr-x
msgcat
26.38
KB
-rwxr-xr-x
msgcmp
26.38
KB
-rwxr-xr-x
msgcomm
26.38
KB
-rwxr-xr-x
msgconv
22.38
KB
-rwxr-xr-x
msgen
22.38
KB
-rwxr-xr-x
msgexec
22.38
KB
-rwxr-xr-x
msgfilter
34.38
KB
-rwxr-xr-x
msgfmt
82.59
KB
-rwxr-xr-x
msggrep
114.46
KB
-rwxr-xr-x
msginit
66.39
KB
-rwxr-xr-x
msgmerge
74.41
KB
-rwxr-xr-x
msgunfmt
34.39
KB
-rwxr-xr-x
msguniq
22.38
KB
-rwxr-xr-x
ngettext
34.38
KB
-rwxr-xr-x
nspr-config
2.58
KB
-rwxr-xr-x
nss-config
2.31
KB
-rwxr-xr-x
p11-kit
170.45
KB
-rwxr-xr-x
pango-list
18.13
KB
-rwxr-xr-x
pango-segmentation
18.21
KB
-rwxr-xr-x
pango-view
66.42
KB
-rwxr-xr-x
pcre2-config
1.93
KB
-rwxr-xr-x
pcre-config
2.29
KB
-rwxr-xr-x
pdfattach
22.21
KB
-rwxr-xr-x
pdfdetach
26.32
KB
-rwxr-xr-x
pdffonts
22.33
KB
-rwxr-xr-x
pdfimages
42.33
KB
-rwxr-xr-x
pdfinfo
62.33
KB
-rwxr-xr-x
pdfseparate
22.21
KB
-rwxr-xr-x
pdfsig
42.6
KB
-rwxr-xr-x
pdftocairo
190.3
KB
-rwxr-xr-x
pdftohtml
118.23
KB
-rwxr-xr-x
pdftoppm
34.24
KB
-rwxr-xr-x
pdftops
34.34
KB
-rwxr-xr-x
pdftotext
50.34
KB
-rwxr-xr-x
pdfunite
34.21
KB
-rwxr-xr-x
perl5.34-x86_64-linux-gnu
14.3
KB
-rwxr-xr-x
perlbug
44.12
KB
-rwxr-xr-x
perldoc
125
B
-rwxr-xr-x
perlivp
10.61
KB
-rwxr-xr-x
perlthanks
44.12
KB
-rwxr-xr-x
piconv
8.16
KB
-rwxr-xr-x
pip
225
B
-rwxr-xr-x
pip3
225
B
-rwxr-xr-x
pip3.10
225
B
-rwxr-xr-x
pipewire
14.38
KB
-rwxr-xr-x
pkgdata
43.53
KB
-rwxr-xr-x
pldd
22.37
KB
-rwxr-xr-x
pod2html
4.04
KB
-rwxr-xr-x
pod2man
14.68
KB
-rwxr-xr-x
pod2text
10.55
KB
-rwxr-xr-x
pod2usage
4.01
KB
-rwxr-xr-x
podchecker
3.57
KB
-rwxr-xr-x
psl
22.16
KB
-rwxr-xr-x
psl-make-dafsa
22.21
KB
-rwxr-xr-x
ptar
3.48
KB
-rwxr-xr-x
ptardiff
2.58
KB
-rwxr-xr-x
ptargrep
4.29
KB
-rwxr-xr-x
pw-cat
138.38
KB
-rwxr-xr-x
pw-cli
134.38
KB
-rwxr-xr-x
pw-dot
34.38
KB
-rwxr-xr-x
pw-dsdplay
138.38
KB
-rwxr-xr-x
pw-dump
94.38
KB
-rwxr-xr-x
pw-link
30.38
KB
-rwxr-xr-x
pw-loopback
18.38
KB
-rwxr-xr-x
pw-metadata
14.38
KB
-rwxr-xr-x
pw-mididump
34.38
KB
-rwxr-xr-x
pw-midiplay
138.38
KB
-rwxr-xr-x
pw-midirecord
138.38
KB
-rwxr-xr-x
pw-mon
90.42
KB
-rwxr-xr-x
pw-play
138.38
KB
-rwxr-xr-x
pw-profiler
26.38
KB
-rwxr-xr-x
pw-record
138.38
KB
-rwxr-xr-x
pw-reserve
26.38
KB
-rwxr-xr-x
pw-top
30.38
KB
-rwxr-xr-x
pw-v4l2
1.95
KB
-rwxr-xr-x
py3compile
12.89
KB
-rwxr-xr-x
py3versions
11.63
KB
-rwxr-xr-x
python3.10
5.67
MB
-rwxr-xr-x
recode-sr-latin
14.38
KB
-rwxr-xr-x
rsvg-convert
5.53
MB
-rwxr-xr-x
secret-tool
22.21
KB
-rwxr-xr-x
select-default-iwrap
474
B
-rwxr-xr-x
session-migration
22.15
KB
-rwxr-xr-x
shasum
9.75
KB
-rwxr-xr-x
spa-acp-tool
268.12
KB
-rwxr-xr-x
spa-inspect
78.48
KB
-rwxr-xr-x
spa-json-dump
14.3
KB
-rwxr-xr-x
spa-monitor
14.48
KB
-rwxr-xr-x
spa-resample
30.6
KB
-rwxr-xr-x
splain
18.96
KB
-rwxr-xr-x
streamzip
7.75
KB
-rwxr-xr-x
tzselect
15.02
KB
-rwxr-xr-x
uconv
54.83
KB
-rwxr-xr-x
unxz
82.52
KB
-rwxr-xr-x
update-desktop-database
22.38
KB
-rwxr-xr-x
update-mime-database
58.23
KB
-rwxr-xr-x
xdg-dbus-proxy
50.14
KB
-rwxr-xr-x
xdg-user-dir
234
B
-rwxr-xr-x
xdg-user-dirs-update
26.23
KB
-rwxr-xr-x
xml2-config
1.44
KB
-rwxr-xr-x
xmlcatalog
22.3
KB
-rwxr-xr-x
xmllint
78.95
KB
-rwxr-xr-x
xz
82.52
KB
-rwxr-xr-x
xzcat
82.52
KB
-rwxr-xr-x
xzcmp
6.86
KB
-rwxr-xr-x
xzdiff
6.86
KB
-rwxr-xr-x
xzegrep
5.87
KB
-rwxr-xr-x
xzfgrep
5.87
KB
-rwxr-xr-x
xzgrep
5.87
KB
-rwxr-xr-x
xzless
1.76
KB
-rwxr-xr-x
xzmore
2.11
KB
-rwxr-xr-x
zdump
26.21
KB
-rwxr-xr-x
zipdetails
58.66
KB
-rwxr-xr-x
Delete
Unzip
Zip
${this.title}
Close
Code Editor : dh_girepository
#! /usr/bin/perl -w =head1 NAME dh_girepository - compute dependencies for GObject introspection packages =cut use strict; use File::Find; use Dpkg::Deps; use Dpkg::Control; use Debian::Debhelper::Dh_Lib; =head1 SYNOPSIS B<dh_girepository> [I<debhelper options>] [-lI<directory>] [-pI<directory>] [-XI<item>] [I<private [...]>] =head1 DESCRIPTION dh_girepository is a debhelper program to compute dependencies for packages shipping GObject introspection data. The dependencies are generated in the ${gir:Depends} substitution variable. The minimal version of the generated dependencies is calculated by looking first at the version of the packages declared in the build-dependencies of the building package. If a package is not declared in the build-dependencies, the minimal version of that package is calculated by looking at the version of the package containing the corresponding .gir file defined in the build-dependencies. Note that dh_girepository will not be executed automatically by dh; you need to use C<dh $@ --with gir> for C<dh> to include it. =head1 OPTIONS =over 4 =item B<-l>I<directory> Specify a directory (or a colon-separated list of directories) where to look for the .gir XML files that were used to generate the .typelib files that are scanned. This option is only necessary if those files are not shipped in another, architecture-dependent package. =item B<-p>I<directory> Specify a directory (or a colon-separated list of directories) where to look for the dependencies. This is useful when a dependency ships the .typelib in a private directory. =item B<-X>I<item> Exclude files that contain I<item> anywhere in their filename from being analyzed. =item I<private [...]> List of directories where to look for typelibs and the corresponding .gir files. Useful when the package installs its typelibs in a private directory, such as /usr/lib/<package>. Library dependencies are also looked there, in case your typelib depends on a library that you ship on a private directory. =back =head1 CONFORMS TO GObject introspection mini policy as of 2011-03-30. =cut # Initialisation code init(options => { "l=s", => \$dh{L_PARAMS}, "p=s", => \$dh{P_PARAMS}, }); my @paths_first = (); my @privdirs = (); if ($dh{L_PARAMS}) { push @paths_first, split /:/, $dh{L_PARAMS}; } if ($dh{P_PARAMS}) { push @privdirs, split /:/, $dh{P_PARAMS}; } isnative($dh{MAINPACKAGE}); # Necessary to have $dh{VERSION} my $bin_version = $dh{VERSION}; my @archpackages = getpackages("arch"); my $triplet = `dpkg-architecture -qDEB_HOST_MULTIARCH`; chomp $triplet; my $typelib_multiarch_path = "/usr/lib/$triplet/girepository-1.0"; my $typelib_path = "/usr/lib/girepository-1.0"; my @typelibdirs = (@ARGV, $typelib_path, $typelib_multiarch_path); my $gir_path = "/usr/share/gir-1.0"; my @girdirs = (@ARGV, $gir_path); my $arch_triplet = `dpkg-architecture -qDEB_HOST_MULTIARCH`; chomp $arch_triplet; my @privlibdirs = (@ARGV); my @libdirs = ("/lib/$arch_triplet", "/lib", "/usr/lib/$arch_triplet", "/usr/lib", @privlibdirs); my $format; # Get Build-Depends in an array my @bdeps; my $ctrl = Dpkg::Control->new(type => CTRL_INFO_SRC); $ctrl->load('debian/control'); foreach my $field (qw(Build-Depends Build-Depends-Arch Build-Depends-Indep)) { if (defined $ctrl->{$field}) { my $value = deps_parse($ctrl->{$field}, build_dep => 1); push @bdeps, split ', ', $value->output; } } # We can’t parse .typelib files, so we need the corresponding .gir # somewhere in the same source package (or with -l). sub find_gir { my $req = shift; $req =~ s/\.typelib$//; my $f; foreach my $path (@paths_first) { $f = "$path/$req.gir"; if (-f $f) { verbose_print ("Found $req.gir in $path"); return $f; } } foreach my $otherpkg (@archpackages) { foreach my $girdir (@girdirs) { $f = tmpdir($otherpkg)."$girdir/$req.gir"; if (-f $f) { verbose_print ("Found $req.gir in $otherpkg package"); return $f; } } } error("Could not find gir file for $req.typelib"); } # Function used for dependencies on other .typelib files sub require_typelib { my $req = shift; my $package = shift; my $fullpath = ""; foreach my $typelibdir (@typelibdirs) { $fullpath = "$typelibdir/$req"; verbose_print ("Dependency: $req"); foreach my $typelibdir (@typelibdirs) { if (-f tmpdir($package)."$typelibdir/$req") { verbose_print(" found in the same package"); return; } } foreach my $otherpkg (@archpackages) { if (-f tmpdir($otherpkg)."$fullpath") { error("Dependency on $otherpkg with a different format than $format") unless $otherpkg =~ /^gir$format/; addsubstvar ($package, "gir:Depends", $otherpkg, "= $bin_version"); return; } } foreach my $privpath (@privdirs) { if (-f "$privpath/$req") { verbose_print (" found in $privpath"); $fullpath = "$privpath/$req"; last; } } if (-f "$fullpath") { my @output = (split ':', `dpkg -S $fullpath 2>/dev/null`); error("$fullpath does not belong to any package") unless @output; my $deppkg = $output[0]; error("Dependency on $deppkg with a different format than $format") unless $deppkg =~ /^gir$format/; # Look for version information in build-dependencies my $found = 0; foreach my $bdep (@bdeps) { if ($bdep =~ /^\s*([a-z0-9\._\-\+]+)\s*\((.*)\)/) { if ($1 eq $deppkg) { addsubstvar ($package, "gir:Depends", $1, $2); $found = 1; } } } if (! $found) { my $fullpath_gir = ""; (my $req_gir = $req) =~ s/\.typelib$/\.gir/; foreach my $girdir (@girdirs) { if (-f "$girdir/$req_gir") { $fullpath_gir = "$gir_path/$req_gir"; my @output_gir = (split ':', `dpkg -S $fullpath_gir 2>/dev/null`); error("$fullpath_gir does not belong to any package") unless @output_gir; my $deppkg_gir = $output_gir[0]; foreach my $bdep (@bdeps) { if ($bdep =~ /^\s*([a-z0-9\._\-\+]+)\s*\((.*)\)/) { if ($1 eq $deppkg_gir) { addsubstvar ($package, "gir:Depends", $deppkg, $2); $found = 1; } } } } } } if (! $found) { addsubstvar ($package, "gir:Depends", $deppkg); } return; } } error("Could not find $req dependency"); } sub find_library_in_package { my $req = shift; my $package = shift; my $tmp = ""; if ($package) { $tmp = tmpdir ($package); } my @loclibdirs = grep -d, map "$tmp$_", @libdirs; foreach my $libdir (@loclibdirs) { if (-f "$libdir/$req" or -l "$libdir/$req") { return "$libdir/$req"; } } } sub find_library { my $req = shift; my $package = shift; my $file = find_library_in_package ($req, $package); if ($file) { verbose_print (" found in the same package"); } else { foreach my $otherpkg (@archpackages) { $file = find_library_in_package ($req, $otherpkg); if ($file) { verbose_print (" found in $otherpkg"); last; } } } if (!$file) { $file = find_library_in_package ($req); if ($file) { verbose_print (" found on filesystem"); } else { error ("Could not find library $req"); } } if (-l $file and not -f $file) { # We have a symbolic link that points to another package verbose_print (" ... it's a symlink ..."); return find_library (readlink ($file), $package); } return $file; } foreach my $package (@{$dh{DOPACKAGES}}) { my $tmp = tmpdir($package); my $ext = pkgext($package); my @bin_files = (); my @c_files = (); my @typelib_deps = (); my $multiarch_required = 0; foreach my $dir (@typelibdirs) { my $typelibdir = "$tmp$dir"; next unless -d $typelibdir; opendir(DIRHANDLE, $typelibdir); while (my $typelib = readdir(DIRHANDLE)) { next unless $typelib =~ /\.typelib$/; next if excludefile ($typelib); my $girfile = find_gir ($typelib); error("Unable to open $girfile") unless open (my $f, "<", $girfile); verbose_print ("$girfile..."); my @libraries = (); my @symbols = (); my $infunction = 0; while (<$f>) { # "Parse" the XML file chomp; if (/<repository.+?version="(.*?)"/) { # gir format version $format="$1"; } elsif (/<include\s+name="(.*?)"\s+version="(.*?)"\/>/) { # Dependency on another typelib file my $deptypelib="$1-$2.typelib"; verbose_print (" Dependency: $deptypelib"); if (! grep { $_ eq $deptypelib } @typelib_deps) { push @typelib_deps, $deptypelib; } } elsif (/shared-library="(.*?)"/) { # Dependency on a shared library foreach my $shlibname (split ",", $1) { if ($shlibname !~ /\.so/) { $shlibname = "lib$shlibname.so" } verbose_print (" Library: $shlibname"); push @libraries, find_library ($shlibname, $package); } } elsif (/<(method|constructor|function)\s.*c:identifier="(.*?)"/) { push @symbols, $2; } elsif (/<(method|constructor|function)/) { $infunction = 1; } elsif ($infunction and /c:identifier="(.*?)"/) { push @symbols, $1; } if (/>$/) { $infunction = 0; } } close $f; error("Unable to determine gir format") unless $format; error("Package name $package doesn't match gir format $format") unless $package =~ /^gir$format/ or not $typelibdir =~ /usr\/lib\/girepository/; verbose_print(sprintf(" %d symbols found", $#symbols+1)); if (@libraries or @symbols) { my $c_file = "$typelibdir/$typelib.c"; my $bin_file = "$typelibdir/$typelib.so"; verbose_print (" writing $c_file"); if (!$dh{NO_ACT}){ error("Unable to open $girfile") unless open (F, ">", $c_file); print F "void gir_dummy_function () {\n"; foreach my $symbol (@symbols) { print F "$symbol ();\n"; } print F "}"; close F; } push @c_files, $c_file; # Build a dummy binary using all referenced symbols and libraries # We use -shared so that gcc doesn’t try to resolve references verbose_print (" building $bin_file"); doit (("gcc", "-Wno-implicit-function-declaration", "-shared", "-fPIC", "-o", $bin_file, $c_file, @libraries)); push @bin_files, $bin_file; } if ($typelibdir =~ $typelib_multiarch_path) { $multiarch_required = 1; } } } if (@bin_files) { # dpkg-shlibdeps expects this directory to exist if (! -d "$tmp/DEBIAN") { install_dir("$tmp/DEBIAN"); } # Let dpkg-shlibdeps generate the corresponding dependencies # It must run first since otherwise it overwrites the variable push @privlibdirs, $ENV{"LD_LIBRARY_PATH"} if $ENV{"LD_LIBRARY_PATH"}; my $llp = join (":", @privlibdirs); complex_doit ("LD_LIBRARY_PATH=$llp dpkg-shlibdeps -pgir -Tdebian/${ext}substvars -xlibc6 -xlibc0 @bin_files"); } doit (("rm", "-f", @c_files, @bin_files)); # Generate dependencies on other .typelib files foreach my $dep (@typelib_deps) { require_typelib ($dep, $package); } } =head1 SEE ALSO L<debhelper(7)> This program is a part of gobject-introspection but is made to work with debhelper. =head1 AUTHOR Josselin Mouette <joss@debian.org> =cut
Close