Commit Graph

918 Commits

Author SHA1 Message Date
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