Fruit's git repositories f00f / dynamischer-2 Makefile
dynamischer-2

Tree @dynamischer-2 (Download .tar.gz)

Makefile @dynamischer-2raw · history · blame

CC = gcc-3.4
CFLAGS = -pipe -Wall -Werror -funsigned-char -std=gnu99
#CFLAGS += -g
CFLAGS += -O2 -march=i586 -fomit-frame-pointer
#CFLAGS += -O3 -march-i586 -fomit-frame-pointer -fstrict-aliasing
CFLAGS += -I$(HOME)/include -D_GNU_SOURCE
LDFLAGS += -L$(HOME)/lib -L/usr/local/lib -s
LIBS += -lavl -lpq -lrecode -lcurl -lpthread -lm
INSTALL = /usr/bin/install

prefix = $(HOME)
libdir = $(prefix)/lib
bindir = $(prefix)/bin
languagedir = $(prefix)/language

all: f00f emailf00f jabberf00f libf00f.so stored mkindex

emailmain.o: emailmain.c f00f.h Makefile
	$(CC) $(CFLAGS) `gmime-config --cflags` -c $< -o $@

jabbersys.o: jabbersys.c f00f.h Makefile
	$(CC) $(CFLAGS) -I/usr/include/loudmouth-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -c $< -o $@

jabberinterface.o: jabberinterface.c f00f.h Makefile
	$(CC) $(CFLAGS) -I/usr/include/loudmouth-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -c $< -o $@

%.o: %.c f00f.h Makefile
	$(CC) $(CFLAGS) -c $< -o $@

addword: addword.o string.o error.o pgsql.o bufs.o
	$(CC) $(LDFLAGS) $^ -o $@ $(LIBS)

stored: stored.o string.o error.o server.o user.o chans.o pgsql.o mt19937ar.o bufs.o sys.o interface.o dl.o event.o config.o
	$(CC) $(LDFLAGS) $^ -o $@ $(LIBS)

huhhuh: huhhuh.o string.o error.o pgsql.o
	$(CC) $(LDFLAGS) $^ -o $@ $(LIBS)

mkflex: mkflex.o
	$(CC) $(LDFLAGS) $^ -o $@

mkindex: mkindex.o
	$(CC) $(LDFLAGS) $^ -o $@

libf00f.so: f00f.o larts.o tricks.o words.o games.o calc.o scan.o bereken.o berekenscan.o functies.o spreek.o ctcp.o events.o echt.o recode.o pom.o pos.o curly.o nihongo.o nihongo-table.o utf8.o auth.o tm.o sock.o help.o language.o
	$(CC) $(LDFLAGS) -shared -Wl,-soname,$@ $^ -o $@ $(LIBS)

f00f: main.o string.o error.o server.o user.o chans.o pgsql.o mt19937ar.o bufs.o sys.o interface.o dl.o event.o config.o
	$(CC) $(LDFLAGS) -export-dynamic $^ -o $@ $(LIBS)

emailf00f: emailmain.o string.o error.o server.o user.o chans.o pgsql.o mt19937ar.o bufs.o sys.o emailinterface.o dl.o event.o config.o
	$(CC) $(LDFLAGS) -export-dynamic $^ -o $@ $(LIBS) `gmime-config --libs`

jabberf00f: main.o string.o error.o chans.o pgsql.o mt19937ar.o bufs.o jabbersys.o jabberinterface.o dl.o event.o config.o
	$(CC) $(LDFLAGS) -export-dynamic $^ -o $@ $(LIBS) -lloudmouth-1

libq3modf00f.so: q3modmain.o string.o error.o server.o user.o chans.o pgsql.o mt19937ar.o bufs.o sys.o q3modinterface.o dl.o event.o config.o
	$(CC) $(LDFLAGS) -shared -Wl,-soname,$@ $^ -o $@ $(LIBS)

allatonce:
	$(CC) $(CFLAGS) $(LDFLAGS) -export-dynamic -o f00f $(LIBS) main.c string.c error.c server.c user.c chans.c pgsql.c mt19937ar.c bufs.c sys.c interface.c dl.c event.c config.c
	$(CC) $(CFLAGS) $(LDFLAGS) -nostdlib -shared -Wl,-soname,libf00f.so -o libf00f.so $(LIBS) -lgcc -lc f00f.c larts.c tricks.c words.c games.c calc.c scan.c bereken.c berekenscan.c functies.c spreek.c ctcp.c events.c echt.c recode.c pom.c pos.c curly.c nihongo.c nihongo-table.c utf8.c auth.c tm.c sock.c help.c language.c

libf00f.c: f00f.c larts.c tricks.c words.c games.c functies.c spreek.c ctcp.c events.c echt.c recode.c pom.c pos.c curly.c nihongo.c nihongo-table.c utf8.c auth.c tm.c sock.c help.c language.c
	cat $^ > $@

allinone.c: main.c string.c error.c server.c user.c chans.c pgsql.c mt19937ar.c bufs.c sys.c interface.c dl.c event.c config.c
	cat $^ > $@

allinone: allinone.c libf00f.c calc.c scan.c bereken.c berekenscan.c
	$(CC) $(CFLAGS) $(LDFLAGS) -export-dynamic -o f00f $(LIBS) allinone.c
	$(CC) $(CFLAGS) $(LDFLAGS) -nostdlib -shared -Wl,-soname,libf00f.so -o libf00f.so $(LIBS) -lgcc -lc calc.c scan.c bereken.c berekenscan.c libf00f.c

bla: bla.o calc.o scan.o functies.o
	$(CC) $(LDFLAGS) $^ -o $@ $(LIBS)

berekenbla: berekenbla.o bereken.o berekenscan.o functies.o spreek.o echt.o tm.o string.o error.o server.o user.o chans.o pgsql.o mt19937ar.o bufs.o sys.o interface.o dl.o event.o config.o
	$(CC) $(LDFLAGS) $^ -o $@ $(LIBS)

mail: mail.o bereken.o berekenscan.o functies.o spreek.o echt.o tm.o string.o error.o server.o user.o chans.o pgsql.o mt19937ar.o bufs.o sys.o interface.o dl.o event.o config.o
	$(CC) $(LDFLAGS) $^ -o $@ $(LIBS)

calc.c calc.h: calc.g
	lemon $<
	@touch calc.c calc.h

scan.c: scan.l calc.h
	flex -8 -B -Pcalc -o$@ $<

bereken.c bereken.h: bereken.g
	@rm -f bereken.c bereken.h
	-lemon $<
	@test -e bereken.c -a -e bereken.h

berekenscan.c: bereken.l bereken.h
	flex -8 -B -Pbereken -o$@ $<

$(bindir)/jabberf00f: jabberf00f
	install -v $< $@_
	mv $@_ $@

$(bindir)/emailf00f: emailf00f
	install -v $< $@_
	mv $@_ $@

$(bindir)/f00f: f00f
	install -v $< $@_
	mv $@_ $@

$(libdir)/libf00f.so: libf00f.so
	install -v $< $@_
	mv $@_ $@

install: $(bindir)/f00f $(bindir)/emailf00f $(bindir)/jabberf00f $(libdir)/libf00f.so

clean:
	rm -f *.o f00f libf00f.so addword huhhuh bla berekenbla calc.out bereken.out test stored mkindex

maintainerclean: clean
	rm -f calc.h calc.c scan.c bereken.h bereken.c berekenscan.c

svn-clean:
	svn status --no-ignore | sed -n 's/^[?I] \+//p' | tr '\012' '\0' | xargs -r0 rm -rf

.PHONY: all install clean maintainerclean svn-clean