Commit Graph

103 Commits

Author SHA1 Message Date
Arne Fitzenreiter
702b59cd02 paks: fix meta size entry
remove the doublequotes around the size because pakfire not
accept this.

fixes: #12348

Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
2020-04-02 16:28:39 +00:00
Michael Tremer
258bc2e318 Config: Refactor mastering packages
Those are now created in their own temporary directory, so that
no other files can be included by accident.

We also package with fewer temporary files.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
2020-03-24 08:57:56 +00:00
Michael Tremer
cde41c2e6f Go: Cleanup Go Path after build
Go leaves temporary build files in the directory
which we do not need and we should clean up after
every build.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
2020-01-12 08:19:17 +00:00
Arne Fitzenreiter
590f879b34 python3: exclude __pycache__ from iso, core and packages
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
2020-01-11 21:22:07 +01:00
Arne Fitzenreiter
6ede197501 pathon: update to 3.8 and move pyhton to core
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
2020-01-11 14:35:11 +01:00
Michael Tremer
0bc5b1de6d Config: Disable XZ parallelism by default
Exporting XZ_OPT caused that every time xz was called, it automatically
enabled parallelism. The make systemm also launches multiple processes
at the same time to use more processor cores at the same time.

The combination of this causes memory exhaustion even on large systems
and has no performance gain. Therefore this is disabled by default
and only enabled where we need it which is already the case.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2019-05-10 04:16:08 +01:00
Michael Tremer
d53537ced9 Config: Builds don't seem to like the space
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2019-03-04 11:57:22 +00:00
Michael Tremer
7691a1bfe7 make.sh: Introduce MAX_PARALLELISM
This will now adjust MAKETUNING to not launch more processes
than MAX_PARALLELISM. Handy to limit builds that use a lot of memory.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2019-03-04 11:51:08 +00:00
Michael Tremer
77c863a2f1 make.sh: Introduce DEFAULT_PARALLELISM
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2019-03-04 11:43:47 +00:00
Arne Fitzenreiter
ebaecf2c96 Revert "make.sh: Log into subdirectory for each architecture"
This reverts commit 35ce207ff7.
2018-10-30 15:07:12 +01:00
Michael Tremer
35ce207ff7 make.sh: Log into subdirectory for each architecture
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2018-10-29 13:42:51 +00:00
Michael Tremer
b26071d378 Config: Set IS_32BIT when running on 32 bit
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2018-10-24 17:27:10 +01:00
Michael Tremer
de7c8df83e cdrom: Move list of EFI modules to lfs/cdrom
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2018-07-25 10:54:35 +01:00
Michael Tremer
a1eb776199 cdrom: Fix building GRUB image for aarch64
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2018-07-14 13:43:53 +01:00
Michael Tremer
582aba0534 Enable EFI on aarch64
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2018-07-14 13:43:51 +01:00
Michael Tremer
5f387a1b86 cdrom: Install GRUB into EFI image
This will start GRUB on EFI systems when booting from CD

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2018-07-14 13:43:50 +01:00
Michael Tremer
ba3cbb0cfb Adjust variables that have been renamed
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2018-07-14 13:43:50 +01:00
Michael Tremer
72d40cfddd Config: Have a simple configuration variable that enables EFI
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2018-07-14 13:43:50 +01:00
Matthias Fischer
c22976907e tar: Update to 1.30 (V3)
For details see:
https://www.gnu.org/software/tar/

Since new 'tar' has changes in commandline option parsing,
it was necessary to adjust 'lfs/Config, 'lfs/cdrom' and
'lfs/core-updates' (thanks to Marcel for diffs and Michael for
corrections).

I have tried to make only the most necessary changes.

As always, please check.

Best,
Matthias

Signed-off-by: Matthias Fischer <matthias.fischer@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2018-06-06 14:03:07 +01:00
Arne Fitzenreiter
a4923c7f75 Config: follow symlinks at rootfile check
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
2018-06-06 11:28:11 +02:00
Michael Tremer
0d1df90f70 Config: Add macro to update automake scripts on aarch64
Some packages ship an older version which does not recognise
aarch64. To overcome this, we just update these scripts when
necessary.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2018-05-31 11:56:28 +01:00
Michael Tremer
65a736981b Don't compress packages three times. Once is enough.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2018-05-25 18:36:37 +01:00
Michael Tremer
0054a52bd8 tar seems to ignore the XZ_OPT variable sometimes
This caused that the xz command was called without any
extra arguments. This will now create the tar archive
first and then pass the archive through xz with our
command line switches.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2018-05-21 20:59:06 +01:00
Matthias Fischer
27267889aa xz: Performance and compression tuning (V2) - fine tuning
Changes since V1:

- Tuned some more 'tar'-command lines
- Included 'lfs/core-updates'
- Some fine-tuning

Hi,

Current results with V2 (clean builds):

'next':
'packages' => 255 MB
'ipfire-2.19.2gb-ext4.i586-full-core121.img.gz => 319 MB
'ipfire-2.19.i586-full-core121.iso' => 218 MB
Total => 792 MB

'xz-tuning':
'packages' => 228 MB
'ipfire-2.19.2gb-ext4.i586-full-core121.img.gz' => 318 MB
'ipfire-2.19.i586-full-core121.iso' => 207 MB

Total => 753 MB (-39 MB)

It would be nice if someone could review and test these. ;-)

If necessary, I can upload a complete patch.

Best,
Matthias

Signed-off-by: Matthias Fischer <matthias.fischer@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2018-05-21 20:59:06 +01:00
Matthias Fischer
0d7a6f03d4 xz: Performance and compression tuning (V1)
Hi,

as mentioned in the "list", we're trying to make the archives as small as possible
using 'xz'-compression.

In order to achieve this, this patch tests the size of the memory available on the
host system.

It sets the xz-memory-limit (--memory=[N]Mib) to 70% of the available working memory,
a maximum of four xz-'worker threads' (-T4) and a compression rate of '-8' (-8).

These options are written to the 'XZ_OPT=' environment.

For details see:
https://linux.die.net/man/1/xz

I have set the number of available xz-'worker threads' (-T) to four (-T4), because during
the final tests the '-T0' parameter led to error messages snd stopped: 'cannot allocate memory'.
It wouldn't even run with 90%.

Furthermore, testing with '-T0' led to countless messages filling  up '_build.packages.log'.

E.g.:
...
xz: Adjusted the number of threads from 8 to 2 to not exceed the memory usage
limit of 1557 MiB
...

Tests took place on a 32bit-Ubuntu 16.04.4-system with 8 GB RAM and an Intel I7-2600.
Build time was about 04:30 hrs. Perhaps a 64bit-system would perform better (higher
values), but my goal was to make this run on as many systems as possible, so I choosed
these averages.

If minimum requirements (1024 MB RAM) are not met, building stops.

Current results:

'next', untuned:
ipfire-2.19.2gb-ext4.i586-full-core121.img.gz	=> 332951687 Bytes
ipfire-2.19.i586-full-core121.iso		=> 228589568 Bytes

'next', XZ_OPT: -T4 -8, 70% RAM:
ipfire-2.19.2gb-ext4.i586-full-core121.img.gz	=> 329725723 Bytes
ipfire-2.19.i586-full-core121.iso		=> 217055232 Bytes

These two resulting archives are 14760300 Bytes smaller than before.

Best,
Matthias

Signed-off-by: Matthias Fischer <matthias.fischer@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2018-05-21 20:59:06 +01:00
Michael Tremer
c0878e43e1 Config: Set PREFIX either to TOOLS_DIR or /usr
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2018-02-11 20:56:12 +00:00
Michael Tremer
6c4cc7ea1b Move toolchain from /tools to /tools_${arch}
This will allow us to run multiple builds on the same
system at the same time (or at least have them on disk).

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2017-11-23 15:57:28 +00:00
Michael Tremer
f1effdf758 make.sh: Drop option to generate a source ISO
This is a very weird way to distribute sources in 2017.
Let's save the environment and stop using CDs.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2017-11-23 15:55:05 +00:00
Michael Tremer
348ba8e2c5 Revert "Use best XZ compression for smaller images and packages"
This reverts commit 5fd54721c2.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2017-10-18 12:35:19 +01:00
Michael Tremer
9dcfcb0039 Revert "cdrom: Use -8 as compression parameter"
This reverts commit 77ad762c43.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2017-10-18 12:35:04 +01:00
Michael Tremer
77ad762c43 cdrom: Use -8 as compression parameter
This is a better compromise on memory usage and file size

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2017-10-17 21:16:41 +01:00
Michael Tremer
5fd54721c2 Use best XZ compression for smaller images and packages
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2017-10-17 15:23:26 +01:00
Michael Tremer
bc9544929c packages: Compress in parallel
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2017-10-17 14:58:28 +01:00
Michael Tremer
c484679bb3 Download sources via HTTPS
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2017-10-12 15:56:34 +01:00
Michael Tremer
b7093f17d5 stage1: New build script
Creates some basic directories and symlinks in toolchain stage

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2017-05-18 12:04:20 +01:00
Michael Tremer
dc7d6b204d make.sh: Cleanup of polluted environment
The build environment is using a number of variables which
occasionally conflicted with some other build systems.

This patch cleans that up by renaming some variables and
later unexporting them in the lfs files.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2017-05-18 12:02:03 +01:00
Jonatan Schlag
38888b3d92 Add new make macro for installing initscripts
We also move the initscript for also to src/initscripts/packages
and use this new macro to install the initscript
Signed-off-by: Jonatan Schlag <jonatan.schlag@ipfire.org>
2017-02-22 12:25:42 +01:00
Arne Fitzenreiter
8a148bbc5a Config: update sourcecode upload url
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
2016-03-17 23:04:54 +01:00
Michael Tremer
86b759785b make.sh: Update source upload URL
There is no longer a SSH service on source.ipfire.org.

The usual login on git.ipfire.org should be used instead.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2016-02-24 22:12:53 -08:00
Michael Tremer
1d9be34e2a ccache: Include hash of compiler specs in hashing
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2016-01-09 19:48:48 +00:00
Michael Tremer
1b169a72da Speed up rootfile generation
The old usage of find walked through the entire filesystem tree
and excluded some paths from being printed. The more efficient
solution is to skip walking through excluded directories entirely.

This is a slight speedup of the build process by a few minutes.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2015-12-12 17:06:10 +00:00
Michael Tremer
6f67c28d99 make.sh: Remove KGCC variable.
This has been unused since a long time any way.
2014-05-24 18:22:44 +02:00
Arne Fitzenreiter
b8e2d10888 fifteen: move /var/run to /run. 2014-01-12 12:15:44 +01:00
Arne Fitzenreiter
f83650a136 paks: compress internal tar with xz. 2012-10-26 17:43:29 +02:00
Michael Tremer
f5ad8f59d2 Update linker cache after each package build and toolchain build. 2012-08-20 11:35:26 +02:00
Arne Fitzenreiter
fdf0c7c15d kernel: change selection of config to support more architectures. 2011-10-05 20:20:36 +02:00
Michael Tremer
7273a32238 Merge branch 'arm-port' of ssh://git.ipfire.org/pub/git/people/ms/ipfire-2.x into arm-port 2011-09-22 16:01:58 +02:00
Michael Tremer
5596077b8d ARM: Fix packaging of xen-image and packages. 2011-09-22 16:00:49 +02:00
Michael Tremer
32b6efe8da Remove tons of code from the buildscripts that was not used anymore. 2011-09-18 14:51:23 +02:00
Michael Tremer
56c997b225 Fix wrong varible name when searching for rootfiles. 2011-09-18 13:54:38 +02:00