changed license based on the result of SOLVe
[platform/adaptation/nexell/nx-video-api.git] / buildcfg.mk
1 #########################################################################
2 # Embedded Linux Build Enviornment:
3 #
4 #########################################################################
5 OBJTREE         := $(if $(BUILD_DIR),$(BUILD_DIR),$(CURDIR))
6
7 ARCHNAME        := S5P6818
8 CROSS_COMPILE   ?= aarch64-linux-gnu-
9
10 ifneq ($(verbose),1)
11         quiet   := @
12 endif
13
14 INTERACTIVE := $(shell [ -t 0 ] && echo 1)
15 ifdef INTERACTIVE
16 # Light Color
17         ColorRed=\033[0;91m
18         ColorGreen=\033[0;92m
19         ColorYellow=\033[0;93m
20         ColorBlue=\033[0;93m
21         ColorMagenta=\033[0;95m
22         ColorCyan=\033[0;96m
23         ColorEnd=\033[0m
24 # Dark Color
25         # ColorRed=\033[0;31m
26         # ColorGreen=\033[0;32m
27         # ColorYellow=\033[0;33m
28         # ColorBlue=\033[0;33m
29         # ColorMagenta=\033[0;35m
30         # ColorCyan=\033[0;36m
31         # ColorEnd=\033[0m
32 else
33         ColorRed=
34         ColorGreen=
35         ColorYellow=
36         ColorBlue=
37         ColorMagenta=
38         ColorCyan=
39         ColorEnd=
40 endif
41
42 #########################################################################
43 #       Toolchain.
44 #########################################################################
45 CROSS           := $(CROSS_COMPILE)
46 CC                      := $(CROSS)gcc
47 CPP                     := $(CROSS)g++
48 AR                      := $(CROSS)ar
49 AS                      := $(CROSS)as
50 LD                      := $(CROSS)ld
51 NM                      := $(CROSS)nm
52 RANLIB          := $(CROSS)ranlib
53 OBJCOPY         := $(CROSS)objcopy
54 STRIP           := $(CROSS)strip
55
56 #########################################################################
57 #       Library & Header macro
58 #########################################################################
59 INCLUDE         :=
60
61 #########################################################################
62 #       Build Options
63 #########################################################################
64 OPTS            := -Wall -O2 -Wextra -Wcast-align -Wno-unused-parameter -Wshadow -Wwrite-strings -Wcast-qual -fno-strict-aliasing -fstrict-overflow -fsigned-char -fno-omit-frame-pointer -fno-optimize-sibling-calls
65 COPTS           := $(OPTS)
66 CPPOPTS         := $(OPTS) -Wnon-virtual-dtor
67
68 CFLAGS          := $(COPTS)
69 CPPFLAGS        := $(CPPOPTS)
70 AFLAGS          :=
71
72 ARFLAGS         := crv
73 LDFLAGS         :=
74 LIBRARY         :=
75
76 #########################################################################
77 #       Generic Rules
78 #########################################################################
79 %.o: %.c
80         @echo "Compiling : $(CC) $(ColorCyan)$(notdir $<)$(ColorEnd)"
81         $(quiet)$(CC) $(CFLAGS) $(INCLUDE) -c -o $@ $<
82
83 %.o: %.s
84         @echo "Compiling : $(AS) $(ColorCyan)$(notdir $<)$(ColorEnd)"
85         $(quiet)$(AS) $(AFLAGS) $(INCLUDE) -c -o $@ $<
86
87 %.o: %.cpp
88         @echo "Compiling : $(CPP) $(ColorCyan)$(notdir $<)$(ColorEnd)"
89         $(quiet)$(CPP) $(CPPFLAGS) $(INCLUDE) -c -o $@ $<