mirror of
https://github.com/topjohnwu/selinux.git
synced 2025-01-20 18:02:44 +00:00
12c7dfc553
Converting to github markdown allows for easier integration with the SELinux project wiki and viewing of documentation directly on github without creating PDFs or reading through DocBook XML. The conversion of DocBook to github markdown would not format tables or keyword links properly. By maintaining the documentation in github markdown in the repository, the content is well formatted with a table of contents when viewing in the github wiki or in the repository. The migration from DocBook to github markdown was done using Pandoc and manual fixups. Mappings of CIL keywords to headings that were lost in the DocBook conversion were added back. An introduction and design philosphy was also pulled from the SELinux project wiki to provide more cohesion to the current documentation. Running make will now convert the github markdown into PDF and HTML. Signed-off-by: Yuli Khodorkovskiy <ykhodorkovskiy@tresys.com>
69 lines
1.6 KiB
Plaintext
69 lines
1.6 KiB
Plaintext
SELinux Common Intermediate Language (CIL) Compiler
|
|
|
|
INTRODUCTION
|
|
|
|
The SELinux CIL Compiler is a compiler that converts the CIL language as
|
|
described on the CIL design wiki into a kernel binary policy file.
|
|
Please see the CIL Design Wiki at:
|
|
http://github.com/SELinuxProject/cil/wiki/
|
|
for more information about the goals and features on the CIL language.
|
|
|
|
DEPENDENCIES
|
|
|
|
gcc >= 4.5.1
|
|
libsepol >= 2.4
|
|
|
|
|
|
BUILD STEPS
|
|
|
|
Run "make" with one of the following targets:
|
|
|
|
make
|
|
Build the CIL compiler (secilc).
|
|
|
|
make test
|
|
Pass a sample policy to test with the compiler.
|
|
|
|
make install
|
|
Install the secilc compiler and man page to disk.
|
|
|
|
make clean
|
|
Remove temporary build files.
|
|
|
|
make man
|
|
Build the secilc man page.
|
|
|
|
make bare
|
|
Remove temporary build files and compile binaries.
|
|
|
|
|
|
USAGE
|
|
|
|
Execute 'secilc' with any number of CIL files as arguments. A binary policy and
|
|
file_contexts file will be created.
|
|
|
|
Use the '--help' option for more details.
|
|
|
|
|
|
DOCUMENTATION
|
|
|
|
There is a github markdown CIL Reference Guide in the docs directory. To
|
|
view the table of contents, see README.md in the docs directory.
|
|
|
|
To convert the github markdown content to HTML and PDF, change to the docs
|
|
directory and run:
|
|
make
|
|
|
|
The documents will be located in the docs/html and docs/pdf directories.
|
|
|
|
To build the html and pdf, the pandoc package is required.
|
|
|
|
KNOWN ISSUES
|
|
|
|
- Blocks inside of macros causes undefined behavior
|
|
|
|
- Policy must be well formed. For example, invalid usage of
|
|
sensitivities/categories/levels may create an unloaded binary
|
|
|
|
- Recursive limits are not handled
|