No commit message authored by Karel Slaný's avatar Karel Slaný
No commit message
...@@ -43,13 +43,13 @@ Building the extension with statically linked libraries: ...@@ -43,13 +43,13 @@ Building the extension with statically linked libraries:
./configure --enable-static-linking ./configure --enable-static-linking
make make
``` ```
This will download OpenSSL, ldns and Unbound sources from an external git repository. The libraries are going to be compiled and statically linked into the binary extension corers. This will download OpenSSL, ldns and Unbound sources from an external git repository. The libraries are going to be compiled and statically linked into the binary extension cores.
Building fat extensions: Building fat extensions:
``` shell ``` shell
./configure --enable-static-linking --with-force-abi=fat ./configure --enable-static-linking --with-force-abi=fat
``` ```
This will compile both 32- and 64-bit versions of the extensions on non OS X systems. On non OS X systems the building of native messaging (Chrome) extension will be avoided. On OS X all the generated binaries will be fat (containing 32- and 64-bit versions). (Useful when creating a distributable package. We use Debian 7 to build Linux packages.) This will compile both 32- and 64-bit versions of the extensions on non-OS-X systems. On non-OS-X systems the building of native messaging (Chrome) extension will be avoided. On OS X all the generated binaries will be fat (containing 32- and 64-bit versions). (Useful when creating a distributable package. We use Debian 7 to build Linux packages.)
Cross compiling using MinGW32: Cross compiling using MinGW32:
``` shell ``` shell
...@@ -65,6 +65,20 @@ make ...@@ -65,6 +65,20 @@ make
``` ```
You need to have the package keys needed to signing the extension located in the parrent directory where the validator source tree is located. You need to have the package keys needed to signing the extension located in the parrent directory where the validator source tree is located.
### Specifying Compiler Version
If you have several C compiler versions on your system and if you want to compile the extension using a different compiler version (e.g. gcc-4.4) than the default one then use these commands:
``` shell
# Force 32-bit extension
./configure CC=gcc-4.4 OBJC=gcc-4.4 --enable-static-linking --with-force-abi=x86
make CC=gcc-4.4 OBJC=gcc-4.4
# Force 64-bit extension
./configure CC=gcc-4.4 OBJC=gcc-4.4 --enable-static-linking --with-force-abi=x86_64
make CC=gcc-4.4 OBJC=gcc-4.4
```
**Building extensions for Safari is currently not supported.** **Building extensions for Safari is currently not supported.**
**Building of NPAPI based extensions is currently not supported.** **Building of NPAPI based extensions is currently not supported.**
... ...
......