der splitter branch wird zu trunk
This commit is contained in:
parent
c66816957f
commit
c4359c0bd2
96 changed files with 3148 additions and 4500 deletions
128
Makefile
128
Makefile
|
@ -1,42 +1,33 @@
|
|||
########## Variablendefinitionen ###########
|
||||
|
||||
# Revision-Variablen
|
||||
# fuer Eigen-Entwickler: setze die folgenden Variablen per Hand, falls du nicht das
|
||||
# allgemeine Subversion-Repository des Projekts verwendest
|
||||
# Revisions-Variablen
|
||||
REVISIONS_NR := $(shell svn -R info| grep ^Revision| cut -f2 -d " " | sort | tail -1)
|
||||
REVISIONS_DATUM = $(shell svn log -r $(REVISIONS_NR) -q | grep -v "^---" | cut -d "|" -f 3)
|
||||
REPOSITORY_URL = https://svn.systemausfall.org/svn/cryptocd/trunk
|
||||
REVISIONS_SUFFIX = _r$(REVISIONS_NR)
|
||||
|
||||
# Verzeichnisse
|
||||
ROOT_DIR := $(shell pwd)
|
||||
|
||||
# hierhin sollten lokale Verzeichnisse verlinkt werden
|
||||
EXT_DIR = $(ROOT_DIR)/extern
|
||||
EXT_DIR_PROGS = $(EXT_DIR)/programme
|
||||
EXT_DIR_CHAOSRADIO = $(EXT_DIR)/chaosradio
|
||||
|
||||
# Ablage der erstellten zip/iso-Dateien
|
||||
EXPORT_DIR = $(ROOT_DIR)/export
|
||||
# so beginnt das export-Verzeichnis
|
||||
EXPORT_PREFIX := cryptocd
|
||||
# wird an das export-Verzeichnis angehaengt - nur fuer "release" und "release_all" wichtig
|
||||
# wird an das export-Verzeichnis und die Archiv/iso-Dateien angehaengt
|
||||
EXPORT_FILE_SUFFIX := undefiniert
|
||||
EXPORT_FILE = $(EXPORT_DIR)/$(EXPORT_PREFIX)$(REVISIONS_SUFFIX)$(EXPORT_FILE_SUFFIX)
|
||||
|
||||
# Zwischenlagerung
|
||||
TMP_ROOT = $(ROOT_DIR)/tmp
|
||||
CCD_BUILD_DIR = $(TMP_ROOT)/$(EXPORT_PREFIX)$(REVISIONS_SUFFIX)
|
||||
CCD_BUILD_DIR = $(TMP_ROOT)/$(EXPORT_PREFIX)$(REVISIONS_SUFFIX)$(EXPORT_FILE_SUFFIX)
|
||||
CHAOSRADIO_DIR = $(CCD_BUILD_DIR)/ausLese/chaosradio
|
||||
PROGRAMM_DIR = $(CCD_BUILD_DIR)/programme
|
||||
|
||||
# Verzeichnisse, die vorhanden sein muessen
|
||||
ERROR_DIRS = $(TMP_ROOT) $(EXT_DIR) $(EXPORT_DIR) $(EXT_DIR_PROGS)
|
||||
# Verzeichnisse, die vorhanden sein sollten
|
||||
WARNING_DIRS = $(EXT_DIR_CHAOSRADIO)
|
||||
# Verzeichnisse, die notfalls erstellt werden muessen
|
||||
CREATE_DIRS = $(TMP_ROOT) $(EXPORT_DIR)
|
||||
|
||||
# Aktionen
|
||||
ERZEUGE_TAR = tar cjhf $(EXPORT_FILE).tar.bz2 -C $(dir $(CCD_BUILD_DIR)) $(notdir $(CCD_BUILD_DIR))
|
||||
ERZEUGE_ZIP = cd $(dir $(CCD_BUILD_DIR)); zip -9qr $(EXPORT_FILE).zip $(notdir $(CCD_BUILD_DIR))
|
||||
ERZEUGE_ISO = mkisofs $(ISO_OPTS) -o $(EXPORT_FILE).iso $(CCD_BUILD_DIR) 2>&1 | $(EINRUECKEN)
|
||||
ERZEUGE_ISO = mkisofs -quiet $(ISO_OPTS) -o $(EXPORT_FILE).iso $(CCD_BUILD_DIR) 2>&1 | $(EINRUECKEN)
|
||||
|
||||
# Sonstiges
|
||||
# Optionen fuer mkisofs
|
||||
|
@ -46,15 +37,12 @@ EINRUECKEN = sed 's/^/\t/'
|
|||
# Voreinstellung - wird nur fuer "make website" ueberschrieben
|
||||
LINE_STATUS = offline
|
||||
|
||||
####### Variablen, die vererbt werden sollen ###########
|
||||
######### Variablen vererben ###########
|
||||
export CCD_BUILD_DIR
|
||||
|
||||
########### Allgemeine targets ###########
|
||||
|
||||
.PHONY : clean all documents check help website release release_big source export cd-template setze_releaseinfos verlinke_programme verlinke_chaosradio
|
||||
|
||||
# nur ein Alias - damit doku das default-target ist (das erste im Makefile)
|
||||
all: doku
|
||||
.PHONY : clean all documents check help website small big source all cd-template kopiere_programme kopiere_chaosradio
|
||||
|
||||
help:
|
||||
@echo "allgemeine Targets:"
|
||||
|
@ -62,119 +50,105 @@ help:
|
|||
@echo " doku - das Doku-Verzeichnis erneuern"
|
||||
@echo " clean - unnoetige Dateien loeschen"
|
||||
@echo " check - Pruefung der Links"
|
||||
@echo " validate - Pruefung des html-Codes"
|
||||
@echo
|
||||
@echo "Export-Targets:"
|
||||
@echo " source - die lyx-Quellen und Bilder"
|
||||
@echo " release - alles ausser Chaosradio"
|
||||
@echo " release_big - mit Chaosradio-Dateien"
|
||||
@echo " website - fuer die Webseite: mit Programmen, ohne Chaosradio"
|
||||
@echo " export - erstellt alle Export-Formen"
|
||||
@echo " small - alles ausser Chaosradio"
|
||||
@echo " big - mit Chaosradio-Dateien"
|
||||
@echo " all - erstellt alle Export-Formen"
|
||||
|
||||
clean:
|
||||
@echo $(ICH)
|
||||
-make -C documents clean
|
||||
-rm -r $(TMP_ROOT)/* 2>/dev/null
|
||||
@downloads/get_files.sh clean
|
||||
|
||||
|
||||
check:
|
||||
make -C doku
|
||||
make -C documents
|
||||
linkchecker -r 3 --intern='!^mailto:' --extern-strict-all start.html
|
||||
|
||||
validate:
|
||||
make -C documents
|
||||
validate documents/_output/*.html
|
||||
|
||||
# pruefe, ob alle notwendigen/empfohlenen Verzeichnisse existieren
|
||||
verzeichnisstruktur: $(ERROR_DIRS) $(WARNING_DIRS)
|
||||
verzeichnisstruktur: $(CREATE_DIRS)
|
||||
|
||||
$(ERROR_DIRS):
|
||||
$(CREATE_DIRS):
|
||||
@if [ ! -e "$@" ] ; \
|
||||
then echo -e "directory ($@) does not exist - it is required\n\tyou could symlink it or create this directory\n" ; \
|
||||
false ; \
|
||||
then echo -e "directory ($@) does not exist - I will create it" ; \
|
||||
mkdir -p "$@" ; \
|
||||
fi
|
||||
|
||||
$(WARNING_DIRS):
|
||||
@[ ! -e "$@" ] && echo -e "directory ($@) does not exist - it is recommended\n\tyou could create a symlink or make this directory\n"
|
||||
|
||||
|
||||
######## die Werkzeuge #########
|
||||
|
||||
cd-template: verzeichnisstruktur
|
||||
@rm -rf $(CCD_BUILD_DIR)
|
||||
@cp --remove-destination -r cd-template $(CCD_BUILD_DIR)
|
||||
@rm -rf `find $(CCD_BUILD_DIR) -type d -name ".svn"`
|
||||
@svn export cd-template "$(CCD_BUILD_DIR)"
|
||||
|
||||
|
||||
doku: cd-template
|
||||
@echo "Aktualisiere das Doku-Verzeichnis ..."
|
||||
# aufgrund einer Seltsamkeit im doku-Makefile, muss es zweimal aufgerufen werden,
|
||||
# wenn der online- zum offline-Status geaendert wird (und umgekehrt)
|
||||
# die Dateien werden erst beim zweiten Durchlauf gebaut
|
||||
@make -C documents $(LINE_STATUS)
|
||||
@make -C documents $(LINE_STATUS)
|
||||
# Kopieren der Dateien ins das Abbild-Verzeichnis
|
||||
@#Kopieren der Dateien ins das Abbild-Verzeichnis
|
||||
@make -C documents install
|
||||
|
||||
|
||||
setze_releaseinfos: cd-template
|
||||
# ein nutzloses Relikt, oder nur der falsche Dateiname?
|
||||
# @echo "Passe version.txt an ..."
|
||||
# sed -i 's/REVISIONS_PLATZHALTER/$(AKTUELLE_REVISION)/g; s/DATUMS_PLATZHALTER/$(REVISIONS_DATUM)/g' $(CCD_BUILD_DIR)/version.txt
|
||||
kopiere_programme: cd-template
|
||||
@echo "Kopiere die Programme ..."
|
||||
@downloads/get_files.sh programme download
|
||||
@downloads/get_files.sh programme verify
|
||||
@downloads/get_files.sh programme install "$(PROGRAMM_DIR)"
|
||||
|
||||
|
||||
verlinke_programme: cd-template
|
||||
@echo "Erzeuge Links zu den Programmen ..."
|
||||
@ln -s "$(EXT_DIR_PROGS)" "$(CCD_BUILD_DIR)/programme"
|
||||
|
||||
|
||||
verlinke_chaosradio: cd-template
|
||||
@echo "Erzeuge Links zu den ChaosRadio-Dateien ..."
|
||||
@if [ -e "$(EXT_DIR_CHAOSRADIO)" ]; \
|
||||
then ln -s "$(EXT_DIR_CHAOSRADIO)" "$(CCD_BUILD_DIR)/ausLese/chaosradio" ; \
|
||||
else echo "keine ChaosRadio-Dateien gefunden ($(EXT_DIR_CHAOSRADIO))" >&2 ; \
|
||||
false ;\
|
||||
fi
|
||||
kopiere_chaosradio: cd-template
|
||||
@echo "Kopiere die ChaosRadio-Dateien ..."
|
||||
@downloads/get_files.sh chaosradio download
|
||||
@downloads/get_files.sh chaosradio verify
|
||||
@downloads/get_files.sh chaosradio install "$(CHAOSRADIO_DIR)"
|
||||
|
||||
####### die Ausgabe-Formate ###########
|
||||
|
||||
website: LINE_STATUS=online
|
||||
website: EXPORT_FILE_SUFFIX := _website
|
||||
website: cd-template verlinke_programme
|
||||
website: doku kopiere_programme
|
||||
@echo "Gruppen-Schreibrecht setzen (fuer eduforge) ..."
|
||||
@chmod -R g+rw $(TMP_ROOT)
|
||||
|
||||
@echo "Erzeuge Archiv der online-Dateien ..."
|
||||
@$(ERZEUGE_TAR)
|
||||
|
||||
|
||||
source: EXPORT_FILE_SUFFIX := _src
|
||||
source: CCD_BUILD_DIR := $(CCD_BUILD_DIR)$(EXPORT_FILE_SUFFIX)
|
||||
source:
|
||||
@if [ ! -e "$(CCD_BUILD_DIR)" ] ;\
|
||||
then echo "Exportiere die gewaehlte svn-Revision ($(REVISIONS_NR)) ..." ;\
|
||||
svn export -r $(REVISIONS_NR) "$(REPOSITORY_URL)" "$(CCD_BUILD_DIR)" | $(EINRUECKEN) ;\
|
||||
else echo "Verwende existierende lokale svn-Kopie" ;\
|
||||
fi
|
||||
@echo "Exportiere die gewaehlte svn-Revision ($(REVISIONS_NR)) ..." ;\
|
||||
rm -rf "$(CCD_BUILD_DIR)" ;\
|
||||
svn export . "$(CCD_BUILD_DIR)" | $(EINRUECKEN)
|
||||
@echo "Erzeuge source-Archiv ..."
|
||||
@$(ERZEUGE_TAR)
|
||||
|
||||
|
||||
release: EXPORT_FILE_SUFFIX := _small
|
||||
|
||||
release_big: EXPORT_FILE_SUFFIX := _all
|
||||
release_big: verlinke_chaosradio
|
||||
|
||||
release release_big: doku verlinke_programme setze_releaseinfos
|
||||
small: EXPORT_FILE_SUFFIX := _small
|
||||
small: doku kopiere_programme
|
||||
@echo "Erzeuge zip-Archiv ..."
|
||||
@$(ERZEUGE_ZIP)
|
||||
|
||||
big: EXPORT_FILE_SUFFIX := _big
|
||||
big: doku kopiere_programme kopiere_chaosradio
|
||||
@echo "Erzeuge iso-Image ..."
|
||||
@$(ERZEUGE_ISO)
|
||||
|
||||
|
||||
export-all:
|
||||
all:
|
||||
@echo "Erstelle die Web-Seite ..."
|
||||
@make website
|
||||
|
||||
@echo "Erstelle kleine Release-Pakete ..."
|
||||
@make release
|
||||
@echo "Erstelle das kleine Release-Paket ..."
|
||||
@make small
|
||||
|
||||
@echo "Erstelle grosse Release-Pakete ..."
|
||||
@make release_all
|
||||
@echo "Erstelle das grosse Release-Paket ..."
|
||||
@make big
|
||||
|
||||
@echo "Erstelle das Quell-Paket ... "
|
||||
@make source
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue