summaryrefslogtreecommitdiff
path: root/src/tools
diff options
context:
space:
mode:
Diffstat (limited to 'src/tools')
-rw-r--r--src/tools/CMakeLists.txt57
-rw-r--r--src/tools/Makefile308
2 files changed, 338 insertions, 27 deletions
diff --git a/src/tools/CMakeLists.txt b/src/tools/CMakeLists.txt
new file mode 100644
index 000000000..f73a671b4
--- /dev/null
+++ b/src/tools/CMakeLists.txt
@@ -0,0 +1,57 @@
+#if(${CMAKE_CURRENT_SOURCE_DIR} STREQUAL ${CMAKE_CURRENT_BINARY_DIR})
+# set(BUILD_DIR ${CMAKE_CURRENT_BINARY_DIR})
+#else(${CMAKE_CURRENT_SOURCE_DIR} STREQUAL ${CMAKE_CURRENT_BINARY_DIR})
+# file(RELATIVE_PATH DIR ${Anope_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR})
+# set(BUILD_DIR ${CMAKE_CURRENT_BINARY_DIR}/${DIR})
+#endif(${CMAKE_CURRENT_SOURCE_DIR} STREQUAL ${CMAKE_CURRENT_BINARY_DIR})
+
+set(TOOLS_SRCS anopesmtp.c db-convert.c db-merger.c)
+list(SORT TOOLS_SRCS)
+
+set_source_files_properties(${TOOLS_SRCS} PROPERTIES LANGUAGE CXX COMPILE_FLAGS "${CXXFLAGS}")
+
+set(anopesmtp.c_HEADERS ${CMAKE_CURRENT_SOURCE_DIR}/smtp.h)
+set(db-convert.c_HEADERS sysconf.h)
+set(db-merger.c_HEADERS sysconf.h)
+
+foreach(SRC ${TOOLS_SRCS})
+ #string(REGEX REPLACE "\\." "_" SRC_TARGET ${SRC})
+ string(REGEX REPLACE "\\.cpp$" ".x" SRC_X ${SRC})
+ string(REGEX REPLACE "\\.c$" ".o" SRC_O ${SRC_X})
+ string(REGEX REPLACE "\\.x$" ".o" OBJ ${SRC_O})
+ string(REGEX REPLACE "\\.o$" "" EXE ${OBJ})
+ #string(REGEX REPLACE "\\." "_" OBJ_TARGET ${OBJ})
+ #set(SRC_OBJS ${SRC_OBJS} ${BUILD_DIR}/${OBJ})
+ set(TOOLS ${TOOLS} ${EXE})
+ #add_custom_command(OUTPUT ${BUILD_DIR}/${OBJ}
+ # COMMAND ${MY_COMPILER} ${MY_COMP_ARG} ${CMAKE_CXX_CFLAGS} -I${Anope_SOURCE_DIR}/include -c ${SRC} -o ${BUILD_DIR}/${OBJ}
+ # MAIN_DEPENDENCY ${SRC}
+ #)
+ #add_custom_target(src_${OBJ_TARGET} DEPENDS ${BUILD_DIR}/${OBJ})
+ #add_custom_target(src_${SRC_TARGET} DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/${SRC})
+ #add_dependencies(src_srcs src_${SRC_TARGET})
+ set(HEADERS)
+ if(${SRC}_HEADERS)
+ foreach(HEADER ${${SRC}_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(${SRC}_HEADERS)
+ if(HEADERS)
+ set_source_files_properties(${SRC} PROPERTIES OBJECT_DEPENDS "${HEADERS}")
+ endif(HEADERS)
+ add_executable(${EXE} ${SRC})
+ add_dependencies(${EXE} services)
+ #set_target_properties(${EXE} PROPERTIES COMPILE_FLAGS ${CXXFLAGS})
+ install(TARGETS ${EXE}
+ DESTINATION "${BINDIR}/tools"
+ )
+endforeach(SRC)
+
+if(RUNGROUP)
+ install(CODE "execute_process(COMMAND ${CHMOD} 2775 \"${BINDIR}/tools\")")
+endif(RUNGROUP)
diff --git a/src/tools/Makefile b/src/tools/Makefile
index a73df423e..5d33ff801 100644
--- a/src/tools/Makefile
+++ b/src/tools/Makefile
@@ -1,39 +1,293 @@
-SRCS = anopesmtp.c db-merger.c db-convert.c
-OBJS = $(SRCS:.c=.o)
+# CMAKE generated file: DO NOT EDIT!
+# Generated by "Unix Makefiles" Generator, CMake Version 2.6
-INCLUDES = ../../include/services.h
+# Default target executed when no arguments are given to make.
+default_target: all
+.PHONY : default_target
-MAKEARGS = 'CFLAGS=${CFLAGS}' 'CC=${CC}' 'ANOPELIBS=${ANOPELIBS}' \
- 'LDFLAGS=${LDFLAGS}' 'BINDEST=${BINDEST}' 'INSTALL=${INSTALL}' \
- 'INCLUDEDIR=${INCLUDEDIR}' 'RM=${RM}' 'CP=${CP}' \
- 'TOUCH=${TOUCH}' 'SHELL=${SHELL}' 'DATDEST=${DATDEST}' \
- 'RUNGROUP=${RUNGROUP}' 'MAKEBIN=${MAKEBIN}'
+#=============================================================================
+# Special targets provided by cmake.
-.c.o:
- @$(MAKEBIN) $(CC) $(CFLAGS) -I../include/ -c $<
+# Disable implicit rules so canoncical targets will work.
+.SUFFIXES:
-all: ${OBJS}
+# Remove some rules from gmake that .SUFFIXES does not remove.
+SUFFIXES =
-distclean: spotless
+.SUFFIXES: .hpux_make_needs_suffix_list
-anopesmpt: $(OBJS)
- $(CC) $(CFLAGS) $(OBJS) $(ANOPELIBS) $(MLIBS) -o $@ $(LDFLAGS)
+# Suppress display of executed commands.
+$(VERBOSE).SILENT:
-$(OBJS): Makefile
-anopesmtp.o: anopesmtp.c $(INCLUDES)
-db-merger.o: db-merger.c $(INCLUDES)
-db-convert.o: db-convert.c $(INCLUDES)
+# 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/src/tools && /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/src/tools && /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/src/tools && /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/src/tools && /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/src/tools && /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/src/tools && /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/src/tools/CMakeFiles/progress.make
+ cd /celes/anope && $(MAKE) -f CMakeFiles/Makefile2 src/tools/all
+ $(CMAKE_COMMAND) -E cmake_progress_start /celes/anope/CMakeFiles 0
+.PHONY : all
+
+# The main clean target
clean:
- rm -f *.o anopesmtp a.out db-merger db-convert
+ cd /celes/anope && $(MAKE) -f CMakeFiles/Makefile2 src/tools/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 src/tools/preinstall
+.PHONY : preinstall
+
+# Prepare targets for installation.
+preinstall/fast:
+ cd /celes/anope && $(MAKE) -f CMakeFiles/Makefile2 src/tools/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.
+src/tools/CMakeFiles/anopesmtp.dir/rule:
+ cd /celes/anope && $(MAKE) -f CMakeFiles/Makefile2 src/tools/CMakeFiles/anopesmtp.dir/rule
+.PHONY : src/tools/CMakeFiles/anopesmtp.dir/rule
+
+# Convenience name for target.
+anopesmtp: src/tools/CMakeFiles/anopesmtp.dir/rule
+.PHONY : anopesmtp
+
+# fast build rule for target.
+anopesmtp/fast:
+ cd /celes/anope && $(MAKE) -f src/tools/CMakeFiles/anopesmtp.dir/build.make src/tools/CMakeFiles/anopesmtp.dir/build
+.PHONY : anopesmtp/fast
+
+# Convenience name for target.
+src/tools/CMakeFiles/db-convert.dir/rule:
+ cd /celes/anope && $(MAKE) -f CMakeFiles/Makefile2 src/tools/CMakeFiles/db-convert.dir/rule
+.PHONY : src/tools/CMakeFiles/db-convert.dir/rule
+
+# Convenience name for target.
+db-convert: src/tools/CMakeFiles/db-convert.dir/rule
+.PHONY : db-convert
+
+# fast build rule for target.
+db-convert/fast:
+ cd /celes/anope && $(MAKE) -f src/tools/CMakeFiles/db-convert.dir/build.make src/tools/CMakeFiles/db-convert.dir/build
+.PHONY : db-convert/fast
+
+# Convenience name for target.
+src/tools/CMakeFiles/db-merger.dir/rule:
+ cd /celes/anope && $(MAKE) -f CMakeFiles/Makefile2 src/tools/CMakeFiles/db-merger.dir/rule
+.PHONY : src/tools/CMakeFiles/db-merger.dir/rule
+
+# Convenience name for target.
+db-merger: src/tools/CMakeFiles/db-merger.dir/rule
+.PHONY : db-merger
+
+# fast build rule for target.
+db-merger/fast:
+ cd /celes/anope && $(MAKE) -f src/tools/CMakeFiles/db-merger.dir/build.make src/tools/CMakeFiles/db-merger.dir/build
+.PHONY : db-merger/fast
+
+anopesmtp.o: anopesmtp.c.o
+.PHONY : anopesmtp.o
+
+# target to build an object file
+anopesmtp.c.o:
+ cd /celes/anope && $(MAKE) -f src/tools/CMakeFiles/anopesmtp.dir/build.make src/tools/CMakeFiles/anopesmtp.dir/anopesmtp.c.o
+.PHONY : anopesmtp.c.o
+
+anopesmtp.i: anopesmtp.c.i
+.PHONY : anopesmtp.i
+
+# target to preprocess a source file
+anopesmtp.c.i:
+ cd /celes/anope && $(MAKE) -f src/tools/CMakeFiles/anopesmtp.dir/build.make src/tools/CMakeFiles/anopesmtp.dir/anopesmtp.c.i
+.PHONY : anopesmtp.c.i
+
+anopesmtp.s: anopesmtp.c.s
+.PHONY : anopesmtp.s
+
+# target to generate assembly for a file
+anopesmtp.c.s:
+ cd /celes/anope && $(MAKE) -f src/tools/CMakeFiles/anopesmtp.dir/build.make src/tools/CMakeFiles/anopesmtp.dir/anopesmtp.c.s
+.PHONY : anopesmtp.c.s
+
+db-convert.o: db-convert.c.o
+.PHONY : db-convert.o
+
+# target to build an object file
+db-convert.c.o:
+ cd /celes/anope && $(MAKE) -f src/tools/CMakeFiles/db-convert.dir/build.make src/tools/CMakeFiles/db-convert.dir/db-convert.c.o
+.PHONY : db-convert.c.o
+
+db-convert.i: db-convert.c.i
+.PHONY : db-convert.i
+
+# target to preprocess a source file
+db-convert.c.i:
+ cd /celes/anope && $(MAKE) -f src/tools/CMakeFiles/db-convert.dir/build.make src/tools/CMakeFiles/db-convert.dir/db-convert.c.i
+.PHONY : db-convert.c.i
+
+db-convert.s: db-convert.c.s
+.PHONY : db-convert.s
+
+# target to generate assembly for a file
+db-convert.c.s:
+ cd /celes/anope && $(MAKE) -f src/tools/CMakeFiles/db-convert.dir/build.make src/tools/CMakeFiles/db-convert.dir/db-convert.c.s
+.PHONY : db-convert.c.s
+
+db-merger.o: db-merger.c.o
+.PHONY : db-merger.o
+
+# target to build an object file
+db-merger.c.o:
+ cd /celes/anope && $(MAKE) -f src/tools/CMakeFiles/db-merger.dir/build.make src/tools/CMakeFiles/db-merger.dir/db-merger.c.o
+.PHONY : db-merger.c.o
+
+db-merger.i: db-merger.c.i
+.PHONY : db-merger.i
+
+# target to preprocess a source file
+db-merger.c.i:
+ cd /celes/anope && $(MAKE) -f src/tools/CMakeFiles/db-merger.dir/build.make src/tools/CMakeFiles/db-merger.dir/db-merger.c.i
+.PHONY : db-merger.c.i
+
+db-merger.s: db-merger.c.s
+.PHONY : db-merger.s
+
+# target to generate assembly for a file
+db-merger.c.s:
+ cd /celes/anope && $(MAKE) -f src/tools/CMakeFiles/db-merger.dir/build.make src/tools/CMakeFiles/db-merger.dir/db-merger.c.s
+.PHONY : db-merger.c.s
+
+# 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 "... anopesmtp"
+ @echo "... db-convert"
+ @echo "... db-merger"
+ @echo "... edit_cache"
+ @echo "... install"
+ @echo "... install/local"
+ @echo "... install/strip"
+ @echo "... list_install_components"
+ @echo "... rebuild_cache"
+ @echo "... anopesmtp.o"
+ @echo "... anopesmtp.i"
+ @echo "... anopesmtp.s"
+ @echo "... db-convert.o"
+ @echo "... db-convert.i"
+ @echo "... db-convert.s"
+ @echo "... db-merger.o"
+ @echo "... db-merger.i"
+ @echo "... db-merger.s"
+.PHONY : help
+
+
-spotless: clean
+#=============================================================================
+# Special targets to cleanup operation of make.
-install: anopesmtp db-merger db-convert
- test -d ${BINDEST} || mkdir ${BINDEST}
- test -d $(BINDEST)/tools || mkdir $(BINDEST)/tools
- $(INSTALL) anopesmtp $(BINDEST)/tools/anopesmtp
- $(INSTALL) db-merger $(BINDEST)/tools/db-merger
- $(INSTALL) db-convert $(BINDEST)/tools/db-convert
+# 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
-DUMMY: