Comments (4)
So in general we're happy to take contributions for other build systems if they're helpful to downstream library users. The main issue is ongoing maintenance.
-
The core development team doesn't have much time to maintain all the different build systems, so if there isn't a community of people available to keep it running, we'll just have to remove it again, which is disappointing for users.
-
We have a single source for the list of source files, in
*_sources.mk
and*_headers.mk
that the current build systems use, except for Visual Studio. We'd like any new additions to build on those, to minimize the number of places people adding/removing source files have to update.
If you can address both of those, then a meson config, with integration tests so we know when it breaks, is fine. I don't know much about meson, I guess you'd have to shell out to a custom generator script or upstream a makefile module to address the second?
Note there's already a PR open to add CMake support, and VS2017 has native CMake build support, so that will probably be more immediately popular if you just want an alternative to autotools.
from opus.
Good points. Unfortunately it doesn't seem like it is possible to read & parse a makefile from Meson like that at the moment.
Given that Meson is probably not at the point where I would have it as the only option for a project like this, and you don't want to support more than one build system, I would say entirely moving from Autotools to CMake is probably the best option. True, CMake is crazy, but not quite as crazy as Autotools, and it works quite well on Windows.
from opus.
I took a stab at this out of boredom:
https://github.com/andreaskem/opus/commit/f7ade90143e58078ed5e342a136516e6996156a3
There are several caveats mentioned in the commit message so this might not be useful for anybody. Provided without warranty, your mileage may vary, yadda yadda yadda.
from opus.
Nice, though I think using Python to parse the .mk
files shouldn't be part of the meson.build
. Probably would be better as a pre-generation step that writes a meson.build
file with the correct filenames.
Also you probably want to use target_machine
in most places you have used host_machine
.
from opus.
Related Issues (20)
- Missing opus 1.5 github release HOT 4
- Windows: Meson build fails with nnet_avx2.c compiled without AVX2 HOT 23
- Compiling libopus 1.5.1 with Linux fails on ARM Cortex-A53 and Cortex-A55 HOT 21
- opus 1.5.1-1 seems to be incompatible with musescore 4.2.1 HOT 1
- Question about DRED HOT 4
- Undefined reference to opus_select_arch HOT 2
- opus_repacketizer_cat sometimes fails
- Limiting the stack allocation request HOT 2
- Please update opus-tools to support new features
- Deep PLC performance on Android HOT 16
- Compiling with CMake for Windows/MSVC only supports DLL runtime libraries HOT 9
- Added the OPUS_SET_INBAND_FEC(2) option HOT 1
- Please provide an option to not depend on downloading model data HOT 10
- v1.5.2 compile warnings
- Error: Range coder state mismatch between encoder and decoder in frame 1: 0x f3b1240 vs 0x40123b0f HOT 1
- Opus.lib: 1.3.1 version crashing in some windows machines in opus_encoder_create HOT 2
- Opus 1.5.x and main compilation failing with GCC 8.5.0 HOT 1
- Opus not building on Ubuntu 24.04
- No way to turn off the PLC/FEC?
- Floating Point libraries failing to build when targeting Fixed Point support only. MSVC 2017 v141 HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from opus.