@@ -20,6 +20,7 @@ prefix='/usr/local'
20
20
bindir=' $(PREFIX)/bin'
21
21
libdir=' $(PREFIX)/lib/compcert'
22
22
mandir=' $(PREFIX)/share/man'
23
+ sharedir=' ' # determined later based on $bindir and -sharedir option
23
24
coqdevdir=' $(PREFIX)/lib/compcert/coq'
24
25
toolprefix=' '
25
26
target=' '
@@ -88,6 +89,7 @@ Options:
88
89
-prefix <dir> Install in <dir>/bin and <dir>/lib/compcert
89
90
-bindir <dir> Install binaries in <dir>
90
91
-libdir <dir> Install libraries in <dir>
92
+ -sharedir <dir> Install configuration file in <dir>
91
93
-mandir <dir> Install man pages in <dir>
92
94
-coqdevdir <dir> Install Coq development (.vo files) in <dir>
93
95
-toolprefix <pref> Prefix names of tools ("gcc", etc) with <pref>
@@ -120,6 +122,8 @@ while : ; do
120
122
libdir=" $2 " ; shift ;;
121
123
-mandir|--mandir)
122
124
mandir=" $2 " ; shift ;;
125
+ -sharedir|--sharedir)
126
+ sharedir=" $2 " ; shift ;;
123
127
-coqdevdir|--coqdevdir)
124
128
coqdevdir=" $2 " ; install_coqdev=true; shift ;;
125
129
-toolprefix|--toolprefix)
@@ -610,10 +614,36 @@ if $missingtools; then
610
614
exit 2
611
615
fi
612
616
617
+ #
618
+ # Determine $sharedir or check that user-provided $sharedir is valid
619
+ #
620
+
621
+ expandprefix () {
622
+ echo " $1 " | sed -e " s|\\\$ (PREFIX)|$prefix |"
623
+ }
624
+
625
+ if test -z " $sharedir " ; then
626
+ sharedir=$( dirname " $bindir " ) /share
627
+ else
628
+ expsharedir=$( expandprefix " $sharedir " )
629
+ expbindir=$( expandprefix " $bindir " )
630
+ expbindirshare=$( dirname " $expbindir " ) /share
631
+ if test " $expsharedir " = " $expbindirshare /compcert" \
632
+ || test " $expsharedir " = " $expbindirshare " \
633
+ || test " $expsharedir " = " $expbindir "
634
+ then : ; # ok!
635
+ else
636
+ echo " Wrong -sharedir option. The share directory must be one of"
637
+ echo " $expbindirshare /compcert"
638
+ echo " $expbindirshare "
639
+ echo " $expbindir "
640
+ exit 2
641
+ fi
642
+ fi
643
+
613
644
#
614
645
# Generate Makefile.config
615
646
#
616
- sharedir=" $( dirname " $bindir " ) " /share
617
647
618
648
rm -f Makefile.config
619
649
cat > Makefile.config << EOF
@@ -805,10 +835,6 @@ Please finish the configuration by editing file ./Makefile.config.
805
835
EOF
806
836
else
807
837
808
- expandprefix () {
809
- echo " $1 " | sed -e " s|\\\$ (PREFIX)|$prefix |"
810
- }
811
-
812
838
cat << EOF
813
839
814
840
CompCert configuration:
@@ -830,6 +856,7 @@ CompCert configuration:
830
856
The Flocq library............. $library_Flocq
831
857
The MenhirLib library......... $library_MenhirLib
832
858
Binaries installed in......... $( expandprefix $bindir )
859
+ Shared config installed in.... $( expandprefix $sharedir )
833
860
Runtime library provided...... $has_runtime_lib
834
861
Library files installed in.... $( expandprefix $libdir )
835
862
Man pages installed in........ $( expandprefix $mandir )
0 commit comments