62 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
		
		
			
		
	
	
			62 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
| 
								 | 
							
								#!/usr/bin/make -f
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# This is probably only going to work with GNU Make.
							 | 
						||
| 
								 | 
							
								# This in a separate file instead of in Makefile.am because Automake complains
							 | 
						||
| 
								 | 
							
								# about the GNU Make-isms.
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								EXEEXT = @EXEEXT@
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								PACKAGE_VERSION = @PACKAGE_VERSION@
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								HOST_TRIPLET = @HOST_TRIPLET@
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								SRC_BINDIR = @SRC_BINDIR@
							 | 
						||
| 
								 | 
							
								TEST_BINDIR = @TEST_BINDIR@
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								LIBRARY := $(SRC_BINDIR)libsndfile.so.$(LIB_VERSION)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								LIB_VERSION := $(shell echo $(PACKAGE_VERSION) | sed -e 's/[a-z].*//')
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								TESTNAME = libsndfile-testsuite-$(HOST_TRIPLET)-$(PACKAGE_VERSION)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								TARBALL = $(TESTNAME).tar.gz
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								# Find the test programs by grepping the script for the programs it executes.
							 | 
						||
| 
								 | 
							
								testprogs := $(shell grep '^\./' tests/test_wrapper.sh | sed -e "s|./||" -e "s/ .*//" | sort | uniq)
							 | 
						||
| 
								 | 
							
								# Also add the programs not found by the above.
							 | 
						||
| 
								 | 
							
								testprogs += tests/sfversion$(EXEEXT) tests/stdin_test$(EXEEXT) tests/stdout_test$(EXEEXT) \
							 | 
						||
| 
								 | 
							
												tests/cpp_test$(EXEEXT) tests/win32_test$(EXEEXT)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								libfiles := $(shell if test ! -z $(EXEEXT) ; then echo "src/libsndfile-1.def src/.libs/libsndfile-1.dll" ; elif test -f $(LIBRARY) ; then echo $(LIBRARY) ; fi  ; fi)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								testbins := $(testprogs) $(libfiles)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								all : $(TARBALL)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								clean :
							 | 
						||
| 
								 | 
							
									rm -rf $(TARBALL) $(TESTNAME)/
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								check : $(TESTNAME)/test_wrapper.sh
							 | 
						||
| 
								 | 
							
									(cd ./$(TESTNAME)/ && ./test_wrapper.sh)
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								$(TARBALL) : $(TESTNAME)/test_wrapper.sh
							 | 
						||
| 
								 | 
							
									tar zcf $@ $(TESTNAME)
							 | 
						||
| 
								 | 
							
									rm -rf $(TESTNAME)
							 | 
						||
| 
								 | 
							
									@echo
							 | 
						||
| 
								 | 
							
									@echo "Created : $(TARBALL)"
							 | 
						||
| 
								 | 
							
									@echo
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								$(TESTNAME)/test_wrapper.sh : tests/test_wrapper.sh tests/pedantic-header-test.sh
							 | 
						||
| 
								 | 
							
									rm -rf $(TESTNAME)
							 | 
						||
| 
								 | 
							
									mkdir -p $(TESTNAME)/tests/
							 | 
						||
| 
								 | 
							
									echo
							 | 
						||
| 
								 | 
							
									echo $(testbins)
							 | 
						||
| 
								 | 
							
									echo
							 | 
						||
| 
								 | 
							
									cp $(testbins) $(TESTNAME)/tests/
							 | 
						||
| 
								 | 
							
									cp tests/test_wrapper.sh $(TESTNAME)/
							 | 
						||
| 
								 | 
							
									cp tests/pedantic-header-test.sh $(TESTNAME)/tests/
							 | 
						||
| 
								 | 
							
									chmod u+x $@
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								tests/test_wrapper.sh : tests/test_wrapper.sh.in
							 | 
						||
| 
								 | 
							
									make $@
							 |