summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitmodules3
-rw-r--r--CMakeLists.txt99
m---------codegen0
-rw-r--r--librabbitmq/CMakeLists.txt50
4 files changed, 2 insertions, 150 deletions
diff --git a/.gitmodules b/.gitmodules
index b7f37f7..0f0c3df 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -1,6 +1,3 @@
-[submodule "codegen"]
- path = codegen
- url = https://github.com/rabbitmq/rabbitmq-codegen.git
[submodule "travis/run-clang-format"]
path = travis/run-clang-format
url = https://github.com/Sarcasm/run-clang-format.git
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 887a295..6c9a0a8 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -120,105 +120,6 @@ if (ENABLE_SSL_SUPPORT)
cmake_pop_check_state()
endif()
-option(REGENERATE_AMQP_FRAMING "Regenerate amqp_framing.h/amqp_framing.c sources (for developer use)" OFF)
-mark_as_advanced(REGENERATE_AMQP_FRAMING)
-
-if (REGENERATE_AMQP_FRAMING)
- find_package(PythonInterp)
- if (NOT PYTHONINTERP_FOUND)
- message(FATAL_ERROR "REGENERATE_AMQP_FRAMING requires Python to be available")
- endif ()
-
- #Determine Python Version:
- if(PYTHON_EXECUTABLE)
- execute_process(COMMAND "${PYTHON_EXECUTABLE}" -c
- "import sys; sys.stdout.write(';'.join([str(x) for x in sys.version_info[:3]]))"
- OUTPUT_VARIABLE _VERSION
- RESULT_VARIABLE _PYTHON_VERSION_RESULT
- ERROR_QUIET)
- if(NOT _PYTHON_VERSION_RESULT)
- string(REPLACE ";" "." PYTHON_VERSION_STRING "${_VERSION}")
- list(GET _VERSION 0 PYTHON_VERSION_MAJOR)
- list(GET _VERSION 1 PYTHON_VERSION_MINOR)
- list(GET _VERSION 2 PYTHON_VERSION_PATCH)
- if(PYTHON_VERSION_PATCH EQUAL 0)
- # it's called "Python 2.7", not "2.7.0"
- string(REGEX REPLACE "\\.0$" "" PYTHON_VERSION_STRING "${PYTHON_VERSION_STRING}")
- endif()
- else()
- # sys.version predates sys.version_info, so use that
- execute_process(COMMAND "${PYTHON_EXECUTABLE}" -c "import sys; sys.stdout.write(sys.version)"
- OUTPUT_VARIABLE _VERSION
- RESULT_VARIABLE _PYTHON_VERSION_RESULT
- ERROR_QUIET)
- if(NOT _PYTHON_VERSION_RESULT)
- string(REGEX REPLACE " .*" "" PYTHON_VERSION_STRING "${_VERSION}")
- string(REGEX REPLACE "^([0-9]+)\\.[0-9]+.*" "\\1" PYTHON_VERSION_MAJOR "${PYTHON_VERSION_STRING}")
- string(REGEX REPLACE "^[0-9]+\\.([0-9])+.*" "\\1" PYTHON_VERSION_MINOR "${PYTHON_VERSION_STRING}")
- if(PYTHON_VERSION_STRING MATCHES "^[0-9]+\\.[0-9]+\\.[0-9]+.*")
- string(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" PYTHON_VERSION_PATCH "${PYTHON_VERSION_STRING}")
- else()
- set(PYTHON_VERSION_PATCH "0")
- endif()
- else()
- # sys.version was first documented for Python 1.5, so assume
- # this is older.
- set(PYTHON_VERSION_STRING "1.4")
- set(PYTHON_VERSION_MAJOR "1")
- set(PYTHON_VERSION_MAJOR "4")
- set(PYTHON_VERSION_MAJOR "0")
- endif()
- endif()
- unset(_PYTHON_VERSION_RESULT)
- unset(_VERSION)
- endif(PYTHON_EXECUTABLE)
-
- # If we're running v3.x look for a 2to3 utility
- if (PYTHON_VERSION_MAJOR GREATER 2)
- get_filename_component(PYTHON_EXE_DIR ${PYTHON_EXECUTABLE} PATH)
- find_program(PYTHON_2TO3_EXECUTABLE
- NAMES 2to3
- HINTS ${PYTHON_EXE_DIR}
- )
-
- if ("PYTHON_2TO3_EXECUTABLE-NOTFOUND" STREQUAL PYTHON_2TO3_EXECUTABLE)
- message(FATAL_ERROR "Unable to find 2to3 python utility, specify python 2.7 or specify 2to3 utility")
- endif ()
- endif (PYTHON_VERSION_MAJOR GREATER 2)
-
-
- #check for json or simplejson
- execute_process(COMMAND ${PYTHON_EXECUTABLE} -c "import json"
- RESULT_VARIABLE CHECK_PYTHON_JSON_FAILED
- )
-
- if (CHECK_PYTHON_JSON_FAILED)
- execute_process(COMMAND ${PYTHON_EXECUTABLE} -c "import simplejson"
- RESULT_VARIABLE CHECK_PYTHON_SIMPLEJSON_FAILED
- )
-
- if (CHECK_PYTHON_SIMPLEJSON_FAILED)
- message(FATAL_ERROR "REGENERATE_AMQP_FRAMING requires a python with json or simplejson modules")
- endif (CHECK_PYTHON_SIMPLEJSON_FAILED)
- endif (CHECK_PYTHON_JSON_FAILED)
-
-
- find_path(AMQP_CODEGEN_DIR
- amqp_codegen.py
- PATHS ${CMAKE_CURRENT_SOURCE_DIR}/codegen
- ${CMAKE_CURRENT_SOURCE_DIR}/rabbitmq-codegen
- ${CMAKE_CURRENT_SOURCE_DIR}/../rabbitmq-codegen
- DOC "Path to directory containing amqp_codegen.py (rabbitmq-codegen)"
- NO_DEFAULT_PATH
- )
-
- if (AMQP_CODEGEN_DIR STREQUAL "AMQP_CODEGEN_DIR-NOTFOUND")
- message(SEND_ERROR "REGENERATE_AMQP_FRAMING requires the amqp_codegen.py script. If this is a git clone you can:\n\ngit submodule init\ngit submodule update\n\n Or set AMQP_CODEGEN_DIR to directory containing amqp_codegen.py")
- else ()
- message(STATUS "Found amqp_codegen.py in ${AMQP_CODEGEN_DIR}")
- endif()
-endif (REGENERATE_AMQP_FRAMING)
-
find_package(Doxygen)
if(CMAKE_PROJECT_NAME STREQUAL PROJECT_NAME)
diff --git a/codegen b/codegen
deleted file mode 160000
-Subproject 0a95a69f86cdc2b538f4c58241840563fe4ccf4
diff --git a/librabbitmq/CMakeLists.txt b/librabbitmq/CMakeLists.txt
index ee9555c..de59954 100644
--- a/librabbitmq/CMakeLists.txt
+++ b/librabbitmq/CMakeLists.txt
@@ -1,49 +1,3 @@
-if (REGENERATE_AMQP_FRAMING)
- set(AMQP_CODEGEN_PY "${CMAKE_CURRENT_BINARY_DIR}/amqp_codegen.py")
- set(CODEGEN_PY "${CMAKE_CURRENT_BINARY_DIR}/codegen.py")
- set(AMQP_SPEC_JSON_PATH "${AMQP_CODEGEN_DIR}/amqp-rabbitmq-0.9.1.json")
- set(AMQP_FRAMING_H_PATH ${CMAKE_CURRENT_BINARY_DIR}/../include/rabbitmq-c/framing.h)
- set(AMQP_FRAMING_C_PATH ${CMAKE_CURRENT_BINARY_DIR}/amqp_framing.c)
- file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/rabbitmq-c)
-
- if (PYTHON_VERSION_MAJOR GREATER 2)
- set(CONVERT_CODEGEN ${PYTHON_2TO3_EXECUTABLE} -w ${CODEGEN_PY} > codegen_2to3.out)
- set(CONVERT_AMQP_CODEGEN ${PYTHON_2TO3_EXECUTABLE} -w ${AMQP_CODEGEN_PY} > amqp_codegen_2to3.out)
- else ()
- set(CONVERT_CODEGEN "")
- set(CONVERT_AMQP_CODEGEN "")
- endif ()
-
- add_custom_command(
- OUTPUT ${CODEGEN_PY}
- COMMAND ${CMAKE_COMMAND} ARGS -E copy ${CMAKE_CURRENT_SOURCE_DIR}/codegen.py ${CODEGEN_PY}
- COMMAND ${CONVERT_CODEGEN}
- DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/codegen.py
- VERBATIM)
-
- add_custom_command(
- OUTPUT ${AMQP_CODEGEN_PY}
- COMMAND ${CMAKE_COMMAND} ARGS -E copy ${AMQP_CODEGEN_DIR}/amqp_codegen.py ${AMQP_CODEGEN_PY}
- COMMAND ${CONVERT_AMQP_CODEGEN}
- DEPENDS ${AMQP_CODEGEN_DIR}/amqp_codegen.py ${AMQP_CODEGEN_TARGET}
- VERBATIM)
-
- add_custom_command(
- OUTPUT ${AMQP_FRAMING_H_PATH}
- COMMAND ${PYTHON_EXECUTABLE} ARGS ${CODEGEN_PY} header ${AMQP_SPEC_JSON_PATH} ${AMQP_FRAMING_H_PATH}
- DEPENDS ${AMQP_SPEC_JSON_PATH} ${CODEGEN_PY} ${AMQP_CODEGEN_PY}
- VERBATIM)
-
- add_custom_command(
- OUTPUT ${AMQP_FRAMING_C_PATH}
- COMMAND ${PYTHON_EXECUTABLE} ARGS ${CODEGEN_PY} body ${AMQP_SPEC_JSON_PATH} ${AMQP_FRAMING_C_PATH}
- DEPENDS ${AMQP_SPEC_JSON_PATH} ${CODEGEN_PY} ${AMQP_CODEGEN_PY}
- VERBATIM)
-else (REGENERATE_AMQP_FRAMING)
- set(AMQP_FRAMING_H_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../include/rabbitmq-c/framing.h)
- set(AMQP_FRAMING_C_PATH ${CMAKE_CURRENT_SOURCE_DIR}/amqp_framing.c)
-endif (REGENERATE_AMQP_FRAMING)
-
if (ENABLE_SSL_SUPPORT)
SET(AMQP_SSL_SOCKET_SHIM_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../include/amqp_ssl_socket.h)
set(AMQP_SSL_SOCKET_H_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../include/rabbitmq-c/ssl_socket.h)
@@ -87,13 +41,13 @@ set(RMQ_SOURCES
${AMQP_SSL_SOCKET_SHIM_PATH}
../include/amqp_tcp_socket.h
../include/rabbitmq-c/amqp.h
- ${AMQP_FRAMING_H_PATH}
+ ../include/rabbitmq-c/framing.h
${AMQP_SSL_SOCKET_H_PATH}
../include/rabbitmq-c/tcp_socket.h
amqp_api.c
amqp_connection.c
amqp_consumer.c
- ${AMQP_FRAMING_C_PATH}
+ amqp_framing.c
amqp_mem.c
${AMQP_SSL_SRCS}
amqp_private.h