Blob Blame History Raw
XCOMM 
XCOMM Motif
XCOMM
XCOMM Copyright (c) 1987-2012, The Open Group. All rights reserved.
XCOMM
XCOMM These libraries and programs are free software; you can
XCOMM redistribute them and/or modify them under the terms of the GNU
XCOMM Lesser General Public License as published by the Free Software
XCOMM Foundation; either version 2 of the License, or (at your option)
XCOMM any later version.
XCOMM
XCOMM These libraries and programs are distributed in the hope that
XCOMM they will be useful, but WITHOUT ANY WARRANTY; without even the
XCOMM implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
XCOMM PURPOSE. See the GNU Lesser General Public License for more
XCOMM details.
XCOMM
XCOMM You should have received a copy of the GNU Lesser General Public
XCOMM License along with these librararies and programs; if not, write
XCOMM to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
XCOMM Floor, Boston, MA 02110-1301 USA
XCOMM 
XCOMM 
XCOMM HISTORY
XCOMM 
XCOMM   $TOG: Imakefile /main/22 1999/05/19 17:00:13 mgreess $
#define IHaveSubdirs
#define PassCDebugFlags CDEBUGFLAGS="$(CDEBUGFLAGS)"

RELEASE = "Release 2.3.4"
PRODUCT = "Motif"
#if BuildMotifDemos
      DEMOSDIRECTORY = demos
#endif
      SUBDIRS = config localized lib tools/wml clients $(DEMOSDIRECTORY) \
	bitmaps bindings doc/man
      CDE_SUBDIRS = lib clients/uil clients/xmbind

MakeSubdirs($(SUBDIRS))
DependSubdirs($(SUBDIRS))

#define IHaveSpecialMakefileTarget
Makefile:: xmakefile
ImakeDependency(xmakefile)
xmakefile:: Imakefile
	RMoveToBakFile(xmakefile)
	$(IMAKE_CMD) -s xmakefile -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT_DIR)


VerifyOS::
	@echo ""
	@echo Building on OSName.
	@echo ""

includes::
	MakeDir($(BUILDINCDIR))
	MakeDir($(BUILDLIBDIR))
	MakeDir($(BUILDDOCDIR))
	MakeDir($(BUILDLOCDIR))

XCOMM
XCOMM Watch out!!!  Make sure you do make includes after removing X11....
XCOMM
clean::
	$(RM) -r $(BUILDINCDIR)
	$(RM) -r $(BUILDLIBDIR)
	$(RM) -r $(BUILDDOCDIR)
	$(RM) -r $(BUILDLOCDIR)

      WORLDOPTS = -k
      MAKE_OPTS = -f xmakefile

XCOMM 
XCOMM install; create the directories that we're going to need
XCOMM 

#ifdef UseInstalled
TESTS_IMAKE = $(IMAKE) -DUseInstalled
#else
TESTS_IMAKE = ../$(IMAKE)
#endif
DIRS_TO_CREATE = $(USRLIBDIR) $(BINDIR) $(INCDIR) $(USRINCDIR) $(LIBDIR) $(XAPPLOADDIR)
CDE_DIRS_TO_CREATE = $(USRLIBDIR) $(BINDIR) $(PROJECTROOT)/share/include

MakeDirectories(install, $(DIRS_TO_CREATE))
MakeDirectories(install.cde, $(CDE_DIRS_TO_CREATE))

LinkFileList(install.cde,include,$(PROJECTROOT),share)

NamedTargetSubdirs(install.cde,$(CDE_SUBDIRS),"installing",DESTDIR=$(DESTDIR),install)

Everything::
	@echo ""
	@echo "Rebuilding $(RELEASE) of $(PRODUCT)"
	@echo ""
	@date
	@echo ""
	cd $(IMAKESRC) && if [ -f Makefile ]; then \
	    $(MAKE) $(MFLAGS) BOOTSTRAPCFLAGS="$(BOOTSTRAPCFLAGS)"; \
	else \
	    $(MAKE) $(MFLAGS) -f Makefile.ini BOOTSTRAPCFLAGS="$(BOOTSTRAPCFLAGS)"; \
	fi
	-$(RM) xmakefile.bak; $(MV) xmakefile xmakefile.bak
	$(MAKE) $(MFLAGS) -f xmakefile.bak xmakefile
	$(MAKE) $(MFLAGS) $(MAKE_OPTS) Makefiles
	$(MAKE) $(MFLAGS) $(MAKE_OPTS) testsMakefile
	$(MAKE) $(MFLAGS) $(MAKE_OPTS) includes
	$(MAKE) $(MFLAGS) $(MAKE_OPTS) depend
	$(MAKE) $(MFLAGS) $(MAKE_OPTS) $(WORLDOPTS)
	@echo ""
	@date
	@echo ""
	@echo "Rebuild of $(RELEASE) of $(PRODUCT) complete."
	@echo ""

XCOMM clean out link tree looking for stuff that should get checked in
dangerous_strip_clean::
	make -k clean
	find . -type l -exec rm {} \;
	find . \( \! \( -type d -o -name Makefile \) \) -print

XCOMM Bootstrap the toplevel Makefile in tests subdirectory.

testsMakefile::
	-if [ -d tests ] ; then \
	cd tests; if [ -f Makefile ] ; then set -x; \
	$(RM) Makefile.bak; $(MV) Makefile Makefile.bak; \
	fi; \
	$(TESTS_IMAKE) -I../$(IRULESRC) $(IMAKE_DEFINES) -DTOPDIR=../. -DCURDIR=$(CURRENT_DIR)/tests ; fi

XCOMM special target to determine if the xmakefile exists. 
XCOMM Works on both Unix and NMAKE.EXE
xmakefile-exists::