Gordons Projects

--> Projects Top-Level GIT

Bumped the version to 2.40 - correctly this time, I hope.
[wiringPi] / wiringPiD / Makefile
1 #
2 # Makefile:
3 #       The wiringPiD utility:
4 #       https://projects.drogon.net/wiring-pi
5 #
6 #       Copyright (c) 2012-2017 Gordon Henderson
7 #################################################################################
8 # This file is part of wiringPi:
9 #       A "wiring" library for the Raspberry Pi
10 #
11 #    wiringPi is free software: you can redistribute it and/or modify
12 #    it under the terms of the GNU Lesser General Public License as published by
13 #    the Free Software Foundation, either version 3 of the License, or
14 #    (at your option) any later version.
15 #
16 #    wiringPi is distributed in the hope that it will be useful,
17 #    but WITHOUT ANY WARRANTY; without even the implied warranty of
18 #    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19 #    GNU Lesser General Public License for more details.
20 #
21 #    You should have received a copy of the GNU Lesser General Public License
22 #    along with wiringPi.  If not, see <http://www.gnu.org/licenses/>.
23 #################################################################################
24
25 DESTDIR?=/usr
26 PREFIX?=/local
27
28 ifneq ($V,1)
29 Q ?= @
30 endif
31
32 #DEBUG  = -g -O0
33 DEBUG   = -O2
34 CC      = gcc
35 INCLUDE = -I$(DESTDIR)$(PREFIX)/include
36 CFLAGS  = $(DEBUG) -Wall -Wextra $(INCLUDE) -Winline -pipe
37
38 LDFLAGS = -L$(DESTDIR)$(PREFIX)/lib
39 LIBS    = -lwiringPi -lwiringPiDev -lpthread -lrt -lm -lcrypt
40
41 # May not need to  alter anything below this line
42 ###############################################################################
43
44 SRC     =       wiringpid.c network.c runRemote.c daemonise.c
45
46 OBJ     =       $(SRC:.c=.o)
47
48 all:            wiringpid
49
50 wiringpid:      $(OBJ)
51         $Q echo [Link]
52         $Q $(CC) -o $@ $(OBJ) $(LDFLAGS) $(LIBS)
53
54 .c.o:
55         $Q echo [Compile] $<
56         $Q $(CC) -c $(CFLAGS) $< -o $@
57
58 .PHONY: clean
59 clean:
60         $Q echo "[Clean]"
61         $Q rm -f $(OBJ) wiringpid *~ core tags *.bak
62
63 .PHONY: tags
64 tags:   $(SRC)
65         $Q echo [ctags]
66         $Q ctags $(SRC)
67
68 .PHONY: install
69 install: wiringpid
70         $Q echo "[Install]"
71         $Q mkdir -p             $(DESTDIR)$(PREFIX)/sbin
72         $Q cp wiringpid         $(DESTDIR)$(PREFIX)/sbin
73         $Q chown root.root      $(DESTDIR)$(PREFIX)/sbin/wiringpid
74
75 #       $Q mkdir -p             $(DESTDIR)$(PREFIX)/man/man8
76 #       $Q cp gpio.1            $(DESTDIR)$(PREFIX)/man/man8
77
78 .PHONY: install-deb
79 install-deb:    gpio
80         $Q echo "[Install: deb]"
81         $Q install -m 0755 -d                                                   ~/wiringPi/debian-template/wiringPi/usr/bin
82         $Q install -m 0755 gpio                                                 ~/wiringPi/debian-template/wiringPi/usr/bin
83         $Q install -m 0755 -d                                                   ~/wiringPi/debian-template/wiringPi/man/man1
84         $Q install -m 0644 gpio.1                                               ~/wiringPi/debian-template/wiringPi/man/man1
85
86 .PHONY: uninstall
87 uninstall:
88         $Q echo "[UnInstall]"
89         $Q rm -f $(DESTDIR)$(PREFIX)/sbin/wiringpid
90         $Q rm -f $(DESTDIR)$(PREFIX)/man/man8/wiringpid.8
91
92 .PHONY: depend
93 depend:
94         makedepend -Y $(SRC)
95 # DO NOT DELETE
96
97 wiringpid.o: drcNetCmd.h network.h runRemote.h daemonise.h
98 network.o: network.h
99 runRemote.o: drcNetCmd.h network.h runRemote.h
100 daemonise.o: daemonise.h