Commit Graph

750 Commits

Author SHA1 Message Date
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
Henrik Grimler
44f8bfaa50 setup-ubuntu.sh: remove duplicate clang-10 line 2020-07-09 13:51:35 +02:00
Henrik Grimler
0f6d16ea6a ndk: update to r21d 2020-07-09 13:51:35 +02:00
its-pointless
5e9a19ae55 ubuntu setup for r21b 2020-07-09 13:51:35 +02:00
its-pointless
9ce89eef41 use ndk 21b 2020-07-09 13:51:35 +02:00
its-pointless
f28f489e45 sha256 of ndk zip 2020-07-09 13:51:35 +02:00
its-pointless
0c88882ca7 remove no-addr 2020-07-09 13:51:35 +02:00
its-pointless
43f5eb9281 r21 cross over in progress 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
c63bfc22e2 build-package.sh: skip work-in-process metadata when downloading dependency debs (-i/-I) 2020-06-23 15:21:29 +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
1771b69888 docker image: install xfce4-dev-tools 2020-06-22 16:00:22 +03:00
Leonid Pliushch
ea0ea5f925 scripts/bin/{revbump,update-checksum}: strip traling / from package name 2020-06-21 19:24:53 +03:00
Leonid Pliushch
c086de3165 scripts/bin/update-checksum: fix generation of commit message 2020-06-21 17:37:59 +03:00
Leonid Pliushch
179d353ed4 scripts: add 'update-checksum' - source SHA-256 updating script 2020-06-21 14:47:22 +03:00
Leonid Pliushch
7f64b751fe scripts: add 'revbump' - revision bumping script 2020-06-21 14:47:19 +03:00
Leonid Pliushch
4162539edb docker image: install 'alex' & 'happy' utilities for Haskell 2020-06-20 22:46:33 +03:00
Leonid Pliushch
2f58b9f435 build-package.sh: add function for setting up GHC 2020-06-20 22:44:13 +03:00
Leonid Pliushch
399f696b14 repology: stop excluding certain packages from list
Req https://github.com/repology/repology-rules/issues/382#issuecomment-646689998.
2020-06-19 19:58:15 +03:00
Leonid Pliushch
77fa166aa9 reformat scripts/setup-ubuntu.sh 2020-06-19 02:54:45 +03:00
Leonid Pliushch
61bcba0526 fix typo in scripts/setup-ubuntu.sh 2020-06-19 02:54:18 +03:00
Faheem Pervez
86a07d5079 docker image: install heimdal-multidev and comerr-dev (#5418)
For samba in unstable-packages
2020-06-18 15:46:47 +02:00
Leonid Pliushch
31835dcbc5 docker image: install libparse-yapp-perl
https://github.com/termux/termux-packages/pull/5417
2020-06-18 01:00:06 +03:00
Leonid Pliushch
7c0007dddc docker image: install python3-pip 2020-06-13 18:49:52 +03:00
Leonid Pliushch
380e6fd501 run-docker.sh: don't modify $HOME variable which is set outside 2020-06-10 15:40:08 +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
Leonid Pliushch
7e6047fdfe fix license headers in scripts
More correct last name translit, update email & year in copyright info.
2020-06-02 15:49:43 +03:00
Fredrik Fornwall
fc4dee40a5 Fix protobuf checksum 2020-06-02 08:48:19 +02:00
Leonid Pliushch
7de2a3eb47 repology: exclude lxc from version checks
Last version confirmed to work is "3.1.0".
2020-06-02 01:48:22 +03:00
Fredrik Fornwall
b539cae209 cmake: Update from 3.17.2 to 3.17.3 2020-06-01 23:44:10 +02:00
Butta
dc0c6405e9 swift: update from 5.2.3 to 5.2.4 2020-05-23 11:58:56 +03:00
Luke Childs
bb5be7788d Log applied patches during build 2020-05-21 20:11:32 +03:00
Leonid Pliushch
7746025839 docker image: install setuptools for python2
Needed by python2-xlib.
2020-05-19 21:33:48 +03:00
Butta
f380827f81 swift: update from 5.2.2 to 5.2.3 2020-05-19 21:28:40 +03:00
Leonid Pliushch
4b46218293 docker image: install texlive-extra-utils 2020-05-19 16:32:14 +03:00
Leonid Pliushch
b99704569b scripts/list-versions.sh: set TERMUX_PREFIX variable
Fixes

 dirname: missing operand
 Try 'dirname --help' for more information.

when sourcing some build.sh.
2020-05-19 15:15:09 +03:00
Nuruddin Ashr
077bf9ccc8 Upgrade golang to version 1.14.3 2020-05-15 13:26:58 +03:00
Leonid Pliushch
32bda70d54 repology: exclude rush from update check
Version listed on Repology is for different project with same name.
2020-05-13 11:53:18 +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
c8aadc32d4 CI: export TERMUX_PREFIX in repology script
Needed by some build.sh (e.g. for libllvm), otherwise they
may print an error when sourcing.
2020-05-11 17:21:06 +03:00
Leonid Pliushch
014e0ef92a Revert "generate-repology-metadata: attempt to fix github action error"
Nested quoting is valid in bash.

Change introduced in 9168e963fa340f3fb76e482c02e5eaa66080d850 breaks
script and causes excludes list not being read:

realpath: '"scripts/repology/generate-repology-metadata.sh"': No such file or directory
[
grep: ./excluded_packages.txt: No such file or directory
  {
    "name": "8086tiny",
    "version": "1.25",
    "description": "A PC XT-compatible emulator/virtual machine",
    "homepage": "https://github.com/adriancable/8086tiny",
    "depends": ["bash", "coreutils", "ncurses"],
    "srcurl": "c79ca2a34d.tar.gz",
    "maintainer": "Fredrik Fornwall @fornwall"
  }grep: ./excluded_packages.txt: No such file or directory
2020-05-11 16:46:58 +03:00
Henrik Grimler
70a7407c92 generate-repology-metadata: attempt to fix github action error
Logs show:
```sh
dirname: missing operand
Try 'dirname --help' for more information
```

Either quoting problem or maybe the CI uses some arcane shell
2020-05-11 14:07:14 +02:00
Henrik Grimler
b0d1ff7cfa setup-ubuntu.sh: add cvs for myman 2020-05-09 20:17:56 +02:00
Henrik Grimler
d5f6b464b2 setup-ubuntu: add packages needed by science and game packages 2020-05-09 18:39:17 +02:00
ifurther
fe9c49ae32 new package: wrk (#5262)
* add wrk package
* install luajit into docker image
2020-05-08 02:23:01 +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
Leonid Pliushch
7c0df2ad3d docker image: install tcl
Tcl is needed for building package 'sqlcipher'.
2020-05-07 22:51:19 +03:00
Henrik Grimler
3b861ed4a9 setup-ubuntu: install python-is-python3
Some packages looks for python instead of python3 or python2
2020-05-06 16:34:29 +02:00
Henrik Grimler
3b96b19b8e setup-ubuntu: python-yaml is needed by libduktape (uses py2) 2020-05-06 16:34:28 +02:00
Fredrik Fornwall
36ef3dcba8 Update docker image to Ubuntu 20.04 2020-05-06 09:27:49 +02: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
Leonid Pliushch
c85f419708 php: run buildconf after extracting sources
Needed for generating configure script.

+ added re2c package for Docker image
2020-04-14 23:18:11 +03:00
Nuruddin Ashr
3738891830 Upgrade golang version to 1.14.2 (#5143) 2020-04-11 12:28:48 +03:00
Butta
f36759a52b swift: enable package and update to 5.2.1 2020-04-10 13:03:38 +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
Leonid Pliushch
36780ba9fa docker image: install 'clang-9' 2020-04-09 18:23: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
Henrik Grimler
38227f42d6 Update various packages (#5114)
* cpio: update to 2.13

* gmic: update to 2.9.0

* ffsend: update to 0.2.59

* libgrpc: update to 1.28.0

* librsvg: update to 2.48.2

* perl: update to 5.30.2

* ruby: update to 2.7.1

* ripgrep: update to 12.0.1

* repology/excluded_packages: ignore aircrack-ng and guile18

* mpd: update to 0.21.22
2020-04-04 03:49:59 +02: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
7e0148cf27 docker image: fix installation of JDK 8 2020-03-08 21:44:59 +02:00
Leonid Pliushch
4c811cf8cc Revert "docker image: use JDK 11"
This reverts commit 90af396e474f8f81f57404f57dd37130dee2fa8b.
2020-03-08 21:43:23 +02:00
Leonid Pliushch
57e645f227 Revert "docker image: try to fix issue with Android SDK & Java 11"
This reverts commit f860eeba3a784d32ec65cf72d4a3d46578c3ffba.
2020-03-08 21:42:47 +02:00
Leonid Pliushch
1cfcd0dd26 docker image: try to fix issue with Android SDK & Java 11 2020-03-08 21:34:23 +02:00
Leonid Pliushch
2ef2cd14fb docker image: use JDK 11 2020-03-08 21:26:21 +02:00
Leonid Pliushch
6de81dfeb6 docker image: install docbook-xsl-ns
docbook-xsl-ns is needed by libnotify package.
2020-03-08 20:31:15 +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
Leonid Pliushch
d0f798257d repology: update list of excluded packages 2020-02-24 20:11:02 +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
9e349a0503 docker image: install npm as it is used by 'gitea' in build process 2020-02-17 18:37:35 +02: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
dab1ed93af repology: exclude package 'dx' from version check
We use value from `dx --version` as package version and Repology
gives false positive update suggestion.
2020-01-30 22:25:22 +02:00
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
6502ed5c0a docker image: install llvm-9-dev
Needed by rustc-nightly in unstable-packages.
2020-01-25 00:31:41 +02:00
Leonid Pliushch
149220d89d fix unbound variable error in scripts/run-docker.sh 2020-01-23 22:25:54 +02:00
Leonid Pliushch
d542602980 setup-ubuntu.sh: re-enable package 'erlang-nox' 2020-01-23 21:54:42 +02:00
Leonid Pliushch
b6c59df765 CI: use termux/package-builder Docker image as build environment 2020-01-23 21:54:42 +02:00
Leonid Pliushch
a512984ce4 setup-ubuntu.sh: do not install 'erlang-nox' because it can't be installed on CI/CD for some reason 2020-01-23 19:47:38 +02:00
Leonid Pliushch
63c8d460b3 docker image: add more packages used by unstable & x11 repositories 2020-01-23 19:46:48 +02:00
Leonid Pliushch
872cc15bae docker image: install erlang-nox, itstool, libgdk-pixbuf2.0-dev, xfonts-utils
More tools to build packages in unstable & x11 repositories.
2020-01-23 16:27:11 +02:00
Leonid Pliushch
a0731c92aa update scripts/setup-ubuntu.sh
Will add host packages required by unstable-packages and x11-packages,
so I don't need to have a custom Docker image for them.

Current package list may be incomplete.
2020-01-23 14:01:59 +02:00
Leonid Pliushch
c087460476 CI: setup Github Actions 2020-01-22 21:51:12 +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
Leonid Pliushch
99236ea338 setup scripts: do not use sudo if already running under root
Reworked variant of https://github.com/termux/termux-packages/pull/4753.
2020-01-06 18:33:55 +02: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
b20be8a115 docker image: install locales and configure en_US.UTF-8 as default 2020-01-04 00:19:59 +02: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
Leonid Pliushch
8bdbfa05ce scripts/setup-termux.sh: install asciidoctor 2020-01-01 17:40:07 +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
Butta
60e9d47df0 ndk-patches: use upstream ifaddrs.h and remove old syslog.h polyfills 2019-12-08 19:57:10 +05:30
Fredrik Fornwall
f317c7cf7d protobuf: Update from 3.9.1 to 3.11.1 2019-12-05 23:58:28 +01:00
Fredrik Fornwall
0533835564 golang: Update from 1.13.4 to 1.13.5 2019-12-05 23:29:18 +01:00
Leonid Pliushch
21f62c34a2 docker image: install libltdl-dev and libsigsegv-dev 2019-12-01 22:49:47 +02:00
Leonid Pliushch
797861b2c5 docker image: install zip 2019-12-01 22:07:09 +02:00
Leonid Pliushch
82285727fb docker image: install groff 2019-12-01 19:33:55 +02:00
Fredrik Fornwall
64c43ced87 meson build system: Update from 0.52.0 to 0.52.1 2019-12-01 17:59:39 +01:00
Fredrik Fornwall
1237a43b9c meson build system: Update from 0.50.1 to 0.52.0 2019-11-24 20:26:06 +01:00
Fredrik Fornwall
eb53d8d447 Dockerfile: Update from ubuntu 19.04 to 19.10 2019-11-21 00:36:24 +01:00
Fredrik Fornwall
b40b0bc2aa golang: Update from 1.13.3 to 1.13.4 2019-11-21 00:01:01 +01:00
Leonid Pliushch
0cdb3bcf5e docker image: install python3.8 2019-11-17 21:26:50 +02:00
Leonid Pliushch
ddf7066863 build-package.sh: fix url for unstable & x11 packages 2019-11-17 14:56:25 +02:00
Leonid Pliushch
783069ef67 Revert "Shrink docker image (#3362)"
Breaks patching of headers.

This reverts commit 53c281c5e4d947fdf0b0b0f32f60ce826c8dfb26.
2019-11-10 17:15:33 +02:00
Wetitpig
83796081a9 Shrink docker image (#3362)
* Docker rm Android NDK Version 16-19

* Docker remove vulkan and shaderc too

* Docker remove duplicate files

* Separate Docker clean script

* Docker remove templates

* Docker bz2 large notices

* Docker try symlinks

* Docker preserve some SDK Libraries

* Docker rm fonts and resources from platforms

* Docker source properties.sh
2019-11-10 16:41:19 +02:00
Fredrik Fornwall
b998132903 cmake: Update from 3.15.3 to 3.15.5 2019-11-03 23:01:21 +01:00
its-pointless
a60fb05042 lldb fixes (#4468) 2019-10-28 12:47:55 +02:00
its-pointless
b6980935d4 experiment generating llvm-config 2019-10-26 16:46:24 +11:00
Leonid Pliushch
b26b2b19e6 CI: remove rust from excluded packages 2019-10-25 14:26:32 +03:00
Leonid Pliushch
410b0e1223 build-package.sh: cargo should use $TERMUX_MAKE_PROCESSES for max amount of build jobs 2019-10-24 19:37:22 +03:00
Leonid Pliushch
4cbeb565e2 golang: update to 1.13.3 2019-10-18 15:11:11 +03:00
Fredrik Fornwall
0e0d92a66c golang: Update from 1.13 to 1.13.1 2019-09-29 03:04:25 +02:00
Leonid Pliushch
8eae28c153 Revert "docker image: install libossp-uuid-dev"
libossp-uuid-dev is not needed since we are not going to build
swi-prolog documentation currently.

This reverts commit e8fe70fc9067ab2911f7e9e366fa670f897af669.
2019-09-28 14:18:28 +03:00
Fredrik Fornwall
6ce565092c Update android build tools to 29.0.2 2019-09-25 23:12:33 +02:00
Leonid Pliushch
8fd96ae07a docker image: install libossp-uuid-dev 2019-09-24 22:17:05 +03:00
Fredrik Fornwall
937b78d0c4 Define __TERMUX__ and __TERMUX_PREFIX__
By defining __TERMUX__ and __TERMUX_PREFIX__ in <sys/cdefs.h> (which is
basically always included) one can more easily target Termux
specifically, both when cross-compiling packages and when code is built
on-device.
2019-09-19 21:34:04 +02:00
Leonid Pliushch
30301b55a6 build-package.sh: fix checksum in termux_setup_protobuf.sh 2019-09-18 17:23:59 +03:00
Leonid Pliushch
f7195017cc docker image: install bsdmainutils 2019-09-16 15:07:36 +03:00
Leonid Pliushch
243806a00c CI: exclude "lldb" from autobuilds 2019-09-13 12:38:56 +03:00
Fredrik Fornwall
34ef726b09 cmake: Update from 3.15.2 to 3.15.3 2019-09-10 22:51:44 +02:00
Leonid Pliushch
1ce33aba30 CI: switch to file-based cache for passing *.deb files between tasks 2019-09-10 16:09:32 +03:00
Fredrik Fornwall
0a3d65e292 golang: Update from 1.12.8 to 1.13 2019-09-03 21:41:24 +02:00
Leonid Pliushch
89f6b033bd docker image: install pandoc 2019-08-28 15:23:28 +03:00
Fredrik Fornwall
5eaa982ba2 cmake: Update from 3.14.5 to 3.15.2 2019-08-21 13:04:43 +02:00
Leonid Pliushch
7dd8d80884 fix for termux_create_subpackages.sh 2019-08-20 14:53:54 +03:00
Leonid Pliushch
43afcb4b55 golang: allow on-device builds
But it will fail currently anyway to non-pie executables generated in
bootstrap process.
2019-08-19 02:38:29 +03:00
Leonid Pliushch
8facf9f01a scripts/setup-termux.sh: install help2man 2019-08-16 15:39:08 +03:00
Leonid Pliushch
c33a3ba6d9 scripts/setup-termux.sh: install asciidoc 2019-08-16 02:51:05 +03:00
Fredrik Fornwall
c3e0bf0149 caddy: Update from 1.0.1 to 1.0.3 2019-08-16 00:04:43 +02:00
Leonid Pliushch
1a33848a02 termux-elf-cleaner: update to v1.7 2019-08-15 21:48:07 +03:00
Leonid Pliushch
4e33536d72 build-package.sh: fix detection of static libraries when creating subpackages
Now packages will be split if static libraries are located in subdirectory
of $PREFIX/lib.
2019-08-15 00:03:58 +03:00
Leonid Pliushch
5493481c5c build-package.sh: better support for metapackages 2019-08-14 20:29:58 +03:00
Leonid Pliushch
e803bdd3ef CI: trim spaces from modified packages list 2019-08-14 19:59:21 +03:00
Leonid Pliushch
ce0a30d684 linter: source ./scripts/properties.sh only if it exists 2019-08-14 15:13:39 +03:00
Leonid Pliushch
a4b1f952c1 linter: specify that non-https links are still acceptable
%ci:no-build
2019-08-14 14:59:47 +03:00
Leonid Pliushch
8701462951 add new linter script & fix packages where needed
Linter will check packages submitted for CI build. If error was found,
build will not be allowed.

To ensure that all build.sh scripts are consistent and have at least
minimal allowed quality, linter is permanently enabled for all branches
and pull requests.
2019-08-14 14:27:55 +03:00
Leonid Pliushch
cc34b645d8 build-package.sh: fix problem when built packages are not being checked 2019-08-13 22:05:52 +03:00
Leonid Pliushch
c14b5e7334 build-package.sh: more fixes for variable checking 2019-08-13 18:44:10 +03:00
Leonid Pliushch
0dba6f512d build-package.sh: set ac_cv_func_posix_spawnp=no for all autotools builds
Reason same as for posix_spawn.
2019-08-13 15:10:07 +03:00
Leonid Pliushch
088d10cd77 build-package.sh: set ac_cv_func_posix_spawn=no for all autotools builds
posix_spawn is not available on Android devices.

While this commit is not necessary for cross-compiling, it is required
when building on-device since there posix_spawn is found somehow. This
produces following errors:

 ./spawn.h:514:17: error: use of undeclared identifier 'POSIX_SPAWN_RESETIDS'
             [(((POSIX_SPAWN_RESETIDS | POSIX_SPAWN_SETPGROUP
2019-08-13 15:02:14 +03:00
Leonid Pliushch
ceb385a9a8 build-package.sh: fix metapackage creation
Metapackages shouldn't have data inside.

%ci:reset-backlog
2019-08-13 02:03:59 +03:00
Leonid Pliushch
52ceb56d3f build-package.sh: more fixes 2019-08-13 02:03:52 +03:00
Leonid Pliushch
d08dc0fa13 build-package.sh: use text-based comparsion in conditionals instead of exit-code based 2019-08-13 02:03:47 +03:00
Leonid Pliushch
898cb887ab fix typo in scripts/build/termux_extract_dep_info.sh 2019-08-12 23:48:13 +03:00
Leonid Pliushch
b7ace4093d build-package.sh: allow static packages to be in dependencies 2019-08-12 22:50:41 +03:00
Leonid Pliushch
c352216c63 packages: standardize values of several control variables for build.sh
Variables

 TERMUX_PKG_PLATFORM_INDEPENDENT
 TERMUX_DEBUG
 TERMUX_PKG_HAS_DEBUG
 TERMUX_PKG_ESSENTIAL
 TERMUX_SUBPKG_ESSENTIAL
 TERMUX_PKG_NO_STATICSPLIT
 TERMUX_PKG_BUILD_IN_SRC
 TERMUX_PKG_FORCE_CMAKE
 TERMUX_PKG_HOSTBUILD

should not accept arbitrary values for marking them "enabled". Instead
they should accept boolean values which makes them easier to handle and
also makes their meaning clear.

build-package.sh should make decision based on variable's value but not on
whether it is set or empty.

%ci:no-build
2019-08-12 18:49:13 +03:00
Leonid Pliushch
33f341c259 add support for on-device bootstrapping of "make" 2019-08-11 16:03:35 +03:00
Leonid Pliushch
e8ccf506a0 scripts/setup-termux.sh: split packages on "tier 1" & "tier 2" groups
And remove packages that are installed with bootstrap archive (essential ones).
2019-08-11 16:03:35 +03:00
Butta
4c735a6580 on-device build: Fix up ncurses and ninja, adjust some setup scripts,
and add dependency info to scripts/setup-termux.sh.
2019-08-11 16:03:35 +03:00
Leonid Pliushch
0b4d758d6d fix typo in termux_step_massage.sh 2019-08-11 03:27:18 +03:00
Leonid Pliushch
4583afe579 build-package.sh: fix error in termux_step_massage() when bin, lib, libexec are not exist
Fixes https://github.com/termux/termux-packages/issues/4160.
2019-08-11 03:24:28 +03:00
Leonid Pliushch
c31dad8663 scripts/setup-termux.sh: add missing package 'valac' 2019-08-10 18:56:12 +03:00
Leonid Pliushch
48d257989a build-package.sh: export CC_FOR_BUILD for on-device builds
Required by some packages.
2019-08-10 17:28:08 +03:00
Leonid Pliushch
13f0811d76 build-package.sh: on-device builds without termux-exec are unsupported 2019-08-10 02:01:22 +03:00
Leonid Pliushch
a2b2c75806 build-package.sh: for on-device builds use device-specific default value for maintainer 2019-08-10 01:23:17 +03:00
Leonid Pliushch
328a9303bd build-package.sh: prefix and home shouldn't be overridable for on-device builds
And set TERMUX_NO_CLEAN to true for on-device builds as well.
2019-08-10 01:18:42 +03:00
Leonid Pliushch
ba62c10575 build-package.sh: source properties.sh before handling command line arguments
Fixes problem when it is not possible to override TERMUX_ARCH set in ~/.termuxrc.
2019-08-10 01:04:46 +03:00
Leonid Pliushch
cda78acbb0 scripts/setup-termux.sh: install binutils-gold
Required by at least ipfs package.
2019-08-08 22:15:02 +03:00
Leonid Pliushch
3b8537b03b scripts/setup-termux.sh: use bash in shebang 2019-08-08 17:40:52 +03:00
Leonid Pliushch
e303212ae5 enable on-device builds
Partial compatibility for on-device builds.

There is no guarantee that it will be possible to build all available
packages and built packages will have same reliability that cross-compiled
but should solve "self-hosting" problems as much as possible.
2019-08-08 16:58:34 +03:00
Leonid Pliushch
7c764b989b run-docker.sh: allow to set custom image via environment variable 2019-08-02 17:39:27 +03:00
Leonid Pliushch
9173eaad20 build-package.sh: use globstar when splitting static libraries
Handle cases when static libraries located in subdirectory.

Enables support for globstar (example './**/*.a') pattern in subpackage
splitting.
2019-07-30 01:21:01 +03:00
Leonid Pliushch
0f298bae8f build-package.sh: avoid linking with extra/unneeded libraries 2019-07-29 22:49:15 +03:00
Leonid Pliushch
1b2d8259fb build-package.sh: basic hardening via CFLAGS/LDFLAGS
See https://github.com/termux/termux-packages/issues/4107.

In short:

 * Stack protector will be used by default.

 * GOT/PLT ELF sections will be read-only.
2019-07-29 22:49:15 +03:00
Leonid Pliushch
61dbc35394 scripts/buildorder.py: do not handle static library subpackages
* They are not used during normal build procedures.

* During "fast-builds" (option '-i') they just consume our bandwidth.
2019-07-29 16:09:26 +03:00
Leonid Pliushch
6e70277fb3 no more develsplit + provide static libraries as separate package
%ci:no-build
2019-07-28 21:17:12 +03:00
Leonid Pliushch
4778a36e54 update download checksum in termux_setup_protobuf.sh 2019-07-28 02:02:34 +03:00
Leonid Pliushch
8c1e1f7d92 docker image: install valac 2019-07-25 18:23:57 +03:00
Leonid Pliushch
2d7f6ecb75 CI: omit newlines when printing list of packages for building 2019-07-24 21:41:27 +03:00
Leonid Pliushch
eb444b2d01 docker image: install libc-ares-dev and libicu-dev
Needed by host-build part of nodejs v12.6.0+
2019-07-24 19:49:02 +03:00
Leonid Pliushch
b97a70a2b0 CI: add support for automatic docker image rebuilding 2019-07-23 23:42:20 +03:00
Leonid Pliushch
2e07999fd3 CI: fix expression for filtering packages 2019-07-23 15:41:25 +03:00
Leonid Pliushch
fb4b3a982c CI: look for changes only in build.sh scripts 2019-07-23 12:36:34 +03:00
Leonid Pliushch
9fac976ab1 CI: restore old way for building & uploading packages
Do not use pipes for building & uploading packages because:

 * They spawn more jobs on Bintray for metadata generation - each upload is
   done in a separate session.

 * Bintray doesn't handle well concurrent uploads and metadata can be corrupted.
   This happened in all recent builds of platform independent packages - in
   each upload task file had a same name and that triggered problem with metadata.

 * Using delays for workaround for a problem described above works, but isn't
   safe.
2019-07-23 03:08:34 +03:00
Leonid Pliushch
2b21492262 CI: fix syntax errors in 'scripts/build/ci/cirrus-ci_dispatcher.sh' 2019-07-22 22:48:36 +03:00
Leonid Pliushch
c18beff6c0 CI: better implementation for workaround introduced in f75cb1d4f2
Use predefined upload delays for each pipe.
2019-07-22 22:38:32 +03:00
Leonid Pliushch
b1f23e5f4c CI: do not start upload if API key or passphrase is not set
CI periodically shows error like

  Failed to decrypt some environment variables

so it will be better to stop immediately when environment is inconsistent
for unknown reason (e.g. due to Github's problems).
2019-07-22 21:33:21 +03:00
Leonid Pliushch
e2aed73d91 CI: attempt to workaround inconsistent metadata during concurrent upload of same file
All platform independent packages affected by this issue. Results in
persistent apt error like:

 Writing more data than expected (22610650 > 22610408)
 Hashes of expected file:
  - SHA256:08abc5cffb9e1967fab487a471bb547f5ae706c48bf8e59d1443b2ad4af9caaf
  - SHA1:36ded1e207135bdeb8b7301bc03309ebced3cd32 [weak]
  - Filesize:22610408 [weak]
2019-07-22 21:26:44 +03:00
Leonid Pliushch
d7087a90b1 CI: check if necessary environment variables are set 2019-07-22 20:04:24 +03:00
Leonid Pliushch
c4f308fae3 CI: if all 3 attempts of upload failed, exit with status code '1' 2019-07-22 18:39:16 +03:00
Leonid Pliushch
4f811f734e build-package.sh: allow to mark subpackages as essential 2019-07-21 22:18:09 +03:00
Leonid Pliushch
62b194d620 docker image: install autopoint 2019-07-21 18:57:09 +03:00
Leonid Pliushch
b9a77b5bf6 CI: fix syntax errors in dispatcher script 2019-07-21 17:44:31 +03:00
Leonid Pliushch
aa98b2bc4d CI: rework way how upload will be retried
* Allow 3 attempts for uploading.

* Add 30 second delay between attempts.
2019-07-21 17:31:46 +03:00
Leonid Pliushch
088cf170a7 CI: fix pull requests URL in dispatcher script 2019-07-21 02:29:24 +03:00
Leonid Pliushch
f6a1564aec CI: retry package uploading in case of failure
In certain cases Bintray may return errors like `invalid version a.b.c` for
specific tasks. This probably happens because we now running package uploading in
parallel.

Retrying upload one more time should fix the problem.
2019-07-21 01:42:24 +03:00
Leonid Pliushch
ca8f0d0b74 CI: use pipe instead of separate tasks
No more need to pass packages between tasks through http cache but will require
a separate configuration for earch architecture.
2019-07-20 23:01:15 +03:00
Leonid Pliushch
5c90cf72db Revert "CI: restore full builds for pull requests"
This reverts commit 77f24af5b851a3a0cd067fcfffd18ecc6972ea83.
2019-07-20 19:12:45 +03:00
Leonid Pliushch
cfaa34408e CI: restore full builds for pull requests
When processing pull request, build dependencies instead of
downloading them.
2019-07-20 15:44:01 +03:00
Leonid Pliushch
4aaba4d074 build-package.sh: allow to build multiple packages at one time
Support for call syntax:

 ./build-package.sh pkg1 pkg2 pkg3 ...
2019-07-20 15:32:54 +03:00
Leonid Pliushch
2563fd812c update CI setup
* Move package building/uploading implementation from config to a separate script.

* Implement new tag '%ci:no-build' to allow immediately stop build with status 'passed'.

%ci:no-build
2019-07-20 13:33:55 +03:00
Henrik Grimler
a36acc44e4 setup_golang: set CGO_CFLAGS=-I$TERMUX_PREFIX/include 2019-07-19 10:22:31 +02:00
Fredrik Fornwall
51c97e3bb5 Always use -Oz optimization level 2019-07-14 20:38:26 +02:00
Leonid Pliushch
cc06bee73e docker image: install libdbus-1-dev
Required by host-build if dbus-glib.
https://github.com/termux/termux-packages/pull/4046.
2019-07-13 17:08:57 +03:00
Fredrik Fornwall
c5a58e63a2 golang: Update from 1.12.6 to 1.12.7 2019-07-11 14:31:17 +02:00
Leonid Pliushch
06f048b540 build-package.sh: fix typo
Chmod has to be called recursively.
2019-07-04 14:44:48 +03:00
Leonid Pliushch
225b1c471f clean.sh & build-package.sh: avoid errors in case chmod's target dir is not exist 2019-07-04 14:29:06 +03:00
Leonid Pliushch
f45ed59766 build-package.sh: fix rm problems when builddir/srcdir contains RO files 2019-07-04 14:09:44 +03:00
Leonid Pliushch
2fa11b13ef build-package.sh: always keep info pages
Info pages usually provide more complete information
about package and its usage than man pages.
2019-07-02 00:00:02 +02:00
Tom Yan
0645971354 build-package.sh: export OBJCOPY 2019-06-26 12:14:11 +03:00
its-pointless
8c8292fece set updsted ndk sha256 2019-06-19 20:26:31 +03:00
its-pointless
1900df549d avoid using system clang instead of ndk one 2019-06-19 20:26:31 +03:00
its-pointless
6c2c06fd6f fix arm-cpp properly... 2019-06-19 20:26:31 +03:00
its-pointless
e83b5a2ea8 fix arm cpp 2019-06-19 20:26:31 +03:00
its-pointless
5eada22838 ndk-20 update 2019-06-19 20:26:31 +03:00
Leonid Pliushch
32ef9db225 golang: update to 1.12.6 2019-06-16 18:38:39 +03:00
Leonid Pliushch
4707ae3b9f fix scripts/check-built-packages.py
Now it will compare packages with right repository (android-7/bintray).
2019-06-08 14:04:04 +03:00
Leonid Pliushch
e4e0379086 cmake: update to 3.14.5 2019-06-08 01:10:02 +03:00
Leonid Pliushch
74832cbea8 update setup-archlinux.sh 2019-06-03 23:24:34 +03:00
Leonid Pliushch
f574b08871 update Vagrantfile
* Ubuntu disco

* Raised RAM to 4 GB (2 GB may be too small)

* Some other fixes
2019-06-03 20:33:24 +03:00
Christopher Latham
cb6dc126e4 setup-ubuntu.sh: Download 19.04 java package when running Ubuntu 19.04 2019-05-27 23:57:30 -04:00
Christopher Latham
f59bc57f0b Fix broken java 8 download link locations 2019-05-27 23:18:18 -04:00
Leonid Pliushch
de0589ea9e build-package.sh: fix license installation step 2019-05-24 23:34:33 +03:00
Leonid Pliushch
b5e34cb1b9 build-package.sh: handle disable packages when building for all architectures 2019-05-22 15:01:59 +03:00
Henrik Grimler
1197b9a9e0 termux_step_massage: drop TERMUX_PKG_KEEP_SHARE_DOC 2019-05-19 21:36:30 +03:00
Henrik Grimler
4c87b7a46c termux_step_install_license: fix link path 2019-05-19 21:36:30 +03:00