Makefile 2.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. # Copyright (c) 2008 Allied Telesis Labs NZ.
  2. #
  3. # Author: Angus Salkeld
  4. #
  5. # All rights reserved.
  6. #
  7. # This software licensed under BSD license, the text of which follows:
  8. #
  9. # Redistribution and use in source and binary forms, with or without
  10. # modification, are permitted provided that the following conditions are met:
  11. #
  12. # - Redistributions of source code must retain the above copyright notice,
  13. # this list of conditions and the following disclaimer.
  14. # - Redistributions in binary form must reproduce the above copyright notice,
  15. # this list of conditions and the following disclaimer in the documentation
  16. # and/or other materials provided with the distribution.
  17. # - Neither the name of the MontaVista Software, Inc. nor the names of its
  18. # contributors may be used to endorse or promote products derived from this
  19. # software without specific prior written permission.
  20. #
  21. # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
  22. # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  23. # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  24. # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
  25. # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
  26. # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
  27. # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
  28. # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
  29. # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
  30. # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
  31. # THE POSSIBILITY OF SUCH DAMAGE.
  32. # Include configuration
  33. #
  34. srcdir ?= $(CURDIR)/../
  35. subdir ?= apps/
  36. include $(srcdir)Makefile.inc
  37. ifeq (${COROSYNC_COMPAT}, SOLARIS)
  38. override LDFLAGS += -lnsl -lsocket -lrt
  39. endif
  40. LIBS = ../lib/libconfdb.a ../lib/libcfg.a ../lib/libpload.a
  41. BINARIES=corosync-objctl corosync-cfgtool corosync-keygen corosync-fplay corosync-pload
  42. APPS_SRC=$(addsuffix .c,$(BINARIES))
  43. EXTRA_CFLAGS = -I$(srcdir)include
  44. all: $(BINARIES)
  45. corosync-objctl: corosync-objctl.o $(LIBS)
  46. $(CC) $(LDFLAGS) -o $@ $< $(LIBS)
  47. corosync-cfgtool: corosync-cfgtool.o $(LIBS)
  48. $(CC) $(LDFLAGS) -o $@ $< $(LIBS)
  49. corosync-keygen: corosync-keygen.o
  50. $(CC) $(LDFLAGS) -o $@ $<
  51. corosync-fplay: corosync-fplay.o
  52. $(CC) $(LDFLAGS) -o $@ $<
  53. corosync-pload: corosync-pload.o
  54. $(CC) $(LDFLAGS) -o $@ $< $(LIBS)
  55. clean:
  56. rm -f *.o $(BINARIES)
  57. lint:
  58. -splint $(LINT_FLAGS) $(CFLAGS) corosync-objctl.c
  59. -splint $(LINT_FLAGS) $(CFLAGS) corosync-cfgtool.c
  60. -splint $(LINT_FLAGS) $(CFLAGS) corosync-keygen.c
  61. -splint $(LINT_FLAGS) $(CFLAGS) corosync-fplay.c
  62. -splint $(LINT_FLAGS) $(CFLAGS) corosync-pload.c
  63. %.o: %.c
  64. $(CC) $(CFLAGS) $(CPPFLAGS) $(EXTRA_CFLAGS) -c -o $@ $<
  65. depend:
  66. makedepend -Y -- $(CFLAGS) $(CPPFLAGS) $(APPS_SRC) > /dev/null 2>&1