1 |
dpavlin |
112 |
use 5.008; |
2 |
|
|
use ExtUtils::MakeMaker; |
3 |
|
|
# See lib/ExtUtils/MakeMaker.pm for details of how to influence |
4 |
|
|
# the contents of the Makefile that is written. |
5 |
|
|
|
6 |
|
|
my $Z80_OPTIONS = '-DEXEC6502 -DFAST_RDOP -DLSB_FIRST '; |
7 |
|
|
$Z80_OPTIONS .= '-DDEBUG '; |
8 |
|
|
|
9 |
|
|
my $run = './t/05-Z80.t -d'; |
10 |
|
|
|
11 |
|
|
WriteMakefile( |
12 |
|
|
NAME => 'Z80', |
13 |
|
|
VERSION_FROM => 'Z80.pm', # finds $VERSION |
14 |
|
|
PREREQ_PM => { |
15 |
|
|
'ExtUtils::Embed' => 0, |
16 |
|
|
'Class::Accessor' => 0, |
17 |
|
|
'Data::Dump' => 0, |
18 |
|
|
'Carp' => 0, |
19 |
|
|
'Test::Exception' => 0, |
20 |
|
|
'SDL' => '2.1.2', |
21 |
|
|
}, # e.g., Module::Name => 1.1 |
22 |
|
|
($] >= 5.005 ? ## Add these new keywords supported since 5.005 |
23 |
|
|
(ABSTRACT_FROM => 'Z80.pm', # retrieve abstract from module |
24 |
|
|
AUTHOR => 'Dobrica Pavlinusic <dpavlin@rot13.org>') : ()), |
25 |
|
|
LIBS => [''], # e.g., '-lm' |
26 |
|
|
DEFINE => '', |
27 |
|
|
INC => '-I. -I./src/', # e.g., '-I. -I/usr/include/other' |
28 |
|
|
# Un-comment this if you add C files to link with later: |
29 |
|
|
OBJECT => '$(O_FILES) cpu.o', # link all the C files too |
30 |
|
|
OPTIMIZE => '-g', |
31 |
|
|
depend => { |
32 |
|
|
# Z80 options |
33 |
|
|
'cpu$(OBJ_EXT)' => qq{src/Z80.c\n\t\$(CC) \$(CCCDLFLAGS) -c -o cpu\$(OBJ_EXT) $Z80_OPTIONS src/Z80.c}, |
34 |
|
|
}, |
35 |
|
|
clean => { |
36 |
|
|
'FILES' => 'html', |
37 |
|
|
}, |
38 |
|
|
); |
39 |
|
|
|
40 |
|
|
sub MY::postamble { |
41 |
|
|
return <<"MAKE_FRAG"; |
42 |
|
|
|
43 |
|
|
run: all |
44 |
dpavlin |
124 |
perl -Mblib -MGalaksija -le 'Galaksija->new->run;' |
45 |
dpavlin |
112 |
|
46 |
|
|
gdb: all |
47 |
|
|
gdb -x run --args perl $run |
48 |
|
|
|
49 |
|
|
html: all |
50 |
|
|
test -d html || mkdir html |
51 |
|
|
allpod2xhtml.pl \$(INST_LIB) html |
52 |
|
|
|
53 |
|
|
MAKE_FRAG |
54 |
|
|
} |
55 |
|
|
|