Fix: preserve example files' timestamps when copying
[lttng-ust.git] / doc / examples / Makefile.am
index 25d34f3b881096841191b5bcce47756cda27551d..3114e2cc45bc3d4e051775a6f24a1b6cdd0b8c12 100644 (file)
@@ -4,6 +4,14 @@ doc_examples_gen_tpdir = ${docdir}/examples/gen-tp
 doc_examples_demodir = ${docdir}/examples/demo
 doc_examples_hello_static_libdir = ${docdir}/examples/hello-static-lib
 
+if BUILD_JNI_INTERFACE
+doc_examples_java_juldir = ${docdir}/examples/java-jul
+dist_doc_examples_java_jul_DATA = java-jul/Makefile \
+                                                                 java-jul/Hello.java \
+                                                                 java-jul/run
+SUBDIRS_JUL = java-jul
+endif
+
 dist_doc_examples_DATA = README
 
 dist_doc_examples_easy_ust_DATA = easy-ust/Makefile \
@@ -34,15 +42,58 @@ if NO_SHARED
 # Don't build examples if shared libraries support was explicitly
 # disabled.
 else
-SUBDIRS_PROXY = easy-ust demo gen-tp hello-static-lib
+# Copies are for VPATH build support
+SUBDIRS_PROXY = easy-ust demo hello-static-lib
+
+if BUILD_GEN_TP_EXAMPLES
+SUBDIRS_PROXY += gen-tp
+endif
 
 all-local:
+       @if [ x"$(srcdir)" != x"$(builddir)" ]; then \
+               for subdir in $(SUBDIRS_PROXY) $(SUBDIRS_JUL); do \
+                       cp -pfR $(srcdir)/$$subdir $(builddir); \
+               done; \
+       fi; \
+       if [ x"$(shell echo "$(top_srcdir)" | grep "^/" | wc -l)" = x"1" ]; then \
+               echo "Examples: absolute top_srcdir path $(top_srcdir)"; \
+               rel_src_subdir=""; \
+       else \
+               echo "Examples: relative top_srcdir path $(top_srcdir)"; \
+               rel_src_subdir="../"; \
+       fi; \
+       if [ x"$(shell echo "$(top_builddir)" | grep "^/" | wc -l)" = x"1" ]; then \
+               echo "Examples: absolute top_builddir path $(top_builddir)"; \
+               rel_build_subdir=""; \
+       else \
+               echo "Examples: relative top_builddir path $(top_builddir)"; \
+               rel_build_subdir="../"; \
+       fi; \
        for subdir in $(SUBDIRS_PROXY); do \
-               cd $$subdir && $(MAKE) AM_CPPFLAGS="-I../../../include/" AM_LDFLAGS='-L../../../liblttng-ust/.libs/ -Wl,-rpath="$(PWD)/../../liblttng-ust/.libs/"' LTTNG_GEN_TP_PATH="../../tools/" $(AM_MAKEFLAGS) all; cd ..; \
-       done
+               (cd $$subdir && $(MAKE) AM_CC="$(CC)" AM_CPPFLAGS="$(CPPFLAGS) -I$$rel_src_subdir$(top_srcdir)/include/ -I$$rel_build_subdir$(top_builddir)/include/" AM_CFLAGS='$(CFLAGS)' AM_LDFLAGS='$(LDFLAGS) -L../../../liblttng-ust/.libs -Wl,-rpath="$(PWD)/../../liblttng-ust/.libs/" -Wl,-rpath-link="$(PWD)/../../liblttng-ust/.libs/"' LTTNG_GEN_TP_PATH="../../../tools/" $(AM_MAKEFLAGS) all && cd ..) || exit 1; \
+       done; \
+       if [ x"$(SUBDIRS_JUL)" != x"" ]; then \
+               for subdir in $(SUBDIRS_JUL); do \
+                       (cd $(SUBDIRS_JUL) && $(MAKE) JAVA_CLASSPATH_OVERRIDE="../../../liblttng-ust-jul" JAVA_JARFILE_OVERRIDE="liblttng-ust-jul.jar" $(AM_MAKEFLAGS) all && cd ..) || exit 1; \
+               done; \
+       fi;
 
 clean-local:
-       for subdir in $(SUBDIRS_PROXY); do \
-               cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) clean; cd ..; \
-       done
+       @for subdir in $(SUBDIRS_PROXY); do \
+               if [ -d $$subdir ]; then \
+                       (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) clean && cd ..) || exit 1; \
+               fi; \
+       done; \
+       if [ x"$(SUBDIRS_JUL)" != x"" ]; then \
+               for subdir in $(SUBDIRS_JUL); do \
+                       if [ -d $$subdir ]; then \
+                               (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) clean && cd ..) || exit 1; \
+                       fi; \
+               done; \
+       fi; \
+       if [ x"$(srcdir)" != x"$(builddir)" ]; then \
+               for subdir in $(SUBDIRS_PROXY) $(SUBDIRS_JUL); do \
+                       rm -rf $(builddir)/$$subdir; \
+               done; \
+       fi;
 endif
This page took 0.023501 seconds and 4 git commands to generate.