aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile13
-rwxr-xr-xconfigure14
2 files changed, 23 insertions, 4 deletions
diff --git a/Makefile b/Makefile
index 8bd42a27d7..79bf2b431e 100644
--- a/Makefile
+++ b/Makefile
@@ -16,7 +16,7 @@ MODULES :=
MODULE_DIRS :=
# Load the make rules generated by configure
-include config.mk
+-include config.mk
CXXFLAGS:= -Wall $(CXXFLAGS)
CXXFLAGS+= -Wno-long-long -Wno-multichar -Wno-unknown-pragmas
@@ -44,9 +44,14 @@ include $(srcdir)/Makefile.common
# check if configure has been run or has been changed since last run
config.mk: $(srcdir)/configure
- @echo "You need to run ./configure before you can run make"
- @echo "Either you haven't run it before or it has changed."
- @exit 1
+ifdef CONFIG_MK_IS_PRESENT
+ @echo "Running $(srcdir)/configure with the last specified parameters"
+ @sleep 2s
+ @LDFLAGS=$(SAVED_LDFLAGS) CXX=$(SAVED_CXX) CXXFLAGS=$(SAVED_CXXFLAGS) CPPFLAGS=$(SAVED_CPPFLAGS) \
+ $(srcdir)/configure $(SAVED_CONFIGFLAGS)
+else
+ $(error You need to run $(srcdir)/configure before you can run make. Check $(srcdir)/configure --help for a list of parameters)
+endif
install: all
$(INSTALL) -d "$(DESTDIR)$(BINDIR)"
diff --git a/configure b/configure
index 6614ca6b34..a817eb8a21 100755
--- a/configure
+++ b/configure
@@ -9,6 +9,12 @@
# * detect whether the chosen backend is available (e.g. call sdl-config)
# * ....
+# Save the current environment variables for next runs
+SAVED_CONFIGFLAGS=$@
+SAVED_LDFLAGS=$LDFLAGS
+SAVED_CXX=$CXX
+SAVED_CXXFLAGS=$CXXFLAGS
+SAVED_CPPFLAGS=$CPPFLAGS
# use environment vars if set
CXXFLAGS="$CXXFLAGS $CPPFLAGS"
@@ -1625,6 +1631,14 @@ INCLUDES += $INCLUDES
OBJS += $OBJS
DEFINES += $DEFINES
LDFLAGS += $LDFLAGS
+
+SAVED_CONFIGFLAGS := $SAVED_CONFIGFLAGS
+SAVED_LDFLAGS := $SAVED_LDFLAGS
+SAVED_CXX := $SAVED_CXX
+SAVED_CXXFLAGS := $SAVED_CXXFLAGS
+SAVED_CPPFLAGS := $SAVED_CPPFLAGS
+
+CONFIG_MK_IS_PRESENT := 1
EOF
#