mirror of
https://github.com/RfidResearchGroup/proxmark3.git
synced 2025-01-05 07:36:14 +08:00
65 lines
2.2 KiB
Text
65 lines
2.2 KiB
Text
# Hide full compilation line:
|
|
ifneq ($(V),1)
|
|
Q?=@
|
|
endif
|
|
# To see full command lines, use make V=1
|
|
|
|
# been here
|
|
DEFSBEENHERE = true
|
|
|
|
CP = cp -a
|
|
GZIP = gzip
|
|
MKDIR = mkdir -p
|
|
RM = rm -f
|
|
RMDIR = rm -rf
|
|
# rmdir only if dir is empty, tolerate failure
|
|
RMDIR_SOFT = -rmdir
|
|
MV = mv
|
|
TOUCH = touch
|
|
FALSE = false
|
|
TAR = tar
|
|
TARFLAGS ?= -v --ignore-failed-read -r
|
|
TARFLAGS += -C .. -f
|
|
CROSS ?= arm-none-eabi-
|
|
CC = gcc
|
|
CXX = g++
|
|
LD = g++
|
|
|
|
PATHSEP=/
|
|
PREFIX ?= /usr/local
|
|
UDEV_PREFIX ?= /etc/udev/rules.d
|
|
INSTALLBINRELPATH ?= bin
|
|
INSTALLSHARERELPATH ?= share/proxmark3
|
|
INSTALLFWRELPATH ?= share/proxmark3/firmware
|
|
INSTALLTOOLSRELPATH ?= share/proxmark3/tools
|
|
INSTALLDOCSRELPATH ?= share/doc/proxmark3
|
|
|
|
platform = $(shell uname)
|
|
DETECTED_OS=$(platform)
|
|
|
|
ifeq ($(platform),Darwin)
|
|
AR= /usr/bin/ar rcs
|
|
RANLIB= /usr/bin/ranlib
|
|
else
|
|
AR= ar rcs
|
|
RANLIB= ranlib
|
|
endif
|
|
|
|
DEFCFLAGS = -Wall -Werror -O3
|
|
# Some more warnings we want as errors:
|
|
DEFCFLAGS += -Wcast-align -Wbad-function-cast -Wredundant-decls -Wmissing-prototypes -Wchar-subscripts -Wshadow -Wundef -Wwrite-strings -Wunused -Wuninitialized -Wpointer-arith -Winline -Wformat -Wformat-security -Winit-self -Wmissing-include-dirs -Wnested-externs -Wmissing-declarations -Wempty-body -Wignored-qualifiers
|
|
# Some more warnings we need first to eliminate, so temporarely tolerated:
|
|
DEFCFLAGS += -Wno-error=cast-align
|
|
# TODO?:
|
|
#DEFCFLAGS += -Wunused-parameter -Wold-style-declaration -Wsign-compare -Wimplicit-fallthrough=3 -Wtype-limits -Wmissing-field-initializers -Wunused-but-set-parameter -Wswitch-enum -Wold-style-definition
|
|
#DEFCFLAGS += -Wno-error=unused-parameter -Wno-error=old-style-declaration -Wno-error=sign-compare -Wno-error=implicit-fallthrough -Wno-error=type-limits -Wno-error=missing-field-initializers -Wno-error=unused-but-set-parameter -Wno-error=switch-enum -Wno-error=old-style-definition
|
|
# unknown to clang: -Wclobbered -Wmissing-parameter-type -Wcast-function-type
|
|
# unknown to clang < 8: -Woverride-init
|
|
# unknown to gcc < 6: -Wshift-negative-value
|
|
|
|
ifeq ($(platform),Darwin)
|
|
# their readline has strict-prototype issues
|
|
DEFCFLAGS += -Wstrict-prototypes -Wno-error=strict-prototypes
|
|
else
|
|
DEFCFLAGS += -Wstrict-prototypes
|
|
endif
|