Commit Graph

743 Commits

Author SHA1 Message Date
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
Henrik Grimler
de23e4c2a8 termux_step_install_license: install to usr/share/doc/ instead of usr/share/ 2019-05-19 21:36:30 +03:00
Henrik Grimler
3bfb8b45b9 termux_step_install_license: Handle spaces in license name 2019-05-19 21:36:30 +03:00
Henrik Grimler
b9db6b4de8 termux_step_install_license: error if no LICENSE file is installed 2019-05-19 21:36:30 +03:00
Henrik Grimler
83177e08e3 termux_step_install_license: use license file from $TERMUX_PKG_LICENSE_FILE if specified
Otherwise use the licenses specified in $TERMUX_PKG_LICENSE
2019-05-19 21:36:30 +03:00
Henrik Grimler
9c0fd0513f build-package: licenses->LICENSES 2019-05-19 21:36:30 +03:00
Henrik Grimler
117ecbfb88 build-package: install licenses to $PREFIX/share/$PKG/LICENSE 2019-05-19 21:36:30 +03:00
Leonid Pliushch
a1bb53e935 cmake: update to 3.14.4 2019-05-18 17:07:08 +03:00
Tom Yan
d4d8aaeac9 build-package: fix unwind symbols hiding
Apparently because libgcc.a is now a linker script, `--exclude-libs libgcc.a` doesn't seem to do a thing. Also hiding symbols from libunwind.a.
2019-05-14 17:53:00 +03:00
Leonid Pliushch
899b158460 repology metadata tools are located in a separate repository
See https://github.com/termux/termux-repology.
2019-05-14 15:44:51 +03:00
Fredrik Fornwall
503c204164 protobuf: Update from 3.6.1 to 3.7.1 2019-05-12 00:22:25 +02:00
Fredrik Fornwall
e0af3a3a6f Update meson from 0.49.2 to 0.50.1 2019-05-11 22:36:06 +02:00
Leonid Pliushch
7a25f8489b termux_create_subpackages.sh: fix syntax errors 2019-05-10 18:50:03 +03:00
Tom Yan
fc76b5e1f4 build-package: fix subpackage-parent dependency 2019-05-10 18:50:03 +03:00
Leonid Pliushch
96f46c6a5d build-package.sh: don't write dependency list if empty 2019-05-09 22:56:26 +03:00
Leonid Pliushch
19c660dc05 build-package.sh: fix situation where subpackage's dependency list is not written to metadata 2019-05-09 22:46:46 +03:00
Leonid Pliushch
c2b843a72d build-package.sh: break possible circular dependencies 2019-05-09 22:44:05 +03:00
Fredrik Fornwall
2e6aa72a19 golang: Update from 1.12.2 to 1.12.5 2019-05-07 22:41:30 +02:00
Fredrik Fornwall
264989a264 Remove not needed line in termux_setup_rust 2019-05-07 22:20:43 +02:00
Tom Yan
52198eee5d buildorder.py: remove libandroid-support from always_deps
as libiconv is no longer a symlink of it
2019-05-07 22:16:36 +03:00
Leonid Pliushch
d850d1a4f1 build-package.sh: introduce field "Pre-Depends"
Required in rare cases where package update may break package manager during
installation process.

See https://www.debian.org/doc/debian-policy/ch-relationships.html for
more information.
2019-05-06 20:38:12 +03:00
Leonid Pliushch
da442fc146 build-package.sh: subpackages should depend on current version of the main
Avoid potential issues caused by version mismatch.
2019-05-06 16:38:33 +03:00
Leonid Pliushch
9dda444a87 new package: libiconv 2019-05-05 21:29:36 +02:00
Leonid Pliushch
d7d965db3f CI: skip packages that have long build time 2019-05-02 22:00:19 +03:00
Leonid Pliushch
599d2509d7 CI: switch to Cirrus 2019-05-01 23:45:46 +03:00
Leonid Pliushch
5ae36420eb termux_setup_rust.sh: always pick rust version from package build script
Avoid version mismatch.
2019-04-28 21:30:02 +03:00
its-pointless
b089bf18c9 rust: Update from 1.33.0 to 1.34.1 2019-04-28 00:19:21 +02:00
Fredrik Fornwall
499687c9fe Update docker image to ubuntu 19.04 and llvm 8 2019-04-27 22:48:18 +02:00
Fredrik Fornwall
4979b0e530 cmake: Update from 3.14.2 to 3.14.3 2019-04-27 00:00:40 +02:00
Fredrik Fornwall
f5fc3dfdb5 coreutils: Update from 8.30 to 8.31 2019-04-24 11:34:22 +02:00
Leonid Pliushch
99793cee35 build-package.sh: always try to download Release file (revert to old behaviour) 2019-04-22 00:42:58 +03:00
Leonid Pliushch
b5ab2097ae Fast build fixes (#3696)
* Do not re=download release files.

* Efficiently handle dependencies: do not try to download \*.deb files when they already downloaded, do not try to extract them more than one time.
2019-04-21 18:05:39 +03:00
Fredrik Fornwall
bfab2b63a9 cmake: Update from 3.13.4 to 3.14.2 2019-04-18 00:25:28 +02:00
Fredrik Fornwall
36e680b07d Adapt checksum for ninja-linux.zip 2019-04-18 00:12:24 +02:00
Fredrik Fornwall
aae8c39e8f Let rustup install rust 1.34 2019-04-17 22:42:55 +02:00
Leonid Pliushch
16aa9acb5d termux-elf-cleaner: update to v1.6
No changes if API level is >= 23.
2019-04-15 18:39:38 +03:00
Tom Yan
dab21ee7b7 zlib-dev: breaks and replaces old ndk-sysroot
also bump toolchain version for z{lib,conf}.h removal
2019-04-14 16:00:23 +03:00
Tom Yan
5170610f52 zlib: add package 2019-04-14 16:00:23 +03:00
Tom Yan
125c192664 build-package: fix conffiles for subpackages
conffiles was being created after control.tar.gz, which makes it
being omitted
2019-04-13 19:08:54 +03:00
Leonid Pliushch
8b2ae5b3e8 package_uploader.sh: handle licenses "custom" and "non-free" 2019-04-12 17:23:45 +03:00
Leonid Pliushch
53c9c845bf swi-prolog: specify necessary host tools in setup-ubuntu.sh 2019-04-09 18:57:29 +03:00
Leonid Pliushch
8f042ae6b3 build-package.sh: do not try to gzip manpages that are already gzipped
Avoid warning and broken symlinks.
2019-04-09 17:45:43 +03:00
Tom Yan
7bfe758c81 build-package: set CMAKE_FIND_ROOT_PATH_MODE_PROGRAM to NEVER 2019-04-09 14:23:24 +03:00
Fredrik Fornwall
c0d22ec7d1 golang: Update from 1.12.1 to 1.12.2 2019-04-07 22:44:13 +02:00
Tom Yan
4098976a2e buildorder.py: make subpackage pull its parent 2019-04-06 02:57:54 +03:00
its-pointless
59625ccecd llvm-8 and rust with back ports for llvm-8 2019-03-29 01:28:11 +02:00
Tom Yan
a57750848d build-package: add TERMUX_PKG_DEVPACKAGE_{BREAKS,REPLACES} support 2019-03-27 01:10:30 +08:00
Tom Yan
30f12fec65 buildorder.py: make fast build mode download all subpackages 2019-03-26 17:12:28 +02:00
Leonid Pliushch
5ec5a1a314 build-package.sh: fix printing of error message when trying to run script on Android device 2019-03-26 01:27:09 +02:00
Leonid Pliushch
3d0e516c64 termux_step_setup_toolchain.sh: simplify unneeded headers removal 2019-03-25 17:55:48 +02:00
Leonid Pliushch
9e682ab75f termux_step_setup_toolchain.sh: move 'rm usr/include/sys/capability.h' to correct place 2019-03-25 17:32:00 +02:00
Leonid Pliushch
512bcdbea5 package uploader: when script exit, return status code '1' if there errors occurred
package_uploader.sh should not exit on error when package processing is not finished
by allowing to do as much as possible.

But we need some mechanizm to notify maintainers when errors occurred on CI/CD
on package operations.
2019-03-25 16:43:30 +02:00
Leonid Pliushch
73c6e60c59 setup-ubuntu.sh: add lua5.3, needed by luarocks 2019-03-25 16:12:03 +02:00
Leonid Pliushch
4fbf09ac78 package uploader: fix checking of build.sh existence 2019-03-25 14:25:08 +02:00
Leonid Pliushch
214799a285 package uploader: omit messages on stderr when sourcing build.sh
Prevents messages like this one:
which: no msgfmt in (/home/xeffyr/bin:/run/wrappers/bin:/home/xeffyr/.nix-profile/bin:/nix/var/nix/profiles/default/bin:/run/current-system/sw/bin:/etc/profiles/per-user/xeffyr/bin)
2019-03-25 14:15:58 +02:00
Fredrik Fornwall
2b4652804f Remove sys/capability.h from the NDK sysroot
The sys/capability.h file will be provided by libcap-dev.
2019-03-24 23:15:44 +01:00
Tom Yan
bc217587fb build-package: handle -dev package download from buildorder.py 2019-03-23 17:31:40 +02:00
Tom Yan
ca475bf2be buildorder.py: only omit target's subpackage for fast build 2019-03-20 19:23:51 +02:00
Tom Yan
befdca1749 buildorder.py: parse TERMUX_PKG_DEVPACKAGE_DEPENDS 2019-03-20 19:23:51 +02:00
Leonid Pliushch
2ee99435a9 fast builds: enable downloading from game, root & science repositories 2019-03-20 17:27:33 +02:00
Leonid Pliushch
8742fc020d termux_step_setup_variables.sh: remove unneeded variable
Not needed after cada4be0d87bc4bf8559f08304d6051624d43737.
2019-03-20 03:41:36 +02:00
Leonid Pliushch
166f6e6e47 package uploader: fix conditional when checking http status after publishing in upload_package() 2019-03-20 03:39:35 +02:00
Leonid Pliushch
37259f0867 package uploader: fix variable name in upload_package() 2019-03-20 03:16:43 +02:00
Leonid Pliushch
2ea0b724aa fast builds: enable downloading from unstable and x11 repositories 2019-03-20 02:57:52 +02:00
Leonid Pliushch
81594bf062 package uploader: escape dot in versions when using grep 2019-03-20 01:37:03 +02:00
Leonid Pliushch
b0d006d10a package uploader: fix message in delete_old_versions_from_package() 2019-03-18 23:05:53 +02:00
Leonid Pliushch
89fdecc467 package uploader: do not require build.sh when deleting package 2019-03-18 23:04:47 +02:00
Henrik Grimler
619d8bba25 Merge pull request #3450 from tomty89/libc++
Simplify libc++ setup
2019-03-18 21:06:19 +01:00
Leonid Pliushch
b789ab46b1 package uploader: attempt to fix errors when using on CI 2019-03-17 13:04:59 +02:00
Leonid Pliushch
e42860a935 update package_uploader.sh
* A bit of refactoring.

* Cleanup mode - remove old package versions and keep only latest one on the remote.

* Metadata regeneration mode. Allows to regenerate metadata without package uploading.

* No script failure when package errored. Just show message and continue.

* Do not leave repository in inconsistent state when terminating uploader with ctrl-c.

* Prevent processing of the duplicated package names in arguments. Argument list will be also sorted.

* Compact informational messages.
2019-03-17 03:13:12 +02:00
Henrik Grimler
ed1cad9ce2 package_uploader: fix typo 2019-03-16 15:15:13 +01:00
Fredrik Fornwall
12ad4574aa golang: Update from 1.12 to 1.12.1 2019-03-15 14:53:10 +01:00
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
Fredrik Fornwall
0eb957e0e4 Dockerfile: Clean up for ndk r18 2018-09-27 01:06:34 +02:00
Fredrik Fornwall
0671f0ffea weechat: Bundle man pages with asciidoctor 2018-09-26 08:26:51 +02:00
Fredrik Fornwall
035a00ed4a setup-ubuntu.sh: Remove xutils-dev 2018-09-25 00:32:00 +02:00
Fredrik Fornwall
62c6c16c03 Add scripts/ldd utility script 2018-09-22 00:25:27 +02:00
Fredrik Fornwall
02c0668a9b Update to NDK r18 (#2827) 2018-09-19 23:29:39 +02:00
Fredrik Fornwall
81d6f9dc0a setup-ubuntu.sh: Install g++-multilib
Needed by nodejs when building for 32-bit arches.
2018-09-12 07:07:49 +02:00
Fredrik Fornwall
76727af5e5 Fix mac error in scripts/run-docker.sh 2018-09-11 22:32:58 +02:00
Stephen
acd3fa08a7 Update setup-ubuntu.sh 2018-08-28 22:58:31 +02:00
Stephen
6546af166c add gawk for apr-util build
#1169
2018-08-28 22:58:31 +02:00
Fredrik Fornwall
89f52767c0 Use https for downloading the android ndk 2018-08-27 22:25:51 +02:00
Laurent Arnoud
3d75da3db5 Check checksum on android sdk and ndk download 2018-08-27 22:21:01 +02:00
Fredrik Fornwall
2c3f54682a Remove old and unused scripts/build-clang.sh 2018-08-21 01:36:41 +02:00
Fredrik Fornwall
b3f68a9b5c Update build tools version to 28.0.2
Also extract setting ndk and build tools version to
scripts/properties.sh to avoid duplication.
2018-08-15 16:52:18 +02:00
Fredrik Fornwall
b080944831 Use newer sdk-tools-linux in setup-android-sdk.sh 2018-08-01 22:24:19 +02:00
Henrik Grimler
933afcd2f6 texlive-bin: host-build tools and rm texlive-binaries from setup-ubuntu.sh (#2689)
Saves about 300 mb from docker image
2018-07-31 22:57:22 +02:00
Fredrik Fornwall
047754e8fa Update android sdk build tools
Update the android sdk build tools from 27.0.3 to 28.0.1, bringing
in d8 which is replacing dx.

This needs an update of the Docker image, so run scripts/update-docker.sh
to update it.
2018-07-26 12:21:43 +02:00
Fredrik Fornwall
7634072451 run-docker.sh: Allow multiple containers
By defining CONTAINER_NAME one can now build from multiple containers:

    CONTAINER_NAME=builder1 ./scripts/run-docker.sh
    CONTAINER_NAME=builder2 ./scripts/run-docker.sh
    ...
2018-07-23 01:34:06 +02:00
Fredrik Fornwall
56088203df Add script to check built versions 2018-07-02 14:00:15 +02:00
Fredrik Fornwall
1e4bea57d9 Update repology metadata generation
Fix empty dx version and write out empty depends array.
2018-06-22 23:35:39 +02:00
Fredrik Fornwall
dae66641d4 Fix issue in generate-repology-metadata.sh 2018-06-22 23:35:39 +02:00
Fredrik Fornwall
0963ff0422 Add scripts/generate-repology-metadata.sh 2018-06-22 01:15:35 +02:00
Fredrik Fornwall
11c80acb01 Handle dependencies like 'a | b' in buildorder.py 2018-06-16 22:50:06 +02:00
Vishal Biswas
160d3aeb06 update ndk to 17 and switch some packages to clang build (#2415)
* update ndk to 17

* bump NDK version in setup-android script

* libnl: fix for ndk r17

* libpixman: use clang's __builtin_shufflevector instead of __builtin_shuffle (#1)

Required to make package build with ndk17.

* fix as for arm

* ndk17 still uses ld.bfd on aarch64

* use -fno-integrated-as for clang only

* glib: remove patch unnecessary after ndk17

* torsocks: remove unneeded patch after ndk17

* subversion: fix build as clang++ now errors out for mismatched flags

* libpulseaudio: fix build with ndk17

https://github.com/termux/termux-packages/pull/2415#issuecomment-388296684

* gst-plugins-good: disable video4linux2

ioctl is defined as __overloadable in ndk17 headers which
  conflicts with v4l2object's member ioctl

* libzmq: disable Werror to build with ndk17

* ltrace: hardcode symbol not available in ndk17

* busybox: build with clang for all arches except arm

* dropbear: build with clang instead of gcc

* gnupg: build with clang instead of gcc

* openssl: use clang for all arches except arm

* picolisp: build with clang instead of gcc

* valgrind: use clang on all arches except aarch64

* Revert "gst-plugins-good: disable video4linux2"

This reverts commit 43850b81ccf60033c25cb13dfd326c1b0528773a.
Already applied on base branch.

* libllvm: use default arm triple
2018-05-27 14:55:20 +02:00
Fredrik Fornwall
9ccc908e26 Update to ubuntu 18.04 in docker image 2018-05-02 23:01:29 +02:00
Fredrik Fornwall
c8ea6b6c63 setup-ubuntu.sh: ant is no longer used 2018-05-02 23:00:28 +02:00
Fredrik Fornwall
96c9f0466f Update android build tools from 27.0.1 to 27.0.3 2018-03-25 00:08:20 +01:00
tomty89
92fb0e15fd ecj: provide android-21.jar instead of android-16.jar (#2274) 2018-03-25 00:02:47 +01:00
Fredrik Fornwall
0c469ce1df Update meson build system from 0.44.0 to 0.45.1 2018-03-22 23:15:12 +01:00
sogaiu
efe2d03821 Vagrantfile tweaks
Existing Vagrantfile lead to some problems here during provisioning:

  1. setup-ubuntu.sh would fail

and after:

  2. build-all.sh would run out of disk space
  3. build-all.sh would exit due to permission issues

Issue 1 can be addressed by running sudo apt-get update before setup-ubuntu.sh in the Vagrantfile.

One way to address issue 2 is to use the vagrant-disksize plugin:

  https://github.com/sprotheroe/vagrant-disksize

It can be installed by:

  vagrant plugin install vagrant-disksize

Then modifying Vagrantfile to contain a line like:

  config.disksize.size = '50GB'

causes the first partition to be enlarged to 50GB during provisioning.  Combined with an appropriate invocation of resize2fs:

  sudo resize2fs /dev/sda1

so that the filesystem in the partition is resized, the disk space issue seems alleviated.

Issue 3 can be addressed by changing the user from 'ubuntu' to 'vagrant' in the Vagrantfile -- at least that's what worked here.
2018-01-25 22:15:35 +01:00
Fredrik Fornwall
c2b0104802 Fix meson patch (fixes #2051) 2018-01-21 20:45:35 +01:00
Fredrik Fornwall
43e8daa888 Update meson version from 0.43.0 to 0.44.0 2018-01-14 22:23:40 +01:00
Fredrik Fornwall
3e36b0e87b Add TERMUX_PKG_REVISION check to lint-packages.py 2017-12-20 00:13:01 +01:00
Fredrik Fornwall
2523abf65c Modify python formatting 2017-12-05 23:30:44 +01:00
Fredrik Fornwall
ea61862721 Add scripts/lint-packages.py
Harmonize the layout by having the first two lines of a package
definition always be the homepage and the description.
2017-12-05 22:48:12 +01:00
Fredrik Fornwall
dfaf1e308d Improve scripts/list-packages.sh 2017-12-05 22:36:18 +01:00
Fredrik Fornwall
dc5259ab1e Slim down the setup created by setup-ubuntu.sh
This changes the docker image size from around 5.8 to 3.6 GB.

For those wanting more tools in the docker build environment sudo
is always available.
2017-11-26 00:43:19 +01:00
Fredrik Fornwall
b54c3eb86e Update scripts/Vagrantfile for ubuntu 17.10 2017-11-21 06:05:04 +01:00
Fredrik Fornwall
d1776d92e7 Remove NDK gnu-libstdc from the docker image 2017-11-19 14:40:31 +01:00
Fredrik Fornwall
b39b311462 Cleanup scripts/buildorder.py 2017-11-19 14:29:49 +01:00
Fredrik Fornwall
0c0af59332 Update NDK used to r16
Run scripts/update-docker.sh to update the docker image.
2017-11-15 16:48:35 +01:00
Fredrik Fornwall
e4a9db43b8 Improve check-versions.sh 2017-11-07 04:58:09 +01:00
Fredrik Fornwall
41cc3653aa Enable dependency checks for out-of-tree packages
When building an out-of-tree package, as in
	./build-package.sh path/to/my-package.sh
dependency checks now works.
2017-11-04 01:18:32 +01:00
Fredrik Fornwall
ffc53c3978 Update the ubuntu build setup from 17.04 to 17.10
An updated image has been pushed to the docker hub, so update with

./scripts/update-docker.sh
2017-11-02 10:18:05 +01:00
Fredrik Fornwall
45e048f512 Better way of accepting Android SDK licenses 2017-11-02 00:21:36 +01:00
Vladimir Oltean
f579fc2f75 buildorder.py: handle the case when more than one dependency type is set (#1555) 2017-09-23 02:55:06 +02:00
Fredrik Fornwall
64666c40b2 Update android platform setup
- Update to build tools 26.0.1.
- Update from android-25 to android-26.
- Add android-16 for use in https://github.com/termux/termux-packages/pull/1133
2017-08-11 14:09:32 +02:00
Henrik Grimler
af41dc2143 Enable ghostscript (#1135)
* Fix ghostscript for aarch64.

* ghostscript: fix arm header

* ghostscript: clean build script

* ghostscript: disable i686 and x86_64 for now and enable package!

* Add required build dependencies for ghostscript to setup scripts

* ghostscript: add libexpat as dependency

* ghostscript: add (untested) generated headers for x86_64 and i686
2017-08-11 13:25:55 +02:00
Fredrik Fornwall
6980dd1851 Add basic TERMUX_PKG_BUILD_DEPENDS support 2017-08-08 13:28:52 +02:00
Fredrik Fornwall
24b828afb1 setup-ubuntu.sh: Add g++-multilib
The g++-multilib package is required for nodejs-current on 32-bit
arm and i686 builds.
2017-08-08 13:28:08 +02:00
Fredrik Fornwall
8aa86e32b4 Update from NDK version used from r15b to r15c
The docker image has been updated - run scripts/update-docker.sh
2017-08-07 22:53:43 +02:00
Fredrik Fornwall
a13bf95a78 Initial stab at supporting ninja and meson builds
Currently unused.
2017-07-29 02:11:04 +02:00
Fredrik Fornwall
b1f17924b7 notmuch: Fix man page generation 2017-07-26 16:13:45 +02:00
Fredrik Fornwall
549dfb1c2c fontconfig: Update from 2.12.0 to 2.12.4 2017-07-26 14:21:12 +02:00
Henrik Grimler
3c634e4903 Docker: login as "builder" even if run-docker.sh is run as root.
Running with sudo otherwise produces debs that normal users don't have
permission to access.
2017-07-22 18:52:08 +02:00
Fredrik Fornwall
bf74a80eac run-docker.sh: Work around mac readlink 2017-07-15 11:37:17 +02:00
olg
09c5e72a9a Fix the uid in the docker container, but only when needed and make the bind mount work for arbitrary pwd... 2017-07-15 11:20:05 +02:00
hacknox
3ac5e56343 Use $HOME replace home path 2017-07-15 11:20:05 +02:00
hacknox
36eeaeec1b Fix root user $HOME path 2017-07-15 11:20:05 +02:00
hacknox
b21d9e3343 fix docker volume read/write permission 2017-07-15 11:20:05 +02:00
Fredrik Fornwall
369f1e26e3 Do not remove libc++ in Dockerfile setup 2017-07-15 02:25:12 +02:00
Fredrik Fornwall
167405240b Dockerfile: Do not remove non android-21 platforms 2017-07-07 12:23:13 +02:00
Fredrik Fornwall
ab2a420e96 setup-ubuntu.sh: Install libgnutls-dev
Needed for building mariadb
2017-07-07 03:58:32 +02:00
pvagner
cc02b93ff8 Add scripts/setup-archlinux.sh similar to setup-ubuntu.sh (#1098) 2017-07-01 00:39:28 +02:00
Fredrik Fornwall
71b1a471d8 setup-android-sdk.sh: Update from NDK r15 to r15b 2017-06-25 22:13:17 +02:00
Fredrik Fornwall
49dd98a346 Update from NDK r14 to r15
The docker image has been updated, use
	./scripts/update-docker.sh
to update.

Note that we are still using the old deprecated non-unified headers
- updating to that is the next step.
2017-06-11 22:55:04 +02:00
Fredrik Fornwall
81c7229f5a Update android tools and build tools
The Docker image has been rebuilt, update with:

scripts/update-docker.sh
2017-05-20 21:17:00 +02:00
Wetitpig
dd3f197db6 Add ed package for bc (#1032) 2017-05-19 23:54:36 +02:00
Fredrik Fornwall
7dfc98bfe0 setup-ubuntu.sh: libncurses5-dev used by mariadb
The docker image has been updated, run scripts/update-docker.sh.
2017-05-09 17:00:42 +02:00
Fredrik Fornwall
e00dfc00e1 Make ubuntu 17.04 the reference build environment 2017-04-20 09:00:02 +02:00
Fredrik Fornwall
ba198479a3 Fix typo in scripts/setup-ubuntu.sh 2017-03-20 21:03:00 +01:00
Fredrik Fornwall
f0d9d8e2c0 Remove scripts/bintray-upload-deb
It doesn't work and termux-apt-repo is the new black.
2017-03-19 16:19:30 +01:00
Fredrik Fornwall
46fe48b356 Validate that no hard links exists in package 2017-03-07 01:44:53 +01:00
Matthew Klein
a582e5fcb4 Add PowerShell script to run Docker (#815)
* Add .gitattributes file

* Add PowerShell script to run Docker
2017-03-04 22:20:43 +01:00
Fredrik Fornwall
b26283d4a7 Update from NDK r13 to r14
For those using Docker build environments: run scripts/update-docker.sh
to pull the latest Docker image with r14 installed.

Otherwise, remove the $NDK directory (defaults to
$HOME/lib/android-ndk if not setup in the environment) and run
scripts/setup-android-sdk.sh to setup a r14 installation.
2017-03-04 22:03:54 +01:00
Fredrik Fornwall
c197515d23 netpbm: Update from r2831 to r2901 2017-02-24 22:36:19 +01:00
Fredrik Fornwall
95761413f6 run-docker.sh: Use long option names 2017-02-04 23:23:07 +01:00
Fredrik Fornwall
c6f5b04a53 setup-ubuntu.sh: Use shorter string concatenation 2017-02-02 22:14:46 +01:00
Fredrik Fornwall
11af8e220c setup-android-sdk.sh: Remove incorrect folder 2017-02-02 02:23:43 +01:00
Fredrik Fornwall
18fbaa060b Update the android sdk build tools used
The docker image has been rebuilt, so ./scripts/update-docker.sh
should be used.
2017-02-02 01:39:29 +01:00
Fredrik Fornwall
05e29c5b69 Dockerfile: Switch from ADD to COPY 2017-02-02 01:35:53 +01:00
Fredrik Fornwall
d258ef0cea setup-ubuntu.sh: We actually don't need nasm
The NDK already brings yasm which is enough.
2017-01-24 09:58:22 +01:00
Fredrik Fornwall
da1fd85742 setup-ubuntu.sh: Remove yasm as it's in the NDK 2017-01-23 00:05:20 +01:00
Fredrik Fornwall
e59984067b Use non-root user when using docker
We now use a non-root user when building packages using a docker
container. This allows detecting misconfigured packages which try
to install files outside of $TERMUX_PREFIX or otherwise mess with
the system during a build.
2017-01-22 23:13:48 +01:00
Fredrik Fornwall
1006361f98 setup-ubuntu.sh: Remove two unnecessary packages 2017-01-22 22:32:41 +01:00
Fredrik Fornwall
b9b9b2067b Update the Vagrantfile to ubuntu 16.10
This is completely untested.
2017-01-18 02:51:17 +01:00
Fredrik Fornwall
cdb97c0b10 Update to latest config.{guess,sub} 2017-01-18 01:02:18 +01:00
Fredrik Fornwall
154bc46225 lua: Add and replace luajit
luajit is rather complex and lacking upstream maintenance.
2017-01-18 01:02:18 +01:00
Fredrik Fornwall
07884eae94 Fix arm issue with clang-pie-wrapper
We need to wrap arm-linux-androideabi, not arm-linux-android.

Also, specify armv7a as clang cpu target and not just arm.
2017-01-17 17:31:24 +01:00
Fredrik Fornwall
b4a6e58893 golang: Use clang for native build 2017-01-16 11:13:38 +01:00
Vishal Biswas
bd3e679c7d fix clang cmake build left broken for arches other than aarch64 by #2f0de58717 (#677) 2017-01-16 08:48:23 +01:00
Fredrik Fornwall
2f0de58717 Use clang by default through a script wrapper
The script wrapper ensures that position-independent executables
are built without having to modify any build system.
2017-01-15 21:13:22 +01:00
Fredrik Fornwall
60a26b9f4c setup-ubuntu.sh: Remove cmake, add python3.6 2017-01-15 19:44:15 +01:00
Fredrik Fornwall
65512d6058 Dockerfile: Update from ubuntu 16.04 to 16.10 2017-01-15 19:43:49 +01:00
Fredrik Fornwall
ef98cf1c18 Add (currently unused) build-clang.sh script 2017-01-15 19:38:21 +01:00
Fredrik Fornwall
4e8d7d1e42 buildorder.py: Open files with encoding=utf-8
This makes us not depend on the current environment. Fixes #665.
2017-01-09 05:26:31 -05:00
Fredrik Fornwall
e65ab762d3 buildorder.py: Better error message 2017-01-08 07:37:43 -05:00
Fredrik Fornwall
74b5c53c18 valac: Depend on clang, glib-dev, pkg-config
As mentioned in #644.
2017-01-03 17:46:59 -05:00
casept
8a0da1ad11 Add vagrant (#642) 2017-01-03 19:05:15 +01:00
Fredrik Fornwall
539d9e6ab2 buildorder.py: Handle also ' in TERMUX_PKG_DEPENDS 2017-01-03 04:26:10 -05:00
Fredrik Fornwall
b59e03ab08 Remove stray char in comment 2016-10-07 13:56:46 -04:00
Fredrik Fornwall
5b7c3ff6d3 Minor comment cleanups of Dockerfile 2016-10-07 13:37:10 -04:00
Fredrik Fornwall
711e9e5b06 Update to using NDK r13 2016-10-07 13:37:10 -04:00
Fredrik Fornwall
5722e8a67d Remove setup-fedora.sh and setup-mac.sh
The best way to lessen the pain of building packages is probably
to use a version of Ubuntu (currently 16.04) as the only supported
build environment. For users of other Linux distributions and
platforms Docker is the best solution.
2016-10-07 13:11:58 -04:00
Fredrik Fornwall
50166cb172 Update to android-24 in setup-android-sdk.sh 2016-10-06 19:37:47 -04:00
Fredrik Fornwall
0dc712fa46 Add 'ant' as required ubuntu package for building 2016-10-06 19:37:18 -04:00
Fredrik Fornwall
6376c14274 Add nasm and yasm to setup-ubuntu.sh 2016-09-22 20:47:11 -04:00
Fredrik Fornwall
c949d94f4b setup-ubuntu.sh: Install intltool for qalc build 2016-09-22 21:59:25 +02:00
Fredrik Fornwall
39d7cdd7f1 mpv: Use rst2man package instead of pip install 2016-09-22 20:56:09 +02:00
Fredrik Fornwall
bb97a729ca Use offline copies of config.{guess,sub}
Previously the latest version was downloaded from the git web
interface at git.savannah.gnu.org.
2016-09-16 06:23:01 -04:00
Fredrik Fornwall
1858fd1b1d buildorder.py: Always depend on libandroid-support 2016-09-16 05:48:02 -04:00
Fredrik Fornwall
97f23095eb Fix NDK version in setup-android-sdk.sh 2016-07-26 09:06:39 -04:00
Fredrik Fornwall
382cfb780c Update SDK build tools to 24.0.1 2016-07-26 07:23:39 -04:00
Fredrik Fornwall
82620efb1c Update NDK from r12 to r12b 2016-07-19 19:14:41 -04:00
Fredrik Fornwall
39c1918069 Update setup-mac.sh 2016-06-20 00:21:39 +02:00
Fredrik Fornwall
ed021630df Fixes for building on a mac 2016-06-11 01:17:00 +02:00
Fredrik Fornwall
7073199b83 setup-android-sdk.sh: Fix mac sdk download 2016-06-10 23:19:22 +02:00
Fredrik Fornwall
37c88ee367 setup-android-sdk.sh: Fix mac ndk download 2016-06-10 23:11:53 +02:00
Fredrik Fornwall
202ed9d3b3 Update to use NDK r12 2016-06-10 10:45:16 -04:00
Fredrik Fornwall
1b11c6fa66 Merge pull request #300 from vaites/master
Added Fedora setup script
2016-06-06 23:22:37 +02:00
Fredrik Fornwall
a005794323 Tweak build script and docker setup
- Output deb files to debs/ folder by default.
- Use $HOME/.termux-build for build folder by default (changed
  from previous $HOME/termux).
- Make scripts/run-docker.sh re-use a single container instead of
  creating new ones for each run.
- Avoid mounting the whole Termux build folder in docker. This
  fixes #294, mmap not supported host folders under OS X.
- Add a scripts/update-docker.sh utility for checking for an
  updated docker image..
- Make build-package.sh support the [-a ARCH] flag to specify arch.
- Make aarch64 the default arch (from previous arm).
- Try to improve the README a bit.
2016-06-03 18:41:30 -04:00
David Martinez
59ea446228 Added Fedora setup script 2016-06-04 00:07:43 +02:00
Fredrik Fornwall
af8dfb4559 buildorder.py: Show package if lacking build.sh 2016-06-02 11:13:53 -04:00
Fredrik Fornwall
01e91d6146 neovim: Use bundled lua 2016-05-30 18:07:22 -04:00
Fredrik Fornwall
88183689ef Build and docker updates 2016-05-27 18:24:50 -04:00
Fredrik Fornwall
015c1a73bd Fix neovim build deps 2016-05-25 11:29:32 -04:00
Fredrik Fornwall
3c323c69ae Docker and build updates
- Update to build on ubuntu 16.04.
- Docker: Set FORCE_UNSAFE_CONFIGURE=1. Fixes #275.
- Docker: Various fixes.
- Neovim: No longer require lua.
- Some minor package updates.
2016-05-24 18:38:29 -04:00
Fredrik Fornwall
4a9eb8522e Add start of regression testing of packages
Current plan is to have a tests/ folder in packages, where each
file in this folder is a shell script which indicates a test
failure by a non-zero exit value.
2016-05-10 20:43:31 +02:00
Fredrik Fornwall
00875c034b buildorder.py: Handle version qualifiers 2016-04-29 14:14:28 +02:00
Fredrik Fornwall
658bba67c0 Introduce a scripts/ folder 2016-01-14 22:45:50 -05:00