From: John David Duncan Date: September 20 2011 4:18pm Subject: bzr push into mysql-5.5-cluster branch (john.duncan:3503 to 3507) List-Archive: http://lists.mysql.com/commits/141035 Message-Id: <201109201618.p8KGIAfF016070@acsmt356.oracle.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit 3507 John David Duncan 2011-09-20 Because CMake processes files in order, and storage/ndb/ is included before extra/, I have to move the declaration of WITH_MEMCACHE option into storage/ndb/CMakeLists.txt modified: extra/CMakeLists.txt storage/ndb/CMakeLists.txt storage/ndb/memcache/CMakeLists.txt storage/ndb/memcache/FindMemcached.cmake 3506 John David Duncan 2011-09-20 build fixes part 2 modified: extra/CMakeLists.txt extra/libevent/CMakeLists.txt extra/memcached/CMakeLists.txt 3505 John David Duncan 2011-09-20 remove built executable accidentally checked in to source tree removed: extra/memcached/memcached 3504 John David Duncan 2011-09-20 attempted build fixes, part 1 modified: extra/CMakeLists.txt extra/libevent/CMakeLists.txt extra/memcached/CMakeLists.txt extra/memcached/memcached 3503 John David Duncan 2011-09-19 Bundle source trees for libevent and memcached under extra/ Modify NDB+memcache to be able to use bundled memcached added: extra/libevent/ extra/libevent/CMakeLists.txt extra/libevent/Doxyfile extra/libevent/README extra/libevent/WIN32-Code/ extra/libevent/WIN32-Code/event-config.h extra/libevent/WIN32-Code/misc.c extra/libevent/WIN32-Code/misc.h extra/libevent/WIN32-Code/tree.h extra/libevent/WIN32-Code/win32.c extra/libevent/WIN32-Prj/ extra/libevent/WIN32-Prj/libevent.dsp extra/libevent/WIN32-Prj/libevent.dsw extra/libevent/WIN32-Prj/libevent.sln extra/libevent/buffer.c extra/libevent/compat/ extra/libevent/compat/sys/ extra/libevent/compat/sys/_time.h extra/libevent/compat/sys/queue.h extra/libevent/devpoll.c extra/libevent/epoll.c extra/libevent/epoll_sub.c extra/libevent/evbuffer.c extra/libevent/evdns.3 extra/libevent/evdns.c extra/libevent/evdns.h extra/libevent/event-internal.h extra/libevent/event.3 extra/libevent/event.c extra/libevent/event.h extra/libevent/event_rpcgen.py extra/libevent/event_tagging.c extra/libevent/evhttp.h extra/libevent/evport.c extra/libevent/evrpc-internal.h extra/libevent/evrpc.c extra/libevent/evrpc.h extra/libevent/evsignal.h extra/libevent/evutil.c extra/libevent/evutil.h extra/libevent/http-internal.h extra/libevent/http.c extra/libevent/kqueue.c extra/libevent/log.c extra/libevent/log.h extra/libevent/min_heap.h extra/libevent/poll.c extra/libevent/sample/ extra/libevent/sample/Makefile.am extra/libevent/sample/event-test.c extra/libevent/sample/signal-test.c extra/libevent/sample/time-test.c extra/libevent/select.c extra/libevent/signal.c extra/libevent/strlcpy-internal.h extra/libevent/strlcpy.c extra/libevent/test/ extra/libevent/test/Makefile.am extra/libevent/test/bench.c extra/libevent/test/regress.c extra/libevent/test/regress.gen.c extra/libevent/test/regress.gen.h extra/libevent/test/regress.h extra/libevent/test/regress.rpc extra/libevent/test/regress_dns.c extra/libevent/test/regress_http.c extra/libevent/test/regress_rpc.c extra/libevent/test/test-eof.c extra/libevent/test/test-init.c extra/libevent/test/test-time.c extra/libevent/test/test-weof.c extra/libevent/test/test.sh extra/memcached/ extra/memcached/AUTHORS extra/memcached/CMakeLists.txt extra/memcached/LICENSE extra/memcached/config_static.h extra/memcached/config_tests.in extra/memcached/daemon/ extra/memcached/daemon/cache.c extra/memcached/daemon/cache.h extra/memcached/daemon/daemon.c extra/memcached/daemon/hash.c extra/memcached/daemon/hash.h extra/memcached/daemon/isasl.c extra/memcached/daemon/isasl.h extra/memcached/daemon/memcached.c extra/memcached/daemon/memcached.h extra/memcached/daemon/sasl_defs.c extra/memcached/daemon/sasl_defs.h extra/memcached/daemon/solaris_priv.c extra/memcached/daemon/stats.c extra/memcached/daemon/stats.h extra/memcached/daemon/thread.c extra/memcached/daemon/topkeys.c extra/memcached/daemon/topkeys.h extra/memcached/engines/ extra/memcached/engines/default_engine/ extra/memcached/engines/default_engine/assoc.c extra/memcached/engines/default_engine/assoc.h extra/memcached/engines/default_engine/default_engine.c extra/memcached/engines/default_engine/default_engine.h extra/memcached/engines/default_engine/items.c extra/memcached/engines/default_engine/items.h extra/memcached/engines/default_engine/slabs.c extra/memcached/engines/default_engine/slabs.h extra/memcached/extensions/ extra/memcached/extensions/daemon/ extra/memcached/extensions/daemon/stdin_check.c extra/memcached/extensions/loggers/ extra/memcached/extensions/loggers/blackhole_logger.c extra/memcached/extensions/loggers/eventlog_logger.c extra/memcached/extensions/loggers/syslog_logger.c extra/memcached/extensions/protocol/ extra/memcached/extensions/protocol/ascii_scrub.c extra/memcached/extensions/protocol/example_protocol.c extra/memcached/extensions/protocol/fragment_rw.c extra/memcached/extensions/protocol/fragment_rw.h extra/memcached/extensions/protocol_extension.h extra/memcached/include/ extra/memcached/include/memcached/ extra/memcached/include/memcached/callback.h extra/memcached/include/memcached/config_parser.h extra/memcached/include/memcached/engine.h extra/memcached/include/memcached/engine_common.h extra/memcached/include/memcached/engine_testapp.h extra/memcached/include/memcached/extension.h extra/memcached/include/memcached/extension_loggers.h extra/memcached/include/memcached/genhash.h extra/memcached/include/memcached/protocol_binary.h extra/memcached/include/memcached/protocol_plugin.h extra/memcached/include/memcached/server_api.h extra/memcached/include/memcached/types.h extra/memcached/include/memcached/util.h extra/memcached/include/memcached/vbucket.h extra/memcached/include/memcached/visibility.h extra/memcached/memcached extra/memcached/programs/ extra/memcached/programs/engine_testapp.c extra/memcached/programs/mcstat.c extra/memcached/programs/mock_server.c extra/memcached/programs/mock_server.h extra/memcached/programs/sizes.c extra/memcached/programs/testapp.c extra/memcached/programs/timedrun.c extra/memcached/t/ extra/memcached/t/00-startup.t extra/memcached/t/64bit.t extra/memcached/t/binary-get.t extra/memcached/t/binary-sasl.t.in extra/memcached/t/binary.t extra/memcached/t/bogus-commands.t extra/memcached/t/cas.t extra/memcached/t/cmd_extensions.t extra/memcached/t/daemonize.t extra/memcached/t/dash-M.t extra/memcached/t/evictions.t extra/memcached/t/expirations.t extra/memcached/t/flags.t extra/memcached/t/flush-all.t extra/memcached/t/getset.t extra/memcached/t/incrdecr.t extra/memcached/t/issue_104.t extra/memcached/t/issue_108.t extra/memcached/t/issue_14.t extra/memcached/t/issue_140.t extra/memcached/t/issue_152.t extra/memcached/t/issue_163.t extra/memcached/t/issue_183.t extra/memcached/t/issue_22.t extra/memcached/t/issue_29.t extra/memcached/t/issue_3.t extra/memcached/t/issue_41.t extra/memcached/t/issue_42.t extra/memcached/t/issue_50.t extra/memcached/t/issue_61.t extra/memcached/t/issue_67.t extra/memcached/t/issue_68.t extra/memcached/t/issue_70.t extra/memcached/t/item_size_max.t extra/memcached/t/lib/ extra/memcached/t/lib/MemcachedTest.pm extra/memcached/t/line-lengths.t extra/memcached/t/lru.t extra/memcached/t/maxconns.t extra/memcached/t/multiversioning.t extra/memcached/t/noreply.t extra/memcached/t/sasl/ extra/memcached/t/sasl/memcached.conf extra/memcached/t/scrub.t extra/memcached/t/stats-detail.t extra/memcached/t/stats.t extra/memcached/t/stress-memcached.pl extra/memcached/t/topkeys.t extra/memcached/t/udp.t extra/memcached/t/unixsocket.t extra/memcached/t/verbosity.t extra/memcached/t/whitespace.t extra/memcached/testsuite/ extra/memcached/testsuite/basic_engine_testsuite.c extra/memcached/testsuite/basic_engine_testsuite.h extra/memcached/testsuite/breakdancer/ extra/memcached/testsuite/breakdancer/breakdancer.py extra/memcached/testsuite/breakdancer/engine_test.py extra/memcached/testsuite/breakdancer/suite_stubs.c extra/memcached/testsuite/breakdancer/suite_stubs.h extra/memcached/trace.h extra/memcached/utilities/ extra/memcached/utilities/config_parser.c extra/memcached/utilities/engine_loader.c extra/memcached/utilities/engine_loader.h extra/memcached/utilities/extension_loggers.c extra/memcached/utilities/genhash.c extra/memcached/utilities/genhash_int.h extra/memcached/utilities/util.c extra/memcached/win32/ extra/memcached/win32/Makefile.mingw extra/memcached/win32/config.sh extra/memcached/win32/defs.c extra/memcached/win32/dlfcn.c extra/memcached/win32/dlfcn.h extra/memcached/win32/sysexits.h extra/memcached/win32/win32.c extra/memcached/win32/win32.h modified: extra/CMakeLists.txt storage/ndb/memcache/FindMemcached.cmake storage/ndb/memcache/memcached_path.pl.in === modified file 'extra/CMakeLists.txt' --- a/extra/CMakeLists.txt 2011-09-20 05:13:01 +0000 +++ b/extra/CMakeLists.txt 2011-09-20 16:13:34 +0000 @@ -79,6 +79,16 @@ IF(UNIX) TARGET_LINK_LIBRARIES(mysql_waitpid mysys) ENDIF() -ADD_SUBDIRECTORY(libevent) -ADD_SUBDIRECTORY(memcached) +# Support for bundled libevent and memcache +# WITH_MEMCACHE is declared in storage/ndb/CMakeLists.txt +option(WITH_LIBEVENT "Use bundled libevent for building memcached" ON) + +if(WITH_MEMCACHE) + add_subdirectory(memcached) + + if(WITH_LIBEVENT) + add_subdirectory(libevent) + add_dependencies(memcached event) + endif() +endif() === modified file 'extra/libevent/CMakeLists.txt' --- a/extra/libevent/CMakeLists.txt 2011-09-20 05:13:01 +0000 +++ b/extra/libevent/CMakeLists.txt 2011-09-20 15:22:11 +0000 @@ -13,77 +13,71 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -option(WITH_LIBEVENT "Use bundled libevent for building memcached" ON) -if(WITH_LIBEVENT AND WITH_MEMCACHE) +ADD_DEFINITIONS(-DHAVE_CONFIG_H) +INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/compat/sys) + +SET(LIBEVENT_CORE_SOURCES + event.h + event-internal.h + evutil.h + log.h + event.c + buffer.c + evbuffer.c + log.c + signal.c + evutil.c) + +SET(LIBEVENT_EXTRA_SOURCES + event_tagging.c + http.c + evhttp.h + http-internal.h + evdns.c + evdns.h + evrpc.c + evrpc.h + evrpc-internal.h + strlcpy.c + strlcpy-internal.h) - # Common defines and includes +IF(HAVE_SIGNAL_H) + SET(LIBEVENT_SIGNAL_SOURCES signal.c) +ENDIF() + +IF(HAVE_POLL_H) + SET(LIBEVENT_POLL_SOURCES poll.c) +ENDIF() + +IF(HAVE_SELECT) + SET(LIBEVENT_SELECT_SOURCE select.c) +ENDIF() + +IF(HAVE_SYS_EPOLL_H) + SET(LIBEVENT_EPOLL_SOURCES epoll.c epoll_sub.c) +ENDIF() + +IF(HAVE_SYS_DEVPOLL_H) + SET(LIBEVENT_DEVPOLL_SOURCES devpoll.c) +ENDIF() - ADD_DEFINITIONS(-DHAVE_CONFIG_H) - INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_CURRENT_SOURCE_DIR}/compat/sys) - - SET(LIBEVENT_CORE_SOURCES - event.h - event-internal.h - evutil.h - log.h - event.c - buffer.c - evbuffer.c - log.c - signal.c - evutil.c) - - SET(LIBEVENT_EXTRA_SOURCES - event_tagging.c - http.c - evhttp.h - http-internal.h - evdns.c - evdns.h - evrpc.c - evrpc.h - evrpc-internal.h - strlcpy.c - strlcpy-internal.h) - - IF(HAVE_SIGNAL_H) - SET(LIBEVENT_SIGNAL_SOURCES signal.c) - ENDIF() - - IF(HAVE_POLL_H) - SET(LIBEVENT_POLL_SOURCES poll.c) - ENDIF() - - IF(HAVE_SELECT) - SET(LIBEVENT_SELECT_SOURCE select.c) - ENDIF() - - IF(HAVE_SYS_EPOLL_H) - SET(LIBEVENT_EPOLL_SOURCES epoll.c epoll_sub.c) - ENDIF() - - IF(HAVE_SYS_DEVPOLL_H) - SET(LIBEVENT_DEVPOLL_SOURCES devpoll.c) - ENDIF() - - IF(HAVE_EVENT_PORTS) - SET(LIBEVENT_EVPORT_SOURCES evport.c) - ENDIF() - - IF(HAVE_WORKING_KQUEUE) - SET(LIBEVENT_KQUEUE_SOURCES kqueue.c) - ENDIF() - - ADD_LIBRARY(event STATIC ${LIBEVENT_CORE_SOURCES} - ${LIBEVENT_EXTRA_SOURCES} - ${LIBEVENT_SIGNAL_SOURCES} - ${LIBEVENT_POLL_SOURCES} - ${LIBEVENT_SELECT_SOURCE} - ${LIBEVENT_EPOLL_SOURCES} - ${LIBEVENT_DEVPOLL_SOURCES} - ${LIBEVENT_EVPORT_SOURCES} - ${LIBEVENT_KQUEUE_SOURCES}) +IF(HAVE_EVENT_PORTS) + SET(LIBEVENT_EVPORT_SOURCES evport.c) +ENDIF() +IF(HAVE_WORKING_KQUEUE) + SET(LIBEVENT_KQUEUE_SOURCES kqueue.c) ENDIF() + +ADD_LIBRARY(event STATIC ${LIBEVENT_CORE_SOURCES} + ${LIBEVENT_EXTRA_SOURCES} + ${LIBEVENT_SIGNAL_SOURCES} + ${LIBEVENT_POLL_SOURCES} + ${LIBEVENT_SELECT_SOURCE} + ${LIBEVENT_EPOLL_SOURCES} + ${LIBEVENT_DEVPOLL_SOURCES} + ${LIBEVENT_EVPORT_SOURCES} + ${LIBEVENT_KQUEUE_SOURCES}) + === modified file 'extra/memcached/CMakeLists.txt' --- a/extra/memcached/CMakeLists.txt 2011-09-20 05:13:01 +0000 +++ b/extra/memcached/CMakeLists.txt 2011-09-20 15:22:11 +0000 @@ -13,69 +13,64 @@ # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -include(CheckIncludeFile) -option(WITH_MEMCACHE "Build memcache interface for MySQL Cluster" ON) -if(WITH_MEMCACHE) - INCLUDE_DIRECTORIES(BEFORE ${CMAKE_CURRENT_SOURCE_DIR}) +INCLUDE_DIRECTORIES(BEFORE ${CMAKE_CURRENT_SOURCE_DIR}) +INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include + ${CMAKE_CURRENT_SOURCE_DIR}/include/memcached + ${CMAKE_CURRENT_SOURCE_DIR}/utilities + ${CMAKE_CURRENT_SOURCE_DIR}/daemon + ${CMAKE_CURRENT_SOURCE_DIR}/../libevent) + +IF(${CMAKE_COMPILER_IS_GNUCC}) + SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu99") +ENDIF() + + +SET(LIBMEMCACHED_UTILITIES_SOURCES + include/memcached/config_parser.h + include/memcached/genhash.h + include/memcached/util.h + utilities/config_parser.c + utilities/engine_loader.c + utilities/engine_loader.h + utilities/extension_loggers.c + utilities/genhash.c + utilities/genhash_int.h + utilities/util.c) + +ADD_LIBRARY(memcached_utilities STATIC ${LIBMEMCACHED_UTILITIES_SOURCES}) + + +SET(MEMCACHED_SOURCES + daemon/cache.h + daemon/cache.c + config_static.h + daemon/daemon.c + daemon/hash.c + daemon/hash.h + daemon/memcached.c + daemon/memcached.h + daemon/sasl_defs.h + daemon/stats.c + daemon/stats.h + daemon/thread.c + daemon/topkeys.c + daemon/topkeys.h + trace.h) + +add_executable(memcached ${MEMCACHED_SOURCES}) + +target_link_libraries(memcached event memcached_utilities) + +CHECK_INCLUDE_FILE("link.h" HAVE_LINK_H) +CHECK_INCLUDE_FILE("stdbool.h" HAVE_STDBOOL_H) +CHECK_INCLUDE_FILE("sysexits.h" HAVE_SYSEXITS_H) +CHECK_INCLUDE_FILE("netdb.h" HAVE_NETDB_H) +CHECK_INCLUDE_FILE("sys/uio.h" HAVE_SYS_UIO_H) +CHECK_INCLUDE_FILE("signal.h" HAVE_SIGIGNORE) +CHECK_INCLUDE_FILES(sys/types.h netinet/tcp.h HAVE_NETINET_TCP_H) - INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR}/include - ${CMAKE_CURRENT_SOURCE_DIR}/include/memcached - ${CMAKE_CURRENT_SOURCE_DIR}/utilities - ${CMAKE_CURRENT_SOURCE_DIR}/daemon - ${CMAKE_CURRENT_SOURCE_DIR}/../libevent) - - IF(${CMAKE_COMPILER_IS_GNUCC}) - SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=gnu99") - ENDIF() - - - SET(LIBMEMCACHED_UTILITIES_SOURCES - include/memcached/config_parser.h - include/memcached/genhash.h - include/memcached/util.h - utilities/config_parser.c - utilities/engine_loader.c - utilities/engine_loader.h - utilities/extension_loggers.c - utilities/genhash.c - utilities/genhash_int.h - utilities/util.c) - - ADD_LIBRARY(memcached_utilities STATIC ${LIBMEMCACHED_UTILITIES_SOURCES}) - - - SET(MEMCACHED_SOURCES - daemon/cache.h - daemon/cache.c - config_static.h - daemon/daemon.c - daemon/hash.c - daemon/hash.h - daemon/memcached.c - daemon/memcached.h - daemon/sasl_defs.h - daemon/stats.c - daemon/stats.h - daemon/thread.c - daemon/topkeys.c - daemon/topkeys.h - trace.h) - - add_executable(memcached ${MEMCACHED_SOURCES}) - - target_link_libraries(memcached event memcached_utilities) - - CHECK_INCLUDE_FILE("link.h" HAVE_LINK_H) - CHECK_INCLUDE_FILE("stdbool.h" HAVE_STDBOOL_H) - CHECK_INCLUDE_FILE("sysexits.h" HAVE_SYSEXITS_H) - CHECK_INCLUDE_FILE("netdb.h" HAVE_NETDB_H) - CHECK_INCLUDE_FILE("sys/uio.h" HAVE_SYS_UIO_H) - CHECK_INCLUDE_FILE("netinet/tcp.h" HAVE_NETINET_TCP_H) - CHECK_INCLUDE_FILE("signal.h" HAVE_SIGIGNORE) - - configure_file(${CMAKE_CURRENT_SOURCE_DIR}/config_tests.in - ${CMAKE_CURRENT_SOURCE_DIR}/config.h) +configure_file(${CMAKE_CURRENT_SOURCE_DIR}/config_tests.in + ${CMAKE_CURRENT_SOURCE_DIR}/config.h) -ENDIF(WITH_MEMCACHE) === removed file 'extra/memcached/memcached' Binary files a/extra/memcached/memcached 2011-09-20 05:13:01 +0000 and b/extra/memcached/memcached 1970-01-01 00:00:00 +0000 differ === modified file 'storage/ndb/CMakeLists.txt' --- a/storage/ndb/CMakeLists.txt 2011-09-16 14:31:26 +0000 +++ b/storage/ndb/CMakeLists.txt 2011-09-20 16:13:34 +0000 @@ -123,6 +123,9 @@ ELSE() OPTION(WITH_NDB_DEBUG "Disable special ndb debug features" OFF) + OPTION(WITH_MEMCACHE + "Build bundled memcached" ON) + SET(NDB_CCFLAGS "") IF(DEFINED WITH_NDB_CCFLAGS) SET(NDB_CCFLAGS "${WITH_NDB_CCFLAGS}") === modified file 'storage/ndb/memcache/CMakeLists.txt' --- a/storage/ndb/memcache/CMakeLists.txt 2011-09-19 10:54:11 +0000 +++ b/storage/ndb/memcache/CMakeLists.txt 2011-09-20 16:13:34 +0000 @@ -125,6 +125,12 @@ install(FILES ${CMAKE_CURRENT_SOURCE_DIR add_library(ndb_engine MODULE ${NDB_MEMCACHE_SOURCE_FILES}) target_link_libraries(ndb_engine ndbclient_static ndbgeneral) +add_dependencies(ndb_engine ndbclient_static ndbgeneral) +# If we are using the bundled memcache, it is a dependency: +if(WITH_MEMCACHE) + add_dependencies(ndb_engine memcached) +endif() + # Extra linker flags because CMake's "MODULE" support is not quite right. if(APPLE) set(FINAL_LINK_FLAGS "-flat_namespace -undefined suppress -bind_at_load") === modified file 'storage/ndb/memcache/FindMemcached.cmake' --- a/storage/ndb/memcache/FindMemcached.cmake 2011-09-20 05:13:01 +0000 +++ b/storage/ndb/memcache/FindMemcached.cmake 2011-09-20 16:13:34 +0000 @@ -11,7 +11,6 @@ if(WITH_MEMCACHE) set(MEMCACHED_ROOT_DIR ${CMAKE_SOURCE_DIR}/extra/memcached) set(MEMCACHED_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/extra/memcached/include) set(MEMCACHED_UTILITIES_LIBRARY memcached_utilities) - else() # Find an installed memcached No bundle (reason: useless for push emails).