Advertisement
Guest User

Untitled

a guest
Mar 30th, 2018
153
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Make 5.63 KB | None | 0 0
  1. #
  2. # Set CROSS_PREFIX to prepend to all compiler tools at once for easier
  3. # cross-compilation.
  4. CROSS_PREFIX =
  5. #CC           = $(CROSS_PREFIX)gcc
  6. #AR           = $(CROSS_PREFIX)ar
  7. #RANLIB       = $(CROSS_PREFIX)ranlib
  8. #SIZE         = $(CROSS_PREFIX)size
  9. #STRIP        = $(CROSS_PREFIX)strip
  10. SHLIB        = $(CC) -shared
  11. #STRIPLIB     = $(STRIP) --strip-unneeded
  12.  
  13. CFLAGS  += -O3 -Wall -pthread
  14.  
  15. LIB1     = libpigpio.so.67.0.0
  16. LIB1S    = libpigpio.so
  17. OBJ1     = pigpio.o command.o
  18.  
  19. LIB2     = libpigpiod_if.so.67.0.0
  20. LIB2S    = libpigpiod_if.so
  21. OBJ2     = pigpiod_if.o command.o
  22.  
  23. LIB3     = libpigpiod_if2.so.67.0.0
  24. LIB3S    = libpigpiod_if2.so
  25. OBJ3     = pigpiod_if2.o command.o
  26.  
  27. LIB      = $(LIB1) $(LIB2) $(LIB3)
  28.  
  29. ALL     = $(LIB) x_pigpio x_pigpiod_if x_pigpiod_if2 pig2vcd pigpiod pigs
  30.  
  31. #LL1      = -L. -lpigpio -pthread -lrt
  32. #LL2      = -L. -lpigpiod_if -pthread -lrt
  33. #LL3      = -L. -lpigpiod_if2 -pthread -lrt
  34. LL1      = -L. libpigpio.so.67 -pthread -lrt
  35. LL2      = -L. libpigpiod_if.so.67 -pthread -lrt
  36. LL3      = -L. libpigpiod_if2.so.67 -pthread -lrt
  37.  
  38. prefix = /usr/local
  39. exec_prefix = $(prefix)
  40. bindir = $(exec_prefix)/bin
  41. includedir = $(prefix)/include
  42. libdir = $(prefix)/lib
  43. mandir = $(prefix)/man
  44.  
  45. all:    $(ALL)
  46.  
  47. lib:    $(LIB)
  48.  
  49. pigpio.o: pigpio.c pigpio.h command.h custom.cext
  50.         $(CC) $(CFLAGS) -fpic -c -o pigpio.o pigpio.c
  51.  
  52. pigpiod_if.o: pigpiod_if.c pigpio.h command.h pigpiod_if.h
  53.         $(CC) $(CFLAGS) -fpic -c -o pigpiod_if.o pigpiod_if.c
  54.  
  55. pigpiod_if2.o: pigpiod_if2.c pigpio.h command.h pigpiod_if2.h
  56.         $(CC) $(CFLAGS) -fpic -c -o pigpiod_if2.o pigpiod_if2.c
  57.  
  58. command.o: command.c pigpio.h command.h
  59.         $(CC) $(CFLAGS) -fpic -c -o command.o command.c
  60.  
  61. x_pigpio:       x_pigpio.o $(LIB1)
  62.         $(CC) -o x_pigpio x_pigpio.o $(LL1)
  63.  
  64. x_pigpiod_if:   x_pigpiod_if.o $(LIB2)
  65.         $(CC) -o x_pigpiod_if x_pigpiod_if.o $(LL2)
  66.  
  67. x_pigpiod_if2:  x_pigpiod_if2.o $(LIB3)
  68.         $(CC) -o x_pigpiod_if2 x_pigpiod_if2.o $(LL3)
  69.  
  70. pigpiod:        pigpiod.o $(LIB1)
  71.         $(CC) -o pigpiod pigpiod.o $(LL1)
  72. #       $(STRIP) pigpiod
  73.  
  74. pigs:           pigs.o command.o
  75.         $(CC) -o pigs pigs.o command.o
  76. #       $(STRIP) pigs
  77.  
  78. pig2vcd:        pig2vcd.o
  79.         $(CC) -o pig2vcd pig2vcd.o
  80. #       $(STRIP) pig2vcd
  81.  
  82. clean:
  83.         rm -f *.o *.i *.s *~ $(ALL)
  84.  
  85. install:        $(ALL)
  86.         install -m 0755 -d                $(DESTDIR)/opt/pigpio/cgi
  87.         install -m 0755 -d                $(DESTDIR)$(includedir)
  88.         install -m 0644 pigpio.h          $(DESTDIR)$(includedir)
  89.         install -m 0644 pigpiod_if.h      $(DESTDIR)$(includedir)
  90.         install -m 0644 pigpiod_if2.h     $(DESTDIR)$(includedir)
  91.         install -m 0755 -d                $(DESTDIR)$(libdir)
  92.         install -m 0755 ${LIB1}           $(DESTDIR)$(libdir)
  93.         install -m 0755 ${LIB2}           $(DESTDIR)$(libdir)
  94.         install -m 0755 ${LIB3}           $(DESTDIR)$(libdir)
  95.         ln -sf ${LIB1}                    $(DESTDIR)$(libdir)/${LIB1S}
  96.         ln -sf ${LIB2}                    $(DESTDIR)$(libdir)/${LIB2S}
  97.         ln -sf ${LIB3}                    $(DESTDIR)$(libdir)/${LIB3S}
  98.         ln -sf ${LIB1}                    $(DESTDIR)$(libdir)/${LIB1S}.67
  99.         ln -sf ${LIB2}                    $(DESTDIR)$(libdir)/${LIB2S}.67
  100.         ln -sf ${LIB3}                    $(DESTDIR)$(libdir)/${LIB3S}.67
  101.         install -m 0755 -d                $(DESTDIR)$(bindir)
  102.         install -m 0755 pig2vcd           $(DESTDIR)$(bindir)
  103.         install -m 0755 pigpiod           $(DESTDIR)$(bindir)
  104.         install -m 0755 pigs              $(DESTDIR)$(bindir)
  105. #       if which python2; then python2 setup.py install; fi
  106. #       if which python3; then python3 setup.py install; fi
  107.         install -m 0755 -d                $(DESTDIR)$(mandir)/man1
  108.         install -m 0644 *.1               $(DESTDIR)$(mandir)/man1
  109.         install -m 0755 -d                $(DESTDIR)$(mandir)/man3
  110.         install -m 0644 *.3               $(DESTDIR)$(mandir)/man3
  111. #       ldconfig
  112.  
  113. uninstall:
  114.         rm -f $(DESTDIR)$(includedir)/pigpio.h
  115.         rm -f $(DESTDIR)$(includedir)/pigpiod_if.h
  116.         rm -f $(DESTDIR)$(includedir)/pigpiod_if2.h
  117.         rm -f $(DESTDIR)$(libdir)/libpigpio.so
  118.         rm -f $(DESTDIR)$(libdir)/libpigpiod_if.so
  119.         rm -f $(DESTDIR)$(libdir)/libpigpiod_if2.so
  120.         rm -f $(DESTDIR)$(bindir)/pig2vcd
  121.         rm -f $(DESTDIR)$(bindir)/pigpiod
  122.         rm -f $(DESTDIR)$(bindir)/pigs
  123.         if which python2; then python2 setup.py install --record /tmp/pigpio >/dev/null; xargs rm -f < /tmp/pigpio >/dev/null; fi
  124.         if which python3; then python3 setup.py install --record /tmp/pigpio >/dev/null; xargs rm -f < /tmp/pigpio >/dev/null; fi
  125.         rm -f $(DESTDIR)$(mandir)/man1/pig*.1
  126.         rm -f $(DESTDIR)$(mandir)/man3/pig*.3
  127. #       ldconfig
  128.  
  129. $(LIB1):        $(OBJ1)
  130.         $(SHLIB) -o $(LIB1) $(OBJ1)
  131. #       $(STRIPLIB) $(LIB1)
  132. #       $(SIZE)     $(LIB1)
  133.         ln -sf ${LIB1} ${LIB1S}
  134.         ln -sf ${LIB1} ${LIB1S}.67
  135.  
  136. $(LIB2):        $(OBJ2)
  137.         $(SHLIB) -o $(LIB2) $(OBJ2)
  138. #       $(STRIPLIB) $(LIB2)
  139. #       $(SIZE)     $(LIB2)
  140.         ln -sf ${LIB2} ${LIB2S}
  141.         ln -sf ${LIB2} ${LIB2S}.67
  142.  
  143. $(LIB3):        $(OBJ3)
  144.         $(SHLIB) -o $(LIB3) $(OBJ3)
  145. #       $(STRIPLIB) $(LIB3)
  146. #       $(SIZE)     $(LIB3)
  147.         ln -sf ${LIB3} ${LIB3S}
  148.         ln -sf ${LIB3} ${LIB3S}.67
  149.  
  150. # generated using gcc -MM *.c
  151.  
  152. pig2vcd.o: pig2vcd.c pigpio.h
  153. pigpiod.o: pigpiod.c pigpio.h
  154. pigs.o: pigs.c pigpio.h command.h pigs.h
  155. x_pigpio.o: x_pigpio.c pigpio.h
  156. x_pigpiod_if.o: x_pigpiod_if.c pigpiod_if.h pigpio.h
  157. x_pigpiod_if2.o: x_pigpiod_if2.c pigpiod_if2.h pigpio.h
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement