emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master 9d77dea: Improve native compilation on emba


From: Michael Albinus
Subject: master 9d77dea: Improve native compilation on emba
Date: Sun, 3 Oct 2021 13:40:21 -0400 (EDT)

branch: master
commit 9d77dea374a08cafb0b0e4a0c1102671bf8f6f8b
Author: Michael Albinus <michael.albinus@gmx.de>
Commit: Michael Albinus <michael.albinus@gmx.de>

    Improve native compilation on emba
    
    * test/infra/Dockerfile.emba (emacs-native-comp)
    (emacs-native-comp-speed1, emacs-native-comp-speed2): New stages.
    (emacs-native-comp-speed0): Adapt.
    
    * test/infra/gitlab-ci.yml (.build-template): Add 'needs: []'.
    (.native-comp-template): Use 'only:' instead of 'rules:'.
    (build-native-comp-speed0): Rename from 'build-native-bootstrap-speed0'.
    (build-native-comp-speed1, build-native-comp-speed2)
    (test-native-comp-speed0): New jobs.
---
 test/infra/Dockerfile.emba | 20 +++++++++++++--
 test/infra/gitlab-ci.yml   | 64 ++++++++++++++++------------------------------
 2 files changed, 40 insertions(+), 44 deletions(-)

diff --git a/test/infra/Dockerfile.emba b/test/infra/Dockerfile.emba
index 71b4e76..c129bc8 100644
--- a/test/infra/Dockerfile.emba
+++ b/test/infra/Dockerfile.emba
@@ -72,14 +72,14 @@ RUN ./autogen.sh autoconf
 RUN ./configure --with-ns
 RUN make bootstrap
 
-FROM emacs-base as emacs-native-comp-speed0
+FROM emacs-base as emacs-native-comp
 
 RUN apt-get update && \
     apt-get install -y --no-install-recommends -o=Dpkg::Use-Pty=0 \
       libgccjit-6-dev \
     && rm -rf /var/lib/apt/lists/*
 
-ARG make_bootstrap_params=""
+FROM emacs-native-comp as emacs-native-comp-speed0
 
 COPY . /checkout
 WORKDIR /checkout
@@ -87,3 +87,19 @@ RUN ./autogen.sh autoconf
 RUN ./configure --with-native-compilation
 RUN make bootstrap -j2 \
       NATIVE_FULL_AOT=1 BYTE_COMPILE_EXTRA_FLAGS='--eval "(setq comp-speed 0)"'
+
+FROM emacs-native-comp as emacs-native-comp-speed1
+
+COPY . /checkout
+WORKDIR /checkout
+RUN ./autogen.sh autoconf
+RUN ./configure --with-native-compilation
+RUN make bootstrap -j2 BYTE_COMPILE_EXTRA_FLAGS='--eval "(setq comp-speed 1)"'
+
+FROM emacs-native-comp as emacs-native-comp-speed2
+
+COPY . /checkout
+WORKDIR /checkout
+RUN ./autogen.sh autoconf
+RUN ./configure --with-native-compilation
+RUN make bootstrap -j2
diff --git a/test/infra/gitlab-ci.yml b/test/infra/gitlab-ci.yml
index b233c0f..3c6d836 100644
--- a/test/infra/gitlab-ci.yml
+++ b/test/infra/gitlab-ci.yml
@@ -116,6 +116,7 @@ default:
     - test -n "$(docker ps -aq -f name=${test_name})" && docker rm ${test_name}
 
 .build-template:
+  needs: []
   rules:
     - if: '$CI_PIPELINE_SOURCE == "web"'
       when: always
@@ -189,18 +190,9 @@ default:
         - test/lisp/filenotify-tests.el
 
 .native-comp-template:
-  rules:
-    - if: '$CI_PIPELINE_SOURCE == "web"'
-    - if: '$CI_PIPELINE_SOURCE == "schedule"'
-      changes:
-        - "**/Makefile.in"
-        - .gitlab-ci.yml
-        - lisp/emacs-lisp/comp.el
-        - lisp/emacs-lisp/comp-cstr.el
-        - src/comp.{h,m}
-        - test/infra/*
-        - test/src/comp-resources/*.el
-        - test/src/comp-tests.el
+  only:
+    - web
+    - schedules
   timeout: 8 hours
 
 stages:
@@ -270,43 +262,31 @@ test-gnustep:
     target: emacs-gnustep
     make_params: install
 
-build-native-bootstrap-speed0:
+build-native-comp-speed0:
   stage: native-comp-images
   extends: [.job-template, .build-template, .native-comp-template]
   variables:
     target: emacs-native-comp-speed0
 
-# build-native-bootstrap-speed0:
-#   # Test a full native bootstrap
-#   # Run for now only speed 0 to limit memory usage and compilation time.
-#   stage: native-comp-images
-#   # Uncomment the following to run it only when scheduled.
-#   # only:
-#   #   - schedules
-#   script:
-#     - DEBIAN_FRONTEND=noninteractive apt install --no-install-recommends -y 
-qq -o=Dpkg::Use-Pty=0 libgccjit-6-dev
-#     - ./autogen.sh autoconf
-#     - ./configure --with-native-compilation
-#     - make bootstrap NATIVE_FULL_AOT=1 BYTE_COMPILE_EXTRA_FLAGS='--eval 
"(setq comp-speed 0)"' -j2
-#   timeout: 8 hours
+build-native-comp-speed1:
+  stage: native-comp-images
+  extends: [.job-template, .build-template, .native-comp-template]
+  variables:
+    target: emacs-native-comp-speed1
 
-# build-native-bootstrap-speed1:
-#   stage: native-comp-images
-#   script:
-#     - DEBIAN_FRONTEND=noninteractive apt install --no-install-recommends -y 
-qq -o=Dpkg::Use-Pty=0 libgccjit-6-dev
-#     - ./autogen.sh autoconf
-#     - ./configure --with-native-compilation
-#     - make bootstrap BYTE_COMPILE_EXTRA_FLAGS='--eval "(setq comp-speed 1)"'
-#   timeout: 8 hours
+build-native-comp-speed2:
+  stage: native-comp-images
+  extends: [.job-template, .build-template, .native-comp-template]
+  variables:
+    target: emacs-native-comp-speed2
 
-# build-native-bootstrap-speed2:
-#   stage: native-comp-images
-#   script:
-#     - DEBIAN_FRONTEND=noninteractive apt install --no-install-recommends -y 
-qq -o=Dpkg::Use-Pty=0 libgccjit-6-dev
-#     - ./autogen.sh autoconf
-#     - ./configure --with-native-compilation
-#     - make bootstrap
-#   timeout: 8 hours
+test-native-comp-speed0:
+  stage: native-comp
+  needs: [build-native-comp-speed0]
+  extends: [.job-template, .test-template, .native-comp-template]
+  variables:
+    target: emacs-native-comp-speed0
+    make_params: "-C test native-comp.log"
 
 test-all-inotify:
   # This tests also file monitor libraries inotify and inotifywatch.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]