makefile 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. #
  2. # The contents of this file are subject to the Initial
  3. # Developer's Public License Version 1.0 (the "License");
  4. # you may not use this file except in compliance with the
  5. # License. You may obtain a copy of the License at
  6. # https://www.ibphoenix.com/about/firebird/idpl.
  7. #
  8. # Software distributed under the License is distributed AS IS,
  9. # WITHOUT WARRANTY OF ANY KIND, either express or implied.
  10. # See the License for the specific language governing rights
  11. # and limitations under the License.
  12. #
  13. # The Original Code was created by Paul Reeves
  14. # for the Firebird Open Source RDBMS project.
  15. #
  16. # Copyright (c) 2020 Paul Reeves and all contributors signed below.
  17. #
  18. # All Rights Reserved.
  19. # Contributor(s): ______________________________________.
  20. #
  21. # -----------------------------------------------------------------------
  22. # Firebird Installation Directory
  23. #
  24. # CHANGE this definition to point to your Firebird installation directory
  25. # -----------------------------------------------------------------------
  26. FIREBIRD = /opt/firebird
  27. INCLUDE := -I$(FIREBIRD)/include/
  28. FBCLIENT = $(FIREBIRD)/lib/libfbclient.so
  29. # ---------------------------------------------------------------------
  30. # General Compiler and linker Defines for Linux
  31. # ---------------------------------------------------------------------
  32. CXX = c++
  33. CXXFLAGS= -c -Wall -g3 -std=c++17 -fno-rtti $(INCLUDE)
  34. RM = rm -f
  35. #
  36. # Do NOT change anything below this point.
  37. # ---------------------------------------------------------------------
  38. .PHONY: all clean cleanall
  39. .SUFFIXES: .o .cpp
  40. .cpp.o:
  41. $(CXX) $(CXXFLAGS) $< -o $@
  42. .o:
  43. $(CXX) -g -o $@ $< $(FBCLIENT)
  44. OUTBIN = 01.create 02.update 03.select 04.print_table 05.user_metadata 06.fb_message 07.blob 08.events 09.service 10.backup 11.batch 12.batch_isc 13.null_pk
  45. #FAILED =
  46. OBJS = *.o
  47. all: $(OUTBIN)
  48. # As far as make is concerned, these entries are
  49. # redundant as the above rules are sufficient.
  50. 01.create.o: 01.create.cpp
  51. 02.update.o: 02.update.cpp
  52. 03.select.o: 03.select.cpp
  53. 04.print_table.o: 04.print_table.cpp
  54. 05.user_metadata.o: 05.user_metadata.cpp
  55. 06.fb_message.o: 06.fb_message.cpp
  56. 07.blob.o: 07.blob.cpp
  57. 08.events.o: 08.events.cpp
  58. 09.service.o: 09.service.cpp
  59. 10.backup.o: 10.backup.cpp
  60. 11.batch.o: 11.batch.cpp
  61. 12.batch_isc.o: 12.batch_isc.cpp
  62. 13.null_pk.o: 13.null_pk.cpp
  63. # clean up
  64. clean:
  65. $(RM) $(OBJS) $(OUTBIN)
  66. cleanall: clean
  67. $(RM) fbtests.fdb