chiark / gitweb /
Fixed a minor formatting issue in gpio readall
[wiringPi.git] / wiringPi / Makefile
index 2d7967f109761e993f493e0ce211b9d38de6eedc..c6a45559b06b4f3f244cea7eece4b3884cb7fcc0 100644 (file)
@@ -1,4 +1,4 @@
-#
+# ;
 # Makefile:
 #      wiringPi - Wiring Compatable library for the Raspberry Pi
 #
 DYN_VERS_MAJ=1
 DYN_VERS_MIN=0
 
+VERSION=$(DYN_VERS_MAJ).$(DYN_VERS_MIN)
+DESTDIR=/usr
+PREFIX=/local
+
 STATIC=libwiringPi.a
-DYNAMIC=libwiringPi.so.$(DYN_VERS_MAJ).$(DYN_VERS_MIN)
+DYNAMIC=libwiringPi.so.$(VERSION)
 
 #DEBUG = -g -O0
 DEBUG  = -O2
@@ -41,72 +45,95 @@ LIBS    =
 SRC    =       wiringPi.c wiringPiFace.c wiringSerial.c wiringShift.c  \
                gertboard.c                                             \
                piNes.c                                                 \
-               lcd.c piHiPri.c piThread.c softPwm.c wiringPiSPI.c
+               lcd.c piHiPri.c piThread.c                              \
+               wiringPiSPI.c                                           \
+               softPwm.c softServo.c softTone.c
+
+SRC_I2C        =       wiringPiI2C.c
+
+OBJ    =       $(SRC:.c=.o)
 
-OBJ    =       wiringPi.o wiringPiFace.o wiringSerial.o wiringShift.o  \
-               gertboard.o                                             \
-               piNes.o                                                 \
-               lcd.o piHiPri.o piThread.o softPwm.o wiringPiSPI.o
+OBJ_I2C        =       $(SRC_I2C:.c=.o)
 
-all:           $(STATIC) $(DYNAMIC)
+all:           $(DYNAMIC)
+
+static:                $(STATIC)
 
 $(STATIC):     $(OBJ)
-       @echo [STATIC]
+       @echo "[Link (Static)]"
        @ar rcs $(STATIC) $(OBJ)
        @ranlib $(STATIC)
-
 #      @size   $(STATIC)
 
 $(DYNAMIC):    $(OBJ)
-       @echo [DYNAMIC]
-       @gcc -shared -Wl,-soname,libwiringPi.so.1 -o libwiringPi.so.1.0 -lpthread $(OBJ)
+       @echo "[Link (Dynamic)]"
+       @$(CC) -shared -Wl,-soname,libwiringPi.so.1 -o libwiringPi.so.1.0 -lpthread $(OBJ)
+
+i2c:   $(OBJ) $(OBJ_I2C)
+       @echo "[Link (Dynamic + I2C)]"
+       @$(CC) -shared -Wl,-soname,libwiringPi.so.1 -o libwiringPi.so.1.0 -lpthread $(OBJ) $(OBJ_I2C)
 
 .c.o:
-       @echo [CC] $<
+       @echo [Compile] $<
        @$(CC) -c $(CFLAGS) $< -o $@
 
+.PHONEY:       clean
 clean:
-       rm -f $(OBJ) *~ core tags Makefile.bak libwiringPi.*
+       rm -f $(OBJ) $(OBJ_I2C) *~ core tags Makefile.bak libwiringPi.*
 
+.PHONEY:       tags
 tags:  $(SRC)
        @echo [ctags]
        @ctags $(SRC)
 
-depend:
-       makedepend -Y $(SRC)
-
-install:       $(TARGET)
-       @echo [install]
-       @install -m 0755 -d /usr/local/lib
-       @install -m 0755 -d /usr/local/include
-       @install -m 0644 wiringPi.h     /usr/local/include
-       @install -m 0644 wiringSerial.h /usr/local/include
-       @install -m 0644 wiringShift.h  /usr/local/include
-       @install -m 0644 gertboard.h    /usr/local/include
-       @install -m 0644 piNes.h                /usr/local/include
-       @install -m 0644 softPwm.h      /usr/local/include
-       @install -m 0644 lcd.h          /usr/local/include
-       @install -m 0644 wiringPiSPI.h  /usr/local/include
-       @install -m 0644 libwiringPi.a  /usr/local/lib
-       @install        -m 0755 libwiringPi.so.1.0 /usr/local/lib
-       @ln -sf /usr/local/lib/libwiringPi.so.1.0 /usr/local/lib/libwiringPi.so
-       @ln -sf /usr/local/lib/libwiringPi.so.1.0 /usr/local/lib/libwiringPi.so.1
+.PHONEY:       install
+install:       $(DYNAMIC)
+       @echo "[Install]"
+       @install -m 0755 -d                     $(DESTDIR)$(PREFIX)/lib
+       @install -m 0755 -d                     $(DESTDIR)$(PREFIX)/include
+       @install -m 0644 wiringPi.h             $(DESTDIR)$(PREFIX)/include
+       @install -m 0644 wiringSerial.h         $(DESTDIR)$(PREFIX)/include
+       @install -m 0644 wiringShift.h          $(DESTDIR)$(PREFIX)/include
+       @install -m 0644 gertboard.h            $(DESTDIR)$(PREFIX)/include
+       @install -m 0644 piNes.h                $(DESTDIR)$(PREFIX)/include
+       @install -m 0644 softPwm.h              $(DESTDIR)$(PREFIX)/include
+       @install -m 0644 softServo.h            $(DESTDIR)$(PREFIX)/include
+       @install -m 0644 softTone.h             $(DESTDIR)$(PREFIX)/include
+       @install -m 0644 lcd.h                  $(DESTDIR)$(PREFIX)/include
+       @install -m 0644 wiringPiSPI.h          $(DESTDIR)$(PREFIX)/include
+       @install -m 0644 wiringPiI2C.h          $(DESTDIR)$(PREFIX)/include
+       @install -m 0755 libwiringPi.so.$(VERSION)                $(DESTDIR)$(PREFIX)/lib
+       @ln -sf $(DESTDIR)$(PREFIX)/lib/libwiringPi.so.$(VERSION) $(DESTDIR)/lib/libwiringPi.so
+       @ln -sf $(DESTDIR)$(PREFIX)/lib/libwiringPi.so.$(VERSION) $(DESTDIR)/lib/libwiringPi.so.1
        @ldconfig
 
+.PHONEY:       install-static
+install-static:        $(STATIC)
+       @echo "[Install Static]"
+       @install -m 0755 libwiringPi.a          $(DESTDIR)$(PREFIX)/lib
+
+.PHONEY:       uninstall
 uninstall:
-       @echo [uninstall]
-       @rm -f /usr/local/include/wiringPi.h
-       @rm -f /usr/local/include/wiringSerial.h
-       @rm -f /usr/local/include/wiringShift.h
-       @rm -f /usr/local/include/gertboard.h
-       @rm -f /usr/local/include/piNes.h
-       @rm -f /usr/local/include/softPwm.h
-       @rm -f /usr/local/include/lcd.h
-       @rm -f /usr/local/include/wiringPiSPI.h
-       @rm -f /usr/local/lib/libwiringPi.*
+       @echo "[UnInstall]"
+       @rm -f $(DESTDIR)$(PREFIX)/include/wiringPi.h
+       @rm -f $(DESTDIR)$(PREFIX)/include/wiringSerial.h
+       @rm -f $(DESTDIR)$(PREFIX)/include/wiringShift.h
+       @rm -f $(DESTDIR)$(PREFIX)/include/gertboard.h
+       @rm -f $(DESTDIR)$(PREFIX)/include/piNes.h
+       @rm -f $(DESTDIR)$(PREFIX)/include/softPwm.h
+       @rm -f $(DESTDIR)$(PREFIX)/include/softServo.h
+       @rm -f $(DESTDIR)$(PREFIX)/include/softTone.h
+       @rm -f $(DESTDIR)$(PREFIX)/include/lcd.h
+       @rm -f $(DESTDIR)$(PREFIX)/include/wiringPiSPI.h
+       @rm -f $(DESTDIR)$(PREFIX)/include/wiringPiI2C.h
+       @rm -f $(DESTDIR)$(PREFIX)/lib/libwiringPi.*
        @ldconfig
 
 
+.PHONEY:       depend
+depend:
+       makedepend -Y $(SRC) $(SRC_I2C)
+
 # DO NOT DELETE
 
 wiringPi.o: wiringPi.h
@@ -118,5 +145,8 @@ piNes.o: wiringPi.h piNes.h
 lcd.o: wiringPi.h lcd.h
 piHiPri.o: wiringPi.h
 piThread.o: wiringPi.h
-softPwm.o: wiringPi.h softPwm.h
 wiringPiSPI.o: wiringPiSPI.h
+softPwm.o: wiringPi.h softPwm.h
+softServo.o: wiringPi.h softServo.h
+softTone.o: wiringPi.h softTone.h
+wiringPiI2C.o: wiringPi.h wiringPiI2C.h