Commit graph

64 commits

Author SHA1 Message Date
Christopher Snowhill
d35d54170a
Preparation for Xcode 15
Apparently, Xcode 15, at the point of the first beta, is not
capable of producing nib files that will load on macOS 10.13
or 10.14 without crashing on startup. So this is the prep
for now, raise the minimum deploy target to 10.15, where it
currently works. This may change later.

Signed-off-by: Christopher Snowhill <kode54@gmail.com>
2023-06-09 00:51:30 -07:00
Christopher Snowhill
eb26ab8be4
Update projects and source in prep for Xcode 15
Signed-off-by: Christopher Snowhill <kode54@gmail.com>
2023-06-08 04:12:29 -07:00
Christopher Snowhill
e330c64f43 Enable warnings to track stack overuse
Signed-off-by: Christopher Snowhill <kode54@gmail.com>
2022-07-24 18:41:45 -07:00
Christopher Snowhill
8c0abf5fab Update several of the dependencies
- Updated libFLAC to the latest Git commit, post 1.3.4.
- Updated libid3tag to 0.16.1.
- Updated libopus to the latest Git commit.
- Updated my FFmpeg libfdk-aac patch. Previously was overwriting
  memory when it was supposed to be skipping samples.

Also added debug versions of several of the libraries, and changed
the library extractor script to unpack the debug libraries over the
release set to add the particular matching debug versions when
building a debug build.

Signed-off-by: Christopher Snowhill <kode54@gmail.com>
2022-07-13 00:13:07 -07:00
Christopher Snowhill
8d851e5bda [Input API] Change input readAudio method
readAudio now returns an AudioChunk object directly, and all inputs have
been changed to accomodate this. Also, input and converter processing
have been altered to better work with this.

Signed-off-by: Christopher Snowhill <kode54@gmail.com>
2022-07-10 15:22:04 -07:00
Christopher Snowhill
c32d14a048 [Project Files] Change most to enable modules
Most projects needed to be changed to enable C or Objective C modules.
Hopefully, this improves debugging.

Signed-off-by: Christopher Snowhill <kode54@gmail.com>
2022-07-10 15:21:48 -07:00
Christopher Snowhill
8ee4a04f3b Experimental tag support redesign
This redesign completely changes how tags are stored in memory. Now all
arbitrary tag names are supported, where possible. Some extra work will
be needed to support arbitrary tags with TagLib, such as replacing it
with a different library.

Translation pending for a couple of strings.

Signed-off-by: Christopher Snowhill <kode54@gmail.com>
2022-07-08 16:35:34 -07:00
Christopher Snowhill
e37d1d15b1 Remove unnecessary files from build and copy steps
Remove a single .inc include from CogAudio build phase, as it's included
but not compiled as Pascal like Xcode thinks. Also remove a bunch of
files from being copied into the resulting .framework and .bundle files
during link stage, as we don't need to distribute that stuff.

Signed-off-by: Christopher Snowhill <kode54@gmail.com>
2022-07-04 23:58:58 -07:00
Christopher Snowhill
fc37e96099 Automatically unpack libraries before building
This required adding the included script in every project that links to
one of the bundled libraries. The script is designed to sleep for a
while if another thread is already extracting the libraries. The script
uses a temporary file as an extraction step lock, so other instances
sleep, and then detect the libraries.updated file, which is created
before the lock is removed.

Signed-off-by: Christopher Snowhill <kode54@gmail.com>
2022-06-26 20:11:52 -07:00
Christopher Snowhill
5b6dacd29c Cog now requires macOS 10.13 as a minimum version
All optional fallback code for older versions has also been removed, and
everything now assumes 10.13.0 or newer. Some cases are still included
for point releases, such as 10.13.2.

Signed-off-by: Christopher Snowhill <kode54@gmail.com>
2022-06-22 22:54:32 -07:00
Christopher Snowhill
8d031f394b Assign blank development team in project files
Hopefully this blank assignment will spare these files from being
touched by Xcode again in the future, when the variable in question is
imported from a developer supplied configuration file.

Signed-off-by: Christopher Snowhill <kode54@gmail.com>
2022-06-21 23:27:53 -07:00
Christopher Snowhill
f2c6ae39c3 Remove developer supplied configuration file
This file should not be referenced directly by projects, otherwise it
will be expected to exist, even in CI.

Signed-off-by: Christopher Snowhill <kode54@gmail.com>
2022-06-21 23:26:51 -07:00
Christopher Snowhill
aa36e3ce10 Completely overhaul code signing practices
Redesign the code signing from the ground up. Now all bundles and their
embedded frameworks import the Shared.xcconfig file and enable its
settings, so they may be signed with Apple Development instead of sign
to run locally. This apparently isn't necessary for frameworks which are
embedded in the main app bundle directly, only for the bundles and their
frameworks.

Signed-off-by: Christopher Snowhill <kode54@gmail.com>
2022-06-21 22:42:33 -07:00
Christopher Snowhill
00ea4562dc Update project files for Xcode 14 recommendations
Update all project files with new upgrade version number, and add the
dead code stripping option. Don't touch MASShortcut because it's not my
project.

Signed-off-by: Christopher Snowhill <kode54@gmail.com>
2022-06-07 18:56:11 -07:00
Christopher Snowhill
f071d3e90c Build several libraries out of tree now
Building libogg, libvorbis, libvorbisfile, libFLAC, libopus, and
libopusfile out of tree, to utilize their projects' CMake build scripts,
and also enable any platform optimizations that may have been missing.

Signed-off-by: Christopher Snowhill <kode54@gmail.com>
2022-02-15 00:26:55 -08:00
Christopher Snowhill
a05d4537c1 Various tagging fixes
- Fix Vorbis, Opus, and FLAC tag reading
- Fix Vorbis getting a 0 length if passing through the CUE Sheet reader
- Implement support for FLAC binary CUE Sheets

Signed-off-by: Christopher Snowhill <kode54@gmail.com>
2022-02-12 07:16:59 -08:00
Christopher Snowhill
0012d1b17e Implement dynamic metadata reading for streams
Supported by FFmpeg, FLAC, Ogg Vorbis, and Opus.

Signed-off-by: Christopher Snowhill <kode54@gmail.com>
2022-02-09 13:44:50 -08:00
Christopher Snowhill
cfeadad97f Reduce minimum OS to macOS 10.12 2021-09-18 01:08:49 -07:00
Christopher Snowhill
13bd399b31 Clean up most warnings and update some dependencies 2021-04-29 18:16:24 -07:00
Dzmitry Neviadomski
64b9764b2e Inhibit ThirdParty libraries build errors.
This helps as to actually see warnings of our code.
2021-01-27 04:31:43 +03:00
Jan Weiß
63ed28919b Second attempt to fix build with other than maintainer’s TeamIDs. Worked for me with Xcode 12.3. 2021-01-05 17:25:12 +01:00
Christopher Snowhill
dbc51d76f9 Revert PR #60 - Nope, that breaks hardened runtime and signing it myself 2020-12-22 02:11:50 -08:00
Jan Weiß
c305a5f949 Fix build with other than maintainer’s TeamIDs.
This commit removes development team and code signing key/value pairs that slipped through when Xcode applied code signing changes.
2020-12-13 12:01:48 +01:00
Christopher Snowhill
91b1271ae2 Bump deployment target to 10.13 2020-11-24 15:26:26 -08:00
Christopher Snowhill
0001bd581b Phase one of Big Sur 2020-06-30 01:04:55 -07:00
Christopher Snowhill
3b628c3989 Touched by Xcode 2020-06-07 19:57:15 -07:00
Christopher Snowhill
765cb5e890 Usual Xcode update mess 2020-02-13 01:41:21 -08:00
Christopher Snowhill
fd7ab684c2 Updates for modern Xcode 2019-10-05 00:12:36 -07:00
Christopher Snowhill
050eef7225 Updated to latest Xcode 2019-07-02 16:37:17 -07:00
Christopher Snowhill
67495009ff Updates for new build system. 2018-06-28 04:03:37 -07:00
Christopher Snowhill
bcf839efd1 Apply Xcode's suggested changes to project files. 2018-06-04 00:13:55 -07:00
Chris Moeller
9e8fd61d8c Update xcschemes. 2017-12-05 19:10:41 -08:00
Christopher Snowhill
913287665d Update project files to current recommendations. 2017-09-26 16:12:33 -07:00
Christopher Snowhill
039347f36f Made all scheme configurations shared, imported. 2017-09-17 18:40:02 -07:00
Christopher Snowhill
8ad0b7e8e3 Updated projects to Xcode recommendations. 2016-11-03 22:42:21 -07:00
Christopher Snowhill
a95280626f Fix Projects. Fix a major deadlock introduced by previous commit. Introduce new mGBA based GSF player. 2016-09-04 12:49:43 -07:00
Christopher Snowhill
899cfd6b42 Update project files. 2016-09-01 18:50:33 -07:00
Chris Moeller
17272ce43c Clean up lots of warnings and minor issues. 2016-06-29 22:10:29 -07:00
Chris Moeller
0e3644177e Updated everything else to ARC, and plugged a release cycle. 2016-05-05 13:05:39 -07:00
Chris Moeller
ce2303ef24 Update project files for new Xcode 2015-11-12 21:31:10 -08:00
Chris Moeller
52362e4341 Workaround bugs in the 10.11 SDK by using the 10.10 SDK instead 2015-08-05 17:03:12 -07:00
Chris Moeller
5677527ffd Changed code signing procedures, removed unnecessary Plugin.h copies from numerous PlugIn bundles, and re-signed Growl.framework with a valid signature 2015-03-18 21:45:32 -07:00
Chris Moeller
7af4e94b03 Removed signature application from individual projects and added --deep option to the main app project 2013-10-22 18:41:57 -07:00
Chris Moeller
ad9a949c26 Turned on code signing 2013-10-21 18:28:53 -07:00
Chris Moeller
39f4c60f19 Enabled DEBUG=1 macro in debug builds of several older projects 2013-10-17 23:39:26 -07:00
Chris Moeller
b9a014ab16 Upgraded a couple of projects, raised the minimum OS version to 10.7, and removed libstdc++ setting from any projects that needed it 2013-10-12 19:18:46 -07:00
Chris Moeller
e5a648578b mamburu: Logging improved, no more excessive logging in release builds 2013-10-11 05:03:55 -07:00
Chris Moeller
dda7bf994d Whoops, forgot to enable generating debugging symbols for the release targets in those projects 2013-10-10 04:52:15 -07:00
Chris Moeller
0ca7c2ee2f Enabled DWARF with dSYM for release target on all projects 2013-10-10 04:41:25 -07:00
Chris Moeller
52c947db10 Changed all sub-component projects to skip install, since copy steps bundle them all into the target app 2013-10-04 13:11:32 -07:00