BUILD: Makefile: add a "make opts" target to simply show the build options

We're often missing an easy way to map input variables to output ones.
The "opts" build target will simply show the input variables and the ones
passed to the compiler and linker. This way it's easier to quickly see
what a given build script or package will use, or the detected warnings
supported by the compiler.
This commit is contained in:
Willy Tarreau 2018-10-03 09:40:22 +02:00
parent 491cec20be
commit a8b12c6bb7
1 changed files with 17 additions and 0 deletions

View File

@ -1018,6 +1018,23 @@ update-version:
echo "$(SUBVERS)" > SUBVERS
echo "$(VERDATE)" > VERDATE
# just display the build options
opts:
@echo -n 'Using: '
@echo -n 'TARGET="$(strip $(TARGET))" '
@echo -n 'ARCH="$(strip $(ARCH))" '
@echo -n 'CPU="$(strip $(CPU))" '
@echo -n 'CC="$(strip $(CC))" '
@echo -n 'ARCH_FLAGS="$(strip $(ARCH_FLAGS))" '
@echo -n 'CPU_CFLAGS="$(strip $(CPU_CFLAGS))" '
@echo -n 'DEBUG_CFLAGS="$(strip $(DEBUG_CFLAGS))" '
@echo "$(strip $(BUILD_OPTIONS))"
@echo 'COPTS="$(strip $(COPTS))"'
@echo 'LDFLAGS="$(strip $(LDFLAGS))"'
@echo 'LDOPTS="$(strip $(LDOPTS))"'
@echo 'OPTIONS_OBJS="$(strip $(OPTIONS_OBJS))"'
@echo 'OBJS="$(strip $(OBJS))"'
# Target to run the regression testing script files.
# LEVEL 1 scripts are dedicated to pure haproxy compliance tests (prefixed with 'h' letter).
# LEVEL 2 scripts are slow scripts (prefixed with 's' letter).