summaryrefslogtreecommitdiffstats
path: root/dcopperl/Makefile.PL
blob: fbab8952f466de9ca25bf6d721c9f2e8fadd27f1 (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
use ExtUtils::MakeMaker;
use Config;
# See lib/ExtUtils/MakeMaker.pm for details of how to influence
# the contents of the Makefile that is written.

print "Trying to find some configuration information...\n";
my $kde_dirs = $ENV{KDEDIRS} || '/usr/local/kde';
my $qt_dir = $ENV{QTDIR} || '/usr/lib/qt';
my $kde_inc = "$kde_dirs/include";
my $kde_lib = "$kde_dirs/lib";
my $qt_inc = "$qt_dir/include";
my $qt_lib = "$qt_dir/lib";
$kde_inc = undef unless -f "$kde_inc/dcopclient.h"; 
$kde_lib = undef unless -f "$kde_lib/libDCOP.$Config{dlext}";
$qt_dir = undef unless -f "$qt_inc/qglobal.h";

print "Path to Qt headers? [$qt_inc]: ";
chomp $input, $qt_inc = $input if (($input = <>) =~ /\S/);
print "Path to Qt libraries? [$qt_lib]: ";
chomp $input, $qt_lib = $input if (($input = <>) =~ /\S/);
print "Path to KDE headers? [$kde_inc]: ";
chomp $input, $kde_inc = $input if (($input = <>) =~ /\S/);
print "Path to KDE libraries? [$kde_lib]: ";
chomp $input, $kde_lib = $input if (($input = <>) =~ /\S/);

WriteMakefile(
    NAME	=> 'DCOP',
    VERSION_FROM => 'DCOP.pm',
    INC		=> "-I$qt_inc -I$kde_inc",
    LIBS	=> "-L$qt_lib -ltqt-mt -L$kde_lib -ltdecore -lDCOP",
    XS		=> {'DCOP.xs' => 'DCOP.cpp'},
    XSOPT	=> '-C++',
    CCFLAGS	=> '-x c++',
);

sub MY::xs_c {
    package MY;
    my $hack = shift->SUPER::xs_c(@_);
    $hack =~ s/\.c/.cpp/g;
    $hack;
}