Commit Graph

350 Commits

Author SHA1 Message Date
Leonid Pliushch
97b0f68ad8
build-package.sh: use meson 0.56.0 2020-12-08 11:02:07 +00:00
Leonid Pliushch
84c46a917a
libprotobuf: update to 3.14.0 2020-12-07 23:01:02 +00:00
Leonid Pliushch
beb0068126
ninja: update to 1.10.2 2020-12-07 22:32:01 +00:00
Leonid Pliushch
40f14b24f8
golang: update to 1.15.6 2020-12-07 20:55:56 +00:00
Leonid Pliushch
222c889551
cmake: update to 3.19.1 2020-12-07 20:26:29 +00:00
Leonid Pliushch
36a846c725 build-package.sh: do not set -Wl,-z,relro,-z,now ldflags for Golang CGO
Causes this error when building Golang projects:

 invalid flag in go:cgo_ldflag: -Wl,-z,relro,-z,now
2020-11-22 13:52:28 +00:00
Leonid Pliushch
1cff00f7cb golang: update to 1.15.5 2020-11-22 13:01:28 +00:00
Leonid Pliushch
ce27940ea1 cmake: update to 3.19.0 2020-11-22 13:01:28 +00:00
Leonid Pliushch
a8892f890a termux_step_patch_package.sh: handle new variables 2020-10-30 22:28:44 +02:00
Leonid Pliushch
a668f31128 termux_step_patch_package.sh: handle @TERMUX_APP_PACKAGE@ 2020-10-30 22:01:57 +02:00
Leonid Pliushch
a4263115fc termux_step_setup_variables.sh: no need to override home/prefix for on-device builds 2020-10-30 21:48:26 +02:00
Leonid Pliushch
7f8ee49bfc termux_step_setup_variables.sh: no need to attempt to set default prefix/home, they are set by properties.sh now 2020-10-30 21:46:29 +02:00
Leonid Pliushch
195314fe20 setup-offline-bundle.sh: add support for downloading package sources 2020-10-23 00:27:56 +03:00
Leonid Pliushch
be0b9e9331 build-package.sh: support offline preinstalled build tools
First step of making possibility to have offline snapshots of
'termux-packages' repo. Useful for making full repo snapshots.

That will allow to preinstall tools like Cmake, Go, Meson to
directory stored within packages tree and will not be wiped when
using ./clean.sh.

Next steps will also implement offlining of the package sources
and NDK standalone toolchain.
2020-10-22 22:46:02 +03:00
Henrik Grimler
e6d61103b0 golang: update to 1.15.3 2020-10-17 21:19:10 +02:00
Henrik Grimler
9c895bd45f cmake: update to 3.18.4 2020-10-17 21:02:48 +02:00
Leonid Pliushch
c80220e31d build-package.sh: make it possible to disable termux-elf-cleaner
Just set TERMUX_PKG_NO_ELF_CLEANER=true in build.sh.
2020-10-01 19:34:19 +03:00
Butta
3fe4a2ab6a nushell: update from 0.18.1 to 0.20.0, disable x86_64 because of linking issues,
and unset CFLAGS for all crates, as it was getting applied to host builds
2020-09-29 23:45:14 +05:30
Leonid Pliushch
dc1025ea5b cmake: update to 3.18.3 2020-09-23 23:56:31 +03:00
Krishna Kanhaiya
c3eb5a8313 golang: update to 1.15.2 (#5794) 2020-09-11 03:50:33 +03:00
Nuruddin Ashr
41a5d5efd6 Upgrade to go version 1.15.1 2020-09-02 12:32:12 +05:30
Leonid Pliushch
5ddf251200 build-package.sh: retry if downloading of Release{,.gpg} failed when fast-build mode is on
Release or Release.gpg files may be absent if a new .deb file was uploaded
to apt repository recently. We may need to do a multiple attempts in a loop
to retry downloading of these files.

Needed after 99e9ab67b634a89d0be9eca12c4f1cdc091ee6e8, where I have disabled
looping in termux_download but curl doesn't do retries on 404 error. We
want immediate failure only for 404's on source and build tool URLs.
2020-08-21 15:46:41 +03:00
Leonid Pliushch
09edfe3c10 termux_setup_protobuf: update checksum 2020-08-21 14:07:54 +03:00
Leonid Pliushch
f49c6c1d53 Revert "build-package: fast builds (-i/-I): retry if release file download fails"
Have some issues with downloads, disable this currently.

This reverts commit f477861a7e9204250c89c9086078d3d9899d2844.
2020-08-13 18:17:03 +03:00
Leonid Pliushch
6100e0caf4 build-package: fast builds (-i/-I): retry if release file download fails
As termux_download.sh retries only on transient errors now, we need a
loop when downloading Release{,.gpg} as they may be temporarily unavailable
when metadata is being rebuilt in repository.
2020-08-13 13:50:47 +00:00
Fredrik Fornwall
4c36fc447d libprotobuf: Update from 3.12.2 to 3.12.4 2020-08-12 12:07:38 +02:00
Butta
43c6c153f9 golang: update from 1.14.7 to 1.15 2020-08-12 10:39:23 +05:30
Fredrik Fornwall
86f2467e87 meson: Update from 0.52.1 to 0.55.0 2020-08-09 01:28:14 +02:00
Fredrik Fornwall
12cb160fda cmake: Update from 3.18.0 to 3.18.1 2020-08-09 00:52:31 +02:00
Nuruddin Ashr
23c155d70a Upgrade to go version 1.14.7 2020-08-08 14:21:10 +07:00
Henrik Grimler
188ab26025 licenses: install all licenses even if basenames are the same
For for example libandroid-support we now have
TERMUX_PKG_SRCDIR/License.txt
and
TERMUX_PKG_SRCDIR/wcwidth-$version/License.txt.
Previously the latter would have overwritten the first one in the
install step as the file names are the same.
2020-08-07 12:03:58 +02:00
Leonid Pliushch
425594ca56 build-package.sh: double the amount of curl download retries 2020-07-28 00:20:33 +03:00
Leonid Pliushch
8ecb74b324 termux_download.sh: simplify curl download error handling
Use curl built-in download retry mechanizm instead implementing
such in shell loop.
2020-07-24 15:16:10 +03:00
Leonid Pliushch
22ae9c583e build-package.sh: fix TERMUX_PKG_SRCURL unbound variable
When no source URL defined, the following error occurs:

 /home/builder/termux-packages/scripts/build/get_source/termux_step_get_source.sh: line 2: TERMUX_PKG_SRCURL: unbound variable
2020-07-22 20:08:46 +03:00
Henrik Grimler
bafdf9d9c0 Rename termux_extract_src_archive to termux_unpack_src_archive
%ci:no-build
2020-07-21 20:09:38 +02:00
Henrik Grimler
f6792915d1 termux_extract_src_archive: create srcdir before extracting tar 2020-07-21 14:12:51 +02:00
Henrik Grimler
4d3a2243a4 termux_step_get_source: do not always create $TERMUX_PKG_SRCDIR
%ci:no-build
2020-07-21 10:42:38 +02:00
Henrik Grimler
8cff1c6d4f termux_step_setup_variables: spaces->tab 2020-07-21 10:27:54 +02:00
Henrik Grimler
4e902a41a5 building packages: create termux_step_get_source function
Calls termux_git_clone_src if TERMUX_PKG_SRCURL ends with .git, and
termux_download_src_archive and termux_extract_src_archive otherwise.
termux_step_extract_package has been split up into the latter two
functions.

termux_step_post_extract_package has been renamed to
termux_step_post_get_source to reflect these changes.
2020-07-21 10:14:00 +02:00
Henrik Grimler
503eaf1375 termux_setup_golang: update url to archive with prebuilt binaries 2020-07-20 20:40:09 +02:00
Nuruddin Ashr
3ba79550b1 Upgrade to golang version 1.14.6 2020-07-17 13:07:25 +03:00
Nuruddin Ashr
ebc92a9485 Upgrade to go version 1.14.5 2020-07-15 10:08:58 +03:00
its-pointless
0c88882ca7 remove no-addr 2020-07-09 13:51:35 +02:00
Henrik Grimler
dcb926abd4 Copy LICENSE file for some licenses instead of using generic one (#5478)
* termux-licenses: remove licenses that contain copyright information

These licenses cannot be taken from the common termux-licenses package as the copyright information needs to be distributed with the package as well.

271 packages in the main repository needs to be rebuilt after this change.

* termux_step_install_license: remove duplicated comment

* Bump packages that has a license with copyright information

We need to include this copyright information in the package so need
to rebuild them now that termux_step_install_license has been
modified.

The affected licenses are: MIT, ISC, PythonPL, Openfont-1.1, ZLIB,
Libpng, BSD, BSD 2-Clause, BSD 3-Clause.

* zlib: extract license file from zlib.h

* xorgproto: include all individual license files in package

* libgcrypt: include LICENSE file in package

It contains some copyright information so needs to be included in package

* libcrypt: add a dummy BSD 2-Clause license

According to homepage it is suppose to be BSD 2-Clause, but original
project did not include a license file

* libandroid-spawn: add LICENSE file to package

* libandroid-glob: add license file to package

* licenses: allow for comma separated TERMUX_PKG_LICENSE_FILE

%ci:no-build

* libicu: fix so that termux_step_install_license finds license file

%ci:no-build

* termux_step_install_license: check for license file as "License"

%ci:no-build

* libtiff: specify TERMUX_PKG_LICENSE_FILE

%ci:no-build

* asciidoctor: install license to standard location

* krb5: specify license file

* libdb: specify path to license file

%ci:no-build

* libprotobuf: specify path to license file

* darkhttpd: extract license file from darkhttpd.c

* w3m: ensure host libraries are not picked up

* w3m: extract LICENSE file from dock/README

* liblua{,52}: extract license files from doc/readme.html

* termux_step_install_license: look for License.txt as well

* dart: specify path to LICENSE file

* nim: specify license file

* runit: specify license file

* termux_step_install_license: look for LICENSE.TXT as well

* ossp-uuid: extract LICENSE from README

* pigz: extract LICENSE from pigz.c

* ttyrec: extract LICENSE from ttyrec.c

%ci:no-build

* bmon: specify license files

Most of the source files are licensed under MIT, it is not clear (to me) which
parts that are licensed under BSD 2-Clause.

%ci:no-build

* wordgrinder: specify license files

* fdupes: add LICENSE

* autossh: add LICENSE patch

* cmake: specify LICENSE file

* dos2unix: specify LICENSE file

* gnuplot: specify LICENSE file

* termux_step_install_license: look for variants of "copyright" also

* picolisp: specify LICENSE file

* lua-lpeg: extract license file

* tidy: specify license file

* gflags: specify LICENSE file

* timewarrior: fix src url

It seems to have been changed.

* postgresql: specify license file

* ttyrec: fix license patch header

* fossil: specify license file

* fmt: specify license file

* i2pd: specify license file

* leptonica: specify license file

* imgflo: add license file patch

* ired: add license file from ired github repo

* libzen: specify license file

* libmediainfo: specify license file

* mediainfo: specify license file

* tty-clock: add license patch

* samefile: add license patch

* quickjs: add license patch

* docbook-xml: add LICENSE patch

* docbook-xsl: specify LICENSE files

* gnuplot: configure with --without-latex

* timewarrior: add libshared to SRCURL as well

The non-release archives does not contain gitsubmodules so we need to
download it manually.

* restic: switch back to using 0.9.6 archive

* dart: revert revision bump

dart's SDK does not fully support python3 yet, and trying to solve
that is not entirely trivial. We save the dart bump (and upgrade to
2.8.4) for another day.

%ci:no-build
2020-07-07 18:45:45 +02:00
Leonid Pliushch
44403ceab3 build-package.sh: remove the info directory file from packages
Causes file conflicts like https://github.com/termux/termux-packages/issues/5487 and
generally shouldn't be needed for proper `info` functionality.
2020-07-07 19:22:00 +03:00
Leonid Pliushch
19df87391a Revert "build-package.sh: fast builds (-i/-I): disable X11 repository temporarily"
This reverts commit 03c1693f0994b6be6fe29e5832ce27270fa1c329.
2020-06-23 15:25:11 +03:00
Leonid Pliushch
6d40bba10d build-package.sh: fast builds (-i/-I): disable X11 repository temporarily 2020-06-22 20:02:07 +03:00
Leonid Pliushch
2f58b9f435 build-package.sh: add function for setting up GHC 2020-06-20 22:44:13 +03:00
Leonid Pliushch
a6910acef5 downgrade protobuf to 3.12.2 as 3.12.3 causes problems with mosh (and other?) 2020-06-08 14:44:57 +03:00
Leonid Pliushch
823f5f858c fix checksum for host protoc zip & rebuild mosh 2020-06-08 13:22:10 +03:00
Nuruddin Ashr
b1dda1c1c2 Upgrade to Golang version 1.14.4 2020-06-03 15:08:11 +03:00
Fredrik Fornwall
fc4dee40a5 Fix protobuf checksum 2020-06-02 08:48:19 +02:00
Fredrik Fornwall
b539cae209 cmake: Update from 3.17.2 to 3.17.3 2020-06-01 23:44:10 +02:00
Luke Childs
bb5be7788d Log applied patches during build 2020-05-21 20:11:32 +03:00
Nuruddin Ashr
077bf9ccc8 Upgrade golang to version 1.14.3 2020-05-15 13:26:58 +03:00
Leonid Pliushch
9c9e7f65b8 update maintainer info
Specifying Termux org members is more correct as we don't have repo-specific
maintainers for termux-packages.

DEB control field specification doesn't allow to specify multiple people as
package maintainers. Value "Termux members @termux" will be used as default
for that field which can be overridden on per-package basis if needed.

%ci:no-build
2020-05-13 11:05:52 +03:00
Leonid Pliushch
5887bad0da build-package.sh: do normal releases for cmake instead of min-size 2020-05-08 00:26:19 +03:00
Fredrik Fornwall
540dd0689b Fix indentation in termux_step_setup_toolchain 2020-05-05 19:29:04 +02:00
Butta
c04ad2e397 termux_setup_rust.sh: add CPPFLAGS, ie TERMUX_PREFIX/include, to the Rust TARGET_CFLAGS 2020-05-02 15:57:04 +03:00
Fredrik Fornwall
8f9a924cec cmake: Update from 3.17.1 to 3.17.2 2020-04-29 01:06:32 +02:00
buttaface
fc1c4c4bd5 swift: update from 5.2.1 to 5.2.2 and fix static compilation (#5169)
* TERMUX_PKG_QUICK_REBUILD: don't delete the host build if doing a quick rebuild
* swift: update from 5.2.1 to 5.2.2 and fix static compilation
2020-04-26 12:52:25 +03:00
Leonid Pliushch
fb16d92527 Revert "build-package.sh: download dependency packages from mirror instead of Bintray"
This reverts commit f679a18402681a15c60f8f9b8b9c82843a041917.
2020-04-25 02:28:35 +03:00
Nuruddin Ashr
3738891830 Upgrade golang version to 1.14.2 (#5143) 2020-04-11 12:28:48 +03:00
Butta
f87609d9f3 termux_step_setup_toolchain.sh: split off setup of standalone toolchain into separate function 2020-04-10 13:03:38 +03:00
Butta
fb6c106c22 termux_step_start_build: define TERMUX_STANDALONE_TOOLCHAIN before sourcing the package's build script, so the host build can use it if wanted 2020-04-09 13:09:38 +03:00
buttaface
faf325b6d0 TERMUX_PKG_QUICK_REBUILD: disable reapplying the host build patches too (#5110) 2020-04-02 21:32:31 +02:00
Leonid Pliushch
d523f61477 build-package.sh: verify release files with gpg when doing autobuilds (#5062) 2020-03-21 16:30:02 +02:00
Leonid Pliushch
9954394e75 build-package.sh: download dependency packages from mirror instead of Bintray
Avoid redundant traffic for Bintray repos when doing fast builds (-i/-I).
2020-03-21 15:47:48 +02:00
Henrik Grimler
6528540bbc termux-services: add down and log/down to CONFFILES
Otherwise they are always added again when a package with a service
script is updated.
2020-03-20 20:44:51 +01:00
Leonid Pliushch
6d996feac4 golang: update to 1.14.1 2020-03-20 13:17:48 +02:00
Leonid Pliushch
9db15acfce build-package.sh: delete .crates2.json in make_install step 2020-03-15 23:42:21 +02:00
Leonid Pliushch
c7a91883cd build-package.sh: remove files .crates2.json from packages
.crates2.json is generated by cargo during the crate installation.

See https://github.com/termux/termux-packages/issues/5037.
2020-03-15 23:38:44 +02:00
Leonid Pliushch
02a2c53d11 golang: update to 1.14 2020-03-08 19:35:46 +02:00
Leonid Pliushch
7c7a3ca6d9 cmake: update to 3.16.5 2020-03-08 19:24:01 +02:00
Henrik Grimler
dbeeaef9c9 build-package: add new function termux_step_create_subpkg_debscripts (#4963)
Makes it possible to create postinst scripts and similar or subpackages as well
2020-02-23 21:30:44 +01:00
Leonid Pliushch
d8fde31951 libprotobuf: update to 3.11.4 2020-02-17 15:44:59 +02:00
Leonid Pliushch
fec6bdc7b9 Merge pull request #4911 from buttaface/quick-rebuild
Introduce TERMUX_PKG_QUICK_REBUILD
2020-02-17 13:43:40 +02:00
Fredrik Fornwall
1cef84f37a golang: Update from 1.13.7 to 1.13.8 2020-02-15 22:40:57 +01:00
Butta
3af25bc2a9 Introduce TERMUX_PKG_QUICK_REBUILD
This new variable is extremely useful when iterating on creating a large package,
as otherwise you have to wipe the source and rebuild each time you make a mistake
with the patches or build.sh script.

Simply set TERMUX_PKG_QUICK_REBUILD=true in build.sh if a build fails and then the
TERMUX_PKG_SRCDIR and TERMUX_PKG_BUILDDIR will not be touched when you rebuild,
including that the patches will not be applied again. When you're done iterating,
diff for any new patches, save them, and remove this variable before rebuilding
from scratch, hopefully for the last time. ;)

An example is shown for the giant libllvm package, where other modifications are
also excluded if this variable is set.
2020-02-15 13:38:30 +05:30
Adrian Schröter
79a2c8693e enforce gnu format for deb tar archives
PAX aka POSIX is not supported in termux deb
2020-02-11 15:17:40 +01:00
Leonid Pliushch
8d983bb009 cmake: update to 3.16.4 2020-02-10 13:23:01 +02:00
Butta
68a4e3e163 termux_step_extract_into_massagedir.sh: don't add tmp/ files to packages, particularly on-device 2020-02-07 00:22:50 +05:30
Leonid Pliushch
349118ad61 libprotobuf: update to 3.11.3 2020-02-04 17:30:46 +02:00
Butta
b997c4eafa termux_step_setup_toolchain.sh: don't add duplicate rpath for on-device builds
Unlike the NDK clang, the on-device clang has already been patched to add an rpath
to the Termux-prefixed library path, so only have the build script add the rpath
flag for NDK builds.
2020-02-02 01:21:18 +05:30
Leonid Pliushch
c9aec4cbe7 ninja: update to 1.10.0 2020-01-30 22:03:41 +02:00
Leonid Pliushch
4590b61015 golang: update to 1.13.7 2020-01-30 21:06:21 +02:00
Leonid Pliushch
7f6895dfd6 cmake: update to 3.16.3 2020-01-30 20:50:17 +02:00
Leonid Pliushch
3d595a41f0 CI: remove Cirrus configuration 2020-01-22 21:51:12 +02:00
Fredrik Fornwall
683301b678 golang: Update from 1.13.5 to 1.13.6 2020-01-09 23:48:39 +01:00
Henrik Grimler
54baabcffe termux_step_install_service_scripts: log services should be enabled 2020-01-08 19:58:42 +01:00
Henrik Grimler
1716ee981b termux_step_install_service_scripts: allow <service>/log to be overwritten
Transmission needs a custom log/run script, this allows us to define
it in $TERMUX_PKG_SERVICE_SCRIPT.
2020-01-05 15:56:26 +01:00
Henrik Grimler
ab2a3b70f0 build-package.sh: add TERMUX_PKG_SERVICE_SCRIPT var and build script
termux_step_install_service_scripts is run after
termux_step_post_make_install and loops over the new array
TERMUX_PKG_SERVICE_SCRIPT to add service scripts for termux-services.

The service scripts are usually only a one-liner so we might just as
well define it in a variable like TERMUX_PKG_SERVICE_SCRIPT.

TERMUX_PKG_SERVICE_SCRIPT should be an array on the format
("daemon-name" 'script to execute' "another daemon" 'multi\n line\n script'),
i.e. it should be of even length with name + script where the script
part preferably is within single quotes (to avoid accidental expansion
of for example $HOME).
2020-01-05 15:00:15 +01:00
Leonid Pliushch
729a737a49 build-package.sh: move golang variable configuration to termux_step_setup_toolchain.sh
Allow to use termux_setup_golang.sh for host builds.
2020-01-03 23:39:54 +02:00
Fredrik Fornwall
b34c8fb32b Force toolchain update after ifaddrs.h and syslog.h changes 2019-12-29 23:53:09 +01:00
Leonid Pliushch
978358cfa3 Merge pull request #4639 from buttaface/headers
ndk-patches: use upstream ifaddrs.h and remove old syslog.h polyfills
2019-12-29 20:35:46 +02:00
Leonid Pliushch
c6abaa5b79 libprotobuf: update to 3.11.2 2019-12-21 20:49:55 +02:00
Leonid Pliushch
c8937aeade cmake: update to 3.16.2 2019-12-21 18:10:44 +02:00
Leonid Pliushch
75af2da554 reformat scripts/build/termux_step_setup_toolchain.sh 2019-12-13 23:57:01 +02:00
Leonid Pliushch
ce0707260d build-package.sh: fix copy-paste typo
clang & clang++ wrappers were copied to same file
2019-12-13 23:49:41 +02:00
Fredrik Fornwall
9f89ac3b20 cmake: Update from 3.15.5 to 3.16.1 2019-12-12 00:42:43 +01:00