cannam@85: ## Process this file with automake to produce Makefile.in cannam@85: cannam@85: # Prevent any extension. cannam@85: EXEEXT = cannam@85: cannam@85: CXXLD = $(CXX) cannam@85: CXXLINK = $(LIBTOOL) --tag=CXX --mode=link $(CXXLD) $(AM_CXXFLAGS) \ cannam@85: $(CXXFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ cannam@85: cannam@85: EXTRA_DIST = sndfile_load.m sndfile_save.m sndfile_play.m \ cannam@85: octave_test.m octave_test.sh $(oct_module_srcs) PKG_ADD cannam@85: cannam@85: octconfigdir = $(exec_prefix)/share/octave/site/m cannam@85: octconfig_DATA = sndfile_load.m sndfile_save.m sndfile_play.m cannam@85: cannam@85: OCTAVE_DEST_MDIR = @OCTAVE_DEST_MDIR@ cannam@85: OCTAVE_DEST_ODIR = @OCTAVE_DEST_ODIR@/sndfile cannam@85: cannam@85: OCT_CXXFLAGS = @OCT_CXXFLAGS@ cannam@85: OCT_LIB_DIR = @OCT_LIB_DIR@ cannam@85: OCT_LIBS = @OCT_LIBS@ cannam@85: cannam@85: SNDFILEDIR = $(top_builddir)/src cannam@85: INCLUDES = -I$(SNDFILEDIR) cannam@85: cannam@85: oct_module_srcs = sndfile.cc cannam@85: oct_module_files = sndfile.oct PKG_ADD cannam@85: cannam@85: # Make these noinst so they can be installed manually. cannam@85: noinst_DATA = $(oct_module_files) cannam@85: cannam@85: cannam@85: # Used by shave which cleans up automake generated Makefile output. cannam@85: V = @ cannam@85: Q = $(V:1=) cannam@85: QUIET_GEN = $(Q:@=@echo ' GEN '$@;) cannam@85: cannam@85: cannam@85: # Use Octave's mkoctfile to do all the heavy lifting. Unfortunately, its cannam@85: # a little dumb so we need to guide it carefully. cannam@85: sndfile.oct : sndfile.o cannam@85: $(QUIET_GEN) $(MKOCTFILE) -v $(INCLUDES) $(top_builddir)/Octave/$+ -L$(SNDFILEDIR)/.libs -L$(SNDFILEDIR) -lsndfile -o $(top_builddir)/Octave/$@ > /dev/null cannam@85: cannam@85: sndfile.o : sndfile.cc cannam@85: $(QUIET_GEN) $(MKOCTFILE) -v $(INCLUDES) -c $+ -o $(top_builddir)/Octave/$@ > /dev/null cannam@85: cannam@85: # Allow for the test being run in the build dir, but the test script cannam@85: # being located in the source dir. cannam@85: check : cannam@85: octave_src_dir=$(srcdir) $(srcdir)/octave_test.sh cannam@85: cannam@85: cannam@85: # Since the octave modules are installed in a special location, a custom install cannam@85: # and uninstall routine must be specified. cannam@85: install-exec-local : $(oct_module_files) cannam@85: @$(NORMAL_INSTALL) cannam@85: test -z "$(OCTAVE_DEST_ODIR)" || $(mkdir_p) "$(DESTDIR)$(OCTAVE_DEST_ODIR)" cannam@85: @list='$(oct_module_files)'; for p in $$list; do \ cannam@85: p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \ cannam@85: if test -f $$p \ cannam@85: || test -f $$p1 \ cannam@85: ; then \ cannam@85: f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \ cannam@85: echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(INSTALL) '$$p' '$(DESTDIR)$(OCTAVE_DEST_ODIR)/$$f'"; \ cannam@85: $(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(INSTALL) "$$p" "$(DESTDIR)$(OCTAVE_DEST_ODIR)/$$f" || exit 1; \ cannam@85: else :; fi; \ cannam@85: done cannam@85: cannam@85: uninstall-local : cannam@85: @$(NORMAL_UNINSTALL) cannam@85: @list='$(oct_module_files)'; for p in $$list; do \ cannam@85: f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \ cannam@85: echo " rm -f '$(DESTDIR)$(OCTAVE_DEST_ODIR)/$$f'"; \ cannam@85: rm -f "$(DESTDIR)$(OCTAVE_DEST_ODIR)/$$f"; \ cannam@85: done cannam@85: cannam@85: clean-local : cannam@85: rm -f sndfile.o sndfile.oct