Makefile.m32 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. #############################################################
  2. #
  3. ## Makefile for building arestest.exe with MingW32 (GCC-3.2)
  4. ## Use: make -f Makefile.m32
  5. #
  6. ########################################################
  7. CXX = g++
  8. CC = gcc
  9. LD = g++
  10. # Where to find the c-ares source code; needed because the tests use library-internal headers
  11. ARES_SRC_DIR = ..
  12. # Where to find the built c-ares static library
  13. ARES_BLD_DIR = ..
  14. ARESLIB = $(ARES_BLD_DIR)/src/lib/libcares.a
  15. GMOCK_DIR = gmock-1.11.0
  16. CPPFLAGS = -I$(ARES_SRC_DIR)/include -I$(ARES_SRC_DIR)/src/lib -I$(GMOCK_DIR) -DCARES_STATICLIB
  17. CXXFLAGS = -Wall $(PTHREAD_CFLAGS) -std=gnu++11
  18. LDFLAGS =
  19. LDLIBS = -lws2_32 -liphlpapi
  20. # Makefile.inc provides the TESTSOURCES and TESTHEADERS defines
  21. include Makefile.inc
  22. OBJS := $(patsubst %.cc,%.o,$(strip $(TESTSOURCES)))
  23. FUZZOBJS := $(patsubst %.c,%.o,$(strip $(FUZZSOURCES)))
  24. FUZZNAMEOBJS := $(patsubst %.c,%.o,$(strip $(FUZZNAMESOURCES)))
  25. DNSDUMPOBJS := $(patsubst %.cc,%.o,$(strip $(DUMPSOURCES)))
  26. all: arestest.exe aresfuzz.exe aresfuzzname.exe dnsdump.exe
  27. arestest.exe: $(OBJS) gmock-gtest-all.o
  28. $(LD) $(LDFLAGS) -o $@ $^ -L$(ARES_BLD_DIR)/src/lib -lcares $(LDLIBS)
  29. aresfuzz.exe: $(FUZZOBJS)
  30. $(LD) $(LDFLAGS) -o $@ $^ -L$(ARES_BLD_DIR)/src/lib -lcares $(LDLIBS)
  31. aresfuzzname.exe: $(FUZZNAMEOBJS)
  32. $(LD) $(LDFLAGS) -o $@ $^ -L$(ARES_BLD_DIR)/src/lib -lcares $(LDLIBS)
  33. dnsdump.exe: $(DNSDUMPOBJS)
  34. $(LD) $(LDFLAGS) -o $@ $^ -L$(ARES_BLD_DIR)/src/lib -lcares $(LDLIBS)
  35. $(OBJS): $(TESTHEADERS)
  36. .cc.o:
  37. $(CXX) $(CPPFLAGS) $(CXXFLAGS) -c $<
  38. .c.o:
  39. $(CC) $(CPPFLAGS) $(CFLAGS) -c $<
  40. gmock-gtest-all.o: $(GMOCK_DIR)/gmock-gtest-all.cc
  41. $(CXX) -I$(GMOCK_DIR) $(CPPFLAGS) $(CXXFLAGS) -c $<
  42. test: arestest.exe
  43. ./arestest.exe
  44. vtest: arestest.exe
  45. ./arestest.exe -v
  46. clean:
  47. $(RM) $(OBJS) gmock-gtest-all.o arestest.exe aresfuzz.exe aresfuzzname.exe dnsdump.exe