Browse Source

Compose: make config hat nun eine definierte Reihenfolge für Module, die

nur am Anfang oder nur am Ende eingebunden werden dürfen.
feature/programmer
hans-christoph 11 years ago
parent
commit
52e89b6976
2 changed files with 25 additions and 12 deletions
  1. +15
    -3
      Compose/Makefile
  2. +10
    -9
      Compose/configure.sh

+ 15
- 3
Compose/Makefile View File

@@ -6,8 +6,21 @@
#
SRC = ./src
PSEUDO_MODULES_FILES = $(SRC)/enUS.module
MODULES_FILES = $(sort $(PSEUDO_MODULES_FILES) $(wildcard $(SRC)/*.module))
MODULES = $(notdir $(basename $(MODULES_FILES)))
MODULES_FILES = $(PSEUDO_MODULES_FILES) $(wildcard $(SRC)/*.module)

# Gewünschte Build-Reihenfolge der Module. Die in den Listen
# genannten Dateien werden (falls Module dieses Namens existieren) in
# der vorgegebenen Reihenfolge zwingend am Anfang oder am Ende von
# XCompose eingefügt. Alle nicht erwähnten Module kommen in
# alphabetischer Reihenfolge in die Mitte.
#
MODULE_ORDER_HEAD = head-example enUS base
MODULE_ORDER_TAIL = user tail-example

M := $(sort $(notdir $(basename $(MODULES_FILES))))
MODULES := $(foreach i, $(MODULE_ORDER_HEAD), $(findstring $(i),$(M)))
MODULES += $(filter-out $(MODULE_ORDER_HEAD) $(MODULE_ORDER_TAIL), $(M))
MODULES += $(foreach i, $(MODULE_ORDER_TAIL), $(findstring $(i),$(M)))

# Liste von Demofiles, werden bei 'make all' erzeugt.
# Im Grunde ist dies seit 'make config' überflüssig.
@@ -41,7 +54,6 @@ all : XCompose $(DEMOFILES)
# 'make config' führt interaktive Abfrage der Konfiguration durch
# und legt Ergebnis in .config ab


config : $(PSEUDO_MODULES_FILES)
@if [ ! -f .config ] ; then \
echo "USER_XCOMPOSE = $(USER_XCOMPOSE)" > .config ; fi


+ 10
- 9
Compose/configure.sh View File

@@ -28,21 +28,22 @@ echo Verfügbare Module für XCompose:
for i in ${MODULES}; do
sed -n "
/^#configinfo[ \t]*/{
s//$i /
s///
b print
}

\${
s/.*/$i - ohne Beschreibung/
b print
}

b
\$! b

s/.*/(ohne Beschreibung)/
: print
s/^\(.\{10\}\) *\(.\{1,69\}\).*/\1\2/ # 80-Zeichen-Terminal-Grenze

x
s/^/$i /
G
s/^\(.\{9\}\).*\n\(.\{1,69\}\).*/\1 \2/ # 80-Zeichen-Terminal-Grenze
p
q" ${MODPATH}/${i}${MODSUFFIX}
q
" ${MODPATH}/${i}${MODSUFFIX}

if grep -q $i $CONFFILE; then
selprompt="${selprompt} ${i}+ ";


Loading…
Cancel
Save