name: Build majestic runtime on: push jobs: ubuntu-build: name: Build on Ubuntu runs-on: ubuntu-20.04 steps: - uses: actions/checkout@v2 - name: Build C runtime working-directory: ./src/runtime/c run: | autoreconf -i ./configure make sudo make install - uses: actions/upload-artifact@master with: name: libpgf-ubuntu path: | /usr/local/lib/libpgf* /usr/local/include/pgf ubuntu-haskell: name: Build & test Haskell bindings on Ubuntu runs-on: ubuntu-20.04 needs: ubuntu-build steps: - uses: actions/checkout@v2 - uses: actions/download-artifact@master with: name: libpgf-ubuntu - run: mv lib/* /usr/local/lib/ mv include/* /usr/local/include/ - name: Display structure of downloaded files run: ls -R /usr/local - name: Setup Haskell uses: haskell/actions/setup@v1 # with: # ghc-version: '8.6' # cabal-version: '2.4.1.0' - name: Run Haskell testsuite working-directory: ./src/runtime/haskell env: LD_LIBRARY_PATH: /usr/local/lib run: | cabal test --extra-lib-dirs=/usr/local/lib # - name: Install Python bindings # working-directory: ./src/runtime/python # run: | # python setup.py build # sudo python setup.py install # # - name: Run Python testsuite # working-directory: ./src/runtime/python # env: # LD_LIBRARY_PATH: /usr/local/lib # run: | # pip install pytest # pytest # # - name: Run JavaScript testsuite # working-directory: ./src/runtime/javascript # env: # LD_LIBRARY_PATH: /usr/local/lib # run: | # npm ci # npm run test # macos: # name: Build on macOS # runs-on: macOS-11 # # steps: # - uses: actions/checkout@v2 # # - name: Install build tools # run: | # brew install \ # autoconf \ # automake \ # libtool \ # # - name: Build C runtime # working-directory: ./src/runtime/c # run: | # glibtoolize # autoreconf -i # ./configure # make # sudo make install # # - name: Setup Haskell # uses: haskell/actions/setup@v1 # # with: # # ghc-version: '8.6' # # cabal-version: '2.4.1.0' # # - name: Run Haskell testsuite # working-directory: ./src/runtime/haskell # env: # LD_LIBRARY_PATH: /usr/local/lib # run: | # cabal test --extra-lib-dirs=/usr/local/lib