Annotation of sbbs/sbbs3/gnumakefile, revision 1.1

1.1     ! root        1: # GNUmakefile
        !             2: 
        !             3: #########################################################################
        !             4: # Makefile for Synchronet BBS for Unix                                                                 #
        !             5: # For use with GNU make and GNU C Compiler or Borland Kylix C++                        #
        !             6: # @format.tab-size 4, @format.use-tabs true                                                            #
        !             7: #                                                                                                                                              #
        !             8: # gcc: gmake                                                                                                                   #
        !             9: # Borland (still in testing/debuging stage): gmake bcc=1                               #
        !            10: #                                                                                                                                              #
        !            11: # Optional build targets: dlls, utils, mono, all (default)                             #
        !            12: #########################################################################
        !            13: 
        !            14: # $Id: GNUmakefile,v 1.167 2004/12/12 09:25:08 deuce Exp $
        !            15: 
        !            16: SRC_ROOT       =       ..
        !            17: include $(SRC_ROOT)/build/Common.gmake
        !            18: 
        !            19: UTIL_LDFLAGS   +=      $(SMBLIB_LDFLAGS) $(UIFC-MT_LDFLAGS) $(CIOLIB-MT_LDFLAGS) $(XPDEV_LDFLAGS)
        !            20: UTIL_LIBS      +=      $(SMBLIB_LIBS)
        !            21: 
        !            22: ifndef bcc
        !            23:  LDFLAGS       +=      -lm
        !            24:  ifneq ($(os),sunos)
        !            25:   LDFLAGS      +=      -lutil
        !            26:  endif
        !            27: endif
        !            28: 
        !            29: ifeq ($(os),sunos)    # Solaris
        !            30:  LDFLAGS += -lsocket -lnsl -lrt
        !            31: endif
        !            32: 
        !            33: # So far, only QNX has sem_timedwait()
        !            34: ifeq ($(os),qnx)
        !            35:  LDFLAGS += -lsocket
        !            36: endif
        !            37: 
        !            38: ifdef PREFIX
        !            39:  CFLAGS += -DPREFIX=$(PREFIX)
        !            40: endif
        !            41: 
        !            42: ifdef USE_DOSEMU
        !            43:  CFLAGS += -DUSE_DOSEMU
        !            44: endif
        !            45: 
        !            46: ifdef DONT_BLAME_SYNCHRONET
        !            47:  CFLAGS += -DDONT_BLAME_SYNCHRONET
        !            48: endif
        !            49: 
        !            50: # JS and NSPR setup stuff...
        !            51: CFLAGS += -DJAVASCRIPT
        !            52: ifdef JSINCLUDE
        !            53:  CFLAGS += -I$(JSINCLUDE)
        !            54: else
        !            55:  CFLAGS += -I$(SRC_ROOT)$(DIRSEP)..$(DIRSEP)include$(DIRSEP)mozilla$(DIRSEP)js
        !            56: endif
        !            57: ifdef NSPRINCLUDE
        !            58:  CFLAGS += -I$(NSPRINCLUDE)
        !            59: else
        !            60:  # Use local NSPR first...
        !            61:  CFLAGS += -I/usr/local/include -I$(SRC_ROOT)$(DIRSEP)..$(DIRSEP)include$(DIRSEP)mozilla$(DIRSEP)nspr
        !            62: endif
        !            63: ifndef JSLIBDIR
        !            64:  JSLIBDIR := $(SRC_ROOT)$(DIRSEP)..$(DIRSEP)lib$(DIRSEP)mozilla$(DIRSEP)js$(DIRSEP)$(machine).$(BUILD)
        !            65: endif
        !            66: ifndef JSLIB
        !            67:  JSLIB :=      js
        !            68: endif
        !            69: ifndef NSPRDIR
        !            70:  NSPRDIR := $(SRC_ROOT)$(DIRSEP)..$(DIRSEP)lib$(DIRSEP)mozilla$(DIRSEP)nspr$(DIRSEP)$(machine).$(BUILD)
        !            71: endif
        !            72: JS_LDFLAGS += -L$(JSLIBDIR) -l$(JSLIB)
        !            73: #The following is needed for nspr support on Linux
        !            74: ifeq ($(os),linux)
        !            75:  JS_LDFLAGS    +=      -ldl
        !            76: endif
        !            77: JS_LDFLAGS     +=      -L/usr/local/lib -L$(NSPRDIR) -lnspr4
        !            78: 
        !            79: CFLAGS +=      $(JS_CFLAGS)
        !            80: LDFLAGS        +=      $(JS_LDFLAGS)
        !            81: 
        !            82: include sbbsdefs.mk
        !            83: MT_CFLAGS      +=      $(SBBSDEFS)
        !            84: 
        !            85: # Set up LD_RUN_PATH for run-time locating of the .so files
        !            86: PWD    :=      $(shell pwd)
        !            87: LD_RUN_PATH    :=      .:$(PWD)/$(LIBODIR):$(PWD)/$(JSLIBDIR):$(PWD)/$(NSPRDIR)
        !            88: export LD_RUN_PATH
        !            89: 
        !            90: CON_LIBS       = -lsbbs -lftpsrvr -lwebsrvr -lmailsrvr -lservices
        !            91: SHLIBOPTS      :=      -shared
        !            92: ifeq ($(os),darwin)
        !            93:  MKSHLIB               :=      libtool -dynamic -framework System -lcc_dynamic
        !            94:  MKSHPPLIB             :=      libtool -dynamic -framework System -lcc_dynamic -lstdc++
        !            95:  SHLIBOPTS     :=      
        !            96: else
        !            97:  ifeq ($(os),sunos)
        !            98:   MKSHLIB              :=      /usr/ccs/bin/ld -G
        !            99:   MKSHPPLIB            :=      /usr/ccs/bin/ld -G -L/usr/local/lib -lstdc++
        !           100:   SHLIBOPTS    :=      
        !           101:  else
        !           102:   MKSHLIB              :=      $(CC)
        !           103:   MKSHPPLIB            :=      $(CXX)
        !           104:  endif
        !           105: endif
        !           106: 
        !           107: CFLAGS +=      $(UIFC-MT_CFLAGS) $(XPDEV-MT_CFLAGS) $(SMBLIB_CFLAGS) $(CIOLIB-MT_CFLAGS)
        !           108: LDFLAGS +=     $(UIFC-MT_LDFLAGS) $(XPDEV-MT_LDFLAGS) $(SMBLIB_LDFLAGS) $(CIOLIB-MT_LDFLAGS)
        !           109: 
        !           110: # Monolithic Synchronet executable Build Rule
        !           111: $(SBBSMONO): $(MONO_OBJS) $(OBJS)
        !           112:        @echo Linking $@
        !           113:        $(QUIET)$(CXX) -o $@ $(LDFLAGS) $(MT_LDFLAGS) $(MONO_OBJS) $(OBJS) $(SMBLIB_LIBS) $(XPDEV-MT_LIBS)
        !           114: 
        !           115: # Synchronet BBS library Link Rule
        !           116: $(SBBS): $(OBJS) $(LIBS)
        !           117:        @echo Linking $@
        !           118:        $(QUIET)$(MKSHPPLIB) $(LDFLAGS) -o $@ $(OBJS) $(LIBS) $(SHLIBOPTS)
        !           119: 
        !           120: # FTP Server Link Rule
        !           121: $(FTPSRVR): $(MTOBJODIR)/ftpsrvr.o
        !           122:        @echo Linking $@
        !           123:        $(QUIET)$(MKSHLIB) $(LDFLAGS) $(MTOBJODIR)/ftpsrvr.o $(SHLIBOPTS) -o $@
        !           124: 
        !           125: # Mail Server Link Rule
        !           126: $(MAILSRVR): $(MAIL_OBJS)
        !           127:        @echo Linking $@
        !           128:        $(QUIET)$(MKSHLIB) $(LDFLAGS) $(MAIL_OBJS) $(SHLIBOPTS) -o $@
        !           129: 
        !           130: # Mail Server Link Rule
        !           131: $(WEBSRVR): $(WEB_OBJS)
        !           132:        @echo Linking $@
        !           133:        $(QUIET)$(MKSHLIB) $(LDFLAGS) $(WEB_OBJS) $(SHLIBOPTS) -o $@
        !           134: 
        !           135: # Services Link Rule
        !           136: $(SERVICES): $(SERVICE_OBJS)
        !           137:        @echo Linking $@
        !           138:        $(QUIET)$(MKSHLIB) $(LDFLAGS) $(SERVICE_OBJS) $(SHLIBOPTS) -o $@
        !           139: 
        !           140: # Synchronet Console Build Rule
        !           141: $(SBBSCON): $(CON_OBJS) $(SBBS) $(FTPSRVR) $(WEBSRVR) $(MAILSRVR) $(SERVICES)
        !           142:        @echo Linking $@
        !           143:        $(QUIET)$(CC) $(LDFLAGS) $(MT_LDFLAGS) -o $@ $(CON_OBJS) $(CON_LIBS) $(SMBLIB_LIBS) $(XPDEV-MT_LIBS)
        !           144: 
        !           145: # Baja Utility
        !           146: $(BAJA): $(BAJA_OBJS)
        !           147:        @echo Linking $@
        !           148:        $(QUIET)$(CC) $(UTIL_LDFLAGS) -o $@ $(BAJA_OBJS) $(SMBLIB_LIBS) $(XPDEV_LIBS)
        !           149: 
        !           150: # Node Utility
        !           151: $(NODE): $(NODE_OBJS)
        !           152:        @echo Linking $@
        !           153:        $(QUIET)$(CC) $(UTIL_LDFLAGS) -o $@ $(NODE_OBJS) $(XPDEV_LIBS)
        !           154: 
        !           155: # FIXSMB Utility
        !           156: $(FIXSMB): $(FIXSMB_OBJS)
        !           157:        @echo Linking $@
        !           158:        $(QUIET)$(CC) $(UTIL_LDFLAGS) -o $@ $(FIXSMB_OBJS) $(SMBLIB_LIBS) $(XPDEV_LIBS)
        !           159: 
        !           160: # CHKSMB Utility
        !           161: $(CHKSMB): $(CHKSMB_OBJS)
        !           162:        @echo Linking $@
        !           163:        $(QUIET)$(CC) $(UTIL_LDFLAGS) -o $@ $(CHKSMB_OBJS) $(SMBLIB_LIBS) $(XPDEV_LIBS)
        !           164: 
        !           165: # SMB Utility
        !           166: $(SMBUTIL): $(SMBUTIL_OBJS)
        !           167:        @echo Linking $@
        !           168:        $(QUIET)$(CC) $(UTIL_LDFLAGS) -o $@ $(SMBUTIL_OBJS) $(SMBLIB_LIBS) $(XPDEV_LIBS)
        !           169: 
        !           170: # SBBSecho (FidoNet Packet Tosser)
        !           171: $(SBBSECHO): $(SBBSECHO_OBJS)
        !           172:        @echo Linking $@
        !           173:        $(QUIET)$(CC) $(UTIL_LDFLAGS) -o $@ $(SBBSECHO_OBJS) $(SMBLIB_LIBS) $(XPDEV_LIBS)
        !           174: 
        !           175: # SBBSecho Configuration Program
        !           176: $(ECHOCFG): $(ECHOCFG_OBJS)
        !           177:        @echo Linking $@
        !           178:        $(QUIET)$(CC) $(UTIL_LDFLAGS) $(MT_LDFLAGS) -o $@ $(ECHOCFG_OBJS) $(UIFC-MT_LDFLAGS) $(SMBLIB_LIBS) $(UIFC-MT_LIBS) $(CIOLIB-MT_LIBS) $(XPDEV-MT_LIBS)
        !           179: 
        !           180: # ADDFILES
        !           181: $(ADDFILES): $(ADDFILES_OBJS)
        !           182:        @echo Linking $@
        !           183:        $(QUIET)$(CC) $(UTIL_LDFLAGS) -o $@ $(ADDFILES_OBJS) $(XPDEV_LIBS)
        !           184: 
        !           185: # FILELIST
        !           186: $(FILELIST): $(FILELIST_OBJS)
        !           187:        @echo Linking $@
        !           188:        $(QUIET)$(CC) $(UTIL_LDFLAGS) -o $@ $(FILELIST_OBJS) $(XPDEV_LIBS)
        !           189: 
        !           190: # MAKEUSER
        !           191: $(MAKEUSER): $(MAKEUSER_OBJS)
        !           192:        @echo Linking $@
        !           193:        $(QUIET)$(CC) $(UTIL_LDFLAGS) -o $@ $(MAKEUSER_OBJS) $(XPDEV_LIBS)
        !           194: 
        !           195: # JSEXEC
        !           196: $(JSEXEC): $(JSEXEC_OBJS) $(SBBS)
        !           197:        @echo Linking $@
        !           198:        $(QUIET)$(CXX) $(LDFLAGS) $(MT_LDFLAGS) -o $@ $(JSEXEC_OBJS) -lsbbs $(SMBLIB_LIBS) $(XPDEV-MT_LIBS)
        !           199: 
        !           200: # ANS2ASC
        !           201: $(ANS2ASC): $(OBJODIR)/ans2asc.o
        !           202:        @echo Linking $@
        !           203:        $(QUIET)$(CC) $(UTIL_LDFLAGS) -o $@ $(OBJODIR)/ans2asc.o
        !           204: 
        !           205: # ASC2ANS
        !           206: $(ASC2ANS): $(OBJODIR)/asc2ans.o
        !           207:        @echo Linking $@
        !           208:        $(QUIET)$(CC) $(UTIL_LDFLAGS) -o $@ $(OBJODIR)/asc2ans.o

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.