## Copyright (C) 1996 DIMACS Center, Rutgers, The State University of New Jersey
## Author(s): Jonathan Berry

## This software is copyrighted by the DIMACS Center at Rutgers, The State
## University of New Jersey.  IT IS PROVIDED AS IS, AND THE AUTHORS, DIMACS, AND
## RUTGERS, THE STATE UNIVERSITY OF NEW JERSEY  DISCLAIM
## ALL LIABILITY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL
## DAMAGES ARISING OUT OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION, OR ANY
## DERIVATIVES THEREOF, EVEN IF THE AUTHORS HAVE BEEN ADVISED OF THE
## POSSIBILITY OF SUCH DAMAGE.

## THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY WARRANTIES,
## INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY,
## FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT.  THIS SOFTWARE
## IS PROVIDED ON AN "AS IS" BASIS, AND THE AUTHORS AND DISTRIBUTORS HAVE
## NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR
## MODIFICATIONS.

## The authors hereby grant permission to use, copy, modify, distribute,
## and license this software and its documentation for any purpose, provided
## that existing copyright notices are retained in all copies and that this
## notice is included verbatim in any distributions. No written agreement,
## license, or royalty fee is required for any of the authorized uses.
## Modifications to this software may be copyrighted by their authors
## and need not follow the licensing terms described here, provided that
## the new terms are clearly indicated on the first page of each file where
## they apply.

## Last File Update: 31-Jul-1996
## 
DIR = userobj
.cc.o:
	(cd ..; $(LINK_COMPILE.cc) $(GNUFLAGS) $(DIR)/$<; mv $@ $(DIR))
EXTRA_OBJECTS = linkTemplates/linkTemplateFiles.o
STK_OBJECTS   = STkTemplates/STkTemplateFiles.o \
                autogenSTkMethods/initSTkFiles.o \
                manualSTkMethods/manualSTkFiles.o
## important:   use lorder() and tsort() to establish correct order
SOURCES.cc = \
        Testobj.cc \
	ExtractMaximalClique.cc
OBJECTS = \
        $(SOURCES.cc:%.cc=%.o)
all:    objects

make_extra:
	cd linkTemplates;  $(MAKE) -f Make.userobjlinkTemplates \
				LINK_COMPILE.cc="$(LINK_COMPILE.cc)"\
				GNUFLAGS="$(GNUFLAGS)" all
make_extra_stk:
	cd STkTemplates;  $(MAKE) -f Make.userobjSTkTemplates \
				LINK_COMPILE.cc="$(LINK_COMPILE.cc)"\
				GNUFLAGS="$(GNUFLAGS)" all
	cd manualSTkMethods;  $(MAKE) -f Make.userobjmanualSTkMethods init
	cd autogenSTkMethods; $(MAKE) -f Make.userobjautogenSTkMethods \
				LINK_COMPILE.cc="$(LINK_COMPILE.cc)"\
				GNUFLAGS="$(GNUFLAGS)" all
	cd manualSTkMethods;  $(MAKE) -f Make.userobjmanualSTkMethods \
				LINK_COMPILE.cc="$(LINK_COMPILE.cc)"\
				GNUFLAGS="$(GNUFLAGS)" all
../libuserobj.a: make_extra $(OBJECTS) 
	@-rm ../libuserobj.a
	ar cr ../libuserobj.a $(OBJECTS) $(EXTRA_OBJECTS)
	ranlib ../libuserobj.a
../libuserobjstk.a: make_extra_stk
	@-rm ../libuserobjstk.a
	ar cr ../libuserobjstk.a $(STK_OBJECTS) 
	ranlib ../libuserobjstk.a
objects: $(SOURCES.cc) $(OBJECTS) 
clean:
	$(RM) $(OBJECTS) $(EXTRA_OBJECTS) libuserobj.a
	cd linkTemplates; make -f Make.userobjlinkTemplates clean
	cd STkTemplates; make -f Make.userobjSTkTemplates clean
	cd autogenSTkMethods; make -f Make.userobjautogenSTkMethods clean
	cd manualSTkMethods; make -f Make.userobjmanualSTkMethods clean
print:
	hsp -p $(SOURCES.cc)
wc:
	wc $(SOURCES.cc)
depend:
	makedepend -fMake.userobj $(DEPENDFLAGS) $(SOURCES.cc)
# DO NOT DELETE THIS LINE -- make depend depends on it.
