sunsetbrew 12 лет назад
Родитель
Сommit
5b37671383
1 измененных файлов с 95 добавлено и 1 удалено
  1. 95 1
      docs/Building.md

+ 95 - 1
docs/Building.md

@@ -1,3 +1,97 @@
-
 Building Civetweb
 =========
+
+This guide covers the build instructions for stand-alone web server.  
+See [Embedding.md](https://github.com/sunsetbrew/civetweb/blob/master/docs/Embedding.md) for information on extending an application.
+
+#### Where to get the source code?
+https://github.com/sunsetbrew/civetweb
+
+
+Building for Windows
+---------
+
+Open the *build/VS2012/civetweb/civetweb.sln* in Visual Studio.
+
+
+Building for Linux, BSD, and OSX
+---------
+
+## Using Make
+
+```
+make help
+```
+Get help
+
+```
+make build
+```
+compile the code
+
+```
+make install
+```
+Install on the system, Linux only.
+
+```
+make clean
+```
+Clean up the mess
+
+## Setting build options
+
+Make options can be set on the command line with the make command like so.
+```
+make build WITH_LUA=1
+```
+
+
+| Make Options              | Description                          |
+| ------------------------- | ------------------------------------ |
+| WITH_LUA=1                | build with LUA support               |
+| WITH_DEBUG=1              | build with GDB debug support         |
+| WITH_IPV6=1               | with IPV6 support                    |
+| WITH_WEBSOCKET=1          | build with web socket support        |
+| CONFIG_FILE=file          | use 'file' as the config file        |
+| CONFIG_FILE2=file         | use 'file' as the backup config file |
+| SSL_LIB=libssl.so.0       | use versioned SSL library            |
+| CRYPTO_LIB=libcrypto.so.0 | system versioned CRYPTO library      |
+| INSTALL_DIR=/             | sets the install directory           |
+| COPT='-DNO_SSL'           | method to insert compile flags       |
+
+## Setting compile flags
+
+Compile flags can be set using the *COPT* make option like so.
+```
+make build COPT="-DNDEBUG -DNO_CGI"
+```
+
+| Compile Flags             | Description                          |
+| ------------------------- | ------------------------------------ |
+| NDEBUG                    | strip off all debug code             |
+| DEBUG                     | build debug version (very noisy)     |
+| NO_CGI                    | disable CGI support                  |
+| NO_SSL                    | disable SSL functionality            |
+| NO_SSL_DL                 | link against system libssl library   |
+
+## Advanced Cross Compiling
+
+Take total control with *CC* and *CFLAGS* as make options.
+```
+make build CC="mycc" CFLAGS="-gprof -DNDEBUG -DNO_CGI"
+```
+
+## Cocoa DMG Packaging (OSX Only)
+
+Use the alternate *Makefile.osx* to do the build.  The entire build has
+to be done using *Makefile.osx* because additional compile and link options
+are required.  This Makefile has all the same options as the other one plus
+one additional *package* rule.
+
+```
+make -f Makefile.osx package
+```
+
+
+