Added support for building with OBJDIR
This commit is contained in:
parent
f14a4898c8
commit
3639ea9300
18
Makefile
18
Makefile
|
@ -3,7 +3,8 @@ VERSION = 0.0.0
|
|||
SUBDIRS = data src
|
||||
RM = rm -f
|
||||
LN = ln -f
|
||||
TAR = tar -czvf
|
||||
TAR = tar
|
||||
MKDIR = mkdir -m 0755 -p
|
||||
|
||||
|
||||
all: subdirs
|
||||
|
@ -20,7 +21,7 @@ distclean:
|
|||
dist:
|
||||
$(RM) -r -- $(PACKAGE)-$(VERSION)
|
||||
$(LN) -s -- . $(PACKAGE)-$(VERSION)
|
||||
@$(TAR) $(PACKAGE)-$(VERSION).tar.gz -- \
|
||||
@$(TAR) -czvf $(PACKAGE)-$(VERSION).tar.gz -- \
|
||||
$(PACKAGE)-$(VERSION)/data/Makefile \
|
||||
$(PACKAGE)-$(VERSION)/data/Splasher.interface \
|
||||
$(PACKAGE)-$(VERSION)/data/project.conf \
|
||||
|
@ -36,10 +37,21 @@ dist:
|
|||
$(PACKAGE)-$(VERSION)/project.conf
|
||||
$(RM) -- $(PACKAGE)-$(VERSION)
|
||||
|
||||
distcheck: dist
|
||||
$(TAR) -xzvf $(PACKAGE)-$(VERSION).tar.gz
|
||||
$(MKDIR) -- $(PACKAGE)-$(VERSION)/objdir
|
||||
$(MKDIR) -- $(PACKAGE)-$(VERSION)/destdir
|
||||
(cd "$(PACKAGE)-$(VERSION)" && $(MAKE) OBJDIR="$$PWD/objdir/")
|
||||
(cd "$(PACKAGE)-$(VERSION)" && $(MAKE) OBJDIR="$$PWD/objdir/" DESTDIR="$$PWD/destdir" install)
|
||||
(cd "$(PACKAGE)-$(VERSION)" && $(MAKE) OBJDIR="$$PWD/objdir/" DESTDIR="$$PWD/destdir" uninstall)
|
||||
(cd "$(PACKAGE)-$(VERSION)" && $(MAKE) OBJDIR="$$PWD/objdir/" distclean)
|
||||
(cd "$(PACKAGE)-$(VERSION)" && $(MAKE) dist)
|
||||
$(RM) -r -- $(PACKAGE)-$(VERSION)
|
||||
|
||||
install:
|
||||
@for i in $(SUBDIRS); do (cd "$$i" && $(MAKE) install) || exit; done
|
||||
|
||||
uninstall:
|
||||
@for i in $(SUBDIRS); do (cd "$$i" && $(MAKE) uninstall) || exit; done
|
||||
|
||||
.PHONY: all subdirs clean distclean dist install uninstall
|
||||
.PHONY: all subdirs clean distclean dist distcheck install uninstall
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
OBJDIR =
|
||||
PREFIX = /usr/local
|
||||
DESTDIR =
|
||||
MKDIR = mkdir -m 0755 -p
|
||||
|
|
23
src/Makefile
23
src/Makefile
|
@ -1,4 +1,5 @@
|
|||
TARGETS = ../data/Splasher.h Splasher
|
||||
TARGETS = $(OBJDIR)../data/Splasher.h $(OBJDIR)Splasher
|
||||
OBJDIR =
|
||||
PREFIX = /usr/local
|
||||
DESTDIR =
|
||||
BINDIR = $(PREFIX)/bin
|
||||
|
@ -18,21 +19,21 @@ INSTALL = install
|
|||
|
||||
all: $(TARGETS)
|
||||
|
||||
../data/Splasher.h: ../data/Splasher.interface
|
||||
./appbroker.sh -P "$(PREFIX)" -- "../data/Splasher.h"
|
||||
$(OBJDIR)../data/Splasher.h: ../data/Splasher.interface
|
||||
./appbroker.sh -P "$(PREFIX)" -- "$(OBJDIR)../data/Splasher.h"
|
||||
|
||||
Splasher_OBJS = splasher.o main.o
|
||||
Splasher_OBJS = $(OBJDIR)splasher.o $(OBJDIR)main.o
|
||||
Splasher_CFLAGS = $(CPPFLAGSF) $(CPPFLAGS) $(CFLAGSF) $(CFLAGS)
|
||||
Splasher_LDFLAGS = $(LDFLAGSF) $(LDFLAGS)
|
||||
|
||||
Splasher: $(Splasher_OBJS)
|
||||
$(CC) -o Splasher $(Splasher_OBJS) $(Splasher_LDFLAGS)
|
||||
$(OBJDIR)Splasher: $(Splasher_OBJS)
|
||||
$(CC) -o $(OBJDIR)Splasher $(Splasher_OBJS) $(Splasher_LDFLAGS)
|
||||
|
||||
splasher.o: splasher.c ../data/Splasher.h
|
||||
$(CC) $(Splasher_CFLAGS) -c splasher.c
|
||||
$(OBJDIR)splasher.o: splasher.c ../data/Splasher.h
|
||||
$(CC) $(Splasher_CFLAGS) -o $(OBJDIR)splasher.o -c splasher.c
|
||||
|
||||
main.o: main.c
|
||||
$(CC) $(Splasher_CFLAGS) -c main.c
|
||||
$(OBJDIR)main.o: main.c
|
||||
$(CC) $(Splasher_CFLAGS) -o $(OBJDIR)main.o -c main.c
|
||||
|
||||
clean:
|
||||
$(RM) -- $(../data/Splasher.h_OBJS) $(Splasher_OBJS)
|
||||
|
@ -43,7 +44,7 @@ distclean: clean
|
|||
|
||||
install: $(TARGETS)
|
||||
$(MKDIR) $(DESTDIR)$(BINDIR)
|
||||
$(INSTALL) -m 0755 Splasher $(DESTDIR)$(BINDIR)/Splasher
|
||||
$(INSTALL) -m 0755 $(OBJDIR)Splasher $(DESTDIR)$(BINDIR)/Splasher
|
||||
|
||||
uninstall:
|
||||
$(RM) -- $(DESTDIR)$(BINDIR)/Splasher
|
||||
|
|
Loading…
Reference in New Issue
Block a user