| 1 |
root |
1.3 |
CC = gcc |
| 2 |
|
|
OPTIMIZE = -O4 -funroll-loops |
| 3 |
|
|
LINK = $(CC) |
| 4 |
|
|
LIBS = -lm -lcrypt -lutil -lc |
| 5 |
|
|
|
| 6 |
root |
1.1 |
PERLCONFIG = -Duselargefiles -Uuse64bitint -Uuse64bitall -Dusemymalloc \ |
| 7 |
|
|
-Ud_dosuid -Uusemallocwrap -Uusedl \ |
| 8 |
|
|
-Dprefix=/etc/staticperl/prefix \ |
| 9 |
|
|
-Uusethreads -Uuse5005threads -Uuseithreads -Uusemultiplicity -Umultiarch \ |
| 10 |
root |
1.3 |
-Dcc="$(GCC)" -Doptimize="$(OPTIMIZE)" \ |
| 11 |
|
|
-Dlibs="$(LIBS)" |
| 12 |
|
|
|
| 13 |
|
|
CPPFLAGS = $(OPTIMIZE) -Iperl -Iinclude |
| 14 |
|
|
|
| 15 |
|
|
all: staticperl |
| 16 |
|
|
|
| 17 |
|
|
staticperl: src/main.o libstaticperl.a |
| 18 |
|
|
$(LINK) -o $@ $^ $(LIBS) |
| 19 |
root |
1.1 |
|
| 20 |
root |
1.3 |
libstaticperl.a: stamp.perl stdbundle.o src/common.o |
| 21 |
|
|
( \ |
| 22 |
|
|
echo CREATE $@; \ |
| 23 |
|
|
echo ADDMOD stdbundle.o src/common.o; \ |
| 24 |
|
|
echo ADDLIB perl/libperl.a; \ |
| 25 |
|
|
for ext in $$(find perl/lib/auto -name "*.a"); do \ |
| 26 |
|
|
echo ADDLIB $$ext; \ |
| 27 |
|
|
done; \ |
| 28 |
|
|
echo SAVE; \ |
| 29 |
|
|
) | $(AR) -M |
| 30 |
|
|
|
| 31 |
|
|
stdbundle.o: stdbundle.c |
| 32 |
|
|
|
| 33 |
|
|
stdbundle.c: stamp.stdbundle |
| 34 |
|
|
|
| 35 |
|
|
stamp.stdbundle: bin/staticperl-mkbundle |
| 36 |
|
|
bin/staticperl-mkbundle --bundle=main \ |
| 37 |
|
|
--dir=perl/lib --strippod --lzf --include='\.pm$$' . \ |
| 38 |
|
|
--dir=src /staticperl-boot \ |
| 39 |
|
|
--output=stdbundle.c |
| 40 |
|
|
touch stamp.stdbundle |
| 41 |
root |
1.1 |
|
| 42 |
|
|
stamp.perl: stamp.perl.config |
| 43 |
root |
1.2 |
(cd perl && $(MAKE)) |
| 44 |
root |
1.3 |
touch stamp.perl |
| 45 |
root |
1.1 |
|
| 46 |
|
|
stamp.perl.config: |
| 47 |
|
|
(cd perl && sh Configure -desO $(PERLCONFIG)) |
| 48 |
|
|
touch $@ |
| 49 |
|
|
|
| 50 |
|
|
clean: |
| 51 |
root |
1.2 |
-(cd perl && $(MAKE) clean) |
| 52 |
root |
1.3 |
rm -f src/*.o |
| 53 |
|
|
rm -f stamp.* |
| 54 |
|
|
rm -f stdbundle.c |
| 55 |
|
|
|