Update Makefile Configuration - Add ARMv8 support
This commit is contained in:
@@ -13,44 +13,47 @@ SUBDIRS := $(filter-out $(FILTER),$(SUBDIRS))
|
|||||||
SUBDIRARS = $(foreach dir,$(SUBDIRS),$(dir)/$(dir).a)
|
SUBDIRARS = $(foreach dir,$(SUBDIRS),$(dir)/$(dir).a)
|
||||||
|
|
||||||
LOCALSOURCES = $(wildcard *.cpp *.cc)
|
LOCALSOURCES = $(wildcard *.cpp *.cc)
|
||||||
SOURCES = $(wildcard *.cpp */*.cpp */*/*.cpp */*/*/*.cpp)
|
LOCALOBJECTS := $(LOCALSOURCES:.cpp=.o)
|
||||||
LOCALOBJECT_ = $(LOCALSOURCES:.cpp=.o)
|
LOCALOBJECTS := $(LOCALOBJECTS:.cc=.o)
|
||||||
LOCALOBJECTS = $(LOCALOBJECT_:.cc=.o)
|
|
||||||
OBJECTS = $(SOURCES:.cpp=.o)
|
|
||||||
LOCALDEPENDS = $(LOCALOBJECTS:.o=.d)
|
LOCALDEPENDS = $(LOCALOBJECTS:.o=.d)
|
||||||
|
SOURCES = $(wildcard *.cpp */*.cpp */*/*.cpp */*/*/*.cpp)
|
||||||
|
OBJECTS = $(SOURCES:.cpp=.o)
|
||||||
DEPENDS = $(OBJECTS:.o=.d)
|
DEPENDS = $(OBJECTS:.o=.d)
|
||||||
TARGETS =
|
TARGETS =
|
||||||
|
|
||||||
-include Makefile.target
|
$(LOCALOBJECTS): | $(SUBDIRS)
|
||||||
|
$(OBJECTS): | $(SUBDIRS)
|
||||||
|
|
||||||
artifacts: $(SUBDIRS) $(LOCALOBJECTS)
|
artifacts: $(LOCALOBJECTS)
|
||||||
|
|
||||||
|
.DEFAULT_GOAL := artifacts
|
||||||
|
|
||||||
|
-include Makefile.target
|
||||||
|
|
||||||
ifneq ($(MAKECMDGOALS),clean)
|
ifneq ($(MAKECMDGOALS),clean)
|
||||||
-include $(LOCALDEPENDS)
|
-include $(LOCALDEPENDS)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
%.d: %.cpp
|
%.d: %.cpp
|
||||||
@echo [MM] $@
|
$(info [MM] $@)
|
||||||
@$(CC) $(CFLAGS) $< -MM -MT $(@:.d=.o) >$@
|
@$(CC) $(CFLAGS) $< -MM -MT $(@:.d=.o) >$@
|
||||||
|
|
||||||
%.o: %.cpp
|
%.o: %.cpp
|
||||||
@echo [CC] $@
|
$(info [CC] $@)
|
||||||
@nice -n 19 $(CC) -c $(CFLAGS) $< -o $@
|
@nice -n 19 $(CC) -c $(CFLAGS) $< -o $@
|
||||||
|
|
||||||
%.d: %.cc
|
%.d: %.cc
|
||||||
@echo [MM] $@
|
$(info [MM] $@)
|
||||||
@$(CC) $(CFLAGS) $< -MM -MT $(@:.d=.o) >$@
|
@$(CC) $(CFLAGS) $< -MM -MT $(@:.d=.o) >$@
|
||||||
|
|
||||||
%.o: %.cc
|
%.o: %.cc
|
||||||
@echo [CC] $@
|
$(info [CC] $@)
|
||||||
@nice -n 19 $(CC) -c $(CFLAGS) $< -o $@
|
@nice -n 19 $(CC) -c $(CFLAGS) $< -o $@
|
||||||
|
|
||||||
$(ARNAME): $(SUBDIRS) $(LOCALOBJECTS)
|
$(ARNAME): $(SUBDIRS) $(LOCALOBJECTS)
|
||||||
@echo [AR] $@
|
$(info [AR] $@)
|
||||||
@nice -n 19 $(AR) rcuT $@ $(LOCALOBJECTS) $(SUBDIRARS)
|
@nice -n 19 $(AR) rcuT $@ $(LOCALOBJECTS) $(SUBDIRARS)
|
||||||
|
|
||||||
$(OBJECTS): | $(SUBDIRS)
|
|
||||||
|
|
||||||
.PHONY: $(SUBDIRS)
|
.PHONY: $(SUBDIRS)
|
||||||
$(SUBDIRS):
|
$(SUBDIRS):
|
||||||
@$(MAKE) -S -C $@ artifacts
|
@$(MAKE) -S -C $@ artifacts
|
||||||
@@ -64,4 +67,3 @@ clean:
|
|||||||
$(MAKE) -S -C $$dir $@; \
|
$(MAKE) -S -C $$dir $@; \
|
||||||
done
|
done
|
||||||
@rm -f $(LOCALOBJECTS) $(LOCALDEPENDS) $(ARNAME) $(TARGETS) || true
|
@rm -f $(LOCALOBJECTS) $(LOCALDEPENDS) $(ARNAME) $(TARGETS) || true
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -1 +1 @@
|
|||||||
Makefile.conf.local
|
Makefile.conf.armv8
|
||||||
@@ -3,19 +3,20 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
CFLAGS := -g3 -O3 -fPIC -marm -march=armv6 -std=c++11
|
CFLAGS := -g3 -O3 -fPIC -marm -march=armv6 -std=c++11
|
||||||
CFLAGS += -Wall -Wextra -Wstrict-aliasing -pedantic -fmax-errors=5 -Werror -Wunreachable-code -Wcast-qual -Wdisabled-optimization -Wformat=2 -Winit-self -Wlogical-op -Wmissing-include-dirs -Wnoexcept -Woverloaded-virtual -Wsign-promo -Wstrict-null-sentinel -Wswitch-default -Wno-unused -Wno-variadic-macros -Wno-parentheses -fdiagnostics-show-option
|
CFLAGS += -Wall -Wextra -Wstrict-aliasing -fmax-errors=5 -Werror -Wunreachable-code -Wdisabled-optimization -Wformat=2 -Winit-self -Wlogical-op -Wmissing-include-dirs -Wnoexcept -Woverloaded-virtual -Wsign-promo -Wstrict-null-sentinel -Wswitch-default -Wno-unused -Wno-variadic-macros -Wno-parentheses -Wno-unused-parameter -fdiagnostics-show-option
|
||||||
# CFLAGS += -Wold-style-cast -Wundef -Wshadow -Wctor-dtor-privacy -Wredundant-decls -Wstrict-overflow=5 -Wcast-align
|
# CFLAGS += -Wold-style-cast -Wundef -Wshadow -Wctor-dtor-privacy -Wredundant-decls -Wstrict-overflow=5 -Wcast-align
|
||||||
LFLAGS := -lpthread -lm -lboost_system -lboost_thread -lboost_program_options -lboost_date_time -lssl -lcrypto -lcurl -lmysqlcppconn -lmysqlclient -lz -ldl
|
LFLAGS := -lpthread -lm -lboost_system -lboost_thread -lboost_program_options -lboost_date_time -lssl -lcrypto -lcurl -lz -ldl -lbluetooth
|
||||||
|
|
||||||
AR := /opt/build/rpi-armv6/tools/arm-bcm2708/arm-linux-gnueabihf/bin/arm-linux-gnueabihf-ar
|
AR := /opt/build/rpi-armv6/tools/arm-bcm2708/arm-linux-gnueabihf/bin/arm-linux-gnueabihf-ar
|
||||||
CC := /opt/build/rpi-armv6/tools/arm-bcm2708/arm-linux-gnueabihf/bin/arm-linux-gnueabihf-g++
|
CC := /opt/build/rpi-armv6/tools/arm-bcm2708/arm-linux-gnueabihf/bin/arm-linux-gnueabihf-g++
|
||||||
STRIP := /opt/build/rpi-armv6/tools/arm-bcm2708/arm-linux-gnueabihf/bin/arm-linux-gnueabihf-strip
|
STRIP := /opt/build/rpi-armv6/tools/arm-bcm2708/arm-linux-gnueabihf/bin/arm-linux-gnueabihf-strip
|
||||||
OBJCOPY := /opt/build/rpi-armv6/tools/arm-bcm2708/arm-linux-gnueabihf/bin/arm-linux-gnueabihf-objcopy
|
OBJCOPY := /opt/build/rpi-armv6/tools/arm-bcm2708/arm-linux-gnueabihf/bin/arm-linux-gnueabihf-objcopy
|
||||||
|
|
||||||
CFLAGS += -I/opt/build/rpi-armv6/include -I/opt/build/rpi-armv6/include/mysql
|
CFLAGS += -I/opt/build/rpi-armv6/include
|
||||||
LFLAGS += -L/opt/build/rpi-armv6/lib --sysroot /opt/build/rpi-armv6/tools/arm-bcm2708/arm-linux-gnueabihf/arm-linux-gnueabihf/sysroot -Wl,-rpath,/opt/build/rpi-armv6/lib
|
LFLAGS += -L/opt/build/rpi-armv6/lib --sysroot /opt/build/rpi-armv6/tools/arm-bcm2708/arm-linux-gnueabihf/arm-linux-gnueabihf/sysroot -Wl,-rpath,/opt/build/rpi-armv6/lib
|
||||||
|
|
||||||
CFLAGS += -I/opt/build/DomoticaServer
|
CFLAGS += -fpermissive
|
||||||
|
CFLAGS += -I/opt/build/PresenceDetection
|
||||||
|
|
||||||
CFLAGS += -ffunction-sections -fdata-sections
|
CFLAGS += -ffunction-sections -fdata-sections
|
||||||
LFLAGS += -Wl,--gc-sections
|
LFLAGS += -Wl,--gc-sections
|
||||||
@@ -0,0 +1,26 @@
|
|||||||
|
#
|
||||||
|
# Makefile.conf
|
||||||
|
#
|
||||||
|
|
||||||
|
CFLAGS := -g3 -O3 -fPIC -marm -march=armv8-a -std=c++11
|
||||||
|
CFLAGS += -Wall -Wextra -Wstrict-aliasing -fmax-errors=5 -Werror -Wunreachable-code -Wdisabled-optimization -Wformat=2 -Winit-self -Wlogical-op -Wmissing-include-dirs -Wnoexcept -Woverloaded-virtual -Wsign-promo -Wstrict-null-sentinel -Wswitch-default -Wno-unused -Wno-variadic-macros -Wno-parentheses -Wno-unused-parameter -Wno-missing-field-initializers -fdiagnostics-show-option
|
||||||
|
# CFLAGS += -Wold-style-cast -Wundef -Wshadow -Wctor-dtor-privacy -Wredundant-decls -Wstrict-overflow=5 -Wcast-align
|
||||||
|
LFLAGS := -lpthread -lm -lboost_system -lboost_thread -lboost_program_options -lboost_date_time -lssl -lcrypto -lcurl -lz -ldl -lbluetooth
|
||||||
|
|
||||||
|
AR := /opt/build/rpi-armv8/tools/arm-bcm2708/arm-linux-gnueabihf/bin/arm-linux-gnueabihf-ar
|
||||||
|
CC := /opt/build/rpi-armv8/tools/arm-bcm2708/arm-linux-gnueabihf/bin/arm-linux-gnueabihf-g++
|
||||||
|
STRIP := /opt/build/rpi-armv8/tools/arm-bcm2708/arm-linux-gnueabihf/bin/arm-linux-gnueabihf-strip
|
||||||
|
OBJCOPY := /opt/build/rpi-armv8/tools/arm-bcm2708/arm-linux-gnueabihf/bin/arm-linux-gnueabihf-objcopy
|
||||||
|
|
||||||
|
CFLAGS += -I/opt/build/rpi-armv8/include
|
||||||
|
LFLAGS += -L/opt/build/rpi-armv8/lib --sysroot /opt/build/rpi-armv8/tools/arm-bcm2708/arm-linux-gnueabihf/arm-linux-gnueabihf/sysroot -Wl,-rpath,/opt/build/rpi-armv8/lib
|
||||||
|
|
||||||
|
CFLAGS += -fpermissive
|
||||||
|
CFLAGS += -I/opt/build/PresenceDetection
|
||||||
|
|
||||||
|
CFLAGS += -ffunction-sections -fdata-sections
|
||||||
|
LFLAGS += -Wl,--gc-sections
|
||||||
|
SFLAGS := -s -R .comment -R .gnu.version --strip-unneeded
|
||||||
|
|
||||||
|
DEBUGDIR := .debug
|
||||||
|
DATETIME := `date +'%y%m%d-%H%M'`
|
||||||
@@ -2,7 +2,7 @@
|
|||||||
# Makefile.conf.local
|
# Makefile.conf.local
|
||||||
#
|
#
|
||||||
|
|
||||||
CFLAGS := -g3 -O3 -Wall -fPIC
|
CFLAGS := -g3 -O3 -Wall -fPIC -std=c++11
|
||||||
CFLAGS += -Wall -Wextra -Wstrict-aliasing -pedantic -fmax-errors=5 -Werror -Wunreachable-code -Wcast-qual -Wdisabled-optimization -Wformat=2 -Winit-self -Wlogical-op -Wmissing-include-dirs -Wnoexcept -Woverloaded-virtual -Wsign-promo -Wstrict-null-sentinel -Wswitch-default -Wno-unused -Wno-variadic-macros -Wno-parentheses -fdiagnostics-show-option
|
CFLAGS += -Wall -Wextra -Wstrict-aliasing -pedantic -fmax-errors=5 -Werror -Wunreachable-code -Wcast-qual -Wdisabled-optimization -Wformat=2 -Winit-self -Wlogical-op -Wmissing-include-dirs -Wnoexcept -Woverloaded-virtual -Wsign-promo -Wstrict-null-sentinel -Wswitch-default -Wno-unused -Wno-variadic-macros -Wno-parentheses -fdiagnostics-show-option
|
||||||
# CFLAGS += -Wold-style-cast -Wundef -Wshadow -Wctor-dtor-privacy -Wredundant-decls -Wstrict-overflow=5 -Wcast-align
|
# CFLAGS += -Wold-style-cast -Wundef -Wshadow -Wctor-dtor-privacy -Wredundant-decls -Wstrict-overflow=5 -Wcast-align
|
||||||
LFLAGS := -lpthread -lm -lboost_system -lboost_thread -lboost_program_options -lboost_date_time -lssl -lcrypto -lcurl -lz -ldl -lbluetooth
|
LFLAGS := -lpthread -lm -lboost_system -lboost_thread -lboost_program_options -lboost_date_time -lssl -lcrypto -lcurl -lz -ldl -lbluetooth
|
||||||
Reference in New Issue
Block a user