#####################################################################
#
# Xclasses - the X11 GUI layout library
#
# top level makefile   -   by Jrgen Schmitz
#
# ($Id: Makefile,v 1.4 1998/07/29 23:02:18 schmitzj Exp $)
#

TOPDIR=$(shell pwd)
include $(TOPDIR)/Rules

all: about lib/$(ARNAME) examples_dir

code: about lib/$(ARNAME)

#-------------------------------------------------------------------------

install: libs includes
	@echo "Done."

libs:
	@if [ ! -d "$(LIBSDIR)" ]; then\
	mkdir $(LIBSDIR);\
	fi
ifeq ($(SHAREDLIB),y)
	cp lib/libXclasses.so.$(LIBMAJOR).$(LIBMINOR).$(LIBPATCH) $(LIBSDIR)
	chmod 644 $(LIBSDIR)/libXclasses.so.$(LIBMAJOR).$(LIBMINOR).$(LIBPATCH)
endif
	cp lib/libXclasses.a $(LIBSDIR)
	chmod 644 $(LIBSDIR)/libXclasses.a
#	chmod 755 $(LIBSDIR)
ifeq ($(SHAREDLIB),y)
	@(cd $(LIBSDIR);rm -f libXclasses.so libXclasses.so.$(LIBMAJOR);\
	ln -s libXclasses.so.$(LIBMAJOR) libXclasses.so;\
	ln -s libXclasses.so.$(LIBMAJOR).$(LIBMINOR).$(LIBPATCH) libXclasses.so.$(LIBMAJOR))
	@if [ "`whoami`" = "root" -o "`whoami`" = "js" ]; \
	then \
	 echo $(LDCONFIG); \
	 $(LDCONFIG);\
	fi 
endif

includes:
	@(if [ "`hostname`" != "mercur" ]; then \
	if [ ! -d "$(INCLUDESDIR)" ]; then\
	mkdir $(INCLUDESDIR);\
	fi; \
	chmod 755 $(INCLUDESDIR);\
	if [ ! -d "$(INCLUDESDIR)/Xclasses" ]; then\
	mkdir $(INCLUDESDIR)/Xclasses;\
	fi; \
	chmod 755 $(INCLUDESDIR)/Xclasses;\
	cp include/*.h $(INCLUDESDIR)/Xclasses;\
	rm -f $(INCLUDESDIR)/Xclasses/Xclasses;\
	chmod 644 $(INCLUDESDIR)/Xclasses/*;\
	if [ ! -d "$(CONFIGSDIR)" ]; then\
	mkdir $(CONFIGSDIR);\
	fi; \
	chmod 755 $(CONFIGSDIR);\
	cp doc/Xclasses_cfg $(CONFIGSDIR)/Xclasses;\
	chmod 644 $(CONFIGSDIR)/Xclasses;\
	fi)

#-------------------------------------------------------------------------

about:
	@echo "Make Xclasses"
ifeq ($(SHAREDLIB),y)
	@echo " - shared lib"
endif
ifeq ($(SHAREDXPM),y)
	@echo " - use shared Xpm lib"
endif
ifeq ($(USESHAREDLIB),y)
	@echo " - use shared Xclasses"
endif

examples_dir:
	$(MAKE) -C examples

lib/$(ARNAME): dummy
	$(MAKE) -C code
	$(MAKE) -C code

#-------------------------------------------------------------------------

renew: clean all

clean: dummy
	$(MAKE) -C code clean
	$(MAKE) -C examples clean
	rm -f lib/*

tar: pack
pack: clean
	rm -f *.bak
	rm -f *.info
	rm -f */*.bak
	rm -f */*.info
	(cd ..; rm -f Xcl_private.tar.gz; tar cf Xcl_private.tar xclasses;gzip -9 Xcl_private.tar)

send_source: clean
	rm -f *.bak
	rm -f *.info
	rm -f */*.bak
	rm -f */*.info
	$(MAKE) -C examples clean
	(cd ..; rm -f Xclasses-public-$(VERSION).src.tar.gz; \
	tar cf - \
	 `find xclasses/doc/Xclasses.pdf.gz \
	 xclasses/doc/Xclasses_cfg \
	 xclasses/doc/options.txt \
	 xclasses/doc/resources.txt \
	 xclasses/include \
	 xclasses/Makefile \
	 xclasses/System/ \
	 xclasses/build \
	 xclasses/COPYING.LIB \
	 xclasses/README \
	 xclasses/code \
	 xclasses/Xclasses.lsm \
	 xclasses/examples/README \
	 xclasses/examples/MOST* \
	 xclasses/examples/Makefile \
	 xclasses/examples/Rules.make \
	 xclasses/examples/Xteinheiten \
	 xclasses/examples/designer \
	 xclasses/examples/doc_examples \
	 xclasses/examples/FSAI \
	 xclasses/examples/xmanager \
	 xclasses/examples/newclass \
	 xclasses/examples/imggen ! -type d -print|grep -v CVS`| \
	 gzip -c -9 >Xclasses-public-$(VERSION).src.tar.gz \
	 )
	sync

send: dummy
	rm -f *.bak
	rm -f *.info
	rm -f */*.bak
	rm -f */*.info
	$(MAKE) -C examples clean
	(cd ..; rm -f Xclasses-public-$(VERSION)-`uname`-bin.tar.gz; \
	tar cf - \
	 `find xclasses/doc/Xclasses.pdf.gz \
	 xclasses/doc/Xclasses_cfg \
	 xclasses/doc/options.txt \
	 xclasses/doc/resources.txt \
	 xclasses/include \
	 xclasses/lib \
	 xclasses/Makefile \
	 xclasses/Rules.make \
	 xclasses/build \
	 xclasses/README \
	 xclasses/setenvxc \
	 xclasses/COPYING.LIB \
	 xclasses/Xclasses.lsm \
	 xclasses/examples/README \
	 xclasses/examples/MOST* \
	 xclasses/examples/Makefile \
	 xclasses/examples/Rules.make \
	 xclasses/examples/Xteinheiten \
	 xclasses/examples/doc_examples \
	 xclasses/examples/FSAI \
	 xclasses/examples/xmanager \
	 xclasses/examples/newclass \
	 xclasses/examples/imggen ! -type d -print|grep -v CVS`| \
	 gzip -c -9 >Xclasses-public-$(VERSION).bin.`uname`.tar.gz \
	 )
	sync

zip: dummy
	(rm -rf /zip/xclasses.bak;mv -f /zip/xclasses /zip/xclasses.bak;cd ..;nice cp -Rfd xclasses /zip)

dok: dummy
	nice cp -Rd include /dos/d/Xclasses &
	cp doc/resources.txt /dos/d/Xclasses
	cp doc/neu /dos/d/Xclasses
	cp doc/options.txt /dos/d/Xclasses

dummy:
	
