Hi,

I encountered a problem by compiling the sources of MariaDB 10.04.

Some days ago I upgraded my system from Ubuntu 13.10 to 14.04 and now I encounter these problems:

gcc used is this: gcc version 4.8.2 (Ubuntu 4.8.2-19ubuntu1)

a minor glitch: cmake complains:
  Syntax Warning in cmake code at
    /home/august/workspace/MariaDB/mariadb-10.0.4/contrib_AQ_01/cmake/ssl.cmake:210:55
  Argument not separated from preceding token by whitespace.

This is the reason for this:
    ELSE()
    MESSAGE(SEND_ERROR
      "Wrong option for WITH_SSL. Valid values are : "${WITH_SSL_DOC})
  ENDIF()

I added a space between "$(WITH
and this works now.

But in compiling the sources  this error was reported:
  Scanning dependencies of target innobase
[ 45%] Building CXX object storage/innobase/CMakeFiles/innobase.dir/row/row0log.cc.o
/home/august/workspace/MariaDB/mariadb-10.0.4/contrib_AQ_01/storage/innobase/row/row0log.cc: In function ‘dberr_t row_log_table_apply_ops(que_thr_t*, row_merge_dup_t*)’:
/home/august/workspace/MariaDB/mariadb-10.0.4/contrib_AQ_01/storage/innobase/row/row0log.cc:2201:11: error: ‘srv_buf_size’ was not declared in this scope
      ofs, srv_buf_size);
           ^

By looking into the code of row0log.cc I found that FALLOC_FL_PUNCH_HOLE seems to be defined now.

This is defined in /usr/include/linux/falloc.h.

So what happened here during the upgrade of Linux?

Regards
AugustQ

PS: by looking into Ubuntu 12.04 I found that this file also existed here.