diff options
author | Arnout Vandecappelle <arnout@mind.be> | 2015-07-12 16:35:26 +0200 |
---|---|---|
committer | Thomas Petazzoni <thomas.petazzoni@free-electrons.com> | 2015-07-15 00:42:01 +0200 |
commit | 7d69a79624b1f338950cd6cc650e029dd4d4b91a (patch) | |
tree | 14699419f86c579e0e285fd9a09c60220754012a /package/qt | |
parent | b4857df721ae0f01892323b9b744ab3950ce2e4d (diff) |
packages: use backtick instead of $(shell ...) make function
It is often difficult to know exactly when make will expand the
variable, and usually it can only be expanded after the dependencies
have been built (e.g. pkg-config or the .pc file). Using a backtick
instead makes it very clear that it will be expanded only while
executing the command.
This change is useful for two cases:
1. The per-package staging (and host) directory will be created as part
of the configure step, so any $(shell ...) variable that is used in
the configure step will fail because the directory doesn't exist
yet.
2. 'make printvars' evaluates the variables it prints. It will therefore
trigger a lot of errors from missing .pc files and others. The
backticks, on the other hand, are not expanded, so with this change
the output of 'make printvars' becomes clean again.
This commit contains only the easy changes: replace $(shell ...) with
`...`, and also replace ' with " where needed. Follow-up commits will
tackle the more complicated cases that need additional explanation.
After this change, the following instances of $(shell ...) will remain:
- All assignments that use :=
- All variables that are used in make conditionals (which don't expand
the backticks).
- All variables that only refer to system executables and make
variables that don't change.
- The calls to check-host-* in dependencies.mk, because it is eval'ed.
[Original patch by Fabio Porcedda, but extended quite a bit by Arnout.]
Signed-off-by: Fabio Porcedda <fabio.porcedda@gmail.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Diffstat (limited to 'package/qt')
-rw-r--r-- | package/qt/qt.mk | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/package/qt/qt.mk b/package/qt/qt.mk index 02b6db778..e0e5d22bd 100644 --- a/package/qt/qt.mk +++ b/package/qt/qt.mk @@ -230,9 +230,9 @@ QT_DEPENDENCIES += fontconfig xlib_libXi xlib_libX11 xlib_libXrender \ xlib_libXcursor xlib_libXrandr xlib_libXext xlib_libXv # Using pkg-config avoids us some logic to redefine and sed again mkspecs files # to add X11 include path and link options -QT_CFLAGS += $(shell $(PKG_CONFIG_HOST_BINARY) --cflags x11) -QT_CXXFLAGS += $(shell $(PKG_CONFIG_HOST_BINARY) --cflags x11) -QT_LDFLAGS += $(shell $(PKG_CONFIG_HOST_BINARY) --libs x11 xext) +QT_CFLAGS += `$(PKG_CONFIG_HOST_BINARY) --cflags x11` +QT_CXXFLAGS += `$(PKG_CONFIG_HOST_BINARY) --cflags x11` +QT_LDFLAGS += `$(PKG_CONFIG_HOST_BINARY) --libs x11 xext` QT_CONFIGURE_OPTS += -arch $(QT_EMB_PLATFORM) \ -xplatform qws/linux-$(QT_EMB_PLATFORM)-g++ -x11 -no-gtkstyle -no-sm \ -no-openvg @@ -329,9 +329,9 @@ endif ifeq ($(BR2_PACKAGE_QT_OPENGL_ES),y) QT_CONFIGURE_OPTS += -opengl es2 -egl QT_DEPENDENCIES += libgles libegl -QT_CFLAGS += $(shell $(PKG_CONFIG_HOST_BINARY) --cflags egl) -QT_CXXFLAGS += $(shell $(PKG_CONFIG_HOST_BINARY) --cflags egl) -QT_LDFLAGS += $(shell $(PKG_CONFIG_HOST_BINARY) --libs egl) +QT_CFLAGS += `$(PKG_CONFIG_HOST_BINARY) --cflags egl` +QT_CXXFLAGS += `$(PKG_CONFIG_HOST_BINARY) --cflags egl` +QT_LDFLAGS += `$(PKG_CONFIG_HOST_BINARY) --libs egl` else QT_CONFIGURE_OPTS += -no-opengl endif @@ -473,7 +473,7 @@ QT_QMAKE = $(HOST_DIR)/usr/bin/qmake -spec qws/linux-$(QT_EMB_PLATFORM)-g++ ################################################################################ define QT_QMAKE_SET $(SED) '/$(1)/d' $(3)/mkspecs/qws/linux-$(QT_EMB_PLATFORM)-g++/qmake.conf - $(SED) '/include.*qws.conf/a$(1) = $(2)' $(3)/mkspecs/qws/linux-$(QT_EMB_PLATFORM)-g++/qmake.conf + $(SED) "/include.*qws.conf/a$(1) = $(2)" $(3)/mkspecs/qws/linux-$(QT_EMB_PLATFORM)-g++/qmake.conf endef ifneq ($(QT_CONFIG_FILE),) |