diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index fc01ebef8b0214aa8e372df7f9bd092785e8140d..ee7df4177b93e997ab2ef6187d293d7b82056859 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -23,16 +23,15 @@ env_sanitize:
     <<: *main_tests
     stage: initialization
     script:
-        - mkdir -p $HOME/$CI_PIPELINE_ID/{build.clang,build.gcc,install.clang,install.gcc}
+        - mkdir -p $CI_PROJECT_DIR/{build.clang,build.gcc,install.clang,install.gcc}
         - echo "Env is intialized"
 
 env_finalize:
     <<: *main_tests
     stage: finalization
     allow_failure: true
-    when: always
-    script:
-        - rm -rf $HOME/$CI_PIPELINE_ID
+    when: on_success
+    script: rm -rf $CI_PROJECT_DIR
 
 #################################################
 ### Configures ##################################
@@ -41,16 +40,12 @@ env_finalize:
 configure_gcc:
     <<: *main_tests
     stage: configure
-    script:
-        - cd $HOME/$CI_PIPELINE_ID/
-        - scripts/validate.bash --compiler=clang --debug --static-modules --step=configure
+    script: scripts/validate.bash --build=gcc --debug --static-modules --step=configure
 
 configure_clang:
     <<: *main_tests
     stage: configure
-    script:
-        - cd $HOME/$CI_PIPELINE_ID/
-        - scripts/validate.bash --compiler=clang --debug --static-modules --step=configure
+    script: scripts/validate.bash --build=clang --debug --static-modules --step=configure
 
 #################################################
 ### Builds ######################################
@@ -59,16 +54,12 @@ configure_clang:
 build_gcc:
     <<: *main_tests
     stage: build
-    script:
-        - cd $HOME/$CI_PIPELINE_ID/
-        - scripts/validate.bash --compiler=gcc --step=build
+    script: scripts/validate.bash --build=gcc --step=build
 
 build_clang:
     <<: *main_tests
     stage: build
-    script:
-        - cd $HOME/$CI_PIPELINE_ID/build.clang
-        - scripts/validate.bash --compiler=clang --step=build
+    script: scripts/validate.bash --build=clang --step=build
 
 #################################################
 ### Tests #######################################
@@ -77,6 +68,4 @@ build_clang:
 test_basic:
     <<: *main_tests
     stage: test
-    script:
-        - cd $HOME/$CI_PIPELINE_ID/build.clang
-        - scripts/validate.bash --compiler=clang --step=launch --test=simple
+    script: scripts/validate.bash --build=clang --step=launch --test=simple
diff --git a/configure b/configure
index 594d0b03e1f784351d8c0768d3ddf75979c29202..a96786c9d36f938dbaed0db9206167cf1f1d0d83 100755
--- a/configure
+++ b/configure
@@ -13534,7 +13534,7 @@ _ACEOF
 
 
 
-LKT_BUILD_STRING="$CC $(uname -r) $(uname -m)"
+LKT_BUILD_STRING="$(basename $CC) $(uname -r) $(uname -m)"
 
 cat >>confdefs.h <<_ACEOF
 #define LKT_BUILD_STRING "$LKT_BUILD_STRING"
@@ -15896,6 +15896,7 @@ LKT_CONFIG_RESULT="
 # Build string......... $LKT_BUILD_STRING
 # Debug enabled........ $LKT_DEBUG_ENABLED
 # Prefix............... $prefix
+# Build folder......... $PWD
 # Endianes............. $(test $LKT_ENDIANES_LITTLE = 1 && echo little || echo big)
 #
 ###########################################
diff --git a/configure.ac b/configure.ac
index ab3ed1d251b77f22028998182cf3e2c6061425be..5e4da0231e3ed1b2f41283ca8382cf2489d0bc6e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -103,7 +103,7 @@ AC_SUBST([LKT_MAN_BINARY])
 AC_DEFINE_UNQUOTED([LKT_COMPILER], ["$CC"], [Lektor compiled with])
 AC_SUBST([LKT_COMPILER])
 
-LKT_BUILD_STRING="$CC $(uname -r) $(uname -m)"
+LKT_BUILD_STRING="$(basename $CC) $(uname -r) $(uname -m)"
 AC_DEFINE_UNQUOTED([LKT_BUILD_STRING], ["$LKT_BUILD_STRING"], [Build string])
 AC_SUBST([LKT_BUILD_STRING])
 
@@ -159,6 +159,7 @@ LKT_CONFIG_RESULT="
 # Build string......... $LKT_BUILD_STRING
 # Debug enabled........ $LKT_DEBUG_ENABLED
 # Prefix............... $prefix
+# Build folder......... $PWD
 # Endianes............. $(test $LKT_ENDIANES_LITTLE = 1 && echo little || echo big)
 #
 ###########################################
diff --git a/scripts/validate.bash b/scripts/validate.bash
index 996cab2a3a0ba44e6b8e121010f6b89e9fae90d6..d83ffc50aad6acfe8ec2fd889a6b043744e1928b 100755
--- a/scripts/validate.bash
+++ b/scripts/validate.bash
@@ -30,7 +30,7 @@ function test_simple ()
 ### Utility functions ########################################################
 function die ()
 {
-    printf "$IMPORTANT_COLOR$@$DEFAULT_COLOR\n" >/dev/stderr
+    printf "$IMPORTANT_COLOR$@$DEFAULT_COLOR\n"
     exit 1
 }
 
@@ -71,8 +71,8 @@ Step launch options:
 EOF
 }
 
-if ! [ -f $PWD/scripts/validate.sh ] ; then
-    die "This script should be run from the root of the project"
+if ! [ -f $PWD/scripts/validate.bash ] ; then
+    die "This script should be run from the root of the project, you are in $PWD"
 fi
 SQLITE3=$(which sqlite3)
 [ $? -ne 0 ] && die "Can't find the sqlite3 executable"
@@ -152,7 +152,7 @@ function process_args ()
         LKT_CONFIGURE_OPTIONS="$LKT_CONFIGURE_OPTIONS --with-debug"
     fi
     if [ "x$LKT_STATIC_MODULES" = "xyes" ] ; then
-        LKT_CONFIGURE_OPTIONS="$LKT_CONFIGURE_OPTIONS --with-static-modules"
+        LKT_CONFIGURE_OPTIONS="$LKT_CONFIGURE_OPTIONS --with-static-module"
     fi
     LKT_CONFIGURE_OPTIONS="$LKT_CONFIGURE_OPTIONS CC=$LKT_COMPILER"
 }
@@ -168,7 +168,7 @@ for arg in $* ; do
             LKT_DEBUG="yes"
             ;;
         --build=*)
-            LKT_COMPILER=$(echo "A$arg" | sed -e 's/A--build='//g)
+            LKT_COMPILER=$(echo "A$arg" | sed -e 's/A--build=//g')
             ;;
         --static-modules)
             LKT_STATIC_MODULES="yes"