Commit Graph

279 Commits

Author SHA1 Message Date
Leonid Pliushch
0d53b9abe1 package uploader: keep old versions currently, always replace deb files with same name
It seems that metadata generation take about 40 seconds.
If we submit a new version of package with deleting previous one, users
will observe 404 errors until new metadata will be published.
2019-03-13 17:53:07 +02:00
Leonid Pliushch
c091cdc962 termux-elf-cleaner: update to v1.5
Now it no longer removes GNU version sections.
2019-03-12 14:20:07 +02:00
Leonid Pliushch
391d0b2808 fast-build mode: use termux_download function for downloading 'Release'
Addition for cada4be0d87bc4bf8559f08304d6051624d43737.

Release file may not exist too when metadata generation is in progress,
so we may need to do several tries to download file.
2019-03-12 01:41:40 +02:00
Leonid Pliushch
4ce0e267d0 package uploader: skip packages with custom licenses
Try to detect packages with custom licenses and just skip them
so upload of other packages will be finished successfully.
2019-03-11 20:39:45 +02:00
Leonid Pliushch
9ca57fbef1 fast-build mode: do not rely on gpg when verifying metadata
If previous build create metadata generation job, the repository will be left in
unsigned state for up to 5-20 seconds. We cannot do anything with this as how
Bintray works. When this case happens, signature checks will fail causing build
failure.

See https://gitlab.com/termux-mirror/termux-packages/-/jobs/175356747.

For now, gpg checks are permanently disabled. When a better solution will be
found, feel free to revert this commit.
2019-03-11 18:04:56 +02:00
Leonid Pliushch
398192d4dc package_uploader.sh: check for dependencies before running 2019-03-11 16:00:56 +02:00
Leonid Pliushch
5a24ad3ee0 package_uploader.sh: use more generic bash path for shebang
Fixes error when trying to execute script on NixOS.
2019-03-11 15:55:32 +02:00
Tom Yan
596c8c85da Simplify libc++ setup
As clang++ in the NDK defaults to libc++ since r17, we no longer
need to fake a libstdc++.so at build time (and omit it from the
libc++ package we ship).
2019-03-11 16:33:12 +08:00
Fredrik Fornwall
77d5eb17cf Avoid meson stripping DT_RUNPATH
See #3490.
2019-03-10 23:58:37 +01:00
Fredrik Fornwall
e9d3fcea4c Fix DT_RUNPATH for rust-using packages
See #3490.
2019-03-10 23:33:24 +01:00
Fredrik Fornwall
73ec719d77 Set CGO_LDFLAGS="$LDFLAGS" for go packages
This should add DT_RUNPATH. See #3490.
2019-03-10 22:27:52 +01:00
Leonid Pliushch
2d66d967eb termux_step_setup_variables.sh: fix gpg keys 2019-03-10 21:46:41 +02:00
Leonid Pliushch
f195bf598d package uploader: improve searching of subpackages
Handle cases where package directory is actually symlink.
2019-03-10 15:47:43 +02:00
Leonid Pliushch
d22ac1b2fb fast-builds: switch to bintray url 2019-03-10 15:42:58 +02:00
Leonid Pliushch
d450e6af8f build-package.sh: create dummy libutil.so which links to libc
Replace libutil.so with linker script so we don't have to patch
each program that tries to link with libutil.so.
2019-03-10 15:42:58 +02:00
Leonid Pliushch
310e65e586 package uploader: add support for keeping previous versions, update help info, rename script 2019-03-10 15:41:38 +02:00
Leonid Pliushch
db159bdc3b add package uploading script
This script can be used either manually or by CI to
upload packages to Bintray.
2019-03-10 15:41:38 +02:00
Leonid Pliushch
c508560e40 build-package.sh: enable use of DT_RUNPATH, set minimal API level to 24 2019-03-10 15:41:38 +02:00
Henrik Grimler
5920f3dc5a termux_create_subpackages: support TERMUX_SUBPKG_BREAKS 2019-03-07 20:37:47 +01:00
Henrik Grimler
d30227669f build-package: mv code for creating subpackages to new file 2019-03-07 20:35:32 +01:00
Fredrik Fornwall
30c73290b6 go: Update from 1.11.5 to 1.12 2019-03-06 22:57:26 +01:00
Fredrik Fornwall
f488461a11 Merge pull request #3448 from Grimler91/jq
setup-ubuntu.sh: add jq and remove debdiff
2019-03-06 22:39:11 +01:00
Leonid Pliushch
44d28f9f88 build-package.sh: prevent parallel runs in the same environment
Avoid corruption of the build environment if build-package.sh was
executed in 2 parallel sessions.
2019-03-06 17:01:19 +02:00
Leonid Pliushch
9fe4647cda fast-builds: do not rely on bootstrap archives
Reasons:

 * they may contain outdated packages
 * they are redundant
 * they may not exist for target repository (e.g. if building for non-termux.net)
2019-03-06 16:04:08 +02:00
Henrik Grimler
69eb7a1299 setup-ubuntu.sh: add jq and remove debdiff 2019-03-04 22:08:56 +01:00
Leonid Pliushch
858c73d75a termux-elf-cleaner: update to v1.4
Provides fix for Android 5.
2019-03-04 14:58:10 +02:00
Leonid Pliushch
4d5adae680 update scripts for continuous integration
Keep bare minimum of scripts & configuration files for CI.

Set Travis target language to generic, remove 'Gemfile' and
'Rakefile' since we building *.deb packages and not ruby ones.
Code that determining changes in git repository is reimplemented
in bash.

Disabled packages are excluded from CI tracking as they frequently
cause errors.
2019-03-04 03:53:21 +02:00
Henrik Grimler
f6164ddd7e termux_download_deb: check that Packages exist before reading hash 2019-03-03 13:27:47 +02:00
Henrik Grimler
2273e3f2a2 build-package: stop build if buildorder.py returns error 2019-03-03 13:27:47 +02:00
Henrik Grimler
531956ce02 build-package: call termux_get_repo_files in termux_step start_build
Prevents unnecessary re-downloads of repo files.
2019-03-03 13:27:47 +02:00
Henrik Grimler
530eddf30a build-package: add new env. var. TERMUX_PACKAGES_DIRECTORIES
Can be set to the path to packages/ directories in other repos (like
unstable-package/packages/, termux-root-packages/packages/,
..). buildorder.py then searches these directories for packages and
dependencies
2019-03-03 01:40:22 +02:00
Henrik Grimler
10fdf172d5 build-package: download dependencies recursively when fast-building
Use scripts/buildorder.py with a new -i flag to get all dependencies
(including subpackages). The script now also spits out both package
name and package dir, to make it easier to build packages from another
repo.
2019-03-03 01:40:22 +02:00
Henrik Grimler
379f2452f3 build-package: remove termux_step_compare_debs 2019-03-03 01:40:22 +02:00
Fredrik Fornwall
bf564bde66 Use meson version 0.49.2 2019-03-01 23:32:15 +01:00
Fredrik Fornwall
73f4a8dbdb Use specific version when setting up rust
This makes for more reproducible builds.
2019-03-01 21:36:43 +01:00
Henrik Grimler
a5956bf91e termux_step_start_build: handle failed subpackage downloads
Build parent package instead of trying to build the subpackage.
2019-03-01 14:21:42 +02:00
Henrik Grimler
5f7c735734 termux_step_compare_debs: fix subpackage comparison 2019-02-28 01:50:53 +02:00
Henrik Grimler
67d79e8b92 build-package: mv termux_step_finish_build to scripts/build/ 2019-02-27 21:59:08 +02:00
Henrik Grimler
90138a3a69 build-package: mv termux_step_compare_debs to scripts/build/ 2019-02-27 21:59:08 +02:00
Henrik Grimler
8be8c3a2d6 build-package: mv termux_step_create_debfile to scripts/build/ 2019-02-27 21:59:08 +02:00
Henrik Grimler
586e8709fd build-package: mv termux_step_create_datatar to scripts/build/ 2019-02-27 21:59:08 +02:00
Henrik Grimler
a30a61d417 build-package: mv termux_step_massage to scripts/build/ 2019-02-27 21:59:08 +02:00
Henrik Grimler
9f5ba4bcc6 build-package: mv termux_step_extract_into_massagedir to scripts/build/ 2019-02-27 21:59:08 +02:00
Henrik Grimler
617764f4f4 build-package: mv termux_step_make_install to scripts/build/ 2019-02-27 21:59:08 +02:00
Henrik Grimler
d0db5e647b build-package: mv termux_step_make to scripts/build/ 2019-02-27 21:59:08 +02:00
Henrik Grimler
46f4e306fd build-package: mv termux_step_configure to scripts/build/configure/ 2019-02-27 21:59:08 +02:00
Henrik Grimler
9e04fe1434 build-package: mv termux_step_configure_meson to scripts/build/configure/ 2019-02-27 21:59:08 +02:00
Henrik Grimler
74f09e886b build-package: mv termux_step_configure_cmake to scripts/build/configure/ 2019-02-27 21:59:08 +02:00
Henrik Grimler
0bb1da3146 build-package: mv termux_step_configure_autotools to scripts/build/configure/ 2019-02-27 21:59:08 +02:00
Henrik Grimler
38d3f22377 build-package: mv termux_step_replace_guess_scripts to scripts/build 2019-02-27 21:59:08 +02:00
Henrik Grimler
5389a1a4e2 build-package: mv termux_step_patch_package to scripts/build/ 2019-02-27 21:59:08 +02:00
Henrik Grimler
63fdeada9b build-package: mv termux_step_setup_toolchain to scripts/build/ 2019-02-27 21:59:08 +02:00
Henrik Grimler
3e088d12f7 build-package: mv termux_step_extract_package to scripts/build/ 2019-02-27 21:59:08 +02:00
Henrik Grimler
0b9109238a build-package: mv termux_step_start_build to scripts/build/ 2019-02-27 21:59:08 +02:00
Henrik Grimler
68166e9b62 build-package: mv termux_step_get_repo_files to scripts/build/ 2019-02-27 21:59:08 +02:00
Henrik Grimler
7ca66e6589 build-package: mv termux_download_deb to scripts/build/ 2019-02-27 21:59:08 +02:00
Henrik Grimler
3e70f419a1 build-package: mv termux_extract_dep_info to scripts/build/ 2019-02-27 21:59:08 +02:00
Henrik Grimler
8ae7c5ef86 build-package: mv termux_step_handle_buildarch to scripts/build/ 2019-02-27 21:59:08 +02:00
Henrik Grimler
063eaac334 build-package: mv termux_setup_variables to scripts/build/ 2019-02-27 21:59:08 +02:00
Henrik Grimler
7eab83459f build-package: mv termux_step_handle_arguments to scripts/build/ 2019-02-27 21:59:08 +02:00
Henrik Grimler
55e037366d build-package: mv termux_setup_cmake to scripts/build/setup 2019-02-27 21:59:08 +02:00
Henrik Grimler
4df44858f6 build-package: mv termux_setup_meson to scripts/build/setup 2019-02-27 21:59:08 +02:00
Henrik Grimler
6888baf268 build-package: mv termux_setup_ninja to scripts/build/setup 2019-02-27 21:59:08 +02:00
Henrik Grimler
2bd607112b build-package: mv termux_setup_rust to scripts/build/setup 2019-02-27 21:59:08 +02:00
Henrik Grimler
7eb7ad6617 build-package: mv termux_setup_golang to scripts/build/setup 2019-02-27 21:59:08 +02:00
Henrik Grimler
a927332bd9 build-package: mv termux_download to scripts/build/ 2019-02-27 21:59:08 +02:00
Henrik Grimler
f36687b8e7 build-package: mv termux_step_host_build to scripts/build/ 2019-02-27 21:59:08 +02:00
Henrik Grimler
d159e59699 build-package: mv termux_step_handle_hostbuild to scripts/build/ 2019-02-27 21:59:08 +02:00
Henrik Grimler
c0b579ed14 build-package: mv termux_error_exit to scripts/build/ 2019-02-27 21:59:08 +02:00
Leonid Pliushch
03fcde2750 scripts/run-docker.sh: use sudo for privileged operations (when changing uid/gid) 2019-02-25 02:12:51 +02:00
Wetitpig
45eb50aa77 Remove relevant instructions 2019-02-24 21:08:38 +02:00
Wetitpig
5bbab4a259 Switch User in Docker 2019-02-24 21:08:38 +02:00
its-pointless
0320a92780 fix ndk versions 2019-02-24 20:39:35 +02:00
its-pointless
c1b65a538e version names change 2019-02-24 20:39:35 +02:00
Fredrik Fornwall
e520dfbe12 Initial changes for NDK r19 support 2019-02-24 20:39:35 +02:00
Henrik Grimler
07656065e3 build-package.sh: handle Release.gpg and get deb path from Package
This makes it possible to download .debs from dl.bintray.com/xeffyr
2019-02-16 18:55:15 +01:00
Wetitpig
72eaf12358 Dockerfile to tabs 2019-02-15 18:01:09 +02:00
Wetitpig
7ddcce5701 No backticks 2019-02-15 18:01:09 +02:00
Wetitpig
d50c847f11 Shell script compliance 2019-02-15 18:01:09 +02:00
Wetitpig
4e9a1891ba 3 COPY to 1 2019-02-15 17:27:41 +02:00
Leonid Pliushch
399499497c gitlab ci: remove unnecessary steps from build procedure 2019-02-11 00:19:16 +02:00
Leonid Pliushch
44535fa532 gitlab ci: download dependencies instead of building them 2019-02-10 22:06:00 +02:00
Leonid Pliushch
c39dfb60ac gitlab ci: use official Termux docker image 2019-02-10 21:57:40 +02:00
Henrik Grimler
fc91a52c96 Make it possible to download dependencies from several repositories
Only thing left to fix is so that it finds build scripts outside of packages/.
2019-02-10 12:26:32 +01:00
Henrik Grimler
fba622856c Move termux_dep_extract_info to another function
Can be used in bintray upload script to extract pkg version
2019-02-03 15:02:06 +01:00
Leonid Pliushch
bf94539c0f setup-ubuntu.sh: install "devscripts"
Makes utility "debdiff" available.
2019-01-28 14:20:45 +00:00
Henrik Grimler
c9a52d8d74 Add gnupg to docker image 2019-01-28 14:20:45 +00:00
Henrik Grimler
3d8d7411ab build-package.sh: return 1 if hashsum doesn't exist for package
When downloading depencencies
2019-01-28 14:20:45 +00:00
Henrik Grimler
645f594f4b Rename get_pkg_hash.py->get_hash_from_file.py 2019-01-28 14:20:45 +00:00
Henrik Grimler
0d6fd79726 build-package: Add signature verification and download by hash
Also rename termux_install_dep_deb to termux_download_deb.
2019-01-28 14:20:44 +00:00
Fredrik Fornwall
ca5ead6780 Update latest android platform and build-tools 2019-01-27 09:03:08 +01:00
Wetitpig
a976fd4223 Accept licenses for Android SDK 2019-01-22 22:52:35 +01:00
Henrik Grimler
db54f7de89 buildorder.py: shorten code a bit 2019-01-13 18:55:40 +01:00
Henrik Grimler
ae2bdf510a setup-archlinux: add gperf as dependency for fontconfig 2018-12-30 13:04:12 +01:00
Fredrik Fornwall
dac82cc5d4 Dockerfile: Update from ubuntu 18.04 to 18.10 2018-11-27 00:25:40 +01:00
Henrik Grimler
2fc73cef77 archlinux needs patch as well 2018-11-25 00:56:56 +01:00
Henrik Grimler
b74135c32d properties.sh: 'source'->'.' 2018-11-10 23:40:13 +01:00
Kevin Cotugno
9c1bf26e56 Build for host
This fixes the issue where clippy failed to build for arm causing that
release to be incomplete.

We remove the host files from the install directory to reduce the final
size is minimal.
2018-10-31 23:02:22 +01:00
Fredrik Fornwall
fc9fd770a4 python: Update from 3.6.6 to 3.7.1 2018-10-21 21:16:53 +02:00
Fredrik Fornwall
613a4c4dd8 Tweak repology metadata script 2018-10-14 23:14:06 +02:00