Makefile 887 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. #
  2. # mman-win32 (mingw32) Makefile
  3. #
  4. include config.mak
  5. ifeq ($(BUILD_STATIC),yes)
  6. TARGETS+=libmman.a
  7. INSTALL+=static-install
  8. endif
  9. ifeq ($(BUILD_MSVC),yes)
  10. SHFLAGS+=-Wl,--output-def,libmman.def
  11. INSTALL+=lib-install
  12. endif
  13. all: $(TARGETS)
  14. mman.o: mman.c mman.h
  15. $(CC) -o mman.o -c mman.c -Wall -O3 -fomit-frame-pointer
  16. libmman.a: mman.o
  17. $(AR) cru libmman.a mman.o
  18. $(RANLIB) libmman.a
  19. static-install:
  20. mkdir -p $(DESTDIR)$(libdir)
  21. cp libmman.a $(DESTDIR)$(libdir)
  22. mkdir -p $(DESTDIR)$(incdir)
  23. cp mman.h $(DESTDIR)$(incdir)
  24. lib-install:
  25. mkdir -p $(DESTDIR)$(libdir)
  26. cp libmman.lib $(DESTDIR)$(libdir)
  27. install: $(INSTALL)
  28. test.exe: test.c mman.c mman.h
  29. $(CC) -o test.exe test.c -L. -lmman
  30. test: $(TARGETS) test.exe
  31. test.exe
  32. clean::
  33. rm -f mman.o libmman.a libmman.def libmman.lib test.exe *.dat
  34. distclean: clean
  35. rm -f config.mak
  36. .PHONY: clean distclean install test