#!/usr/bin/perl # use Module::Build; use strict; # Check for pkg-config my $pkgconfig = `which pkg-config`; chomp($pkgconfig); if ($pkgconfig !~ /pkg-config/ or $pkgconfig =~ /not found/i) { die "Error: pkgconfig is not available on your system\n". "It is available from http://pkgconfig.freedesktop.org/\n"; } else { my $pkgconfig_version = `$pkgconfig --version`; chomp( $pkgconfig_version ); print "Found pkg-config version $pkgconfig_version.\n"; } # Check for liblo my $liblo_version = `$pkgconfig --modversion liblo`; chomp($liblo_version); if ($liblo_version !~ /^\d+\.\d+/) { print STDERR $liblo_version; exit -1; } else { print "Found liblo library version $liblo_version.\n"; } # Is it new enough ? if ($liblo_version < 0.23) { die "Error: LibLO Version 0.23 or higher is required.\n"; } # Get LibLO CFLAGS my $LIBLO_CFLAGS = `$pkgconfig --cflags liblo`; chomp( $LIBLO_CFLAGS ); print " LIBLO_CFLAGS = $LIBLO_CFLAGS\n"; # Get LibLO LIBS my $LIBLO_LIBS = `$pkgconfig --libs liblo`; chomp( $LIBLO_LIBS ); print " LIBLO_LIBS = $LIBLO_LIBS\n"; # Create the Build script my $build = Module::Build->new ( module_name => 'Net::LibLO', license => 'gpl', build_requires => { 'Module::Build' => '0.20' }, create_makefile_pl => 'passthrough', requires => { 'Test' => '1.00', 'Test::More' => 0, }, # Optional modules recommends => { 'Test::Pod' => '1.00', }, extra_compiler_flags => $LIBLO_CFLAGS, extra_linker_flags => $LIBLO_LIBS, ); $build->create_build_script;