RegularSources = \
        SoCameraUtils.cpp \
        SoScXMLNavigation.cpp \
        SoScXMLNavigationTarget.cpp \
        SoScXMLPanTarget.cpp \
        SoScXMLRotateTarget.cpp \
        SoScXMLSeekTarget.cpp \
        SoScXMLSpinTarget.cpp \
        SoScXMLZoomTarget.cpp \
        SoScXMLDollyTarget.cpp \
        SoScXMLMiscTarget.cpp \
        SoScXMLFlightControlTarget.cpp \
        SoScXMLMotionTarget.cpp

LinkHackSources = all-navigation-cpp.cpp

PublicHeaders =

PrivateHeaders = \
        SoCameraUtils.h \
        common-xml.cpp \
        examiner-xml.cpp \
        plane-xml.cpp

ObsoleteHeaders =

update-builtin-resources: $(srcdir)/common-xml.cpp $(srcdir)/examiner-xml.cpp $(srcdir)/plane-xml.cpp


$(srcdir)/common-xml.cpp: $(top_srcdir)/data/scxml/navigation/common.xml $(top_srcdir)/data/scxml/xml2cpp.pl
	$(top_srcdir)/data/scxml/xml2cpp.pl $< $@ common_xml

$(srcdir)/examiner-xml.cpp: $(top_srcdir)/data/scxml/navigation/examiner.xml $(top_srcdir)/data/scxml/xml2cpp.pl
	$(top_srcdir)/data/scxml/xml2cpp.pl $< $@ examiner_xml

$(srcdir)/plane-xml.cpp: $(top_srcdir)/data/scxml/navigation/plane.xml $(top_srcdir)/data/scxml/xml2cpp.pl
	$(top_srcdir)/data/scxml/xml2cpp.pl $< $@ plane_xml

# BEGIN TEMPLATE Make-Common(navigation, navigation)
# **************************************************************************
# This template depends on the following variables having been set up before
# its invokation.
#
# PublicHeaders    - header files that should be installed
# PrivateHeaders   - source files that should be distributed, but not
#                    installed - including source-included source files.
# RegularSources   - source files compiled in this directory
# LinkHackSources  - alternative source files used on -enable-compact compilation
# ObsoletedHeaders - header files that should be removed upon installation

# Everything below is autogenerated from a macro, so don't modify
# within the Makefile.am itself. 19991201 mortene.

DISTCLEANFILES = \
	ii_files/*.ii

if HACKING_COMPACT_BUILD
BuildSources = $(LinkHackSources)
ExtraSources = $(RegularSources)
else
BuildSources = $(RegularSources)
ExtraSources = $(LinkHackSources)
endif

if BUILD_WITH_MSVC
noinst_LIBRARIES = navigation.lst
else
if HACKING_DYNAMIC_MODULES
lib_LTLIBRARIES = libnavigation@SUFFIX@LINKHACK.la
else
noinst_LTLIBRARIES = libnavigation.la
endif
endif

# Remove any linklibraries detected by configure, as they are not
# needed in the submodules -- only in the toplevel libCoin build.
LIBS = 

DEFAULT_INCLUDES = -I$(top_builddir)/include -I$(top_srcdir)/include $(ExtraIncludeDirs) -I$(top_builddir)/src -I$(top_srcdir)/src

# header installation
if MAC_FRAMEWORK
libnavigationincdir = $(MAC_FRAMEWORK_PREFIX)/$(MAC_FRAMEWORK_NAME).framework/Versions/$(MAC_FRAMEWORK_VERSION)/Headers/navigation
# hack to change libdir value when installing Mac OS X compiler framework
lib@nop@dir = $(MAC_FRAMEWORK_PREFIX)/$(MAC_FRAMEWORK_NAME).framework/Versions/$(MAC_FRAMEWORK_VERSION)/Libraries
else
libnavigationincdir = $(includedir)/Inventor/navigation
endif
libnavigationinc_HEADERS = $(PublicHeaders)

libnavigation_la_SOURCES = $(BuildSources)
EXTRA_libnavigation_la_SOURCES = \
	$(PublicHeaders) $(PrivateHeaders) $(ExtraSources)

libnavigation@SUFFIX@LINKHACK_la_SOURCES = $(BuildSources)
EXTRA_libnavigation@SUFFIX@LINKHACK_la_SOURCES = \
	$(PublicHeaders) $(PrivateHeaders) $(ExtraSources)

navigation_lst_SOURCES = $(BuildSources)
EXTRA_navigation_lst_SOURCES = \
	$(PublicHeaders) $(PrivateHeaders) $(ExtraSources)

# this rule causes a make warning, so we remove it when it is not in use
navigation.lst: Makefile $(navigation_lst_OBJECTS)
	@echo "Linking navigation.lst..."; \
	rm -f $@; touch $@; \
	for i in $(navigation_lst_OBJECTS); do echo $$i >>$@; done

install-libnavigationincHEADERS: $(libnavigationinc_HEADERS)
	@$(NORMAL_INSTALL)
	@if test x"$(libnavigationinc_HEADERS)" = x""; then :; else \
	  echo " $(mkinstalldirs) $(DESTDIR)$(libnavigationincdir)"; \
	  $(mkinstalldirs) $(DESTDIR)$(libnavigationincdir); \
	fi
	@list='$(libnavigationinc_HEADERS)'; for p in $$list; do \
	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
	  f="`echo $$p | sed -e 's|^.*/||'`"; \
	  src="$$d$$p"; dst="$(DESTDIR)$(libnavigationincdir)/$$f"; \
	  if cmp -s "$$src" "$$dst"; then :; else \
	    echo " $(INSTALL_HEADER) $$src $$dst"; \
	    $(INSTALL_HEADER) "$$src" "$$dst" || exit 1; \
	  fi \
	done
	@list='$(ObsoletedHeaders)'; for f in $$list; do \
	  file="$(DESTDIR)$(libnavigationincdir)/$$f"; \
	  if test -x "$$file"; then \
	    echo " rm -f $$file"; \
	    rm -f "$$file"; \
	  fi \
	done; \
	:

if MACOSX
# When using --enable-hacking, the user tends to manually replace some 
# of the installed libraries by symlinks back to the build directory. 
# But Mac OS X's install program refuses to overwrite symlinks => we 
# have to explicitly remove existing symlinks before installation.
install-exec-local:
	@for file in $(DESTDIR)$(lib@nop@dir)/libnavigation@SUFFIX@LINKHACK*.dylib; do \
	  if test -L "$$file"; then \
	    rm -f "$$file"; \
	  fi \
	done; 
else 
install-exec-local:
endif

install-symlinks:
	@echo "Creating symlink to libnavigation@SUFFIX@LINKHACK*@LIBEXT@*"; \
        for dir in $(SUBDIRS) ; do \
          (cd $$dir; $(MAKE) install-symlinks;) \
        done ; \
        here=`pwd`; \
	(cd $(DESTDIR)$(lib@nop@dir); \
	for file in libnavigation@SUFFIX@LINKHACK*@LIBEXT@*; do \
	  ln -sf "$$here/.libs/$$file" "$$file"; \
	done; \
        cd -; )
##$ END TEMPLATE Make-Common

