preload-hacks: Some patches to make it work.
[termux-packages] / README.md
index 5fb7d9b..66eda8d 100644 (file)
--- a/README.md
+++ b/README.md
@@ -1,9 +1,9 @@
 Termux packages
 ===============
 Termux packages
 ===============
+[![Build Status](https://travis-ci.org/termux/termux-packages.svg?branch=master)](https://travis-ci.org/termux/termux-packages)
 [![Join the chat at https://gitter.im/termux/termux](https://badges.gitter.im/termux/termux.svg)](https://gitter.im/termux/termux)
 
 [![Join the chat at https://gitter.im/termux/termux](https://badges.gitter.im/termux/termux.svg)](https://gitter.im/termux/termux)
 
-This project contains scripts and patches to build packages for the
-[Termux](https://termux.com/) Android application.
+This project contains scripts and patches to build packages for the [Termux](https://termux.com/) Android application. Note that packages are cross compiled and that on-device builds are not currently supported.
 
 Setting up a build environment using Docker
 ===========================================
 
 Setting up a build environment using Docker
 ===========================================
@@ -17,7 +17,7 @@ This source folder is mounted as the `/root/termux-packages` data volume, so cha
 in sync between the host and the container when trying things out before committing, and built
 deb files will be available on the host in the `debs/` directory just as when building on the host.
 
 in sync between the host and the container when trying things out before committing, and built
 deb files will be available on the host in the `debs/` directory just as when building on the host.
 
-The docker container used for building packages is a Ubuntu 16.10 installation with necessary packages
+The docker container used for building packages is a Ubuntu 17.10 installation with necessary packages
 pre-installed. The default user is a non-root user to avoid problems with package builds modifying the system
 by mistake, but `sudo` can be used to install additional Ubuntu packages to be used during development.
 
 pre-installed. The default user is a non-root user to avoid problems with package builds modifying the system
 by mistake, but `sudo` can be used to install additional Ubuntu packages to be used during development.
 
@@ -33,7 +33,7 @@ Note that building packages can take up a lot of space (especially if `build-all
 
 Build environment without Docker
 ================================
 
 Build environment without Docker
 ================================
-If you can't run Docker you can use a Ubuntu 16.10 installation (either by installing a virtual maching guest or on direct hardware) by using the below scripts:
+If you can't run Docker you can use a Ubuntu 17.10 installation (either by installing a virtual maching guest or on direct hardware) by using the below scripts:
 
 - Run `scripts/setup-ubuntu.sh` to install required packages and setup the `/data/` folder.
 
 
 - Run `scripts/setup-ubuntu.sh` to install required packages and setup the `/data/` folder.
 
@@ -111,16 +111,15 @@ Common porting problems
 
 dlopen() and RTLD_* flags
 =================================
 
 dlopen() and RTLD_* flags
 =================================
-<dlfcn.h> originally declares
+<dlfcn.h> declares
 
 
-    enum { RTLD_NOW=0, RTLD_LAZY=1, RTLD_LOCAL=0, RTLD_GLOBAL=2,       RTLD_NOLOAD=4}; // 32-bit
-    enum { RTLD_NOW=2, RTLD_LAZY=1, RTLD_LOCAL=0, RTLD_GLOBAL=0x00100, RTLD_NOLOAD=4}; // 64-bit
+    RTLD_NOW=0; RTLD_LAZY=1; RTLD_LOCAL=0; RTLD_GLOBAL=2;       RTLD_NOLOAD=4; // 32-bit
+    RTLD_NOW=2; RTLD_LAZY=1; RTLD_LOCAL=0; RTLD_GLOBAL=0x00100; RTLD_NOLOAD=4; // 64-bit
 
 These differs from glibc ones in that
 
 
 These differs from glibc ones in that
 
-1. They are not preprocessor #define:s so cannot be checked for with `#ifdef RTLD_GLOBAL`. Termux patches this to #define values for compatibility with several packages.
-2. They differ in value from glibc ones, so cannot be hardcoded in files (DLFCN.py in python does this)
-3. They are missing some values (`RTLD_BINDING_MASK`, `RTLD_NOLOAD`, ...)
+1. They differ in value from glibc ones, so cannot be hardcoded in files (DLFCN.py in python does this)
+2. They are missing some values (`RTLD_BINDING_MASK`, ...)
 
 Android Dynamic Linker
 ======================
 
 Android Dynamic Linker
 ======================