Release v0.0.2
[abstract.git] / check.mk
blob904abc6bc7c3c2fef553f0aa1da77cf006dc67dc
1 #!/usr/bin/make -f
2 # check.mk -- Run make -f check.mk for integrated unit testing
3 # Copyright (C) 2007 Sergey Yanovich
5 # This program is free software; you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation; either version 2, or (at your option)
8 # any later version.
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 # GNU General Public License for more details.
15 # You should have received a copy of the GNU General Public License
16 # along with this program; if not, write to the Free Software
17 # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
19 top_srcdir := $(shell cd .. && pwd)
21 LIBXULPATH=$(shell PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig pkg-config --variable=sdkdir libxul)
23 all: objdir/Makefile
24 @cd objdir && make
26 setup: objdir/Makefile
28 objdir/Makefile: $(top_srcdir)/configure $(top_srcdir)/nsprpub/configure
29 test -d objdir || mkdir objdir
30 cd objdir && \
31 MOZCONFIG=$(top_srcdir)/abstract/app/test/unit/mozconfig $(top_srcdir)/configure \
32 --with-libxul-sdk=$(LIBXULPATH)
33 touch $@
35 $(top_srcdir)/configure: $(top_srcdir)/configure.in
36 cd $(top_srcdir) && autoconf
38 $(top_srcdir)/nsprpub/configure: $(top_srcdir)/nsprpub/configure.in
39 cd $(top_srcdir)/nsprpub && autoconf
41 build: objdir/Makefile
42 @cd objdir && make
44 clean: objdir/Makefile
45 @cd objdir && make clean
47 install: objdir/Makefile
48 @cd objdir && make install
50 objpkg/Makefile: $(top_srcdir)/configure
51 test -d objpkg || mkdir objpkg
52 cd objpkg && \
53 MOZCONFIG=$(top_srcdir)/abstract/installer/mozconfig $(top_srcdir)/configure \
54 --with-libxul-sdk=$(LIBXULPATH)
56 installer: objpkg/Makefile
57 make -C objpkg
58 make -C objpkg installer
60 package: objpkg/Makefile
61 make -C objpkg
62 make -C objpkg package
64 .PHONY: all setup clean build install package installer