diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 825d202e34bb1291ad7755e9a64f12f593782a82..812485d7c229af92722f9864f710a801bddc3cdd 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,58 +1,66 @@
-# This file is a template, and might need editing before it works on your project.
-# use the official gcc image, based on debian
-# can use verions as well, like gcc:5.2
-# see https://hub.docker.com/_/gcc/
-image: gcc
+linux job:
+  tags: linux
+  image: gcc
 
-build-sbbs:
-  stage: build
-  # instead of calling g++ directly you can also use some build toolkit like make
-  # install the necessary build tools when needed
-  # before_script:
-  #   - apt update && apt -y install make autoconf
-  script:
-    - cd src/sbbs3
-    - make all
-    - make gtkutils
-    - make RELEASE=1 all
-    - make RELEASE=1 gtkutils
-  artifacts:
-    name: sbbs
-    paths:
-      - "src/sbbs3/*.exe.release/*"
-      - "src/sbbs3/*.lib.release/*"
-      - "src/sbbs3/*/*.exe.release/*"
+  build-sbbs:
+    stage: build
+    # instead of calling g++ directly you can also use some build toolkit like make
+    # install the necessary build tools when needed
+    # before_script:
+    #   - apt update && apt -y install make autoconf
+    script:
+      - cd src/sbbs3
+      - make all
+      - make gtkutils
+      - make RELEASE=1 all
+      - make RELEASE=1 gtkutils
+    artifacts:
+      name: sbbs
+      paths:
+        - "src/sbbs3/*.exe.release/*"
+        - "src/sbbs3/*.lib.release/*"
+        - "src/sbbs3/*/*.exe.release/*"
 
-build-sexpots:
-  stage: build
-  # instead of calling g++ directly you can also use some build toolkit like make
-  # install the necessary build tools when needed
-  # before_script:
-  #   - apt update && apt -y install make autoconf
-  script:
-    - cd src/sexpots
-    - make RELEASE=1
-  artifacts:
-    name: sexpots
-    paths:
-      - "src/sexpots/*.exe.release/*"
+  build-sexpots:
+    stage: build
+    # instead of calling g++ directly you can also use some build toolkit like make
+    # install the necessary build tools when needed
+    # before_script:
+    #   - apt update && apt -y install make autoconf
+    script:
+      - cd src/sexpots
+      - make RELEASE=1
+    artifacts:
+      name: sexpots
+      paths:
+        - "src/sexpots/*.exe.release/*"
 
-build-syncterm:
-  stage: build
-  # instead of calling g++ directly you can also use some build toolkit like make
-  # install the necessary build tools when needed
-  # before_script:
-  #   - apt update && apt -y install make autoconf
-  script:
-    - cd src/syncterm
-    - make RELEASE=1
-  artifacts:
-    name: syncterm
-    paths:
-      - "src/syncterm/*.exe.release/*"
+  build-syncterm:
+    stage: build
+    # instead of calling g++ directly you can also use some build toolkit like make
+    # install the necessary build tools when needed
+    # before_script:
+    #   - apt update && apt -y install make autoconf
+    script:
+      - cd src/syncterm
+      - make RELEASE=1
+    artifacts:
+      name: syncterm
+      paths:
+        - "src/syncterm/*.exe.release/*"
 
-# run tests using the binary built before
-#test:
-#  stage: test
-#  script:
-#    - ./runmytests.sh
+
+window job:
+  tags: windows
+
+  build-sbbs:
+    stage: build
+    script:
+      - cd src/sbbs3
+      - build.bat
+    artifacts:
+      name: sbbs
+      paths:
+        - "src/sbbs3/*.exe.release/*"
+        - "src/sbbs3/*.lib.release/*"
+        - "src/sbbs3/*/*.exe.release/*"