make: Introduced plasticd project compatibility

This commit is contained in:
Jan Lindemann 2001-07-27 22:02:40 +00:00 committed by Jan Lindemann
commit 61fe4a73d5
9 changed files with 45 additions and 31 deletions

View file

@ -3,6 +3,11 @@
# contact@jannet.de
# $Id$
# doesn't work :-(
#ifndef $(PROJECT)
# PROJECT := yannet
#endif
VERSION = $(shell cat $(TOPDIR)/VERSION)
WINVERSION = $(shell cat $(TOPDIR)/VERSION | sed -e "s/\./_/g")
LOCAL_VERSION = $(shell cat VERSION)
@ -12,14 +17,16 @@ DIST_WINVERSION = $(shell echo $(WINVERSION) | sed -e "s/-dev//")
LOCAL_DIST_VERSION = $(shell echo $(LOCAL_VERSION) | sed -e "s/-dev//")
LOCAL_DIST_WINVERSION = $(shell echo $(LOCAL_WINVERSION) | sed -e "s/-dev//")
PROJECT = mod
MOD = mod
LIBNAME = $(MOD)
#ifndef $(TOPDIR)
# TOPDIR := $(MODDIR)
#endif
LIBNAME = $(PROJECT)
CFILES = $(wildcard *.c)
CPPFILES = $(wildcard *.cc *.cpp)
CALLSRC = $(CFILES) $(CPPFILES)
OBJ = $(patsubst %.cpp,%.o,$(patsubst %.cc,%.o,$(patsubst %.c,%.o,$(CALLSRC))))
SHOBJS = $(patsubst %.cpp,%.o,$(patsubst %.cc,lib%.so,$(patsubst %.c,lib%.so,$(CALLSRC)))
SHOBJS = $(patsubst %.cpp,%.o,$(patsubst %.cc,lib%.so,$(patsubst %.c,lib%.so,$(CALLSRC))))
SHSCRIPTS = $(patsubst %.sh.tmpl,%.sh,$(wildcard *.sh.tmpl))
SCRIPTS = $(patsubst %.tmpl,%,$(wildcard *.tmpl))
INST_HDRS = $(patsubst %.h,$(TOPDIR)/include/%.h,$(wildcard *.h))
@ -44,11 +51,11 @@ ALL_CPP = $(LOCAL_CPP) $(PREREQ_CPP)
ALL_CSRC = $(LOCAL_CSRC) $(PREREQ_CSRC)
TEXTCLEAN = $(wildcard *~ .*~ .*.swp \#*\#)
INCLUDE = -I$(TOPDIR)/include
LIBDIR = $(TOPDIR)/lib
INCLUDE = -I. -I$(TOPDIR)/include -I$(MODDIR)/include $(PROJECT_INCLUDE)
LIBDIR = $(MODDIR)/lib
LIB = $(LIBDIR)/lib$(LIBNAME).a
MEMBERS = $(LIB)($(OBJ))
PREFIX = ../
#PREFIX = ../# CAUTION: This breaks the installation in the project
#MEMWATCH = -DMEMWATCH -DMW_STDIO
#YAMD = yamd-
EFENCE = -lefence
@ -57,8 +64,8 @@ CFLAGS = -Wall -D_DEBUG_ $(MEMWATCH) -g $(INCLUDE) $(LOCAL_CFLAGS)
CPPFLAGS = -Wall -D_DEBUG_ $(MEMWATCH) -g $(INCLUDE) $(LOCAL_CPPFLAGS)
LDFFTW = -lrfftw -lfftw -lm
#LDAUDIO = -laudiofile
LDFLAGS = -L$(LIBDIR) $(EFENCE) -l$(LIBNAME) -lg++
LDREST = -ldl $(LDAUDIO) $(LDFFTW) $(LOCAL_LDFLAGS)
LDFLAGS = -L$(LIBDIR) $(EFENCE) -l$(LIBNAME) -lg++ $(PROJECT_LDFLAGS) $(LOCAL_LDFLAGS)
LDREST = -ldl $(LDAUDIO) $(LDFFTW)
CC = $(YAMD)gcc
CPP = $(YAMD)g++
RM = rm

View file

@ -3,7 +3,7 @@
# contact@jannet.de
# $Id$
include $(TOPDIR)/make/defs.mk
include $(MODDIR)/make/defs.mk
all:
$(make_subdirs)

View file

@ -4,7 +4,7 @@
# $Id$
EXE = $(ALL)
include $(TOPDIR)/make/defs.mk
include $(TOPDIR)/make/rules.mk
include $(MODDIR)/make/defs.mk
include $(MODDIR)/make/rules.mk
clean: execlean localclean
install: $(ALL) installexe

View file

@ -3,7 +3,7 @@
# contact@jannet.de
# $Id$
include $(TOPDIR)/make/defs.mk
include $(TOPDIR)/make/rules.mk
clean: objclean localclean
include $(MODDIR)/make/defs.mk
include $(MODDIR)/make/rules.mk
clean: objclean localclean doneclean
install: $(ALL)

View file

@ -23,8 +23,8 @@ lib%.so: %.o
$(TOPDIR)/include:
mkdir -p $@
$(TOPDIR)/include/%.h:%.h $(TOPDIR)/include
cp $< $@
$(TOPDIR)/include/%.h: $(TOPDIR)/include %.h
cp $(@F) $@
%.o: %.cpp
$(CPP) $(CPPFLAGS) -c $<
@ -38,16 +38,23 @@ $(EXE): $(OBJ) $(LIB)
$(LIBS):
make -C $(LIBDIR) all
checkroot:
test `whoami` = root
$(PREFIX) $(PREFIX)/%:
mkdir -p $@
installexe: $(ALL) checkroot
checkroot:
@if [ "$(CHECK_ROOT)" = true -o "$(CHECK_ROOT)" = TRUE ] ; then \
echo "Error: You can only do this if either" ;\
echo " a) you are user \"root\"" ;\
echo " b) the Makefile variable CHECK_ROOT does not contain \"true\" as value." ;\
fi
installexe: $(ALL) checkroot $(PREFIX)/bin
$(INSTALL) $(EXE) $(PREFIX)/bin/
installso: $(ALL) checkroot
installso: $(ALL) checkroot $(PREFIX)/lib
$(INSTALL) $(SHOBJS) $(PREFIX)/lib/
installsh: $(ALL)
installsh: $(ALL) checkroot $(PREFIX)/bin
$(INSTALL) $(SHSCRIPTS) $(PREFIX)/bin/
pckgclean:

View file

@ -4,7 +4,7 @@
# $Id$
ALL = $(SCRIPTS)
include $(TOPDIR)/make/defs.mk
include $(TOPDIR)/make/rules.mk
clean:allclean localclean
include $(MODDIR)/make/defs.mk
include $(MODDIR)/make/rules.mk
clean:allclean localclean doneclean
#install:installexe

View file

@ -3,9 +3,9 @@
# contact@jannet.de
# $Id$
include $(TOPDIR)/make/defs.mk
include $(MODDIR)/make/defs.mk
ALL = $(SHOBJS)
LDFLAGS := $(LDFLAGS) -shared
include $(TOPDIR)/make/rules.mk
include $(MODDIR)/make/rules.mk
clean: objclean textclean localclean
install: $(ALL) installso

View file

@ -3,7 +3,7 @@
# contact@jannet.de
# $Id$
include $(TOPDIR)/make/defs.mk
include $(TOPDIR)/make/rules.mk
include $(MODDIR)/make/defs.mk
include $(MODDIR)/make/rules.mk
clean: textclean localclean
install: # nothing to be done

View file

@ -3,8 +3,8 @@
# contact@jannet.de
# $Id$
include $(TOPDIR)/make/defs.mk
include $(MODDIR)/make/defs.mk
ALL = $(LIBDIR) $(PREREQ_DONE) $(INST_HDRS) $(MEMBERS)
include $(TOPDIR)/make/rules.mk
include $(MODDIR)/make/rules.mk
clean: objclean textclean localclean
install: $(ALL)