fixed comp Makefile dependencies to minimize recompiling

This commit is contained in:
Forest Darling
2020-09-23 13:59:59 -05:00
parent 6eed6e4838
commit 8ba2f4a6a5
80 changed files with 215 additions and 227 deletions

2
.gitignore vendored
View File

@@ -73,9 +73,11 @@ eagle.epf
obj_*
inc/commandslist.h
inc/comps/*
inc/shared_comps/*
src/hal_tbl.c
src/conf_templates.c
stm32f303/inc/commandslist.h
stm32f303/inc/comps/*
stm32f303/inc/shared_comps/*
stm32f303/src/hal_tbl.c
toolchain-user.mak

187
Makefile
View File

@@ -15,6 +15,8 @@ TARGET = $(OBJDIR)/stmbl
# Define all C source files (dependencies are generated automatically)
INCDIRS += inc
INCDIRS += inc/comps
INCDIRS += inc/comps/hw
INCDIRS += inc/shared_comps
INCDIRS += shared
SOURCES += src/main.c
@@ -29,96 +31,97 @@ SOURCES += src/hal_tbl.c
HWVERSION = v4
ifeq ($(HWVERSION),v3)
COMPS += src/comps/hw/io3.c
COMPS += src/comps/hvf1.c
COMPS += shared/comps/pmsm.c
COMPS += shared/comps/curpid.c
COMPS += shared/comps/dq.c
COMPS += shared/comps/idq.c
SOURCES += shared/common_f1.c
SRC_COMPS += src/comps/hw/io3.c
SRC_COMPS += src/comps/hvf1.c
SHARED_COMPS += shared/comps/pmsm.c
SHARED_COMPS += shared/comps/curpid.c
SHARED_COMPS += shared/comps/dq.c
SHARED_COMPS += shared/comps/idq.c
SHARED_COMPS += shared/common_f1.c
CFLAGS += -DV3
else
COMPS += src/comps/hw/io4.c
COMPS += src/comps/hv.c
SRC_COMPS += src/comps/hw/io4.c
SRC_COMPS += src/comps/hv.c
#TODO: need backport to v3
COMPS += src/comps/enc_cmd.c
COMPS += src/comps/o_fb.c
COMPS += src/comps/sserial.c
COMPS += src/comps/yaskawa.c
COMPS += src/comps/encs.c
COMPS += src/comps/encf.c
COMPS += src/comps/endat.c
SRC_COMPS += src/comps/enc_cmd.c
SRC_COMPS += src/comps/o_fb.c
SRC_COMPS += src/comps/sserial.c
SRC_COMPS += src/comps/yaskawa.c
SRC_COMPS += src/comps/encs.c
SRC_COMPS += src/comps/encf.c
SRC_COMPS += src/comps/endat.c
CFLAGS += -DV4
endif
COMPS += src/comps/usart.c
COMPS += src/comps/encm.c
COMPS += src/comps/dmm.c
COMPS += src/comps/smartabs.c
COMPS += src/comps/adc.c
COMPS += src/comps/enc_fb.c
COMPS += src/comps/conf.c
COMPS += src/comps/res.c
COMPS += src/comps/hx711.c
SRC_COMPS += src/comps/usart.c
SRC_COMPS += src/comps/encm.c
SRC_COMPS += src/comps/dmm.c
SRC_COMPS += src/comps/smartabs.c
SRC_COMPS += src/comps/adc.c
SRC_COMPS += src/comps/enc_fb.c
SRC_COMPS += src/comps/conf.c
SRC_COMPS += src/comps/res.c
SRC_COMPS += src/comps/hx711.c
COMPS += shared/comps/sim.c
COMPS += shared/comps/term.c
COMPS += shared/comps/svm.c
SHARED_COMPS += shared/comps/sim.c
SHARED_COMPS += shared/comps/term.c
SHARED_COMPS += shared/comps/svm.c
COMPS += shared/comps/vel.c
COMPS += shared/comps/rev.c
COMPS += shared/comps/hal_test.c
# COMPS += shared/comps/dc.c
COMPS += shared/comps/ypid.c
COMPS += shared/comps/fault.c
COMPS += shared/comps/pid.c
COMPS += shared/comps/spid.c
COMPS += shared/comps/pe.c
COMPS += shared/comps/pmsm_limits.c
COMPS += shared/comps/pmsm_ttc.c
COMPS += shared/comps/dc_limits.c
COMPS += shared/comps/dc_ttc.c
COMPS += shared/comps/acim_ttc.c
COMPS += shared/comps/uvw.c
COMPS += shared/comps/fanuc.c
COMPS += shared/comps/fb_switch.c
COMPS += shared/comps/reslimit.c
COMPS += shared/comps/iit.c
COMPS += shared/comps/vel_int.c
COMPS += shared/comps/linrev.c
COMPS += shared/comps/psi.c
COMPS += shared/comps/stp.c
#COMPS += shared/comps/uf.c
COMPS += shared/comps/uf2.c
COMPS += shared/comps/ramp.c
COMPS += shared/comps/scale.c
COMPS += shared/comps/idx_home.c
COMPS += shared/comps/move.c
# COMPS += shared/comps/ac.c
COMPS += shared/comps/not.c
COMPS += shared/comps/and.c
COMPS += shared/comps/or.c
COMPS += shared/comps/jog.c
COMPS += shared/comps/velbuf.c
COMPS += shared/comps/avg.c
COMPS += shared/comps/mux.c
COMPS += shared/comps/veltopos.c
# COMPS += shared/comps/wobl.c
COMPS += shared/comps/debounce.c
COMPS += shared/comps/pos_filter.c
COMPS += shared/comps/rl.c
COMPS += shared/comps/mad.c
COMPS += shared/comps/sensorless.c
COMPS += shared/comps/field.c
COMPS += shared/comps/gain.c
COMPS += shared/comps/rlpsij.c
COMPS += shared/comps/veltime.c
COMPS += shared/comps/mpid.c
COMPS += shared/comps/fmove.c
COMPS += shared/comps/home.c
COMPS += shared/comps/en.c
COMPS += shared/comps/th.c
SHARED_COMPS += shared/comps/vel.c
SHARED_COMPS += shared/comps/rev.c
SHARED_COMPS += shared/comps/hal_test.c
# SHARED_COMPS += shared/comps/dc.c
SHARED_COMPS += shared/comps/ypid.c
SHARED_COMPS += shared/comps/fault.c
SHARED_COMPS += shared/comps/pid.c
SHARED_COMPS += shared/comps/spid.c
SHARED_COMPS += shared/comps/pe.c
SHARED_COMPS += shared/comps/pmsm_limits.c
SHARED_COMPS += shared/comps/pmsm_ttc.c
SHARED_COMPS += shared/comps/dc_limits.c
SHARED_COMPS += shared/comps/dc_ttc.c
SHARED_COMPS += shared/comps/acim_ttc.c
SHARED_COMPS += shared/comps/uvw.c
SHARED_COMPS += shared/comps/fanuc.c
SHARED_COMPS += shared/comps/fb_switch.c
SHARED_COMPS += shared/comps/reslimit.c
SHARED_COMPS += shared/comps/iit.c
SHARED_COMPS += shared/comps/vel_int.c
SHARED_COMPS += shared/comps/linrev.c
SHARED_COMPS += shared/comps/psi.c
SHARED_COMPS += shared/comps/stp.c
#SHARED_COMPS += shared/comps/uf.c
SHARED_COMPS += shared/comps/uf2.c
SHARED_COMPS += shared/comps/ramp.c
SHARED_COMPS += shared/comps/scale.c
SHARED_COMPS += shared/comps/idx_home.c
SHARED_COMPS += shared/comps/move.c
# SHARED_COMPS += shared/comps/ac.c
SHARED_COMPS += shared/comps/not.c
SHARED_COMPS += shared/comps/and.c
SHARED_COMPS += shared/comps/or.c
SHARED_COMPS += shared/comps/jog.c
SHARED_COMPS += shared/comps/velbuf.c
SHARED_COMPS += shared/comps/avg.c
SHARED_COMPS += shared/comps/mux.c
SHARED_COMPS += shared/comps/veltopos.c
# SHARED_COMPS += shared/comps/wobl.c
SHARED_COMPS += shared/comps/debounce.c
SHARED_COMPS += shared/comps/pos_filter.c
SHARED_COMPS += shared/comps/rl.c
SHARED_COMPS += shared/comps/mad.c
SHARED_COMPS += shared/comps/sensorless.c
SHARED_COMPS += shared/comps/field.c
SHARED_COMPS += shared/comps/gain.c
SHARED_COMPS += shared/comps/rlpsij.c
SHARED_COMPS += shared/comps/veltime.c
SHARED_COMPS += shared/comps/mpid.c
SHARED_COMPS += shared/comps/fmove.c
SHARED_COMPS += shared/comps/home.c
SHARED_COMPS += shared/comps/en.c
SHARED_COMPS += shared/comps/th.c
COMPS = $(SRC_COMPS) $(SHARED_COMPS)
SOURCES += $(COMPS)
# SOURCES += src/eeprom.c
@@ -194,6 +197,8 @@ CPPFLAGS += -DHSE_VALUE=8000000
LDSCRIPT = stm32_flash.ld
#============================================================================
SRC_COMP_OBJECTS = $(addprefix $(OBJDIR)/,$(addsuffix .o,$(basename $(SRC_COMPS))))
SHARED_COMP_OBJECTS = $(addprefix $(OBJDIR)/,$(addsuffix .o,$(basename $(SHARED_COMPS))))
OBJECTS += $(addprefix $(OBJDIR)/,$(addsuffix .o,$(basename $(SOURCES))))
OBJECTS += hv_firmware.o
CPPFLAGS += $(addprefix -I,$(INCDIRS))
@@ -289,18 +294,27 @@ bin: tbl $(TARGET).bin
lss: $(TARGET).lss
sym: $(TARGET).sym
$(OBJECTS): src/hal_tbl.c
$(OBJDIR)/shared/commands.o: inc/commandslist.h
inc/commandslist.h: tools/create_cmd.py $(SOURCES)
@echo Generating commands list
@$(PYTHON) tools/create_cmd.py inc/commandslist.h $(SOURCES)
src/hal_tbl.c &: tools/create_hal_tbl.py $(COMPS)
src/hal_tbl.c: tools/create_hal_tbl.py $(COMPS)
@echo Generating HAL table
@$(PYTHON) tools/create_hal_tbl.py . $(COMPS)
@$(PYTHON) tools/inc_comps.py . $(COMPS)
@$(PYTHON) tools/create_hal_tbl.py src/hal_tbl.c $(COMPS)
$(SRC_COMP_OBJECTS): $(OBJDIR)/src/comps/%.o: inc/comps/%_comp.h
$(SHARED_COMP_OBJECTS): $(OBJDIR)/shared/comps/%.o: inc/shared_comps/%_comp.h
inc/comps/%_comp.h: src/comps/%.c
@echo Generating H: $<
@$(PYTHON) tools/create_comp_h.py $@ $<
inc/shared_comps/%_comp.h: shared/comps/%.c
@echo Generating H: $<
@$(PYTHON) tools/create_comp_h.py $@ $<
src/conf_templates.c: tools/create_config.py $(CONFIG_TEMPLATES)
@echo Generating config
@@ -407,6 +421,7 @@ clean:
rm -rf $(OBJDIR)
rm -rf inc/commandslist.h
rm -rf inc/comps/*
rm -rf inc/shared_comps/*
rm -rf src/conf_templates.c
rm -rf src/hal_tbl.c
@$(MAKE) -f bootloader/Makefile clean

View File

@@ -1,4 +1,4 @@
#include "comps/acim_ttc_comp.h"
#include "acim_ttc_comp.h"
#include "commands.h"
#include "hal.h"
#include "math.h"

View File

@@ -1,4 +1,4 @@
#include "comps/and_comp.h"
#include "and_comp.h"
#include "hal.h"
HAL_COMP(and);

View File

@@ -1,4 +1,4 @@
#include "comps/avg_comp.h"
#include "avg_comp.h"
#include "hal.h"
#include "defines.h"

View File

@@ -1,4 +1,4 @@
#include "comps/curpid_comp.h"
#include "curpid_comp.h"
#include "commands.h"
#include "common.h"
#include "hal.h"

View File

@@ -1,4 +1,4 @@
#include "comps/dc_limits_comp.h"
#include "dc_limits_comp.h"
#include "commands.h"
#include "hal.h"
#include "math.h"

View File

@@ -1,4 +1,4 @@
#include "comps/dc_ttc_comp.h"
#include "dc_ttc_comp.h"
#include "commands.h"
#include "hal.h"
#include "math.h"

View File

@@ -1,4 +1,4 @@
#include "comps/debounce_comp.h"
#include "debounce_comp.h"
#include "commands.h"
#include "hal.h"
#include "math.h"

View File

@@ -1,4 +1,4 @@
#include "comps/dq_comp.h"
#include "dq_comp.h"
#include "commands.h"
#include "common.h"
#include "hal.h"

View File

@@ -1,4 +1,4 @@
#include "comps/en_comp.h"
#include "en_comp.h"
#include "commands.h"
#include "hal.h"
#include "math.h"

View File

@@ -1,4 +1,4 @@
#include "comps/fanuc_comp.h"
#include "fanuc_comp.h"
#include "commands.h"
#include "hal.h"
#include "math.h"

View File

@@ -1,4 +1,4 @@
#include "comps/fault_comp.h"
#include "fault_comp.h"
#include "commands.h"
#include "hal.h"
#include "math.h"

View File

@@ -1,4 +1,4 @@
#include "comps/fb_switch_comp.h"
#include "fb_switch_comp.h"
#include "commands.h"
#include "hal.h"
#include "math.h"

View File

@@ -1,4 +1,4 @@
#include "comps/field_comp.h"
#include "field_comp.h"
/*
* This file is part of the stmbl project.
*

View File

@@ -1,4 +1,4 @@
#include "comps/fmove_comp.h"
#include "fmove_comp.h"
#include "commands.h"
#include "hal.h"
#include "math.h"

View File

@@ -1,4 +1,4 @@
#include "comps/gain_comp.h"
#include "gain_comp.h"
#include "commands.h"
#include "hal.h"
#include "math.h"

View File

@@ -1,4 +1,4 @@
#include "comps/hal_test_comp.h"
#include "hal_test_comp.h"
#include "hal.h"
HAL_COMP(hal_test);

View File

@@ -1,4 +1,4 @@
#include "comps/home_comp.h"
#include "home_comp.h"
#include "commands.h"
#include "hal.h"
#include "math.h"

View File

@@ -1,4 +1,4 @@
#include "comps/idq_comp.h"
#include "idq_comp.h"
#include "commands.h"
#include "common.h"
#include "hal.h"

View File

@@ -1,4 +1,4 @@
#include "comps/idx_home_comp.h"
#include "idx_home_comp.h"
#include "commands.h"
#include "hal.h"
#include "math.h"

View File

@@ -1,4 +1,4 @@
#include "comps/iit_comp.h"
#include "iit_comp.h"
#include "commands.h"
#include "hal.h"
#include "math.h"

View File

@@ -1,4 +1,4 @@
#include "comps/jog_comp.h"
#include "jog_comp.h"
#include "commands.h"
#include "hal.h"
#include "defines.h"

View File

@@ -1,4 +1,4 @@
#include "comps/linrev_comp.h"
#include "linrev_comp.h"
//Calculate motor angle from position in machine units
/*

View File

@@ -1,4 +1,4 @@
#include "comps/mad_comp.h"
#include "mad_comp.h"
#include "hal.h"
HAL_COMP(mad);

View File

@@ -1,4 +1,4 @@
#include "comps/move_comp.h"
#include "move_comp.h"
#include "commands.h"
#include "hal.h"
#include "math.h"

View File

@@ -1,4 +1,4 @@
#include "comps/mpid_comp.h"
#include "mpid_comp.h"
#include "commands.h"
#include "hal.h"
#include "math.h"

View File

@@ -1,4 +1,4 @@
#include "comps/mux_comp.h"
#include "mux_comp.h"
#include "hal.h"
#include "defines.h"

View File

@@ -1,4 +1,4 @@
#include "comps/not_comp.h"
#include "not_comp.h"
#include "hal.h"
HAL_COMP(not);

View File

@@ -1,4 +1,4 @@
#include "comps/or_comp.h"
#include "or_comp.h"
#include "hal.h"
HAL_COMP(or);

View File

@@ -1,4 +1,4 @@
#include "comps/pe_comp.h"
#include "pe_comp.h"
#include "commands.h"
#include "hal.h"
#include "math.h"

View File

@@ -1,4 +1,4 @@
#include "comps/pid_comp.h"
#include "pid_comp.h"
/*
* This file is part of the stmbl project.
*

View File

@@ -1,4 +1,4 @@
#include "comps/pmsm_limits_comp.h"
#include "pmsm_limits_comp.h"
#include "commands.h"
#include "hal.h"
#include "math.h"

View File

@@ -1,4 +1,4 @@
#include "comps/pmsm_ttc_comp.h"
#include "pmsm_ttc_comp.h"
#include "commands.h"
#include "hal.h"
#include "math.h"

View File

@@ -1,4 +1,4 @@
#include "comps/pos_filter_comp.h"
#include "pos_filter_comp.h"
#include "hal.h"
#include "angle.h"
#include "defines.h"

View File

@@ -1,4 +1,4 @@
#include "comps/psi_comp.h"
#include "psi_comp.h"
#include "hal.h"
#include "math.h"
#include "defines.h"

View File

@@ -1,4 +1,4 @@
#include "comps/ramp_comp.h"
#include "ramp_comp.h"
#include "commands.h"
#include "hal.h"
#include "defines.h"

View File

@@ -1,4 +1,4 @@
#include "comps/reslimit_comp.h"
#include "reslimit_comp.h"
#include "commands.h"
#include "hal.h"
#include "math.h"

View File

@@ -1,4 +1,4 @@
#include "comps/rev_comp.h"
#include "rev_comp.h"
#include "commands.h"
#include "hal.h"
#include "math.h"

View File

@@ -1,4 +1,4 @@
#include "comps/rl_comp.h"
#include "rl_comp.h"
#include "hal.h"
#include "angle.h"
#include "defines.h"

View File

@@ -1,4 +1,4 @@
#include "comps/rlpsij_comp.h"
#include "rlpsij_comp.h"
#include "commands.h"
#include "hal.h"
#include "math.h"

View File

@@ -1,4 +1,4 @@
#include "comps/scale_comp.h"
#include "scale_comp.h"
#include "commands.h"
#include "hal.h"
#include "math.h"

View File

@@ -1,4 +1,4 @@
#include "comps/sensorless_comp.h"
#include "sensorless_comp.h"
/*
* This file is part of the stmbl project.
*

View File

@@ -1,4 +1,4 @@
#include "comps/sim_comp.h"
#include "sim_comp.h"
#include "commands.h"
#include "hal.h"
#include "math.h"

View File

@@ -1,4 +1,4 @@
#include "comps/spid_comp.h"
#include "spid_comp.h"
#include "commands.h"
#include "hal.h"
#include "math.h"

View File

@@ -1,4 +1,4 @@
#include "comps/stp_comp.h"
#include "stp_comp.h"
#include "hal.h"
#include "math.h"
#include "defines.h"

View File

@@ -1,4 +1,4 @@
#include "comps/svm_comp.h"
#include "svm_comp.h"
#include "commands.h"
#include "hal.h"
#include "math.h"

View File

@@ -1,4 +1,4 @@
#include "comps/term_comp.h"
#include "term_comp.h"
#include "commands.h"
#include "hal.h"
#include "defines.h"

View File

@@ -1,4 +1,4 @@
#include "comps/th_comp.h"
#include "th_comp.h"
#include "hal.h"
HAL_COMP(th);

View File

@@ -1,4 +1,4 @@
#include "comps/uf2_comp.h"
#include "uf2_comp.h"
#include "hal.h"
#include "defines.h"
#include "angle.h"

Some files were not shown because too many files have changed in this diff Show More