cookutils view cook.conf @ rev 1146

cook: allow built in aufs
author Pascal Bellard <pascal.bellard@slitaz.org>
date Tue Jul 28 07:28:04 2020 +0000 (2020-07-28)
parents 461c3da71257
children e58a083722aa
line source
1 # Cook packages builder configuration file
2 #
4 # SliTaz working directory
5 SLITAZ="/home/slitaz"
7 # Directory paths for cookutils DB and files.
8 WOK="$SLITAZ/wok"
9 PKGS="$SLITAZ/packages"
10 SRC="$SLITAZ/src"
11 CACHE="$SLITAZ/cache"
12 LOGS="$SLITAZ/log"
13 FEEDS="$SLITAZ/xml"
14 DATA="/usr/share/cook"
16 # System packages DB.
17 DB="/var/lib/tazpkg"
18 INSTALLED="$DB/installed"
20 # Result of "ls $INSTALLED | md5sum | cut -c1-32"
21 SETUP_MD5=""
23 # Quality Assurance (empty to disable receipt_quality).
24 QA="0"
26 # Automatically cook missing build dependencies (empty to disable).
27 AUTO_COOK=""
29 # Hg wok for setup and flavors URL for the Cooker.
30 WOK_URL="http://hg.slitaz.org/wok"
31 FLAVORS_URL="http://hg.slitaz.org/flavors"
33 # Cooker URL for RSS feed link (http://localhost/cgi-bin/cooker/cooker.cgi)
34 COOKER_URL="http://cook.slitaz.org/"
36 # Translation files to be included in packages.
37 LOCALE=""
39 # List of packages installed in build chroot by cook or the Cooker setup.
40 SETUP_PKGS="slitaz-toolchain pkg-config intltool gettext zlib-dev bzip2
41 aufs-utils aufs m4 syslinux-extra pcre pcre-dev bash xorg-dev mercurial
42 rsync dropbear tazlito"
44 # Target host architecture type (Glibc doesn't support i386 anymore).
45 ARCH="i486"
47 # Build and host. These options are for cross-compiling. If you specify
48 # both options and BUILD_SYSTEM is different from HOST_SYSTEM, configure
49 # will prepare to cross-compile from BUILD_SYSTEM to be used on HOST_SYSTEM.
50 #BUILD_SYSTEM="$(uname -m)-slitaz-linux"
51 BUILD_SYSTEM="$ARCH-slitaz-linux"
52 HOST_SYSTEM="$ARCH-slitaz-linux"
54 # SliTaz uses the sysroot method, this tells GCC to consider dir as the root
55 # of a tree that contains a (subset of) the root filesystem of the target
56 # operating system. Target system headers, libraries and run-time object
57 # files will be searched in there. Cook will use the tools and sysroot in
58 # the CROSS_TREE for cross compiling. Example: CROSS_TREE="/cross/$ARCH"
59 CROSS_TREE=""
61 # List of packages installed in chroot by cook or the Cooker setup.
62 # When cross compiling we need some build system tools installed and
63 # some cross-compiled bdeps installed in: $PREFIX (cross host root)
64 CROSS_SETUP="slitaz-toolchain zlib-dev bzip2 aufs-utils aufs bash m4 \
65 autoconf automake libtool gettext bison texinfo"
67 # SliTaz optimisation flags - Wide compatibility & optimized for ARCH.
68 #
69 # With -O2: binutils: Produce 14.0M Packed 5.5M Compressed 1.2M
70 # With -Os: binutils: Produce 13.4M Packed 4.9M Compressed 1.1M
71 #
72 # ARM: don't use -Os but -O2
73 # ARM: -mcpu=name [arm9|xscale|...] or -march=name [armv4|armv6|...]
74 # x86_64: CFLAGS="-march=nocona -Os -pipe"
75 #
76 #MAKEFLAGS="-j$(($(grep processor /proc/cpuinfo | wc -l)+1))"
77 MAKEFLAGS="-j$(grep processor /proc/cpuinfo | wc -l)"
79 # Note '-mindirect-branch=thunk' and friends appeared since GCC-7.3 and
80 # earlier versions will produce compile errors.
81 # We use this flag against some flavors of the Spectre vulnerability.
82 # FIXME: it looks like the flag '-mindirect-branch=thunk-extern' is recommended,
83 # but no one app is compiled using it even using GCC-7.3. Is something wrong?
84 #
85 # Curl configure says:
86 # configure: CFLAGS note: CFLAGS should only be used to specify C compiler flags,
87 # not macro definitions. Use CPPFLAGS for: -D_GLIBCXX_USE_C99_MATH=1
88 #
89 case "$ARCH" in
90 i?86)
91 CFLAGS="-march=$ARCH -Os -pipe -mindirect-branch=thunk"
92 CPPFLAGS="-D_GLIBCXX_USE_C99_MATH=1"
93 ;;
94 x86_64)
95 CFLAGS="-march=nocona -Os -pipe -mindirect-branch=thunk"
96 CPPFLAGS="-D_GLIBCXX_USE_C99_MATH=1"
97 ;;
98 arm*)
99 CFLAGS="-march=armv6 -O2" # FIXME
100 ;;
101 esac
102 CXXFLAGS="$CFLAGS"
103 export CFLAGS CXXFLAGS CPPFLAGS
105 # Binutils 2.22 breaks many packages built without LDFLAGS set correctly.
106 #LDFLAGS="-Wl,--copy-dt-needed-entries -lXt"
108 # These LDFLAGS will minify runtime dependencies (shown by ldd)
109 # in the most cases when libtool used.
110 # https://bugzilla.gnome.org/show_bug.cgi?id=655517
111 # https://wiki.gentoo.org/wiki/Project:Quality_Assurance/As-needed
112 export LDFLAGS="-Wl,-Os,--as-needed"
114 # Default tool prefix for Binutils.
115 TOOLPREFIX="${HOST_SYSTEM}-"
117 # Default arguments for GNU configure. CONFIGURE_ARGS is needed for some
118 # packages since --build and --host is not set at all by cook.site (bug ?).
119 CONFIG_SITE=/etc/slitaz/cook.site
120 CONFIGURE_ARGS="--build=$BUILD_SYSTEM --host=$HOST_SYSTEM"
122 # Mirrors URLs. To download sources near your location.
123 GNU_MIRROR="https://ftp.igh.cnrs.fr/pub/gnu" # see https://www.gnu.org/prep/ftp.html
124 SF_MIRROR="https://downloads.sourceforge.net"
125 XORG_MIRROR="https://www.x.org/archive/individual"
126 GNOME_MIRROR="http://ftp.gnome.org/pub/GNOME/sources"
127 GITHUB="https://api.github.com/repos"
129 # List of filesystems into the aufs chroot (to protect / against modifications)
130 # Default tank config:
131 AUFS_MOUNTS="/ /proc /sys /dev/shm /dev/pts /var/cache/tazpkg \
132 /home /home/slitaz/src /home/slitaz/packages"
134 # Old way/tazwok compatibility.
135 BUILD_HOST="$HOST_SYSTEM"
136 SOURCES_REPOSITORY=$SRC
138 # Maximum log size in MB per receipt function call (unset it to disable)
139 DEFAULT_LOG_LIMIT=50
141 # Command to run wget. Please use wget from chroot for SliTaz Tank:
142 # HOST_WGET="chroot /home/slitaz/next/chroot/ wget"
143 HOST_WGET="wget"