summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/CMakeLists.txt69
-rw-r--r--include/Makefile188
-rw-r--r--include/sysconf.h.cmake78
-rw-r--r--include/version.sh8
4 files changed, 328 insertions, 15 deletions
diff --git a/include/CMakeLists.txt b/include/CMakeLists.txt
new file mode 100644
index 000000000..8deeef120
--- /dev/null
+++ b/include/CMakeLists.txt
@@ -0,0 +1,69 @@
+# NOTE: Need a better dependency system here!
+
+set(HEADERS_REL commands.h extern.h messages.h module.h modules.h pseudo.h services.h)
+
+set(commands.h_HEADERS modules.h)
+set(extern.h_HEADERS slist.h)
+set(messages.h_HEADERS modules.h)
+set(module.h_HEADERS services.h commands.h ${Anope_BINARY_DIR}/lang/language.h modules.h ${CMAKE_CURRENT_BINARY_DIR}/version.h)
+set(modules.h_HEADERS services.h)
+set(pseudo.h_HEADERS commands.h ${Anope_BINARY_DIR}/lang/language.h timeout.h encrypt.h datafiles.h slist.h)
+set(services.h_HEADERS sysconf.h config.h sockets.h defs.h slist.h events.h bots.h account.h regchannel.h users.h extern.h configreader.h)
+
+add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/version.h
+ #COMMAND ${CMAKE_COMMAND} -E copy ${Anope_SOURCE_DIR}/version.log ../
+ COMMAND ${SH} ${CMAKE_CURRENT_SOURCE_DIR}/version.sh ${Anope_SOURCE_DIR}/version.log
+ #COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_BINARY_DIR}/version.h ${CMAKE_CURRENT_SOURCE_DIR}/
+ #COMMAND ${CMAKE_COMMAND} -E remove ../version.log
+ MAIN_DEPENDENCY ${CMAKE_CURRENT_SOURCE_DIR}/version.sh DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/services.h ${CMAKE_CURRENT_SOURCE_DIR}/pseudo.h ${CMAKE_CURRENT_SOURCE_DIR}/messages.h ${SRC_SRCS}
+# MAIN_DEPENDENCY ${CMAKE_CURRENT_SOURCE_DIR}/version.sh DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/services.h ${CMAKE_CURRENT_SOURCE_DIR}/pseudo.h ${CMAKE_CURRENT_SOURCE_DIR}/messages.h
+)
+
+foreach(HEADER ${HEADERS_REL})
+ add_custom_command(OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/${HEADER}
+ COMMAND ${CMAKE_COMMAND} -E touch_nocreate ${CMAKE_CURRENT_SOURCE_DIR}/${HEADER}
+ )
+ set(HEADERS_FULL ${HEADERS_FULL} ${CMAKE_CURRENT_SOURCE_DIR}/${HEADER})
+ set(HEADERS)
+ if(${HEADER}_HEADERS)
+ foreach(HEADER ${${HEADER}_HEADERS})
+ string(SUBSTRING ${HEADER} 0 1 FIRST_CHAR)
+ if(FIRST_CHAR STREQUAL "/")
+ set(HEADERS ${HEADERS} ${HEADER})
+ else(FIRST_CHAR STREQUAL "/")
+ set(HEADERS ${HEADERS} ${Anope_SOURCE_DIR}/include/${HEADER})
+ endif(FIRST_CHAR STREQUAL "/")
+ endforeach(HEADER)
+ endif(${HEADER}_HEADERS)
+ if(HEADERS)
+ set_source_files_properties(${HEADER} PROPERTIES OBJECT_DEPENDS "${HEADERS}")
+ endif(HEADERS)
+endforeach(HEADER)
+
+set(HEADERS_FULL ${HEADERS_FULL} ${CMAKE_CURRENT_BINARY_DIR}/version.h)
+message(STATUS "HEADERS_FULL: ${HEADERS_FULL}")
+
+#add_custom_command(OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/services.h
+# COMMAND ${CMAKE_COMMAND} -E touch_nocreate ${CMAKE_CURRENT_SOURCE_DIR}/services.h
+# MAIN_DEPENDENCY ${CMAKE_CURRENT_SOURCE_DIR}/extern.h DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/sysconf.h ${CMAKE_CURRENT_SOURCE_DIR}/config.h
+#)
+#add_custom_command(OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/extern.h
+# COMMAND ${CMAKE_COMMAND} -E touch_nocreate ${CMAKE_CURRENT_SOURCE_DIR}/extern.h
+# MAIN_DEPENDENCY ${CMAKE_CURRENT_SOURCE_DIR}/slist.h
+#)
+#add_custom_command(OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/pseudo.h
+# COMMAND ${CMAKE_COMMAND} -E touch_nocreate ${CMAKE_CURRENT_SOURCE_DIR}/pseudo.h
+# MAIN_DEPENDENCY ${CMAKE_CURRENT_SOURCE_DIR}/timeout.h DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/commands.h ${CMAKE_CURRENT_SOURCE_DIR}/encrypt.h ${CMAKE_CURRENT_SOURCE_DIR}/datafiles.h ${CMAKE_CURRENT_SOURCE_DIR}/slist.h
+#)
+#add_dependencies(${CMAKE_CURRENT_SOURCE_DIR}/version.h src_srcs)
+#add_custom_target(include_version_h ALL DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/version.h)
+#add_custom_target(include_version_h DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/version.h)
+#add_dependencies(include_version_h src_srcs)
+
+#add_custom_target(include ALL)
+#add_custom_target(include)
+#add_custom_target(headers DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/version.h ${CMAKE_CURRENT_SOURCE_DIR}/services.h ${CMAKE_CURRENT_SOURCE_DIR}/extern.h ${CMAKE_CURRENT_SOURCE_DIR}/pseudo.h)
+add_custom_target(headers DEPENDS ${HEADERS_FULL})
+#add_dependencies(include include_version_h)
+
+set_directory_properties(PROPERTIES CLEAN_NO_CUSTOM yes ADDITIONAL_MAKE_CLEAN_FILES "${CMAKE_CURRENT_BINARY_DIR}/version.h ${CMAKE_CURRENT_BINARY_DIR}/language.h")
diff --git a/include/Makefile b/include/Makefile
index b5641c71b..0f6f17e9b 100644
--- a/include/Makefile
+++ b/include/Makefile
@@ -1,20 +1,182 @@
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.6
-all: services.h extern.h pseudo.h version.h
+# Default target executed when no arguments are given to make.
+default_target: all
+.PHONY : default_target
-version.h: Makefile version.sh services.h pseudo.h messages.h $(SRCS)
- sh version.sh
+#=============================================================================
+# Special targets provided by cmake.
-services.h: sysconf.h config.h extern.h
- touch $@
+# Disable implicit rules so canoncical targets will work.
+.SUFFIXES:
-extern.h: slist.h
- touch $@
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
-pseudo.h: commands.h timeout.h encrypt.h datafiles.h slist.h
- touch $@
+.SUFFIXES: .hpux_make_needs_suffix_list
-clean:
- (rm -f language.h)
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
+
+# A target that is always out of date.
+cmake_force:
+.PHONY : cmake_force
+
+#=============================================================================
+# Set environment variables for the build.
+
+# The shell in which to execute make rules.
+SHELL = /bin/sh
+
+# The CMake executable.
+CMAKE_COMMAND = /usr/local/bin/cmake
+
+# The command to remove a file.
+RM = /usr/local/bin/cmake -E remove -f
+
+# The program to use to edit the cache.
+CMAKE_EDIT_COMMAND = /usr/local/bin/ccmake
+
+# The top-level source directory on which CMake was run.
+CMAKE_SOURCE_DIR = /celes/anope
+
+# The top-level build directory on which CMake was run.
+CMAKE_BINARY_DIR = /celes/anope
+
+#=============================================================================
+# Targets provided globally by CMake.
+
+# Special rule for the target edit_cache
+edit_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake cache editor..."
+ cd /celes/anope/include && /usr/local/bin/ccmake -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : edit_cache
+
+# Special rule for the target edit_cache
+edit_cache/fast: edit_cache
+.PHONY : edit_cache/fast
+
+# Special rule for the target install
+install: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
+ cd /celes/anope/include && /usr/local/bin/cmake -P cmake_install.cmake
+.PHONY : install
+
+# Special rule for the target install
+install/fast: preinstall/fast
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Install the project..."
+ cd /celes/anope/include && /usr/local/bin/cmake -P cmake_install.cmake
+.PHONY : install/fast
+
+# Special rule for the target install/local
+install/local: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing only the local directory..."
+ cd /celes/anope/include && /usr/local/bin/cmake -DCMAKE_INSTALL_LOCAL_ONLY=1 -P cmake_install.cmake
+.PHONY : install/local
+
+# Special rule for the target install/local
+install/local/fast: install/local
+.PHONY : install/local/fast
+
+# Special rule for the target install/strip
+install/strip: preinstall
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Installing the project stripped..."
+ cd /celes/anope/include && /usr/local/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake
+.PHONY : install/strip
+
+# Special rule for the target install/strip
+install/strip/fast: install/strip
+.PHONY : install/strip/fast
+
+# Special rule for the target list_install_components
+list_install_components:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Available install components are: \"Unspecified\""
+.PHONY : list_install_components
+
+# Special rule for the target list_install_components
+list_install_components/fast: list_install_components
+.PHONY : list_install_components/fast
+
+# Special rule for the target rebuild_cache
+rebuild_cache:
+ @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..."
+ cd /celes/anope/include && /usr/local/bin/cmake -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR)
+.PHONY : rebuild_cache
+
+# Special rule for the target rebuild_cache
+rebuild_cache/fast: rebuild_cache
+.PHONY : rebuild_cache/fast
+
+# The main all target
+all: cmake_check_build_system
+ cd /celes/anope && $(CMAKE_COMMAND) -E cmake_progress_start /celes/anope/CMakeFiles /celes/anope/include/CMakeFiles/progress.make
+ cd /celes/anope && $(MAKE) -f CMakeFiles/Makefile2 include/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /celes/anope/CMakeFiles 0
+.PHONY : all
+
+# The main clean target
+clean:
+ cd /celes/anope && $(MAKE) -f CMakeFiles/Makefile2 include/clean
+.PHONY : clean
+
+# The main clean target
+clean/fast: clean
+.PHONY : clean/fast
+
+# Prepare targets for installation.
+preinstall: all
+ cd /celes/anope && $(MAKE) -f CMakeFiles/Makefile2 include/preinstall
+.PHONY : preinstall
+
+# Prepare targets for installation.
+preinstall/fast:
+ cd /celes/anope && $(MAKE) -f CMakeFiles/Makefile2 include/preinstall
+.PHONY : preinstall/fast
+
+# clear depends
+depend:
+ cd /celes/anope && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1
+.PHONY : depend
+
+# Convenience name for target.
+include/CMakeFiles/headers.dir/rule:
+ cd /celes/anope && $(MAKE) -f CMakeFiles/Makefile2 include/CMakeFiles/headers.dir/rule
+.PHONY : include/CMakeFiles/headers.dir/rule
+
+# Convenience name for target.
+headers: include/CMakeFiles/headers.dir/rule
+.PHONY : headers
+
+# fast build rule for target.
+headers/fast:
+ cd /celes/anope && $(MAKE) -f include/CMakeFiles/headers.dir/build.make include/CMakeFiles/headers.dir/build
+.PHONY : headers/fast
+
+# Help Target
+help:
+ @echo "The following are some of the valid targets for this Makefile:"
+ @echo "... all (the default if no target is provided)"
+ @echo "... clean"
+ @echo "... depend"
+ @echo "... edit_cache"
+ @echo "... headers"
+ @echo "... install"
+ @echo "... install/local"
+ @echo "... install/strip"
+ @echo "... list_install_components"
+ @echo "... rebuild_cache"
+.PHONY : help
+
+
+
+#=============================================================================
+# Special targets to cleanup operation of make.
+
+# Special rule to run CMake to check the build system integrity.
+# No rule that depends on this can have commands that come from listfiles
+# because they might be regenerated.
+cmake_check_build_system:
+ cd /celes/anope && $(CMAKE_COMMAND) -H$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0
+.PHONY : cmake_check_build_system
-distclean: clean
- (rm -f sysconf.h version.h)
diff --git a/include/sysconf.h.cmake b/include/sysconf.h.cmake
new file mode 100644
index 000000000..b4241f4b2
--- /dev/null
+++ b/include/sysconf.h.cmake
@@ -0,0 +1,78 @@
+#ifndef _SYSCONF_H_
+#define _SYSCONF_H_
+
+#cmakedefine DEFUMASK @DEFUMASK@
+#cmakedefine HAVE_SYS_TYPES_H 1
+#cmakedefine HAVE_STDINT_H 1
+#cmakedefine HAVE_STDDEF_H 1
+#cmakedefine HAVE_BACKTRACE 1
+#cmakedefine HAVE_GETHOSTBYNAME 1
+#cmakedefine HAVE_GETTIMEOFDAY 1
+#cmakedefine HAVE_SETGRENT 1
+#cmakedefine HAVE_STRCASECMP 1
+#cmakedefine HAVE_STRICMP 1
+#cmakedefine HAVE_STRINGS_H 1
+#cmakedefine HAVE_STRLCAT 1
+#cmakedefine HAVE_STRLCPY 1
+#cmakedefine HAVE_SYS_SELECT_H 1
+#cmakedefine HAVE_UMASK 1
+#cmakedefine HAVE_VA_LIST_AS_ARRAY 1
+// Temporary, change elsewhere to be SERVICES_DIR/modules/
+#define MODULE_PATH "@SERVICES_DIR@/modules/"
+#cmakedefine RUNGROUP "@RUNGROUP@"
+#cmakedefine SERVICES_BIN "@SERVICES_BIN@"
+#cmakedefine SERVICES_DIR "@SERVICES_DIR@"
+
+// Temporary, remove from here later as well as elsewhere in the code
+#define DL_PREFIX ""
+
+#cmakedefine HAVE_INT16_T 1
+#cmakedefine HAVE_UINT16_T 1
+#cmakedefine HAVE_U_INT16_T 1
+#cmakedefine HAVE_INT32_T 1
+#cmakedefine HAVE_UINT32_T 1
+#cmakedefine HAVE_U_INT32_T 1
+
+#ifdef HAVE_SYS_TYPES_H
+# include <sys/types.h>
+#endif
+#ifdef HAVE_STDINT_H
+# include <stdint.h>
+#endif
+#ifdef HAVE_STDDEF_H
+# include <stddef.h>
+#endif
+
+#ifdef HAVE_INT16_T
+typedef int16_t int16;
+#else
+typedef short int16;
+#endif
+
+#ifdef HAVE_UINT16_T
+typedef uint16_t uint16;
+#else
+# ifdef HAVE_U_INT16_T
+typedef u_int16_t uint16;
+# else
+typedef unsigned short uint16;
+# endif
+#endif
+
+#ifdef HAVE_INT32_T
+typedef int32_t int32;
+#else
+typedef long int32;
+#endif
+
+#ifdef HAVE_UINT32_T
+typedef uint32_t uint32;
+#else
+# ifdef HAVE_U_INT32_T
+typedef u_int32_t uint32;
+# else
+typedef unsigned long uint32;
+# endif
+#endif
+
+#endif
diff --git a/include/version.sh b/include/version.sh
index fe978fab7..962896e6b 100644
--- a/include/version.sh
+++ b/include/version.sh
@@ -3,8 +3,12 @@
# Build version string and increment Services build number.
#
+if [ $# -lt 1 ] ; then
+ echo "Syntax: $0 <version.log>"
+ exit 1
+fi
# Grab version information from the version control file.
-CTRL="../version.log"
+CTRL="$1"
if [ -f $CTRL ] ; then
. $CTRL
else
@@ -16,7 +20,7 @@ VERSION="${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}${VERSION_EXTRA} (${V
VERSIONDOTTED="${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}${VERSION_EXTRA}.${VERSION_BUILD}"
if [ -f version.h ] ; then
- BUILD=`fgrep '#define BUILD' version.h | sed 's/^#define BUILD.*\([0-9]*\).*$/\1/'`
+ BUILD=`fgrep '#define BUILD' version.h | cut -f2 -d\"`
BUILD=`expr $BUILD + 1 2>/dev/null`
else
BUILD=1