2015-01-21 00:51:22 +08:00
|
|
|
{
|
|
|
|
"targets": [
|
|
|
|
{
|
|
|
|
"target_name" : "oracledb",
|
|
|
|
"sources" : [
|
|
|
|
"src/njs/src/njsOracle.cpp",
|
|
|
|
"src/njs/src/njsPool.cpp",
|
|
|
|
"src/njs/src/njsConnection.cpp",
|
2015-02-12 06:50:35 +08:00
|
|
|
"src/njs/src/njsMessages.cpp",
|
2015-01-21 00:51:22 +08:00
|
|
|
"src/dpi/src/dpiEnv.cpp",
|
|
|
|
"src/dpi/src/dpiEnvImpl.cpp",
|
|
|
|
"src/dpi/src/dpiException.cpp",
|
|
|
|
"src/dpi/src/dpiExceptionImpl.cpp",
|
|
|
|
"src/dpi/src/dpiConnImpl.cpp",
|
|
|
|
"src/dpi/src/dpiDateTimeArrayImpl.cpp",
|
|
|
|
"src/dpi/src/dpiPoolImpl.cpp",
|
|
|
|
"src/dpi/src/dpiStmtImpl.cpp",
|
|
|
|
"src/dpi/src/dpiUtils.cpp"
|
|
|
|
],
|
|
|
|
"conditions" : [
|
|
|
|
[
|
|
|
|
'OS=="linux"', {
|
|
|
|
"variables" : {
|
2015-02-12 06:50:35 +08:00
|
|
|
"oci_inc_dir%" : "<!(if [ -z $OCI_INC_DIR ]; then OCI_LIB_DIR=`ls -d /usr/lib/oracle/*/client*/lib/libclntsh.* 2> /dev/null | tail -1 | sed -e 's#/libclntsh[^/]*##'`; if [ -z $OCI_LIB_DIR ]; then if [ -d \"$ORACLE_HOME\" ]; then echo $ORACLE_HOME/rdbms/public; else echo \"/opt/oracle/instantclient/sdk/include/\"; fi; else OCI_INC_DIR=`echo $OCI_LIB_DIR | sed -e 's!^/usr/lib/oracle/\(.*\)/client\([64]*\)*/lib[/]*$!/usr/include/oracle/\\1/client\\2!'`; if [ -z $OCI_INC_DIR ]; then echo \"/opt/oracle/instantclient/sdk/include/\"; else echo $OCI_INC_DIR; fi; fi; else echo $OCI_INC_DIR; fi;)",
|
2015-01-25 02:39:57 +08:00
|
|
|
"oci_lib_dir%" : "<!(if [ -z $OCI_LIB_DIR ]; then OCI_LIB_DIR=`ls -d /usr/lib/oracle/*/client*/lib/libclntsh.* 2> /dev/null | tail -1 | sed -e 's#/libclntsh[^/]*##'`; if [ -z $OCI_LIB_DIR ]; then if [ -d \"$ORACLE_HOME\" ]; then echo $ORACLE_HOME/lib; else echo \"/opt/oracle/instantclient/\"; fi; else echo $OCI_LIB_DIR; fi; else echo $OCI_LIB_DIR; fi;)",
|
2015-02-12 06:50:35 +08:00
|
|
|
"oci_rpath%" : "<!(if [ -z $OCI_LIB_DIR ]; then OCI_LIB_DIR=`ls -d /usr/lib/oracle/*/client*/lib/libclntsh.* 2> /dev/null | tail -1 | sed -e 's#/libclntsh[^/]*##'`; if [ -z $OCI_LIB_DIR ]; then if [ -d \"$ORACLE_HOME\" ]; then if [ -z \"${FORCE_RPATH+x}\" ]; then echo \"\"; else echo \"-Wl,-rpath,$ORACLE_HOME/lib\"; fi; else if [ -z \"${FORCE_RPATH+x}\" ]; then echo \"\"; else echo \"-Wl,-rpath,/opt/oracle/instantclient\"; fi; fi; else echo \"-Wl,-rpath,$OCI_LIB_DIR\"; fi; else if [ -z \"${FORCE_RPATH+x}\" ]; then echo \"\"; else echo \"-Wl,-rpath,$OCI_LIB_DIR\"; fi; fi;)",
|
2015-02-12 07:02:03 +08:00
|
|
|
},
|
|
|
|
"cflags" : ['-fexceptions'],
|
|
|
|
"cflags_cc" : ['-fexceptions'],
|
|
|
|
"libraries" : ["-lclntsh"],
|
|
|
|
"link_settings" : {
|
|
|
|
"libraries" : ['-L<(oci_lib_dir) <(oci_rpath)']
|
2015-01-21 00:51:22 +08:00
|
|
|
}
|
|
|
|
}
|
|
|
|
],
|
|
|
|
[
|
|
|
|
'OS=="mac"', {
|
|
|
|
"xcode_settings": {
|
2015-02-12 06:50:35 +08:00
|
|
|
"GCC_ENABLE_CPP_EXCEPTIONS": "YES",
|
2015-01-21 00:51:22 +08:00
|
|
|
"GCC_ENABLE_CPP_RTTI": "YES"
|
2015-02-12 06:50:35 +08:00
|
|
|
},
|
2015-01-21 00:51:22 +08:00
|
|
|
"variables" : {
|
2015-02-12 07:21:11 +08:00
|
|
|
"oci_inc_dir%" : "<!(if [ -z $OCI_INC_DIR ]; then echo \"/opt/oracle/instantclient/sdk/include/\"; else echo $OCI_INC_DIR; fi)",
|
|
|
|
"oci_lib_dir%" : "<!(if [ -z $OCI_LIB_DIR ]; then echo \"/opt/oracle/instantclient/\"; else echo $OCI_LIB_DIR; fi)",
|
|
|
|
},
|
2015-02-12 07:02:03 +08:00
|
|
|
"cflags" : ['-fexceptions'],
|
|
|
|
"cflags_cc" : ['-fexceptions'],
|
|
|
|
"libraries" : ["-lclntsh"],
|
|
|
|
"link_settings" : {
|
|
|
|
"libraries" : ['-L<(oci_lib_dir)']
|
2015-01-21 00:51:22 +08:00
|
|
|
}
|
|
|
|
}
|
|
|
|
],
|
|
|
|
[
|
|
|
|
'OS=="solaris"', {
|
|
|
|
"variables" : {
|
2015-02-12 07:21:11 +08:00
|
|
|
"oci_inc_dir%" : "<!(if [ -z $OCI_INC_DIR ]; then echo \"/opt/oracle/instantclient/sdk/include/\"; else echo $OCI_INC_DIR; fi)",
|
|
|
|
"oci_lib_dir%" : "<!(if [ -z $OCI_LIB_DIR ]; then echo \"/opt/oracle/instantclient/\"; else echo $OCI_LIB_DIR; fi)",
|
|
|
|
},
|
2015-02-12 07:02:03 +08:00
|
|
|
"libraries" : ["-lclntsh"],
|
|
|
|
"cflags" : ['-fexceptions'],
|
|
|
|
"cflags_cc" : ['-fexceptions'],
|
|
|
|
"link_settings" : {
|
|
|
|
"libraries" : ['-L<(oci_lib_dir)']
|
2015-01-21 00:51:22 +08:00
|
|
|
}
|
|
|
|
}
|
|
|
|
],
|
2015-02-12 07:02:03 +08:00
|
|
|
["OS=='win'", {
|
|
|
|
"variables" : {
|
2015-02-12 07:23:15 +08:00
|
|
|
"oci_lib_dir%": "<!(IF DEFINED OCI_LIB_DIR (echo %OCI_LIB_DIR%) ELSE (echo C:\oracle\instantclient\sdk\lib\msvc))",
|
|
|
|
"oci_inc_dir%": "<!(IF DEFINED OCI_INC_DIR (echo %OCI_INC_DIR%) ELSE (echo C:\oracle\instantclient\sdk\include))",
|
2015-02-12 07:02:03 +08:00
|
|
|
},
|
|
|
|
"configurations" : {
|
|
|
|
"Release" : {
|
|
|
|
"msvs_settings": {
|
|
|
|
"VCCLCompilerTool" : {
|
|
|
|
"RuntimeLibrary" : "2"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"Debug" : {
|
|
|
|
"msvs_settings": {
|
|
|
|
"VCCLCompilerTool" : {
|
|
|
|
"RuntimeLibrary" : "3"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"cflags" : ['-fexceptions -EHsc'],
|
|
|
|
"cflags_cc" : ['-fexceptions -EHsc'],
|
|
|
|
"link_settings" : { "libraries" : ['<(oci_lib_dir)\oci.lib'] }
|
|
|
|
}
|
|
|
|
],
|
|
|
|
],
|
2015-01-21 00:51:22 +08:00
|
|
|
"include_dirs" : [ "<(oci_inc_dir)",
|
|
|
|
"src/dpi/src/",
|
|
|
|
"src/dpi/include/"
|
2015-02-12 07:02:03 +08:00
|
|
|
],
|
2015-01-21 00:51:22 +08:00
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|