1 | use ExtUtils::MakeMaker; |
1 | use ExtUtils::MakeMaker; |
2 | |
2 | |
3 | WriteMakefile( |
3 | WriteMakefile( |
4 | dist => { |
4 | dist => { |
5 | PREOP => 'pod2text M.pm | tee README > $(DISTVNAME)/README; chmod -R u=rwX,go=rX . ;', |
5 | PREOP => '(cat INSTALL; pod2text M.pm) | tee README > $(DISTVNAME)/README; chmod -R u=rwX,go=rX . ;', |
6 | COMPRESS => 'gzip -9v', |
6 | COMPRESS => 'gzip -9v', |
7 | SUFFIX => '.gz', |
7 | SUFFIX => '.gz', |
8 | }, |
8 | }, |
9 | CC => 'g++', |
9 | CC => 'g++', |
10 | LD => 'g++', |
10 | LD => 'g++', |
… | |
… | |
14 | OBJECT => 'M$(OBJ_EXT) PMT$(OBJ_EXT)', |
14 | OBJECT => 'M$(OBJ_EXT) PMT$(OBJ_EXT)', |
15 | NAME => 'Tree::M', |
15 | NAME => 'Tree::M', |
16 | VERSION_FROM => 'M.pm', |
16 | VERSION_FROM => 'M.pm', |
17 | ); |
17 | ); |
18 | |
18 | |
|
|
19 | print <<EOF; |
|
|
20 | |
|
|
21 | *** |
|
|
22 | *** This module is written in C++, which is nontrivial to integrate into |
|
|
23 | *** most pre-built perls. If problems occur during compiling then edit (hack) |
|
|
24 | *** |
|
|
25 | *** Makefile.PL |
|
|
26 | *** GiST/Makefile MT/Makefile |
|
|
27 | *** |
|
|
28 | *** in this order. Especially wautch out for compile and optimization flags. |
|
|
29 | *** Have fun ;-> |
|
|
30 | *** |
|
|
31 | |
|
|
32 | EOF |
|
|
33 | |
19 | sub MY::postamble { <<'EOF' } |
34 | sub MY::postamble { <<'EOF' } |
20 | |
35 | |
21 | force : |
36 | force : |
22 | |
37 | |
23 | GiST/libGiST.a: force |
38 | GiST/libGiST.a: force |
24 | cd GiST && make OPTIMIZE="$(OPTIMIZE)" CXX="$(CXX)" libGiST.a |
39 | cd GiST && make OPTIMIZE="$(OPTIMIZE)" CXX="$(CC)" LD="$(LD)" libGiST.a |
25 | |
40 | |
26 | MT/libMT.a: GiST/libGiST.a force |
41 | MT/libMT.a: GiST/libGiST.a force |
27 | cd MT && make OPTIMIZE="$(OPTIMIZE)" CXX="$(CXX)" libMT.a |
42 | cd MT && make OPTIMIZE="$(OPTIMIZE)" CXX="$(CC)" LD="$(LD)" libMT.a |
28 | |
43 | |
29 | clean :: |
44 | clean :: |
30 | cd MT && $(MAKE) clean |
45 | cd MT && $(MAKE) clean |
31 | cd GiST && $(MAKE) clean |
46 | cd GiST && $(MAKE) clean |
32 | |
47 | |