Commit 99c95754 authored by thomas.forbriger's avatar thomas.forbriger

[WP][TASK] (makepkg): provide list of commands

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.

README.system in the package is renamed to README.package
since this file now also contains a lot of package specific information
In particular we now provide a list of commands to be issued manually for
users who cannot or like not use install.sh
parent e87c6a92
......@@ -49,11 +49,13 @@
# 04/02/2014 thof: rework install.sh for snap-shot packages
# creating appropriate calls to make and executing them
# is delegated to install.sh
# 06/02/1014 thof: rename README.system into README.package
# add compile information to README.package
#
#----------------------------------------------------------------------
# Notice
# ------
# 1) The file README.system contains distribution specific information
# 1) The file README.package contains distribution specific information
# which is read using the program lsb_release. If this program isn't installed
# on your system under the point "Operating system:" no reasonable information
# will be listed.
......@@ -74,7 +76,7 @@
# TFbashrc
# README.compile
# README.dependencies
# README.system
# README.package
# LICENSE.GPL
# install.sh
# include/ (pre-installed header files)
......@@ -330,6 +332,33 @@ else
$(TMPPATH)/$(word 2,$(subst .EXPORTTO., ,$@))
endif
#======================================================================
# compilation information
# =======================
# PACKAGETARGETS and PACKAGELIBS (see above)
#
# The rules in this section report the commands required for the installation
# of compiled binaries within the snapshot tree. This is done in three steps:
# list of make targets to be executed after repository modules being exported
LIBINSTALL=$(foreach lib,$(THEPACKAGELIBS),contrib/$(lib):install)
LIBDOC=$(foreach lib,$(THEPACKAGELIBS),contrib/$(lib):doc:-i)
TARGETLIST=$(subst :,.MAKETARGET.,$(LIBINSTALL) $(THEPACKAGETARGETS) $(LIBDOC))
# prepare a file containing a liast of command required to install the library
# for each target in $(TARGETLIST) a command sequence is added to
# $(TARGETSCRIPT); the latter is used for the body README.package
TARGETSCRIPT=$(TMPPATH)/script.cmd
.PHONY: $(TARGETLIST)
$(TARGETLIST):
echo -n '(cd $$SRCROOT/$(word 1,$(subst .MAKETARGET., ,$@)); ' \
>> $(TARGETSCRIPT)
echo -n '$(MAKE) $(word 3,$(subst .MAKETARGET., ,$@)) '\
'$(word 2,$(subst .MAKETARGET., ,$@)); ' \
>> $(TARGETSCRIPT)
echo '$(MAKE) clean)'\
>> $(TARGETSCRIPT)
#======================================================================
# provide information files
# -------------------------
......@@ -338,7 +367,7 @@ endif
# directory of the package snapshot tree.
#
# The rules below comprise comppands to checkout files from the repository and
# to create new files (README.system) upon package creation.
# to create new files (README.package) upon package creation.
#
# list of README files to be obtained from the subversion repository
......@@ -361,7 +390,7 @@ else
/bin/cp -vprd $(GITTFSEXPORT)/$(filter %$(notdir $@),$(INFOFILESFROMSVNWITHPATH)) $@
endif
# README.system
# README.package
# information on system where this package was created on
#
# this rule depends on specific files being present in the system directories
......@@ -370,7 +399,7 @@ endif
# http://linuxmafia.com/faq/Admin/release-files.html
# is a useful resource. (Thanks to Daniel Armbruster)
#
$(TMPPATH)/README.system:
$(TMPPATH)/README.package: $(TARGETLIST)
mkdir -pv $(dir $@)
echo "Context in which this package was created" > $@
echo "-----------------------------------------" >> $@
......@@ -403,10 +432,22 @@ else
endif
echo -e "\nThe snapshot contains code from the following repository directories:" >> $@
echo $(EXPORTSVNLIST) | fold -w 70 -s | sed -e "s/^/ /" >> $@
echo -e "\nA shell script \"install.sh\" is provided to support installation." >> $@
echo "If the shell script does not work for you, the following commands" >>$@
echo -e "will do as well:\n" >> $@
/bin/bash -c 'if test -e $(TARGETSCRIPT); \
then \
echo "SRCROOT=\$$(pwd)" >> $@; \
cat $(TARGETSCRIPT) >> $@; \
else \
echo echo "This package must be installed manually. Sorry..." >> $@;\
fi'
echo -e '\n----- END OF README.package ----- ' >>$@
-/bin/rm -fv $(TARGETSCRIPT)
# list of all README files and shell scripts together with locally created
# files in the root directory of the snapshot tree
INFOFILES=$(INFOFILESFROMSVN) README.system
INFOFILES=$(INFOFILESFROMSVN) README.package
#======================================================================
# in this section the actual installation is perpared and carried out
......
Markdown is supported
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