]> git.ipfire.org Git - thirdparty/pdns.git/blobdiff - README.md
Merge pull request #7003 from jsoref/const-MOADNSException-space-amp-mde
[thirdparty/pdns.git] / README.md
index 7fd20b83ae9a0be40639cfb15650cbc68493c502..9f072c7b2941f43ce70eaae10b1eab63998eb7e3 100644 (file)
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-PowerDNS is copyright © 2002-2017 by PowerDNS.COM BV and lots of
+PowerDNS is copyright © 2001-2018 by PowerDNS.COM BV and lots of
 contributors, using the GNU GPLv2 license (see NOTICE for the
 exact license and exception used).
 
@@ -19,8 +19,8 @@ SOURCE CODE / GIT
 -----------------
 Source code is available on GitHub:
 
-```
-git clone https://github.com/PowerDNS/pdns.git
+```sh
+git clone https://github.com/PowerDNS/pdns.git
 ```
 
 This repository contains the sources for the PowerDNS Recursor, the PowerDNS
@@ -35,22 +35,22 @@ compiler with C++-2011 support.
 
 On Debian 8.0, the following is useful:
 
-```
-$ apt-get install g++ libboost-all-dev libtool make pkg-config libmysqlclient-dev libssl-dev
+```sh
+apt-get install g++ libboost-all-dev libtool make pkg-config libmysqlclient-dev libssl-dev virtualenv
 ```
 
 When building from git, the following packages are also required: autoconf, automake,
 ragel, bison and flex, then generate the configure file:
 
-```
-$ ./bootstrap
+```sh
+autoreconf -vi
 ```
 
 To compile a very clean version, use:
 
-```
-$ ./configure --with-modules="" --without-lua
-make
+```sh
+./configure --with-modules="" --without-lua --disable-lua-records
+make
 # make install
 ```
 
@@ -61,8 +61,8 @@ built-in by default and the pipe-backend is compiled for runtime loading.
 
 To add multiple modules, try:
 
-```
-./configure --with-modules="bind gmysql gpgsql"
+```sh
+./configure --with-modules="bind gmysql gpgsql"
 ```
 
 Note that you will need the development headers for PostgreSQL as well in this case.
@@ -71,57 +71,50 @@ See https://doc.powerdns.com/md/appendix/compiling-powerdns/ for more details.
 
 If you run into C++11-related symbol trouble, please try passing `CPPFLAGS=-D_GLIBCXX_USE_CXX11_ABI=0` (or 1) to `./configure` to make sure you are compatible with the installed dependencies.
 
-On macOS, you may need to `brew install openssl` and set `PKG_CONFIG_PATH=/usr/local/opt/openssl/lib/pkgconfig` during configure.
-
-COMPILING THE RECURSOR
+Compiling the Recursor
 ----------------------
 See the README in pdns/recursordist.
 
-COMPILING DNSDIST
-----------------------
+Compiling dnsdist
+-----------------
 See the README in pdns/dnsdistdist.
 
-SOLARIS NOTES
+Solaris Notes
 -------------
 Use a recent gcc. OpenCSW is a good source, as is Solaris 11 IPS.
 
 If you encounter problems with the Solaris make, gmake is advised.
 
-FREEBSD NOTES
+FreeBSD Notes
 -------------
 You need to compile using gmake - regular make only appears to work, but doesn't in fact. Use gmake, not make.
 
 The clang compiler installed through FreeBSD's package manager does not expose all of the C++11 features needed under `std=gnuc++11`. Force the compiler to use `std=c++11` mode instead.
 
-    export CXXFLAGS=-std=c++11
+```sh
+export CXXFLAGS=-std=c++11
+```
 
-MAC OS X NOTES
---------------
+macOS Notes
+-----------
 PowerDNS Authoritative Server is available through Homebrew:
 
 ```
-brew install pdns
+brew install pdns
 ```
 
 If you want to compile yourself, the dependencies can be installed using
-Homebrew:
+Homebrew. You need to tell configure where to find OpenSSL, too.
 
+```sh
+brew install boost lua pkg-config ragel openssl
+./configure --with-modules="" --with-lua PKG_CONFIG_PATH=/usr/local/opt/openssl/lib/pkgconfig
+make -j4
 ```
-$ brew install boost lua pkg-config ragel
-```
-
-For PostgreSQL support:
 
-```
-$ brew install postgresql
-```
-
-For MySQL support:
-
-```
-$ brew install mariadb
-```
+Additionally, for PostgreSQL support, run `brew install postgresql` and add `--with-modules="gpsql"` to `./configure`.
+For MySQL support, run `brew install mariadb` and add `--with-modules="gmysql"` to `./configure`.
 
-LINUX NOTES
+Linux notes
 -----------
 None really.