Commit Graph

308 Commits

Author SHA1 Message Date
Fredrik Fornwall
2811236000 Switch back to -Os instead of -Oz for arm
Seems that there are still issues (segfault on ruby at least).
2018-09-20 02:43:14 +02:00
Fredrik Fornwall
eb99c23cf1 Try using -Oz on 32-bit arm as well after ndk r18 2018-09-19 23:32:30 +02:00
Fredrik Fornwall
02c0668a9b Update to NDK r18 (#2827) 2018-09-19 23:29:39 +02:00
Henrik Grimler
6d8e9a7939 arm: don't build with -fno-integrated-as
Fixes ruby segfault (without the need for -O1).
2018-09-19 23:21:56 +02:00
Henrik Grimler
80b8055538 build-{package,all}.sh: fix -d and add -o to build-all
-d didn't work for build-package.sh -d -a all before.
2018-09-15 21:20:28 +02:00
Henrik Grimler
3fd0e03e43 build-package.sh: fix typo 2018-09-15 21:20:28 +02:00
Henrik Grimler
2e114a4b8d build-package.sh: add option to move debs to another folder 2018-09-15 21:20:28 +02:00
Fredrik Fornwall
b67725b59a build-package: Use cargo install for rust packages
Starting with rust 0.29.0 the cargo install command can be used with
--target.

Also, install shell completion scripts for ripgrep.
2018-09-14 20:40:34 +02:00
Fredrik Fornwall
fd72a74c42 openssl: Update from 1.0.2 to 1.1.1 (#2775) 2018-09-11 22:43:19 +02:00
Fredrik Fornwall
7db265c137 cmake: Update from 3.12.1 to 3.12.2 2018-09-09 23:02:30 +02:00
Fredrik Fornwall
c98c91496d Pass -DDOXYGEN_EXECUTABLE to cmake for all builds
This avoids cmake picking up a cross-compiled doxygen binary.
2018-09-06 06:36:42 +02:00
Fredrik Fornwall
474a295669 fd: Add package (hello second rust package!)
Also extract out rust setup from ripgrep.
2018-09-03 23:57:26 +02:00
Fredrik Fornwall
a0bd8400c1 Fix mistake in shellcheck cleanup 2018-08-27 22:36:11 +02:00
Fredrik Fornwall
e5ab968a6a Fix some shellcheck issues 2018-08-27 22:27:42 +02:00
Henrik Grimler
7bac02cef6 build-package.sh: set --libdir=$PREFIX/lib
x86_64 builds defaults to $PREFIX/lib64 otherwise on some systems.
2018-08-27 12:21:21 +02:00
Fredrik Fornwall
0d58bc4384 golang: Update from 1.10.3 to 1.11 2018-08-25 23:22:24 +02:00
Fredrik Fornwall
542a7defa1 Use ninja as cmake generator by default 2018-08-23 17:52:26 +02:00
Davide Depau
a18e34ccfd Make $TERMUX_DEBDIR configurable
Allows building debs outside of the Termux source directory
2018-08-23 17:36:50 +02:00
Tom Yan
60e337e7fb build-package.sh: use $TERMUX_PKG_API_LEVEL for -DCMAKE_SYSYEM_VERSION 2018-08-22 08:34:44 +02:00
Fredrik Fornwall
f1e9f33727 Run termux_setup_ninja if TERMUX_CMAKE_BUILD=Ninja
Also drop TERMUX_PKG_EXTRA_NINJA_ARGS for now, it can be added back if
desired.
2018-08-21 01:00:59 +02:00
Joakim
5a5cf2b11d cmake: Allow choosing Ninja to build packages 2018-08-21 00:49:42 +02:00
Fredrik Fornwall
33e80f9944 Make checksums for downloads mandatory
Use SKIP_CHECKSUM if you really want to avoid checksums.
2018-08-21 00:35:50 +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
e16ba7d86f cmake: Update from 3.11.4 to 3.12.1 2018-08-10 13:01:10 +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
Henrik Grimler
e71adec6a5 wireguard-tools: Add package
Also run make if $TERMUX_PKG_EXTRA_MAKE_ARGS is defined, even if no $TERMUX_PKG_SRCDIR/Makefile exists.
2018-07-15 17:11:40 +02:00
Fredrik Fornwall
16dae8a4eb Update meson used from 0.46.1 to 0.47.0 2018-07-03 13:25:19 +02:00
Fredrik Fornwall
4682296dae Fix typo in build-package.sh 2018-06-26 04:53:02 +02:00
Leonid Pliushch
461ab10d23 build-package.sh: introduce TERMUX_PKG_PROVIDES
The field 'Provides:' makes possible creation of virtual packages.
Info: https://www.debian.org/doc/debian-policy/#virtual-packages-provides
2018-06-24 02:16:49 +02:00
Fredrik Fornwall
a00923eee0 Introduce TERMUX_PKG_SKIP_SRC_EXTRACT
This new construct allows us to specify the src url in a structured
way for e.g. repology metadata. Start by using it in ack-grep and
ca-certificates.
2018-06-22 01:13:24 +02:00
Fredrik Fornwall
019588bc51 cmake: Update from 3.11.3 to 3.11.4 2018-06-20 01:20:55 +02:00
Henrik Grimler
bc98e1e72d build-package.sh: don't set TERMUX_PKG_REPLACES for debug builds
It was introduced in c18051e78118966e4a4d77cb1638d767822eca66. It didn't work as expected.
2018-06-13 20:22:13 +02:00
Henrik Grimler
71594b6ea5 Allow TERMUX_PKG_SRCURL and TERMUX_PKG_SHA256 to be arrays (#2506)
* build-package.sh: allow for arrays in TERMUX_PKG_{SRCURL,SHA256}

Packages that require several source archives can then set these parameters to
arrays instead of downloading them "manually" in termux_step_post_extract.

Downloaded files are extracted into subfolders in TERMUX_PKG_SRCDIR.

Tested for backward compatibility in a couple of packages and the combinations
tar + tar, zip + tar, tar + zip, zip + zip.

* perl: download perl-cross through TERMUX_PKG_SRCURL

* perl: remove $PREFIX/{lib/libperl.so,include/perl} before build

Otherwise building perl twice doesn't give the same results, symlinks are
messed up.

Also remove old remnant from when there was a Kid.pm.patch.

* bash: fix tiny typo

* ecj: remove hardcoded SHA256 and pkg version

* elfutils: download argp-standalone through TERMUX_PKG_SRCURL

* ldc: download all src archives through TERMUX_PKG_SRCURL

* libgc: download libatomic_ops through TERMUX_PKG_SRCURL

* libllvm: download all src archives through TERMUX_PKG_SRCURL

* linux-man-pages: download src archives through TERMUX_PKG_SRCURL

* ncurses: download all src archives through TERMUX_PKG_SRCURL

* pngquant: download lib sources through TERMUX_PKG_SRCURL

Use .zip for lib since the downloaded archives are otherwise both named
$TERMUX_PKG_VERSION.tar.gz and replace each other. This causes caching to
not work.
2018-06-13 02:15:26 +02:00
Henrik Grimler
c1b82abd09 Add fixes for debug builds (#2296)
* build-package.sh: add possibility for debug patches and TERMUX_PKG_HAS_DEBUG

Setting TERMUX_PKG_HAS_DEBUG=no disables attempt to build debug build of
package.
Useful for example if a debug build doesn't make sense, as for python-packages
and texlive.

* aapt: skip D_FORTIFY_SOURCE=2 for libandroid-cutils when doing debug build

* lftp: skip D_FORTIFY_SOURCE=2 for debug build

* libflac: don't use -g3 for debug build

Configure script removes it otherwise.

* nano: skip -D_FORTIFY_SOURCE=2 for debug build

* vifm: skip -D_FORTIFY_SOURCE=2 for debug build

* mc: skip -D_FORTIFY_SOURCE=2 for debug build

* dropbear: add __attribute__((overloadable)) to XMEMSET and XMEMCPY if debug

* gdb: add __attribute__((overloadable)) to strchr if debug

* gnuit: add __attribute__((overloadable)) to strchr and strcpy if debug

* gperf: add __attribute__((overloadable)) to strlen if debug

* inetutils: add __attribute__((overloadable)) to strrchr and strchr if debug

* readline: add __attribute__((overloadable)) to strchr if debug

* tsocks: add __attribute__((overloadable)) to poll if debug

* units: add __attribute__((overloadable)) to strchr if debug

* liblua: fix bug in loslib.c that emerged in debug build

Use strncpy instead of strcpy.
Original error message:
loslib.c:169:3: error: 'strcpy' called with string bigger than buffer
  lua_tmpnam(buff, err);
  ^
loslib.c:122:37: note: expanded from macro 'lua_tmpnam'
       strcpy(b, LUA_TMPNAMTEMPLATE); \
                                   ^

* alpine: include our getpass.h in imap's mtest.c to declare getpass

Debug build complained about the previous implicit declaration.

* nginx: use --with-debug instead of --debug

* cboard: skip -D_FORTIFY_SOURCE=2 for debug build

* gettext: add __attribute__((overloadable)) to getcwd if debug

* oathtool: skip -D_FORTIFY_SOURCE=2 for debug build

* php: add __attribute__((overloadable)) to strlcpy and strlcat if debug

* expect: add __attribute__((overloadable)) to strchr if debug

* texlive: set TERMUX_PKG_HAS_DEBUG=no

* asciinema: set TERMUX_PKG_HAS_DEBUG=no

* libllvm: set TERMUX_PKG_HAS_DEBUG=no

Debug build fails with:
home/builder/.termux-build/libllvm/src/lib/Support/Unix/Path.inc:740:19: error: no matching function for call to 'RetryAfterSignal'                                                                                                      if ((ResultFD = sys::RetryAfterSignal(-1, open, P.begin(), OpenFlags)) < 0)

* build-package.sh: set TERMUX_PKG_REPLACES=package if debug build

Hopefully allows us to install debug packages without breaking dependecies.

Should be looked over and be made more similar to how debian does this in any case

* Update build.sh
2018-06-13 02:12:36 +02:00
Fredrik Fornwall
4f56a36f6d golang: Update from 1.10.2 to 1.10.3 2018-06-08 14:17:21 +02:00
Henrik Grimler
28129617b0 build-package.sh: partly undo 9b2f3b6
We'll rename debug debs to ${PKG}-dbg but not the actual package name in
control. Debug versions of packages and normal packages can then replace each
other without complaints from apt.

We need to work a bit more on it to be able to setup a debug repo.
2018-06-07 22:36:53 +02:00
Fredrik Fornwall
727c4293ef cmake: Update from 3.11.2 to 3.11.3 2018-06-06 02:44:44 +02:00
Henrik Grimler
7dd380ac70 pass-otp: add package (#2466)
* build-package.sh: add TERMUX_PKG_SUGGESTS

See https://www.debian.org/doc/debian-policy/#binary-dependencies-depends-recommends-suggests-enhances-pre-depends

* pass-otp: add package

Useful for services that require two factor authentication

Add libqrencode as SUGGESTS

* libqrencode: add package

* pass: bump package, add pass-otp as suggested package

Also add git as RECOMMENDS. Maybe pass-otp should be RECOMMENDS as well?
2018-06-04 01:35:38 +02:00
Fredrik Fornwall
81328b7093 Use common cachedir for standalone toolchain
We might just as well use TERMUX_COMMON_CACHEDIR instead of using
_lib for the standalone toolchain.
2018-05-27 15:06: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
7c2b8f9be2 cmake: Update from 3.11.1 to 3.11.2 2018-05-18 03:22:51 +02:00
Fredrik Fornwall
4cf01c6bcc Update meson used from 0.45.1 to 0.46.1 2018-05-17 19:30:07 +02:00
Fredrik Fornwall
6d409519e7 golang: Update from 1.10.1 to 1.10.2 2018-05-02 23:18:31 +02:00
Fredrik Fornwall
aac77c68bf cmake: Update from 3.11.0 to 3.11.1 2018-04-22 21:48:24 +02:00
Fredrik Fornwall
6cc1e17082 cmake: Update from 3.10.3 to 3.11.0 2018-03-31 00:48:49 +02:00
Fredrik Fornwall
bbe42921fa golang: Update from 1.10 to 1.10.1 2018-03-30 22:43:39 +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
Fredrik Fornwall
0c469ce1df Update meson build system from 0.44.0 to 0.45.1 2018-03-22 23:15:12 +01:00
Fredrik Fornwall
c316c30971 cmake: Update from 3.10.2 to 3.10.3 2018-03-18 20:59:53 +01:00
Henrik Grimler
4e1c3548d5 build-package.sh: if debug, rename package to "package-dbg"
Similar to how debian does it.
2018-03-05 11:29:53 +01:00