1NXESD             = nxesd
2NXCOMP            = nxcomp
3NXPROXY           = nxproxy
4AUDIOFILE         = audiofile
5AUDIOFILE_VERSION = 0.2.6
6LIBJPEG           = libjpeg
7LIBJPEG_VERSION   = turbo-1.1.1
8TMPDIST           = $(abs_builddir)/dist
9
10CFG_GENERIC = \
11	--prefix=/ --libdir=/lib --bindir=/bin --mandir=/share/man \
12	--includedir=/include --datadir=/share --exec-prefix=/libexec \
13	--libexecdir=/libexec --sysconfdir=/etc
14CFG_audiofile = $(CFG_GENERIC) --disable-shared --enable-static
15CFG_nxesd = $(CFG_GENERIC) --disable-audiofiletest --with-audiofile=yes --program-transform-name='s/i686-pc-mingw32-//'
16CFG_nxcomp = $(CFG_GENERIC) \
17			 --x-includes=$(abs_top_builddir)/packaging/win32/xming/xc/exports/include \
18			 --x-libraries=$(abs_top_builddir)/packaging/win32/xming/dist/usr/X11R6/lib
19CFG_nxproxy = $(CFG_GENERIC) --program-transform-name='s/i686-pc-mingw32-//'
20CFG_nxssh = $(CFG_GENERIC)
21CFG_libjpeg = $(CFG_GENERIC) --disable-static --enable-shared
22CFG_libpng = $(CFG_GENERIC) --disable-static --enable-shared --with-libpng-compat
23CFG_jpeg =  --prefix=$(TMPDIST) --libdir=$(TMPDIST)/lib --bindir=$(TMPDIST)/bin \
24	--mandir=$(TMPDIST)/share/man --includedir=$(TMPDIST)/include \
25	--datadir=$(TMPDIST)/share --exec-prefix=$(TMPDIST) \
26	--libexecdir=$(TMPDIST)/libexec --sysconfdir=$(TMPDIST)/etc --enable-shared --disable-static
27
28ENV_GENERIC = CPPFLAGS="-I$(TMPDIST)/include" LDFLAGS="-L$(TMPDIST)/lib"
29ENV_audiofile =
30ENV_libpng =
31ENV_jpeg =
32ENV_nxproxy = env $(ENV_GENERIC)
33ENV_nxcomp = env $(ENV_GENERIC)
34ENV_nxesd = env $(ENV_GENERIC) LIBS=-laudiofile
35
36EXTRA_DIST = urls.txt patches $(AUDIOFILE).md5sum $(NXESD).md5sum \
37	$(NXCOMP).md5sum $(LIBJPEG).md5sum
38
39CLEANFILES = -r $(TMPDIST) \
40	$(AUDIOFILE)-$(AUDIOFILE_VERSION) $(AUDIOFILE)-build-$(NX_BTYPE) \
41	$(AUDIOFILE)-srcdir $(AUDIOFILE)-checkarchive \
42	$(NXESD) $(NXESD)-build-$(NX_BTYPE) $(NXESD)-srcdir $(NXESD)-checkarchive \
43	$(NXCOMP) $(NXCOMP)-build-$(NX_BTYPE) $(NXCOMP)-srcdir $(NXCOMP)-checkarchive \
44	$(NXPROXY) $(NXPROXY)-build-$(NX_BTYPE) $(NXPROXY)-srcdir $(NXPROXY)-checkarchive \
45	$(LIBJPEG)-$(LIBJPEG_VERSION) $(LIBJPEG)-build-$(NX_BTYPE) $(LIBJPEG)-srcdir $(LIBJPEG)-checkarchive
46
47DISTCLEANFILES = -r $(CLEANFILES) \
48	$(LIBJPEG)-$(LIBJPEG_VERSION).tar.gz \
49	$(AUDIOFILE)-$(AUDIOFILE_VERSION).tar.gz \
50	$(NXESD)*.tar.gz \
51	$(NXCOMP)*.tar.gz \
52	$(NXPROXY)*.tar.gz
53
54MAINTAINERCLEANFILES = Makefile.in
55
56tmpinstall:
57	mkdir -p $(TMPDIST)/man/man1
58	$(MAKE) subtarget=$(LIBJPEG) subsrc=$(LIBJPEG)-$(LIBJPEG_VERSION) build-$(NX_BTYPE)
59	$(MAKE) subtarget=$(AUDIOFILE) subsrc=$(AUDIOFILE)-$(AUDIOFILE_VERSION) build-$(NX_BTYPE)
60	$(MAKE) subtarget=$(NXESD) subsrc=$(NXESD) build-$(NX_BTYPE)
61	$(MAKE) subtarget=$(NXCOMP) subsrc=$(NXCOMP) build-$(NX_BTYPE)
62	$(MAKE) subtarget=$(NXPROXY) subsrc=$(NXPROXY) build-$(NX_BTYPE)
63	rm -f \
64		$(TMPDIST)/bin/esd{cat,ctl,filt,loop,mon,play,rec,sample}.exe \
65		$(TMPDIST)/bin/[cd]jpeg.exe $(TMPDIST)/bin/jpegtran.exe \
66		$(TMPDIST)/bin/jpgtest.exe $(TMPDIST)/bin/libturbojpeg.dll \
67		$(TMPDIST)/bin/rdjpgcom.exe $(TMPDIST)/bin/sfconvert.exe \
68		$(TMPDIST)/bin/sfinfo.exe $(TMPDIST)/bin/wrjpgcom.exe
69
70build-cross: $(subtarget)-build-cross
71
72build-native: $(subtarget)-build-native
73
74$(subtarget)-build-cross: $(subtarget)-srcdir
75	@echo Building $(subtarget)
76	@cd $(subsrc) && $(ENV_$(subtarget)) mingw32-configure $(CFG_$(subtarget))
77	@$(MAKE) -C $(subsrc) DESTDIR=$(TMPDIST) install
78	@touch $@
79
80$(subtarget)-build-native: $(subtarget)-srcdir
81	@echo Building $(subtarget)
82	@cd $(subsrc) && $(ENV_$(subtarget)) ./configure $(CFG_$(subtarget))
83	@$(MAKE) -C $(subsrc) DESTDIR=$(TMPDIST) install
84	@touch $@
85
86$(subtarget)-srcdir: $(subtarget)-checkarchive
87	@$(RM) -rf $(subsrc)
88	@echo Unpacking $(subsrc).tar.gz
89	@tar xzf $(subsrc).tar.gz
90	@shopt -s nullglob; for p in $(srcdir)/patches/$(subtarget)-*.patch ; do \
91		echo Applying `basename $$p`; \
92		(cd $(subsrc) && patch -p1 < ../$$p) ; \
93	done
94	@touch $@
95
96$(subtarget)-checkarchive: $(subsrc).tar.gz
97	@echo Checking tarball $(subsrc).tar.gz
98	@md5sum --status -c $(srcdir)/$(subtarget).md5sum
99	@touch $@
100
101$(subsrc).tar.gz: $(srcdir)/urls.txt
102	@echo Downloading $@
103	@rm -f $@
104	@if grep -q $(subtarget) $(srcdir)/urls.txt ; then \
105		$(WGET) -O $@ $(shell grep $(subtarget) $(srcdir)/urls.txt | grep -v '#') ; \
106	else \
107		$(top_srcdir)/getnxsrcpkg $(subsrc) && $(LN_S) $(subsrc)-*.tar.gz $(subsrc).tar.gz ; \
108	fi
109	@touch $@
110