Makefile
上传用户:allwinjm
上传日期:2021-08-29
资源大小:99k
文件大小:3k
源码类别:

Internet/IE编程

开发平台:

Unix_Linux

  1. #************************************************************************
  2. #* RSTP library - Rapid Spanning Tree (802.1t, 802.1w)
  3. #* Copyright (C) 2001-2003 Optical Access
  4. #* Author: Alex Rozin
  5. #*
  6. #* This file is part of RSTP library.
  7. #*
  8. #* RSTP library is free software; you can redistribute it and/or modify it
  9. #* under the terms of the GNU Lesser General Public License as published by the
  10. #* Free Software Foundation; version 2.1
  11. #*
  12. #* RSTP library is distributed in the hope that it will be useful, but
  13. #* WITHOUT ANY WARRANTY; without even the implied warranty of
  14. #* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser
  15. #* General Public License for more details.
  16. #*
  17. #* You should have received a copy of the GNU Lesser General Public License
  18. #* along with RSTP library; see the file COPYING.  If not, write to the Free
  19. #* Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
  20. #* 02111-1307, USA.
  21. #**********************************************************************/
  22. DEFS=
  23. CC = gcc #-E
  24. #CFLAGS = -g -Wall -D_REENTRANT -D__LINUX__ -DSTP_DBG=1 -DOLD_READLINE
  25. CFLAGS = -g -Wall -D_REENTRANT -D__LINUX__ -DSTP_DBG=1 # -DOLD_READLINE
  26. INCLUDES = -I.
  27. COMPILE = $(CC) $(DEFS) $(INCLUDES) $(CFLAGS)
  28. LIBS= -lutil -lreadline -ltermcap -lpthread
  29. AR = ar
  30. #ARFLAGS = rcs
  31. ARFLAGS = cru
  32. RANLIB = ranlib
  33. SOFLAGS =  -nostartfiles -shared
  34. EXECUTABLE= bridge mngr
  35. RSTPLIBS = rstp
  36. RSTPLIBF = lib$(RSTPLIBS).a
  37. UIDLIBS  = uid
  38. UIDLIBF  = lib$(UIDLIBS).a
  39. CLILIBS  = cli
  40. CLILIBF  = lib$(CLILIBS).a
  41. MNGRCFILES = mngr.c
  42. MNGROFILES = mngr.o
  43. BRIDGECFILES = bridge.c stp_cli.c stp_to.c
  44. BRIDGEOFILES = bridge.o stp_cli.o stp_to.o
  45. RSTPCFILES = statmch.c stpm.c port.c stpmgmt.c stp_in.c rolesel.c 
  46. vector.c times.c 
  47. portinfo.c roletrns.c sttrans.c topoch.c migrate.c transmit.c 
  48. p2p.c edge.c pcost.c
  49. RSTPOFILES = statmch.o stpm.o port.o stpmgmt.o stp_in.o rolesel.o 
  50. vector.o times.o 
  51. portinfo.o roletrns.o sttrans.o topoch.o migrate.o transmit.o 
  52. p2p.o edge.o pcost.o
  53. UIDCFILES = uid_sock.c
  54. UIDOFILES = uid_sock.o
  55. CLICFILES = cli.c
  56. CLIOFILES = cli.o
  57. CFILES= $(MNGRCFILES) $(BRIDGECFILES) $(RSTPCFILES) $(UIDCFILES) $(CLICFILES)
  58. OFILES= $(MNGROFILES) $(BRIDGEOFILES) $(RSTPOFILES) $(UIDOFILES) $(CLIOFILES)
  59. .SUFFIXES: .S .c .o .s
  60. all: depend $(EXECUTABLE)
  61. mngr: ${MNGROFILES} $(UIDLIBF) $(CLILIBF)
  62. $(CC) ${MNGROFILES} $(LIBS) -L. -l$(UIDLIBS) -l$(CLILIBS) -o $@
  63. bridge: ${BRIDGEOFILES} $(RSTPLIBF) $(UIDLIBF) $(CLILIBF)
  64. $(CC) ${BRIDGEOFILES} $(LIBS) -L. -l$(RSTPLIBS) -l$(UIDLIBS) -l$(CLILIBS) -o $@
  65. $(RSTPLIBF): ${RSTPOFILES}
  66. -rm -f $@
  67. $(AR) $(ARFLAGS) $@ $(RSTPOFILES)
  68. $(RANLIB)  $@
  69. $(UIDLIBF): ${UIDOFILES}
  70. -rm -f $@
  71. $(AR) $(ARFLAGS) $@ $(UIDOFILES)
  72. $(RANLIB) $@
  73. $(CLILIBF): $(CLIOFILES)
  74. -rm -f $@
  75. $(AR) $(ARFLAGS) $@ $(CLIOFILES)
  76. $(RANLIB) $@
  77. clean:
  78. rm -f all *.o *.a *~ $(EXECUTABLE) *.bak make.depend
  79. depend:
  80. echo "# DO NOT DELETE THIS LINE -- make  depend  depends  on it." > make.depend
  81. makedepend -- $(DEFS) $(INCLUDES) $(CFLAGS) -- $(CFILES) -f make.depend
  82. -include make.depend