Makefile.std 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. PRG = libkcc.a
  2. SHLIB = libkcc.so.0.2.0
  3. CC = gcc
  4. CFLAGS = -g -O2 -Wall
  5. PREFIX = /usr/local
  6. LIBDIR = $(PREFIX)/lib
  7. INCDIR = $(PREFIX)/include
  8. SRC_C = compare.c getstr.c guess.c showcode.c
  9. SRC_1 = check.c
  10. SRC_2 = filter.c buffer.c dec.c euc.c jis.c out.c outchar.c setfunc.c sjis.c
  11. SRCS = $(SRC_C) $(SRC_1) $(SRC_2)
  12. HDRS = filter.h kcc.h setfunc.h
  13. OBJS = $(SRCS:.c=.o)
  14. OBJ_C = $(SRC_C:.c=.o)
  15. OBJ_1 = $(SRC_1:.c=.o)
  16. OBJ_2 = $(SRC_2:.c=.o)
  17. .c.o:
  18. $(CC) $(CFLAGS) -c $<
  19. all: $(PRG)
  20. $(PRG): $(OBJS)
  21. ar crv $(PRG) $(OBJS)
  22. shared:
  23. $(CC) -shared $(OBJS) -Wl,-soname,libkcc.so.0 -o $(SHLIB) \
  24. -Wl,--rpath,$(LIBDIR)
  25. install:
  26. cp kcc.h $(INCDIR)/
  27. cp $(PRG) $(LIBDIR)/
  28. cp $(SHLIB) $(LIBDIR)/
  29. cd $(LIBDIR)
  30. ln -s $(SHLIB) libkcc.so
  31. ldconfig
  32. clean:
  33. rm -f *.o $(PRG) test test_check test_filter *~
  34. test_check: test_check.o $(OBJ_C) $(OBJ_1)
  35. $(CC) $(CFLAGS) -o test_check test_check.o $(OBJ_C) $(OBJ_1)
  36. test_filter: test_filter.o $(OBJ_C) $(OBJ_2)
  37. $(CC) $(CFLAGS) -o test_filter test_filter.o $(OBJ_C) $(OBJ_2)
  38. test: test.o $(PRG)
  39. $(CC) $(CFLAGS) -o test test.o $(PRG)