]> mj.ucw.cz Git - libucw.git/commitdiff
Configure: Check for pkg-config before using it.
authorMartin Mares <mj@ucw.cz>
Sat, 7 Mar 2009 13:24:34 +0000 (14:24 +0100)
committerMartin Mares <mj@ucw.cz>
Sat, 7 Mar 2009 13:24:34 +0000 (14:24 +0100)
ucw/perl/UCW/Configure/Pkg.pm

index a78499c0a0de5ddb09c279e9ec84f0ff0f0f4d18..5f3dc337604299d08ca345e1f2041908d59c77f9 100644 (file)
@@ -30,12 +30,33 @@ sub maybe_manually($) {
        return 0;
 }
 
+sub PkgConfigTool() {
+       Log "Checking for pkg-config ... ";
+       if (!maybe_manually("CONFIG_HAVE_PKGCONFIG")) {
+               my $ver = TryCmd("pkg-config --version 2>/dev/null");
+               if (!defined $ver) {
+                       Log("NONE\n");
+                       Set("CONFIG_HAVE_PKGCONFIG", 0);
+               } else {
+                       Log("YES: version $ver\n");
+                       Set("CONFIG_HAVE_PKGCONFIG", 1);
+                       Set("CONFIG_VER_PKGCONFIG", $ver);
+               }
+       }
+       return Get("CONFIG_HAVE_PKGCONFIG");
+}
+
 sub PkgConfig($@) {
        my $pkg = shift @_;
        my %opts = @_;
        my $upper = $pkg; $upper =~ tr/a-z/A-Z/; $upper =~ s/[^0-9A-Z]+/_/g;
+       PkgConfigTool() unless IsSet("CONFIG_HAVE_PKGCONFIG");
        Log "Checking for package $pkg ... ";
        maybe_manually("CONFIG_HAVE_$upper") and return Get("CONFIG_HAVE_$upper");
+       if (!Get("CONFIG_HAVE_PKGCONFIG")) {
+               Log("NONE: pkg-config missing\n");
+               return 0;
+       }
        my $ver = TryCmd("pkg-config --modversion $pkg 2>/dev/null");
        if (!defined $ver) {
                Log("NONE\n");