1 | # Makefile for creating Windows CE release archives, with the
|
---|
2 | # mingw32ce compiler.
|
---|
3 |
|
---|
4 | # Last updated: 22-Jul-2008
|
---|
5 |
|
---|
6 | # Copyright (C) 2008 Vincent Torri
|
---|
7 |
|
---|
8 | # This code is released under the libpng license.
|
---|
9 | # For conditions of distribution and use, see the disclaimer
|
---|
10 | # and license in png.h
|
---|
11 |
|
---|
12 | # To get some help, type
|
---|
13 | #
|
---|
14 | # make help
|
---|
15 | #
|
---|
16 | # To create the archives
|
---|
17 | #
|
---|
18 | # make
|
---|
19 | #
|
---|
20 | # To remove everything, type:
|
---|
21 | #
|
---|
22 | # make clean
|
---|
23 |
|
---|
24 | VERMAJ = 1
|
---|
25 | VERMIN = 2
|
---|
26 | VERMIC = 54
|
---|
27 | VER = $(VERMAJ).$(VERMIN).$(VERMIC)
|
---|
28 | NAME = libpng
|
---|
29 | PACKAGE = $(NAME)-$(VER)
|
---|
30 |
|
---|
31 | BIN = libpng12-0.dll libpng-3.dll
|
---|
32 | LIB = libpng12.a libpng12.dll.a libpng.a libpng.dll.a scripts/png32ce.def
|
---|
33 | INCLUDE = png.h pngconf.h
|
---|
34 | PC = libpng12.pc libpng.pc
|
---|
35 |
|
---|
36 | MANIFESTVERBIN = "Libpng-$(VER): Binary files"
|
---|
37 | MANIFESTVERDEV = "Libpng-$(VER): Developer files"
|
---|
38 | MANIFESTVERDESC = "Libpng: the official PNG reference library"
|
---|
39 |
|
---|
40 | all: $(NAME)
|
---|
41 |
|
---|
42 | $(NAME): remove-old copy-src compilation copy manifest archive
|
---|
43 | @echo " * Removal of the directories"
|
---|
44 | @rm -rf $(PACKAGE)/ $(PACKAGE)-bin/ $(PACKAGE)-dev/
|
---|
45 |
|
---|
46 | remove-old:
|
---|
47 | @echo " * Removal of the old files"
|
---|
48 | @rm -rf $(PACKAGE)-bin*
|
---|
49 | @rm -rf $(PACKAGE)-dev*
|
---|
50 |
|
---|
51 | copy-src:
|
---|
52 | @echo " * Copy of source files"
|
---|
53 | @cp -R ../src/$(PACKAGE) .
|
---|
54 | @echo " * Creation of directories and files"
|
---|
55 | @mkdir -p $(PACKAGE)-bin/bin
|
---|
56 | @mkdir -p $(PACKAGE)-bin/manifest
|
---|
57 | @mkdir -p $(PACKAGE)-dev/lib/pkgconfig
|
---|
58 | @mkdir -p $(PACKAGE)-dev/include/$(NAME)$(VERMAJ)$(VERMIN)
|
---|
59 | @mkdir -p $(PACKAGE)-dev/manifest
|
---|
60 | @touch $(PACKAGE)-bin/manifest/$(PACKAGE)-bin.mft
|
---|
61 | @touch $(PACKAGE)-bin/manifest/$(PACKAGE)-bin.ver
|
---|
62 | @touch $(PACKAGE)-dev/manifest/$(PACKAGE)-dev.mft
|
---|
63 | @touch $(PACKAGE)-dev/manifest/$(PACKAGE)-dev.ver
|
---|
64 |
|
---|
65 | compilation:
|
---|
66 | @echo " * Compilation of $(PACKAGE)"
|
---|
67 | cd $(PACKAGE) && CPPFLAGS="$(CPPFLAGS) -DPNG_BUILD_DLL -DPNG_CONSOLE_IO_SUPPORTED -DPNG_NO_MMX_CODE -D_WIN32_WCE=0x0420" CFLAGS="$(CFLAGS) -mms-bitfields -O3 -pipe -fomit-frame-pointer" LDFLAGS="$(LDFLAGS) -Wl,--enable-auto-import -Wl,-s" ./configure --prefix=/opt/wince --host=arm-mingw32ce && make
|
---|
68 |
|
---|
69 | copy:
|
---|
70 | @echo " * Copy of binary and development files"
|
---|
71 | @for i in $(BIN); do \
|
---|
72 | cp $(PACKAGE)/.libs/$$i $(PACKAGE)-bin/bin; \
|
---|
73 | done
|
---|
74 | @for i in $(LIB); do \
|
---|
75 | cp $(PACKAGE)/.libs/$$i $(PACKAGE)-dev/lib; \
|
---|
76 | done
|
---|
77 | @for i in $(INCLUDE); do \
|
---|
78 | cp $(PACKAGE)/$$i $(PACKAGE)-dev/include/$(NAME)$(VERMAJ)$(VERMIN); \
|
---|
79 | done
|
---|
80 | @for i in $(PC); do \
|
---|
81 | cp $(PACKAGE)/$$i $(PACKAGE)-dev/lib/pkgconfig; \
|
---|
82 | done
|
---|
83 |
|
---|
84 | manifest:
|
---|
85 | @echo " * Creation of the manifest"
|
---|
86 | @cd $(PACKAGE)-bin && find * >> manifest/$(PACKAGE)-bin.mft
|
---|
87 | @cd $(PACKAGE)-bin && \
|
---|
88 | echo $(MANIFESTVERBIN) >> manifest/$(PACKAGE)-bin.ver && \
|
---|
89 | echo $(MANIFESTVERDESC) >> manifest/$(PACKAGE)-bin.ver
|
---|
90 | @cd $(PACKAGE)-dev && find * >> manifest/$(PACKAGE)-dev.mft
|
---|
91 | @cd $(PACKAGE)-dev && \
|
---|
92 | echo $(MANIFESTVERDEV) >> manifest/$(PACKAGE)-dev.ver && \
|
---|
93 | echo $(MANIFESTVERDESC) >> manifest/$(PACKAGE)-dev.ver
|
---|
94 |
|
---|
95 | archive:
|
---|
96 | @echo " * Creation of the archives"
|
---|
97 | @tar cf $(PACKAGE)-bin.tar $(PACKAGE)-bin
|
---|
98 | @bzip2 -9 $(PACKAGE)-bin.tar
|
---|
99 | @tar cf $(PACKAGE)-dev.tar $(PACKAGE)-dev
|
---|
100 | @bzip2 -9 $(PACKAGE)-dev.tar
|
---|
101 |
|
---|
102 | clean:
|
---|
103 | @echo " * Cleaning"
|
---|
104 | @rm -rf $(PACKAGE)*
|
---|
105 |
|
---|
106 | help:
|
---|
107 | @echo
|
---|
108 | @echo "To create the archives, type:"
|
---|
109 | @echo " make"
|
---|
110 | @echo
|
---|
111 | @echo "To remove everything, type:"
|
---|
112 | @echo " make clean"
|
---|
113 | @echo
|
---|