1
# Makefile for creating Windows CE release archives, with the
4
# Last updated: 22-Jul-2008
6
# Copyright (C) 2008 Vincent Torri
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
12
# To get some help, type
16
# To create the archives
20
# To remove everything, type:
27
VER = $(VERMAJ).$(VERMIN).$(VERMIC)
29
PACKAGE = $(NAME)-$(VER)
32
LIB = libpng14.a libpng14.dll.a libpng.a libpng.dll.a scripts/png32ce.def
33
INCLUDE = png.h pngconf.h pngpriv.h
34
PC = libpng14.pc libpng.pc
36
MANIFESTVERBIN = "Libpng-$(VER): Binary files"
37
MANIFESTVERDEV = "Libpng-$(VER): Developer files"
38
MANIFESTVERDESC = "Libpng: the official PNG reference library"
42
$(NAME): remove-old copy-src compilation copy manifest archive
43
@echo " * Removal of the directories"
44
@rm -rf $(PACKAGE)/ $(PACKAGE)-bin/ $(PACKAGE)-dev/
47
@echo " * Removal of the old files"
48
@rm -rf $(PACKAGE)-bin*
49
@rm -rf $(PACKAGE)-dev*
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
66
@echo " * Compilation of $(PACKAGE)"
67
cd $(PACKAGE) && CPPFLAGS="$(CPPFLAGS) -DPNG_BUILD_DLL -DPNG_CONSOLE_IO_SUPPORTED -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
70
@echo " * Copy of binary and development files"
71
@for i in $(BIN); do \
72
cp $(PACKAGE)/.libs/$$i $(PACKAGE)-bin/bin; \
74
@for i in $(LIB); do \
75
cp $(PACKAGE)/.libs/$$i $(PACKAGE)-dev/lib; \
77
@for i in $(INCLUDE); do \
78
cp $(PACKAGE)/$$i $(PACKAGE)-dev/include/$(NAME)$(VERMAJ)$(VERMIN); \
81
cp $(PACKAGE)/$$i $(PACKAGE)-dev/lib/pkgconfig; \
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
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
108
@echo "To create the archives, type:"
111
@echo "To remove everything, type:"