Syriza 235 Posted September 19, 2018 Share Posted September 19, 2018 Hey guys, i need to enable c++11 because i added a system which requires char_item.cpp:7933:2: warning: identifier 'nullptr' is a keyword in C++11 [-Wc++0x-compat] could someone help me, i really dont know what todo i added cflags in makefiles, i dont even know what i have todo. :S i tried to fix this, for like more then 5hours, im not here without even having tried something, it would be nice if someone can help. (Im using Freebsd 11.2) Link to comment Share on other sites More sharing options...
Premium WeedHex 636 Posted September 19, 2018 Premium Share Posted September 19, 2018 “NULL” is older and deprecated. “nullptr” is newer and what you should use. Link to comment Share on other sites More sharing options...
Syriza 235 Posted September 19, 2018 Author Share Posted September 19, 2018 vor 34 Minuten schrieb WeedHex: “NULL” is older and deprecated. “nullptr” is newer and what you should use. that's what i could understand too, im using nullptr but thats a keyword in c++11 HOW can i enable c++11, im not the most experienced freebsd user (You just explained the Syserr, i need someone who can help - dont misunderstand) Link to comment Share on other sites More sharing options...
Premium WeedHex 636 Posted September 19, 2018 Premium Share Posted September 19, 2018 Bro you can try to edit with the older one if you can't update to c++11. (Idk your system). But if you prefer to update c++11 is full of tutorial everywhere. It's for all dev... Link to comment Share on other sites More sharing options...
Syriza 235 Posted September 19, 2018 Author Share Posted September 19, 2018 Gerade eben schrieb WeedHex: Bro you can try to edit with the older one if you can't update to c++11. (Idk your system). But if you prefer to update c++11 is full of tutorial everywhere. It's for all dev... if there is full of tutorial everywhere, could you give me a link please? Link to comment Share on other sites More sharing options...
Syriza 235 Posted September 19, 2018 Author Share Posted September 19, 2018 .... anyone can help me? Link to comment Share on other sites More sharing options...
Former Staff flygun 304 Posted September 19, 2018 Former Staff Share Posted September 19, 2018 add this to the flags in the makefile -std=c++11 you really should update c++11 is now old 1 Link to comment Share on other sites More sharing options...
Syriza 235 Posted September 19, 2018 Author Share Posted September 19, 2018 vor 8 Minuten schrieb flygun: add this to the flags in the makefile -std=c++11 you really should update c++11 is now old In every makefile in folder Src/Server? i dont even know if i have c++11 im not as experienced as you are bro, how do i upgrade, how do i know that i have c++11? i installed gcc49 but i dont know if im using it... could you take a look with teamviewer pls ? Link to comment Share on other sites More sharing options...
Former Staff flygun 304 Posted September 19, 2018 Former Staff Share Posted September 19, 2018 you should read more about programming ... gcc49 actually support c++11 and c++14 you just have to specify it (in makefile )... https://isocpp.org/blog/2014/04/gcc-4.9.0 3 Link to comment Share on other sites More sharing options...
Syriza 235 Posted September 19, 2018 Author Share Posted September 19, 2018 vor 12 Minuten schrieb flygun: you should read more about programming ... gcc49 actually support c++11 and c++14 you just have to specify it (in makefile )... https://isocpp.org/blog/2014/04/gcc-4.9.0 could you pls tell me in which makefile i have to do this? isnt this correct :S? Link to comment Share on other sites More sharing options...
Former Staff flygun 304 Posted September 19, 2018 Former Staff Share Posted September 19, 2018 for your specific problem right now .. put it in the game's makefile 1 Link to comment Share on other sites More sharing options...
Syriza 235 Posted September 19, 2018 Author Share Posted September 19, 2018 vor 8 Minuten schrieb flygun: for your specific problem right now .. put it in the game's makefile i did put it into games makefile but still get that error Link to comment Share on other sites More sharing options...
Former Staff flygun 304 Posted September 19, 2018 Former Staff Share Posted September 19, 2018 CFLAGS = -m32 -g -Wall -O2 -pipe -fexceptions -fno-strict-aliasing -pthread -D_THREAD_SAFE -DNDEBUG -std:c++11 please stop spamming and put all that code in spoiler or just remove it from the topic .. and please read some books or some documentations about programming 2 Link to comment Share on other sites More sharing options...
Syriza 235 Posted September 19, 2018 Author Share Posted September 19, 2018 vor 2 Minuten schrieb flygun: CFLAGS = -m32 -g -Wall -O2 -pipe -fexceptions -fno-strict-aliasing -pthread -D_THREAD_SAFE -DNDEBUG -std:c++11 please stop spamming and put all that code in spoiler or just remove it from the topic .. and please read some books or some documentations about programming sorry, i will do every post in spoiler. 1moment. thats my makefile from game: CC = g++49 CFLAGS = -m32 -g -Wall -O2 -pipe -fexceptions -fno-strict-aliasing -pthread -D_THREAD_SAFE -DNDEBUG -std:c++11 GAME_VERSION := $(shell cat ../../__REVISION__) GccMajorVersion := $(shell expr `$(CC) -dumpversion | cut -f1 -d.`) GccMinorVersion := $(shell expr `$(CC) -dumpversion | cut -f2 -d.`) GccMinorEGT8 := $(shell expr $(GccMinorVersion) \>= 8) INCDIR = LIBDIR = BINDIR = .. OBJDIR = .obj $(shell if [ ! -d $(OBJDIR) ]; then mkdir $(OBJDIR); fi) ## LIST OF CONSTANTS BEGIN ENABLE_GOOGLE_TEST = 0 ENABLE_HSHIELD_SYSTEM = 0 ENABLE_XTRAP_SYSTEM = 0 ENABLE_LUA_5_VERSION = 0 ENABLE_GCC_AUTODEPEND = 1 ENABLE_STATIC = 0 ## LIST OF CONSTANTS END # Depend Path File ifneq ($(ENABLE_GCC_AUTODEPEND), 1) DEPFILE = Depend endif # Standard Libraries LIBS = -lm -lmd # Project Flags CFLAGS = -m32 -g -Wall -O2 -pipe -fexceptions -fno-strict-aliasing -pthread -D_THREAD_SAFE -DNDEBUG ifeq ($(ENABLE_STATIC), 1) CFLAGS += -static endif ifeq ($(GccMinorEGT8), 1) CFLAGS += -Wno-unused-local-typedefs endif # FreeBSD stack protector CFLAGS += -fstack-protector-all # Version defines CFLAGS += -D__USER__=\"$(USER)\" -D__HOSTNAME__=\"$(HOSTNAME)\" -D__PWD__=\"$(PWD)\" -D__GAME_VERSION__=\"$(GAME_VERSION)\" # Boost INCDIR += -I../../../Extern/include/boost # DevIL INCDIR += -I../../../Extern/include/IL LIBS += ../../../Extern/lib/libIL.a\ ../../../Extern/lib/libjasper.a\ ../../../Extern/lib/libpng.a\ ../../../Extern/lib/libtiff.a\ ../../../Extern/lib/libjbig.a\ ../../../Extern/lib/libmng.a\ /usr/lib/liblzma.a\ ../../../Extern/lib/liblcms.a\ ../../../Extern/lib/libjpeg.a # MySQL INCDIR += -I/usr/local/include/mysql LIBS += /usr/local/lib/mysql/libmysqlclient.a /usr/lib/libz.a # CryptoPP LIBS += ../../../Extern/lib/libcryptopp.a # GTest ifeq ($(ENABLE_GOOGLE_TEST), 1) LIBS += /usr/local/lib/libgtest.a CFLAGS += -DENABLE_GOOGLE_TEST endif # HackShield ifeq ($(ENABLE_HSHIELD_SYSTEM), 1) INCDIR += -I../../libhackshield/include CFLAGS += -DENABLE_HSHIELD_SYSTEM endif # XTrap ifeq ($(ENABLE_XTRAP_SYSTEM), 1) INCDIR += -I../../libxtrap/include CFLAGS += -DENABLE_XTRAP_SYSTEM endif # OpenSSL INCDIR += -I/usr/include LIBS += -lssl # LIBS += /usr/lib/libssl.a # Lua CFLAGS += -DENABLE_LUA_5_VERSION=ENABLE_LUA_5_VERSION ifeq ($(ENABLE_LUA_5_VERSION), 2) INCDIR += -I../../liblua/5.2/install/include LIBDIR += -L../../liblua/5.2/install/lib LIBS += ../../liblua/5.2/install/lib/liblua.a else INCDIR += -I../../liblua/5.0/include LIBDIR += -L../../liblua/5.0/lib LIBS += ../../liblua/5.0/lib/liblua.a ../../liblua/5.0/lib/liblualib.a endif # Project Libraries INCDIR += -I../../../Extern/include INCDIR += -I/usr/local/include LIBDIR += -L/usr/local/lib INCDIR += -I../../libserverkey LIBDIR += -L../../libthecore/lib -L../../libpoly -L../../libsql -L../../libgame/lib -L../../libserverkey LIBS += -lthecore -lpoly -lsql -lgame -lserverkey # PROJECT_SRC_FILES BEGIN MAINCPP = main.cpp TESTCPP = test.cpp CFILE = minilzo.c CPPFILE = BattleArena.cpp FSM.cpp MarkConvert.cpp MarkImage.cpp MarkManager.cpp OXEvent.cpp TrafficProfiler.cpp ani.cpp\ arena.cpp banword.cpp battle.cpp blend_item.cpp block_country.cpp buffer_manager.cpp building.cpp castle.cpp\ char.cpp char_affect.cpp char_battle.cpp char_change_empire.cpp char_horse.cpp char_item.cpp char_manager.cpp\ char_quickslot.cpp char_resist.cpp char_skill.cpp char_state.cpp PetSystem.cpp cmd.cpp cmd_emotion.cpp cmd_general.cpp\ cmd_gm.cpp cmd_oxevent.cpp config.cpp constants.cpp crc32.cpp cube.cpp db.cpp desc.cpp\ desc_client.cpp desc_manager.cpp desc_p2p.cpp dev_log.cpp dungeon.cpp empire_text_convert.cpp entity.cpp\ entity_view.cpp event.cpp event_queue.cpp exchange.cpp file_loader.cpp fishing.cpp gm.cpp guild.cpp\ guild_manager.cpp guild_war.cpp horse_rider.cpp horsename_manager.cpp input.cpp input_auth.cpp input_db.cpp\ input_login.cpp input_main.cpp input_p2p.cpp input_teen.cpp input_udp.cpp ip_ban.cpp\ item.cpp item_addon.cpp item_attribute.cpp item_manager.cpp item_manager_idrange.cpp locale.cpp\ locale_service.cpp log.cpp login_data.cpp lzo_manager.cpp marriage.cpp matrix_card.cpp\ messenger_manager.cpp mining.cpp mob_manager.cpp monarch.cpp motion.cpp over9refine.cpp p2p.cpp packet_info.cpp\ party.cpp passpod.cpp pcbang.cpp polymorph.cpp priv_manager.cpp pvp.cpp\ questevent.cpp questlua.cpp questlua_affect.cpp questlua_arena.cpp questlua_ba.cpp questlua_building.cpp\ questlua_danceevent.cpp questlua_dungeon.cpp questlua_forked.cpp questlua_game.cpp questlua_global.cpp\ questlua_guild.cpp questlua_horse.cpp questlua_pet.cpp questlua_item.cpp questlua_marriage.cpp questlua_mgmt.cpp\ questlua_monarch.cpp questlua_npc.cpp questlua_oxevent.cpp questlua_party.cpp questlua_pc.cpp\ questlua_quest.cpp questlua_target.cpp questmanager.cpp questnpc.cpp questpc.cpp\ refine.cpp regen.cpp safebox.cpp sectree.cpp sectree_manager.cpp sequence.cpp shop.cpp\ skill.cpp start_position.cpp target.cpp text_file_loader.cpp trigger.cpp utils.cpp vector.cpp war_map.cpp\ wedding.cpp xmas_event.cpp version.cpp panama.cpp threeway_war.cpp map_location.cpp auth_brazil.cpp\ BlueDragon.cpp BlueDragon_Binder.cpp DragonLair.cpp questlua_dragonlair.cpp\ HackShield.cpp HackShield_Impl.cpp char_hackshield.cpp skill_power.cpp affect.cpp\ SpeedServer.cpp questlua_speedserver.cpp XTrapManager.cpp\ auction_manager.cpp FileMonitor_FreeBSD.cpp ClientPackageCryptInfo.cpp cipher.cpp\ buff_on_attributes.cpp dragon_soul_table.cpp DragonSoul.cpp\ group_text_parse_tree.cpp char_dragonsoul.cpp questlua_dragonsoul.cpp\ shop_manager.cpp shopEx.cpp item_manager_read_tables.cpp shutdown_manager.cpp # PROJECT_SRC_FILES END # PROJECT_OBJ_FILES BEGIN COBJS = $(CFILE:%.c=$(OBJDIR)/%.o) CPPOBJS = $(CPPFILE:%.cpp=$(OBJDIR)/%.o) ifeq ($(ENABLE_GCC_AUTODEPEND), 1) CDEPS = $(COBJS:%.o=%.d) CPPDEPS = $(CPPOBJS:%.o=%.d) endif MAINOBJ = $(MAINCPP:%.cpp=$(OBJDIR)/%.o) ifeq ($(ENABLE_GCC_AUTODEPEND), 1) MAINDEPS = $(MAINOBJ:%.o=%.d) endif TESTOBJ = $(TESTCPP:%.cpp=$(OBJDIR)/%.o) ifeq ($(ENABLE_GCC_AUTODEPEND), 1) TESTDEPS = $(TESTOBJ:%.o=%.d) endif # PROJECT_OBJ_FILES END # Target Paths MAIN_TARGET = $(BINDIR)/game_r$(GAME_VERSION) TEST_TARGET = $(BINDIR)/test_r$(GAME_VERSION) # previously -> default: $(MAIN_TARGET) $(TEST_TARGET) default: $(MAIN_TARGET) test: $(TEST_TARGET) $(OBJDIR)/%.o: %.c @echo compiling $< @$(CC) $(CFLAGS) $(INCDIR) -c $< -o $@ ifeq ($(ENABLE_GCC_AUTODEPEND), 1) @$(CC) -MM -MG -MP $(CFLAGS) $(INCDIR) -c $< -o $(OBJDIR)/$*.d @sed -i '' -e's/$*.o:/$(OBJDIR)\/$*.o:/g' $(OBJDIR)/$*.d endif $(OBJDIR)/%.o: %.cpp @echo compiling $< @$(CC) $(CFLAGS) $(INCDIR) -c $< -o $@ ifeq ($(ENABLE_GCC_AUTODEPEND), 1) @$(CC) -MM -MG -MP $(CFLAGS) $(INCDIR) -c $< -o $(OBJDIR)/$*.d @sed -i '' -e's/$*.o:/$(OBJDIR)\/$*.o:/g' $(OBJDIR)/$*.d endif limit_time: @echo update limit time @python update_limit_time.py $(MAIN_TARGET): $(CPPOBJS) $(COBJS) $(MAINOBJ) @echo linking $(MAIN_TARGET) @$(CC) $(CFLAGS) $(LIBDIR) $(COBJS) $(CPPOBJS) $(MAINOBJ) $(LIBS) -o $(MAIN_TARGET) $(TEST_TARGET): $(TESTCPP) $(CPPOBJS) $(COBJS) $(TESTOBJ) @echo linking $(TEST_TARGET) @$(CC) $(CFLAGS) $(LIBDIR) $(COBJS) $(CPPOBJS) $(TESTOBJ) $(LIBS) -o $(TEST_TARGET) dump: @$(CC) -dM -E - < /dev/null > .nope.nope symlink: @ln -fs game_r$(GAME_VERSION) $(BINDIR)/game_symlink strip: @cp $(MAIN_TARGET) $(BINDIR)/game_r @strip $(BINDIR)/game_r clean: @echo cleaning $(MAIN_TARGET) $(TEST_TARGET) $(OBJDIR) @rm -f $(COBJS) $(CPPOBJS) $(MAINOBJ) $(TESTOBJ) ifeq ($(ENABLE_GCC_AUTODEPEND), 1) @rm -f $(CDEPS) $(CPPDEPS) $(MAINDEPS) $(TESTDEPS) endif @rm -f $(BINDIR)/game_r* $(BINDIR)/test_r* $(BINDIR)/conv cc-ver: @$(CC) -v tag: ctags *.cpp *.h *.c dep: ifeq ($(ENABLE_GCC_AUTODEPEND), 1) @echo "Note: gcc autodepend is autodetected, so target dep skipped" else makedepend -f $(DEPFILE) $(INCDIR) -I/usr/include/c++/3.3 -I/usr/include/c++/4.2 -p$(OBJDIR)/ $(CPPFILE) $(CFILE) $(MAINCPP) $(TESTCPP) 2> /dev/null > $(DEPFILE) endif # AUTO_DEPEND_CHECK BEGIN ifeq ($(ENABLE_GCC_AUTODEPEND), 1) sinclude $(CDEPS) sinclude $(CPPDEPS) sinclude $(MAINDEPS) sinclude $(TESTDEPS) else sinclude $(DEPFILE) endif # AUTO_DEPEND_CHECK END I did that now.. but still dont working Link to comment Share on other sites More sharing options...
Former Staff flygun 304 Posted September 19, 2018 Former Staff Share Posted September 19, 2018 what is not working ? show us the error 1 Link to comment Share on other sites More sharing options...
Syriza 235 Posted September 19, 2018 Author Share Posted September 19, 2018 Gerade eben schrieb flygun: what is not working ? show us the error Compiling Error: char_item.cpp:7933:2: warning: identifier 'nullptr' is a keyword in C++11 [-Wc++0x-compat] if (pkItem == nullptr) ^ char_item.cpp: In member function 'void CHARACTER::AcceRefineCheckin(BYTE, TItemPos)': char_item.cpp:7933:16: error: 'nullptr' was not declared in this scope if (pkItem == nullptr) ^ char_item.cpp:7947:17: error: 'nullptr' was not declared in this scope if (pkItem2 != nullptr) ^ char_item.cpp:8074:25: error: 'nullptr' was not declared in this scope LPITEM pkAcceChosen = nullptr; ^ char_item.cpp:8029:8: warning: unused variable 'otherSlot' [-Wunused-variable] WORD otherSlot = (acceSlot == ACCE_SLOT_RIGHT) ? m_pointsInstant.pAcceSlots[ACCE_SLOT_LEFT] : m_pointsInstant.pAcceSlots[ACCE_SLOT_RIGHT]; ^ char_item.cpp: In member function 'void CHARACTER::AcceRefineAccept(int)': char_item.cpp:8345:18: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if (GetGold() < static_cast<unsigned long long>(cost)) ^ char_item.cpp:8377:7: error: 'random_device' is not a member of 'std' std::random_device rd; ^ char_item.cpp:8378:7: error: 'mt19937' is not a member of 'std' std::mt19937 gen(rd()); ^ char_item.cpp:8379:7: error: 'discrete_distribution' is not a member of 'std' std::discrete_distribution<> d({ 200, 100, 20, 10, 5, 1 }); ^ char_item.cpp:8379:34: error: expected primary-expression before '>' token std::discrete_distribution<> d({ 200, 100, 20, 10, 5, 1 }); ^ char_item.cpp:8379:38: warning: extended initializer lists only available with -std=c++11 or -std=gnu++11 std::discrete_distribution<> d({ 200, 100, 20, 10, 5, 1 }); ^ char_item.cpp:8379:64: error: 'd' was not declared in this scope std::discrete_distribution<> d({ 200, 100, 20, 10, 5, 1 }); ^ char_item.cpp:8381:25: error: 'gen' was not declared in this scope percentageAdd = d(gen); ^ Link to comment Share on other sites More sharing options...
Former Staff flygun 304 Posted September 19, 2018 Former Staff Share Posted September 19, 2018 okay my bad "change : to = in "-std:c++11 " it should look like this -std=c++11 Link to comment Share on other sites More sharing options...
Syriza 235 Posted September 19, 2018 Author Share Posted September 19, 2018 I did what you said bro, but still same error.. ;( see: makefile is correct.. CC = g++49 CFLAGS = -m32 -g -Wall -O2 -pipe -fexceptions -fno-strict-aliasing -pthread -D_THREAD_SAFE -DNDEBUG -std=c++11 GAME_VERSION := $(shell cat ../../__REVISION__) GccMajorVersion := $(shell expr `$(CC) -dumpversion | cut -f1 -d.`) GccMinorVersion := $(shell expr `$(CC) -dumpversion | cut -f2 -d.`) GccMinorEGT8 := $(shell expr $(GccMinorVersion) \>= 8) INCDIR = LIBDIR = BINDIR = .. OBJDIR = .obj $(shell if [ ! -d $(OBJDIR) ]; then mkdir $(OBJDIR); fi) ## LIST OF CONSTANTS BEGIN ENABLE_GOOGLE_TEST = 0 ENABLE_HSHIELD_SYSTEM = 0 ENABLE_XTRAP_SYSTEM = 0 ENABLE_LUA_5_VERSION = 0 ENABLE_GCC_AUTODEPEND = 1 ENABLE_STATIC = 0 ## LIST OF CONSTANTS END # Depend Path File ifneq ($(ENABLE_GCC_AUTODEPEND), 1) DEPFILE = Depend endif # Standard Libraries LIBS = -lm -lmd # Project Flags CFLAGS = -m32 -g -Wall -O2 -pipe -fexceptions -fno-strict-aliasing -pthread -D_THREAD_SAFE -DNDEBUG ifeq ($(ENABLE_STATIC), 1) CFLAGS += -static endif ifeq ($(GccMinorEGT8), 1) CFLAGS += -Wno-unused-local-typedefs endif # FreeBSD stack protector CFLAGS += -fstack-protector-all # Version defines CFLAGS += -D__USER__=\"$(USER)\" -D__HOSTNAME__=\"$(HOSTNAME)\" -D__PWD__=\"$(PWD)\" -D__GAME_VERSION__=\"$(GAME_VERSION)\" # Boost INCDIR += -I../../../Extern/include/boost # DevIL INCDIR += -I../../../Extern/include/IL LIBS += ../../../Extern/lib/libIL.a\ ../../../Extern/lib/libjasper.a\ ../../../Extern/lib/libpng.a\ ../../../Extern/lib/libtiff.a\ ../../../Extern/lib/libjbig.a\ ../../../Extern/lib/libmng.a\ /usr/lib/liblzma.a\ ../../../Extern/lib/liblcms.a\ ../../../Extern/lib/libjpeg.a # MySQL INCDIR += -I/usr/local/include/mysql LIBS += /usr/local/lib/mysql/libmysqlclient.a /usr/lib/libz.a # CryptoPP LIBS += ../../../Extern/lib/libcryptopp.a # GTest ifeq ($(ENABLE_GOOGLE_TEST), 1) LIBS += /usr/local/lib/libgtest.a CFLAGS += -DENABLE_GOOGLE_TEST endif # HackShield ifeq ($(ENABLE_HSHIELD_SYSTEM), 1) INCDIR += -I../../libhackshield/include CFLAGS += -DENABLE_HSHIELD_SYSTEM endif # XTrap ifeq ($(ENABLE_XTRAP_SYSTEM), 1) INCDIR += -I../../libxtrap/include CFLAGS += -DENABLE_XTRAP_SYSTEM endif # OpenSSL INCDIR += -I/usr/include LIBS += -lssl # LIBS += /usr/lib/libssl.a # Lua CFLAGS += -DENABLE_LUA_5_VERSION=ENABLE_LUA_5_VERSION ifeq ($(ENABLE_LUA_5_VERSION), 2) INCDIR += -I../../liblua/5.2/install/include LIBDIR += -L../../liblua/5.2/install/lib LIBS += ../../liblua/5.2/install/lib/liblua.a else INCDIR += -I../../liblua/5.0/include LIBDIR += -L../../liblua/5.0/lib LIBS += ../../liblua/5.0/lib/liblua.a ../../liblua/5.0/lib/liblualib.a endif # Project Libraries INCDIR += -I../../../Extern/include INCDIR += -I/usr/local/include LIBDIR += -L/usr/local/lib INCDIR += -I../../libserverkey LIBDIR += -L../../libthecore/lib -L../../libpoly -L../../libsql -L../../libgame/lib -L../../libserverkey LIBS += -lthecore -lpoly -lsql -lgame -lserverkey # PROJECT_SRC_FILES BEGIN MAINCPP = main.cpp TESTCPP = test.cpp CFILE = minilzo.c CPPFILE = BattleArena.cpp FSM.cpp MarkConvert.cpp MarkImage.cpp MarkManager.cpp OXEvent.cpp TrafficProfiler.cpp ani.cpp\ arena.cpp banword.cpp battle.cpp blend_item.cpp block_country.cpp buffer_manager.cpp building.cpp castle.cpp\ char.cpp char_affect.cpp char_battle.cpp char_change_empire.cpp char_horse.cpp char_item.cpp char_manager.cpp\ char_quickslot.cpp char_resist.cpp char_skill.cpp char_state.cpp PetSystem.cpp cmd.cpp cmd_emotion.cpp cmd_general.cpp\ cmd_gm.cpp cmd_oxevent.cpp config.cpp constants.cpp crc32.cpp cube.cpp db.cpp desc.cpp\ desc_client.cpp desc_manager.cpp desc_p2p.cpp dev_log.cpp dungeon.cpp empire_text_convert.cpp entity.cpp\ entity_view.cpp event.cpp event_queue.cpp exchange.cpp file_loader.cpp fishing.cpp gm.cpp guild.cpp\ guild_manager.cpp guild_war.cpp horse_rider.cpp horsename_manager.cpp input.cpp input_auth.cpp input_db.cpp\ input_login.cpp input_main.cpp input_p2p.cpp input_teen.cpp input_udp.cpp ip_ban.cpp\ item.cpp item_addon.cpp item_attribute.cpp item_manager.cpp item_manager_idrange.cpp locale.cpp\ locale_service.cpp log.cpp login_data.cpp lzo_manager.cpp marriage.cpp matrix_card.cpp\ messenger_manager.cpp mining.cpp mob_manager.cpp monarch.cpp motion.cpp over9refine.cpp p2p.cpp packet_info.cpp\ party.cpp passpod.cpp pcbang.cpp polymorph.cpp priv_manager.cpp pvp.cpp\ questevent.cpp questlua.cpp questlua_affect.cpp questlua_arena.cpp questlua_ba.cpp questlua_building.cpp\ questlua_danceevent.cpp questlua_dungeon.cpp questlua_forked.cpp questlua_game.cpp questlua_global.cpp\ questlua_guild.cpp questlua_horse.cpp questlua_pet.cpp questlua_item.cpp questlua_marriage.cpp questlua_mgmt.cpp\ questlua_monarch.cpp questlua_npc.cpp questlua_oxevent.cpp questlua_party.cpp questlua_pc.cpp\ questlua_quest.cpp questlua_target.cpp questmanager.cpp questnpc.cpp questpc.cpp\ refine.cpp regen.cpp safebox.cpp sectree.cpp sectree_manager.cpp sequence.cpp shop.cpp\ skill.cpp start_position.cpp target.cpp text_file_loader.cpp trigger.cpp utils.cpp vector.cpp war_map.cpp\ wedding.cpp xmas_event.cpp version.cpp panama.cpp threeway_war.cpp map_location.cpp auth_brazil.cpp\ BlueDragon.cpp BlueDragon_Binder.cpp DragonLair.cpp questlua_dragonlair.cpp\ HackShield.cpp HackShield_Impl.cpp char_hackshield.cpp skill_power.cpp affect.cpp\ SpeedServer.cpp questlua_speedserver.cpp XTrapManager.cpp\ auction_manager.cpp FileMonitor_FreeBSD.cpp ClientPackageCryptInfo.cpp cipher.cpp\ buff_on_attributes.cpp dragon_soul_table.cpp DragonSoul.cpp\ group_text_parse_tree.cpp char_dragonsoul.cpp questlua_dragonsoul.cpp\ shop_manager.cpp shopEx.cpp item_manager_read_tables.cpp shutdown_manager.cpp # PROJECT_SRC_FILES END # PROJECT_OBJ_FILES BEGIN COBJS = $(CFILE:%.c=$(OBJDIR)/%.o) CPPOBJS = $(CPPFILE:%.cpp=$(OBJDIR)/%.o) ifeq ($(ENABLE_GCC_AUTODEPEND), 1) CDEPS = $(COBJS:%.o=%.d) CPPDEPS = $(CPPOBJS:%.o=%.d) endif MAINOBJ = $(MAINCPP:%.cpp=$(OBJDIR)/%.o) ifeq ($(ENABLE_GCC_AUTODEPEND), 1) MAINDEPS = $(MAINOBJ:%.o=%.d) endif TESTOBJ = $(TESTCPP:%.cpp=$(OBJDIR)/%.o) ifeq ($(ENABLE_GCC_AUTODEPEND), 1) TESTDEPS = $(TESTOBJ:%.o=%.d) endif # PROJECT_OBJ_FILES END # Target Paths MAIN_TARGET = $(BINDIR)/game_r$(GAME_VERSION) TEST_TARGET = $(BINDIR)/test_r$(GAME_VERSION) # previously -> default: $(MAIN_TARGET) $(TEST_TARGET) default: $(MAIN_TARGET) test: $(TEST_TARGET) $(OBJDIR)/%.o: %.c @echo compiling $< @$(CC) $(CFLAGS) $(INCDIR) -c $< -o $@ ifeq ($(ENABLE_GCC_AUTODEPEND), 1) @$(CC) -MM -MG -MP $(CFLAGS) $(INCDIR) -c $< -o $(OBJDIR)/$*.d @sed -i '' -e's/$*.o:/$(OBJDIR)\/$*.o:/g' $(OBJDIR)/$*.d endif $(OBJDIR)/%.o: %.cpp @echo compiling $< @$(CC) $(CFLAGS) $(INCDIR) -c $< -o $@ ifeq ($(ENABLE_GCC_AUTODEPEND), 1) @$(CC) -MM -MG -MP $(CFLAGS) $(INCDIR) -c $< -o $(OBJDIR)/$*.d @sed -i '' -e's/$*.o:/$(OBJDIR)\/$*.o:/g' $(OBJDIR)/$*.d endif limit_time: @echo update limit time @python update_limit_time.py $(MAIN_TARGET): $(CPPOBJS) $(COBJS) $(MAINOBJ) @echo linking $(MAIN_TARGET) @$(CC) $(CFLAGS) $(LIBDIR) $(COBJS) $(CPPOBJS) $(MAINOBJ) $(LIBS) -o $(MAIN_TARGET) $(TEST_TARGET): $(TESTCPP) $(CPPOBJS) $(COBJS) $(TESTOBJ) @echo linking $(TEST_TARGET) @$(CC) $(CFLAGS) $(LIBDIR) $(COBJS) $(CPPOBJS) $(TESTOBJ) $(LIBS) -o $(TEST_TARGET) dump: @$(CC) -dM -E - < /dev/null > .nope.nope symlink: @ln -fs game_r$(GAME_VERSION) $(BINDIR)/game_symlink strip: @cp $(MAIN_TARGET) $(BINDIR)/game_r @strip $(BINDIR)/game_r clean: @echo cleaning $(MAIN_TARGET) $(TEST_TARGET) $(OBJDIR) @rm -f $(COBJS) $(CPPOBJS) $(MAINOBJ) $(TESTOBJ) ifeq ($(ENABLE_GCC_AUTODEPEND), 1) @rm -f $(CDEPS) $(CPPDEPS) $(MAINDEPS) $(TESTDEPS) endif @rm -f $(BINDIR)/game_r* $(BINDIR)/test_r* $(BINDIR)/conv cc-ver: @$(CC) -v tag: ctags *.cpp *.h *.c dep: ifeq ($(ENABLE_GCC_AUTODEPEND), 1) @echo "Note: gcc autodepend is autodetected, so target dep skipped" else makedepend -f $(DEPFILE) $(INCDIR) -I/usr/include/c++/3.3 -I/usr/include/c++/4.2 -p$(OBJDIR)/ $(CPPFILE) $(CFILE) $(MAINCPP) $(TESTCPP) 2> /dev/null > $(DEPFILE) endif # AUTO_DEPEND_CHECK BEGIN ifeq ($(ENABLE_GCC_AUTODEPEND), 1) sinclude $(CDEPS) sinclude $(CPPDEPS) sinclude $(MAINDEPS) sinclude $(TESTDEPS) else sinclude $(DEPFILE) endif # AUTO_DEPEND_CHECK END Link to comment Share on other sites More sharing options...
Former Staff flygun 304 Posted September 19, 2018 Former Staff Share Posted September 19, 2018 Spoiler CC = g++49 GAME_VERSION := $(shell cat ../../__REVISION__) GccMajorVersion := $(shell expr `$(CC) -dumpversion | cut -f1 -d.`) GccMinorVersion := $(shell expr `$(CC) -dumpversion | cut -f2 -d.`) GccMinorEGT8 := $(shell expr $(GccMinorVersion) \>= 8) INCDIR = LIBDIR = BINDIR = .. OBJDIR = .obj $(shell if [ ! -d $(OBJDIR) ]; then mkdir $(OBJDIR); fi) ## LIST OF CONSTANTS BEGIN ENABLE_GOOGLE_TEST = 0 ENABLE_HSHIELD_SYSTEM = 0 ENABLE_XTRAP_SYSTEM = 0 ENABLE_LUA_5_VERSION = 0 ENABLE_GCC_AUTODEPEND = 1 ENABLE_STATIC = 0 ## LIST OF CONSTANTS END # Depend Path File ifneq ($(ENABLE_GCC_AUTODEPEND), 1) DEPFILE = Depend endif # Standard Libraries LIBS = -lm -lmd # Project Flags CFLAGS = -m32 -g -Wall -O2 -pipe -fexceptions -fno-strict-aliasing -pthread -D_THREAD_SAFE -DNDEBUG -std=c++11 ifeq ($(ENABLE_STATIC), 1) CFLAGS += -static endif ifeq ($(GccMinorEGT8), 1) CFLAGS += -Wno-unused-local-typedefs endif # FreeBSD stack protector CFLAGS += -fstack-protector-all # Version defines CFLAGS += -D__USER__=\"$(USER)\" -D__HOSTNAME__=\"$(HOSTNAME)\" -D__PWD__=\"$(PWD)\" -D__GAME_VERSION__=\"$(GAME_VERSION)\" # Boost INCDIR += -I../../../Extern/include/boost # DevIL INCDIR += -I../../../Extern/include/IL LIBS += ../../../Extern/lib/libIL.a\ ../../../Extern/lib/libjasper.a\ ../../../Extern/lib/libpng.a\ ../../../Extern/lib/libtiff.a\ ../../../Extern/lib/libjbig.a\ ../../../Extern/lib/libmng.a\ /usr/lib/liblzma.a\ ../../../Extern/lib/liblcms.a\ ../../../Extern/lib/libjpeg.a # MySQL INCDIR += -I/usr/local/include/mysql LIBS += /usr/local/lib/mysql/libmysqlclient.a /usr/lib/libz.a # CryptoPP LIBS += ../../../Extern/lib/libcryptopp.a # GTest ifeq ($(ENABLE_GOOGLE_TEST), 1) LIBS += /usr/local/lib/libgtest.a CFLAGS += -DENABLE_GOOGLE_TEST endif # HackShield ifeq ($(ENABLE_HSHIELD_SYSTEM), 1) INCDIR += -I../../libhackshield/include CFLAGS += -DENABLE_HSHIELD_SYSTEM endif # XTrap ifeq ($(ENABLE_XTRAP_SYSTEM), 1) INCDIR += -I../../libxtrap/include CFLAGS += -DENABLE_XTRAP_SYSTEM endif # OpenSSL INCDIR += -I/usr/include LIBS += -lssl # LIBS += /usr/lib/libssl.a # Lua CFLAGS += -DENABLE_LUA_5_VERSION=ENABLE_LUA_5_VERSION ifeq ($(ENABLE_LUA_5_VERSION), 2) INCDIR += -I../../liblua/5.2/install/include LIBDIR += -L../../liblua/5.2/install/lib LIBS += ../../liblua/5.2/install/lib/liblua.a else INCDIR += -I../../liblua/5.0/include LIBDIR += -L../../liblua/5.0/lib LIBS += ../../liblua/5.0/lib/liblua.a ../../liblua/5.0/lib/liblualib.a endif # Project Libraries INCDIR += -I../../../Extern/include INCDIR += -I/usr/local/include LIBDIR += -L/usr/local/lib INCDIR += -I../../libserverkey LIBDIR += -L../../libthecore/lib -L../../libpoly -L../../libsql -L../../libgame/lib -L../../libserverkey LIBS += -lthecore -lpoly -lsql -lgame -lserverkey # PROJECT_SRC_FILES BEGIN MAINCPP = main.cpp TESTCPP = test.cpp CFILE = minilzo.c CPPFILE = BattleArena.cpp FSM.cpp MarkConvert.cpp MarkImage.cpp MarkManager.cpp OXEvent.cpp TrafficProfiler.cpp ani.cpp\ arena.cpp banword.cpp battle.cpp blend_item.cpp block_country.cpp buffer_manager.cpp building.cpp castle.cpp\ char.cpp char_affect.cpp char_battle.cpp char_change_empire.cpp char_horse.cpp char_item.cpp char_manager.cpp\ char_quickslot.cpp char_resist.cpp char_skill.cpp char_state.cpp PetSystem.cpp cmd.cpp cmd_emotion.cpp cmd_general.cpp\ cmd_gm.cpp cmd_oxevent.cpp config.cpp constants.cpp crc32.cpp cube.cpp db.cpp desc.cpp\ desc_client.cpp desc_manager.cpp desc_p2p.cpp dev_log.cpp dungeon.cpp empire_text_convert.cpp entity.cpp\ entity_view.cpp event.cpp event_queue.cpp exchange.cpp file_loader.cpp fishing.cpp gm.cpp guild.cpp\ guild_manager.cpp guild_war.cpp horse_rider.cpp horsename_manager.cpp input.cpp input_auth.cpp input_db.cpp\ input_login.cpp input_main.cpp input_p2p.cpp input_teen.cpp input_udp.cpp ip_ban.cpp\ item.cpp item_addon.cpp item_attribute.cpp item_manager.cpp item_manager_idrange.cpp locale.cpp\ locale_service.cpp log.cpp login_data.cpp lzo_manager.cpp marriage.cpp matrix_card.cpp\ messenger_manager.cpp mining.cpp mob_manager.cpp monarch.cpp motion.cpp over9refine.cpp p2p.cpp packet_info.cpp\ party.cpp passpod.cpp pcbang.cpp polymorph.cpp priv_manager.cpp pvp.cpp\ questevent.cpp questlua.cpp questlua_affect.cpp questlua_arena.cpp questlua_ba.cpp questlua_building.cpp\ questlua_danceevent.cpp questlua_dungeon.cpp questlua_forked.cpp questlua_game.cpp questlua_global.cpp\ questlua_guild.cpp questlua_horse.cpp questlua_pet.cpp questlua_item.cpp questlua_marriage.cpp questlua_mgmt.cpp\ questlua_monarch.cpp questlua_npc.cpp questlua_oxevent.cpp questlua_party.cpp questlua_pc.cpp\ questlua_quest.cpp questlua_target.cpp questmanager.cpp questnpc.cpp questpc.cpp\ refine.cpp regen.cpp safebox.cpp sectree.cpp sectree_manager.cpp sequence.cpp shop.cpp\ skill.cpp start_position.cpp target.cpp text_file_loader.cpp trigger.cpp utils.cpp vector.cpp war_map.cpp\ wedding.cpp xmas_event.cpp version.cpp panama.cpp threeway_war.cpp map_location.cpp auth_brazil.cpp\ BlueDragon.cpp BlueDragon_Binder.cpp DragonLair.cpp questlua_dragonlair.cpp\ HackShield.cpp HackShield_Impl.cpp char_hackshield.cpp skill_power.cpp affect.cpp\ SpeedServer.cpp questlua_speedserver.cpp XTrapManager.cpp\ auction_manager.cpp FileMonitor_FreeBSD.cpp ClientPackageCryptInfo.cpp cipher.cpp\ buff_on_attributes.cpp dragon_soul_table.cpp DragonSoul.cpp\ group_text_parse_tree.cpp char_dragonsoul.cpp questlua_dragonsoul.cpp\ shop_manager.cpp shopEx.cpp item_manager_read_tables.cpp shutdown_manager.cpp # PROJECT_SRC_FILES END # PROJECT_OBJ_FILES BEGIN COBJS = $(CFILE:%.c=$(OBJDIR)/%.o) CPPOBJS = $(CPPFILE:%.cpp=$(OBJDIR)/%.o) ifeq ($(ENABLE_GCC_AUTODEPEND), 1) CDEPS = $(COBJS:%.o=%.d) CPPDEPS = $(CPPOBJS:%.o=%.d) endif MAINOBJ = $(MAINCPP:%.cpp=$(OBJDIR)/%.o) ifeq ($(ENABLE_GCC_AUTODEPEND), 1) MAINDEPS = $(MAINOBJ:%.o=%.d) endif TESTOBJ = $(TESTCPP:%.cpp=$(OBJDIR)/%.o) ifeq ($(ENABLE_GCC_AUTODEPEND), 1) TESTDEPS = $(TESTOBJ:%.o=%.d) endif # PROJECT_OBJ_FILES END # Target Paths MAIN_TARGET = $(BINDIR)/game_r$(GAME_VERSION) TEST_TARGET = $(BINDIR)/test_r$(GAME_VERSION) # previously -> default: $(MAIN_TARGET) $(TEST_TARGET) default: $(MAIN_TARGET) test: $(TEST_TARGET) $(OBJDIR)/%.o: %.c @echo compiling $< @$(CC) $(CFLAGS) $(INCDIR) -c $< -o $@ ifeq ($(ENABLE_GCC_AUTODEPEND), 1) @$(CC) -MM -MG -MP $(CFLAGS) $(INCDIR) -c $< -o $(OBJDIR)/$*.d @sed -i '' -e's/$*.o:/$(OBJDIR)\/$*.o:/g' $(OBJDIR)/$*.d endif $(OBJDIR)/%.o: %.cpp @echo compiling $< @$(CC) $(CFLAGS) $(INCDIR) -c $< -o $@ ifeq ($(ENABLE_GCC_AUTODEPEND), 1) @$(CC) -MM -MG -MP $(CFLAGS) $(INCDIR) -c $< -o $(OBJDIR)/$*.d @sed -i '' -e's/$*.o:/$(OBJDIR)\/$*.o:/g' $(OBJDIR)/$*.d endif limit_time: @echo update limit time @python update_limit_time.py $(MAIN_TARGET): $(CPPOBJS) $(COBJS) $(MAINOBJ) @echo linking $(MAIN_TARGET) @$(CC) $(CFLAGS) $(LIBDIR) $(COBJS) $(CPPOBJS) $(MAINOBJ) $(LIBS) -o $(MAIN_TARGET) $(TEST_TARGET): $(TESTCPP) $(CPPOBJS) $(COBJS) $(TESTOBJ) @echo linking $(TEST_TARGET) @$(CC) $(CFLAGS) $(LIBDIR) $(COBJS) $(CPPOBJS) $(TESTOBJ) $(LIBS) -o $(TEST_TARGET) dump: @$(CC) -dM -E - < /dev/null > .nope.nope symlink: @ln -fs game_r$(GAME_VERSION) $(BINDIR)/game_symlink strip: @cp $(MAIN_TARGET) $(BINDIR)/game_r @strip $(BINDIR)/game_r clean: @echo cleaning $(MAIN_TARGET) $(TEST_TARGET) $(OBJDIR) @rm -f $(COBJS) $(CPPOBJS) $(MAINOBJ) $(TESTOBJ) ifeq ($(ENABLE_GCC_AUTODEPEND), 1) @rm -f $(CDEPS) $(CPPDEPS) $(MAINDEPS) $(TESTDEPS) endif @rm -f $(BINDIR)/game_r* $(BINDIR)/test_r* $(BINDIR)/conv cc-ver: @$(CC) -v tag: ctags *.cpp *.h *.c dep: ifeq ($(ENABLE_GCC_AUTODEPEND), 1) @echo "Note: gcc autodepend is autodetected, so target dep skipped" else makedepend -f $(DEPFILE) $(INCDIR) -I/usr/include/c++/3.3 -I/usr/include/c++/4.2 -p$(OBJDIR)/ $(CPPFILE) $(CFILE) $(MAINCPP) $(TESTCPP) 2> /dev/null > $(DEPFILE) endif # AUTO_DEPEND_CHECK BEGIN ifeq ($(ENABLE_GCC_AUTODEPEND), 1) sinclude $(CDEPS) sinclude $(CPPDEPS) sinclude $(MAINDEPS) sinclude $(TESTDEPS) else sinclude $(DEPFILE) endif # AUTO_DEPEND_CHECK END 1 Link to comment Share on other sites More sharing options...
Recommended Posts
Please sign in to comment
You will be able to leave a comment after signing in
Sign In Now