Skip to content
Snippets Groups Projects
.gitlab-ci.yml 4.43 KiB
Newer Older
.rules:
  rules:
    - changes:
      - src/**/*
      - 3rdp/**/*
      - ctrl/text.dat
      - xtrn/**/{GNUm,M}akefile
      - xtrn/**/*.{c,h,cpp,hpp,mk}
  script:
    - cd src/sbbs3
    - make RELEASE=1 all
    - make RELEASE=1 gtkutils
  artifacts:
    paths:
      - "src/sbbs3/*.exe.release/*"
      - "src/sbbs3/*.lib.release/*"
      - "src/sbbs3/*/*.exe.release/*"
  image: gcc
  stage: build
    - cd src/sexpots
    - make RELEASE=1 PREFIX=/usr dpkg
    name: sexpots-linux-x64
    paths:
      - "src/sexpots/*.exe.release/*"
      - "src/syncterm/syncterm*.deb"

  image: gcc
  stage: build
  script:
    - cd src/syncterm
    - make RELEASE=1
  artifacts:
    paths:
      - "src/syncterm/*.exe.release/*"
  tags: [Windows]
    - cd src/xpdev
    - make
    - cd ../../src/sbbs3
    - cd ../../../xtrn/sbj
    - make
    - cd ../tbd
    - make
      - "src/sbbs3/*.exe.release/*.exe"
      - "src/sbbs3/*.dll.release/*.dll"
      - "src/sbbs3/*/*.exe.release/*.exe"

sexpots-windows:
  tags: [Windows]
  stage: build
  script:
    - cd src/sexpots
    - .\release.bat
  artifacts:
    name: sexpots-win32
    paths:
      - "src/sexpots/Release/*.exe"

svdm-windows:
  tags: [Windows]
  stage: build
  extends: .rules
  script:
    - cd src/vdmodem
    - .\release.bat
  artifacts:
    name: svdm-win32
    paths:
      - "src/vdmodem/Release/*.exe"

syncterm-msvc:
  tags: [Windows]
  stage: build
  extends: .rules
  script:
    - cd src/syncterm
    - .\release.bat
  artifacts:
    name: syncterm-msvc
    paths:
      - "src/syncterm/Release/*.exe"

sbbs-freebsd:
  tags: [FreeBSD]
  stage: build
  script:
    - cd src/sbbs3
    - gmake RELEASE=1 all
  artifacts:
    paths:
      - "src/sbbs3/*.exe.release/*"
      - "src/sbbs3/*.lib.release/*"
      - "src/sbbs3/*/*.exe.release/*"

syncterm-freebsd:
  tags: [FreeBSD]
  stage: build
  script:
    - cd src/syncterm
    - gmake RELEASE=1
  artifacts:
    name: syncterm-freebsd-amd64
    paths:
      - "src/syncterm/*.exe.release/*"

syncterm-windows:
  tags: [FreeBSD]
  stage: build
  script:
    - cd src/syncterm
    - gmake AR=mingw32-ar AS=mingw32-as CC=mingw32-gcc CXX=mingw32-g++ RANLIB=mingw32-ranlib RELEASE=1 STATIC_CRYPTLIB=yes USE_SDL=1 VERBOSE=please WINDRES=mingw32-windres
  artifacts:
    name: syncterm-win32
    paths:
      - "src/syncterm/*.exe.release/*"

syncdraw-freebsd:
  tags: [FreeBSD]
  stage: build
  script:
    - cd src/syncdraw
    - gmake RELEASE=1
  artifacts:
    name: syncdraw-freebsd-amd64
    paths:
      - "src/syncdraw/*.exe.release/*"

syncdraw-linux:
  tags: [Linux]
  image: gcc
  stage: build
  artifacts:
    name: syncdraw-linux-x64
    paths:
      - "src/syncdraw/*.exe.release/*"

jsdoor-freebsd:
  tags: [FreeBSD]
  stage: build
  script:
    - cd src/sbbs3
    - gmake RELEASE=1 jsdoor
  artifacts:
    name: jsdoor-freebsd-amd64
    paths:
      - "src/sbbs3/*.exe.release/*"

jsdoor-linux:
  tags: [Linux]
  image: gcc
  stage: build
  script:
    - cd src/sbbs3
    - make RELEASE=1 jsdoor
  artifacts:
    name: jsdoor-linux-x64
    paths:
      - "src/sbbs3/*.exe.release/*"

sexpots-freebsd:
  tags: [FreeBSD]
  stage: build
  script:
    - cd src/sexpots
    - gmake RELEASE=1
  artifacts:
    name: sexpots-freebsd-amd64
    paths:
      - "src/sexpots/*.exe.release/*"

jsdoor-windows:
  tags: [FreeBSD]
  stage: build
  extends: .rules
  script:
    - cd src/sbbs3
    - gmake AR=mingw32-ar AS=mingw32-as CC=mingw32-gcc CXX=mingw32-g++ JSINCLUDE=../../3rdp/win32.release/mozjs/include/ JSLIB=mozjs JSLIBDIR=../../3rdp/win32.release/mozjs/bin/ RANLIB=mingw32-ranlib RELEASE=1 VERBOSE=please WINDRES=mingw32-windres jsdoor
  artifacts:
    name: jsdoor-win32
    paths:
      - "src/sbbs3/*.exe.release/*"