Commit Graph

84 Commits

Author SHA1 Message Date
Nadia Holmquist Pedersen
5959009ebd
Use Qt 6 by default on all platforms and update build instructions (#2187)
Some checks failed
macOS / ${{ matrix.arch }} (arm64) (push) Has been cancelled
macOS / ${{ matrix.arch }} (x86_64) (push) Has been cancelled
Ubuntu / x86_64 (push) Has been cancelled
Ubuntu / aarch64 (push) Has been cancelled
Windows / build (push) Has been cancelled
macOS / Universal binary (push) Has been cancelled
2024-11-05 17:03:07 +01:00
Nadia Holmquist Pedersen
deb1ba2bb2 README: Update build instructions to include enet and qtsvg
(input and battery dialogs don't render correctly without qtsvg, we
should have been installing it)
2024-08-13 08:40:10 +02:00
Nadia Holmquist Pedersen
7898b46435 Add Discord invite link to README.md 2024-07-02 10:06:05 +02:00
Nadia Holmquist Pedersen
a2406e3c0e
Vendored libslirp (#2045)
Add vendored libslirp into the repo with a shim to remove its dependency on glib.
2024-05-15 18:00:55 +02:00
Nadia Holmquist Pedersen
10798c3464 fix README build badges finally 2024-05-05 08:40:37 +02:00
Nadia Holmquist Pedersen
890035c688 readme: fix macOS build badge 2024-01-25 10:21:19 +01:00
Tuffy
b4aa7fafc9
Updated README.md (#1681)
inserted missing dependency in dynamic build instructions (qt5-tools)
2023-08-27 13:49:13 +02:00
Nadia Holmquist Pedersen
38b0d21c22
Support loading Zstandard-compressed ROMs (#1667)
This is different from the archive support in that the compressed ROMs
are standalone files, rather than archives, making it possible to use
them exactly as if they were regular ROMs, while saving a bunch of space
on disk. This is supported both for DS and GBA ROMs, though given GBA
ROMs' generally small size it's mostly useful for the former.
2023-04-28 19:19:58 +02:00
patata
105af5cf1a
Update CI badges in readme (#1602)
- See https://github.com/badges/shields/issues/8671
- Change Azure Pipelines macOS badges to the current GitHub Actions
2023-01-19 15:10:27 +01:00
Nadia Holmquist Pedersen
b069a2acf1 Clean Windows build instructions
* CMake in MSYS2 now depends on Ninja and uses it by default, use it
  instead of Make as it has much easier to read output when doing
  parallel builds and doesn't need an extra program
* Ninja uses the maximum number of cores by default, so we don't have to
  run nproc --all
* We don't need mesa for its headers anymore
2022-11-09 19:54:35 +01:00
Arisotura
430de6b270 BAHAHAHAHAHAJSKASLASJISFS--+|*~+-. 2022-11-03 20:35:21 +01:00
RSDuck
ac3118cbc5
No more context mess (#1531)
* WIP: use Duckstation's context code to directly render into QT Widget from separate thread without two OpenGL contexts

currently only works on Windows

* reenable gay OSD

* add back vsync

* make it atleast a little more thread safe

* linux support

* don't segfault on closing

* reorganise and cleanup build system
it's still not good, but better than before

* macos?

* try to get it working on Ubuntu CI
also update instructions

* let's try this

* ok how about this

* try creating an OGL 4.3 context first
(https://i.kym-cdn.com/photos/images/original/001/264/842/220.png)

* fix Ubuntu

* hm

* try again for Windows

* let's try this

* make the OpenGL renderer work again
that was stupid

* do OGL surface resizing from the mainthread

* Fix small mistake in GL context creation on macOS causing version 3.2 to
be considered invalid

* C stupidness

* cleanup

* don't let the emuthread deinit OGL if there's no OGL

* reset lastScreenWidth/Height when deiniting OpenGL

* disable stencil test while drawing framebuffers

* macOS: Link Cocoa framework explicitly when not building with Qt6

Seems to be needed for the classes used by DuckStation's GL context
code.

* Set ScreenPanelGL's minimum size immediately

Fixes GL context creation for OpenGL display on macOS using the wrong
size as the underlying window was not resized to the correct size by Qt
yet.

* don't emit window updates when OGL display is used

* stuff Arisotura said

Co-authored-by: Nadia Holmquist Pedersen <nadia@nhp.sh>
2022-10-17 22:55:11 +02:00
Nadia Holmquist Pedersen
338b8b5bfe
Change Qt dependencies for Windows dynamic builds as well
no reason to install the full huge Qt framework when there are individual packages.
2022-10-10 18:51:16 +02:00
Phosphorus Moscu
5e74fecb87
Update README.md
Add the missing dependencies to solve the errors when you run cmake
2022-10-09 22:24:16 -03:00
Nadia Holmquist Pedersen
993928095a Update repo URL in README.md 2022-09-14 19:02:22 +02:00
Nadia Holmquist Pedersen
94b33c924e
Modernize CMake build system (#1434)
These changes modernize the CMake build system to (hopefully) match newer best practices

* Library linking is simpler and more automatic because of using imported targets
* Multi-configuration builds should be supported (Ninja Multi-Config, Visual Studio, etc. generators)
* Clean up build options using cmake_dependent_option
* Let CMake do its job in more cases, like finding the math/dl libraries and detecting and enabling LTO support
* Remove platform-specific kludges like the Fedora/flatpak LTO workaround and a bunch of Windows stuff
* Simplify Windows static builds
* Consistent formatting
2022-05-21 19:54:55 +02:00
Rayyan Ansari
6c7485d017
Update package dependencies for Debian/Ubuntu and explicitly state it 2022-05-17 20:49:01 +01:00
Arisotura
fe96944fc0 insert wacky commit message 2022-03-08 12:03:16 +01:00
Arisotura
ad7976c04e update the TODO lists 2022-03-06 20:16:58 +01:00
Rayyan Ansari
e0052049b0
Fix icon URL in README 2021-10-03 09:39:36 +00:00
MysticExile
243077722b
Update version in README.md (#1221)
oops!
2021-10-02 12:05:05 +02:00
Rayyan Ansari
796d603332
Redesign the Input dialog (#1226) 2021-09-30 17:23:25 +00:00
techmuse
75b6ea339a
Fixing a typo (#1205) 2021-08-31 10:06:09 +02:00
WaluigiWare64
7aaee5ddb6
Add macOS ARM64 build badge 2021-07-22 15:13:33 +00:00
WaluigiWare64
297563cd97
Fix Linux build instructions
Fixes #1118
2021-06-05 12:21:41 +00:00
WaluigiWare64
63415f0eeb
Add -DUSE_QT6=ON to README 2021-05-02 13:13:43 +00:00
WaluigiWare64
6a655447d4
Update README instructions to use Qt 6 on macOS 2021-05-02 12:53:34 +00:00
Nadia Holmquist Pedersen
1004ff7fb3 Remove cp -r of mac build in readme 2021-05-02 14:51:11 +02:00
Arisotura
d77d4ffc13 RELEASE 0.9.2 NOW THEY SAID 2021-04-26 23:24:41 +02:00
WaluigiWare64
def272fac4
Use Azure Pipelines so we can target macOS 10.14 (#1042) 2021-04-24 13:27:11 +00:00
Nadia Holmquist Pedersen
796ef95862
Improve macOS bundling (#1067)
* Improve macOS bundling
* Bundle libs for macOS CI
* Add MACOS_BUILD_DMG CMake option and make the CI upload the DMG so we don't lose executable permissions.
* Manually copy plugins if macdeployqt doesn't
* Ad-hoc codesign the app
2021-04-21 23:50:32 +02:00
WaluigiWare64
6b431a6664
Allow bundling libraries on macOS (#1013) 2021-03-21 15:32:23 +00:00
WaluigiWare64
a8b2c22306
Various Readme fixes 2021-02-17 21:45:17 +00:00
WaluigiWare64
1112162e99
Add build status badges 2021-02-04 10:10:49 +00:00
WaluigiWare64
ab222ab135
Use libepoxy to load in OpenGL functions (#960)
* Use libepoxy to load in OpenGL functions

Prevents having to load them in manually

* Install libepoxy in the CI

* Do not link OpenGL libraries, libepoxy opens them itself

* Add libepoxy to build instructions
2021-01-26 13:19:32 +00:00
WaluigiWare64
8829b0511c
Change all mentions of qt5 to qt@5 on macOS (#937)
* Change all mentions of qt5 to qt@5 on macOS

* Use temporary workaround to get macOS brew updating

https://github.com/actions/virtual-environments/issues/2322#issuecomment-749211076

* Don't install CMake, it is already installed in the macOS runner
2021-01-13 14:56:06 +01:00
WaluigiWare64
83648f2d31
Merge branch 'master' into feature/zip-support 2021-01-03 15:53:23 +00:00
Arisotura
e2de622d57 heh 2020-12-25 14:42:23 +01:00
WaluigiWare64
df190b0400
Merge branch 'master' into feature/zip-support 2020-12-19 17:43:53 +00:00
WaluigiWare64
7da4550eea
Add support for macOS (#771)
* use shm_open() instead of memfd_create() on macOS

malloc.h isn't a header on macOS

* Change OpenGL headers + create ifdef for DO_PROCLIST

macOS seems to already have the OpenGL functions defined, without the ifdef, it gives "ambiguous references" errors.

* macOS doesn't have ->gregs in uc_mcontext

and it doesn't have REG_RIP either
https://github.com/gperftools/gperftools/blob/master/m4/pc_from_ucontext.m4

* use getpid() to make memory file name unique

* #ifndef __APPLE__ for AF_PACKET and linux/if_packet.h

* Add include and link directories for macOS and link the OpenGL framework

* Add macOS CI

* Use newly added libslirp package from Homebrew

https://github.com/Homebrew/homebrew-core/pull/63412

* Use Apple's Clang instead of GNU GCC on macOS

* Add macOS build instructions to README

* Try to fix macOS undefined symbol

* snprintf doesn't take null terminator into account

* Map new memory on macOS for JIT

* Only use gcc-ar if using GNU Compiler

* re-add fastmem code - whoops!

* Fix style issue - use camelCase not snake_case

* Set Minimum macOS version

* Switch Minimum OS X version to 10.9

* Add macOS libpcap library name

* fix memory leak

* Fix binding keys in macOS

* Allow getting MAC address on macOS

melonDS on Linux uses AF_PACKET, which doesn't exist on macOS. Instead, this commit uses AF_LINK on macOS to get the MAC address.

* Remove unneeded macOS CI dependencies

* Build melonDS app bundle on macOS

Now it is no longer required to install the libraries on macOS, they come with the app bundle.

* fix macOS CI not being able to find macdeployqt

* copy melonDS.app with recursive because it's a folder

* Disable fastmem checkbox on macOS

* Disable fastmem by default in config

* forgot a semicolon

* Don't bundle libraries, causes issues on macOS <10.15

* Update README + allow finding version in Finder on macOS

* Make sure fastmem checkbox stays uncheckable
2020-11-29 17:11:33 +01:00
WaluigiWare64
e46a408972
Remove unused gtk dependency from README (#788) 2020-10-30 21:42:09 +01:00
WaluigiWare64
8d70d0926c
Merge branch 'master' into feature/zip-support 2020-10-23 00:39:29 +01:00
RSDuck
7d20988b78
Merge pull request #724 from rzumer/patch-2
Document CMake build dependency on Linux
2020-09-06 22:50:10 +02:00
Arisotura
94d12c68b3 heh 2020-09-04 13:41:51 +02:00
WaluigiWare64
7464e42ccd Add instructions for static builds
Add instructions for static builds

fix
2020-08-22 15:25:37 +01:00
Raphaël Zumer
0151a666ef
Document CMake build dependency on Linux 2020-08-22 08:47:23 -04:00
WaluigiWare64
a73f3cc7b6
Update README.md 2020-08-05 15:40:28 +01:00
Raphaël Zumer
ce28d5725b
Update dependencies in the readme 2020-07-31 20:20:47 +00:00
Arisotura
9dc1544a41
Merge pull request #624 from merwok-forks/patch-1
fix package name in readme
2020-05-17 15:25:23 +02:00
lucasjome
d6d49a9f70
Removing CodeBlocks reference from README.md
Removing CodeBlocks reference from README.md
2020-05-14 01:51:39 -03:00