Files
befpc/bepascal/source/tools/stubgen.so/cpp/Makefile
2003-09-21 22:46:55 +00:00

91 lines
2.7 KiB
Makefile

#
# FILE: Makefile
# AUTH: Michael John Radwin <mjr@acm.org>
#
# DESC: stubgen makefile
# modified from O'Reilly's lex & yacc, Second Edition
#
# DATE: Wed Aug 14 18:11:18 US/Eastern 1996
# $Id: Makefile,v 1.1 2003-09-21 22:46:55 ocoursiere Exp $
#
# Copyright (c) 1996-1998 Michael John Radwin
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# --- User-definable stuff. Edit if you know what you're doing. --- #
# Choose your compiler. I like Sun's cc compiler because I use dbx for
# debugging, but you might want gcc.
CC = gcc -Wall
#CC = cc
# You'll need to use a lexer that supports the exclusive start state
# mechanism (the '%x' directive). GNU Flex does this just fine.
LEX = flex
#LEX = lex
# You should be able to use any of the 3 common flavors of yacc:
# AT&T Yacc, Berkeley Yacc, or GNU Bison. We've tested with bison.
#YACC = yacc -d
YACC = bison -y -d
#YACC = byacc -d
# etags is used purely for development purposes.
ETAGS = etags
# for Sun cc, we don't like incremental linking.
#LFLAGS = -xildoff
# for a lex other than GNU Flex, we must link with the -ll library.
#LFLAGS = -ll
# Debug settings are on. Having the SGDEBUG macro defined will make
# generate 'stubgen.log' files on each execution of stubgen, which are
# useful for debugging, but probably annoying.
CFLAGS = -g -DSGDEBUG
#CFLAGS = -O
# --- You probably shouldn't edit anything below this line. --- #
OFILES = y.tab.o lex.yy.o table.o util.o pathname.o main.o getopt.o
SRCFILES = lexer.l parser.y table.[ch] util.[ch] pathname.[ch] main.c
all: stubgen
stubgen: $(OFILES)
$(CC) $(CFLAGS) -o $@ $(OFILES) $(LFLAGS) $(LIBS)
chmod 0755 $@
y.output: parser.y
$(YACC) -v parser.y
lex.yy.c: lexer.l y.tab.h
$(LEX) lexer.l
y.tab.h y.tab.c: parser.y
$(YACC) parser.y
tags: TAGS
TAGS: $(SRCFILES)
$(ETAGS) $(SRCFILES)
clean:
rm -f $(OFILES) TAGS
rm -f y.tab.h y.tab.c lex.yy.c y.output stubgen.log
rm -f win32/stubgen.plg win32/stubgen.ncb win32/stubgen.opt
rm -f win32/stubgen.pdb win32/stubgen.ilk
rm -f win32/stubgen.mak win32/stubgen.bsc win32/stubgen.log
rm -rf win32/Debug win32/debug