165 lines
5.1 KiB
Text
165 lines
5.1 KiB
Text
|
# Mf-install.in
|
||
|
# Copyright 1984-2017 Cisco Systems, Inc.
|
||
|
#
|
||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||
|
# you may not use this file except in compliance with the License.
|
||
|
# You may obtain a copy of the License at
|
||
|
#
|
||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||
|
#
|
||
|
# Unless required by applicable law or agreed to in writing, software
|
||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||
|
# See the License for the specific language governing permissions and
|
||
|
# limitations under the License.
|
||
|
|
||
|
###############################################################################
|
||
|
# the following variables are set up by configure #
|
||
|
###############################################################################
|
||
|
|
||
|
m=none
|
||
|
|
||
|
# The following variables determine where the executables, boot files,
|
||
|
# example programs, and manual pages are installed.
|
||
|
|
||
|
# executable directory
|
||
|
InstallBin=/usr/bin
|
||
|
|
||
|
# library directory
|
||
|
InstallLib=/usr/lib
|
||
|
|
||
|
# man page directory
|
||
|
InstallMan=/usr/man/man1
|
||
|
|
||
|
# installation owner
|
||
|
InstallOwner=
|
||
|
|
||
|
# installation group
|
||
|
InstallGroup=
|
||
|
|
||
|
# Files are actually installed at ${TempRoot}${InstallBin},
|
||
|
# ${TempRoot}${InstallLib}, and ${TempRoot}${InstallMan}.
|
||
|
# This useful for testing the install process and for building
|
||
|
# installation scripts
|
||
|
TempRoot=
|
||
|
|
||
|
# compress man pages?
|
||
|
GzipManPages=yes
|
||
|
|
||
|
# executable names
|
||
|
InstallSchemeName=scheme
|
||
|
InstallPetiteName=petite
|
||
|
InstallScriptName=scheme-script
|
||
|
|
||
|
# Whether to install "kernel.o" or "libkernel.a"
|
||
|
InstallKernelTarget=installkernellib
|
||
|
|
||
|
# Maybe install libz.a and liblz4.a by setting to "installzlib" and "installliz4"
|
||
|
InstallZlibTarget=
|
||
|
InstallLZ4Target=
|
||
|
|
||
|
###############################################################################
|
||
|
# no changes should be needed below this point #
|
||
|
###############################################################################
|
||
|
|
||
|
Version=csv9.5.9
|
||
|
Include=boot/$m
|
||
|
PetiteBoot=boot/$m/petite.boot
|
||
|
SchemeBoot=boot/$m/scheme.boot
|
||
|
Revision=boot/$m/revision
|
||
|
Scheme=bin/$m/scheme
|
||
|
Petite=bin/$m/petite
|
||
|
InstallLibExamples=${InstallLib}/${Version}/examples
|
||
|
InstallLibBin=${InstallLib}/${Version}/$m
|
||
|
|
||
|
Bin=${TempRoot}${InstallBin}
|
||
|
Lib=${TempRoot}${InstallLib}/${Version}
|
||
|
LibExamples=${TempRoot}${InstallLibExamples}
|
||
|
LibBin=${TempRoot}${InstallLibBin}
|
||
|
Man=${TempRoot}${InstallMan}
|
||
|
PetitePath=${Bin}/${InstallPetiteName}
|
||
|
SchemePath=${Bin}/${InstallSchemeName}
|
||
|
SchemeScriptPath=${Bin}/${InstallScriptName}
|
||
|
|
||
|
install: bininstall libbininstall maninstall liblibinstall ${InstallKernelTarget}
|
||
|
|
||
|
uninstall:
|
||
|
rm -rf ${Lib}
|
||
|
rm -f ${PetitePath}
|
||
|
rm -f ${SchemePath}
|
||
|
rm -f ${SchemeScriptPath}
|
||
|
rm -f ${Man}/${InstallPetiteName}.1{,.gz}
|
||
|
rm -f ${Man}/${InstallSchemeName}.1{,.gz}
|
||
|
|
||
|
scheme.1 petite.1: scheme.1.in
|
||
|
sed -e "s;{InstallBin};${InstallBin};g" \
|
||
|
-e "s;{InstallLibExamples};${InstallLibExamples};g" \
|
||
|
-e "s;{InstallLibBin};${InstallLibBin};g" \
|
||
|
-e "s;{InstallPetiteName};${InstallPetiteName};g" \
|
||
|
-e "s;{InstallSchemeName};${InstallSchemeName};g" \
|
||
|
-e "s;{InstallScriptName};${InstallScriptName};g" \
|
||
|
scheme.1.in > $@
|
||
|
|
||
|
###############################################################################
|
||
|
# no useful external targets below this line #
|
||
|
###############################################################################
|
||
|
|
||
|
I=./installsh -o "${InstallOwner}" -g "${InstallGroup}"
|
||
|
|
||
|
bininstall: ${Bin}
|
||
|
$I -m 555 ${Scheme} ${SchemePath}
|
||
|
ln -f ${SchemePath} ${PetitePath}
|
||
|
ln -f ${SchemePath} ${SchemeScriptPath}
|
||
|
|
||
|
libbininstall: ${LibBin}
|
||
|
$I -m 444 ${PetiteBoot} ${LibBin}/petite.boot
|
||
|
if [ "${InstallPetiteName}" != "petite" ]; then\
|
||
|
rm -f ${LibBin}/${InstallPetiteName}.boot;\
|
||
|
ln -f ${LibBin}/petite.boot ${LibBin}/${InstallPetiteName}.boot;\
|
||
|
fi
|
||
|
$I -m 444 ${SchemeBoot} ${LibBin}/scheme.boot;\
|
||
|
if [ "${InstallSchemeName}" != "scheme" ]; then\
|
||
|
rm -f ${LibBin}/${InstallSchemeName}.boot;\
|
||
|
ln -f ${LibBin}/scheme.boot ${LibBin}/${InstallSchemeName}.boot;\
|
||
|
fi
|
||
|
ln -f ${LibBin}/scheme.boot ${LibBin}/${InstallScriptName}.boot;
|
||
|
$I -m 444 ${Include}/main.o ${LibBin}
|
||
|
$I -m 444 ${Include}/scheme.h ${LibBin}
|
||
|
$I -m 444 ${Revision} ${LibBin}/revision
|
||
|
|
||
|
installkernelobj: ${LibBin}
|
||
|
$I -m 444 ${Include}/kernel.o ${LibBin}
|
||
|
|
||
|
installkernellib: ${LibBin} ${InstallZlibTarget} ${InstallLZ4Target}
|
||
|
$I -m 444 ${Include}/libkernel.a ${LibBin}
|
||
|
|
||
|
installzlib: ${LibBin}
|
||
|
$I -m 444 zlib/libz.a ${LibBin}
|
||
|
|
||
|
installlz4: ${LibBin}
|
||
|
$I -m 444 lz4/lib/liblz4.a ${LibBin}
|
||
|
|
||
|
maninstall: scheme.1 petite.1 ${Man}
|
||
|
$I -m 444 scheme.1 ${Man}/${InstallSchemeName}.1
|
||
|
if [ ${GzipManPages} = yes ] ; then gzip -f ${Man}/${InstallSchemeName}.1 ; fi
|
||
|
$I -m 444 petite.1 ${Man}/${InstallPetiteName}.1
|
||
|
if [ ${GzipManPages} = yes ] ; then gzip -f ${Man}/${InstallPetiteName}.1 ; fi
|
||
|
|
||
|
liblibinstall: ${LibExamples}
|
||
|
$I -m 444 examples/* ${LibExamples}
|
||
|
|
||
|
${Lib}:
|
||
|
$I -d -m 755 ${Lib}
|
||
|
|
||
|
${LibBin}: ${Lib}
|
||
|
$I -d -m 755 ${LibBin}
|
||
|
|
||
|
${LibExamples}: ${Lib}
|
||
|
$I -d -m 755 ${LibExamples}
|
||
|
|
||
|
${Bin}:
|
||
|
$I -d -m 755 ${Bin}
|
||
|
|
||
|
${Man}:
|
||
|
$I -d -m 755 ${Man}
|