3 # Copyright (c) 2015-2021 Matias Fonzo, <selk@dragora.org>.
5 # Licensed under the Apache License, Version 2.0 (the "License");
6 # you may not use this file except in compliance with the License.
7 # You may obtain a copy of the License at
9 # http://www.apache.org/licenses/LICENSE-2.0
11 # Unless required by applicable law or agreed to in writing, software
12 # distributed under the License is distributed on an "AS IS" BASIS,
13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 # See the License for the specific language governing permissions and
15 # limitations under the License.
17 echo "Making Qi from ${CWD}/qi ..."
25 --packagedir=/usr/pkg \
31 # Clean up the source repository
36 # Create usr/pkg directory at 'rootdir'
37 mkdir -p -- "${rootdir}/usr/pkg"
39 # Adjust prefixes in config for final system installation
41 -e 's|/tools|/usr|g' \
42 -e 's|/usr/etc|/etc|' \
43 -e 's|/usr/var|/var|' \
46 # Set compiler options provided by default in Dragora
50 -e 's|#QICFLAGS=.*|QICFLAGS=\"-g0 -Os -march=pentium-mmx -mtune=pentiumpro -foptimize-strlen -fstack-clash-protection -fcf-protection=full -fstack-protector-strong --param=ssp-buffer-size=4 -pipe\"|' \
51 -e 's|#QICXXFLAGS=.*|QICXXFLAGS=\"-g0 -Os -march=pentium-mmx -mtune=pentiumpro -foptimize-strlen -fstack-clash-protection -fcf-protection=full -fstack-protector-strong --param=ssp-buffer-size=4 -pipe\"|' \
52 -e 's|#QILDFLAGS=.*|QILDFLAGS=\"-s\"|' \
53 -e 's|#QICPPFLAGS=.*|QICPPFLAGS=\"-D_FORTIFY_SOURCE=2\"|' \
58 -e 's|#QICFLAGS=.*|QICFLAGS=\"-g0 -Os -march=x86-64 -foptimize-strlen -fstack-clash-protection -fcf-protection=full -fstack-protector-strong --param=ssp-buffer-size=4 -pipe\"|' \
59 -e 's|#QICXXFLAGS=.*|QICXXFLAGS=\"-g0 -Os -march=x86-64 -foptimize-strlen -fstack-clash-protection -fcf-protection=full -fstack-protector-strong --param=ssp-buffer-size=4 -pipe\"|' \
60 -e 's|#QILDFLAGS=.*|QILDFLAGS=\"-s\"|' \
61 -e 's|#QICPPFLAGS=.*|QICPPFLAGS=\"-D_FORTIFY_SOURCE=2\"|' \
66 -e 's|#QICFLAGS=.*|QICFLAGS=\"-g0 -Os -foptimize-strlen -fstack-protector-strong --param=ssp-buffer-size=4 -pipe\"|' \
67 -e 's|#QICXXFLAGS=.*|QICXXFLAGS=\"-g0 -Os -foptimize-strlen -fstack-protector-strong --param=ssp-buffer-size=4 -pipe\"|' \
68 -e 's|#QILDFLAGS=.*|QILDFLAGS=\"-s\"|' \
69 -e 's|#QICPPFLAGS=.*|QICPPFLAGS=\"-D_FORTIFY_SOURCE=2\"|' \
74 # Include additional settings from targets/
76 # We prefix '--enable-multilib' for targets supporting it,
77 # the native GCC wants this option explicitly
78 if test -n "$multilib_options"
80 case $multilib_options in
81 *--disable-multilib* | *--enable-multilib* | *--with-multilib-list=)
85 multilib_options="--enable-multilib $multilib_options"
90 cat << EOF >> /tools/etc/qirc
93 multilib_options="$multilib_options"
95 # lib<equal> suffix (multilib, if any)
96 libSuffix="$libSuffix"
98 # GCC (arch-specific) options
99 gcc_options="$gcc_options"
102 chmod 644 /tools/etc/qirc