cookutils view cook.conf @ rev 1028

cook.conf: tune CFLAGS depending on ARCH
author Aleksej Bobylev <al.bobylev@gmail.com>
date Fri Feb 02 01:15:45 2018 +0200 (2018-02-02)
parents b96073636c77
children 54c97f545127
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)"
78 case "$ARCH" in
79 i?86) CFLAGS="-march=$ARCH -Os -pipe -mindirect-branch=thunk-extern";;
80 x86_64) CFLAGS="-march=nocona -Os -pipe -mindirect-branch=thunk-extern";;
81 arm*) CFLAGS="-march=armv6 -O2";; # FIXME
82 esac
83 CXXFLAGS="$CFLAGS"
85 # Binutils 2.22 breaks many packages built without LDFLAGS set correctly.
86 #LDFLAGS="-Wl,--copy-dt-needed-entries -lXt"
88 # Default tool prefix for Binutils.
89 TOOLPREFIX="${HOST_SYSTEM}-"
91 # Default arguments for GNU configure. CONFIGURE_ARGS is needed for some
92 # packages since --build and --host is not set at all by cook.site (bug ?).
93 CONFIG_SITE=/etc/slitaz/cook.site
94 CONFIGURE_ARGS="--build=$BUILD_SYSTEM --host=$HOST_SYSTEM"
96 # Mirrors URLs. To download sources near your location.
97 GNU_MIRROR="http://mirror.switch.ch/ftp/mirror/gnu"
98 SF_MIRROR="https://downloads.sourceforge.net"
99 XORG_MIRROR="https://www.x.org/archive/individual"
100 GNOME_MIRROR="http://ftp.gnome.org/pub/GNOME/sources"
101 GITHUB="https://api.github.com/repos"
103 # List of filesystems into the aufs chroot (to protect / against modifications)
104 # Default tank config:
105 AUFS_MOUNTS="/ /proc /sys /dev/shm /dev/pts /var/cache/tazpkg \
106 /home /home/slitaz/src /home/slitaz/packages"
108 # Old way/tazwok compatibility.
109 BUILD_HOST="$HOST_SYSTEM"
110 SOURCES_REPOSITORY=$SRC
112 # Maximum log size in MB per receipt function call (unset it to disable)
113 DEFAULT_LOG_LIMIT=50