|
@@ -21,14 +21,17 @@
|
|
|
# along with wiringPi. If not, see <http://www.gnu.org/licenses/>.
|
|
|
#################################################################################
|
|
|
|
|
|
+DYN_VERS_MAJ=1
|
|
|
+DYN_VERS_MIN=0
|
|
|
|
|
|
-TARGET=libwiringPi.a
|
|
|
+STATIC=libwiringPi.a
|
|
|
+DYNAMIC=libwiringPi.so.$(DYN_VERS_MAJ).$(DYN_VERS_MIN)
|
|
|
|
|
|
#DEBUG = -g -O0
|
|
|
-DEBUG = -O3
|
|
|
+DEBUG = -O2
|
|
|
CC = gcc
|
|
|
INCLUDE = -I.
|
|
|
-CFLAGS = $(DEBUG) -Wall $(INCLUDE) -Winline -pipe
|
|
|
+CFLAGS = $(DEBUG) -Wall $(INCLUDE) -Winline -pipe -fPIC
|
|
|
|
|
|
LIBS =
|
|
|
|
|
@@ -45,20 +48,25 @@ OBJ = wiringPi.o wiringPiFace.o wiringSerial.o wiringShift.o \
|
|
|
piNes.o \
|
|
|
lcd.o piHiPri.o piThread.o softPwm.o wiringPiSPI.o
|
|
|
|
|
|
-all: $(TARGET)
|
|
|
+all: $(STATIC) $(DYNAMIC)
|
|
|
|
|
|
-$(TARGET): $(OBJ)
|
|
|
- @echo [AR] $(OBJ)
|
|
|
- @ar rcs $(TARGET) $(OBJ)
|
|
|
- @ranlib $(TARGET)
|
|
|
- @size $(TARGET)
|
|
|
+$(STATIC): $(OBJ)
|
|
|
+ @echo [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)
|
|
|
|
|
|
.c.o:
|
|
|
@echo [CC] $<
|
|
|
@$(CC) -c $(CFLAGS) $< -o $@
|
|
|
|
|
|
clean:
|
|
|
- rm -f $(OBJ) $(TARGET) *~ core tags Makefile.bak
|
|
|
+ rm -f $(OBJ) *~ core tags Makefile.bak libwiringPi.*
|
|
|
|
|
|
tags: $(SRC)
|
|
|
@echo [ctags]
|
|
@@ -69,27 +77,34 @@ depend:
|
|
|
|
|
|
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 -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
|
|
|
+ @ldconfig
|
|
|
|
|
|
uninstall:
|
|
|
@echo [uninstall]
|
|
|
- rm -f /usr/local/include/lcd.h
|
|
|
- rm -f /usr/local/include/lpiNes.h
|
|
|
- rm -f /usr/local/include/gertboard.h
|
|
|
- rm -f /usr/local/include/wiringShift.h
|
|
|
- rm -f /usr/local/include/wiringSerial.h
|
|
|
- rm -f /usr/local/include/wiringPi.h
|
|
|
- rm -f /usr/local/lib/libwiringPi.a
|
|
|
+ @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.*
|
|
|
+ @ldconfig
|
|
|
|
|
|
|
|
|
# DO NOT DELETE
|
|
@@ -98,8 +113,10 @@ wiringPi.o: wiringPi.h
|
|
|
wiringPiFace.o: wiringPi.h
|
|
|
wiringSerial.o: wiringSerial.h
|
|
|
wiringShift.o: wiringPi.h wiringShift.h
|
|
|
-gertboard.o: gertboard.h
|
|
|
+gertboard.o: wiringPiSPI.h gertboard.h
|
|
|
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
|