Commit Graph

237 Commits

Author SHA1 Message Date
Fredrik Fornwall
c8b721bab0 Move TERMUX_STANDALONE_TOOLCHAIN declaration
See https://github.com/termux/termux-packages/pull/1125
2017-07-12 11:22:07 +02:00
Fredrik Fornwall
b117bf39f1 ndk-patches: Fix malformed <utmp.h> patch 2017-07-10 09:52:50 +02:00
Fredrik Fornwall
5e29b6bbb4 Make it possible to opt in to _FILE_OFFSET_BITS=64 2017-07-10 00:02:22 +02:00
Fredrik Fornwall
64bafdb635 Introduce TERMUX_PKG_API_LEVEL
By setting the TERMUX_PKG_API_LEVEL property to an android api
level packages can build against later API levels than the current
Termux default of 21.
2017-07-09 21:22:49 +02:00
Fredrik Fornwall
993268c308 Drop -D_FILE_OFFSET_BITS=64 support for now
32-bit android uses 32-bit off_t by default. When building with
-D_FILE_OFFSET_BITS=64 with unified headers off_t are promoted
to 64-bit, but there are bugs in the toolchain and spotty support
for it in the platform (not all functions are available until
android-24, and the platform zlib is compiled with 32-bit off_t).

Also, unless every library&program is rebuilt with 64-bit off_t,
including user-built ones, we risk a mismatch between programs and
libraries which can cause serious (but sometimes subtle) runtime
failures.

As -D_FILE_OFFSET_BITS=64 is not that important for most users
(with mariadb requiring it as an exception), we drop the support
for now by patching it away in <sys/cdefs.h>.
2017-07-07 03:52:46 +02:00
Fredrik Fornwall
4a5fd7241c Fix incorrect struct __sFILE
The __sFILE struct cannot change size when _FILE_OFFSET_BITS=64
is set as it is an API into libc.
2017-07-03 01:27:32 +02:00
Fredrik Fornwall
6f8d07fa94 Remove pty.h from libutil-dev
Instead let ndk-sysroot provide it.
2017-07-02 11:56:40 +02:00
Fredrik Fornwall
358b7c4a95 build-package.sh: pkg-config and gnulib updates
Avoid setting PKG_CONFIG_LIBDIR until after host build.

Avoid more of gnulib.
2017-07-02 11:37:35 +02:00
Fredrik Fornwall
c2df040430 Patch <android/api-level.h> for default api level 2017-07-01 02:25:36 +02:00
Fredrik Fornwall
ebb3f0f296 Patch stdlib.h to include stdint.h
Fixes graphviz build.
2017-07-01 01:54:44 +02:00
Fredrik Fornwall
ff91813fdb Switch over to building with unified headers 2017-07-01 00:04:02 +02:00
Fredrik Fornwall
cf21891a80 Required NDK r15b 2017-06-30 23:32:04 +02:00
Fredrik Fornwall
b84ef4b884 gl_cv_func_realpath_works=yes in build-package.sh 2017-06-30 21:41:25 +02:00
Fredrik Fornwall
1b8f1a0b52 Fix building with gcc and unified headers 2017-06-27 23:27:55 +02:00
Fredrik Fornwall
acd8f481b5 Build with gl_cv_C_locale_sans_EILSEQ=yes
Fixes #1099 by rebuilding grep with this configure variable.
2017-06-26 00:05:20 +02:00
Fredrik Fornwall
88695dba79 Add start of unified headers transition
EXPERIMENTAL STATUS!

To try things out: Define TERMUX_UNIFIED_HEADERS=1 and build to
use the new unified headers.

This causes ndk_patches_unified/ to be used to patch the NDK header
files instead of ndk_patches/.
2017-06-18 20:57:16 +02:00
Fredrik Fornwall
034c87087d Fix edge case in build-package.sh 2017-06-16 23:27:05 +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
c53d69d0c4 cmake: Update from 3.8.1 to 3.8.2 2017-06-02 14:11:12 +02:00
Fredrik Fornwall
5224a5b410 golang: Update from 1.8.1 to 1.8.3 2017-05-25 23:00:15 +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
d4ab00856e No need to select one by one. (#1033) 2017-05-19 23:38:04 +02:00
Fredrik Fornwall
ce92cc4c5d Stand in srcdir for termux_step_pre_configure 2017-05-11 01:01:20 +02:00
Fredrik Fornwall
fe5862ce89 Use $(nproc) as default for $TERMUX_MAKE_PROCESSES 2017-05-04 22:21:52 +02:00
Fredrik Fornwall
65394feebc cmake: Update from 3.8.0 to 3.8.1 2017-05-04 22:18:05 +02:00
Fredrik Fornwall
70dd6b3190 Remove TERMUX_TAR and TERMUX_TOUCH
These can be removed now that OS X is not supported directly (OS X
users can still use Docker to build though).

Fixes #936.
2017-04-18 08:19:48 +02:00
Fredrik Fornwall
2447023489 Remove world readable&writeable&executable perms
We do not want anything world readable, writeable or executable.

Fixes #840.
2017-04-17 22:23:21 +02:00
Vishal Biswas
1bfb502693 update cmake (#928)
* librhash: add package

* cmake: update from 3.7.2 to 3.8.0

* build-package: update termux_setup_cmake to 3.8.0

* cmake: add librhash dependency
2017-04-13 13:58:16 +02:00
Fredrik Fornwall
ad05674561 golang: Update from 1.8 to 1.8.1 2017-04-10 00:19:20 +02:00
Fredrik Fornwall
b340a552ba Automatically build with -s if external package 2017-04-07 00:38:21 +02:00
Fredrik Fornwall
386c84693b Fix termux-elf-cleaner breakage
When separating out termux-elf-cleaner into its own repository the
way of building a native binary failed. Fixes #906.
2017-04-06 23:33:45 +02:00
Fredrik Fornwall
542aab6b3f Avoid more gnulib wrappers 2017-04-02 12:38:18 +02:00
Fredrik Fornwall
0d1a1c8e58 Initialize TERMUX_SUBPKG_CONFFILES to empty string 2017-03-26 00:51:46 +01:00
Vishal Biswas
cc7bcfa238 add php-pgsql and php-fpm (#875)
* php: update from 7.1.2 to 7.1.3

* add TERMUX_SUBPKG_CONFFILES

* php: add subpkgs php-pgsql and php-fpm
2017-03-26 00:22:48 +01:00
Vishal Biswas
66926ecd1f add support for custom libexecdir (#869) 2017-03-24 00:51:50 +01:00
Fredrik Fornwall
38a5614f43 Add share/vala to -dev packages 2017-03-22 00:21:00 +01:00
Fredrik Fornwall
46fe48b356 Validate that no hard links exists in package 2017-03-07 01:44:53 +01:00
Fredrik Fornwall
09c4ed7316 libgnustl: Fix broken stripped library on aarch64
Fixes #823.
2017-03-07 00:34:55 +01:00
Fredrik Fornwall
67d2d61527 Remove <sys/sem.h>
System V semaphores doesn't work for non-root, it's better to
point at unnamed POSIX semaphores in <semaphore.h>
2017-03-05 14:22:31 +01:00
Fredrik Fornwall
f3e071d2f4 Wrap getpwuid_r (fixes psql history file location) 2017-03-05 13:34:41 +01:00
Fredrik Fornwall
a599e41a78 Unset nullglob after using it 2017-03-05 11:49:01 +01:00
Fredrik Fornwall
f39b87c294 Remove <sys/shm.h> from the NDK
Use the one from libandroid-shmem instead
2017-03-05 11:42:26 +01:00
Vishal Biswas
7106823dfe Fixes (#819)
* remove ndk_patches/sys-shm.h.patch
add a note about libandroid-shmem and posix semaphores

* libandroid-shmem: enable package

* separate function to replace autoconf guess scripts
2017-03-05 11:40:50 +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
1197c15b83 Fix ifaddrs.h for real now 2017-02-21 10:11:52 +01:00
Fredrik Fornwall
4626e856f3 Bump toolchain after ifaddrs.h change 2017-02-20 21:58:41 +01:00
Fredrik Fornwall
42562d13b8 ndk_patches: Add a ifaddrs.h polyfill (fixes #338) 2017-02-17 22:33:57 +01:00
Fredrik Fornwall
ff3f67dcef golang: Update from 1.7.5 to 1.8 2017-02-17 20:09:31 +01:00
Fredrik Fornwall
00d9769e93 build-package.sh: Avoid more gnulib wrappers 2017-02-04 01:15:26 +01:00
Fredrik Fornwall
c9d4e74fa1 build-package.sh: Check checksum more
When having an already downloaded source archive, use the checksum
to validated it. This avoids problems if the file has been modified
by mistake after downloading in a previous build and detects if
an incorrect checksum has been specified.
2017-02-02 22:24:13 +01:00
Fredrik Fornwall
bc0560aa39 build-package.sh: Add -f flag to force build 2017-02-02 22:14:29 +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
7048a1f22d build-package.sh: Some shellcheck cleanups 2017-02-02 00:40:11 +01:00
Fredrik Fornwall
6b56911d9c build-package.sh: Handle weird file names better 2017-02-01 22:45:14 +01:00
Fredrik Fornwall
538812ae64 build-package.sh: Update build go from 1.8rc2 to 1.8rc3 2017-01-31 13:07:48 +01:00
Fredrik Fornwall
a15ad0de6d build-package.sh: Remove broken subpackage logic 2017-01-30 02:10:22 +01:00
Fredrik Fornwall
160874611f Always export CMAKE_INSTALL_ALWAYS=1 for cmake builds 2017-01-27 23:59:17 +01:00
Fredrik Fornwall
8c9b8a9a1e Update to go 1.8rc2 for building go packages 2017-01-25 00:23:49 +01:00
Vishal Biswas
c4804ab87a ndk_patches: add patches for sem and shm (#691)
* ndk_patches: add patches for sem and shm

* add #ifdef around syscall stubs for shm.h and sem.h
2017-01-24 10:41:46 +01:00
Fredrik Fornwall
2911ab9295 Remove some macOS leftovers
We only build on Linux nowadays
2017-01-20 11:10:59 +01:00
Fredrik Fornwall
12ff30d5ff Put $PREFIX/lib/cmake in -dev packages 2017-01-19 05:21:14 +01:00
Fredrik Fornwall
c9e68e0d9c Use -mthumb when building for arm 2017-01-19 03:58:44 +01:00
Fredrik Fornwall
c8d1a650a4 Really use gold by default for aarch64 2017-01-19 02:51:17 +01:00
Fredrik Fornwall
4219525cdf Use rpath-link hack on all aarch64 gcc builds 2017-01-18 11:44:51 +01:00
Fredrik Fornwall
0d1dde5fef Try gold linker by default on aarch64 2017-01-18 04:05:45 +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
adc0d548a5 build-package.sh: Build aarch64 first on '-a all' 2017-01-17 16:12:10 +01:00
Fredrik Fornwall
619b966418 build-package.sh: Remove _SPECSFLAG 2017-01-17 15:51:59 +01:00
Fredrik Fornwall
48d883791b Use go1.8rc1 for cross compilation 2017-01-16 11:09:18 +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
a55b3fa0cd cmake: Update from 3.7.1 to 3.7.2 2017-01-15 23:07:37 +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
Vishal Biswas
58f7a21c18 Add support for cmake 3.7 (#660) 2017-01-15 13:48:05 +01:00
Fredrik Fornwall
bb8baaa26d build-package.sh: Add termux_setup_cmake 2017-01-11 12:21:58 -05:00
Fredrik Fornwall
af4dc416ed s/TERMUX_PKG_BUILD_REVISION/TERMUX_PKG_REVISION/ 2017-01-11 01:21:42 -05:00
Fredrik Fornwall
01e699d962 Fix some more shellcheck warnings 2017-01-10 06:35:05 -05:00
Fredrik Fornwall
508fa73cb8 Always call post-extract step in srcdir 2017-01-10 03:14:35 -05:00
Fredrik Fornwall
dd54dd13fd Fix some shellcheck warnings in build-package.sh 2017-01-10 02:05:28 -05:00
Fredrik Fornwall
caf5d0df81 build-package.sh: Fix two shellcheck warnings 2017-01-08 08:06:46 -05:00
Fredrik Fornwall
93ae139b76 build-package.sh: Ensure a clean hostbuild dir 2017-01-08 08:01:22 -05:00
Fredrik Fornwall
627fdeb162 ndk_patches: Define _POSIX2_VERSION to 200809
coreutils looks at _POSIX2_VERSION and enables broken obsolete
behaviour if not set.

Fixes https://github.com/termux/termux-app/issues/232.
2017-01-07 01:45:46 -05:00
Fredrik Fornwall
10b023b81d build-package.sh: Fix shellcheck warning 2017-01-07 01:14:06 -05:00
Fredrik Fornwall
2b0e9dc9e2 Fix build of python after build-package.sh rewrite 2017-01-07 00:38:04 -05:00
Fredrik Fornwall
7b1f1bd35d build-package.sh: Cleanup a bit
- Put everything into shell functions.
- Start fixing shellcheck warnings.
- Run a hostbuild before setting up an android toolchain (fixes #657).

It was quite a hasty rewrite, so things could be broken. Let me know!
2017-01-05 20:37:45 -05:00
Fredrik Fornwall
fc89df4deb build-package.sh: Automatically build dependencies
We now automatically build dependencies unless the -s option is
used, so running scripts/buildorder.py shouldn't be necessary now.
2017-01-03 19:04:37 -05:00
Fredrik Fornwall
9b741f4945 build-package.sh: Always rebuild the package if debug build 2016-12-23 14:58:05 -05:00
Fredrik Fornwall
9247ce47b8 build-package.sh: Use full version when checking
When checking if a package needs to be rebuilt, we need to use the
full version including the build revision.
2016-12-23 03:53:06 -05:00
Fredrik Fornwall
ff7aaad158 build-package.sh: Try to avoid needless rebuilds 2016-12-20 20:34:57 -05:00
Fredrik Fornwall
a8dcbfb609 golang: Update from 1.7.3 to 1.7.4 2016-12-06 21:00:00 -05:00
Fredrik Fornwall
30ecfee6b9 build-package.sh: The -d (debug) flag takes no arg 2016-11-30 19:16:40 -05:00
Fredrik Fornwall
1a8d12c265 Tweak the README a bit 2016-11-24 20:43:26 -05:00
Fredrik Fornwall
66f3991fb3 Specify zlib as 1.2.8, not 1.2.3 as ndk claims 2016-11-22 18:51:13 -05:00
Fredrik Fornwall
c629f2b1fd build-package.sh: Handle options early 2016-11-22 17:13:12 -05:00
Fredrik Fornwall
4663ac70d4 Use $TERMUX_MAKE_PROCESSES in host build 2016-11-22 16:15:05 -05:00
Fredrik Fornwall
92c7aec402 Remove old unused TERMUX_PKG_KEEP_HEADER_FILES 2016-10-29 17:39:13 -04:00
Fredrik Fornwall
a75313eee3 build-package.sh: Fix some shellsheck warnings 2016-10-29 15:44:51 -04:00
Fredrik Fornwall
a3abe92801 build-package.sh: Fix -D argument handling 2016-10-23 16:49:00 -04:00
Vishal Biswas
a5b4ca0cb7 Builder script and ndk patch improvements (#520)
- Add MOUNTED path.
- Add debug switch.
- Add switch for disabled package.
2016-10-23 14:57:41 +02:00
Fredrik Fornwall
aea302356f Better checksum messages 2016-10-23 07:47:52 -04:00
Fredrik Fornwall
23d4b8b520 golang: Update from 1.7.1 to 1.7.3 2016-10-21 15:17:18 -04:00