Some work on PostgreSQL support
note: still don't work, so use mysql --HG-- branch : trunk
This commit is contained in:
+5
-7
@@ -5,6 +5,7 @@ cmake_policy(SET CMP0005 OLD)
|
||||
include(CheckIncludeFiles)
|
||||
include(cmake/FindAce.cmake)
|
||||
include(cmake/FindMySql.cmake)
|
||||
include(cmake/FindPostgreSql.cmake)
|
||||
CONFIGURE_FILE(
|
||||
"${CMAKE_CURRENT_SOURCE_DIR}/cmake/cmake_uninstall.cmake.in"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake"
|
||||
@@ -61,13 +62,10 @@ message("* Libs install dir at: ${LIBSDIR}")
|
||||
FIND_LIBRARY(SSLLIB NAMES ssl DOC "SSL library")
|
||||
FIND_LIBRARY(ZLIB z "Zlib library")
|
||||
|
||||
|
||||
IF(DO_POSTGRESQL)
|
||||
message("* With PostgreSQL")
|
||||
set(DO_MYSQL 0)
|
||||
SET(POSTGRE_INCLUDES "-I/usr/include/postgresql -I/usr/local/postgresql ${POSTGRE_INCLUDES}")
|
||||
SET(POSTGRE_LIBS "-L/usr/lib/postresql -lpq -lz -lpthread -lcrypt -lnsl -lm -lpthread -L/usr/lib -lssl -lcrypto ${POSTGRE_LIBS}")
|
||||
ADD_DEFINITIONS(-DDO_POSTGRESQL)
|
||||
MESSAGE("* With PostgreSQL")
|
||||
FIND_PostgreSQL()
|
||||
ADD_DEFINITIONS(-DDO_POSTGRESQL)
|
||||
ENDIF(DO_POSTGRESQL)
|
||||
|
||||
IF(DO_MYSQL)
|
||||
@@ -174,7 +172,7 @@ src/shared/vmap
|
||||
src/game
|
||||
${SCRIPT_INCLUDE}
|
||||
${MYSQL_INCLUDE_DIR}
|
||||
${POSTGRE_INCLUDES}
|
||||
${POSTGRESQL_INCLUDE_DIR}
|
||||
${CMAKE_CURRENT_BINARY_DIR}/src/shared
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/..
|
||||
${ACE_INCLUDE_DIR}
|
||||
|
||||
@@ -0,0 +1,55 @@
|
||||
# - Find PostgreSQL
|
||||
# Find the PostgreSQL includes and client library
|
||||
# This module defines
|
||||
# POSTGRESQL_INCLUDE_DIR, where to find POSTGRESQL.h
|
||||
# POSTGRESQL_LIBRARIES, the libraries needed to use POSTGRESQL.
|
||||
# POSTGRESQL_FOUND, If false, do not try to use PostgreSQL.
|
||||
#
|
||||
# Copyright (c) 2006, Jaroslaw Staniek, <[email protected]>
|
||||
#
|
||||
# Redistribution and use is allowed according to the terms of the BSD license.
|
||||
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
|
||||
|
||||
# Add the postgresql and mysql include paths here
|
||||
|
||||
MACRO(FIND_PostgreSQL)
|
||||
|
||||
# find_path(POSTGRESQL_INCLUDE_DIR libpq-fe.h
|
||||
|
||||
FIND_PATH(POSTGRESQL_INCLUDE_DIR libpq-fe.h
|
||||
/usr/include/server
|
||||
/usr/include/postgresql
|
||||
/usr/include/pgsql/server
|
||||
/usr/local/include/pgsql/server
|
||||
/usr/include/postgresql/server
|
||||
/usr/include/postgresql/*/server
|
||||
/usr/local/include/postgresql/server
|
||||
/usr/local/include/postgresql/*/server
|
||||
$ENV{ProgramFiles}/PostgreSQL/*/include/server
|
||||
$ENV{SystemDrive}/PostgreSQL/*/include/server
|
||||
)
|
||||
|
||||
find_library(POSTGRESQL_LIBRARIES NAMES pq libpq
|
||||
PATHS
|
||||
/usr/lib
|
||||
/usr/local/lib
|
||||
/usr/lib/postgresql
|
||||
/usr/lib64
|
||||
/usr/local/lib64
|
||||
/usr/lib64/postgresql
|
||||
$ENV{ProgramFiles}/PostgreSQL/*/lib/ms
|
||||
$ENV{SystemDrive}/PostgreSQL/*/lib/ms
|
||||
)
|
||||
|
||||
if(POSTGRESQL_INCLUDE_DIR AND POSTGRESQL_LIBRARIES)
|
||||
set(POSTGRESQL_FOUND TRUE)
|
||||
message(STATUS "Found PostgreSQL: ${POSTGRESQL_INCLUDE_DIR}, ${POSTGRESQL_LIBRARIES}")
|
||||
INCLUDE_DIRECTORIES(${POSTGRESQL_INCLUDE_DIR})
|
||||
else(POSTGRESQL_INCLUDE_DIR AND POSTGRESQL_LIBRARIES)
|
||||
set(POSTGRESQL_FOUND FALSE)
|
||||
message(STATUS "PostgreSQL not found.")
|
||||
endif(POSTGRESQL_INCLUDE_DIR AND POSTGRESQL_LIBRARIES)
|
||||
|
||||
mark_as_advanced(POSTGRESQL_INCLUDE_DIR POSTGRESQL_LIBRARIES)
|
||||
|
||||
ENDMACRO(FIND_PostgreSQL)
|
||||
@@ -25,10 +25,12 @@
|
||||
#define FD_SETSIZE 1024
|
||||
#include <winsock2.h>
|
||||
#include <postgre/libpq-fe.h>
|
||||
#include <postgre/postgres.h>
|
||||
#include <postgre/pg_type.h>
|
||||
#else
|
||||
#include <libpq-fe.h>
|
||||
//#include <pg_type.h>
|
||||
#include <postgres.h>
|
||||
#include <catalog/pg_type.h>
|
||||
#endif
|
||||
|
||||
class QueryResultPostgre : public QueryResult
|
||||
|
||||
@@ -22,6 +22,9 @@ add_definitions(
|
||||
IF (DO_MYSQL)
|
||||
SET(trinity-core_LINK_FLAGS "-pthread ${trinity-core_LINK_FLAGS}")
|
||||
ENDIF(DO_MYSQL)
|
||||
IF (DO_POSTGRESQL)
|
||||
SET(trinity-core_LINK_FLAGS "-pthread ${trinity-core_LINK_FLAGS}")
|
||||
ENDIF(DO_POSTGRESQL)
|
||||
|
||||
|
||||
IF (CMAKE_SYSTEM_NAME MATCHES "Darwin")
|
||||
@@ -48,7 +51,7 @@ readline
|
||||
gomp
|
||||
${SCRIPT_LIB}
|
||||
${MYSQL_LIBRARIES}
|
||||
${POSTGRE_LIBS}
|
||||
${POSTGRESQL_LIBRARIES}
|
||||
${SSLLIB}
|
||||
${ACE_LIBRARY}
|
||||
${ZLIB}
|
||||
|
||||
@@ -18,9 +18,9 @@ add_definitions(
|
||||
IF (DO_MYSQL)
|
||||
SET(trinity-realm_LINK_FLAGS "-pthread ${trinity-realm_LINK_FLAGS}")
|
||||
ENDIF(DO_MYSQL)
|
||||
IF (DO_POSTGRE)
|
||||
SET(trinity-realm_LINK_FLAGS "${POSTGRE_LIBS} ${trinity-realm_LINK_FLAGS}")
|
||||
ENDIF(DO_POSTGRE)
|
||||
IF (DO_POSTGRESQL)
|
||||
SET(trinity-realm_LINK_FLAGS "-pthread ${trinity-realm_LINK_FLAGS}")
|
||||
ENDIF(DO_POSTGRESQL)
|
||||
|
||||
IF (CMAKE_SYSTEM_NAME MATCHES "Darwin")
|
||||
SET(trinity-realm_LINK_FLAGS "-framework Carbon ${trinity-realm_LINK_FLAGS}")
|
||||
@@ -41,6 +41,7 @@ zlib
|
||||
gomp
|
||||
${SSLLIB}
|
||||
${MYSQL_LIBRARIES}
|
||||
${POSTGRESQL_LIBRARIES}
|
||||
${OSX_LIBS}
|
||||
)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user