Add mkcatdefs and book.* to .gitignore
[oweals/cde.git] / cde / Imakefile
1 XCOMM $TOG: Imakefile /main/22 1999/01/18 10:38:29 samborn $
2 #define IHaveSubdirs
3 #define PassCDebugFlags CDEBUGFLAGS="$(CDEBUGFLAGS)"
4
5 CDE_RELEASE = 2.1.20
6
7 SUBDIRS = config util logs include lib programs databases admin
8 DOCSUBDIRS = config doc
9
10 MakeSubdirs($(SUBDIRS))
11
12 DependSubdirs($(SUBDIRS))
13
14 #define IHaveSpecialMakefileTarget
15 Makefile:: xmakefile
16 ImakeDependency(xmakefile)
17 xmakefile:: Imakefile
18         RMoveToBakFile(xmakefile)
19         $(IMAKE_CMD) -s xmakefile -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT_DIR)
20
21
22 VerifyOS::
23         @echo ""
24         @echo Building on OSName.
25         @echo ""
26
27 includes::
28         MakeDir($(BUILDINCDIR))
29
30 XCOMM
31 XCOMM Watch out!!!  Make sure you do make includes after removing X11....
32 XCOMM
33 clean::
34         $(RM) -r $(BUILDINCDIR)
35         $(RM) -r $(BUILDLIBDIR)
36
37       WORLDOPTS = 
38       MAKE_OPTS = -f xmakefile
39
40 XCOMM 
41 XCOMM install; create the directories that we're going to need
42 XCOMM 
43
44 DIRS_TO_CREATE = $(USRLIBDIR) $(BINDIR) $(INCDIR) $(USRINCDIR) $(LIBDIR) $(XAPPLOADDIR)
45
46 MakeDirectories(install, $(DIRS_TO_CREATE))
47
48 XCOMM 
49 XCOMM Everything builds everything in the SUBDIRS directories
50 XCOMM 
51
52 Everything::
53         @echo ""
54         @echo "Rebuilding Release $(CDE_RELEASE) of CDE"
55         @echo ""
56         @date
57         @echo ""
58         cd $(IMAKESRC) && if [ -f Makefile ]; then \
59             $(MAKE) $(MFLAGS) BOOTSTRAPCFLAGS="$(BOOTSTRAPCFLAGS)"; \
60         else \
61             $(MAKE) $(MFLAGS) -f Makefile.ini BOOTSTRAPCFLAGS="$(BOOTSTRAPCFLAGS)"; \
62         fi
63         -$(RM) xmakefile.bak; $(MV) xmakefile xmakefile.bak
64         $(MAKE) $(MFLAGS) -f xmakefile.bak xmakefile
65         $(MAKE) $(MFLAGS) $(MAKE_OPTS) Makefiles
66         $(MAKE) $(MFLAGS) $(MAKE_OPTS) Makefiles.doc
67         $(MAKE) $(MFLAGS) $(MAKE_OPTS) includes
68         $(MAKE) $(MFLAGS) $(MAKE_OPTS) includes.doc
69         $(MAKE) $(MFLAGS) $(MAKE_OPTS) depend
70         $(MAKE) $(MFLAGS) $(MAKE_OPTS) depend.doc
71         $(MAKE) $(MFLAGS) $(MAKE_OPTS) $(WORLDOPTS)
72         $(MAKE) $(MFLAGS) $(MAKE_OPTS) $(WORLDOPTS) all.doc
73         @echo ""
74         @date
75         @echo ""
76         @echo "Rebuild of Release $(CDE_RELEASE) of CDE complete."
77         @echo ""
78
79 Everything.dev::
80         @echo ""
81         @echo "Rebuilding Release $(CDE_RELEASE) of CDE excluding DOC"
82         @echo ""
83         @date
84         @echo ""
85         cd $(IMAKESRC) && if [ -f Makefile ]; then \
86             $(MAKE) $(MFLAGS) BOOTSTRAPCFLAGS="$(BOOTSTRAPCFLAGS)"; \
87         else \
88             $(MAKE) $(MFLAGS) -f Makefile.ini BOOTSTRAPCFLAGS="$(BOOTSTRAPCFLAGS)"; \
89         fi
90         -$(RM) xmakefile.bak; $(MV) xmakefile xmakefile.bak
91         $(MAKE) $(MFLAGS) -f xmakefile.bak xmakefile
92         $(MAKE) $(MFLAGS) $(MAKE_OPTS) Makefiles
93         $(MAKE) $(MFLAGS) $(MAKE_OPTS) includes
94         $(MAKE) $(MFLAGS) $(MAKE_OPTS) depend
95         $(MAKE) $(MFLAGS) $(MAKE_OPTS) $(WORLDOPTS)
96         @echo ""
97         @date
98         @echo ""
99         @echo "Rebuild of Release $(CDE_RELEASE) of CDE excluding DOC complete."
100         @echo ""
101
102 XCOMM clean out link tree looking for stuff that should get checked in
103 dangerous_strip_clean::
104         make -k clean clean.doc
105         find . -type l -exec rm {} \;
106         find . \( \! \( -type d -o -name Makefile \) \) -print
107
108 XCOMM special target to determine if the xmakefile exists. 
109 XCOMM Works on both Unix and NMAKE.EXE
110 xmakefile-exists::
111
112
113 XCOMM 
114 XCOMM Everything.doc builds everything in the DOCSUBDIRS directories
115 XCOMM 
116
117 Everything.doc::
118         @echo ""
119         @echo "Rebuilding Release $(CDE_RELEASE) of DOC"
120         @echo ""
121         @date
122         @echo ""
123         cd $(IMAKESRC) && if [ -f Makefile ]; then \
124             $(MAKE) $(MFLAGS) BOOTSTRAPCFLAGS="$(BOOTSTRAPCFLAGS)"; \
125         else \
126             $(MAKE) $(MFLAGS) -f Makefile.ini BOOTSTRAPCFLAGS="$(BOOTSTRAPCFLAGS)"; \
127         fi
128         -$(RM) xmakefile.bak; $(MV) xmakefile xmakefile.bak
129         $(MAKE) $(MFLAGS) -f xmakefile.bak xmakefile
130         $(MAKE) $(MFLAGS) $(MAKE_OPTS) Makefiles.doc
131         $(MAKE) $(MFLAGS) $(MAKE_OPTS) includes.doc
132         $(MAKE) $(MFLAGS) $(MAKE_OPTS) depend.doc
133         $(MAKE) $(MFLAGS) $(MAKE_OPTS) $(WORLDOPTS) all.doc
134         @echo ""
135         @date
136         @echo ""
137         @echo "Rebuild of Release $(CDE_RELEASE) of DOC complete."
138         @echo ""
139
140 NamedTargetSubdirs(install.doc,$(DOCSUBDIRS),"installing",DESTDIR=$(DESTDIR),install)
141 NamedTargetSubdirs(install.man.doc,$(DOCSUBDIRS),"installing man pages",DESTDIR=$(DESTDIR),install.man)
142 NamedCleanSubdirs(clean.doc,$(DOCSUBDIRS))
143 NamedTagSubdirs(tags.doc,$(DOCSUBDIRS))
144 MakeMakeSubdirs($(DOCSUBDIRS),Makefiles.doc)
145 NamedTargetSubdirs(includes.doc,$(DOCSUBDIRS),including,NullParameter,includes)
146 NamedTargetSubdirs(depend.doc,$(DOCSUBDIRS),depending,NullParameter,depend)
147 NamedMakeSubdirs(all.doc, $(DOCSUBDIRS))