mirror of
https://github.com/paparazzi/paparazzi.git
synced 2026-05-27 08:55:51 +08:00
[build] build in var/aircrafts/<ac_name> instead of var/<ac_name>
closes #649
This commit is contained in:
@@ -226,7 +226,9 @@ $(ABI_MESSAGES_H) : $(ABI_XML) generators
|
|||||||
$(Q)mv $($@_TMP) $@
|
$(Q)mv $($@_TMP) $@
|
||||||
$(Q)chmod a+r $@
|
$(Q)chmod a+r $@
|
||||||
|
|
||||||
|
#
|
||||||
|
# code generation for aircrafts from xml files
|
||||||
|
#
|
||||||
include Makefile.ac
|
include Makefile.ac
|
||||||
|
|
||||||
ac_h ac fbw ap: static conf generators ext
|
ac_h ac fbw ap: static conf generators ext
|
||||||
|
|||||||
+16
-14
@@ -1,6 +1,6 @@
|
|||||||
# Hey Emacs, this is a -*- makefile -*-
|
# Hey Emacs, this is a -*- makefile -*-
|
||||||
#
|
#
|
||||||
# Copyright (C) 2004 Pascal Brisset Antoine Drouin
|
# Copyright (C) 2003-2014 The Paparazzi Team
|
||||||
#
|
#
|
||||||
# This file is part of paparazzi.
|
# This file is part of paparazzi.
|
||||||
#
|
#
|
||||||
@@ -25,25 +25,27 @@ PAPARAZZI_SRC=$(shell pwd)
|
|||||||
|
|
||||||
include conf/Makefile.local
|
include conf/Makefile.local
|
||||||
|
|
||||||
|
# main directory where the generated files and compilation results for an aircraft are stored
|
||||||
|
AIRCRAFT_BUILD_DIR = $(PAPARAZZI_HOME)/var/aircrafts/$(AIRCRAFT)
|
||||||
CONF=$(PAPARAZZI_HOME)/conf
|
CONF=$(PAPARAZZI_HOME)/conf
|
||||||
CONF_XML=$(CONF)/conf.xml
|
CONF_XML=$(CONF)/conf.xml
|
||||||
AIRBORNE=sw/airborne
|
AIRBORNE=sw/airborne
|
||||||
MESSAGES_XML = $(CONF)/messages.xml
|
MESSAGES_XML = $(CONF)/messages.xml
|
||||||
ACINCLUDE = $(PAPARAZZI_HOME)/var/$(AIRCRAFT)
|
|
||||||
AIRCRAFT_CONF_DIR = $(ACINCLUDE)/conf
|
AIRCRAFT_CONF_DIR = $(AIRCRAFT_BUILD_DIR)/conf
|
||||||
AC_GENERATED = $(ACINCLUDE)/$(TARGET)/generated
|
AC_GENERATED = $(AIRCRAFT_BUILD_DIR)/$(TARGET)/generated
|
||||||
|
|
||||||
AIRFRAME_H=$(AC_GENERATED)/airframe.h
|
AIRFRAME_H=$(AC_GENERATED)/airframe.h
|
||||||
PERIODIC_H=$(AC_GENERATED)/periodic_telemetry.h
|
PERIODIC_H=$(AC_GENERATED)/periodic_telemetry.h
|
||||||
RADIO_H=$(AC_GENERATED)/radio.h
|
RADIO_H=$(AC_GENERATED)/radio.h
|
||||||
FLIGHT_PLAN_H=$(AC_GENERATED)/flight_plan.h
|
FLIGHT_PLAN_H=$(AC_GENERATED)/flight_plan.h
|
||||||
FLIGHT_PLAN_XML=$(ACINCLUDE)/flight_plan.xml
|
FLIGHT_PLAN_XML=$(AIRCRAFT_BUILD_DIR)/flight_plan.xml
|
||||||
SETTINGS_H=$(AC_GENERATED)/settings.h
|
SETTINGS_H=$(AC_GENERATED)/settings.h
|
||||||
SETTINGS_XMLS=$(patsubst %,$(CONF)/%,$(SETTINGS))
|
SETTINGS_XMLS=$(patsubst %,$(CONF)/%,$(SETTINGS))
|
||||||
SETTINGS_XML=$(ACINCLUDE)/settings.xml
|
SETTINGS_XML=$(AIRCRAFT_BUILD_DIR)/settings.xml
|
||||||
SETTINGS_MODULES=$(ACINCLUDE)/settings_modules.xml
|
SETTINGS_MODULES=$(AIRCRAFT_BUILD_DIR)/settings_modules.xml
|
||||||
SETTINGS_TELEMETRY=$(ACINCLUDE)/settings_telemetry.xml
|
SETTINGS_TELEMETRY=$(AIRCRAFT_BUILD_DIR)/settings_telemetry.xml
|
||||||
MAKEFILE_AC=$(ACINCLUDE)/Makefile.ac
|
MAKEFILE_AC=$(AIRCRAFT_BUILD_DIR)/Makefile.ac
|
||||||
MODULES_H=$(AC_GENERATED)/modules.h
|
MODULES_H=$(AC_GENERATED)/modules.h
|
||||||
MODULES_DIR=$(PAPARAZZI_HOME)/conf/modules/
|
MODULES_DIR=$(PAPARAZZI_HOME)/conf/modules/
|
||||||
AUTOPILOT_H=$(AC_GENERATED)/autopilot_core.h
|
AUTOPILOT_H=$(AC_GENERATED)/autopilot_core.h
|
||||||
@@ -107,10 +109,10 @@ print_version:
|
|||||||
|
|
||||||
|
|
||||||
all_ac_h: $(AIRFRAME_H) $(MODULES_H) $(SETTINGS_H) $(MAKEFILE_AC) $(PERIODIC_H) $(AUTOPILOT_H)
|
all_ac_h: $(AIRFRAME_H) $(MODULES_H) $(SETTINGS_H) $(MAKEFILE_AC) $(PERIODIC_H) $(AUTOPILOT_H)
|
||||||
@echo "TARGET: " $(TARGET)"\n" > $(ACINCLUDE)/$(TARGET)_srcs.list
|
@echo "TARGET: " $(TARGET)"\n" > $(AIRCRAFT_BUILD_DIR)/$(TARGET)_srcs.list
|
||||||
@echo "CFLAGS: " $($(TARGET).CFLAGS)"\n" >> $(ACINCLUDE)/$(TARGET)_srcs.list
|
@echo "CFLAGS: " $($(TARGET).CFLAGS)"\n" >> $(AIRCRAFT_BUILD_DIR)/$(TARGET)_srcs.list
|
||||||
@echo "LDFLAGS: " $($(TARGET).LDFLAGS)"\n" >> $(ACINCLUDE)/$(TARGET)_srcs.list
|
@echo "LDFLAGS: " $($(TARGET).LDFLAGS)"\n" >> $(AIRCRAFT_BUILD_DIR)/$(TARGET)_srcs.list
|
||||||
@echo "srcs: " $($(TARGET).srcs) >> $(ACINCLUDE)/$(TARGET)_srcs.list
|
@echo "srcs: " $($(TARGET).srcs) >> $(AIRCRAFT_BUILD_DIR)/$(TARGET)_srcs.list
|
||||||
|
|
||||||
radio_ac_h : $(RADIO_H)
|
radio_ac_h : $(RADIO_H)
|
||||||
|
|
||||||
@@ -212,6 +214,6 @@ ap: ap.compile
|
|||||||
|
|
||||||
clean_ac :
|
clean_ac :
|
||||||
$(Q)if (expr "$(AIRCRAFT)"); then : ; else echo "AIRCRAFT undefined: type 'make AIRCRAFT=AircraftName ...'"; exit 1; fi
|
$(Q)if (expr "$(AIRCRAFT)"); then : ; else echo "AIRCRAFT undefined: type 'make AIRCRAFT=AircraftName ...'"; exit 1; fi
|
||||||
rm -fr $(PAPARAZZI_HOME)/var/$(AIRCRAFT)
|
rm -fr $(AIRCRAFT_BUILD_DIR)
|
||||||
|
|
||||||
.PHONY: init all_ac_h radio_ac_h flight_plan_ac_h makefile_ac clean_ac print_version
|
.PHONY: init all_ac_h radio_ac_h flight_plan_ac_h makefile_ac clean_ac print_version
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ CHIBIOS_BOARD_DIR = $(PAPARAZZI_SRC)/sw/airborne/boards/$(BOARD)/chibios-libopen
|
|||||||
CHIBIOS_LIB_DIR = $(PAPARAZZI_SRC)/sw/airborne/subsystems/chibios-libopencm3
|
CHIBIOS_LIB_DIR = $(PAPARAZZI_SRC)/sw/airborne/subsystems/chibios-libopencm3
|
||||||
CHIBIOS_EXT = $(PAPARAZZI_SRC)/sw/ext/chibios
|
CHIBIOS_EXT = $(PAPARAZZI_SRC)/sw/ext/chibios
|
||||||
OPENCM3_EXT = $(PAPARAZZI_SRC)/sw/ext/libopencm3
|
OPENCM3_EXT = $(PAPARAZZI_SRC)/sw/ext/libopencm3
|
||||||
PPRZ_GENERATED = $(PAPARAZZI_SRC)/var/$(AIRCRAFT)/$(TARGET)/generated
|
PPRZ_GENERATED = $(AIRCRAFT_BUILD_DIR)/$(AIRCRAFT)/$(TARGET)/generated
|
||||||
PPRZ_CHIBIOS_OCM3 = $(SRC_FIRMWARE)/chibios-libopencm3
|
PPRZ_CHIBIOS_OCM3 = $(SRC_FIRMWARE)/chibios-libopencm3
|
||||||
|
|
||||||
# Launch with "make Q=''" to get full command display
|
# Launch with "make Q=''" to get full command display
|
||||||
|
|||||||
+1
-1
@@ -248,7 +248,7 @@ $(OBJDIR)/%.o : $(SRC_ARCH)/lpcusb/%.c $(OBJDIR)/../Makefile.ac
|
|||||||
$(Q)$(CC) -MMD -c $(ALL_CFLAGS) $(CONLYFLAGS) $< -o $@
|
$(Q)$(CC) -MMD -c $(ALL_CFLAGS) $(CONLYFLAGS) $< -o $@
|
||||||
|
|
||||||
|
|
||||||
# grab files in var/$(AIRCRAFT)/$(TARGET) aka $(OBJDIR)
|
# grab files in var/aircrafts/$(AIRCRAFT)/$(TARGET) aka $(OBJDIR)
|
||||||
#$(OBJDIR)/%.o : $(OBJDIR)/%.c
|
#$(OBJDIR)/%.o : $(OBJDIR)/%.c
|
||||||
# @echo CC $@
|
# @echo CC $@
|
||||||
# $(Q)$(CC) -c $(ALL_CFLAGS) $(CONLYFLAGS) $< -o $@
|
# $(Q)$(CC) -c $(ALL_CFLAGS) $(CONLYFLAGS) $< -o $@
|
||||||
|
|||||||
@@ -1,7 +1,6 @@
|
|||||||
# Hey Emacs, this is a -*- makefile -*-
|
# Hey Emacs, this is a -*- makefile -*-
|
||||||
#
|
#
|
||||||
# $Id$
|
# Copyright (C) 2003-2014 The Paparazzi Team
|
||||||
# Copyright (C) 2003-2005 Pascal Brisset, Antoine Drouin
|
|
||||||
#
|
#
|
||||||
# This file is part of paparazzi.
|
# This file is part of paparazzi.
|
||||||
#
|
#
|
||||||
@@ -25,15 +24,18 @@
|
|||||||
Q=@
|
Q=@
|
||||||
|
|
||||||
|
|
||||||
OBJDIR = $(PAPARAZZI_HOME)/var/$(AIRCRAFT)/$(TARGET)
|
# main directory where the generated files and compilation results for an aircraft are stored
|
||||||
VARINCLUDE=$(PAPARAZZI_HOME)/var/include
|
AIRCRAFT_BUILD_DIR = $(PAPARAZZI_HOME)/var/aircrafts/$(AIRCRAFT)
|
||||||
ACINCLUDE = $(PAPARAZZI_HOME)/var/$(AIRCRAFT)/$(TARGET)
|
|
||||||
|
OBJDIR = $(AIRCRAFT_BUILD_DIR)/$(TARGET)
|
||||||
|
ACINCLUDE = $(AIRCRAFT_BUILD_DIR)/$(TARGET)
|
||||||
|
VARINCLUDE = $(PAPARAZZI_HOME)/var/include
|
||||||
|
|
||||||
INCLUDES = -I$(PAPARAZZI_SRC)/sw/include -I$(PAPARAZZI_SRC)/sw/airborne -I$(PAPARAZZI_SRC)/conf/autopilot -I$(PAPARAZZI_SRC)/sw/airborne/arch/$($(TARGET).ARCHDIR) -I$(VARINCLUDE) -I$(ACINCLUDE)
|
INCLUDES = -I$(PAPARAZZI_SRC)/sw/include -I$(PAPARAZZI_SRC)/sw/airborne -I$(PAPARAZZI_SRC)/conf/autopilot -I$(PAPARAZZI_SRC)/sw/airborne/arch/$($(TARGET).ARCHDIR) -I$(VARINCLUDE) -I$(ACINCLUDE)
|
||||||
|
|
||||||
|
|
||||||
ifneq ($(MAKECMDGOALS),clean)
|
ifneq ($(MAKECMDGOALS),clean)
|
||||||
include $(PAPARAZZI_HOME)/var/$(AIRCRAFT)/Makefile.ac
|
include $(AIRCRAFT_BUILD_DIR)/Makefile.ac
|
||||||
$(TARGET).srcs += $($(TARGET).EXTRA_SRCS)
|
$(TARGET).srcs += $($(TARGET).EXTRA_SRCS)
|
||||||
include ../../conf/Makefile.local
|
include ../../conf/Makefile.local
|
||||||
|
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ udp2tcp: udp2tcp.c
|
|||||||
tcp2ivy: tcp2ivy.c
|
tcp2ivy: tcp2ivy.c
|
||||||
gcc -g -O2 -Wall $(shell pkg-config glib-2.0 --cflags) -o $@ $^ $(shell pkg-config glib-2.0 --libs) -lglibivy -lm
|
gcc -g -O2 -Wall $(shell pkg-config glib-2.0 --cflags) -o $@ $^ $(shell pkg-config glib-2.0 --libs) -lglibivy -lm
|
||||||
tcp2ivy_generic: tcp2ivy_generic.c
|
tcp2ivy_generic: tcp2ivy_generic.c
|
||||||
gcc -g -O2 -Wall $(shell pkg-config glib-2.0 --cflags) -I../../../var/${AIRCRAFT} -o $@ $^ $(shell pkg-config glib-2.0 --libs) -lglibivy -lm
|
gcc -g -O2 -Wall $(shell pkg-config glib-2.0 --cflags) -I../../../var/aircrafts/${AIRCRAFT} -o $@ $^ $(shell pkg-config glib-2.0 --libs) -lglibivy -lm
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
$(Q)rm -f email2udp udp2tcp tcp2ivy
|
$(Q)rm -f email2udp udp2tcp tcp2ivy
|
||||||
|
|||||||
@@ -317,7 +317,7 @@ let () =
|
|||||||
|
|
||||||
let value = fun attrib -> ExtXml.attrib aircraft_xml attrib in
|
let value = fun attrib -> ExtXml.attrib aircraft_xml attrib in
|
||||||
|
|
||||||
let aircraft_dir = Env.paparazzi_home // "var" // aircraft in
|
let aircraft_dir = Env.paparazzi_home // "var" // "aircrafts" // aircraft in
|
||||||
let aircraft_conf_dir = aircraft_dir // "conf" in
|
let aircraft_conf_dir = aircraft_dir // "conf" in
|
||||||
|
|
||||||
mkdir (Env.paparazzi_home // "var");
|
mkdir (Env.paparazzi_home // "var");
|
||||||
|
|||||||
Reference in New Issue
Block a user