diff options
author | Bjoern B. Brandenburg <bbb@cs.unc.edu> | 2010-11-24 19:34:15 -0500 |
---|---|---|
committer | Bjoern B. Brandenburg <bbb@cs.unc.edu> | 2010-11-24 19:48:44 -0500 |
commit | 6bad2f0bdfcea7da7559bcee08ccc9d41f1aadc4 (patch) | |
tree | 3025bc032099e42b3af098455882c28eca87c418 | |
parent | 7fbc7d3055458b7b3633d4a95ee344490dc3473e (diff) |
add installation instructions to liblitmus (and 'make help')
Some initial documentation to aid new users get started with compiling
the library.
-rw-r--r-- | INSTALL | 56 | ||||
-rw-r--r-- | Makefile | 5 | ||||
-rw-r--r-- | README | 17 |
3 files changed, 62 insertions, 16 deletions
@@ -0,0 +1,56 @@ | |||
1 | |||
2 | Liblitmus Installation Instructions | ||
3 | =================================== | ||
4 | |||
5 | Dependencies | ||
6 | ------------ | ||
7 | |||
8 | Liblitmus has no dependencies besides the kernel. During compilation, the | ||
9 | Makefile will attempt to copy required headers from the kernel source tree into | ||
10 | the library source tree. | ||
11 | |||
12 | |||
13 | Configuration | ||
14 | ------------- | ||
15 | |||
16 | The build system reads a local configuration file named '.config' (just like the | ||
17 | kernel, but much simpler). There are three variables that affect the | ||
18 | compilation process: | ||
19 | |||
20 | LITMUS_KERNEL --- Path (relative or absolute) to the LITMUS^RT kernel | ||
21 | source tree. The default value is | ||
22 | '../litmus2010'. Set this variable if you extracted | ||
23 | the kernel somewhere else. | ||
24 | |||
25 | ARCH --- The target architecture. Currently, liblitmus can be | ||
26 | build for i386, x86_64, sparc64, and arm. The default | ||
27 | value is the host architecture. | ||
28 | |||
29 | CROSS_COMPILE --- A prefix for the compiler and linker to use. Works | ||
30 | exactly like cross-compiling the kernel. By default, | ||
31 | this variable is not set. | ||
32 | |||
33 | Makefile Targets | ||
34 | ---------------- | ||
35 | |||
36 | all --- Build the library, all tools, and all tests. This is | ||
37 | the default. | ||
38 | |||
39 | lib --- Build only the library. | ||
40 | |||
41 | help --- Display this help. | ||
42 | |||
43 | dump-config --- Report the build configuration. Use this to debug | ||
44 | build problems. | ||
45 | |||
46 | clean --- Remove all build files and binaries. | ||
47 | |||
48 | TAGS --- Create a TAGS file for emacs. (Requires etags to be | ||
49 | installed.) | ||
50 | |||
51 | tags --- Create a tags file for vim. (Requires ctags to be | ||
52 | installed.) | ||
53 | |||
54 | cscope --- Create a symbol database for cscope. (Requires cscope | ||
55 | to be installed.) | ||
56 | |||
@@ -73,7 +73,7 @@ all = lib ${rt-apps} | |||
73 | rt-apps = cycles base_task rt_launch rtspin release_ts measure_syscall \ | 73 | rt-apps = cycles base_task rt_launch rtspin release_ts measure_syscall \ |
74 | base_mt_task runtests | 74 | base_mt_task runtests |
75 | 75 | ||
76 | .PHONY: all lib clean dump-config TAGS tags cscope | 76 | .PHONY: all lib clean dump-config TAGS tags cscope help |
77 | 77 | ||
78 | all: ${all} inc/config.makefile | 78 | all: ${all} inc/config.makefile |
79 | 79 | ||
@@ -111,6 +111,9 @@ dump-config: | |||
111 | AR "${AR}" \ | 111 | AR "${AR}" \ |
112 | obj-all "${obj-all}" | 112 | obj-all "${obj-all}" |
113 | 113 | ||
114 | help: | ||
115 | @cat INSTALL | ||
116 | |||
114 | clean: | 117 | clean: |
115 | rm -f ${rt-apps} | 118 | rm -f ${rt-apps} |
116 | rm -f *.o *.d *.a test_catalog.inc | 119 | rm -f *.o *.d *.a test_catalog.inc |
@@ -54,18 +54,5 @@ Tools and Programs | |||
54 | of single-threaded real-time tasks. | 54 | of single-threaded real-time tasks. |
55 | 55 | ||
56 | * base_mt_task | 56 | * base_mt_task |
57 | Example multi-threaded real-time task. Use as a basis for development. | 57 | Example multi-threaded real-time task. Use as a basis for the development of |
58 | 58 | multithreaded real-time tasks. | |
59 | |||
60 | Install | ||
61 | ======= | ||
62 | The library and the included tools must be compiled from source. | ||
63 | Liblitmus uses SCons as the build system. For details see: | ||
64 | |||
65 | http://www.scons.org/ | ||
66 | |||
67 | To compile the library just execute the command 'scons' without | ||
68 | arguments. | ||
69 | |||
70 | x86_64->ia32 cross compilation is possible by specifying ARCH=i386 on the | ||
71 | command line or in the environment. | ||