RaspberrPi project source code
guowenxue
2024-03-12 c5e9e88eb8c6039cd2a4d2b3fdae0b1e3d8aea40
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#********************************************************************************
#      Copyright:  (C) 2023 LingYun IoT System Studio
#                  All rights reserved.
#
#       Filename:  Makefile
#    Description:  This file used to compile all the C file to respective binary,
#                  and it will auto detect cross compile or local compile.
#
#        Version:  1.0.0(11/08/23)
#         Author:  Guo Wenxue <guowenxue@gmail.com>
#      ChangeLog:  1, Release initial version on "11/08/23 16:18:43"
#
#*******************************************************************************
 
PWD=$(shell pwd)
TOPDIR=${PWD}/../project/
OPENLIBS_INCPATH=${TOPDIR}/openlibs/install/include
OPENLIBS_LIBPATH=${TOPDIR}/openlibs/install/lib
 
BUILD_ARCH=$(shell uname -m)
ifneq ($(findstring $(BUILD_ARCH), "x86_64" "i386"),)
    CROSS_COMPILE?=arm-linux-gnueabihf-
endif
 
CC=${CROSS_COMPILE}gcc
 
CFLAGS+=-I${OPENLIBS_INCPATH}
LDFLAGS+=-L${OPENLIBS_LIBPATH} -lm -lgpiod
 
SRCFILES = $(wildcard *.c)
BINARIES=$(SRCFILES:%.c=%)
 
all: ${BINARIES}
 
%: %.c 
    $(CC) $(CFLAGS) -o $@ $< $(LDFLAGS)
 
clean:
    rm -f ${BINARIES}