MonetDB: mbedded - add initial support for hge in the embedded api

2020-05-24 Thread Niels Nes
Changeset: a50693431f8c for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=a50693431f8c
Modified Files:
ctest/tools/embedded/example2.c
tools/embedded/monetdb_embedded.c
tools/embedded/monetdb_embedded.h
Branch: mbedded
Log Message:

add initial support for hge in the embedded api


diffs (174 lines):

diff --git a/ctest/tools/embedded/example2.c b/ctest/tools/embedded/example2.c
--- a/ctest/tools/embedded/example2.c
+++ b/ctest/tools/embedded/example2.c
@@ -25,11 +25,17 @@ main(void)
error(err)
if ((err = monetdb_connect(&conn)) != NULL)
error(err)
-   if ((err = monetdb_query(conn, "CREATE TABLE test (b bool, t tinyint, s 
smallint, x integer, l bigint, f float, d double, y string)", NULL, NULL, 
NULL)) != NULL)
+   if ((err = monetdb_query(conn, "CREATE TABLE test (b bool, t tinyint, s 
smallint, x integer, l bigint, "
+#if HAVE_HGE
+   "h hugeint, "
+#else
+   "h bigint, "
+#endif
+   "f float, d double, y string)", NULL, NULL, NULL)) != NULL)
error(err)
-   if ((err = monetdb_query(conn, "INSERT INTO test VALUES (TRUE, 42, 42, 
42, 42, 42.42, 42.42, 'Hello'), (NULL, NULL, NULL, NULL, NULL, NULL, NULL, 
'World')", NULL, NULL, NULL)) != NULL)
+   if ((err = monetdb_query(conn, "INSERT INTO test VALUES (TRUE, 42, 42, 
42, 42, 42, 42.42, 42.42, 'Hello'), (NULL, NULL, NULL, NULL, NULL, NULL, NULL, 
NULL, 'World')", NULL, NULL, NULL)) != NULL)
error(err)
-   if ((err = monetdb_query(conn, "SELECT b, t, s, x, l, f, d, y FROM 
test; ", &result, NULL, NULL)) != NULL)
+   if ((err = monetdb_query(conn, "SELECT b, t, s, x, l, h, f, d, y FROM 
test; ", &result, NULL, NULL)) != NULL)
error(err)
 
fprintf(stdout, "Query result with %zu cols and %"PRId64" rows\n", 
result->ncols, result->nrows);
@@ -84,6 +90,17 @@ main(void)
}
break;
}
+#if HAVE_HGE
+   case monetdb_int128_t: {
+   monetdb_column_int128_t * col = 
(monetdb_column_int128_t *) rcol;
+   if (col->data[r] == col->null_value) {
+   printf("NULL");
+   } else {
+   printf("%" PRId64 "%" PRId64, 
(int64_t)(col->data[r]>>64), (int64_t)(col->data[r]));
+   }
+   break;
+   }
+#endif
case monetdb_float: {
monetdb_column_float * col = 
(monetdb_column_float *) rcol;
if (col->data[r] == col->null_value) {
diff --git a/tools/embedded/monetdb_embedded.c 
b/tools/embedded/monetdb_embedded.c
--- a/tools/embedded/monetdb_embedded.c
+++ b/tools/embedded/monetdb_embedded.c
@@ -792,11 +792,18 @@ monetdb_shutdown(void)
GENERATE_BASE_HEADERS(tpe, tpename); \
static int tpename##_is_null(tpe value) { return value == mname##_nil; }
 
+#ifdef bool
+#undef bool
+#endif
+
 GENERATE_BASE_FUNCTIONS(int8_t, bool, bit)
 GENERATE_BASE_FUNCTIONS(int8_t, int8_t, bte)
 GENERATE_BASE_FUNCTIONS(int16_t, int16_t, sht)
 GENERATE_BASE_FUNCTIONS(int32_t, int32_t, int)
 GENERATE_BASE_FUNCTIONS(int64_t, int64_t, lng)
+#if HAVE_HGE
+GENERATE_BASE_FUNCTIONS(__int128, int128_t, hge)
+#endif
 GENERATE_BASE_FUNCTIONS(size_t, size_t, oid)
 
 GENERATE_BASE_FUNCTIONS(float, float, flt)
@@ -809,32 +816,32 @@ GENERATE_BASE_HEADERS(monetdb_data_date,
 GENERATE_BASE_HEADERS(monetdb_data_time, time);
 GENERATE_BASE_HEADERS(monetdb_data_timestamp, timestamp);
 
-#define GENERATE_BAT_INPUT_BASE(tpe)   
\
+#define GENERATE_BAT_INPUT_BASE(tpe)   
\
monetdb_column_##tpe *bat_data = 
GDKzalloc(sizeof(monetdb_column_##tpe));  \
if (!bat_data) {
   \
msg = createException(MAL, "embedded.monetdb_result_fetch", 
MAL_MALLOC_FAIL); \
-   goto cleanup;   
   \
+   goto cleanup;   
   \
}   
   \
bat_data->type = monetdb_##tpe; 
   \
bat_data->is_null = tpe##_is_null;  
   \
bat_data->scale = pow(10, sqltpe->scale);   
   \
column_result = (monetdb_column*) bat_data;
 
-#define GENERATE_BAT_INPUT(b, tpe, mtype)  
\
+#define GENERATE_BA

MonetDB: mbedded - add (tiny) example for temporal values

2020-05-24 Thread Niels Nes
Changeset: a8c658fb035b for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=a8c658fb035b
Added Files:
ctest/tools/embedded/example_temporal.c
Modified Files:
ctest/tools/embedded/CMakeLists.txt
Branch: mbedded
Log Message:

add (tiny) example for temporal values


diffs (134 lines):

diff --git a/ctest/tools/embedded/CMakeLists.txt 
b/ctest/tools/embedded/CMakeLists.txt
--- a/ctest/tools/embedded/CMakeLists.txt
+++ b/ctest/tools/embedded/CMakeLists.txt
@@ -29,3 +29,15 @@ target_link_libraries(example2
 #sql
 )
 add_test(run_example2 example2)
+
+add_executable(example_temporal example_temporal.c)
+target_link_libraries(example_temporal
+  PRIVATE
+monetdb_config_header
+embedded
+sqlinclude
+gdk
+mapi
+#sql
+)
+add_test(run_example_temporal example_temporal)
diff --git a/ctest/tools/embedded/example_temporal.c 
b/ctest/tools/embedded/example_temporal.c
new file mode 100644
--- /dev/null
+++ b/ctest/tools/embedded/example_temporal.c
@@ -0,0 +1,110 @@
+/*
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0.  If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Copyright 1997 - July 2008 CWI, August 2008 - 2020 MonetDB B.V.
+ */
+
+#include "monetdb_embedded.h"
+#include 
+#include 
+#include 
+
+#define error(msg) {fprintf(stderr, "Failure: %s\n", msg); return -1;}
+
+#define date_eq(d1, d2) (d1.year == d2.year && d1.month == d2.month && d1.day 
== d2.day)
+#define time_eq(t1, t2) (t1.hours == t2.hours && t1.minutes == t2.minutes && 
t1.seconds == t2.seconds && t1.ms == t2.ms)
+
+int
+main(void)
+{
+   char* err = NULL;
+   monetdb_connection conn = NULL;
+   monetdb_result* result = NULL;
+
+   // first argument is a string for the db directory or NULL for 
in-memory mode
+   if ((err = monetdb_startup(NULL, 0)) != NULL)
+   error(err)
+   if ((err = monetdb_connect(&conn)) != NULL)
+   error(err)
+   if ((err = monetdb_query(conn, "CREATE TABLE test (x integer, d date, t 
time, ts timestamp, y string)", NULL, NULL, NULL)) != NULL)
+   error(err)
+   if ((err = monetdb_query(conn, "INSERT INTO test VALUES (42, 
'2020-1-1', '13:13:30', '2020-1-1 13:13:30', 'Hello'), (NULL, NULL, NULL, NULL, 
'World')", NULL, NULL, NULL)) != NULL)
+   error(err)
+   if ((err = monetdb_query(conn, "SELECT x, d, t, ts, y FROM test; ", 
&result, NULL, NULL)) != NULL)
+   error(err)
+
+   fprintf(stdout, "Query result with %zu cols and %"PRId64" rows\n", 
result->ncols, result->nrows);
+   for (int64_t r = 0; r < result->nrows; r++) {
+   for (size_t c = 0; c < result->ncols; c++) {
+   monetdb_column* rcol;
+   if ((err = monetdb_result_fetch(conn, &rcol, result, 
c)) != NULL)
+   error(err)
+   switch (rcol->type) {
+   case monetdb_int32_t: {
+   monetdb_column_int32_t * col = 
(monetdb_column_int32_t *) rcol;
+   if (col->data[r] == col->null_value) {
+   printf("NULL");
+   } else {
+   printf("%d", col->data[r]);
+   }
+   break;
+   }
+   case monetdb_date: {
+   monetdb_column_date * col = 
(monetdb_column_date *) rcol;
+   if (date_eq(col->data[r], 
col->null_value)) {
+   printf("NULL");
+   } else {
+   printf("%d-%d-%d", 
col->data[r].year, col->data[r].month, col->data[r].day);
+   }
+   break;
+   }
+   case monetdb_time: {
+   monetdb_column_time * col = 
(monetdb_column_time *) rcol;
+   if (time_eq(col->data[r], 
col->null_value)) {
+   printf("NULL");
+   } else {
+   printf("%d:%d:%d.%d", 
col->data[r].hours, col->data[r].minutes, col->data[r].seconds, 
col->data[r].ms);
+   }
+   break;
+   }
+   case monetdb_timestamp: {
+   monetdb_column_timestamp * col = 
(monetdb_column_timestamp *) rcol;
+ 

MonetDB: mbedded - fedora 31 has snappy

2020-05-24 Thread Niels Nes
Changeset: 050df76abfe0 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=050df76abfe0
Modified Files:
ctest/cmake/detect-snappy.cmake
Branch: mbedded
Log Message:

fedora 31 has snappy


diffs (14 lines):

diff --git a/ctest/cmake/detect-snappy.cmake b/ctest/cmake/detect-snappy.cmake
--- a/ctest/cmake/detect-snappy.cmake
+++ b/ctest/cmake/detect-snappy.cmake
@@ -38,8 +38,8 @@ elseif(${LINUX_DISTRO} STREQUAL "fedora"
 set(UNDETECT "0")
   endif()
   if(${LINUX_DISTRO_VERSION} STREQUAL "31")
-set(DETECT "1")
-set(UNDETECT "0")
+set(DETECT "0")
+set(UNDETECT "1")
   endif()
   if(${LINUX_DISTRO_VERSION} STREQUAL "32")
 set(DETECT "1")
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: unlock - fix unused variable

2020-05-24 Thread Niels Nes
Changeset: a364a797bf5c for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=a364a797bf5c
Modified Files:
sql/storage/bat/bat_storage.c
Branch: unlock
Log Message:

fix unused variable


diffs (11 lines):

diff --git a/sql/storage/bat/bat_storage.c b/sql/storage/bat/bat_storage.c
--- a/sql/storage/bat/bat_storage.c
+++ b/sql/storage/bat/bat_storage.c
@@ -1644,6 +1644,7 @@ tr_update_cs( sql_trans *tr, column_stor
 #endif
 
int cleared = ccs->cleared;
+   (void)cleared;
if (ccs->cleared) {
ccs->cleared = 0;
assert(ccs->bid != ocs->bid);
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: unlock - more windows compile fixes

2020-05-24 Thread Niels Nes
Changeset: 2211c583112d for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=2211c583112d
Modified Files:
gdk/gdk_logger.c
Branch: unlock
Log Message:

more windows compile fixes


diffs (12 lines):

diff --git a/gdk/gdk_logger.c b/gdk/gdk_logger.c
--- a/gdk/gdk_logger.c
+++ b/gdk/gdk_logger.c
@@ -1966,7 +1966,7 @@ static gdk_return
if (sliced)
offset = 0;
if (b->ttype < TYPE_str && !isVIEW(b)) {
-   const void *t = BUNtail(bi, offset);
+   const void *t = BUNtail(bi, (BUN)offset);
 
ok = wt(t, lg->output_log, (size_t)nr);
} else {
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: mbedded - small fix of Snappy detection

2020-05-24 Thread Niels Nes
Changeset: 1bfb7eb1724d for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=1bfb7eb1724d
Modified Files:
cmake/Modules/FindSnappy.cmake
cmake/monetdb-findpackages.cmake
common/stream/CMakeLists.txt
Branch: mbedded
Log Message:

small fix of Snappy detection


diffs (36 lines):

diff --git a/cmake/Modules/FindSnappy.cmake b/cmake/Modules/FindSnappy.cmake
--- a/cmake/Modules/FindSnappy.cmake
+++ b/cmake/Modules/FindSnappy.cmake
@@ -9,7 +9,7 @@ find_path(SNAPPY_INCLUDE_DIR NAMES snapp
 find_library(SNAPPY_LIBRARIES NAMES snappy)
 
 include(FindPackageHandleStandardArgs)
-find_package_handle_standard_args(SNAPPY
+find_package_handle_standard_args(Snappy
   DEFAULT_MSG
   SNAPPY_LIBRARIES
   SNAPPY_INCLUDE_DIR)
diff --git a/cmake/monetdb-findpackages.cmake b/cmake/monetdb-findpackages.cmake
--- a/cmake/monetdb-findpackages.cmake
+++ b/cmake/monetdb-findpackages.cmake
@@ -80,7 +80,7 @@ if(WITH_PROJ)
 endif()
 
 if(WITH_SNAPPY)
-  find_package(Snappy)
+   find_package(Snappy)
 endif()
 
 if(WITH_UUID)
diff --git a/common/stream/CMakeLists.txt b/common/stream/CMakeLists.txt
--- a/common/stream/CMakeLists.txt
+++ b/common/stream/CMakeLists.txt
@@ -41,7 +41,7 @@ target_link_libraries(stream
   $<$:CURL::libcurl>
   $<$:LibLZMA::LibLZMA>
   $<$:LZ4::LZ4>
-  $<$:Snappy::snappy>
+  $<$:SNAPPY::SNAPPY>
   $<$:Iconv::Iconv>
   PRIVATE
   matomic
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: mbedded - cleanup cmake code, add tests and fix bugs

2020-05-24 Thread Arjen de Rijke
Changeset: 063b05bb3840 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=063b05bb3840
Added Files:
ctest/cmake/detect-fits.cmake
ctest/cmake/detect-libr.cmake
ctest/cmake/detect-snappy.cmake
ctest/cmake/set-cmake-vars.cmake
ctest/cmake/test_detect_fits.c.in
ctest/cmake/test_detect_libr.c.in
ctest/cmake/test_detect_snappy.c.in
Modified Files:
cmake/monetdb-defines.cmake
cmake/monetdb-findpackages.cmake
cmake/monetdb-functions.cmake
cmake/monetdb-options.cmake
ctest/cmake/CMakeLists.txt
ctest/cmake/detect-curl.cmake
monetdb5/extras/rapi/CMakeLists.txt
monetdb_config.h.in
monetdb_config_win32.h.in
sql/backends/monet5/UDF/capi/CMakeLists.txt
Branch: mbedded
Log Message:

cleanup cmake code, add tests and fix bugs


diffs (truncated from 577 to 300 lines):

diff --git a/cmake/monetdb-defines.cmake b/cmake/monetdb-defines.cmake
--- a/cmake/monetdb-defines.cmake
+++ b/cmake/monetdb-defines.cmake
@@ -137,10 +137,13 @@ macro(monetdb_macro_variables)
   set(HAVE_LIBLZ4 ${LZ4_FOUND})
   set(HAVE_PROJ ${PROJ_FOUND})
   set(HAVE_SNAPPY ${SNAPPY_FOUND})
+  set(HAVE_FITS ${CFITSIO_FOUND})
   set(HAVE_UUID ${HAVE_UUID_GENERATE})
   set(HAVE_VALGRIND ${VALGRIND_FOUND})
   set(HAVE_NETCDF ${NETCDF_FOUND})
   set(HAVE_READLINE ${READLINE_FOUND})
+  set(HAVE_LIBR ${LIBR_FOUND})
+  set(RHOME "${LIBR_HOME}")
 
   set(SOCKET_LIBRARIES "")
   if (WIN32)
@@ -153,6 +156,11 @@ macro(monetdb_macro_variables)
   if(WIN_GETADDRINFO)
 set(HAVE_GETADDRINFO 1)
   endif()
+  set(HAVE_CUDF
+${CINTEGRATION}
+CACHE
+INTERNAL
+"C udfs extension is available")
 
   set(DIR_SEP  "/")
   set(PATH_SEP ":")
diff --git a/cmake/monetdb-findpackages.cmake b/cmake/monetdb-findpackages.cmake
--- a/cmake/monetdb-findpackages.cmake
+++ b/cmake/monetdb-findpackages.cmake
@@ -64,7 +64,7 @@ if(WITH_BZ2)
 endif()
 
 if(WITH_CURL)
-  find_package(CURL CONFIG)
+  find_package(CURL)
 endif()
 
 if(WITH_ZLIB)
@@ -80,7 +80,7 @@ if(WITH_PROJ)
 endif()
 
 if(WITH_SNAPPY)
-  find_package(Snappy CONFIG)
+  find_package(Snappy)
 endif()
 
 if(WITH_UUID)
@@ -99,10 +99,6 @@ if(FITS)
   find_package(CFitsIO)
 endif()
 
-if(CINTEGRATION)
-  set(HAVE_CUDF ON CACHE INTERNAL "C udfs extension is available")
-endif()
-
 if(NETCDF)
   find_package(NetCDF)
 endif()
@@ -150,8 +146,6 @@ endif(ODBC)
 
 if(RINTEGRATION)
   find_package(LibR)
-  set(HAVE_LIBR "${LIBR_FOUND}")
-  set(RHOME "${LIBR_HOME}")
 endif()
 
 # vim: set ts=2:sw=2:et
diff --git a/cmake/monetdb-functions.cmake b/cmake/monetdb-functions.cmake
--- a/cmake/monetdb-functions.cmake
+++ b/cmake/monetdb-functions.cmake
@@ -131,12 +131,14 @@ function(monetdb_cmake_summary)
   message(STATUS "Zlib library: ${ZLIB_FOUND}")
   message(STATUS "Lz4 library: ${LZ4_FOUND}")
   message(STATUS "Proj library: ${PROJ_FOUND}")
+  message(STATUS "Snappy library: ${SNAPPY_FOUND}")
   message(STATUS "Geos library: ${GEOS_FOUND}")
   message(STATUS "Gdal library: ${GDAL_FOUND}")
   message(STATUS "Cfitsio library: ${CFITSIO_FOUND}")
   message(STATUS "Kvm library: ${KVM_FOUND}")
   message(STATUS "Netcdf library: ${NETCDF_FOUND}")
   message(STATUS "Readline library: ${READLINE_FOUND}")
+  message(STATUS "R library: ${LIBR_FOUND}")
   message(STATUS "-")
   message(STATUS "")
 endfunction()
diff --git a/cmake/monetdb-options.cmake b/cmake/monetdb-options.cmake
--- a/cmake/monetdb-options.cmake
+++ b/cmake/monetdb-options.cmake
@@ -69,8 +69,6 @@ cmake_dependent_option(SHP
   GEOM
   ON)
 
-set(ENABLE_MAPI "YES" CACHE STRING "Enable MAPI (default=YES)") # Check with 
HAVE_MAPI
-
 option(SANITIZER 
   "Enable support for the GCC address sanitizer (default=OFF)"
   OFF)
diff --git a/ctest/cmake/CMakeLists.txt b/ctest/cmake/CMakeLists.txt
--- a/ctest/cmake/CMakeLists.txt
+++ b/ctest/cmake/CMakeLists.txt
@@ -30,6 +30,9 @@ include(${CMAKE_CURRENT_SOURCE_DIR}/dete
 include(${CMAKE_CURRENT_SOURCE_DIR}/detect-proj.cmake)
 include(${CMAKE_CURRENT_SOURCE_DIR}/detect-netcdf.cmake)
 include(${CMAKE_CURRENT_SOURCE_DIR}/detect-readline.cmake)
+include(${CMAKE_CURRENT_SOURCE_DIR}/detect-libr.cmake)
+include(${CMAKE_CURRENT_SOURCE_DIR}/detect-snappy.cmake)
+include(${CMAKE_CURRENT_SOURCE_DIR}/detect-fits.cmake)
 include(${CMAKE_CURRENT_SOURCE_DIR}/detect-unixgetaddrinfo.cmake)
 include(${CMAKE_CURRENT_SOURCE_DIR}/detect-wingetaddrinfo.cmake)
 include(${CMAKE_CURRENT_SOURCE_DIR}/detect-getaddrinfo.cmake)
@@ -38,3 +41,4 @@ include(${CMAKE_CURRENT_SOURCE_DIR}/dete
 include(${CMAKE_CURRENT_SOURCE_DIR}/detect-pthreadsig.cmake)
 
 include(${CMAKE_CURRENT_SOURCE_DIR}/set-dir-vars.cmake)
+include(${CMAKE_CURRENT_SOURCE_DIR}/set-cmake-vars.cmake)
diff --git a/ctest/cmake/detect-curl.cmake b/ctest/cmake/detect-curl.cmake
--- a/ctest/cmake/detect-curl.cmake
+++ b/ctest/cmake/detect-curl.cmake
@@ -30,16 +30,16 @@ elseif (${LINUX_DISTRO} STREQUAL "ubun

MonetDB: mbedded - Apple Darwin 19 no longer supports CommonCryp...

2020-05-24 Thread Niels Nes
Changeset: 4f3fea4d4003 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=4f3fea4d4003
Modified Files:
cmake/monetdb-findpackages.cmake
tools/merovingian/utils/CMakeLists.txt
Branch: mbedded
Log Message:

Apple Darwin 19 no longer supports CommonCrypto, ie lets use a brew installed 
openssl


diffs (25 lines):

diff --git a/cmake/monetdb-findpackages.cmake b/cmake/monetdb-findpackages.cmake
--- a/cmake/monetdb-findpackages.cmake
+++ b/cmake/monetdb-findpackages.cmake
@@ -53,7 +53,7 @@ if(NOT PCRE_FOUND AND NOT HAVE_POSIX_REG
   message(FATAL_ERROR "PCRE library or GNU regex library not found but 
required for MonetDB5")
 endif()
 
-if(${CMAKE_SYSTEM_NAME} STREQUAL "Darwin")
+if(${CMAKE_SYSTEM_NAME} STREQUAL "Darwin" AND ${CMAKE_SYSTEM_VERSION} 
VERSION_LESS "19.0.0")
   find_package(CommonCrypto)
 else()
   find_package(OpenSSL)
diff --git a/tools/merovingian/utils/CMakeLists.txt 
b/tools/merovingian/utils/CMakeLists.txt
--- a/tools/merovingian/utils/CMakeLists.txt
+++ b/tools/merovingian/utils/CMakeLists.txt
@@ -25,7 +25,8 @@ target_link_libraries(meroutil
   PRIVATE
   monetdb_config_header
   mutils
-  stream)
+  stream
+  $<$:OpenSSL::Crypto>)
 
 install(TARGETS
   meroutil
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: mbedded - more code reorganization

2020-05-24 Thread Arjen de Rijke
Changeset: f718f3f0bf91 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=f718f3f0bf91
Modified Files:
CMakeLists.txt
cmake/monetdb-defines.cmake
cmake/monetdb-findpackages.cmake
monetdb_config.h.in
monetdb_config_win32.h.in
Branch: mbedded
Log Message:

more code reorganization


diffs (truncated from 384 to 300 lines):

diff --git a/CMakeLists.txt b/CMakeLists.txt
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -44,9 +44,13 @@ include(TestBigEndian REQUIRED)
 if(WIN32)
   set(CMAKE_REQUIRED_LIBRARIES  ws2_32.lib shell32.lib advapi32.lib)
 endif()
+
 # Include MonetDB specific functions
 include(monetdb-functions)
 include(monetdb-findpackages)
+include(monetdb-toolchain)
+monetdb_default_toolchain()
+
 include(monetdb-defines)
 monetdb_hg_revision()
 
@@ -58,66 +62,27 @@ endif()
 
 monetdb_configure_defines()
 
-# On C99, but we have to calculate the size
-check_type_size(size_t SIZEOF_SIZE_T LANGUAGE C)
-set(SIZEOF_VOID_P ${CMAKE_SIZEOF_VOID_P})
 if(HAVE_NETDB_H)
   set(CMAKE_EXTRA_INCLUDE_FILES "netdb.h" "unistd.h")
 endif()
 if(HAVE_WINSOCK_H)
   set(CMAKE_EXTRA_INCLUDE_FILES "winsock.h")
 endif()
-check_type_size(socklen_t HAVE_SOCKLEN_T LANGUAGE C)
-
 set(CMAKE_REQUIRED_INCLUDES "/usr/include")
 
 monetdb_configure_crypto()
-
-check_type_size(ssize_t SIZEOF_SSIZE_T LANGUAGE C)
-if(NOT HAVE_SIZEOF_SSIZE_T)
-  # Set a default value
-  if(CMAKE_SIZEOF_VOID_P EQUAL 8)
-set(ssize_t "int64_t")
-  else()
-set(ssize_t "int32_t")
-  endif()
-  set(SIZEOF_SSIZE_T ${CMAKE_SIZEOF_VOID_P})
-endif()
-check_type_size(char SIZEOF_CHAR LANGUAGE C)
-check_type_size(short SIZEOF_SHORT LANGUAGE C)
-check_type_size(int SIZEOF_INT LANGUAGE C)
-check_type_size(long SIZEOF_LONG LANGUAGE C)
-check_type_size(wchar_t SIZEOF_WCHAR_T LANGUAGE C)
-
-if(MSVC)
-  set(_Noreturn "__declspec(noreturn)")
-  # C99 feature not present in MSVC
-  set(restrict "__restrict")
-  # C99 feature only available on C++ compiler in MSVC
-  # https://docs.microsoft.com/en-us/cpp/cpp/inline-functions-cpp?view=vs-2015
-  set(inline "__inline")
-endif()
+monetdb_configure_sizes()
 
 include(GNUInstallDirs)
 
 # Define the macro variables after configuring the install directories.
 # Some variables define additional installation settings.
 monetdb_macro_variables()
+monetdb_configure_misc()
 # Define custom target after the install directories variables.
 # Some custom target will need these setting.
 include(monetdb-custom-targets)
 
-# Used for installing testing python module (don't pass a location, else we 
need to strip this again)
-execute_process(COMMAND "${Python3_EXECUTABLE}" "-c" "import 
distutils.sysconfig; print(distutils.sysconfig.get_python_lib(0,0,''))"
-   RESULT_VARIABLE PY3_LIBDIR_CODE 
-   OUTPUT_VARIABLE PYTHON3_SITEDIR 
-   OUTPUT_STRIP_TRAILING_WHITESPACE)
-if (PY3_LIBDIR_CODE) 
-  message(WARNING "Could not determine MonetDB Python3 site-packages 
instalation directory")
-endif()
-set(PYTHON3_LIBDIR "${PYTHON3_SITEDIR}")
-set(PYTHON "${Python3_EXECUTABLE}")
-
 SET(CMAKE_SKIP_BUILD_RPATH  FALSE)
 SET(CMAKE_BUILD_WITH_INSTALL_RPATH FALSE)
 SET(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_FULL_LIBDIR}")
@@ -133,21 +98,6 @@ set(PROGRAM_PERMISSIONS_DEFAULT
   WORLD_READ
   WORLD_EXECUTE)
 
-# Set host information
-string(TOLOWER "${CMAKE_SYSTEM_PROCESSOR}" CMAKE_SYSTEM_PROCESSOR_LOWER)
-string(TOLOWER "${CMAKE_SYSTEM_NAME}" CMAKE_SYSTEM_NAME_LOWER)
-string(TOLOWER "${CMAKE_C_COMPILER_ID}" CMAKE_C_COMPILER_ID_LOWER)
-set("HOST" 
"${CMAKE_SYSTEM_PROCESSOR_LOWER}-pc-${CMAKE_SYSTEM_NAME_LOWER}-${CMAKE_C_COMPILER_ID_LOWER}")
-
-# Password hash algorithm
-set(PASSWORD_BACKEND "SHA512"
-  CACHE STRING
-  "Password hash algorithm, one of MD5, SHA1, RIPEMD160, SHA224, SHA256, 
SHA384, SHA512, defaults to SHA512")
-
-if(NOT ${PASSWORD_BACKEND} MATCHES 
"^MD5|SHA1|RIPEMD160|SHA224|SHA256|SHA384|SHA512$")
-  message(FATAL_ERROR "PASSWORD_BACKEND invalid, choose one of MD5, SHA1, 
RIPEMD160, SHA224, SHA256, SHA384, SHA512")
-endif()
-
 find_program(BASH NAMES bash DOC "bash interpreter fullpath")
 
 if(WIN32)
diff --git a/cmake/monetdb-defines.cmake b/cmake/monetdb-defines.cmake
--- a/cmake/monetdb-defines.cmake
+++ b/cmake/monetdb-defines.cmake
@@ -234,3 +234,80 @@ macro(monetdb_configure_crypto)
   endif()
   cmake_pop_check_state()
 endmacro()
+
+macro(monetdb_configure_sizes)
+  # On C99, but we have to calculate the size
+  check_type_size(size_t SIZEOF_SIZE_T LANGUAGE C)
+  set(SIZEOF_VOID_P ${CMAKE_SIZEOF_VOID_P})
+  check_type_size(ssize_t SIZEOF_SSIZE_T LANGUAGE C)
+  if(NOT HAVE_SIZEOF_SSIZE_T)
+# Set a default value
+if(CMAKE_SIZEOF_VOID_P EQUAL 8)
+  set(ssize_t "int64_t")
+else()
+  set(ssize_t "int32_t")
+endif()
+set(SIZEOF_SSIZE_T ${CMAKE_SIZEOF_VOID_P})
+  endif()
+  check_type_size(char SIZEOF_CHAR LANGUAGE C)
+  check_type_size(short SIZEOF_SHORT LANGUAGE C)
+  check_type_size(int SIZEOF_INT LANGUAGE C)
+  

MonetDB: unlock - fix problems with compilation on windows and mac

2020-05-24 Thread Niels Nes
Changeset: f4c3b45ae197 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=f4c3b45ae197
Modified Files:
gdk/gdk_logger.c
sql/storage/bat/bat_storage.c
sql/storage/store.c
Branch: unlock
Log Message:

fix problems with compilation on windows and mac


diffs (37 lines):

diff --git a/gdk/gdk_logger.c b/gdk/gdk_logger.c
--- a/gdk/gdk_logger.c
+++ b/gdk/gdk_logger.c
@@ -1970,8 +1970,8 @@ static gdk_return
 
ok = wt(t, lg->output_log, (size_t)nr);
} else {
-   BUN end = offset+nr;
-   for (p = offset; p < end && ok == GDK_SUCCEED; p++) {
+   BUN end = (BUN)(offset+nr);
+   for (p = (BUN)offset; p < end && ok == GDK_SUCCEED; p++) {
const void *t = BUNtail(bi, p);
 
ok = wt(t, lg->output_log, 1);
diff --git a/sql/storage/bat/bat_storage.c b/sql/storage/bat/bat_storage.c
--- a/sql/storage/bat/bat_storage.c
+++ b/sql/storage/bat/bat_storage.c
@@ -1625,6 +1625,7 @@ tr_update_cs( sql_trans *tr, column_stor
int ok = LOG_OK;
BAT *cur = NULL;
 
+   (void)tr;
assert(ATOMIC_GET(&store_nr_active)==1);
assert (ocs->bid != 0 || tr != gtrans);
 
diff --git a/sql/storage/store.c b/sql/storage/store.c
--- a/sql/storage/store.c
+++ b/sql/storage/store.c
@@ -2308,8 +2308,6 @@ store_manager(void)
continue;
}
 
-   continue;
-
MT_thread_setworking("flushing");
res = store_apply_deltas();
 
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: mbedded - merged

2020-05-24 Thread Niels Nes
Changeset: e0a47d761f64 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=e0a47d761f64
Modified Files:
cmake/monetdb-defines.cmake
monetdb_config.h.in
monetdb_config_win32.h.in
Branch: mbedded
Log Message:

merged


diffs (truncated from 437 to 300 lines):

diff --git a/cmake/monetdb-defines.cmake b/cmake/monetdb-defines.cmake
--- a/cmake/monetdb-defines.cmake
+++ b/cmake/monetdb-defines.cmake
@@ -11,6 +11,7 @@
 # additional variables, for example for legacy defines, do this
 # in the "monetdb_macro_variables" macro.
 function(monetdb_configure_defines)
+  find_path(HAVE_SYS_TYPES_H "sys/types.h")
   find_path(HAVE_DISPATCH_DISPATCH_H "dispatch/dispatch.h")
   find_path(HAVE_DLFCN_H "dlfcn.h")
   find_path(HAVE_FCNTL_H "fcntl.h")
@@ -31,7 +32,7 @@ function(monetdb_configure_defines)
   find_path(HAVE_STROPTS_H "stropts.h")
   find_path(HAVE_SYS_FILE_H "sys/file.h")
   find_path(HAVE_SYS_IOCTL_H "sys/ioctl.h")
-  find_path(HAVE_SYS_IOCTL_H "sys/sysctl.h")
+  find_path(HAVE_SYS_SYSCTL_H "sys/sysctl.h")
   find_path(HAVE_SYS_MMAN_H "sys/mman.h")
   find_path(HAVE_SYS_PARAM_H "sys/param.h")
   find_path(HAVE_SYS_RESOURCE_H "sys/resource.h")
@@ -44,7 +45,6 @@ function(monetdb_configure_defines)
   find_path(HAVE_UNISTD_H "unistd.h")
   find_path(HAVE_UUID_UUID_H "uuid/uuid.h")
   find_path(HAVE_WINSOCK_H "winsock2.h")
-  find_path(HAVE_SYS_TYPES_H "sys/types.h")
   find_path(HAVE_SEMAPHORE_H "semaphore.h")
   find_path(HAVE_GETOPT_H "getopt.h")
 
diff --git a/monetdb_config.h.in b/monetdb_config.h.in
--- a/monetdb_config.h.in
+++ b/monetdb_config.h.in
@@ -26,7 +26,7 @@
 #include 
 #include 
 
-#cmakedefine HAVE_DIRENT_H @HAVE_DIRENT_H@
+// Section: monetdb configure defines
 #cmakedefine HAVE_DISPATCH_DISPATCH_H @HAVE_DISPATCH_DISPATCH_H@
 #cmakedefine HAVE_DLFCN_H @HAVE_DLFCN_H@
 #cmakedefine HAVE_FCNTL_H @HAVE_FCNTL_H@
@@ -52,9 +52,7 @@
 #cmakedefine HAVE_SYS_MMAN_H @HAVE_SYS_MMAN_H@
 #cmakedefine HAVE_SYS_PARAM_H @HAVE_SYS_PARAM_H@
 #cmakedefine HAVE_SYS_RESOURCE_H @HAVE_SYS_RESOURCE_H@
-#cmakedefine HAVE_SYS_SOCKET_H @HAVE_SYS_SOCKET_H@
 #cmakedefine HAVE_SYS_TIME_H @HAVE_SYS_TIME_H@
-#cmakedefine HAVE_GETTIMEOFDAY @HAVE_SYS_TIME_H@
 #cmakedefine HAVE_SYS_TIMES_H @HAVE_SYS_TIMES_H@
 #cmakedefine HAVE_SYS_UIO_H @HAVE_SYS_UIO_H@
 #cmakedefine HAVE_SYS_UN_H @HAVE_SYS_UN_H@
@@ -64,49 +62,18 @@
 #cmakedefine HAVE_UNISTD_H 1
 #cmakedefine HAVE_UUID_UUID_H @HAVE_UUID_UUID_H@
 #cmakedefine HAVE_WINSOCK_H @HAVE_WINSOCK_H@
-
 #cmakedefine HAVE_SEMAPHORE_H @HAVE_SEMAPHORE_H@
-
-#cmakedefine HAVE_SYS_STAT_H @HAVE_SYS_STAT_H@
-#cmakedefine HAVE_GETADDRINFO @HAVE_GETADDRINFO@
+#cmakedefine HAVE_GETOPT_H @HAVE_GETOPT_H@
 
-#define ICONV_CONST
-#cmakedefine HAVE_PTHREAD_KILL @HAVE_PTHREAD_KILL@
-#cmakedefine HAVE_PTHREAD_SIGMASK @HAVE_PTHREAD_SIGMASK@
-#cmakedefine HAVE_LOCALTIME_R @HAVE_LOCALTIME_R@
-#cmakedefine HAVE_STRERROR_R @HAVE_STRERROR_R@
-
-// Section: monetdb configure defines
 #cmakedefine HAVE_STDATOMIC_H @HAVE_STDATOMIC_H@
-#cmakedefine HAVE_GETOPT_H @HAVE_GETOPT_H@
-#cmakedefine HAVE_GETOPT @HAVE_GETOPT@
-// End Section: monetdb configure defines
 
-// Section: monetdb macro variables
-#cmakedefine HAVE_ICONV @HAVE_ICONV@
-#cmakedefine HAVE_PTHREAD_H @HAVE_PTHREAD_H@
-#cmakedefine HAVE_LIBPCRE @HAVE_LIBPCRE@
-#cmakedefine HAVE_OPENSSL @HAVE_OPENSSL@
-#cmakedefine HAVE_COMMONCRYPTO @HAVE_COMMONCRYPTO@
-#cmakedefine HAVE_LIBBZ2 @HAVE_LIBBZ2@
-#cmakedefine HAVE_CURL @HAVE_CURL@
-#cmakedefine HAVE_LIBLZMA @HAVE_LIBLZMA@
-#cmakedefine HAVE_LIBXML @HAVE_LIBXML@
-#cmakedefine HAVE_LIBZ @HAVE_LIBZ@
-#cmakedefine HAVE_LIBLZ4 @HAVE_LIBLZ4@
-#cmakedefine HAVE_PROJ @HAVE_PROJ@
-#cmakedefine HAVE_SNAPPY @HAVE_SNAPPY@
-#cmakedefine HAVE_UUID @HAVE_UUID@
-#cmakedefine HAVE_VALGRIND @HAVE_VALGRIND@
-#cmakedefine HAVE_NETCDF @HAVE_NETCDF@
-#cmakedefine HAVE_READLINE @HAVE_READLINE@
-// End Section: monetdb macro variables
-
-#define FLEXIBLE_ARRAY_MEMBER
-
+#cmakedefine HAVE_DIRENT_H @HAVE_DIRENT_H@
+#cmakedefine HAVE_SYS_SOCKET_H @HAVE_SYS_SOCKET_H@
+#cmakedefine HAVE_GETTIMEOFDAY @HAVE_SYS_TIME_H@
+#cmakedefine HAVE_SYS_STAT_H @HAVE_SYS_STAT_H@
+#cmakedefine HAVE_FDATASYNC @HAVE_FDATASYNC@
 #cmakedefine HAVE_ACCEPT4 @HAVE_ACCEPT4@
 #cmakedefine HAVE_ASCTIME_R @HAVE_ASCTIME_R@
-#define HAVE_CBRT 1
 #cmakedefine HAVE_CLOCK_GETTIME @HAVE_CLOCK_GETTIME@
 #cmakedefine HAVE_CTIME_R @HAVE_CTIME_R@
 #cmakedefine HAVE_DISPATCH_SEMAPHORE_CREATE @HAVE_DISPATCH_SEMAPHORE_CREATE@
@@ -123,6 +90,7 @@
 #cmakedefine HAVE_GETUID @HAVE_GETUID@
 #cmakedefine HAVE_GMTIME_R @HAVE_GMTIME_R@
 #cmakedefine HAVE_LOCALTIME_R @HAVE_LOCALTIME_R@
+#cmakedefine HAVE_STRERROR_R @HAVE_STRERROR_R@
 #cmakedefine HAVE_LOCKF @HAVE_LOCKF@
 #cmakedefine HAVE_MADVISE  @HAVE_MADVISE@
 #cmakedefine HAVE_MREMAP  @HAVE_MREMAP@
@@ -148,10 +116,36 @@
 #cmakedefine HAVE_TASK_INFO @HAVE_TASK_INFO@
 #cmakedefine HAVE_TIMES @HAVE_TIMES@
 #cmakedefine HAVE_UNAME @HAVE_UNAME@
+// #cmakedefine HAVE_SEMTIMEDOP
+#cmakedefine HAVE_PT

MonetDB: mbedded - try to fix windows compilation

2020-05-24 Thread Niels Nes
Changeset: c63ed45cff4d for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=c63ed45cff4d
Modified Files:
ctest/tools/embedded/example2.c
Branch: mbedded
Log Message:

try to fix windows compilation


diffs (12 lines):

diff --git a/ctest/tools/embedded/example2.c b/ctest/tools/embedded/example2.c
--- a/ctest/tools/embedded/example2.c
+++ b/ctest/tools/embedded/example2.c
@@ -80,7 +80,7 @@ main(void)
if (col->data[r] == col->null_value) {
printf("NULL");
} else {
-   printf("%ld", col->data[r]);
+   printf("%" PRId64, 
col->data[r]);
}
break;
}
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: mbedded - reorganize code, match order of detection and...

2020-05-24 Thread Arjen de Rijke
Changeset: 03669e73a54b for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=03669e73a54b
Modified Files:
cmake/monetdb-defines.cmake
monetdb_config.h.in
monetdb_config_win32.h.in
Branch: mbedded
Log Message:

reorganize code, match order of detection and definition


diffs (truncated from 437 to 300 lines):

diff --git a/cmake/monetdb-defines.cmake b/cmake/monetdb-defines.cmake
--- a/cmake/monetdb-defines.cmake
+++ b/cmake/monetdb-defines.cmake
@@ -11,6 +11,7 @@
 # additional variables, for example for legacy defines, do this
 # in the "monetdb_macro_variables" macro.
 function(monetdb_configure_defines)
+  find_path(HAVE_SYS_TYPES_H "sys/types.h")
   find_path(HAVE_DISPATCH_DISPATCH_H "dispatch/dispatch.h")
   find_path(HAVE_DLFCN_H "dlfcn.h")
   find_path(HAVE_FCNTL_H "fcntl.h")
@@ -31,7 +32,7 @@ function(monetdb_configure_defines)
   find_path(HAVE_STROPTS_H "stropts.h")
   find_path(HAVE_SYS_FILE_H "sys/file.h")
   find_path(HAVE_SYS_IOCTL_H "sys/ioctl.h")
-  find_path(HAVE_SYS_IOCTL_H "sys/sysctl.h")
+  find_path(HAVE_SYS_SYSCTL_H "sys/sysctl.h")
   find_path(HAVE_SYS_MMAN_H "sys/mman.h")
   find_path(HAVE_SYS_PARAM_H "sys/param.h")
   find_path(HAVE_SYS_RESOURCE_H "sys/resource.h")
@@ -44,7 +45,6 @@ function(monetdb_configure_defines)
   find_path(HAVE_UNISTD_H "unistd.h")
   find_path(HAVE_UUID_UUID_H "uuid/uuid.h")
   find_path(HAVE_WINSOCK_H "winsock2.h")
-  find_path(HAVE_SYS_TYPES_H "sys/types.h")
   find_path(HAVE_SEMAPHORE_H "semaphore.h")
   find_path(HAVE_GETOPT_H "getopt.h")
 
diff --git a/monetdb_config.h.in b/monetdb_config.h.in
--- a/monetdb_config.h.in
+++ b/monetdb_config.h.in
@@ -26,7 +26,7 @@
 #include 
 #include 
 
-#cmakedefine HAVE_DIRENT_H @HAVE_DIRENT_H@
+// Section: monetdb configure defines
 #cmakedefine HAVE_DISPATCH_DISPATCH_H @HAVE_DISPATCH_DISPATCH_H@
 #cmakedefine HAVE_DLFCN_H @HAVE_DLFCN_H@
 #cmakedefine HAVE_FCNTL_H @HAVE_FCNTL_H@
@@ -52,9 +52,7 @@
 #cmakedefine HAVE_SYS_MMAN_H @HAVE_SYS_MMAN_H@
 #cmakedefine HAVE_SYS_PARAM_H @HAVE_SYS_PARAM_H@
 #cmakedefine HAVE_SYS_RESOURCE_H @HAVE_SYS_RESOURCE_H@
-#cmakedefine HAVE_SYS_SOCKET_H @HAVE_SYS_SOCKET_H@
 #cmakedefine HAVE_SYS_TIME_H @HAVE_SYS_TIME_H@
-#cmakedefine HAVE_GETTIMEOFDAY @HAVE_SYS_TIME_H@
 #cmakedefine HAVE_SYS_TIMES_H @HAVE_SYS_TIMES_H@
 #cmakedefine HAVE_SYS_UIO_H @HAVE_SYS_UIO_H@
 #cmakedefine HAVE_SYS_UN_H @HAVE_SYS_UN_H@
@@ -64,49 +62,18 @@
 #cmakedefine HAVE_UNISTD_H 1
 #cmakedefine HAVE_UUID_UUID_H @HAVE_UUID_UUID_H@
 #cmakedefine HAVE_WINSOCK_H @HAVE_WINSOCK_H@
-
 #cmakedefine HAVE_SEMAPHORE_H @HAVE_SEMAPHORE_H@
-
-#cmakedefine HAVE_SYS_STAT_H @HAVE_SYS_STAT_H@
-#cmakedefine HAVE_GETADDRINFO @HAVE_GETADDRINFO@
+#cmakedefine HAVE_GETOPT_H @HAVE_GETOPT_H@
 
-#define ICONV_CONST
-#cmakedefine HAVE_PTHREAD_KILL @HAVE_PTHREAD_KILL@
-#cmakedefine HAVE_PTHREAD_SIGMASK @HAVE_PTHREAD_SIGMASK@
-#cmakedefine HAVE_LOCALTIME_R @HAVE_LOCALTIME_R@
-#cmakedefine HAVE_STRERROR_R @HAVE_STRERROR_R@
-
-// Section: monetdb configure defines
 #cmakedefine HAVE_STDATOMIC_H @HAVE_STDATOMIC_H@
-#cmakedefine HAVE_GETOPT_H @HAVE_GETOPT_H@
-#cmakedefine HAVE_GETOPT @HAVE_GETOPT@
-// End Section: monetdb configure defines
 
-// Section: monetdb macro variables
-#cmakedefine HAVE_ICONV @HAVE_ICONV@
-#cmakedefine HAVE_PTHREAD_H @HAVE_PTHREAD_H@
-#cmakedefine HAVE_LIBPCRE @HAVE_LIBPCRE@
-#cmakedefine HAVE_OPENSSL @HAVE_OPENSSL@
-#cmakedefine HAVE_COMMONCRYPTO @HAVE_COMMONCRYPTO@
-#cmakedefine HAVE_LIBBZ2 @HAVE_LIBBZ2@
-#cmakedefine HAVE_CURL @HAVE_CURL@
-#cmakedefine HAVE_LIBLZMA @HAVE_LIBLZMA@
-#cmakedefine HAVE_LIBXML @HAVE_LIBXML@
-#cmakedefine HAVE_LIBZ @HAVE_LIBZ@
-#cmakedefine HAVE_LIBLZ4 @HAVE_LIBLZ4@
-#cmakedefine HAVE_PROJ @HAVE_PROJ@
-#cmakedefine HAVE_SNAPPY @HAVE_SNAPPY@
-#cmakedefine HAVE_UUID @HAVE_UUID@
-#cmakedefine HAVE_VALGRIND @HAVE_VALGRIND@
-#cmakedefine HAVE_NETCDF @HAVE_NETCDF@
-#cmakedefine HAVE_READLINE @HAVE_READLINE@
-// End Section: monetdb macro variables
-
-#define FLEXIBLE_ARRAY_MEMBER
-
+#cmakedefine HAVE_DIRENT_H @HAVE_DIRENT_H@
+#cmakedefine HAVE_SYS_SOCKET_H @HAVE_SYS_SOCKET_H@
+#cmakedefine HAVE_GETTIMEOFDAY @HAVE_SYS_TIME_H@
+#cmakedefine HAVE_SYS_STAT_H @HAVE_SYS_STAT_H@
+#cmakedefine HAVE_FDATASYNC @HAVE_FDATASYNC@
 #cmakedefine HAVE_ACCEPT4 @HAVE_ACCEPT4@
 #cmakedefine HAVE_ASCTIME_R @HAVE_ASCTIME_R@
-#define HAVE_CBRT 1
 #cmakedefine HAVE_CLOCK_GETTIME @HAVE_CLOCK_GETTIME@
 #cmakedefine HAVE_CTIME_R @HAVE_CTIME_R@
 #cmakedefine HAVE_DISPATCH_SEMAPHORE_CREATE @HAVE_DISPATCH_SEMAPHORE_CREATE@
@@ -123,6 +90,7 @@
 #cmakedefine HAVE_GETUID @HAVE_GETUID@
 #cmakedefine HAVE_GMTIME_R @HAVE_GMTIME_R@
 #cmakedefine HAVE_LOCALTIME_R @HAVE_LOCALTIME_R@
+#cmakedefine HAVE_STRERROR_R @HAVE_STRERROR_R@
 #cmakedefine HAVE_LOCKF @HAVE_LOCKF@
 #cmakedefine HAVE_MADVISE  @HAVE_MADVISE@
 #cmakedefine HAVE_MREMAP  @HAVE_MREMAP@
@@ -148,10 +116,36 @@
 #cmakedefine HAVE_TASK_INFO @HAVE_TASK_INFO@
 #cmakedefine HAVE_TIMES @HAVE_TIMES@
 #cmakedefine HAVE_UNAME @HAVE_UNAME@
+// 

MonetDB: mbedded - add LIBDIR adn LIBDIR/monetdb5 to the PATH, w...

2020-05-24 Thread Niels Nes
Changeset: 9e8c81aadb6f for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=9e8c81aadb6f
Modified Files:
testing/monetdb_mtest.bat.in
Branch: mbedded
Log Message:

add LIBDIR adn LIBDIR/monetdb5 to the PATH, when running mtest


diffs (10 lines):

diff --git a/testing/monetdb_mtest.bat.in b/testing/monetdb_mtest.bat.in
--- a/testing/monetdb_mtest.bat.in
+++ b/testing/monetdb_mtest.bat.in
@@ -6,5 +6,5 @@
 
 @echo off
 
-set PATH=@CMAKE_INSTALL_FULL_BINDIR@;%PATH%
+set 
PATH=@CMAKE_INSTALL_FULL_LIBDIR@;@CMAKE_INSTALL_FULL_LIBDIR@\monetdb5;@CMAKE_INSTALL_FULL_BINDIR@;%PATH%
 @CMAKE_INSTALL_FULL_BINDIR@/Mtest.py
___
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list


MonetDB: mbedded - add bool type

2020-05-24 Thread Niels Nes
Changeset: cf33fead690f for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=cf33fead690f
Added Files:
ctest/tools/embedded/example2.c
Modified Files:
ctest/tools/embedded/CMakeLists.txt
tools/embedded/monetdb_embedded.c
tools/embedded/monetdb_embedded.h
Branch: mbedded
Log Message:

add bool type
add simple example of base types bool, tinyint, smallint, int, bigint, float, 
double and varchar


diffs (213 lines):

diff --git a/ctest/tools/embedded/CMakeLists.txt 
b/ctest/tools/embedded/CMakeLists.txt
--- a/ctest/tools/embedded/CMakeLists.txt
+++ b/ctest/tools/embedded/CMakeLists.txt
@@ -17,3 +17,15 @@ target_link_libraries(example1
 #sql
 )
 add_test(run_example1 example1)
+
+add_executable(example2 example2.c)
+target_link_libraries(example2
+  PRIVATE
+monetdb_config_header
+embedded
+sqlinclude
+gdk
+mapi
+#sql
+)
+add_test(run_example2 example2)
diff --git a/ctest/tools/embedded/example2.c b/ctest/tools/embedded/example2.c
new file mode 100644
--- /dev/null
+++ b/ctest/tools/embedded/example2.c
@@ -0,0 +1,133 @@
+/*
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0.  If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * Copyright 1997 - July 2008 CWI, August 2008 - 2020 MonetDB B.V.
+ */
+
+#include "monetdb_embedded.h"
+#include 
+#include 
+#include 
+
+#define error(msg) {fprintf(stderr, "Failure: %s\n", msg); return -1;}
+
+int
+main(void)
+{
+   char* err = NULL;
+   monetdb_connection conn = NULL;
+   monetdb_result* result = NULL;
+
+   // first argument is a string for the db directory or NULL for 
in-memory mode
+   if ((err = monetdb_startup(NULL, 0)) != NULL)
+   error(err)
+   if ((err = monetdb_connect(&conn)) != NULL)
+   error(err)
+   if ((err = monetdb_query(conn, "CREATE TABLE test (b bool, t tinyint, s 
smallint, x integer, l bigint, f float, d double, y string)", NULL, NULL, 
NULL)) != NULL)
+   error(err)
+   if ((err = monetdb_query(conn, "INSERT INTO test VALUES (TRUE, 42, 42, 
42, 42, 42.42, 42.42, 'Hello'), (NULL, NULL, NULL, NULL, NULL, NULL, NULL, 
'World')", NULL, NULL, NULL)) != NULL)
+   error(err)
+   if ((err = monetdb_query(conn, "SELECT b, t, s, x, l, f, d, y FROM 
test; ", &result, NULL, NULL)) != NULL)
+   error(err)
+
+   fprintf(stdout, "Query result with %zu cols and %"PRId64" rows\n", 
result->ncols, result->nrows);
+   for (int64_t r = 0; r < result->nrows; r++) {
+   for (size_t c = 0; c < result->ncols; c++) {
+   monetdb_column* rcol;
+   if ((err = monetdb_result_fetch(conn, &rcol, result, 
c)) != NULL)
+   error(err)
+   switch (rcol->type) {
+   case monetdb_bool: {
+   monetdb_column_bool * col = 
(monetdb_column_bool *) rcol;
+   if (col->data[r] == col->null_value) {
+   printf("NULL");
+   } else {
+   printf("%c", 
col->data[r]?'T':'F');
+   }
+   break;
+   }
+   case monetdb_int8_t: {
+   monetdb_column_int8_t * col = 
(monetdb_column_int8_t *) rcol;
+   if (col->data[r] == col->null_value) {
+   printf("NULL");
+   } else {
+   printf("%d", col->data[r]);
+   }
+   break;
+   }
+   case monetdb_int16_t: {
+   monetdb_column_int16_t * col = 
(monetdb_column_int16_t *) rcol;
+   if (col->data[r] == col->null_value) {
+   printf("NULL");
+   } else {
+   printf("%d", col->data[r]);
+   }
+   break;
+   }
+   case monetdb_int32_t: {
+   monetdb_column_int32_t * col = 
(monetdb_column_int32_t *) rcol;
+   if (col->data[r] == col->null_value) {
+   printf("NULL");
+   } else {
+   printf("%