Commit Graph

908 Commits

Author SHA1 Message Date
Tee KOBAYASHI
653a110ddb termux_step_setup_toolchain: -fPIC should be in CFLAGS 2021-12-05 11:52:23 +02:00
Leonid Pliushch
82a78ca781
build-package.sh: fix undefined AR variable
Building metapackages doesn't involve setup of compiler toolchain,
so certain variables are not set. In general, it was not expected
that package archive generation will use utilities that come with
cross-compiler as this functionality should rely on utilities
installed by host package manager.

/home/builder/termux-packages/scripts/build/termux_step_create_debian_package.sh: line 49: AR: unbound variable
2021-12-04 10:37:55 +02:00
Leonid Pliushch
758ec3a929
generate-bootstraps.sh: don't pull game-repo 2021-12-02 11:00:22 +02:00
Tee KOBAYASHI
d36fd6b8f8 Globally set confvar gl_cv_func_wcrtomb_works=yes 2021-11-29 09:26:02 +01:00
Lucy Phipps
369d15f4ef
ndk-patches: disable AT_EACCESS
https://android.googlesource.com/platform/bionic.git/+/refs/tags/ndk-r23b/libc/bionic/faccessat.cpp#50
2021-11-29 07:58:58 +00:00
Yaksh Bariya
74a5fbc577
cmake: bump to 3.22.0 2021-11-28 16:05:05 +05:30
Leonid Pliushch
ee8feaeb36
docker image: install the latest lts version of nodejs 2021-11-27 14:33:31 +02:00
Yonle
6da988cb1a meson: Bump 0.90.1 2021-11-27 09:52:19 +05:30
xtkoba
7c228b846e
ndk-patches: Add IFTODT and DTTOIF to dirent.h (#8041)
ndk-patches: Add IFTODT and DTTOIF to dirent.h
2021-11-23 10:12:17 +01:00
Yaksh Bariya
4d27b8efbd
gn: Bump to latest 20211116 2021-11-22 07:09:18 +05:30
Henrik Grimler
96dd5b5f96
Remove unstable-repo from list of repos
It has been merged with main repo so no need to look for package
dependencies in it.
2021-11-14 20:58:36 +01:00
Butta
034874f693 build-package: switch the archiver for debian packages over to the one from the NDK, which gets on-device builds working again
Also, remove the binutils-gold dependency for on-device builds, since we switched
everything over to lld now, just like the latest NDK 23.
2021-11-14 12:42:51 +05:30
Oskar
a6b59d4792
golang: update to 1.17.3 (#7928) 2021-11-04 20:35:46 +01:00
Lucy Phipps
b612321109
librav1e: update to 0.5.0 2021-11-02 20:22:18 +00:00
Ivan Max
6aadac515d Fixed versions for pacman packages
Closes https://github.com/termux/termux-packages/pull/7919
2021-11-02 21:41:45 +02:00
Lucy Phipps
ee97e92bfa
ac_cv_func_endpwent=yes 2021-11-01 09:41:43 +00:00
Ian Hu
5a5c68fa27 update protoc-3.19.1-linux-x86_64.zip sha256 2021-10-29 11:13:45 +02:00
Leonid Pliushch
6572b28692
build-package.sh: introduce TERMUX_PKG_NO_SHEBANG_FIX
This variable will disable shebang fixing during massage step. Normally
such fix shouldn't be disabled, but there are packages where it causes
a huge overhead and is not needed anyway.

Packages that are known to be affected by overhead and take long time
for building:

 * papirus-icon-theme from x11-packages
2021-10-25 12:52:36 +03:00
Henrik Grimler
0816c82b13
termux_get_repo_files: remove some identation
To make script easier to read. Also use local vars to not have to
repeat some of the long paths to RELEASE/PACKAGES files.
2021-10-24 18:46:34 +02:00
Henrik Grimler
8796b282e1 extract_dep_info: init. TERMUX_PKG_PLATFORM_INDEPENDENT to false
Otherwise we run into problems when building arch-independent packages
that depend on arch-dependent packages, for example perl packages like
parallel.  Before, when downloading the perl dependency it then
believed perl to be arch-independent.
2021-10-24 18:09:04 +02:00
Henrik Grimler
611c40a283 setup_toolchain: specify NM as well 2021-10-24 13:22:40 +02:00
Henrik Grimler
f167d07541
termux_step_setup_toolchain: export PKG_CONFIG and PKGCONFIG
Ghostscript uses the latter one in its configure script.
2021-10-24 08:03:58 +02:00
Henrik Grimler
d5ba6ecc6b toolchain: fix broken as symlinks in r23b
r23b was suppose to fix so that -fno-integrated-as worked again (which
libx265 needs for example), but the symlinks added point towards an
absolute path in /buildbot/src/android/ndk-release-r23 instead of to
../../bin/. Re-create symlinks with correct destination.
2021-10-23 15:57:11 +02:00
Lucinda May Phipps
9d020f82ec
properties.sh: notes for next ndk update
we forgot to reset the revision numbers this time
2021-10-23 13:55:04 +01:00
Lucy Phipps
2a62732791
termux-elf-cleaner: update to 1.10 2021-10-23 09:47:06 +01:00
Henrik Grimler
6a86fd8b28 ndk: update to r23b
Includes fix for -fno-integrated-as flag, which is needed by libx265
build.
2021-10-22 23:05:45 +02:00
Henrik Grimler
8c1a1b4ba5 termux_step_setup_toolchain: do not add prefix to pkg-config
And create the pkg-config wrapper inside termux_setup_toolchain.
2021-10-22 23:05:45 +02:00
Henrik Grimler
307ffe5a90 termux_setup_standalone_toolchain: remove one indentation level 2021-10-22 23:05:45 +02:00
Henrik Grimler
3f3e2ce49f termux_step_setup_toolchain: print info about applied ndk-patch 2021-10-22 23:05:45 +02:00
Henrik Grimler
a465f14c90 Update to use android-ndk r23 2021-10-22 23:05:45 +02:00
Henrik Grimler
a75de594ba
termux_setup_protobuf: update checksum 2021-10-21 08:39:45 +02:00
ifurther
8a16ae9755 add wget for ubuntu 2021-10-13 11:28:36 +02:00
Ian Hu
b74407193e fix termux_setup_protobuf with new checksum 2021-10-10 17:49:20 +02:00
Oskar
374a950dae
golang: update to 1.17.2 (#7706) 2021-10-09 00:37:06 +03:00
Leonid Pliushch
653d72b8cf
build-package.sh: use cloudflare-backed package host 2021-10-08 23:54:38 +03:00
Lucy Phipps
162b07ad19
setup-ubuntu.sh: python: rm 3.7, 3.8, 3.10-full
i.e. use only lightweight 3.9 and 3.10
2021-10-06 20:21:11 +01:00
Lucy Phipps
e644c07401
setup-ubuntu.sh: install pip if using deadsnakes 2021-10-06 01:23:00 +01:00
Lucy Phipps
20f6decc7c
setup-ubuntu.sh: use python3.10-full 2021-10-05 17:24:38 +01:00
Lucy Phipps
0255ee9793
fix Dockerfile and setup-ubuntu.sh 2021-10-05 16:40:30 +01:00
Lucy Phipps
f73a3fb45f
setup-ubuntu.sh: fix when missing lsb_release 2021-10-05 16:26:38 +01:00
Lucy Phipps
2291a2c5b8
setup-ubuntu.sh: apt update after ppa 2021-10-05 15:18:27 +01:00
Lucy Phipps
d0f2ed7137
setup-ubuntu.sh: use deadsnakes/ppa if needed 2021-10-05 13:25:29 +01:00
Lucy Phipps
b4b985718b
docker image: install python 3.10 2021-10-05 11:59:08 +01:00
Leonid Pliushch
74e4f276c6
scripts: move script for updating packages to bin directory 2021-10-04 13:22:07 +03:00
Leonid Pliushch
ed9b855275
auto updates: get rid of github-projects.txt
From now, all configuration related to automatic updates should be done
in build.sh scripts.

It requires specifying at least

 TERMUX_PKG_AUTO_UPDATE=true

which indicates that package is eligible for automatic updates, and
optionally

 TERMUX_PKG_AUTO_UPDATE_TAG_REGEXP="$version_regexp"

which specifies a regular expression used to extract the version part
from Git tag.
2021-10-04 13:17:04 +03:00
Ian Hu
4a1895e7f5
auto updates: stop running update tests if received null value from api (#7619)
When this happens, it's time to update github-projects.txt.
2021-09-30 13:34:16 +03:00
Ian Hu
f3a4a04d1e
auto updates: add php-apcu and php-zephir-parser (#7616) 2021-09-29 13:26:08 +03:00
Leonid Pliushch
b984aaf99f
build-package.sh: subpackages should use TERMUX_SUBPKG_GROUPS 2021-09-28 18:24:07 +03:00
Ivan Max
5465f29528
build-package.sh: introduce TERMUX_PKG_GROUPS for pacman packaging format (#7609)
This metadata field allows to define groups to which the given packages belong.

See https://wiki.archlinux.org/title/Pacman#Installing_package_groups
2021-09-28 12:48:55 +03:00
Ivan Max
a522f80f0f
build-package.sh: correct version info for pacman package format (#7605) 2021-09-27 12:02:40 +03:00
Ivan Max
3f0a61c2f0
build-package.sh: pacman format: transform package version containing letters (#7597)
Example: 1.0.0a --> 1.0.0.a
2021-09-25 11:19:59 +03:00
Jeeva K
fc285d3366 update cpu_family to aarch64 accordingly 2021-09-24 14:00:18 +03:00
Leonid Pliushch
58364af329
auto updates: fix version detection for libdispatch 2021-09-22 18:15:40 +03:00
Leonid Pliushch
fc12c1c122
auto updates: fix github-projects.txt 2021-09-22 18:08:56 +03:00
Leonid Pliushch
97b17a26a4
check-updates.sh: update error message 2021-09-22 18:08:29 +03:00
Leonid Pliushch
619960c7e8
check-updates.sh: avoid silent error exit 2021-09-22 18:07:31 +03:00
Leonid Pliushch
404a4f5cfe
check-updates.sh: return meaningful error when failed to get the latest version 2021-09-22 18:03:27 +03:00
Leonid Pliushch
ad35391987
scripts/bin: remove unused script update-whatprovides-db 2021-09-20 19:11:12 +03:00
Leonid Pliushch
3871376858
scripts/bin: disable pager for git in revbump and update-checksum 2021-09-20 19:10:32 +03:00
Henrik Grimler
26da480d36 build-package: mv code for creating llvm-config
After https://github.com/termux/termux-packages/commit/e34ae5da030d,
llvm-config was created before termux_step_get_dependencies, meaning
that it gets overwritten if libllvm is installed.

Fix this by creating llvm-config in a new function
termux_step_override_config_scripts, that is run right after
termux_step_get_dependencies.
2021-09-17 12:02:53 +02:00
Henrik Grimler
18a289c785 setup-archlinux: aerc needs scdoc 2021-09-17 11:06:53 +02:00
Henrik Grimler
23c34dde70 setup distro scripts: sort packages alphabetically 2021-09-17 11:06:53 +02:00
Henrik Grimler
70ee9001e4 termux_setup_protobuf: fix checksum after protobuf update 2021-09-16 22:01:20 +02:00
Yaksh Bariya
5c242cdbea gn: Bump to latest commit 2021-09-16 18:53:22 +01:00
Lucinda May Phipps
2c8664a2f5
add libcurl to automatic updates 2021-09-15 11:40:27 +01:00
Ivan Max
925273464b
build-package.sh: avoid dashes in version field for pacman package format (#7525) 2021-09-14 12:36:23 +03:00
Oskar
8a780c7c7e
golang: upgrade to 1.17.1 (#7416) 2021-09-13 17:50:02 +01:00
Leonid Pliushch
07852c874b
build-package.sh: allow to select package formats between debian and pacman 2021-09-10 19:55:28 +03:00
Butta
a8be1327f1 automatic updates: add kak-lsp 2021-09-07 22:49:29 +05:30
Henrik Grimler
1c272f516b build-package: use xz compression for control archives (again)
All packages that have conffiles, and a gz compressed control.tar.gz,
currently fails to install on arm if the deb is built locally or
downloaded and then installed with `apt install
./foo_1.0_arm.deb`. The error looks like:

    $ apt install ./tmp/foo.deb
    Reading package lists... Error!
    E: Tar checksum failed, archive corrupted
    E: Could not read meta data from
/data/data/com.termux/files/home/tmp/foo.deb
    E: The package lists or status file could not be parsed or opened.

If the package does not have conffiles, or if xz compression is used,
everything works. Let's change back to xz compression for all new and
updated packages for now to workaround this issue.

Even if `apt install ./foo.deb` fails the deb can still be installed
with `dpkg -i ./foo.deb` (seems dpkg does not do the same checksum
check?).
2021-09-05 21:35:12 +02:00
Further
a250800247
docker image: install rsync (#7461) 2021-09-03 23:02:53 +03:00
YAKSH BARIYA
2d38944910
new package: gn (#7290) 2021-09-03 20:46:03 +03:00
Henrik Grimler
e6239bb81c build-package: delete old $PREFIX ealier in build
Currently there is a problem building packages that use *-config
scripts (for example gnupg), we are creating a
/bin/sh->/data/data/com.termux/files/usr/bin/sh symlink so that the
shebang for the scripts can be interpreted, but after
ecd214881a ("build-package: add new arg -c for "continue build"") the
symlink was deleted in termux_step_get_dependencies.
2021-09-03 17:56:57 +02:00
Butta
da42afeb7a termux_step_patch_package: apply patches in alphabetical order
Before 32c67fa, patches were applied in alphabetical order, which some packages
like swift relied on, so go back to that.
2021-09-02 21:13:58 +05:30
Yaksh Bariya
c70f3b4efa cmake: Bump to 3.21.2 2021-09-01 21:56:25 +05:30
Henrik Grimler
32c67fa030 termux_step_patch_package: add support for on device patches
Name a patch *.patch.ondevice for it to only be applied when building
on device.

This can be useful if for example a tool for building documentation is
missing on device, or if a tool needed during build (but not runtime)
uses something that triggers selinux, fdsan or some other android
security thing.
2021-09-01 11:12:24 +02:00
Leonid Pliushch
d519fd17a5
automatic updates: remove htop-legacy
This package isn't meant to be updated.
2021-08-30 11:15:56 +03:00
Henrik Grimler
b782c7da0e toolchain: add -fPIC to CPPFLAGS for i686
When adding this, we go from compiling with

  /home/builder/.termux-build/_cache/android-r21d-api-24-v4/bin/clang++ [...] -mrelocation-model pic -pic-level 2 -pic-is-pie [...]

to

  /home/builder/.termux-build/_cache/android-r21d-api-24-v5/bin/clang++ [...] -mrelocation-model pic -pic-level 2 [...]

Before, we got a warning when compiling libandroid-spawn:

  /home/builder/.termux-build/_cache/android-r21d-api-24-v4/bin/../lib/gcc/i686-linux-android/4.9.x/../../../../i686-linux-android/bin/ld: warning: shared library text segment is not shareable

and trying to use a program linked against libandroid-spawn gave an
error, see
https://github.com/termux/termux-packages/issues/7215#issuecomment-906154438
the Without this, libraries might end up with text relocations. For
some reason it does not seem to be an issue on the other arches.

%ci:no-build
2021-08-27 10:02:20 +02:00
Leonid Pliushch
8d4cdb47fb
docker image: install libwayland-dev and wayland-scanner++ 2021-08-26 15:48:11 +03:00
Henrik Grimler
b5821cbf80 termux_step_setup_build_folders: create more cache folders
Should have been added in 05728b58e5.
2021-08-25 22:38:00 +02:00
Henrik Grimler
05728b58e5 termux_get_repo_files: do not create folders
This has already been done in termux_step_setup_build_folders. Doing
it here causes problems, after
ecd214881a
as BUILDDIR now might be SRCDIR, which should
not be created as it breaks zip extraction.
2021-08-25 21:41:56 +02:00
Henrik Grimler
6445645d7e build-package: mv code for setting up src and build to to its own function
%ci:no-build
2021-08-24 21:40:46 +02:00
Henrik Grimler
12e395d3a9 step_configure_cmake: mv cmake and ninja setup functions to step_configure
Only keep actual configure steps in termux_step_configure_cmake. This
way we can skip termux_step_configure_cmake on a continued build.
2021-08-24 21:40:46 +02:00
Henrik Grimler
3407018962 build-package: error if hostbuilt tools are missing 2021-08-24 21:40:46 +02:00
Henrik Grimler
ecd214881a build-package: add new arg -c for "continue build"
As replacement for TERMUX_PKG_QUICK_REBUILD. Running
./build-package.sh -c <package> starts a build for <package>, but does
not extract and patch the source from scratch. Instead it sets up the
build variables and starts from termux_step_make.

When working on a big package that can take hours to build it is
convenient to be able to build until there is an error, then apply
some new patch (manually) to the source, and then continue from where
the build failed.
2021-08-24 21:40:46 +02:00
Henrik Grimler
4f8d054066 Revert "termux_step_create_datatar.sh: add data/ to tar instead of ./"
Unfortunately this does not play nicely with aptly, see
https://github.com/termux/termux-packages/pull/7335#issuecomment-904202191.

This reverts commit b7e6ef99702aea61cd8baedd0c7ef315c35ab30c.
2021-08-24 13:30:52 +02:00
Henrik Grimler
c5e4480515 Revert "termux_create_subpackages: add data/ to tar instead of ./"
Unfortunately this does not play nicely with aptly, see
https://github.com/termux/termux-packages/pull/7335#issuecomment-904202191.

This reverts commit b8e2bdf853.
2021-08-24 13:30:20 +02:00
Henrik Grimler
b8e2bdf853 termux_create_subpackages: add data/ to tar instead of ./
Follow-up on b7e6ef99702aea61cd8baedd0c7ef315c35ab30c, forgot about
the subpackages in that one.
2021-08-24 07:05:13 +02:00
Henrik Grimler
23530a540c build-package: create timestamp file after get_dependencies
Fixes issue introduced in e34ae5da03.
2021-08-21 22:37:51 +02:00
Henrik Grimler
23e760143b termux_step_start_build: get llvm version in standard way
And fix indentation, and remove echo of llvm version.
2021-08-21 21:04:43 +02:00
Henrik Grimler
0c8a398d0e termux_step_start_build: remove some extra spaces 2021-08-21 20:59:24 +02:00
Henrik Grimler
e34ae5da03 build-package: mv code for getting deps out of step_start_build
Into new function termux_step_get_dependencies.
2021-08-21 20:59:24 +02:00
Henrik Grimler
2c70621a98 build-package: rename TERMUX_DEBUG to TERMUX_DEBUG_BUILD
To make it more self-explanatory.
2021-08-21 20:55:57 +02:00
Henrik Grimler
ea1772da55 termux_step_setup_variables: sort variables alphabetically 2021-08-21 20:54:44 +02:00
Oskar
ed869e42dc
golang: revert to 1.16 (#7373)
Issue: https://github.com/termux/termux-packages/issues/7356
2021-08-21 16:58:27 +03:00
Oskar
a353946fc5
golang: update to 1.17 (#7345) 2021-08-17 23:31:46 +01:00
Henrik Grimler
ec352dd663 termux_download: don't warn if SKIP_CHECKSUM is passed 2021-08-17 15:22:46 +02:00
Leonid Pliushch
fbcbedfd9b generate-bootstraps.sh: handle paths without ./ prefix 2021-08-17 15:22:18 +02:00
Henrik Grimler
bd6bc93daf termux_step_start_build: strip prefixed ./ if found
All, or at least most, of our debs contain "./" as a folder. This
causes problems when extracting on some systems, as ./ then is the
system root directory /, and tar cannot change the permissions of this
folder.  Trying to build on arch for example gives:

    tar: .: Cannot change mode to rwxr-xr-x: Operation not permitted
    tar: Exiting with failure status due to previous errors

The issue appeared on arch somewhat recently, maybe with tar 1.33. To
avoid having to rebuild all packages we now handle both data.tar.xz
types, with prefixed ./, and without.

Also remove some indentation levels while we are at it.
2021-08-17 15:22:18 +02:00
Henrik Grimler
854bd813f4 termux_step_create_datatar.sh: add data/ to tar instead of ./
This avoids "./" being part of the tar. "./" translates to the
systemroot / when we extract, and this is problematic since tar cannot
change permissions and ownerships of this folder. tar 1.34 gives an
error:

    tar: .: Cannot change mode to rwxr-xr-x: Operation not permitted
    tar: Exiting with failure status due to previous errors

when we try to extract the data.tar.xz.
2021-08-17 15:22:18 +02:00