summaryrefslogtreecommitdiff
path: root/README-RTEMS
diff options
context:
space:
mode:
authorBenny Prijono <bennylp@teluu.com>2006-05-27 13:11:32 +0000
committerBenny Prijono <bennylp@teluu.com>2006-05-27 13:11:32 +0000
commit82c8d97e2ab422143b22402d986e6a5289d8daf1 (patch)
treee2d91565ae8ad21e5e42e043aaed7b0468b55562 /README-RTEMS
parentc01fdece34cb0eac0c1fdbafb5c1cc242ec01933 (diff)
Added README-RTEMS and tweaked the makefiles
git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@477 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'README-RTEMS')
-rw-r--r--README-RTEMS87
1 files changed, 87 insertions, 0 deletions
diff --git a/README-RTEMS b/README-RTEMS
new file mode 100644
index 00000000..9132319d
--- /dev/null
+++ b/README-RTEMS
@@ -0,0 +1,87 @@
+
+
+
+ Build Instructions for PJLIB/PJMEDIA/PJSIP RTEMS Port
+
+
+
+The RTEMS port uses the POSIX abstraction layer at the moment, and has been
+tested with RTEMS 4.6 on i386 target.
+
+
+Building RTEMS
+---------------
+I use RTEMS 4.6 on a cygwin host with i386/pc386 as target, but I think it
+should work with different RTEMS versions/hosts/targets.
+
+RTEMS was built with the following commands:
+
+ $ /opt/src/rtems-4.6.6/configure --enable-cxx --enable-posix --enable-networking --enable-rdbg --enable-tests --enable-rtemsbsp=pc386 --target=i386-rtems
+ $ make
+ $ make install
+
+
+Supported Targets
+-----------------
+At the moment, pjlib supports i386 and mpc860 CPU target. For other targets,
+you would need to create/tweak the appropriate "m-xxx.mak" in "build" directory
+and the corresponding "m_xxx.h" header file in "pj/compat" directory.
+
+Please refer to pjlib porting guide about how to port PJLIB to new CPU target.
+
+
+Building PJLIB/PJMEDIA/PJSIP
+----------------------------
+Use the following steps to build the libraries:
+
+
+1. Set RTEMS_LIBRARY_PATH environment variable to point to your BSP directory
+ (which is <RTEMS INSTALLATION POINT>/<BOARD SUPPORT PACKAGE>).
+
+ For example (with sh):
+
+ $ export RTEMS_LIBRARY_PATH=/opt/rtems-4.6/i386-rtems/pc386
+
+
+2. Unfortunately pjproject's configure script is unable to create "build.mak"
+ for cross compilation (but this may change in the future), so we need to
+ create "build.mak" manually.
+
+ The file "README-configure" has some info about the variables in "build.mak".
+
+ For example, the "build.mak" for i386 target:
+
+ export MACHINE_NAME := i386
+ export OS_NAME := rtems
+ export HOST_NAME := mingw
+ export CC_NAME := gcc
+ export TARGET_NAME := i386-rtems
+ export CROSS_COMPILE := i386-rtems-
+
+
+3. Put additional CFLAGS or LDFLAGS that are specific to your target in
+ "user.mak".
+
+ For example, my "user.mak" looks like this:
+
+ export CFLAGS +=
+ export LDFLAGS += -Wl,-Ttext,0x00100000 -Wl,--defsym -Wl,HeapSize=0x400000
+
+
+4. Build the libraries:
+
+ $ make dep && make distclean && make
+
+
+5. That should be it. The libraries should be in "lib" directory and
+ applications in "bin" directory.
+
+
+
+Acknowledgements
+----------------
+Many thanks for Phil Torre <ptorre at zetron dot com>, who did most of the
+initial porting and testing with pjlib etc. All credits go to him.
+
+
+