useless separate sqlite3.h check, disable strict ISO C++ conformance
when compiling with MySQL headers which contain a "long long" reference
that breaks conformance.
we will need some registry readings or lookup directory within src
path). Also fixed issues with mysql/sqlite finding scripts that were
ignoring some attributes (like REQUIRED which makes it error if it
cannot find it).
it but it will fail later using rc.exe. Also reverted a tempted fix for
not converting endlines with COPYONLY which was breaking an issue with
sql_db_layout files.
__STRICT_ANSI__ define is used to not declare most of it's POSIX system
emulation API but declare only ISO library functions. This is of course
completely braindead as -ansi is used to tell the compiler to make sure
the code is standard compliant not that the code uses ONLY standard
library features (the 2 notions are not the same thing). So disable
strict ANSI mode for MINGW.
bnetd/d2cs/d2dbs paths (quoting the paths). Moved SQL/ZLIB includes to
bnetd only as it's the only target needing it. Modified FindMySQL cmake
module to try to locate MySQL header/lib location using registry keys
(needs testing).
them in config.h where having spaces in path shouldnt matter. Removed
the old solution. Also removed the base source dir from searched
included paths because it's not needed (we only need base binary dir for
"config.h") and it was "hiding" the config.h from the out of source
build because #include saw a config.h (generated from an autotools
build) in the source dir first.
warnings for every function that could possibly be used in buffer
overflow conditions (just issue a warning for the whole language then if
you ask me...).
cmake create some empty directories not present in the source. Will
investigate further (needed for the various /var empty directories pvpgn
needs to make on install).
doesnt break anything and that now you properly get HAVE_SELECT and
friends and code from src/compat could me modified to not assume a lot
of stuff when WIN32 is present but just use the general HAVE_<function>
checks.
currently only tested with visual studio 8 (2005).
the bncdb tool is currently intentionally broken
as it was the only component relying on compat/pgetopt
(which has been removed due to serious problems building it).
I will fix this problem tomorrow and add a common/conf based
commandline parser similar to the one used in bnetd,d2cs and d2dbs.
easy to work with in non-POSIX enviroments than autotools. Still need to
add installation support for the targets (so you can use "make install")
and using sed to generate the config files.
Usage:
- autogen/configure become: "cmake /path/to/pvpgnsource"; only tested in
the current directory so far, so "cmake ."; out of source builds should
work too in theory
- make becomes: make (suprise!)
Will update docs with more instructions if we will use it after all.