Change in libosmocore[master]: doxygen: add source files as dependencies

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.

Neels Hofmeyr gerrit-no-reply at lists.osmocom.org
Mon Feb 4 16:44:04 UTC 2019


Neels Hofmeyr has submitted this change and it was merged. ( https://gerrit.osmocom.org/12775 )

Change subject: doxygen: add source files as dependencies
......................................................................

doxygen: add source files as dependencies

So far, when modifying a source file, the doxygen docs were not regenerated
automatically. It required a manual 'rm -rf docs/core' or similar. Make it
rebuild automatically:

Add each library's source files to the list of dependencies for the first-pass
doxygen build.

Attention, since all libraries depend on the .map files of each other library,
and each library depends on its own source files, that means that a single
touch on one .c file anywhere will result in rebuilding the entire doxygen
docs. It is correct to do so, since any file may introduce \ref targets used
anywhere else. If you don't want that, --disable-doxygen.

Change-Id: I15ea96be6e7abe91264b91f0b06963a0f2d63b0b
---
M Makefile.am
1 file changed, 25 insertions(+), 7 deletions(-)

Approvals:
  Neels Hofmeyr: Looks good to me, approved
  Jenkins Builder: Verified



diff --git a/Makefile.am b/Makefile.am
index 9e0888f..8fe5f57 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -51,43 +51,61 @@
 # circular dependency: we would rebuild all every time 'make' is invoked.
 # The .prep file also depends on all the source files for that library.
 
-$(top_builddir)/doc/libosmocore.tag.prep: $(top_builddir)/Doxyfile.core
+$(top_builddir)/doc/libosmocore.tag.prep: $(top_builddir)/Doxyfile.core \
+		$(top_srcdir)/include/osmocom/core/*.h \
+		$(top_srcdir)/src/*.[hc] \
+		$(top_srcdir)/src/pseudotalloc/*.[hc]
 	rm -rf $(top_builddir)/doc/core; mkdir -p $(top_builddir)/doc/core
 	rm -rf $(top_builddir)/doc/libosmocore.map
 	-$(DOXYGEN) $(top_builddir)/Doxyfile.core
 	touch "$@"
 
-$(top_builddir)/doc/libosmogsm.tag.prep: $(top_builddir)/Doxyfile.gsm
+$(top_builddir)/doc/libosmogsm.tag.prep: $(top_builddir)/Doxyfile.gsm \
+		$(top_srcdir)/include/osmocom/gsm/*.h \
+		$(top_srcdir)/include/osmocom/gsm/protocol/*.h \
+		$(top_srcdir)/include/osmocom/crypt/*.h \
+		$(top_srcdir)/src/gsm/*.c \
+		$(top_srcdir)/src/gsm/milenage/*.[hc]
 	rm -rf $(top_builddir)/doc/gsm; mkdir -p $(top_builddir)/doc/gsm
 	rm -rf $(top_builddir)/doc/libosmogsm.map
 	-$(DOXYGEN) $(top_builddir)/Doxyfile.gsm
 	touch "$@"
 
-$(top_builddir)/doc/libosmovty.tag.prep: $(top_builddir)/Doxyfile.vty
+$(top_builddir)/doc/libosmovty.tag.prep: $(top_builddir)/Doxyfile.vty \
+		$(top_srcdir)/include/osmocom/vty/*.h \
+		$(top_srcdir)/src/vty/*.c
 	rm -rf $(top_builddir)/doc/vty; mkdir -p $(top_builddir)/doc/vty
 	rm -rf $(top_builddir)/doc/libosmovty.map
 	-$(DOXYGEN) $(top_builddir)/Doxyfile.vty
 	touch "$@"
 
-$(top_builddir)/doc/libosmocodec.tag.prep: $(top_builddir)/Doxyfile.codec
+$(top_builddir)/doc/libosmocodec.tag.prep: $(top_builddir)/Doxyfile.codec \
+		$(top_srcdir)/include/osmocom/codec/*.h \
+		$(top_srcdir)/src/codec/*.c
 	rm -rf $(top_builddir)/doc/codec; mkdir -p $(top_builddir)/doc/codec
 	rm -rf $(top_builddir)/doc/libosmocodec.map
 	-$(DOXYGEN) $(top_builddir)/Doxyfile.codec
 	touch "$@"
 
-$(top_builddir)/doc/libosmocoding.tag.prep: $(top_builddir)/Doxyfile.coding
+$(top_builddir)/doc/libosmocoding.tag.prep: $(top_builddir)/Doxyfile.coding \
+		$(top_srcdir)/include/osmocom/coding/*.h \
+		$(top_srcdir)/src/coding/*.c
 	rm -rf $(top_builddir)/doc/coding; mkdir -p $(top_builddir)/doc/coding
 	rm -rf $(top_builddir)/doc/libosmocoding.map
 	-$(DOXYGEN) $(top_builddir)/Doxyfile.coding
 	touch "$@"
 
-$(top_builddir)/doc/libosmoctrl.tag.prep: $(top_builddir)/Doxyfile.ctrl
+$(top_builddir)/doc/libosmoctrl.tag.prep: $(top_builddir)/Doxyfile.ctrl \
+		$(top_srcdir)/include/osmocom/ctrl/*.h \
+		$(top_srcdir)/src/ctrl/*.c
 	rm -rf $(top_builddir)/doc/ctrl; mkdir -p $(top_builddir)/doc/ctrl
 	rm -rf $(top_builddir)/doc/libosmoctrl.map
 	-$(DOXYGEN) $(top_builddir)/Doxyfile.ctrl
 	touch "$@"
 
-$(top_builddir)/doc/libosmogb.tag.prep: $(top_builddir)/Doxyfile.gb
+$(top_builddir)/doc/libosmogb.tag.prep: $(top_builddir)/Doxyfile.gb \
+		$(top_srcdir)/include/osmocom/gprs/*.h \
+		$(top_srcdir)/src/gb/*.[hc]
 	rm -rf $(top_builddir)/doc/gb; mkdir -p $(top_builddir)/doc/gb
 	rm -rf $(top_builddir)/doc/libosmogb.map
 	-$(DOXYGEN) $(top_builddir)/Doxyfile.gb

-- 
To view, visit https://gerrit.osmocom.org/12775
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings

Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-MessageType: merged
Gerrit-Change-Id: I15ea96be6e7abe91264b91f0b06963a0f2d63b0b
Gerrit-Change-Number: 12775
Gerrit-PatchSet: 3
Gerrit-Owner: Neels Hofmeyr <nhofmeyr at sysmocom.de>
Gerrit-Reviewer: Harald Welte <laforge at gnumonks.org>
Gerrit-Reviewer: Jenkins Builder (1000002)
Gerrit-Reviewer: Neels Hofmeyr <nhofmeyr at sysmocom.de>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20190204/ada57901/attachment.htm>


More information about the gerrit-log mailing list