summaryrefslogtreecommitdiff
path: root/install/debian/fp-compiler.postinst.in
blob: 5e572f2b905e7a3be481ce2878b9fdcbcae470b9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
#! /bin/sh

set -e

# Load debconf
. /usr/share/debconf/confmodule

CFG_FILE="/etc/fpc-${VERSION}.cfg"
DEFAULT_CFG_FILE='/etc/fpc.cfg'
LIB_DIR="/usr/lib/fpc"
MAN_DIR="/usr/share/man/man1"

# Debhelper code
#DEBHELPER#

if test -f "${DEFAULT_CFG_FILE}" && ! test -L "${DEFAULT_CFG_FILE}"
then
	db_get fp-compiler${PACKAGESUFFIX}/rename_cfg
	if test "${RET}" = "true"
	then
		mv "${DEFAULT_CFG_FILE}" "${DEFAULT_CFG_FILE}.bak"
	fi
fi

# Create new compiler configuration file
fpcmkcfg-${VERSION} -0 -d "basepath=${LIB_DIR}/\$fpcversion" -o "${CFG_FILE}"
# Add multiarch path to /etc/fpc.cfg so executables linked against libc can be corectly linked
echo '# multiarch library search path' >> ${CFG_FILE}
echo '-Fl/usr/lib/$fpctarget-*' >> ${CFG_FILE}

if test -n ${WINDRES_BIN}
then
	db_get fp-compiler${PACKAGESUFFIX}/windres
	if test -n "${RET}"
	then
		WINDRES_BIN=${RET}
	fi
fi
sed -e '\@# MS Windows .rc resource compiler@d' -e '\@-FC@d' -i  ${CFG_FILE}
if test -n "${WINDRES_BIN}"
then
	echo '# MS Windows .rc resource compiler' >> ${CFG_FILE}
	echo "-FC${WINDRES_BIN}" >> ${CFG_FILE}
fi

# add alternatives
update-alternatives \
    --install /usr/bin/fpc fpc /usr/bin/fpc-${VERSION} ${PRIORITY} \
    --slave /usr/bin/${PPCBIN} ${PPCBIN} ${LIB_DIR}/${VERSION}/${PPCBIN} \
    --slave /usr/bin/fpc-depends fpc-depends /usr/bin/fpc-depends-${VERSION} \
	--slave /usr/bin/fpcres fpcres /usr/bin/fpcres-${VERSION} \
    --slave ${MAN_DIR}/${PPCBIN}.1.gz ${PPCBIN}.1.gz ${MAN_DIR}/${PPCBIN}-${VERSION}.1.gz \
    --slave ${MAN_DIR}/fpc.1.gz fpc.1.gz ${MAN_DIR}/fpc-${VERSION}.1.gz \
    --slave ${MAN_DIR}/fpc-depends.1.gz fpc-depends.1.gz ${MAN_DIR}/fpc-depends-${VERSION}.1.gz \
	--slave ${MAN_DIR}/fpcres.1.gz fpcres.1.gz ${MAN_DIR}/fpcres-${VERSION}.1.gz
update-alternatives \
    --install /usr/bin/pc pc /usr/bin/fpc-${VERSION} 20 \
    --slave ${MAN_DIR}/pc.1.gz pc.1.gz ${MAN_DIR}/fpc-${VERSION}.1.gz

# Configuration file is a special case as it is backward compatible and is
# likely to be handled as a special alternative pointing to the latest release
update-alternatives \
	--install ${DEFAULT_CFG_FILE} fpc.cfg ${CFG_FILE} ${PRIORITY}