summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile105
1 files changed, 38 insertions, 67 deletions
diff --git a/Makefile b/Makefile
index fa49132..e03d509 100644
--- a/Makefile
+++ b/Makefile
@@ -1,77 +1,48 @@
-CMD = ./scripts/html.py
-ALLYAML = $(shell ./scripts/find.py -a)
+HTML = ./scripts/html.py
+FIND = ./scripts/find.py
+ALLYAML = $(shell ${FIND} -a)
FOLDERS = $(subst ./,,$(shell cd ./projects; find -type d))
-DST = $(subst yaml,html,$(subst projects,html,${SRC}))
TEAM = Core IO MM
MEMBER = BSP Geert Jacopo Kaneko Kieran Laurent Magnus Marek Morimoto Niklas Shimoda Simon Ulrich Wolfram
STATUS = New Active Blocked Paused Done Abandoned
-SPF = menu subindex body
-
-all: summary spf files index.html members statuss teams html/bsp.html
-
-summary:
- @for folder in ${FOLDERS}; do\
- mkdir -p ./html/$${folder};\
- make -s DIR=$${folder} ./html/$${folder}/summary.html;\
- done;
-
-html/${DIR}/summary.html: ./projects/${DIR} ${CMD}
- @echo html/${DIR}/summary.html
- ${CMD} summary projects/${DIR} > ./html/${DIR}/summary.html; \
-
-spf:
- @for cmd in ${SPF}; do\
- make -s TGT=$${cmd} html/$${cmd}.html;\
- done;
-
-${SPF:%=html/%.html}: projects/* ${CMD}
- @echo $@
- ${CMD} ${TGT} > $@
-
-index.html: ${CMD}
- @echo $@
- @${CMD} index > $@
-
-files:
- @for file in ${ALLYAML}; do\
- make -s SRC=$${file} file;\
+NOPARAM = menu subindex body index
+
+all:
+ @make -s LISTS="${FOLDERS}" TARGET=summary loop
+ @make -s LISTS="${NOPARAM}" TARGET=noparam loop
+ @make -s LISTS="${ALLYAML}" TARGET=file loop
+ @make -s LISTS="${MEMBER}" TARGET=finds EXP1=member EXP2=-a loop
+ @make -s LISTS="${STATUS}" TARGET=finds EXP1=status EXP2=-s loop
+ @make -s LISTS="${TEAM}" TARGET=finds EXP1=team EXP2=-t loop
+ @make -s bsp
+ @make -s index.html
+
+index.html:
+ @ln html/index.html .
+
+$(dir ${FILE}):
+ @mkdir -p $@
+
+${FILE}: ${HTML_OPTION2} $(dir ${FILE}) ${HTML}
+ echo $@
+ ${HTML} ${HTML_OPTION1} ${HTML_OPTION2} > $@
+loop:
+ for list in ${LISTS}; do\
+ make PARAM=$${list} EXP1=${EXP1} EXP2=${EXP2} ${TARGET};\
done;
+basic:
+ make HTML_OPTION1="${HTML_OPTION1}" HTML_OPTION2="${HTML_OPTION2}" FILE=${FILE} ${FILE}
+summary:
+ make HTML_OPTION1=summary HTML_OPTION2=projects/${PARAM} FILE=html/${PARAM}/summary.html basic
file:
- @make -s SRC=${SRC} DST=${DST} TGT=task ${DST}
-
-members:
- @for mem in ${MEMBER}; do\
- make -s MEM=$${mem} member;\
- done;
-
-member:
- @make -s SRC="$(shell ./scripts/find.py -a ${MEM})" DST=./html/${MEM}.html TGT="member ${MEM}" ./html/${MEM}.html
-
-statuss:
- @for status in ${STATUS}; do\
- make -s STA=$${status} status;\
- done;
-
-status:
- @make -s SRC="$(shell ./scripts/find.py -s ${STA})" DST=./html/${STA}.html TGT="status ${STA}" ./html/${STA}.html
-
-teams:
- @for team in ${TEAM}; do\
- make -s TM=$${team} team;\
- done;
-
-team:
- @make -s SRC="$(shell ./scripts/find.py -t ${TM})" DST=./html/${TM}.html TGT="team ${TM}" ./html/${TM}.html
-
-${DST}: ${SRC} ${CMD}
- @echo "${DST}"
- ${CMD} ${TGT} ${SRC} > $@
-
-html/bsp.html: ${ALLYAML} ${CMD}
- @echo $@
- @${CMD} bsp ${ALLYAML} > $@
-
+ make HTML_OPTION1=task HTML_OPTION2=${PARAM} FILE=$(subst yaml,html,$(subst projects,html,${PARAM})) basic
+noparam:
+ make HTML_OPTION1=${PARAM} FILE=html/${PARAM}.html basic
+bsp:
+ make HTML_OPTION1=bsp HTML_OPTION2="${ALLYAML}" FILE=html/bsp.html basic
+finds:
+ make HTML_OPTION1="${EXP1} ${PARAM}" HTML_OPTION2="$(shell ${FIND} ${EXP2} ${PARAM})" FILE=html/${PARAM}.html basic
clean:
@rm -fr html
@rm -fr *.html