jw-pkg/make/rules.mk

79 lines
1.1 KiB
Makefile
Raw Normal View History

# generic utility modules
# (c) 2001 jannet it services
# contact@jannet.de
# $Id$
all.done: $(ALL)
touch $@
%.done:
make -C $(shell dirname $@) `basename $@`
$(LIBDIR):
mkdir -p $@
#lib$(MOD)(%.o).a: %.c $(LIBDIR)
# $(CC) $(CFLAGS) -c $< -o $*.o
# $(AR) r $@ $*.o
# $(RM) $*.o
lib%.so: %.o
$(CC) $< $(LDFLAGS) -o $@
$(TOPDIR)/include:
mkdir -p $@
$(TOPDIR)/include/%.h:%.h $(TOPDIR)/include
cp $< $@
%.o: %.c %.h
$(CC) $(CFLAGS) -c $<
%.o: %.cc %h
$(CPP) $(CPPFLAGS) -c $<
$(EXE): $(OBJ) $(LIB)
$(CC) $(OBJ) $(LDFLAGS) -o $@
$(LIBS):
make -C $(LIBDIR) all
checkroot:
test `whoami` = root
installexe: $(ALL) checkroot
$(INSTALL) $(EXE) $(PREFIX)/bin/
installso: $(ALL) checkroot
$(INSTALL) $(SHOBJS) $(PREFIX)/lib/
installsh: $(ALL)
$(INSTALL) $(SHSCRIPTS) $(PREFIX)/bin/
tmpclean:
rm -rf *.tmp *.rep
objclean:
rm -rf core .*.o *.o *.a *.so
textclean: doneclean
rm -rf $(TEXTCLEAN)
allclean:
rm -rf $(ALL)
doneclean:
rm -rf *.done
execlean: allclean objclean textclean
distclean: clean objclean textclean tmpclean vcdistclean
localclean:
rm -rf $(CLEAN)
libclean:
rm -rf $(LIB)
vcdistclean:
rm -rf *.plg *.opt *.ncb Debug