Commit graph

487 commits

Author SHA1 Message Date
Oliver Smith
70a3d3b9d5
cross/*-x86_64: remove aports
These can be manually generated when one really wants to cross compile
from arm to x86_64. Usually this is not needed, so let's save the
compile time. [skip ci]
2018-11-27 07:47:11 +01:00
Oliver Smith
2e7437825b
cross/gcc*: set arch to x86_64 only
This covers most use cases and saves a lot of build time. Can be
changed on demand. Again, this simplifies package building as part of
the new build infrastructure effort. [skip ci]
2018-11-27 07:47:11 +01:00
Oliver Smith
61489b8367
cross/busybox-static-*: update to 1.29.3-r1 2018-11-27 07:47:11 +01:00
Oliver Smith
dd17dc5c06
*/gcc6*: properly regenerate aports with aportgen
I did it manually in the previous commit and replaced the wrong for
loop in gcc6-armhf. [skip ci]
2018-11-27 07:47:11 +01:00
Oliver Smith
1b78e64748
*/gcc6*: add symlinks for all binutils [skip ci]
I thought only having specific symlinks was enough, and it was for one
kernel. However, to make sure it works with all kernels, let's just add
symlinks for all the binutils.
2018-11-27 07:47:11 +01:00
Oliver Smith
7e89296ab4
*/gcc6*: bump pkgrel [skip ci] 2018-11-27 07:47:11 +01:00
Oliver Smith
4dbef543cd
*/gcc6*: add objdump symlink [skip ci]
Without this symlink, lots of messages like this one appear while
compiling kernels:

/bin/sh: gcc6-armv6-alpine-linux-muslgnueabihf-objdump: not found
2018-11-27 07:47:11 +01:00
Oliver Smith
1ffa59d892
cross/gcc-*, cross/gcc6-*: regenerate [skip ci]
GCC6 cross compiler packages, based on the latest pmbootstrap
aportgen code. Related: #103
2018-11-27 07:47:11 +01:00
Oliver Smith
479055e896
cross/busybox-*: update to 1.29.3-r0 2018-11-27 07:47:11 +01:00
Oliver Smith
56f1e0c10f
cross/gcc-*: upgrade to gcc 8.2.0 [skip ci]
Skipping CI, because it would probably not finish building all of them.
Major breakage incoming. Details discussed here:
<https://gitlab.com/postmarketOS/pmaports/issues/103>
2018-11-27 07:47:11 +01:00
Oliver Smith
022240425a
cross/binutils-*: update to 2.31.1-r1 (+ patches)
I've missed the patch files in the previous commit, my bad.

This reverts commit 71ffb78557d34408286681d03e41dc612c0b63e1.
2018-11-27 07:47:11 +01:00
Oliver Smith
17ba355220
cross/binutils-*: update to 2.31.1-r1 2018-11-27 07:47:11 +01:00
Daniele Debernardi
bbc4b6bbfe
cross/musl-armhf cross/musl-aarch64 cross/musl-x86_64: Update aports to 1.1.20-r2 2018-09-21 23:00:59 +02:00
Martijn Braam
23ba0dd94c cross/musl-x86_64: Update aports to 1.1.20-r0 2018-09-08 01:02:15 +02:00
Martijn Braam
c4132e6e37 cross/musl-armhf cross/musl-aarch64: Update aports to 1.1.20-r0 2018-09-08 00:57:53 +02:00
Oliver Smith
cf979e773a cross/binutils-*: update to upstream (2.31.1-r0) 2018-08-22 23:46:33 +02:00
Martijn Braam
feae03d4f1 aports: Updated busybox-static-aarch64 to 1.28.4-r2 for upstream compatability 2018-08-13 02:23:00 +02:00
Martijn Braam
da07c7ff06 aports: Updated busybox-static to 1.28.4-r2 for upstream compatability 2018-08-12 22:07:17 +02:00
Oliver Smith
0e65b1bff8 pmb: qemu-user-static from aport, not from Debian
Overview:
In order to execute foreign arch binaries on the host system, we are
using the Linux kernel's binfmt_misc feature in combination with
static builds of QEMU. Before this patch, the statically compiled
QEMU binaries were taken from Debian (mostly because I did not realize
that Alpine ships them as well). Now we can use the ones from the aport.

Benefits:
This allows us to easily update and patch the QEMU executables, we
don't need to be in sync with Debian's versions anymore.

Alpine's package is more modular, so we can save some download,
install, zap time, as well as disk space: setting up an armhf chroot
with pmbootstrap took ~102 MB before, now it's ~18 MB.

Detailed changes:
* Remove `cross/qemu-user-static-repack` aport
* Add `data/qemu-user-binfmt.txt` with the binfmt_misc flags for ELF
  binaries of various arches (extracted from Debian's packaging)
* When parsing that file, don't write verbose messages to
  `pmbootstrap log` anymore, only to the verbose log (can be enabled
  with `pmbootstrap -v`)
* Rename `pmb.parse.arch.alpine_to_debian()` to ...`alpine_to_qemu()`
* Rename `arch_debian` to `arch_qemu`
2018-08-10 15:11:21 +00:00
Oliver Smith
c6c8172efa cross/busybox-static-*: update to 1.28.4-r1 2018-07-22 23:17:19 +02:00
Oliver Smith
6ea553a178 cross/musl-*: update to 1.1.19-r10 2018-06-20 00:59:31 +02:00
Oliver Smith
9acbdf3175 cross/musl: update to 1.1.19-r9 2018-06-16 07:25:51 +02:00
Oliver Smith
df7ad599f1 cross/binutils-*: update to 2.30-r5 2018-06-13 02:07:07 +02:00
Oliver Smith
c4c135251a cross/binutils-*: update to 2.30-r4 2018-06-07 08:00:36 +02:00
Oliver Smith
39d62928cb cross/busybox-static-*: update to 1.28.4-r0 2018-05-30 23:44:35 +02:00
Oliver Smith
8e0f2aa4c5 cross/busybox-static-*: update to 1.28.3-r1 2018-05-28 23:51:35 +02:00
Oliver Smith
392318c1b8 cross/musl-*: update to upstream (1.1.19-r8) 2018-05-25 00:36:04 +02:00
Oliver Smith
1ed23588a3 cross/binutils-*: update to 2.30-r2 2018-05-20 20:39:56 +02:00
Oliver Smith
d20a4806d9 cross/busybox-static-*: update to 1.28.3-r0 2018-05-14 23:46:37 +02:00
Oliver Smith
a6d89192ce gcc-*: fix compiling in strict mode [skip ci] (#1468)
Due to changes in abuild, our `gcc-armhf` etc. packages did not build
when using strict mode (i.e. `pmbootstrap build --strict gcc-armhf`)
anymore.

Changes:
* Set `CBUILDDIR=/`, so apk can read a valid package index from there
* Directly set `_cross_configure`, so it does not use CBUILDDIR anymore
* Set `BOOTSTRAP="nobuildbase"` to prevent apk from installing
  `build-base-armhf` etc. (these don't exist in pmOS)
* Remove legacy code for lazy reproducible builds that wrapped
  `package()`
2018-05-13 18:30:02 +00:00
Oliver Smith
ce8475d6aa cross/binutils-*: update to upstream (2.30-r1) 2018-05-08 01:41:27 +02:00
Oliver Smith
c5f689d154 gcc-*: fix download URLs
Fix inherited from upstream by running 'pmbootstrap aportgen gcc-...'
again.
2018-05-06 11:36:37 +02:00
Oliver Smith
eb709f2450 Update binutils-* to upstream (2.30-r0) 2018-05-03 21:14:30 +02:00
Martijn Braam
471391afb8 Updated gcc-armhf, gcc-aarch64 and gcc-x86_64 to r8 (#1456) 2018-05-01 15:17:32 +02:00
Oliver Smith
97f94c593e Update musl-* to upstream (1.1.19-r7) 2018-04-11 23:45:58 +02:00
Oliver Smith
386dec5c1a Update musl-* to upstream (1.1.19-r6) 2018-04-10 22:18:07 +02:00
Decatf
eb6b3d22fe Update busybox-static-* to upstream (1.28.2-r3) (#1387) 2018-04-02 23:33:34 +02:00
Oliver Smith
eedbcf05d3 musl-*: use default Alpine mirror
Otherwise the test/test_aportgen.py case fails.
2018-03-31 20:46:39 +02:00
Oliver Smith
da846f1441 Update musl-* to upstream (1.1.19-r4) 2018-03-31 17:27:49 +02:00
Oliver Smith
25b2af90c7 Update musl-* to upstream (1.1.19-r3) 2018-03-30 23:46:45 +02:00
Oliver Smith
3ff97e906c Update busybox-static-* to upstream (1.28.2-r1) 2018-03-30 18:48:51 +02:00
Oliver Smith
e6f9e31426 Update musl-* to upstream (1.1.19-r2) 2018-03-30 18:07:04 +02:00
Oliver Smith
c300dde6a4 Update busybox-static-* to upstream (1.28.2-r0) 2018-03-28 19:35:33 +02:00
Oliver Smith
afa759414d Update busybox-static-* to upstream (1.28.1-r1) 2018-03-24 12:16:23 +01:00
Oliver Smith
d2dda897da Update busybox-static-* to upstream (1.28.1-r0) 2018-03-11 15:06:27 +01:00
Oliver Smith
fcc96b0f2d Update musl-* to upstream (1.1.19-r1) 2018-03-07 23:33:47 +01:00
Oliver Smith
7581bc0858 Update gcc-* to upstream: 6.4.0-r7 2018-02-27 23:24:21 +01:00
Oliver Smith
6fb1fd4f97 Update musl-* to upstream (1.1.19-r0) 2018-02-22 23:44:37 +01:00
Oliver Smith
e80811fa0b Bump musl-* to upstream (1.1.18-r8) 2018-02-21 19:46:06 +01:00
Oliver Smith
4b71aa8525 Update musl-* to upstream (1.1.18-r7) 2018-02-10 19:07:17 +01:00
Oliver Smith
a224919712 Update musl-* to upstream (1.1.18-r6) 2018-02-03 11:58:04 +01:00
Oliver Smith
163564f0e6 Update busybox-static-* to upstream (1.27.2-r8) 2018-01-29 20:01:24 +01:00
Daniele Debernardi
1eb6b7cbd7 Allow to build musl/binutils/gcc for x86 architecture (#1150) 2018-01-23 00:26:33 +00:00
Oliver Smith
017f0b4c3e Don't compile cross-compiler packages for the host arch
Example: Building gcc-armhf for armhf does not make sense, so this
commit changes arch="all" to arch="aarch64 x86_64". This helps to
simplify the repository scripts (#970).
2018-01-20 19:17:23 +01:00
Daniele Debernardi
de21e03333 Add qemu-user-static-repack all architectures (#1136)
Also don't build "-repack" packages in native chroot anymore.
This was a legacy hack, which has no use anymore, and it prevented
the package from being built for different architectures.
2018-01-19 21:30:16 +00:00
Daniele Debernardi
efc7fc9c57 Add musl/binutils/gcc for cross-compiling to x86_64 (#1130) 2018-01-18 21:48:04 +00:00
Oliver Smith
5f24a4447d Update musl-* to upstream (1.1.18-r5) 2018-01-06 15:37:50 +01:00
Oliver Smith
26304f0ef4 Update gcc-* to upstream 6.4.0-r6 2017-12-26 16:37:21 +01:00
Oliver Smith
672f15b68b Update musl-* to upstream (1.1.18-r3) 2017-12-21 17:55:26 +01:00
Oliver Smith
7589ce632a ccache: Fix for distcc cross-compiling / various improvements (#1026)
* ccache: Fix for distcc cross-compiling / various improvements

* Make ccache work when cross-compiling with distcc (fix #716)
* Allow to configure the ccache size in "pmbootstrap init"
* Moved ccache stats code from pmb/build/other.py to
  pmb/helpers/frontend.py
* Grouped job count, ccache size and timestamp based rebuilds
  together to "build options" and allow to skip them
* Sorted config options that had to be modified anyway
  alphabetically

* Improve comment in arch-bin-masquerade APKBUILD
2017-12-21 16:42:29 +00:00
Oliver Smith
157ecd3d67 Update busybox-static-* to upstream (1.27.2-r7) 2017-12-16 01:12:58 +01:00
Anton Lazarev
15c4e9f725 update qemu-user-static-repack (#1006) 2017-12-14 20:35:36 +00:00
Oliver Smith
d93180dbef Update busybox-static-* to upstream (1.27.2-r6) 2017-11-29 00:28:11 +01:00
Oliver Smith
534a7e1b5d Update binutils-* to upstream (2.28-r3) 2017-11-27 21:40:38 +01:00
Oliver Smith
3a92a1927a Update busybox-static-* to upstream (1.27.2-r4) 2017-11-27 21:36:38 +01:00
Oliver Smith
2eeee445b9 Update musl-* to upstream (1.1.18-r2) 2017-11-22 23:07:50 +01:00
drebrez
a95ce42a81 Update musl-* to upstream (1.1.18-r0) (#873) 2017-11-04 19:50:48 +01:00
JBB
1ecdae5ee4 Fix: #842: qemu-user-static-repack download URL didn't work (#844) 2017-10-29 14:00:02 +00:00
ajakk
1237ef25f7 Update aports for busybox-static-* (to 1.27.2-r3) (#837) 2017-10-28 19:28:28 +00:00
Oliver Smith
ffc361b821 Update musl-* to upstream (1.1.17-r2) (Fix #838) 2017-10-28 21:15:56 +02:00
Oliver Smith
e454709328 Update busybox-static-* to upstream (1.27.2-r2) 2017-10-21 15:54:19 +02:00
Oliver Smith
2e9c8a4cf7 Update musl-* to upstream (1.1.17) 2017-10-20 16:22:17 +02:00
Pablo Castellano
34de4c899f Update musl-* to upstream (#748) 2017-10-12 17:53:39 +02:00
Pablo Castellano
b8d61323f8 qemu-user-static-repack: fix download url (#728) (#730) 2017-10-09 15:33:56 +02:00
Pablo Castellano
dbbdf7cfa4 Fix #436: Clean apkbuilds (#692)
* Remove empty build() functions
* Remove obsolete '|| return 1' statements
2017-10-04 15:05:00 +00:00
Martijn Braam
4b67d15535 Update musl from upstream (#617) 2017-09-23 00:48:07 +00:00
Oliver Smith
986da4a8c2 Update musl-* to upstream 2017-08-31 01:14:08 +02:00
Oliver Smith
1198390ece Update musl-* to upstream 2017-08-26 12:47:56 +02:00
Oliver Smith
ab9dc62370 Update gcc-armhf and gcc-aarch64 to upstream 2017-08-24 23:15:14 +02:00
Oliver Smith
a65e7d034b Make gcc-aarch64 reproducible (#366)
This fixes https://github.com/postmarketOS/binary-package-repo/issues/1

GCC generates hardlinks between files `A` and `B` in its `make install` step. The problem is, that `tar` randomly packages `A` as full binary, and links `B` to `A`, or the other way around! I was able to reproduce this issue consistently when re-building `gcc-aarch64` on Travis CI (interestingly, this did not appear for `gcc-armhf`).

The fix is, to delete `B` and create a symlink `B` that points to `A` instead.
2017-08-12 14:06:02 +00:00
Oliver Smith
3e6631e1d3 Update busybox-static-* to upstream 2017-08-10 00:52:28 +02:00
Oliver Smith
79654e8e5e Fix: gcc-armhf not reproducible (#64) (#333)
libstdc++.a from gcc-armhf was not reproducible on Travis (it was, when built locally!). These .a files are just archives of object files .o, and in this case it was caused by a random order of the .o files in the archive.

This PR patches the package() function of the APKBUILD when running pmbootstrap aportgen gcc-armhf (same for aarch64 of course), to extract all .a files, and repack them to be reproducible (by sorting the files before packing them).

As usually, we can still inherit everything from the upstream gcc aport from Alpine, and apply our changes on top of that.

Travis without the patch:
https://api.travis-ci.org/jobs/260402679/log.txt?deansi=true

> CHALLENGE FAILED for usr/armv6-alpine-linux-muslgnueabihf/lib/libstdc++.a:File 'usr/armv6-alpine-linux-muslgnueabihf/lib/libstdc++.a' is different!

Travis with the patch (I've instructed Travis to run off this branch to test it):
https://api.travis-ci.org/jobs/260806203/log.txt?deansi=true

> Done. Your build exited with 0.
2017-08-04 20:38:27 +00:00
Oliver Smith
28b710c5ec Update busybox-static-* to upstream 2017-08-04 01:39:03 +02:00
Oliver Smith
94055072d4 Update busybox-static-* to upstream 2017-08-03 02:22:28 +02:00
Pablo Castellano
13eac29c0c Update musl-* to 1.1.16-r17 (#320) 2017-08-02 11:22:40 +00:00
Oliver Smith
8234cc5f2b Move two cross-packages to the cross folder 2017-07-29 01:35:53 +02:00
Oliver Smith
3e140ea690 Close #194: Aports subfolders! See migration guide in the wiki (#227)
Migration guide:
https://github.com/postmarketOS/pmbootstrap/wiki/Migration-to-aports-subfolders
2017-07-28 22:34:40 +00:00