| 1 |
############################################################################### |
| 2 |
# Copyright (C) 2007 Tetsuya Kimata <kimata@acapulco.dyndns.org> |
| 3 |
# |
| 4 |
# All rights reserved. |
| 5 |
# |
| 6 |
# This software is provided 'as-is', without any express or implied |
| 7 |
# warranty. In no event will the authors be held liable for any |
| 8 |
# damages arising from the use of this software. |
| 9 |
# |
| 10 |
# Permission is granted to anyone to use this software for any |
| 11 |
# purpose, including commercial applications, and to alter it and |
| 12 |
# redistribute it freely, subject to the following restrictions: |
| 13 |
# |
| 14 |
# 1. The origin of this software must not be misrepresented; you must |
| 15 |
# not claim that you wrote the original software. If you use this |
| 16 |
# software in a product, an acknowledgment in the product |
| 17 |
# documentation would be appreciated but is not required. |
| 18 |
# |
| 19 |
# 2. Altered source versions must be plainly marked as such, and must |
| 20 |
# not be misrepresented as being the original software. |
| 21 |
# |
| 22 |
# 3. This notice may not be removed or altered from any source |
| 23 |
# distribution. |
| 24 |
# |
| 25 |
# $Id: GNUmakefile.in 726 2005-09-24 14:19:32Z svn $ |
| 26 |
############################################################################### |
| 27 |
# |
| 28 |
# * ������ |
| 29 |
# - make dist : ������������������������������ |
| 30 |
# |
| 31 |
############################################################################### |
| 32 |
|
| 33 |
############################################################################### |
| 34 |
# ������������ |
| 35 |
PACKAGE := @PACKAGE_NAME@ |
| 36 |
VERSION := @PACKAGE_VERSION@ |
| 37 |
|
| 38 |
TARGET := $(PACKAGE).so |
| 39 |
PKGDIR := $(PACKAGE)-$(VERSION) |
| 40 |
DISTFILE := $(PKGDIR).tgz |
| 41 |
DISTWINTFILE := $(PACKAGE)-$(VERSION).msi |
| 42 |
|
| 43 |
SVN := @SVN@ |
| 44 |
TAR := @TAR@ |
| 45 |
|
| 46 |
LINUX_DISTS := centos debian fedora ubuntu |
| 47 |
WINDOWS_COMPS := cl icc |
| 48 |
|
| 49 |
############################################################################### |
| 50 |
# ��������������� |
| 51 |
all: dist |
| 52 |
|
| 53 |
dist: TMPDIR := $(shell mktemp -d -t $(PACKAGE).XXXXXX 2>/dev/null) |
| 54 |
dist: |
| 55 |
svn export . $(TMPDIR)/$(PKGDIR) |
| 56 |
rm -rf $(TMPDIR)/$(PKGDIR)/pseudo |
| 57 |
touch -t `date "+%m%d"`0000 `find $(TMPDIR)` |
| 58 |
tar zcvf $(DISTFILE) -C $(TMPDIR) $(PKGDIR) |
| 59 |
rm -Rf $(TMPDIR) |
| 60 |
|
| 61 |
dist-sf: DIST_FILE = $(shell ls -t | grep -E 'mod_uploader-.*\.tgz' | head -n 1) |
| 62 |
dist-sf: DIST_VERSION = $(shell echo $(DIST_FILE) | sed 's/mod_uploader-\(.*\)\.tgz/\1/') |
| 63 |
dist-sf: dist |
| 64 |
perl -I util util/sf_upload.pl --mode=release --package=mod_uploader --version=$(DIST_VERSION) --file=$(DIST_FILE) |
| 65 |
|
| 66 |
dist-sf-rpm: DIST_FILE = $(shell ls -t | grep -E 'mod_uploader-.*\.rpm' | grep -v src.rpm | head -n 1) |
| 67 |
dist-sf-rpm: DIST_VERSION = $(shell echo $(DIST_FILE) | sed 's/mod_uploader-\(.*\)-1\..*\.rpm/\1/') |
| 68 |
dist-sf-rpm: |
| 69 |
perl -I util util/sf_upload.pl --mode=release --package=mod_uploader-rpm --version=$(DIST_VERSION) --file=$(DIST_FILE) |
| 70 |
|
| 71 |
dist-sf-srpm: DIST_FILE = $(shell ls -t | grep -E 'mod_uploader-.*\.src\.rpm' | head -n 1) |
| 72 |
dist-sf-srpm: DIST_VERSION = $(shell echo $(DIST_FILE) | sed 's/mod_uploader-\(.*\)-1\.src\.rpm/\1/') |
| 73 |
dist-sf-srpm: |
| 74 |
perl -I util util/sf_upload.pl --mode=release --package=mod_uploader-srpm --version=$(DIST_VERSION) --file=$(DIST_FILE) |
| 75 |
|
| 76 |
dist-sf-deb: DIST_FILE = $(shell ls -t | grep -E 'libapache2-mod-uploader_.*\.deb' | head -n 1) |
| 77 |
dist-sf-deb: DIST_VERSION = $(shell echo $(DIST_FILE) | sed 's/libapache2-mod-uploader_\(.*\)-1_.*\.deb/\1/') |
| 78 |
dist-sf-deb: |
| 79 |
perl -I util util/sf_upload.pl --mode=release --package=mod_uploader-deb --version=$(DIST_VERSION) --file=$(DIST_FILE) |
| 80 |
|
| 81 |
dist-sf-win: DIST_FILE = $(shell ls -t | grep -E 'mod_uploader-.*\.msi' | head -n 1) |
| 82 |
dist-sf-win: DIST_VERSION = $(shell echo $(DIST_FILE) | sed 's/mod_uploader-\(.*\)\.msi/\1/') |
| 83 |
dist-sf-win: |
| 84 |
perl -I util util/sf_upload.pl --mode=release --package=mod_uploader-win32 --version=$(DIST_VERSION) --file=$(DIST_FILE) |
| 85 |
|
| 86 |
cvs-check: |
| 87 |
./util/cvs_check.sh |
| 88 |
@echo -e "\033[1;32mOK\033[0m" |
| 89 |
|
| 90 |
test: |
| 91 |
@for i in linux bsd win mac; \ |
| 92 |
do \ |
| 93 |
$(MAKE) -f GNUmakefile.dist -s test-$$i; \ |
| 94 |
done |
| 95 |
|
| 96 |
test-linux: |
| 97 |
@for i in $(LINUX_DISTS); \ |
| 98 |
do \ |
| 99 |
./test/util/test_linux.pl $$i | @TEE@ test/log/linux_$$i.log; \ |
| 100 |
done |
| 101 |
$(MAKE) -f GNUmakefile.dist test-linux-status |
| 102 |
|
| 103 |
test-bsd: |
| 104 |
@./test/util/test_bsd.pl freebsd | @TEE@ test/log/freebsd.log |
| 105 |
$(MAKE) -f GNUmakefile.dist test-bsd-status |
| 106 |
|
| 107 |
test-win: |
| 108 |
@echo -n "pass: "; \ |
| 109 |
read -s pass; \ |
| 110 |
echo; \ |
| 111 |
export WIN_PASS=$$pass; \ |
| 112 |
for i in $(WINDOWS_COMPS); \ |
| 113 |
do \ |
| 114 |
./test/util/test_win.pl $$i | @TEE@ test/log/win_$$i.log; \ |
| 115 |
done |
| 116 |
$(MAKE) -f GNUmakefile.dist test-win-status |
| 117 |
|
| 118 |
test-mac: |
| 119 |
./test/util/test_mac.pl cl | @TEE@ test/log/mac_gcc.log |
| 120 |
$(MAKE) -f GNUmakefile.dist test-mac-status |
| 121 |
|
| 122 |
test-configure: |
| 123 |
./test/util/test_configure.pl | @TEE@ test/log/configure.log |
| 124 |
|
| 125 |
test-linux-status: |
| 126 |
@for i in $(LINUX_DISTS); \ |
| 127 |
do \ |
| 128 |
@CAT@ test/log/linux_$$i.log | sed -ne '/\*\*\*\*\*\*\*\*\*\*/,/\*\*\*\*\*\*\*\*\*\*/p'; \ |
| 129 |
done |
| 130 |
|
| 131 |
test-bsd-status: |
| 132 |
@@CAT@ test/log/freebsd.log | sed -ne '/\*\*\*\*\*\*\*\*\*\*/,/\*\*\*\*\*\*\*\*\*\*/p' |
| 133 |
|
| 134 |
test-win-status: |
| 135 |
@for i in $(WINDOWS_COMPS); \ |
| 136 |
do \ |
| 137 |
@CAT@ test/log/win_$$i.log | sed -ne '/\*\*\*\*\*\*\*\*\*\*/,/\*\*\*\*\*\*\*\*\*\*/p'; \ |
| 138 |
done |
| 139 |
|
| 140 |
test-mac-status: |
| 141 |
@@CAT@ test/log/mac_gcc.log | sed -ne '/\*\*\*\*\*\*\*\*\*\*/,/\*\*\*\*\*\*\*\*\*\*/p' |
| 142 |
|
| 143 |
test-all-html-status: |
| 144 |
@for i in linux bsd win mac; \ |
| 145 |
do \ |
| 146 |
$(MAKE) -f GNUmakefile.dist -s test-$$i-status; \ |
| 147 |
done | \ |
| 148 |
./util/ansi2html.pl 'Test Status' > test/status/stat.htm |
| 149 |
# |
| 150 |
@@CAT@ test/log/linux_centos.log | \ |
| 151 |
./util/ansi2html.pl 'Test Log (Centos Linux, GNU Compiler Collection)' > \ |
| 152 |
test/status/log_linux_centos.htm |
| 153 |
@@CAT@ test/log/linux_debian.log | \ |
| 154 |
./util/ansi2html.pl 'Test Log (Debian Linux, GNU Compiler Collection)' > \ |
| 155 |
test/status/log_linux_debian.htm |
| 156 |
@@CAT@ test/log/linux_fedora.log | \ |
| 157 |
./util/ansi2html.pl 'Test Log (Fedora Linux, GNU Compiler Collection)' > \ |
| 158 |
test/status/log_linux_fedora.htm |
| 159 |
@@CAT@ test/log/linux_ubuntu.log | \ |
| 160 |
./util/ansi2html.pl 'Test Log (Ubuntu Linux, GNU Compiler Collection)' > \ |
| 161 |
test/status/log_linux_ubuntu.htm |
| 162 |
@@CAT@ test/log/linux_opensuse.log | \ |
| 163 |
./util/ansi2html.pl 'Test Log (openSUSE Linux, GNU Compiler Collection)' > \ |
| 164 |
test/status/log_linux_opensuse.htm |
| 165 |
@@CAT@ test/log/linux_mandriva.log | \ |
| 166 |
./util/ansi2html.pl 'Test Log (Mandriva Linux, GNU Compiler Collection)' > \ |
| 167 |
test/status/log_linux_mandriva.htm |
| 168 |
@@CAT@ test/log/freebsd.log | \ |
| 169 |
./util/ansi2html.pl 'Test Log (FreeBSD, GNU Compiler Collection)' > \ |
| 170 |
test/status/log_freebsd.htm |
| 171 |
@@CAT@ test/log/win_cl.log | \ |
| 172 |
./util/ansi2html.pl 'Test Log (Windows, Microsoft C/C++ Optimizing Compiler)' > \ |
| 173 |
test/status/log_win_cl.htm |
| 174 |
@@CAT@ test/log/win_icc.log | \ |
| 175 |
./util/ansi2html.pl 'Test Log (Windows, Intel C++ Compiler)' > \ |
| 176 |
test/status/log_win_icc.htm |
| 177 |
@@CAT@ test/log/mac_gcc.log | \ |
| 178 |
./util/ansi2html.pl 'Test Log (Mac OSX Tiger, GNU Compiler Collection)' > \ |
| 179 |
test/status/log_mac_gcc.htm |
| 180 |
@@CAT@ test/log/configure.log | ./util/ansi2html.pl 'Test Configure' > test/status/log_configure.htm |
| 181 |
|
| 182 |
distclean: clean |
| 183 |
@ls -1 | egrep '$(PACKAGE)-.*\.tgz' | xargs rm -f |
| 184 |
@ls -1 | egrep '$(PACKAGE)-.*\.msi' | xargs rm -f |
| 185 |
|
| 186 |
clean: |
| 187 |
@rm -f *~ \#*\# |
| 188 |
@find /tmp -maxdepth 1 -name "@PACKAGE_NAME@.*" -user `whoami` -mmin +5 2>/dev/null | xargs rm -rf {} |
| 189 |
|
| 190 |
.SUFFIXES: |
| 191 |
.PHONY: dist dist-sf dist-sf-rpm dist-sf-srpm dist-sf-deb dist-sf-win cvs-check \ |
| 192 |
test test-linux test-linux-status \ |
| 193 |
test-bsd test-bsd-status \ |
| 194 |
test-win test-win-status \ |
| 195 |
test-mac test-mac-status \ |
| 196 |
test-all-html-status \ |
| 197 |
distclean clean |
| 198 |
|
| 199 |
# Local Variables: |
| 200 |
# mode: makefile |
| 201 |
# coding: utf-8-unix |
| 202 |
# End: |