summary refs log tree commit diff
path: root/maintainers/docs/uclibc-cross.txt
diff options
context:
space:
mode:
Diffstat (limited to 'maintainers/docs/uclibc-cross.txt')
-rw-r--r--maintainers/docs/uclibc-cross.txt27
1 files changed, 27 insertions, 0 deletions
diff --git a/maintainers/docs/uclibc-cross.txt b/maintainers/docs/uclibc-cross.txt
new file mode 100644
index 000000000000..c32a95eb2b25
--- /dev/null
+++ b/maintainers/docs/uclibc-cross.txt
@@ -0,0 +1,27 @@
+Adding uClibc support for a new platform
+
+Sometimes you want to cross-compile to another architecture, for example an
+embedded devices. For embedded devices the uClibc C library is popular.
+In Nixpkgs there is support for uClibc for several architectures but not
+everything is supported.
+
+Adding support is not very difficult, 
+
+* Add your architecture to the buildfiles in
+$nixpkgs/development/tools/misc/binutils-cross
+
+* Add your architecture to the buildfiles in
+$nixpkgs/development/compilers/gcc-4.0-cross
+
+* Add your architecture to the buildfiles in
+$nixpkgs/os-specific/linux/kernel-headers-cross
+
+* Add your architecture to the buildfiles in
+$nixpkgs/development/uclibc
+
+In the latter directory you will also need a configuration file for uClibc.
+You can make these by unpacking the uClibc sources and run a "make menuconfig".
+In the configuration a few things need to be adapted:
+
+- kernel sources -> need to point at our own kernel headers
+- install -> needs to point at $out