Jump to content
ossi0110

Harmony Patch 3.3.12 30 MAI

Recommended Posts

RIP Harmony, they deleted their facebook fan page.

Share this post


Link to post
Share on other sites
make[1]: Entering directory `/home/******/trunk/src/common'
Makefile:26: *** unterminated call to function `addprefix': missing `)'.  Stop.
make[1]: Leaving directory `/home/******/trunk/src/common'
make: *** [common_sql] Error 2
 
Apply patch.
./configure
make clean
Edited by Mrgxsy

Share this post


Link to post
Share on other sites

UPDATE

 

Hercules Harmony Patch - 30 MAI

 

updated the FULL Patch to V5 , Fully work with the latest Hercules REV.

 

 

Dropped the Small Fix Patch....

 

 

the Patch can be found on the First Site of this Topic...

hello no more as this part should I replace?

 

 

Index: Hercules-10.sln

 

-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "plugin-HPMHooking", "vcproj-10plugin-HPMHooking.vcxproj", "{E64C56D3-CDFB-483B-900B-A62D216B6D2F}"

+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "plugin-HPMHooking", "vcproj-10plugin-HPMHooking.vcxproj", "{7ED92B9F-95E8-49B8-9D4F-C4C9BFDE0B22}"

 

 

 

 

Index: vcproj-10/char-server.vcxproj
===================================================================
--- vcproj-10/char-server.vcxproj (revision 14262)
+++ vcproj-10/char-server.vcxproj (working copy)
@@ -173,6 +173,7 @@
     <ClInclude Include="..srccharinter.h" />
     <ClInclude Include="..srccharpincode.h" />
     <ClInclude Include="..srccommonwinapi.h" />
+ <ClInclude Include="..srccommonharmony.h" />
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="..3rdpartylibconfiggrammar.c" />
@@ -213,6 +214,7 @@
     <ClCompile Include="..srccharint_storage.c" />
     <ClCompile Include="..srccharinter.c" />
     <ClCompile Include="..srccharpincode.c" />
+ <ClCompile Include="..srccommonharmonycore.c" />
   </ItemGroup>
   <Import Project="$(VCTargetsPath)Microsoft.Cpp.targets" />
   <ImportGroup Label="ExtensionTargets">
Index: vcproj-10/login-server.vcxproj
===================================================================
--- vcproj-10/login-server.vcxproj (revision 14262)
+++ vcproj-10/login-server.vcxproj (working copy)
@@ -166,6 +166,7 @@
     <ClInclude Include="..srccommontimer.h" />
     <ClInclude Include="..srccommonutils.h" />
     <ClInclude Include="..3rdpartymt19937armt19937ar.h" />
+ <ClInclude Include="..srccommonharmony.h" />
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="..3rdpartylibconfiggrammar.c" />
@@ -197,6 +198,7 @@
     <ClCompile Include="..srccommontimer.c" />
     <ClCompile Include="..srccommonutils.c" />
     <ClCompile Include="..3rdpartymt19937armt19937ar.c" />
+ <ClCompile Include="..srccommonharmonycore.c" />
   </ItemGroup>
   <Import Project="$(VCTargetsPath)Microsoft.Cpp.targets" />
   <ImportGroup Label="ExtensionTargets">
Index: vcproj-10/map-server.vcxproj
===================================================================
--- vcproj-10/map-server.vcxproj (revision 14262)
+++ vcproj-10/map-server.vcxproj (working copy)
@@ -160,6 +160,7 @@
     <ClInclude Include="..srccommontimer.h" />
     <ClInclude Include="..srccommonutils.h" />
     <ClInclude Include="..srccommonwinapi.h" />
+ <ClInclude Include="..srccommonharmony.h" />
     <ClInclude Include="..srcmapatcommand.h" />
     <ClInclude Include="..srcmapbattle.h" />
     <ClInclude Include="..srcmapbattleground.h" />
@@ -205,6 +206,7 @@
     <ClInclude Include="..srcmaptrade.h" />
     <ClInclude Include="..srcmapunit.h" />
     <ClInclude Include="..srcmapvending.h" />
+ <ClInclude Include="..srcmapharmony.h" />
   </ItemGroup>
   <ItemGroup>
     <ClCompile Include="..3rdpartylibconfiggrammar.c" />
@@ -235,6 +237,7 @@
     <ClCompile Include="..srccommonthread.c" />
     <ClCompile Include="..srccommontimer.c" />
     <ClCompile Include="..srccommonutils.c" />
+ <ClCompile Include="..srccommonharmonycore.c" />
     <ClCompile Include="..srcmapatcommand.c" />
     <ClCompile Include="..srcmapbattle.c" />
     <ClCompile Include="..srcmapbattleground.c" />
@@ -274,6 +277,7 @@
     <ClCompile Include="..srcmaptrade.c" />
     <ClCompile Include="..srcmapunit.c" />
     <ClCompile Include="..srcmapvending.c" />
+ <ClCompile Include="..srcmapharmony.c" />
   </ItemGroup>
   <Import Project="$(VCTargetsPath)Microsoft.Cpp.targets" />
   <ImportGroup Label="ExtensionTargets">
 

Share this post


Link to post
Share on other sites

You have to include the files of harmony in the Makefile, otherwise the emulator does not compile.

Share this post


Link to post
Share on other sites

 

You have to include the files of harmony in the Makefile, otherwise the emulator does not compile.

 

how?

in src/common/Makefile.in

 

search:

console.o core.o malloc.o socket.o)

replace to:

console.o core.o malloc.o socket.o harmonycore.o)

 

in src/map/Makefil.in

 

search:

 

clif.c date.c duel.c elemental.c guild.c homunculus.c HPMmap.c 

replace to:

clif.c date.c duel.c elemental.c guild.c harmony.c homunculus.c HPMmap.c 

and search:

clif.h date.h duel.h elemental.h guild.h homunculus.h HPMmap.h  

replace to:

clif.h date.h duel.h elemental.h guild.h harmony.h homunculus.h HPMmap.h 

in linux terminal you have to dicionar the dos2unix command on these files.

 

Sample (in root folder):

dos2unix src/common/Makefile

dos2unix src/map/Makefile

Edited by sbk_

Share this post


Link to post
Share on other sites

 

 

You have to include the files of harmony in the Makefile, otherwise the emulator does not compile.

 

how?

in src/common/Makefile.in

 

search:

console.o core.o malloc.o socket.o)

replace to:

console.o core.o malloc.o socket.o harmonycore.o)

 

in src/map/Makefil.in

 

search:

 

clif.c date.c duel.c elemental.c guild.c homunculus.c HPMmap.c 

replace to:

clif.c date.c duel.c elemental.c guild.c harmony.c homunculus.c HPMmap.c 

and search:

clif.h date.h duel.h elemental.h guild.h homunculus.h HPMmap.h  

replace to:

clif.h date.h duel.h elemental.h guild.h harmony.h homunculus.h HPMmap.h 

in linux terminal you have to dicionar the dos2unix command on these files.

 

Sample (in root folder):

dos2unix src/common/Makefile

dos2unix src/map/Makefile

 

i'm using rathena sir this are my makefile.in

map/makefile.in

COMMON_H = $(shell ls ../common/*.h)COMMON_AR = ../common/obj/common.aCOMMON_INCLUDE = -I../common/MT19937AR_OBJ = ../../3rdparty/mt19937ar/mt19937ar.oMT19937AR_H = ../../3rdparty/mt19937ar/mt19937ar.hMT19937AR_INCLUDE = -I../../3rdparty/mt19937arLIBCONFIG_H = $(shell ls ../../3rdparty/libconfig/*.h)LIBCONFIG_AR = ../../3rdparty/libconfig/obj/libconfig.aLIBCONFIG_INCLUDE = -I../../3rdparty/libconfigMAP_OBJ = $(shell ls *.c | sed -e "s/.c/.o/g")MAP_DIR_OBJ = $(MAP_OBJ:%=obj/%)MAP_H = $(shell ls ../map/*.h) 	$(shell ls ../config/*.h) HAVE_MYSQL=@HAVE_MYSQL@ifeq ($(HAVE_MYSQL),yes)	SERVER_DEPENDS=map-serverelse	SERVER_DEPENDS=needs_mysqlendifALL_DEPENDS=serverHAVE_PCRE=@HAVE_PCRE@ifeq ($(HAVE_PCRE),yes)	PCRE_CFLAGS=-DPCRE_SUPPORT @PCRE_CFLAGS@else	PCRE_CFLAGS=endif@SET_MAKE@#####################################################################.PHONY : all server clean helpall: $(ALL_DEPENDS)server: $(SERVER_DEPENDS)clean:	@echo "	CLEAN	map"	@rm -rf *.o obj ../../@OMAP@@EXEEXT@help:	@echo "possible targets are 'server' 'all' 'clean' 'help'"	@echo "'server' - map server"	@echo "'all'    - builds all above targets"	@echo "'clean'  - cleans builds and objects"	@echo "'help'   - outputs this message"#####################################################################needs_mysql:	@echo "MySQL not found or disabled by the configure script"	@exit 1# object directoriesobj:	@echo "	MKDIR	obj"	@-mkdir obj# executablesmap-server: obj $(MAP_DIR_OBJ) $(COMMON_AR) $(LIBCONFIG_AR)	@echo "	LD	@OMAP@@EXEEXT@"	@@CC@ @LDFLAGS@ -o ../../@OMAP@@EXEEXT@ $(MAP_DIR_OBJ) $(COMMON_AR) $(MT19937AR_OBJ) $(LIBCONFIG_AR) @LIBS@ @PCRE_LIBS@ @MYSQL_LIBS@# map object filesobj/%.o: %.c $(MAP_H) $(COMMON_H)  $(MT19937AR_H) $(LIBCONFIG_H)	@echo "	CC	$<"	@@CC@ @CFLAGS@ $(COMMON_INCLUDE) $(MT19937AR_INCLUDE) $(LIBCONFIG_INCLUDE) $(PCRE_CFLAGS) @MYSQL_CFLAGS@ @CPPFLAGS@ -c $(OUTPUT_OPTION) $<# missing object files$(COMMON_AR):	@$(MAKE) -C ../common server$(MT19937AR_OBJ):	@$(MAKE) -C ../../3rdparty/mt19937ar$(LIBCONFIG_AR):	@$(MAKE) -C ../../3rdparty/libconfig

 

common makefile.in

#COMMON_OBJ = $(ls *.c | grep -viw sql.c | sed -e "s/.c/.o/g")COMMON_OBJ = core.o socket.o timer.o db.o nullpo.o malloc.o showmsg.o strlib.o utils.o harmonycore.o 	grfio.o mapindex.o ers.o md5calc.o minicore.o minisocket.o minimalloc.o random.o des.o 	conf.o thread.o mutex.o raconf.o mempool.o msg_conf.o cli.o sql.oCOMMON_DIR_OBJ = $(COMMON_OBJ:%=obj/%)COMMON_H = harmony.h $(shell ls ../common/*.h)COMMON_AR = obj/common.aMT19937AR_OBJ = ../../3rdparty/mt19937ar/mt19937ar.oMT19937AR_H = ../../3rdparty/mt19937ar/mt19937ar.hMT19937AR_INCLUDE = -I../../3rdparty/mt19937arLIBCONFIG_H = $(shell ls ../../3rdparty/libconfig/*.h)LIBCONFIG_AR = ../../3rdparty/libconfig/obj/libconfig.aLIBCONFIG_INCLUDE = -I../../3rdparty/libconfigHAVE_MYSQL=@HAVE_MYSQL@ifeq ($(HAVE_MYSQL),yes)	SERVER_DEPENDS=commonelse	SERVER_DEPENDS=needs_mysqlendifALL_DEPENDS=server@SET_MAKE@#####################################################################.PHONY : all server clean helpall: $(ALL_DEPENDS)server: $(SERVER_DEPENDS)clean:	@echo "	CLEAN	common"	@rm -rf *.o objhelp:	@echo "possible targets are 'server' 'all' 'clean' 'help'"	@echo "'server' - builds object files used in servers"	@echo "'all'    - builds all above targets"	@echo "'clean'  - cleans builds and objects"	@echo "'help'   - outputs this message"#####################################################################needs_mysql:	@echo "MySQL not found or disabled by the configure script"	@exit 1obj:	@echo "	MKDIR	obj"	@-mkdir obj$(COMMON_AR): $(COMMON_DIR_OBJ)	@echo "	AR	$@"	@@AR@ rcs $(COMMON_AR) $(COMMON_DIR_OBJ)common: obj $(COMMON_DIR_OBJ) $(MT19937AR_OBJ) $(LIBCONFIG_AR) $(COMMON_AR)obj/%.o: %.c $(COMMON_H) $(MT19937AR_H) $(LIBCONFIG_H)	@echo "	CC	$<"	@@CC@ @CFLAGS@ $(MT19937AR_INCLUDE) $(LIBCONFIG_INCLUDE) @MYSQL_CFLAGS@ @CPPFLAGS@ -c $(OUTPUT_OPTION) $<obj/mini%.o: %.c $(COMMON_H) $(MT19937AR_H) $(LIBCONFIG_H)	@echo "	CC	$<"	@@CC@ @CFLAGS@ $(MT19937AR_INCLUDE) $(LIBCONFIG_INCLUDE) @MYSQL_CFLAGS@ -DMINICORE @CPPFLAGS@ -c $(OUTPUT_OPTION) $<# missing object files$(MT19937AR_OBJ):	@$(MAKE) -C ../../3rdparty/mt19937ar$(LIBCONFIG_AR):	@$(MAKE) -C ../../3rdparty/libconfig

Share this post


Link to post
Share on other sites
####################################################################### "Getting Started with CMake", a tutorial video by Eric Wing.#   Part 1 of 6: 
Part 2 of 6:
Part 3 of 6:
Part 4 of 6:
Part 5 of 6:
Part 6 of 6:
You can use notepad++ for syntax highlighting.# Naming conventions:# WITH_* : option to use an external package or not# ENABLE_* : option to use an internal feature/code or not# HAVE_* : internal variable indicating if we have and are using something## Maintainers: Flavio J. Saraiva (feel free to send complaints or suggestions)# flaviojs @ rAthena forum/irc# flaviojs2005 A-T/ gmail <D.o,T> com# lightaisme A-T/ gmail <D.o,T> com#######################################################################cmake_minimum_required( VERSION 2.8.4 )# Functional changes from 2.8.3 to 2.8.4:# string(SUBSTRING) works with length -1 as "rest of string"# changes to some CPack generators# CYGWIN no longer defines WIN32# CMP0017: Prefer files from the CMake module directory when including from there.set( CMAKE_LEGACY_CYGWIN_WIN32 0 )cmake_minimum_required( VERSION 2.8.8 )project( rAthena C )if( CYGWIN ) unset( WIN32 )endif()## Prevent building in the source directory by default#if( ALLOW_SAME_DIRECTORY )elseif( "${CMAKE_CURRENT_SOURCE_DIR}" STREQUAL "${CMAKE_CURRENT_BINARY_DIR}" ) option( ALLOW_SAME_DIRECTORY "Allow CMake to build in the source directory." OFF ) message( FATAL_ERROR "Do not use the source directory to build your files, instead delete CMakeCache.txt, create a separate folder and build there.n" "Example: (build in subdir 'build' and install to source dir)n" " rm -f CMakeCache.txtn" " mkdir buildn" " cd buildn" " cmake -G"Unix Makefiles" -DINSTALL_TO_SOURCE=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo ..n" " make installn" " cd ..n" " rm -rf buildn" "To skip this check, set ALLOW_SAME_DIRECTORY to ON (-DALLOW_SAME_DIRECTORY=ON)" )endif()## Global stuff#set( GLOBAL_LIBRARIES ${LINK_LIBRARIES} CACHE INTERNAL "" )# list (comma separated values)set( GLOBAL_INCLUDE_DIRS ${INCLUDE_DIRECTORIES} CACHE INTERNAL "" )# list (comma separated values)set( GLOBAL_DEFINITIONS ${COMPILE_DEFINITIONS} CACHE INTERNAL "" )# string (space separated values -DFOO=bar)mark_as_advanced( GLOBAL_LIBRARIES GLOBAL_INCLUDE_DIRS GLOBAL_DEFINITIONS )if( WIN32 ) set_property( CACHE GLOBAL_DEFINITIONS PROPERTY VALUE "${GLOBAL_DEFINITIONS} -DFD_SETSIZE=4096" )endif()if( MSVC ) set_property( CACHE GLOBAL_LIBRARIES PROPERTY VALUE ${GLOBAL_LIBRARIES} "oldnames.lib" "ws2_32.lib" ) set_property( CACHE GLOBAL_DEFINITIONS PROPERTY VALUE "${GLOBAL_DEFINITIONS} -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE" )endif()## 3rd party#set( CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/cmake CACHE INTERNAL "" )include( CheckCSourceCompiles )include( CheckCSourceRuns )include( CheckIncludeFile )include( CheckFunctionExists )include( FindFunctionLibrary )include( TestBigEndian )## PACKETVER#set( PACKETVER CACHE STRING "Sets the PACKETVER define of the servers. (see src/common/mmo.h)" )if( PACKETVER ) list( APPEND GLOBAL_DEFINITIONS PACKETVER=${PACKETVER} )endif()## Find git#message( STATUS "Detecting git" )find_package(Git)if(GIT_FOUND) if(GIT_VERSION_STRING) message(STATUS "Found git : ${GIT_EXECUTABLE} version (${GIT_VERSION_STRING})") else() message(STATUS "Found git : ${GIT_EXECUTABLE}") endif()endif()## Find svnversion#message( STATUS "Detecting svnversion" )find_program( SVNVERSION_EXECUTABLE svnversion )mark_as_advanced( SVNVERSION_EXECUTABLE )if( SVNVERSION_EXECUTABLE ) message( STATUS "Found svnversion: ${SVNVERSION_EXECUTABLE}" )endif()message( STATUS "Detecting svnversion - done" )## Find Subversion#message( STATUS "Detecting Subversion" )find_package( Subversion )message( STATUS "Detecting Subversion - done" )## SVNVERSION#if( SVNVERSION_EXECUTABLE ) message( STATUS "Getting svn version" ) execute_process( COMMAND ${SVNVERSION_EXECUTABLE} ${PROJECT_SOURCE_DIR} OUTPUT_VARIABLE SVNVERSION OUTPUT_STRIP_TRAILING_WHITESPACE ) if( SVNVERSION MATCHES "^Unversioned" ) set( SVNVERSION ) endif() string( REGEX REPLACE "[^1234567890MSexported]" "_" SVNVERSION "${SVNVERSION}" ) message( STATUS "Found SVNversion: ${SVNVERSION}" ) message( STATUS "Getting svn version - done" )endif()if( Subversion_FOUND AND SVNVERSION ) message( STATUS "Getting svn branch" ) Subversion_WC_INFO( ${PROJECT_SOURCE_DIR} rAthena ) if( rAthena_WC_URL ) string( REGEX MATCH "[^/]+$" BRANCH ${rAthena_WC_URL} ) set( SVNVERSION "${BRANCH}-${SVNVERSION}" ) message( STATUS "Found branch: ${BRANCH}" ) endif() message( STATUS "Getting svn branch - done" )endif()## threads#message( STATUS "Detecting threads library" )set( CMAKE_THREAD_PREFER_PTHREAD 1 )find_package(Threads REQUIRED)if( CMAKE_THREAD_LIBS_INIT ) message( STATUS "Adding global library: ${FUNCTION_FLOOR_LIBRARIES}" ) set_property( CACHE GLOBAL_LIBRARIES PROPERTY VALUE ${GLOBAL_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT} )endif()message( STATUS "Detecting threads library - done" )## math library (FreeBSD/Linux/Solaris)#message( STATUS "Detecting math library (m)" )CHECK_INCLUDE_FILE( math.h HAVE_MATH_H )if( NOT HAVE_MATH_H ) message( FATAL_ERROR "math.h not found" )endif()set( CMAKE_REQUIRED_LIBRARIES ${GLOBAL_LIBRARIES} )find_function_library( floor FUNCTION_FLOOR_LIBRARIES m )if( FUNCTION_FLOOR_LIBRARIES ) message( STATUS "Adding global library: ${FUNCTION_FLOOR_LIBRARIES}" ) set_property( CACHE GLOBAL_LIBRARIES PROPERTY VALUE ${GLOBAL_LIBRARIES} ${FUNCTION_FLOOR_LIBRARIES} )endif()message( STATUS "Detecting math library (m) - done" )## dynamic loading library (Linux)#if( NOT WIN32 )message( STATUS "Detecting dynamic loading library (dl)" )set( CMAKE_REQUIRED_LIBRARIES ${GLOBAL_LIBRARIES} )find_function_library( dlopen FUNCTION_DLOPEN_LIBRARIES dl )if( FUNCTION_DLOPEN_LIBRARIES ) message( STATUS "Adding global library: ${FUNCTION_DLOPEN_LIBRARIES}" ) set_property( CACHE GLOBAL_LIBRARIES PROPERTY VALUE ${GLOBAL_LIBRARIES} ${FUNCTION_DLOPEN_LIBRARIES} )endif()message( STATUS "Detecting dynamic loading library (dl) - done" )endif()## networking library (Solaris/MinGW)#if( NOT MSVC )message( STATUS "Detecting networking library (socket/nsl/ws2_32)" )set( CMAKE_REQUIRED_LIBRARIES ${GLOBAL_LIBRARIES} )find_function_library( bind FUNCTION_BIND_LIBRARIES socket ws2_32 )if( FUNCTION_BIND_LIBRARIES ) message( STATUS "Adding global library: ${FUNCTION_BIND_LIBRARIES}" ) set_property( CACHE GLOBAL_LIBRARIES PROPERTY VALUE ${GLOBAL_LIBRARIES} ${FUNCTION_BIND_LIBRARIES} )endif()set( CMAKE_REQUIRED_LIBRARIES ${GLOBAL_LIBRARIES} )find_function_library( gethostbyname FUNCTION_GETHOSTBYNAME_LIBRARIES nsl )if( FUNCTION_GETHOSTBYNAME_LIBRARIES ) message( STATUS "Adding global library: ${FUNCTION_GETHOSTBYNAME_LIBRARIES}" ) set_property( CACHE GLOBAL_LIBRARIES PROPERTY VALUE ${GLOBAL_LIBRARIES} ${FUNCTION_GETHOSTBYNAME_LIBRARIES} )endif()message( STATUS "Detecting networking library (socket/nsl/ws2_32) - done" )endif()## Test for big endian#TEST_BIG_ENDIAN( BIG_ENDIAN )if( NOT DEFINED BIG_ENDIAN ) message( WARNING "unable to determine endianess, only LITTLE ENDIAN is supported" )elseif( BIG_ENDIAN ) message( FATAL_ERROR "bigendian is not supported" )endif()## Test monotonic clock## CLOCK_MONOTONIC clock for clock_gettime# Normally defines _POSIX_TIMERS > 0 and _POSIX_MONOTONIC_CLOCK (for posix# compliant systems) and __FreeBSD_cc_version >= 500005 (for FreeBSD# >= 5.1.0, which does not have the posix defines (ref. r11983)) would be# checked but some systems define them even when they do not support it# (ref. bugreport:1003).#message( STATUS "Check for monotonic clock" )find_library( RT_LIBRARY rt )# (optional, rt on Debian)mark_as_advanced( RT_LIBRARY )set( CMAKE_REQUIRED_LIBRARIES ${GLOBAL_LIBRARIES} ${RT_LIBRARY} )file( READ "${CMAKE_SOURCE_DIR}/3rdparty/cmake/tests/HAVE_MONOTONIC_CLOCK.c" _SOURCE )CHECK_C_SOURCE_RUNS( "${_SOURCE}" HAVE_MONOTONIC_CLOCK )if( HAVE_MONOTONIC_CLOCK ) message( STATUS "Check for monotonic clock - yes" ) set_property( CACHE GLOBAL_LIBRARIES PROPERTY VALUE ${GLOBAL_LIBRARIES} ${RT_LIBRARY} ) set_property( CACHE GLOBAL_DEFINITIONS PROPERTY VALUE "${GLOBAL_DEFINITIONS} -DHAVE_MONOTONIC_CLOCK" )else() message( STATUS "Check for monotonic clock - no" )endif()## Test if function exists:# setrlimit - used to set the socket limit# strnlen - string length with upper scan bound# getpid - process id# gettid - thread id#CHECK_FUNCTION_EXISTS( setrlimit HAVE_SETRLIMIT )CHECK_FUNCTION_EXISTS( strnlen HAVE_STRNLEN )CHECK_FUNCTION_EXISTS( getpid HAVE_GETPID )CHECK_FUNCTION_EXISTS( gettid HAVE_GETTID )foreach( define HAVE_SETRLIMIT HAVE_STRNLEN HAVE_GETPID HAVE_GETTID ) if( ${define} ) set_property( CACHE GLOBAL_DEFINITIONS PROPERTY VALUE "${GLOBAL_DEFINITIONS} -D${define}" ) endif()endforeach()## Use RDTSC instruction as a timing source (time stamp counter on x86 since Pentium) (default=OFF)## Enable it when you've timing issues. (ex: in conjunction with XEN or Other Virtualization mechanisms)# Please ensure that you've disabled dynamic CPU-Frequencys, such as power saving options.# (On the most modern Dedicated Servers cpufreq is preconfigured, see your distribution's manual how to disable it)#option( ENABLE_RDTSC "use RDTSC instruction as a timing source (default=OFF)" OFF )if( ENABLE_RDTSC ) set_property( CACHE GLOBAL_DEFINITIONS PROPERTY VALUE "${GLOBAL_DEFINITIONS} -DENABLE_RDTSC" ) message( STATUS "Enabled RDTSC as a timing source" )endif()## Enable extra debug code (default=OFF)#option( ENABLE_EXTRA_DEBUG_CODE "enable extra debug code (default=OFF)" OFF )if( ENABLE_EXTRA_DEBUG_CODE ) set_property( CACHE GLOBAL_DEFINITIONS PROPERTY VALUE "${GLOBAL_DEFINITIONS} -DDEBUG" ) message( STATUS "Enabled extra DEBUG code" )endif()## Enable builtin memory manager (default=default)#set( MEMMGR_OPTIONS "default;yes;no" )set( ENABLE_MEMMGR "default" CACHE STRING "enable builtin memory manager: ${MEMMGR_OPTIONS} (default=default)" )set_property( CACHE ENABLE_MEMMGR PROPERTY STRINGS ${MEMMGR_OPTIONS} )if( ENABLE_MEMMGR STREQUAL "default" ) # use source code defaultelseif( ENABLE_MEMMGR STREQUAL "yes" ) set_property( CACHE GLOBAL_DEFINITIONS PROPERTY VALUE "${GLOBAL_DEFINITIONS} -DUSE_MEMMGR" ) message( STATUS "Enabled the builtin memory manager" )elseif( ENABLE_MEMMGR STREQUAL "no" ) set_property( CACHE GLOBAL_DEFINITIONS PROPERTY VALUE "${GLOBAL_DEFINITIONS} -DNO_MEMMGR" ) message( STATUS "Disabled the builtin memory manager" )else() message( FATAL_ERROR "invalid option ENABLE_MEMMGR=${ENABLE_MEMMGR} (valid options: ${MEMMGR_OPTIONS})" )endif()## Enable memory library (default=system)#set( MEMORY_OPTIONS "system;memwatch;dmalloc;gcollect" )set( ENABLE_MEMORY "system" CACHE STRING "enable memory library: ${MEMORY_OPTIONS} (default=system)" )set_property( CACHE ENABLE_MEMORY PROPERTY STRINGS ${MEMORY_OPTIONS} )if( ENABLE_MEMORY STREQUAL "system" ) # use system functionselseif( ENABLE_MEMORY STREQUAL "memwatch" ) CHECK_INCLUDE_FILE( memwatch.h HAVE_MEMWATCH_H ) find_library( MEMWATCH_LIBRARY memwatch ) mark_as_advanced( MEMWATCH_LIBRARY ) if( HAVE_MEMWATCH_H AND MEMWATCH_LIBRARY ) message( STATUS "Adding global library: ${MEMWATCH_LIBRARY}" ) set_property( CACHE GLOBAL_LIBRARIES PROPERTY VALUE ${GLOBAL_LIBRARIES} ${MEMWATCH_LIBRARY} ) set_property( CACHE GLOBAL_DEFINITIONS PROPERTY VALUE "${GLOBAL_DEFINITIONS} -DMEMWATCH" ) message( STATUS "Enabled the memory library memwatch" ) else() message( FATAL_ERROR "Failed to enable the memory library memwatch" ) endif()elseif( ENABLE_MEMORY STREQUAL "dmalloc" ) CHECK_INCLUDE_FILE( dmalloc.h HAVE_DMALLOC_H ) find_library( DMALLOC_LIBRARY dmalloc ) mark_as_advanced( DMALLOC_LIBRARY ) if( HAVE_DMALLOC_H AND DMALLOC_LIBRARY ) message( STATUS "Adding global library: ${DMALLOC_LIBRARY}" ) set_property( CACHE GLOBAL_LIBRARIES PROPERTY VALUE ${GLOBAL_LIBRARIES} ${DMALLOC_LIBRARY} ) set_property( CACHE GLOBAL_DEFINITIONS PROPERTY VALUE "${GLOBAL_DEFINITIONS} -DDMALLOC -DDMALLOC_FUNC_CHECK" ) message( STATUS "Enabled the memory library dmalloc" ) else() message( FATAL_ERROR "Failed to enable the memory library dmalloc" ) endif()elseif( ENABLE_MEMORY STREQUAL "gcollect" ) CHECK_INCLUDE_FILE( gc.h HAVE_GC_H ) find_library( GC_LIBRARY gc ) mark_as_advanced( GC_LIBRARY ) if( HAVE_GC_H AND GC_LIBRARY ) message( STATUS "Adding global library: ${GC_LIBRARY}" ) set_property( CACHE GLOBAL_LIBRARIES PROPERTY VALUE ${GLOBAL_LIBRARIES} ${GC_LIBRARY} ) set_property( CACHE GLOBAL_DEFINITIONS PROPERTY VALUE "${GLOBAL_DEFINITIONS} -DGCOLLECT" ) message( STATUS "Enabled the memory library gcollect" ) else() message( FATAL_ERROR "Failed to enable the memory library gcollect" ) endif()else() message( FATAL_ERROR "invalid option ENABLE_MEMORY=${ENABLE_MEMORY} (valid options: ${MEMORY_OPTIONS})" )endif()## Enable profiler (default=none)#set( PROFILER_OPTIONS "none;gprof" )set( ENABLE_PROFILER "none" CACHE STRING "enable profiler: ${PROFILER_OPTIONS} (default=none)" )set_property( CACHE ENABLE_PROFILER PROPERTY STRINGS ${PROFILER_OPTIONS} )if( ENABLE_PROFILER STREQUAL "none" ) # no profilerelseif( ENABLE_PROFILER STREQUAL "gprof" ) if( CMAKE_C_COMPILER_ID STREQUAL "GNU" ) if( NOT HAVE_GPROF_FLAGS ) set_property( CACHE CMAKE_C_FLAGS PROPERTY VALUE "${CMAKE_C_FLAGS} -pg" ) set_property( CACHE CMAKE_EXE_LINKER_FLAGS PROPERTY VALUE "${CMAKE_EXE_LINKER_FLAGS} -pg" ) set( HAVE_GPROF_FLAGS ON CACHE INTERNAL "" ) endif() message( STATUS "Enabled the profiler gprof" ) else() message( FATAL_ERROR "Failed to enable the profiler gprof - not GNU" ) endif()else() message( FATAL_ERROR "invalid option ENABLE_PROFILER=${ENABLE_PROFILER} (valid options: ${PROFILER_OPTIONS})" )endif()## Enable extra buildbot code (default=OFF)#option( ENABLE_EXTRA_BUILDBOT_CODE "enable extra buildbot code (default=OFF)" OFF )if( ENABLE_EXTRA_BUILDBOT_CODE ) set_property( CACHE GLOBAL_DEFINITIONS PROPERTY VALUE "${GLOBAL_DEFINITIONS} -DBUILDBOT" ) message( STATUS "Enabled extra BUILDBOT code" )endif()###################################################################### package stuff#set( CPACK_PACKAGE_NAME "rAthena" )set( CPACK_PACKAGE_DESCRIPTION_SUMMARY "MMORPG server package" )set( CPACK_PACKAGE_VERSION ${SVNVERSION} )set( CPACK_RESOURCE_FILE_LICENSE ${CMAKE_CURRENT_SOURCE_DIR}/LICENSE )#set( CPACK_MONOLITHIC_INSTALL ON )include( CPACK OPTIONAL RESULT_VARIABLE HAVE_CPACK )if( HAVE_CPACK ) option( WITH_CPACK "enable building packages with CPack ('package' target)" ON )endif()if( NOT WITH_CPACK ) # empty replacements macro( cpack_add_component_group ) endmacro() macro( cpack_add_component ) endmacro() message( STATUS "Disabled package creation" )endif()set( Runtime "Runtime files" CACHE INTERNAL "" )set( Runtime_base "configurations, dbs, npcs, docs, ..." CACHE INTERNAL "" )set( Runtime_templates "conf/import and save (generated from conf/import-tmpl and save-tmpl)" CACHE INTERNAL "" )cpack_add_component_group( Runtime DESCRIPTION ${Runtime} DISPLAY_NAME "Runtime" )cpack_add_component( Runtime_base DESCRIPTION ${Runtime_base} DISPLAY_NAME "Base files" GROUP Runtime )cpack_add_component( Runtime_templates DESCRIPTION ${Runtime_templates} DISPLAY_NAME "Base templates" GROUP Runtime )set( Development "Development files" CACHE INTERNAL "" )set( Development_base "projects, 3rdparty, sources, templates" CACHE INTERNAL "" )cpack_add_component_group( Development DESCRIPTION ${Development} DISPLAY_NAME "Development" )cpack_add_component( Development_base DESCRIPTION ${Development_base} DISPLAY_NAME "Base files" GROUP Development )## install stuff#option( INSTALL_COMPONENT_RUNTIME "install/package files needed to run the project" ON )option( INSTALL_COMPONENT_DEVELOPMENT "install/package files needed to build the project" OFF )option( INSTALL_TO_PATH "copy files to INSTALL_PATH" OFF )option( INSTALL_TO_SOURCE "copy files to source directory, skips what is already there (${CMAKE_CURRENT_SOURCE_DIR})" OFF )option( INSTALL_TO_SUBDIR "copy files to subdirectory (${CMAKE_CURRENT_BINARY_DIR}/install)" OFF )set( INSTALL_PATH "${CMAKE_INSTALL_PREFIX}" CACHE STRING "install path (only used when INSTALL_TO_PATH is set)" )mark_as_advanced( CMAKE_INSTALL_PREFIX )if( INSTALL_TO_PATH AND NOT ("${INSTALL_TO}" STREQUAL "path") )# changed to path set_property( CACHE INSTALL_TO_SOURCE INSTALL_TO_SUBDIR PROPERTY VALUE OFF )elseif( INSTALL_TO_SOURCE AND NOT ("${INSTALL_TO}" STREQUAL "source") )# changed to source set_property( CACHE INSTALL_TO_PATH INSTALL_TO_SUBDIR PROPERTY VALUE OFF )elseif( INSTALL_TO_SUBDIR AND NOT ("${INSTALL_TO}" STREQUAL "subdir") )# changed to subdir set_property( CACHE INSTALL_TO_PATH INSTALL_TO_SOURCE PROPERTY VALUE OFF )elseif( NOT INSTALL_TO_PATH AND NOT INSTALL_TO_SOURCE AND NOT INSTALL_TO_SUBDIR )# default set_property( CACHE INSTALL_TO_SUBDIR PROPERTY VALUE ON )endif()if( INSTALL_TO_PATH ) set( INSTALL_TO "path" CACHE INTERNAL "" ) set_property( CACHE CMAKE_INSTALL_PREFIX PROPERTY VALUE "${INSTALL_PATH}" )elseif( INSTALL_TO_SOURCE ) set( INSTALL_TO "source" CACHE INTERNAL "" ) set_property( CACHE CMAKE_INSTALL_PREFIX PROPERTY VALUE "${CMAKE_CURRENT_SOURCE_DIR}" )elseif( INSTALL_TO_SUBDIR ) set( INSTALL_TO "subdir" CACHE INTERNAL "" ) set_property( CACHE CMAKE_INSTALL_PREFIX PROPERTY VALUE "${CMAKE_CURRENT_BINARY_DIR}/install" )endif()set( SVN_FOLDER_PATTERN "[.]svn" CACHE STRING "pattern of svn folder that we exclude from instalations" )mark_as_advanced( SVN_FOLDER_PATTERN )set( DEVELOPMENT_FILES "${CMAKE_CURRENT_SOURCE_DIR}/CMakeLists.txt" "${CMAKE_CURRENT_SOURCE_DIR}/configure" "${CMAKE_CURRENT_SOURCE_DIR}/configure.in" "${CMAKE_CURRENT_SOURCE_DIR}/rAthena-9.sln" "${CMAKE_CURRENT_SOURCE_DIR}/rAthena-10.sln" "${CMAKE_CURRENT_SOURCE_DIR}/rAthena-12.sln" "${CMAKE_CURRENT_SOURCE_DIR}/rAthena-13.sln" )set( DEVELOPMENT_DIRECTORIES "3rdparty" "conf/import-tmpl" "conf/msg_conf/import-tmpl" "db/import-tmpl" "src" "vcproj-9" "vcproj-10" )set( RUNTIME_FILES "${CMAKE_CURRENT_SOURCE_DIR}/athena-start" "${CMAKE_CURRENT_SOURCE_DIR}/charserv.bat" "${CMAKE_CURRENT_SOURCE_DIR}/dbghelp.dll" "${CMAKE_CURRENT_SOURCE_DIR}/libmysql.dll" "${CMAKE_CURRENT_SOURCE_DIR}/LICENSE" "${CMAKE_CURRENT_SOURCE_DIR}/logserv.bat" "${CMAKE_CURRENT_SOURCE_DIR}/mapserv.bat" "${CMAKE_CURRENT_SOURCE_DIR}/pcre3.dll" "${CMAKE_CURRENT_SOURCE_DIR}/README.txt" "${CMAKE_CURRENT_SOURCE_DIR}/runserver.bat" "${CMAKE_CURRENT_SOURCE_DIR}/serv.bat" "${CMAKE_CURRENT_SOURCE_DIR}/zlib1.dll" )set( RUNTIME_DIRECTORIES "conf" "db" "doc" "log" "npc" "sql-files" "tools" )if( INSTALL_TO_SOURCE )# skip, already in the source direlse() if( INSTALL_COMPONENT_RUNTIME ) install( FILES ${RUNTIME_FILES} DESTINATION "." COMPONENT Runtime_base ) foreach( DIR IN ITEMS ${RUNTIME_DIRECTORIES} ) if( EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/${DIR}/" ) install( DIRECTORY "${DIR}/" DESTINATION "${DIR}" COMPONENT Runtime_base PATTERN ${SVN_FOLDER_PATTERN} EXCLUDE PATTERN "conf/import-tmpl" EXCLUDE ) else() # create empty directory install( CODE "file(MAKE_DIRECTORY "${ENV}${CMAKE_INSTALL_PREFIX}/${DIR}")" COMPONENT Runtime_base ) endif() endforeach() endif( INSTALL_COMPONENT_RUNTIME ) if( INSTALL_COMPONENT_DEVELOPMENT ) install( FILES ${DEVELOPMENT_FILES} DESTINATION "." COMPONENT Development_base ) foreach( DIR IN ITEMS ${DEVELOPMENT_DIRECTORIES} ) install( DIRECTORY "${DIR}/" DESTINATION "${DIR}" COMPONENT Development_base PATTERN ${SVN_FOLDER_PATTERN} EXCLUDE ) endforeach() endif( INSTALL_COMPONENT_DEVELOPMENT )endif()if( INSTALL_COMPONENT_RUNTIME ) # templates set( _TEMPLATES "conf/import-tmpl" "conf/import" "conf/msg_conf/import-tmpl" "conf/msg_conf/import" "db/import-tmpl" "db/import" ) set( INSTALL_TEMPLATES_FILE "${CMAKE_CURRENT_BINARY_DIR}/InstallTemplates.cmake" ) file( WRITE "${INSTALL_TEMPLATES_FILE}" "macro( INSTALL_TEMPLATE _SRC _DST )n" " set( SRC "${CMAKE_CURRENT_SOURCE_DIR}/${_SRC}" )n" " set( DST "${CMAKE_INSTALL_PREFIX}/${_DST}" )n" " if( EXISTS "${DST}" )n" " message( "-- Already exists: ${DST}" )n" " else()n" " message( "-- Installing template: ${DST}" )n" " execute_process( COMMAND "${CMAKE_COMMAND}" -E copy "${SRC}" "${DST}" )n" " endif()n" "endmacro()n" ) while( _TEMPLATES ) list( GET _TEMPLATES 0 _SRC ) list( GET _TEMPLATES 1 _DST ) list( REMOVE_AT _TEMPLATES 0 1 ) if( IS_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/${_SRC}" ) file( GLOB _PATHS "${CMAKE_CURRENT_SOURCE_DIR}/${_SRC}/*" ) foreach( _PATH IN ITEMS ${_PATHS} ) string( REPLACE "${CMAKE_CURRENT_SOURCE_DIR}/${_SRC}/" "" _PATH "${_PATH}" ) if( NOT "${_PATH}" MATCHES "${SVN_FOLDER_PATTERN}" ) list( APPEND _TEMPLATES "${_SRC}/${_PATH}" "${_DST}/${_PATH}" ) endif() endforeach() else() file( APPEND "${INSTALL_TEMPLATES_FILE}" "INSTALL_TEMPLATE( "${_SRC}" "${_DST}" )n" ) endif() endwhile() install( SCRIPT "${INSTALL_TEMPLATES_FILE}" COMPONENT Runtime_templates )endif( INSTALL_COMPONENT_RUNTIME )## sources#set( TARGET_LIST CACHE INTERNAL "" )add_subdirectory( 3rdparty )add_subdirectory( src )###################################################################### final checks and warnings#if( CMAKE_SIZEOF_VOID_P EQUAL 8 ) message( WARNING "64bit should work, but is not recommended." )elseif( NOT CMAKE_SIZEOF_VOID_P EQUAL 4 ) message( FATAL_ERROR "unexpected architecture (CMAKE_SIZEOF_VOID_P is ${CMAKE_SIZEOF_VOID_P})" )endif()list( LENGTH TARGET_LIST _LEN )if( _LEN EQUAL 0 ) message( FATAL_ERROR "no targets available" )endif()message( STATUS "Available targets:" )foreach( _TARGET IN ITEMS ${TARGET_LIST} ) message( STATUS "t${_TARGET}" )endforeach()

my cmake list

Share this post


Link to post
Share on other sites

Hello i have a error on compiling anyone can help me with these?

 

here is the error on Char-server

 

char_err1_zps01339059.jpg

 

And here is the error for login-server

 

login_err1_zpsaca868c6.jpg

 

Please help me solve this problem in compiling thank you!

Edited by keough

Share this post


Link to post
Share on other sites

@Alexandria I think hercules can block wpe? Do you have patch for updated svn of hercules?

 

 

yes, you can use default anti wpe of hercules.

any Guide :D

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.