Commit b57bcbc9 authored by thomas.forbriger's avatar thomas.forbriger Committed by thomas.forbriger
Browse files

migrated to new SVN scheme

This is a legacy commit from before 2015-03-01.
It may be incomplete as well as inconsistent.
See COPYING.legacy and README.history for details.


SVN Path:     http://gpitrsvn.gpi.uni-karlsruhe.de/repos/TFSoftware/trunk
SVN Revision: 3397
SVN UUID:     67feda4a-a26e-11df-9d6e-31afc202ad0c
parent 67568d9b
......@@ -28,23 +28,24 @@
#
# ============================================================================
#
# environment variables
# ---------------------
#
# You will like to set the following environment variables:
#
# LOCINCLUDEDIR Defines the path where header files will be copied for
# usage in your own projects. You will pass this path to
# the precompiler with the -I option.
# LOCLIBDIR Defines the path where the binary library will be
# placed.
# WWWBASEDIR Defines the path to your personal homepage. That's the
# place where doxygen output will be written too (see
# below).
#
# You will find the installed library header files in $(LOCINCLUDEDIR)/aff
all: install-include libgremlin1xx.a doxydoc
# check mandatory environment variable settings
# ---------------------------------------------
CHECKVAR=$(if $($(1)),,$(error ERROR: missing variable $(1)))
CHECKVARS=$(foreach var,$(1),$(call CHECKVAR,$(var)))
$(call CHECKVARS,LOCINCLUDEDIR LOCLIBDIR LOCBINDIR)
$(call CHECKVARS,TF_BROWSER TF_WWWBASEDIR)
# compiler and preprocessor flags
FLAGS=
CXXFLAGS=-Wall -pedantic $(FLAGS) -O3
CXXFLAGS=-Wall $(FLAGS) -O3
LDFLAGS=-L$(LOCLIBDIR)
CPPFLAGS=-I$(LOCINCLUDEDIR) $(FLAGS)
# files
# -----
......@@ -79,22 +80,11 @@ EMPTYPRINT=1
#EMPTYPRINT=0
# define this to be cat in case you do not have remcmmnt available
REMCMMNT=remcmmnt
#REMCMMNT=cat
ifndef TF_REMCMMNT
TF_REMCMMNT=cat
endif
# compiler and preprocessor flags
FLAGS=
CXXFLAGS=-Wall -pedantic $(FLAGS) -O3
CXXFLAGS=-Wall $(FLAGS) -O3
LDFLAGS=-L$(LOCLIBDIR)
CPPFLAGS=-I$(LOCINCLUDEDIR) $(FLAGS)
# the following definition is needed to make the dependency command pass
# binarray.cc
TMPPARDEF=-D BIN_TYPE -D BIN_N -D BIN_REPR -D BIN_SUBS
# targets
# -------
#----------------------------------------------------------------------
# files which are to be edited
flist: Makefile doxyfull.cfg $(README) $(HEADERS) $(SRC)
......@@ -114,7 +104,6 @@ clean: ;
-find . -name \*.d | xargs --no-run-if-empty /bin/rm -v
-find . -name \*.h.strip | xargs --no-run-if-empty /bin/rm -v
-/bin/rm -vf flist *.o install-include libgremlin1xx.a *.xxx junk*
cd tests; $(MAKE) clean
#======================================================================
# library part
......@@ -163,7 +152,7 @@ libgremlin1xx.a: install-include $(LIBOBS)
awk 'BEGIN {hot=1;} /^ \*\// { if (hot) { hot=2; print; next;} }\
/^#/ { hot=0; } \
{ if (hot==2) { print ""; } else if (hot) { print; } }' $< > $@
$(REMCMMNT) $< | awk 'BEGIN {hot=0;} \
$(TF_REMCMMNT) $< | awk 'BEGIN {hot=0;} \
/^ *$$/ { if ((hot) && ($(EMPTYPRINT))) { print; } next; } \
/^#/ { hot=1; } { if (hot) print; }' >> $@
......@@ -173,12 +162,12 @@ libgremlin1xx.a: install-include $(LIBOBS)
$(INCINSTALLPATH)/%.h: %.h.strip
mkdir -vp $(dir $@)
-rm -fv $@
ln -svf $$(pwd)/$< $@
/bin/cp -vpd $$(pwd)/$< $@
# install header files
.PHONY: install-include
install-include: $(INSTHEADER)
echo $^ | tr ' ' '\n'
touch $@
#======================================================================
# documentation part
......@@ -191,61 +180,37 @@ install-include: $(INSTHEADER)
# make doxydoc creates doxygen documentation in the DOXYWWWPATH
# make doxyview creates doxygen documentation and launches netscape to
# browse in the documentation
# make doxyfullconf edit the doxygen configuration file
#
# The targets are prepared for two documentation configurations. There is a
# "full" configuration defined in doxyfull.cfg and a "brief" configuration in
# doxybrief.cfg. However doxygen itself does not really support to distinguish
# between brief and full just due to the config-file. So just use the doxyfull
# target.
# make doxyconf edit the doxygen configuration file
#
# If you launch "make doxyfull" the documentation will be written to
# If you launch "make doxydoc" the documentation will be written to
# DOXYWWWPATH (see below). This is meant to export the documentation through
# your homepage. The doxyfull directory is just a symbolic link to this
# directory.
#
# documentation part
# ------------------
DOXYWWWPATH=$(WWWBASEDIR)/libgremlin1xx
.PHONY: doxyclean doxyview doxybriefview doxyfullconf doxybriefconf
doxyclean: ;/bin/rm -rfv docfull/* docbrief/* docfull
$(call CHECKVARS,TF_WWWBASEDIR TF_BROWSER)
DOXYSRC=$(README) $(HEADERS) $(SRC)
DOXYWWWPATH=$(TF_WWWBASEDIR)/libgremlin1xx
doc%/html/index.html: doxy%.cfg doxyclean $(DOXYSRC)
mkdir -p $(DOXYWWWPATH)
/bin/rm -rfv $(patsubst doxy%.cfg,doc%,$<)/*
/bin/rm -rfv $(patsubst doxy%.cfg,doc%,$<)
ln -sfv $(DOXYWWWPATH) $(patsubst doxy%.cfg,doc%,$<)
doxygen $<
.PHONY: doxyclean doxyview doxydoc doxyconf
doxybriefconf doxyfullconf: doxy%conf:
doxywizard $(patsubst doxy%conf,doxy%.cfg,$@)
doxyclean: ;/bin/rm -rfv $(DOXYWWWPATH)
doxyfull doxybrief: doxy%: doc%/html/index.html
doxydoc: doxyclean doxyfull
DOXYSRC=$(README) $(HEADERS) $(SRC) \
doxyfullview doxybriefview: doxy%view: doxy%
$(TF_BROWSER) doc$(patsubst doxy%view,%,$@)/html/index.html &
doxyview: doxyfullview
# create doxygen intermediate configuration
PWD=$(shell env pwd)
doxydoc.xxx: doxydoc.cfg
sed 's,<OUTPUTDIRECTORY>,$(DOXYWWWPATH),g;s,<STRIPFROMPATH>,$(PWD),g' \
$< > $@
#======================================================================
# delegate test targets
# ---------------------
tests/%.P:
cd tests; echo "#############################"; $(MAKE) $(notdir $@)
tests/%: tests/%.cc install-include libaff.a
cd tests; echo "#############################"; $(MAKE) $(notdir $@)
$(DOXYWWWPATH)/html/index.html: doxydoc.xxx $(DOXYSRC)
mkdir -vp $(DOXYWWWPATH)
doxygen $<
tests/bin%: tests/bin%.cc install-include libaff.a
cd tests; echo "#############################"; $(MAKE) $(notdir $@)
doxydoc: $(DOXYWWWPATH)/html/index.html
tests/%.run: tests/%
echo "#############################"
$< $(ARG)
/bin/rm -fv $< $<.o
doxyview: $(DOXYWWWPATH)/html/index.html
$(TF_BROWSER) file:$< &
# ----- END OF Makefile -----
......@@ -4,7 +4,7 @@
#---------------------------------------------------------------------------
PROJECT_NAME = "GREMLIN1 C++ interface"
PROJECT_NUMBER =
OUTPUT_DIRECTORY = docfull
OUTPUT_DIRECTORY = <OUTPUTDIRECTORY>
OUTPUT_LANGUAGE = English
EXTRACT_ALL = YES
EXTRACT_PRIVATE = YES
......@@ -15,8 +15,7 @@ BRIEF_MEMBER_DESC = YES
REPEAT_BRIEF = YES
ALWAYS_DETAILED_SEC = YES
FULL_PATH_NAMES = YES
STRIP_FROM_PATH = /home/theo1/forbrig/work/ \
/home/thof/work/
STRIP_FROM_PATH = <STRIPFROMPATH>
INTERNAL_DOCS = YES
CLASS_DIAGRAMS = YES
SOURCE_BROWSER = YES
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment