#
# $Id: libdoxycfg.t,v 1.1 2001/03/19 19:27:41 root Exp $
#
# Copyright (C) 1997-2012 by Dimitri van Heesch.
#
# Permission to use, copy, modify, and distribute this software and its
# documentation under the terms of the GNU General Public License is hereby 
# granted. No representations are made about the suitability of this software 
# for any purpose. It is provided "as is" without express or implied warranty.
# See the GNU General Public License for more details.
#
# Documents produced by Doxygen are derivative works derived from the
# input used in their production; they are not affected by this license.
#############################################################################
# Makefile for building ../lib/libdoxycfg.a
# Generated by tmake at 16:16, 2012/02/24
#     Project: libdoxycfg
#    Template: libdoxycfg.t
#############################################################################

####### Compiler, tools and options

CC	=	cc
CXX	=	c++
CFLAGS	=	-pipe -Wall -W -g -fstack-protector
CXXFLAGS=	-pipe -D__FreeBSD__=6 -DYY_TYPEDEF_YY_SIZE_T -Dyy_size_t=int -Wall -W -g -fstack-protector
INCPATH	=	-I../qtools
AR	=	ar cq
RANLIB	=	ranlib
MOC	=	/usr/bin/moc

TAR	=	tar -cf
GZIP	=	gzip -9f

####### Files

HEADERS =	config.h \
		configoptions.h \
		portable.h
SOURCES =	config.cpp \
		configoptions.cpp \
		portable.cpp \
		portable_c.c
OBJECTS =	../objects/config.o \
		../objects/configoptions.o \
		../objects/portable.o \
		../objects/portable_c.o
SRCMOC	=	
OBJMOC	=	
DIST	=	
TARGET	=	../lib/libdoxycfg.a

####### Implicit rules

.SUFFIXES: .cpp .cxx .cc .C .c

.cpp.o:
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<

.cxx.o:
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<

.cc.o:
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<

.C.o:
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<

.c.o:
	$(CC) -c $(CFLAGS) $(INCPATH) -o $@ $<

####### Build rules

all: $(TARGET)

staticlib: $(TARGET)

$(TARGET): $(OBJECTS) $(OBJMOC) 
	-rm -f $(TARGET)
	$(AR) $(TARGET) $(OBJECTS) $(OBJMOC)
	ranlib $(TARGET)

moc: $(SRCMOC)

tmake:
	tmake libdoxycfg.pro

dist:
	$(TAR) libdoxycfg.tar libdoxycfg.pro $(SOURCES) $(HEADERS) $(DIST)
	$(GZIP) libdoxycfg.tar

clean:
	-rm -f $(OBJECTS) $(OBJMOC) $(SRCMOC) $(TARGET)
	-rm -f *~ core

####### Compile

../objects/config.o: config.cpp \
		config.h \
		qtbc.h \
		ftextstream.h \
		version.h \
		portable.h \
		util.h \
		sortdict.h \
		types.h \
		lang_cfg.h \
		configoptions.h
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../objects/config.o config.cpp

../objects/configoptions.o: configoptions.cpp \
		configoptions.h \
		config.h \
		qtbc.h \
		ftextstream.h \
		portable.h
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../objects/configoptions.o configoptions.cpp

../objects/portable.o: portable.cpp \
		portable.h \
		debug.h
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o ../objects/portable.o portable.cpp

../objects/portable_c.o: portable_c.c
	$(CC) -c $(CFLAGS) $(INCPATH) -o ../objects/portable_c.o portable_c.c


LEX     =   /usr/bin/flex
YACC    =   /usr/bin/bison


####################

config.cpp: config.l \
		config.h \
		qtbc.h \
		ftextstream.h \
		version.h \
		portable.h \
		util.h \
		sortdict.h \
		types.h \
		lang_cfg.h \
		configoptions.h
	$(LEX) -PconfigYY -t config.l >config.cpp 

configoptions.cpp: config.xml
	python configgen.py config.xml >configoptions.cpp

