Index: fpcsrc/compiler/utils/samplecfg
===================================================================
--- fpcsrc/compiler/utils/samplecfg (version 2.2.4)
+++ fpcsrc/compiler/utils/samplecfg (working copy)
@@ -17,7 +17,7 @@
setgccdirarch() {
# First argument is fpc define for CPU type; remaining args are passed to gcc to set corresponding architecture
-FPCDEFINE=$1
+FPCDEFINE="$1"/"$libdir"/fpc
shift
setgccdir $@
@@ -35,7 +35,7 @@
if [ $# = 0 ]; then
echo 'Usage :'
echo 'samplecfg fpcdir confdir'
- echo 'fpcdir = Path where FPC is installed'
+ echo 'fpcdir = Prefix where FPC is installed (/usr/., /usr/local/.)'
echo 'confdir = Path to /etc'
exit 1
fi
@@ -45,9 +45,16 @@
else
sysdir=/etc
fi
-FPCBIN=`dirname "$1"`/../../bin/fpc
-FPBIN=`dirname "$1"`/../../bin/fp
-sysfpdirbase=`dirname "$1"`/`$FPCBIN -iV`
+FPCBIN="$1"/bin/fpc
+FPBIN="$1"/bin/fp
+fpctargetproc=`$FPCBIN -iTP`
+echo "$fpctargetproc"
+if [ "$fpctargetproc" = "x86_64" -o "$fpctargetproc" = "powerpc64" ]; then
+ libdir=lib64
+else
+ libdir=lib
+fi
+sysfpdirbase="$1"/"$libdir"/fpc/`$FPCBIN -iV`
sysfpdirbase2=$sysfpdirbase/ide
sysfpdir=$sysfpdirbase2/text
fpctargetos=`$FPCBIN -iTO`
@@ -223,7 +230,8 @@
# set right path to FPC with $fpcversion
-FPCPATH=`dirname "$1"`/\$fpcversion
+FPCPATH32="$1"/lib/fpc/\$fpcversion
+FPCPATH64="$1"/lib64/fpc/\$fpcversion
# Write (.)fpc.cfg
echo Writing sample configuration file to $fpccfgfile
@@ -359,26 +367,48 @@
# path to the messagefile, not necessary anymore but can be used to override
# the default language
-#-Fr$FPCPATH/msg/errore.msg
-#-Fr$FPCPATH/msg/errorn.msg
+#-Fr$FPCPATH32/msg/errore.msg
+#-Fr$FPCPATH32/msg/errorn.msg
+#-Fr$FPCPATH64/msg/errore.msg
+#-Fr$FPCPATH64/msg/errorn.msg
# searchpath for includefiles
#-Fi/pp/inc;/pp/rtl/inc
#IFDEF FPCAPACHE_1_3
--Fu$FPCPATH/units/\$fpctarget/httpd13/
+#IFDEF CPU64
+-Fu$FPCPATH64/units/\$fpctarget/httpd13/
+#ELSE
+-Fu$FPCPATH32/units/\$fpctarget/httpd13/
+#ENDIF
#ELSE
#IFDEF FPCAPACHE_2_0
--Fu$FPCPATH/units/\$fpctarget/httpd20
+#IFDEF CPU64
+-Fu$FPCPATH64/units/\$fpctarget/httpd20
+#ELSE
+-Fu$FPCPATH32/units/\$fpctarget/httpd20
+#ENDIF
+#ELSE
+#IFDEF CPU64
+-Fu$FPCPATH64/units/\$fpctarget/httpd22
#ELSE
--Fu$FPCPATH/units/\$fpctarget/httpd22
+-Fu$FPCPATH32/units/\$fpctarget/httpd22
+#ENDIF
#ENDIF
#ENDIF
# searchpath for units and other system dependent things
--Fu$FPCPATH/units/\$fpctarget
--Fu$FPCPATH/units/\$fpctarget/*
--Fu$FPCPATH/units/\$fpctarget/rtl
+#IFDEF CPU64
+# 64-bits
+-Fu$FPCPATH64/units/\$fpctarget
+-Fu$FPCPATH64/units/\$fpctarget/*
+-Fu$FPCPATH64/units/\$fpctarget/rtl
+#ELSE
+# 32-bits
+-Fu$FPCPATH32/units/\$fpctarget
+-Fu$FPCPATH32/units/\$fpctarget/*
+-Fu$FPCPATH32/units/\$fpctarget/rtl
+#ENDIF
#-Fu~/fpc/packages/base/*/units/$fpctarget;~/fpc/fcl/units/$fpctarget;~/fpc/rtl/units/$fpctarget
# searchpath for libraries