From 35a201cc8ef0c3f5b2df88d2e528aabee1048348 Mon Sep 17 00:00:00 2001 From: Wojtek Kosior Date: Fri, 30 Apr 2021 18:47:09 +0200 Subject: Initial/Final commit --- .../mariadb_config/CMakeLists.txt | 36 +++++++ .../mariadb_config/mariadb_config.c.in | 112 +++++++++++++++++++++ 2 files changed, 148 insertions(+) create mode 100644 mariadb-connector-c-v_2.3.7/mariadb_config/CMakeLists.txt create mode 100644 mariadb-connector-c-v_2.3.7/mariadb_config/mariadb_config.c.in (limited to 'mariadb-connector-c-v_2.3.7/mariadb_config') diff --git a/mariadb-connector-c-v_2.3.7/mariadb_config/CMakeLists.txt b/mariadb-connector-c-v_2.3.7/mariadb_config/CMakeLists.txt new file mode 100644 index 0000000..4a1b6dc --- /dev/null +++ b/mariadb-connector-c-v_2.3.7/mariadb_config/CMakeLists.txt @@ -0,0 +1,36 @@ +INCLUDE_DIRECTORIES(${CC_SOURCE_DIR}/include) + +# Figure out additional libraries for use with + +FOREACH (dep ${libmariadb_LIB_DEPENDS}) + STRING(REGEX MATCH "^-l.*$" out "${dep}") + IF(out) + SET(extra_dynamic_LDFLAGS "${extra_dynamic_LDFLAGS} ${dep}") + ENDIF(out) +ENDFOREACH(dep) + +IF(UNIX) + IF(OPENSSL_LIBRARIES) + SET(extra_dynamic_LDFLAGS "${extra_dynamic_LDFLAGS} -lssl") + ENDIF() + IF(ICONV_EXTERNAL) + SET(extra_dynamic_LDFLAGS "${extra_dynamic_LDFLAGS} ${ICONV_LIBRARIES}") + ENDIF() + FOREACH(lib ${EXTRA_LIBS}) + SET(extra_dynamic_LDFLAGS "${extra_dynamic_LDFLAGS} -l${lib}") + ENDFOREACH() + IF(WITH_SQLITE) + SET(extra_dynamic_LDFLAGS "${extra_dynamic_LDFLAGS} -lsqlite") + ENDIF() +ENDIF(UNIX) + +CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/mariadb_config.c.in + ${CMAKE_CURRENT_BINARY_DIR}/mariadb_config.c @ONLY) + +ADD_EXECUTABLE(mariadb_config ${CMAKE_CURRENT_BINARY_DIR}/mariadb_config.c) +TARGET_LINK_LIBRARIES(mariadb_config) + +# Installation +# +INSTALL(TARGETS mariadb_config + DESTINATION "bin") diff --git a/mariadb-connector-c-v_2.3.7/mariadb_config/mariadb_config.c.in b/mariadb-connector-c-v_2.3.7/mariadb_config/mariadb_config.c.in new file mode 100644 index 0000000..6d00b85 --- /dev/null +++ b/mariadb-connector-c-v_2.3.7/mariadb_config/mariadb_config.c.in @@ -0,0 +1,112 @@ +#include +#include +#include + +#define INCLUDE "-I@PREFIX_INSTALL_DIR@/@INCLUDE_INSTALL_DIR@/@SUFFIX_INSTALL_DIR@ -I@PREFIX_INSTALL_DIR@/@INCLUDE_INSTALL_DIR@/@SUFFIX_INSTALL_DIR@/mysql" +#define LIBS "-L@PREFIX_INSTALL_DIR@/@LIB_INSTALL_DIR@/@LIBSUFFIX_INSTALL_DIR@ -lmariadb" \ + "@extra_dynamic_LDFLAGS@" +#define CFLAGS INCLUDE " @CMAKE_C_FLAGS@" +#define VERSION "@MYSQL_CLIENT_VERSION@" +#define CC_VERSION "@CPACK_PACKAGE_VERSION@" +#define PLUGIN_DIR "@PREFIX_INSTALL_DIR@/@SUFFIX_INSTALL_DIR@/@PLUGIN_INSTALL_DIR@" +#define SOCKET "@MYSQL_UNIX_ADDR@" +#define PORT "@MYSQL_PORT@" + +static struct option long_options[]= +{ + {"cflags", no_argument, 0, 'a'}, + {"help", no_argument, 0, 'b'}, + {"include", no_argument, 0, 'c'}, + {"libs", no_argument, 0, 'd'}, + {"libs_r", no_argument, 0, 'e'}, + {"version", no_argument, 0, 'f'}, + {"cc_version", no_argument, 0, 'g'}, + {"socket", no_argument, 0, 'h'}, + {"port", no_argument, 0, 'i'}, + {"plugindir", no_argument, 0, 'j'}, + {NULL, 0, 0, 0} +}; + +static char *values[]= +{ + CFLAGS, + NULL, + INCLUDE, + LIBS, + LIBS, + VERSION, + CC_VERSION, + SOCKET, + PORT, + PLUGIN_DIR +}; + +const char *my_progname; + +void usage(void) +{ + int i=0; + puts("Copyright 2011-2015 MariaDB Corporation AB"); + puts("Get compiler flags for using the MariaDB Connector/C."); + printf("Usage: %s [OPTIONS]\n", my_progname); + while (long_options[i].name) + { + if (values[i]) + printf(" --%-12s [%s]\n", long_options[i].name, values[i]); + i++; + } +} + +int main(int argc, char **argv) +{ + int c; + my_progname= argv[0]; + + if (argc <= 1) + { + usage(); + exit(1); + } + + while(1) + { + int option_index= 0; + c= getopt_long(argc, argv, "abcdefghij", long_options, &option_index); + + switch(c) { + case 'a': + puts(CFLAGS); + break; + case 'b': + usage(); + break; + case 'c': + puts(INCLUDE); + break; + case 'd': + case 'e': + puts(LIBS); + break; + case 'f': + puts(VERSION); + break; + case 'g': + puts(CC_VERSION); + break; + case 'h': + puts(SOCKET); + break; + case 'i': + puts(PORT); + break; + case 'j': + puts(PLUGIN_DIR); + break; + default: + exit(0); + } + } + + exit(0); +} + -- cgit v1.2.3