Переглянути джерело

Fix drivers.h dependency, defer macro evaluation (#11450)

Scott Lahteine 7 роки тому
джерело
коміт
131d216afa
Аккаунт користувача з таким Email не знайдено
2 змінених файлів з 9 додано та 42 видалено
  1. 8
    41
      Marlin/src/core/drivers.h
  2. 1
    1
      Marlin/src/inc/MarlinConfigPre.h

+ 8
- 41
Marlin/src/core/drivers.h Переглянути файл

@@ -44,47 +44,14 @@
44 44
 #define AXIS_DRIVER_TYPE_X(T) AXIS_DRIVER_TYPE(X,T)
45 45
 #define AXIS_DRIVER_TYPE_Y(T) AXIS_DRIVER_TYPE(Y,T)
46 46
 #define AXIS_DRIVER_TYPE_Z(T) AXIS_DRIVER_TYPE(Z,T)
47
-
48
-#if ENABLED(X_DUAL_STEPPER_DRIVERS) || ENABLED(DUAL_X_CARRIAGE)
49
-  #define AXIS_DRIVER_TYPE_X2(T) AXIS_DRIVER_TYPE(X2,T)
50
-#else
51
-  #define AXIS_DRIVER_TYPE_X2(T) false
52
-#endif
53
-#if ENABLED(Y_DUAL_STEPPER_DRIVERS)
54
-  #define AXIS_DRIVER_TYPE_Y2(T) AXIS_DRIVER_TYPE(Y2,T)
55
-#else
56
-  #define AXIS_DRIVER_TYPE_Y2(T) false
57
-#endif
58
-#if ENABLED(Z_DUAL_STEPPER_DRIVERS)
59
-  #define AXIS_DRIVER_TYPE_Z2(T) AXIS_DRIVER_TYPE(Z2,T)
60
-#else
61
-  #define AXIS_DRIVER_TYPE_Z2(T) false
62
-#endif
63
-#if E_STEPPERS > 0
64
-  #define AXIS_DRIVER_TYPE_E0(T) AXIS_DRIVER_TYPE(E0,T)
65
-#else
66
-  #define AXIS_DRIVER_TYPE_E0(T) false
67
-#endif
68
-#if E_STEPPERS > 1
69
-  #define AXIS_DRIVER_TYPE_E1(T) AXIS_DRIVER_TYPE(E1,T)
70
-#else
71
-  #define AXIS_DRIVER_TYPE_E1(T) false
72
-#endif
73
-#if E_STEPPERS > 2
74
-  #define AXIS_DRIVER_TYPE_E2(T) AXIS_DRIVER_TYPE(E2,T)
75
-#else
76
-  #define AXIS_DRIVER_TYPE_E2(T) false
77
-#endif
78
-#if E_STEPPERS > 3
79
-  #define AXIS_DRIVER_TYPE_E3(T) AXIS_DRIVER_TYPE(E3,T)
80
-#else
81
-  #define AXIS_DRIVER_TYPE_E3(T) false
82
-#endif
83
-#if E_STEPPERS > 4
84
-  #define AXIS_DRIVER_TYPE_E4(T) AXIS_DRIVER_TYPE(E4,T)
85
-#else
86
-  #define AXIS_DRIVER_TYPE_E4(T) false
87
-#endif
47
+#define AXIS_DRIVER_TYPE_X2(T) (ENABLED(X_DUAL_STEPPER_DRIVERS) || ENABLED(DUAL_X_CARRIAGE)) && AXIS_DRIVER_TYPE(X2,T)
48
+#define AXIS_DRIVER_TYPE_Y2(T) (ENABLED(Y_DUAL_STEPPER_DRIVERS) && AXIS_DRIVER_TYPE(Y2,T))
49
+#define AXIS_DRIVER_TYPE_Z2(T) (ENABLED(Z_DUAL_STEPPER_DRIVERS) && AXIS_DRIVER_TYPE(Z2,T))
50
+#define AXIS_DRIVER_TYPE_E0(T) (E_STEPPERS > 0 && AXIS_DRIVER_TYPE(E0,T))
51
+#define AXIS_DRIVER_TYPE_E1(T) (E_STEPPERS > 1 && AXIS_DRIVER_TYPE(E1,T))
52
+#define AXIS_DRIVER_TYPE_E2(T) (E_STEPPERS > 2 && AXIS_DRIVER_TYPE(E2,T))
53
+#define AXIS_DRIVER_TYPE_E3(T) (E_STEPPERS > 3 && AXIS_DRIVER_TYPE(E3,T))
54
+#define AXIS_DRIVER_TYPE_E4(T) (E_STEPPERS > 4 && AXIS_DRIVER_TYPE(E4,T))
88 55
 
89 56
 #define HAS_DRIVER(T)  (AXIS_DRIVER_TYPE_X(T)  || AXIS_DRIVER_TYPE_X2(T) || \
90 57
                         AXIS_DRIVER_TYPE_Y(T)  || AXIS_DRIVER_TYPE_Y2(T) || \

+ 1
- 1
Marlin/src/inc/MarlinConfigPre.h Переглянути файл

@@ -29,8 +29,8 @@
29 29
 #include "../core/types.h"
30 30
 #include "Version.h"
31 31
 #include "../../Configuration.h"
32
-#include "../core/drivers.h"
33 32
 #include "Conditionals_LCD.h"
33
+#include "../core/drivers.h"
34 34
 #include "../../Configuration_adv.h"
35 35
 #include "Conditionals_adv.h"
36 36
 

Завантаження…
Відмінити
Зберегти