summaryrefslogtreecommitdiff
path: root/src/common/Makefile.in
AgeCommit message (Collapse)AuthorFilesLines
2020-03-30Disable libbacktrace by defaultHaru1-6/+12
It's currently only tested on linux, and doesn't work yet on macOS (tested on 10.15). Further work is necessary Signed-off-by: Haru <haru@dotalux.com>
2020-03-30Fix Makefile-based compilation on platforms that use libbacktrace with a ↵Haru1-1/+1
different executable format than elf
2020-03-30Add libbacktraceAndrei Karas1-5/+16
2020-01-13Update copyright headers for year 2020Haru1-2/+2
Signed-off-by: Haru <haru@dotalux.com>
2018-11-14Add interface for packets in common.Andrei Karas1-5/+5
For now supported only packet length fields.
2018-11-14Add packet len table headers.Andrei Karas1-3/+3
2018-11-13Remove the unused minicore libraries and ifdefsHaru1-14/+2
Minicore was previously used by the tools in the src/tool directory, and is currently unused. Signed-off-by: Haru <haru@dotalux.com>
2018-05-312012-2018 !Maytichai Saowa1-1/+1
2016-04-30Moved HPMHooking-related definitions to plugins/HPMHooking.hHaru1-1/+2
- Plugins that want to make use of the HPMHooking must now include "plugins/HPMHooking.h". Signed-off-by: Haru <haru@dotalux.com>
2016-04-16Updated GNU Make build system to support private headersHaru1-14/+17
Signed-off-by: Haru <haru@dotalux.com>
2016-01-21Enable pcre by default in configure and show error if pcre missing.Andrei Karas1-1/+1
2015-12-15Added GPL-compliant header to all sources and build scriptsHaru1-2/+18
Signed-off-by: Haru <haru@dotalux.com>
2015-12-02Fixed an issue with the HPMDataCheck when PCRE is enabledHaru1-1/+1
- Follow-up to 300668d, thanks to AnnieRuru Signed-off-by: Haru <haru@dotalux.com>
2015-10-19rename malloc.c/h to memmgr.Andrei Karas1-4/+4
2015-08-15HPM compatibility improvementsHaru1-3/+3
Improved compatibility, portability and standards conformance. - Since it is not possible to portably and reliably re-use the core's symbols in plugins, symbols are no longer exported unless explicitly required, in the UNIX builds. This mimics the Windows behavior and adds HPM compatibility to OSes such as FreeBSD. Credits to Andrei Karas for making this possible. - For convenience, it is no longer necessary to call GET_SYMBOL, since the plugin will automatically import all the available symbols when it's loaded, depending on the included headers. - Plugins are now supposed to include the "common/hercules.h" header before including anything else. Incluing common/HPMi.h, common/cbasetypes.h or conf/core.h is no longer necessary, as those are guaranteed to be automatically included by hercules.h. - HPM API version bumped to 1.1. Signed-off-by: Haru <haru@dotalux.com>
2015-06-19Removed ".." from include directivesHaru1-7/+10
- Include directives are now directory-independent. - This will allow building plugins from other directories in future. Signed-off-by: Haru <haru@dotalux.com>
2014-05-25Improved CFLAGS/CPPFLAGS handlingHaru1-3/+5
- Language extensions, such as _GNU_SOURCE are now enabled through CPPFLAGS by the configure script, rather than within the source code. - Moved some configure-time CFLAGS to CPPFLAGS, where appropriate. - Fixes bugreport:8211, thanks to Neoth http://hercules.ws/board/tracker/issue-8211-compiling-warning-in-linux Signed-off-by: Haru <haru@dotalux.com>
2014-04-17Added sysinfo (System Information) functionalitiesHaru1-8/+16
- More informative messages are displayed during startup, to make it easier to identify what system and environment Hercules is running. - Git/SVN revision detection is improved, separating the source version (cached at compile time) from the runtime version, in case the user updated their working copy without recompiling the server. Git version detection is also more reliable, in case a non-default branch is used. - The get_revision script command has been removed (as it was useless to begin with, after the switch to git). An alternative will be provided later, for feature-probing purposes. - The patch was tested under Linux (Gentoo / gcc 4.7 on i686 and x86_64, Debian 6 / gcc 4.4 on i686, Raspbian / gcc 4.6 on armv6l, CentOS 5 / gcc 4.1 on i686, CentOS 6 / gcc 4.4 on x86_64, Linux Mint 15 / gcc 4.7 on x86_64, OS X Mountain Lion / clang 5.0 and gcc 4.8 on x86_64, Cygwin-NT-5.1/gcc 4.8 on i686, FreeBSD 8 / gcc 4.2 on i386, FreeBSD 9 / gcc 4.2 on amd64, FreeBSD 10 / clang 3.3 on amd64, NetBSD 5 / gcc 4.1 on i386, NetBSD 6 / gcc 4.5 on amd64, OpenBSD 5 / gcc 4.2 on amd64, Solaris 11 / gcc 4.5 on i86pc, Windows 7 / Visual Studio 2012 on x86, Windows 8 / Visual Studio 2010 on WOW64, Windows 8.1 / Visual Studio 2013 on WOW64. Signed-off-by: Haru <haru@dotalux.com>
2013-12-17Fixed several compiler warningsHaru1-5/+4
- Warnings detected thanks to Xcode's compiler settings (more strict by default) and clang, warnings mostly but not only related to data sizes on 64 bit systems, that were silenced until now by very lax compiler settings. - This also decreases by a great deal the amount of warnings produced by MSVC in x64 mode (for the adventurous ones who tried that) - Also fixed (or silenced in case of false positives) the potential issues pointed out by the (awesome) clang static analyzer. - Patch co-produced with Ind, I'm merging and committing in his place! Signed-off-by: Haru <haru@dotalux.com>
2013-11-20Added support for 'make plugin.pluginname' to compile only 'pluginname'Haru1-15/+22
- Various Makefile optimizations Signed-off-by: Haru <haru@dotalux.com>
2013-10-05Added 'buildclean' target to all makefilesHaru1-7/+10
- By invoking 'make buildclean', you can clean up all the build intermediate (object) files, without deleting any of the built executables and plugins. - To delete everything, use 'make clean', as you've always done. Signed-off-by: Haru <haru@dotalux.com>
2013-09-21Added Makefile.in change detection (and auto-rebuild) capabilitiesHaru1-6/+9
- If a Makefile.in is changed, ./config.status (or ./configure in case it's not available) will be automatically run to update the Makefiles. - Special thanks to Yommy for the idea. Signed-off-by: Haru <haru@dotalux.com>
2013-09-19Fixed a startup crash due to minicore/regular core mismatchesHaru1-7/+15
- Follow-up to / discovered in babdf60 Signed-off-by: Haru <haru@dotalux.com>
2013-09-18Makefiles improvements and cleanupHaru1-30/+35
This should resolve #138 (please reopen or comment on it if it's not the case). Special thanks to Takkun for helping to reproduce the issue. Signed-off-by: Haru <haru@dotalux.com>
2013-07-21Changed CC to a Makefile variableHaru1-3/+6
- This allows the user to override the compiler at each make invocation (i.e. to run scripts to generate .clang_complete for https://github.com/Rip-Rip/clang_complete ) - Updated .gitignore with a few platform-dependent entries Signed-off-by: Haru <haru@dotalux.com>
2013-07-14Makefile error corrections and minor tweaksHaru1-2/+2
- Fixed some variable names incorrectly entered as literals in target names - This fixes a build failure when trying to build any specific sub-project directly from src/*/ - Removed an old svn-related command from the 'import' recipe - This fixes the build failures when trying to run 'make tools' right after 'make clean' - Removed duplicate entries in the 'clean' recipe for map and login servers Signed-off-by: Haru <haru@dotalux.com>
2013-05-02Introducing Hercules Plugin Manangershennetsind1-1/+1
http://hercules.ws/board/topic/549-introducing-hercules-plugin-manager/ Signed-off-by: shennetsind <ind@henn.et>
2013-03-17Re-Introducing Console Inputshennetsind1-1/+2
It's back. It's efficient. It's awesome. http://hercules.ws/board/topic/272-re-introducing-console-input/ Signed-off-by: shennetsind <ind@henn.et>
2012-11-10Removed lock files since it is no longer being used (bugreport:6767).momacabu1-9/+4
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16898 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-06-11Fixed bugreport:5990 OSX compiling error / warningsblacksirius1-2/+2
Bug in Detail: - Misplaced LDFLAGS uage in some Makefile templates (by passing them to the compiler not to the linker.) - Wrong usage of volatile (a functions return value couldnt be declared to return volatile :D ) - Unsupported Inline ASM using lock xchg operation on llvm-gcc .. (apple loves this ..) Fixed by: - Removed unnecessary LDFLAGS - Removed unnecessary volatile declarator - Replaced InterlockedExchange and InterlockedExchange64 with gcc intrinsics. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16270 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-06-10- added some missing copyrightsblacksirius1-1/+1
- merged (bs-coreoptimize->trunk) generic athena style configuration parser (raconf) - merged (bs-coreoptimize->trunk) threadsafe memory pool (mempool) [i need it for the new 'socket' system] - set svn:eol-style property on newer files were it was missing git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16263 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-06-10added mutex && cond var abstraction ( for pthread / winapi )blacksirius1-1/+1
added type 'sysint' to cbasetypes, which's the width of the platform the release gets compiled for. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16256 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-06-03feature merge bs-coreoptimize->trunk: Atomic Operations, Threading, Spinlock ↵blacksirius1-1/+1
implemnetation. [commit 1/2, windows will followup] - Added Abstractions for Atomic Operations (lock instructions.. windows guy's may now this as Interlocked* stuff ..) - Added Threading api abstraction for Pthread based OS's and Windows - Added Spinlock Implementation (uses CAS / if you need more informations - just read the source - its simple.) - Due to Interlocked(Compare)Exchange64 .. we now require at least i686 (Pentium Pro) for 32Bit Builds :) youll also may feel some performance improvements when using 32bit builsd due to "newer" minimal arch the compiler is now able to use CMOV's .... ================================================================ = Important Warning: ================================================================ Dont use threading at the moment athena is not threadsafe! you'll mess up everthing when accessing data from other threads .., no synchronization is provided. A way to process tasks asynchronously will come up after / with the new socket system. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16221 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-06-01removed the old obsolete Plugin system (commit 1/2)blacksirius1-1/+1
- Removed @ Autoconf/make and CMake, VC Projects will be cleaned in a additional commit. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16203 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-06-01feature merge bs-coreoptimize->trunk: Build Output Cleanup, Makefile Common ↵blacksirius1-13/+24
Dependency Handling - "Optimized" the build Output using Makefiles - to Kernel style build output. - Changed dependency handling to common (core), by generating one lib file (ar) and link against that instead of assigning all deps individually in every subproject - Changed header dependency handling in Subproject makefiles - requiring all common/ headers. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@16198 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-02-16- Removed outdated version number handling (follow-up to r11503).gepard19841-1/+1
- Fixed mapcache compilation issues in Linux. - Added some missing `svn:ignore` properties. - Moved `BLOCK_SIZE` definition from header to source file. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15586 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-02-13 - Added `libconfig` (configuration file library: ↵gepard19841-9/+21
http://www.hyperrealm.com/libconfig/): - Updated VS9/10 project files. - Updated `configure` & `Makefile`s. - New GM, Commands & Permissions system: - '''This is a backwards compatibility breaking update''', please read tid:58877 - Replaced GM levels with Player Groups. - Commands permissions & other privileges now depend on group, not GM level. - `@help` command improvements: requires "commandname" param and shows more detailed info about commands. - Modified GM whisper system to deliver messages basing on permissions, not GM level. - Remote trade request is now possible only if player is allowed to use `@trade` command as well. - Added a proper permission to use `/changemaptype` command. - `clif_displaymessage` is now capable of displaying multiline messages. - All `ACMD_FUNC`s are static now, and the only way to invoke them is with `is_atcommand()`; all client commands (starting with `/`) are now translated into corresponding atcommands (with exception of `/kick` used on monster, as there is no atcommand to kill single monster). - Removed nonsense "bot check" triggering when player blocked (`/ex`) Server. - Merged `@monster`, `@monsterbig` and `@monstersmall`. - Improved flow of atcommand execution to avoid revealing info about online players or existing commands to non-privileged players. - Merged `atcommand` and `charcommand` script functions (`charcommand` is aliased to `atcommand`). - Fixed `atcommand` script function reading unknown memory area (possible access violation). git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15572 54d463be-8e91-2dee-dedb-b68131a5f0ec
2012-01-03removed unix server revision caching -- now it will always display the ↵shennetsind1-14/+2
actual working copy revision (before it required a 'make clean' to drop the cache in unix) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15356 54d463be-8e91-2dee-dedb-b68131a5f0ec
2011-12-11* Merged changes up to eAthena 15014.eathenabot1-2/+2
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@15063 54d463be-8e91-2dee-dedb-b68131a5f0ec
2011-06-27* Added common/random and 3rdparty/mt19937ar to project files, makefiles and ↵flaviojs1-8/+17
configure script. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@14870 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-07-31Reverted r12230. cUSTOM_CFLAGS is redundant since you can achieve the same ↵ultramage1-3/+3
result by setting CFLAGS. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@13022 54d463be-8e91-2dee-dedb-b68131a5f0ec
2008-02-22Added $(CUSTOM_CFLAGS) into all Makefile.in to provide any custom defs ↵Lupus1-3/+3
directly to all sub make files git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12230 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-30* Random cleanup/documentation.FlavioJS1-11/+11
* Made common/Makefile get the svn version from the src directory, not src/common. * Added a warning message to the install and uninstall targets. * Renamed all obj directories to obj_all, obj_txt or obj_sql in the makefiles (if an obj/ directory exists, BSD make enters it before reading the makefile) (run ./configure to update your makefiles, and don't forget to do 'make clean' before updating) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11844 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-26* Normalized makefiles:FlavioJS1-35/+22
- 3 sections: variables, public targets, private/support targets - object files always in a *_OBJ variable - header files always in a *_H variable - object files always generated to an obj* subfolder - all Makefiles can be executed individually, calling other makefiles if necessary - generic object targets when possible git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11812 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-11-19* Nullpo's disabled on release builds.FlavioJS1-1/+1
* Added timestamps to the log of memory leaks. * Moved definition of __func__ to cbasetypes.h. * Configure script updated: - added option to select the memory manager - added option to enable MAPREGSQL - added option to enable DEBUG * common's Makefile deleting svnversion.h on 'clean' target. (run ./configure again to update your Makefile) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11760 54d463be-8e91-2dee-dedb-b68131a5f0ec
2007-09-20* Merged the tmpsql branch:FlavioJS1-0/+95
- Abstraction for the sql code (sql.c/h). - New configure script and makefiles. - Restored txt zeny logging code. (r10814) - Rewrote mapserver's sql code - itemdb, mobdb, mapreg, logs. (r10814) - Fixed a precedence issue (&& and ) in char_sql/char.c. (r10833) - Improved db reading code a bit for consistency. (r11077) - Added separate atcommand for mail deletion. (r11077) - Corrected a few messages that said "new" instead of "unread". (r11077) - Broadcast (*) messages now use "*" as the target's name (not ""). (r11077) - Moved StringBuf code from utils.c/h to strlib.c/h. (r11084 r11117) - Some misc login server cleanups (reformatting etc). (r11136) - Corrected/modified some header entries. (r11141 r11147 11148) - Adjusted VS project files. (r11147) - Adjusted the way the sql charserver does item saving. (r11192) - Corrected usage of reserved keyword 'friend' in mmo.h. (r11192) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@11245 54d463be-8e91-2dee-dedb-b68131a5f0ec