Advertisement
Guest User

Untitled

a guest
Jul 14th, 2021
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.42 KB | None | 0 0
  1. CC = g++6
  2.  
  3. DB_VERSION = $(shell cat ../../__REVISION__)
  4.  
  5. INCDIR =
  6. LIBDIR =
  7. BINDIR = ..
  8. OBJDIR = .obj
  9. $(shell if [ ! -d $(OBJDIR) ]; then mkdir $(OBJDIR); fi)
  10.  
  11. # LIST_OF_CONSTANTS BEGIN
  12. ENABLE_GCC_AUTODEPEND = 1
  13. ENABLE_STATIC = 0
  14. # LIST_OF_CONSTANTS END
  15.  
  16. # Depend Path File
  17. ifneq ($(ENABLE_GCC_AUTODEPEND), 1)
  18. DEPFILE = Depend
  19. endif
  20.  
  21. # Project Flags
  22. CFLAGS = -m32 -g -Wall -O2 -pipe -fno-rtti -fno-exceptions -Wno-long-long -pthread -D_THREAD_SAFE -static-libstdc++
  23. CFLAGS += -Wno-deprecated-declarations -Wno-nonnull-compare -Wno-deprecated-declarations -Wno-array-bounds -Wno-address
  24. CXXFLAGS = -std=c++11 -Wl,-rpath=/usr/local/lib/gcc6
  25.  
  26. ifeq ($(ENABLE_STATIC), 1)
  27. CFLAGS += -static
  28. endif
  29.  
  30. # Version defines
  31. CFLAGS += -D__USER__=\"$(USER)\" -D__HOSTNAME__=\"$(HOSTNAME)\" -D__PWD__=\"$(PWD)\" -D__DB_VERSION__=\"$(DB_VERSION)\"
  32.  
  33. # Boost
  34. INCDIR += -I../../../Extern/include/boost
  35.  
  36. # MySQL
  37. INCDIR += -I/usr/local/include/mysql
  38. LIBS += /usr/local/lib/mysql/libmysqlclient.a /usr/lib/libz.a
  39.  
  40. # Project Libraries
  41. INCDIR += -I/usr/local/include
  42. INCDIR += -I../../../Extern/include
  43. LIBDIR += -I../../../Extern/lib
  44.  
  45. LIBDIR += -L../../libthecore/lib -L../../libsql -L../../libpoly -L../../libgame/lib
  46. LIBS += -lthecore -lsql -lpoly -lgame -lm
  47.  
  48. # OpenSSL
  49. LIBS += -lssl -lcrypto
  50.  
  51. #Offlineshop (0 = DISABLED , 1 = ENABLED)
  52. # ENABLE_OFFLINESHOP = 1
  53.  
  54. # ifeq ( $(ENABLE_OFFLINESHOP), 1 )
  55. CFLAGS += -D__ENABLE_NEW_OFFLINESHOP__
  56. # endif
  57.  
  58. # PROJECT_SRC_FILES BEGIN
  59. CPPFILE = Config.cpp NetBase.cpp Peer.cpp PeerBase.cpp Main.cpp Lock.cpp DBManager.cpp \
  60. Cache.cpp LoginData.cpp ClientManager.cpp ClientManagerPlayer.cpp ClientManagerLogin.cpp \
  61. ClientManagerBoot.cpp ClientManagerParty.cpp ClientManagerGuild.cpp GuildManager.cpp HB.cpp \
  62. PrivManager.cpp MoneyLog.cpp ItemAwardManager.cpp ClientManagerEventFlag.cpp Marriage.cpp \
  63. Monarch.cpp BlockCountry.cpp ItemIDRangeManager.cpp ClientManagerHorseName.cpp version.cpp \
  64. AuctionManager.cpp ProtoReader.cpp CsvReader.cpp
  65. # PROJECT_SRC_FILES END
  66.  
  67. # ifeq ( $(ENABLE_OFFLINESHOP), 1 )
  68. CPPFILE += OfflineshopCache.cpp ClientManagerOfflineshop.cpp
  69. # endif
  70.  
  71. # PROJECT_OBJ_FILES BEGIN
  72. CPPOBJS = $(CPPFILE:%.cpp=$(OBJDIR)/%.o)
  73. ifeq ($(ENABLE_GCC_AUTODEPEND), 1)
  74. CPPDEPS = $(CPPOBJS:%.o=%.d)
  75. endif
  76. # PROJECT_OBJ_FILES END
  77.  
  78. # Target Paths
  79. MAIN_TARGET = $(BINDIR)/db_r$(DB_VERSION)
  80. #MAIN_TARGET = $(BINDIR)/db
  81.  
  82. default: $(MAIN_TARGET)
  83.  
  84. $(MAIN_TARGET): $(CPPOBJS)
  85. @echo linking $(MAIN_TARGET)
  86. @$(CC) $(CFLAGS) $(CXXFLAGS) $(LIBDIR) $(CPPOBJS) $(LIBS) -o $(MAIN_TARGET)
  87.  
  88. $(OBJDIR)/%.o: %.cpp
  89. @echo compiling $<
  90. @$(CC) $(CFLAGS) $(CXXFLAGS) $(INCDIR) -c $< -o $@
  91. ifeq ($(ENABLE_GCC_AUTODEPEND), 1)
  92. @$(CC) -MM -MG -MP $(CFLAGS) $(CXXFLAGS) $(INCDIR) -c $< -o $(OBJDIR)/$*.d
  93. @sed -i '' -e's/$*.o:/$(OBJDIR)\/$*.o:/g' $(OBJDIR)/$*.d
  94. endif
  95.  
  96. $(OBJDIR):
  97. @mkdir $(OBJDIR)
  98.  
  99. symlink:
  100. @ln -fs db_r$(DB_VERSION) $(BINDIR)/db_symlink
  101.  
  102. strip:
  103. @cp $(BINDIR)/db_r$(DB_VERSION) $(BINDIR)/db_r
  104. @strip $(BINDIR)/db_r
  105.  
  106. clean:
  107. @rm -f $(CPPOBJS) $(BINDIR)/db_r*
  108.  
  109. dep:
  110. ifeq ($(ENABLE_GCC_AUTODEPEND), 1)
  111. @echo "Note: gcc autodepend is autodetected, so target dep skipped"
  112. else
  113. makedepend -f $(DEPFILE) $(INCDIR) -I/usr/include/c++/3.3 -I/usr/include/c++/4.2 -p$(OBJDIR)/ $(CPPFILE) 2> /dev/null > $(DEPFILE)
  114. endif
  115.  
  116. # AUTO_DEPEND_CHECK BEGIN
  117. ifeq ($(ENABLE_GCC_AUTODEPEND), 1)
  118. sinclude $(CPPDEPS)
  119. else
  120. sinclude $(DEPFILE)
  121. endif
  122. # AUTO_DEPEND_CHECK END
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement