Server IP : 185.86.78.101 / Your IP : 216.73.216.124 Web Server : Apache System : Linux 675867-vds-valikoshka1996.gmhost.pp.ua 5.4.0-150-generic #167-Ubuntu SMP Mon May 15 17:35:05 UTC 2023 x86_64 User : www ( 1000) PHP Version : 7.4.33 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /usr/share/ |
Upload File : |
#! /usr/bin/perl # # Sets up /usr/bin/*-pkg-config symlinks to point to the cross wrapper. # # It is called from dpkg --post-invoke and from postinst with the "update" # argument to instate the necessary symlinks. # # It is called from prerm with the "remove" argument to remove all symlinks. # use strict; use warnings; use Dpkg::Arch qw(debarch_to_gnutriplet); use Dpkg::ErrorHandling qw(error warning); my $crosswrapper = "/usr/share/pkg-config-crosswrapper"; my $action = $ARGV[0]; error("parameter must be 'remove' or 'update'") unless defined $action && ($action eq "remove" || $action eq "update"); my $arch = `dpkg --print-architecture`; error('dpkg --print-architecture failed') if $? >> 8; my @architectures = `dpkg --print-foreign-architectures`; error('dpkg --print-foreign-architectures failed') if $? >> 8; push @architectures, $arch; chomp @architectures; my %gnutriplets; foreach my $arch (@architectures) { my $triplet = debarch_to_gnutriplet($arch); if (not defined($triplet)) { warning("Architecture $arch not defined in architecture tables, ignored"); next; } $gnutriplets{$triplet} = 1; } my %symlinks = map { $_ => 1 } </usr/bin/*-pkg-config>; foreach my $symlink (keys %symlinks) { $symlink =~ m,^/usr/bin/([^-]+-[^-]+-[^-]+)-pkg-config, or next; next if exists $gnutriplets{$1} && $action eq "update"; next unless -l $symlink; next unless readlink $symlink eq $crosswrapper; unlink $symlink or error("failed to remove symlink $symlink: $!"); } if ($action eq 'update') { foreach (keys %gnutriplets) { my $linktarget = "/usr/bin/${_}-pkg-config"; next if exists $symlinks{$linktarget}; next if -e $linktarget; symlink $crosswrapper, $linktarget or error("failed to create symlink $linktarget to $crosswrapper: $!"); } }