Adrian Schröter
79a2c8693e
enforce gnu format for deb tar archives
...
PAX aka POSIX is not supported in termux deb
2020-02-11 15:17:40 +01:00
Leonid Pliushch
8d983bb009
cmake: update to 3.16.4
2020-02-10 13:23:01 +02:00
Butta
68a4e3e163
termux_step_extract_into_massagedir.sh: don't add tmp/ files to packages, particularly on-device
2020-02-07 00:22:50 +05:30
Leonid Pliushch
349118ad61
libprotobuf: update to 3.11.3
2020-02-04 17:30:46 +02:00
Butta
b997c4eafa
termux_step_setup_toolchain.sh: don't add duplicate rpath for on-device builds
...
Unlike the NDK clang, the on-device clang has already been patched to add an rpath
to the Termux-prefixed library path, so only have the build script add the rpath
flag for NDK builds.
2020-02-02 01:21:18 +05:30
Leonid Pliushch
c9aec4cbe7
ninja: update to 1.10.0
2020-01-30 22:03:41 +02:00
Leonid Pliushch
4590b61015
golang: update to 1.13.7
2020-01-30 21:06:21 +02:00
Leonid Pliushch
7f6895dfd6
cmake: update to 3.16.3
2020-01-30 20:50:17 +02:00
Leonid Pliushch
3d595a41f0
CI: remove Cirrus configuration
2020-01-22 21:51:12 +02:00
Fredrik Fornwall
683301b678
golang: Update from 1.13.5 to 1.13.6
2020-01-09 23:48:39 +01:00
Henrik Grimler
54baabcffe
termux_step_install_service_scripts: log services should be enabled
2020-01-08 19:58:42 +01:00
Henrik Grimler
1716ee981b
termux_step_install_service_scripts: allow <service>/log to be overwritten
...
Transmission needs a custom log/run script, this allows us to define
it in $TERMUX_PKG_SERVICE_SCRIPT.
2020-01-05 15:56:26 +01:00
Henrik Grimler
ab2a3b70f0
build-package.sh: add TERMUX_PKG_SERVICE_SCRIPT var and build script
...
termux_step_install_service_scripts is run after
termux_step_post_make_install and loops over the new array
TERMUX_PKG_SERVICE_SCRIPT to add service scripts for termux-services.
The service scripts are usually only a one-liner so we might just as
well define it in a variable like TERMUX_PKG_SERVICE_SCRIPT.
TERMUX_PKG_SERVICE_SCRIPT should be an array on the format
("daemon-name" 'script to execute' "another daemon" 'multi\n line\n script'),
i.e. it should be of even length with name + script where the script
part preferably is within single quotes (to avoid accidental expansion
of for example $HOME).
2020-01-05 15:00:15 +01:00
Leonid Pliushch
729a737a49
build-package.sh: move golang variable configuration to termux_step_setup_toolchain.sh
...
Allow to use termux_setup_golang.sh for host builds.
2020-01-03 23:39:54 +02:00
Fredrik Fornwall
b34c8fb32b
Force toolchain update after ifaddrs.h and syslog.h changes
2019-12-29 23:53:09 +01:00
Leonid Pliushch
978358cfa3
Merge pull request #4639 from buttaface/headers
...
ndk-patches: use upstream ifaddrs.h and remove old syslog.h polyfills
2019-12-29 20:35:46 +02:00
Leonid Pliushch
c6abaa5b79
libprotobuf: update to 3.11.2
2019-12-21 20:49:55 +02:00
Leonid Pliushch
c8937aeade
cmake: update to 3.16.2
2019-12-21 18:10:44 +02:00
Leonid Pliushch
75af2da554
reformat scripts/build/termux_step_setup_toolchain.sh
2019-12-13 23:57:01 +02:00
Leonid Pliushch
ce0707260d
build-package.sh: fix copy-paste typo
...
clang & clang++ wrappers were copied to same file
2019-12-13 23:49:41 +02:00
Fredrik Fornwall
9f89ac3b20
cmake: Update from 3.15.5 to 3.16.1
2019-12-12 00:42:43 +01:00
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
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
b40b0bc2aa
golang: Update from 1.13.3 to 1.13.4
2019-11-21 00:01:01 +01:00
Leonid Pliushch
ddf7066863
build-package.sh: fix url for unstable & x11 packages
2019-11-17 14:56:25 +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
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
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
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
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
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
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
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
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
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
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
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
2d7f6ecb75
CI: omit newlines when printing list of packages for building
2019-07-24 21:41:27 +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
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
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