Initial commit
[yaffs-website] / node_modules / node-sass / src / libsass / docs / build-with-autotools.md
1 ### Get the sources
2 ```bash
3 # using git is preferred
4 git clone https://github.com/sass/libsass.git
5 # only needed for sassc and/or testsuite
6 git clone https://github.com/sass/sassc.git libsass/sassc
7 git clone https://github.com/sass/sass-spec.git libsass/sass-spec
8 ```
9
10 ### Prerequisites
11
12 In order to run autotools you need a few tools installed on your system.
13 ```bash
14 yum install automake libtool # RedHat Linux
15 emerge -a automake libtool # Gentoo Linux
16 pkgin install automake libtool # SmartOS
17 ```
18
19
20 ### Create configure script
21 ```bash
22 cd libsass
23 autoreconf --force --install
24 cd ..
25 ```
26
27 ### Create custom makefiles
28 ```bash
29 cd libsass
30 ./configure \
31   --disable-tests \
32   --disable-shared \
33   --prefix=/usr
34 cd ..
35 ```
36
37 ### Build the library
38 ```bash
39 make -C libsass -j5
40 ```
41
42 ### Install the library
43 The library will be installed to the location given as `prefix` to `configure`. This is standard behavior for autotools and not `libsass` specific.
44 ```bash
45 make -C libsass -j5 install
46 ```
47
48 ### Configure options
49 The `configure` script is created by autotools. To get an overview of available options you can call `./configure --help`. When you execute this script, it will create specific makefiles, which you then use via the regular make command.
50
51 There are some `libsass` specific options:
52
53 ```
54 Optional Features:
55   --enable-tests              enable testing the build
56   --enable-coverage           enable coverage report for test suite
57   --enable-shared             build shared libraries [default=yes]
58   --enable-static             build static libraries [default=yes]
59
60 Optional Packages:
61   --with-sassc-dir=<dir>      specify directory of sassc sources for
62                               testing (default: sassc)
63   --with-sass-spec-dir=<dir>  specify directory of sass-spec for testing
64                               (default: sass-spec)
65 ```
66
67 ### Build sassc and run spec test-suite
68
69 ```bash
70 cd libsass
71 autoreconf --force --install
72 ./configure \
73   --enable-tests \
74   --enable-shared \
75   --prefix=/usr
76 make -j5 test_build
77 cd ..
78 ```