summaryrefslogtreecommitdiff
path: root/patches/cross-reference.synopsis.diff
blob: bc453664856c04ee683aedbd84b5215c1c65b481 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Index: Makefile
===================================================================
--- Makefile	(revision 15403)
+++ Makefile	(working copy)
@@ -473,7 +473,7 @@ clean:
 	    libbusybox.so* \
 	    .config.old busybox busybox_unstripped
 	- rm -r -f _install testsuite/links
-	- find . -name .\*.flags -o -name \*.o  -o -name \*.om \
+	- find . -name .\*.flags -o -name \*.o  -o -name \*.om -o -name \*.syn \
 	    -o -name \*.os -o -name \*.osm -o -name \*.a | xargs rm -f
 
 distclean: clean
@@ -503,6 +503,17 @@ release: distclean #doc
 tags:
 	ctags -R .
 
+# documentation, cross-reference
+# Modern distributions already ship synopsis packages (e.g. debian)
+# If you have an old distribution go to http://synopsis.fresco.org/
+hdr := $(wildcard $(patsubst %,%/*.h,$(SRC_DIRS)))
+syn := $(patsubst %.h, %.syn, $(hdr))
+
+%.syn: %.h
+	synopsis -p C -l Comments.SSDFilter,Comments.Previous $(INCS) -Wp,verbose,debug,preprocess,cppflags="'$(CFLAGS) $(EXTRA_CFLAGS) $(LDFLAGS) $(PROG_CFLAGS) $(PROG_LDFLAGS) $(CFLAGS_COMBINE) $(APPLETS_DEFINE) $(BUSYBOX_DEFINE)'" -o $@ $<
+html: $(syn)
+	synopsis -f HTML -Wf,title="'BusyBox Documentation'" -o $@ $^
+
 
 endif # ifeq ($(skip-makefile),)