id: org.mamedev.MAME
runtime: org.kde.Platform
runtime-version: 5.15-22.08
sdk: org.kde.Sdk
command: mame
separate-locales: false
finish-args:
  - --device=all
  - --persist=.mame
  - --filesystem=home
  - --filesystem=host:ro
  - --share=network
  - --share=ipc
  - --socket=fallback-x11
  - --socket=pulseaudio
  - --socket=wayland
  - --allow=bluetooth
modules:
  - name: mame
    buildsystem: simple
    build-options:
      no-debuginfo: true
      strip: true
    build-commands:
      - make
          -j ${FLATPAK_BUILDER_N_JOBS}
          CFLAGS+=-Wno-error=restrict
          USE_SYSTEM_LIB_FLAC=1
          SDL_INI_PATH='$$HOME/.APP_NAME;/app/share/APP_NAME/ini'
          LDOPTS=-Wl,-s
      - install -Dm 0755 mame ${FLATPAK_DEST}/bin/mame
      - install -Dm 0644 ${FLATPAK_ID}.desktop ${FLATPAK_DEST}/share/applications/${FLATPAK_ID}.desktop
      - install -Dm 0644 ${FLATPAK_ID}.metainfo.xml ${FLATPAK_DEST}/share/metainfo/${FLATPAK_ID}.metainfo.xml
      - install -Dm 0644 mame16x16.png ${FLATPAK_DEST}/share/icons/hicolor/16x16/apps/${FLATPAK_ID}.png
      - install -Dm 0644 mame24x24.png ${FLATPAK_DEST}/share/icons/hicolor/24x24/apps/${FLATPAK_ID}.png
      - install -Dm 0644 mame32x32.png ${FLATPAK_DEST}/share/icons/hicolor/32x32/apps/${FLATPAK_ID}.png
      - install -Dm 0644 mame48x48.png ${FLATPAK_DEST}/share/icons/hicolor/48x48/apps/${FLATPAK_ID}.png
      - install -Dm 0644 mame64x64.png ${FLATPAK_DEST}/share/icons/hicolor/64x64/apps/${FLATPAK_ID}.png
      - install -Dm 0644 mame128x128.png ${FLATPAK_DEST}/share/icons/hicolor/128x128/apps/${FLATPAK_ID}.png
      - install -Dm 0644 mame256x256.png ${FLATPAK_DEST}/share/icons/hicolor/256x256/apps/${FLATPAK_ID}.png
      - cp COPYING ${FLATPAK_DEST}/bin/
      - cp uismall.bdf ${FLATPAK_DEST}/bin/
      - mkdir -p ${FLATPAK_DEST}/share/mame/
      - cp -r artwork/ ${FLATPAK_DEST}/share/mame/
      - cp -r bgfx/ ${FLATPAK_DEST}/share/mame/
      - cp -r ctrlr/ ${FLATPAK_DEST}/share/mame/
      - mkdir -p ${FLATPAK_DEST}/share/mame/docs/
      - cp -r docs/legal/ ${FLATPAK_DEST}/share/mame/docs/
      - cp -r docs/man/ ${FLATPAK_DEST}/share/mame/docs
      - cp -r hash/ ${FLATPAK_DEST}/share/mame/
      - cp -r hlsl/ ${FLATPAK_DEST}/share/mame/
      - cp -r ini/ ${FLATPAK_DEST}/share/mame/
      - install -Dm 0644 mame.ini ${FLATPAK_DEST}/share/mame/ini/mame.ini
      - cp -r language/ ${FLATPAK_DEST}/share/mame/
      - cp -r plugins/ ${FLATPAK_DEST}/share/mame/
      - cp -r roms/ ${FLATPAK_DEST}/share/mame/
      - cp -r samples/ ${FLATPAK_DEST}/share/mame/
    sources:
      - type: archive
        url: https://github.com/mamedev/mame/archive/refs/tags/mame0256.tar.gz
        sha256: 7523c46684043cc9e2af242aa7e31476b076fed492c3ae4ae0c964aafd65f659
      - type: file
        path: mame16x16.png
      - type: file
        path: mame24x24.png
      - type: file
        path: mame32x32.png
      - type: file
        path: mame48x48.png
      - type: file
        path: mame64x64.png
      - type: file
        path: mame128x128.png
      - type: file
        path: mame256x256.png
      - type: file
        path: org.mamedev.MAME.desktop
      - type: file
        path: org.mamedev.MAME.metainfo.xml
      - type: file
        path: mame.ini
      - type: patch
        path: floppy.patch
      - type: patch
        path: sound.patch
      - type: patch
        path: ym3802.patch