mirror of
ssh://git.janware.com/srv/git/janware/proj/jw-pkg
synced 2026-01-15 12:03:31 +01:00
116 lines
2.1 KiB
Makefile
116 lines
2.1 KiB
Makefile
# generic utility modules
|
|
# (c) 2001 jannet it services
|
|
# contact@jannet.de
|
|
# $Id$
|
|
|
|
GENERATE_FUNC_TIMERS = $(MODDIR)/YStopWatchThreadList/generate_func_timers.sh
|
|
|
|
all: $(LOCAL_TARGETS) $(ALL)
|
|
|
|
echo_all:
|
|
@echo "$(ALL)"
|
|
|
|
all.done: $(PREREQ_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
|
|
|
|
moc_%.cpp: %.h
|
|
$(MOC) -o $@ $<
|
|
|
|
lib%.so: %.o
|
|
$(CC) $< $(LDFLAGS) -o $@
|
|
|
|
$(TOPDIR)/include:
|
|
mkdir -p $@
|
|
|
|
$(TOPDIR)/include/%.h: $(TOPDIR)/include %.h
|
|
cp $(@F) $@
|
|
|
|
%.o: %.cpp
|
|
$(CPP) $(CPPFLAGS) -c $<
|
|
|
|
%.o: %.c
|
|
$(CC) $(CFLAGS) -c $<
|
|
|
|
timers_%.h: %.h $(GENERATE_FUNC_TIMERS)
|
|
sh $(GENERATE_FUNC_TIMERS) $< $@
|
|
|
|
ifeq ($(USE_PROJECT_LIB),true)
|
|
$(EXE): $(OBJ) $(LIB)
|
|
else
|
|
$(EXE): $(OBJ)
|
|
endif
|
|
$(CC) $(OBJ) $(LDFLAGS) -o $@
|
|
|
|
$(LIBS):
|
|
make -C $(LIBDIR) all
|
|
|
|
$(PREFIX)/lib/%.so: %.so
|
|
$(INSTALL) $< $@
|
|
|
|
$(PREFIX)/bin/$(EXE): $(EXE)
|
|
$(INSTALL) $(EXE) $(PREFIX)/bin/
|
|
|
|
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/$(EXE)
|
|
|
|
installso: all checkroot $(PREFIX)/lib $(INSTALLED_SHOBJS)
|
|
|
|
installsh: all checkroot $(PREFIX)/bin
|
|
$(INSTALL) $(SHSCRIPTS) $(PREFIX)/bin/
|
|
|
|
pckgclean:
|
|
rm -rf *.zip *.tar.gz *.rpm *.deb
|
|
|
|
tmpclean:
|
|
rm -rf *.tmp *.rep
|
|
|
|
objclean:
|
|
rm -rf core .*.o *.o *.a *.so *.so.* $(MOC_CPP)
|
|
|
|
textclean: doneclean
|
|
rm -rf $(TEXTCLEAN) \#*\# .kdbgrc.* .\#*
|
|
|
|
allclean:
|
|
rm -rf $(ALL) $(LOCAL_TARGETS)
|
|
|
|
doneclean:
|
|
rm -rf *.done $(PREREQ_DONE)
|
|
|
|
execlean: allclean objclean textclean
|
|
|
|
distclean: clean objclean textclean tmpclean vcdistclean profclean timerclean
|
|
|
|
localclean: $(LOCAL_CLEAN)
|
|
rm -rf $(CLEAN)
|
|
|
|
libclean:
|
|
rm -rf $(LIB)
|
|
|
|
vcdistclean:
|
|
rm -rf *.plg *.opt *.ncb Debug *.exe dist *.ilk
|
|
|
|
prereqclean:
|
|
for dir in $(PREREQ_DIR); do make -C $$dir clean; done
|
|
|
|
profclean:
|
|
rm -f *.da *.bb *.bbg *.gcov
|
|
|
|
timerclean:
|
|
rm -f timers_*.h
|