Age | Commit message (Collapse) | Author | Files | Lines |
|
The relevant c++ standard library is now automaticaly added by the
compiler/linker and our gross hack involving gnustl.pc/la is not longer
needed.
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/1191>
|
|
Almost everything in the Visual Studio property file is wrong
or unnecessary.
* WIN32_LEAN_AND_MEAN: Should not be defined globally, but per
source file defined when needed.
* Don't force ancient target
* Global CRT attributes set by us is not a desired configuration,
but application should consider it by itself
* DO NOT FORCE MSVCRT: We moved to UCRT a couple of years ago.
So it will cause linking problem when application calls CRT functions
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/888>
|
|
It's not referenced at all and unnecessary. Application can configure
its own properties for release build.
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/888>
|
|
Just unnecessary
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/888>
|
|
* WINVER/_WIN32_WINNT/_WIN64_WINNT: This must be set by user.
Don't force ancient target
* WIN32/WIN64/_WINDOWS/HAVE_WIN32: Why?
* _USRDLL: Ancient MFC related define. Should be done by user
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/888>
|
|
We use files under "vs-1.0" directory
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/888>
|
|
> [CXX1415] .../gstreamer/subprojects/gst-examples/playback/player/android/app/build/.cxx/Debug/5f6v5o23/arm64-v8a/android_gradle_build.json debug|arm64-v8a : gstreamer_android-debug-gst-build-arm64-v8a.abi 'gst-build-arm64-v8a' is invalid. Valid values are 'armeabi-v7a, arm64-v8a, x86, x86_64'
Move arch-specific directories into their own subdirectory.
It seems like somewhere in gradle is assuming the last path component is
the abi of the built files when that may not actually be the case.
Workaround this.
Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1284
Fixes https://gitlab.freedesktop.org/gstreamer/gst-docs/-/issues/103
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/886>
|
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/843>
|
|
Reuse the same mechanism than gstreamer-full: Expose
gst_init_static_plugins() symbol, called by gst_init() to register
static plugins, and drop all JNI code that got moved to libgstreamer.
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/588>
|
|
This is the initial commit to start supporting MSYS2
(https://www.msys2.org/) in favor of the old MSYS/MinGW.
MSYS2 brings several important improvements:
* Project with active development
* In sync with latest Cygwin
* Up-to-date packages
* Package manager
Here is a more detailed writeup of MSYS2 from Git's migration
https://github.com/git/git/commit/df5218b4c30b2fa1ba0d1ada4166ad85bc83be26
The old msys will still be supported to ease the migration but
a deprecation warning will be shown to migrate to MSYS2
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/743>
|
|
This is the same symbol defined in libgstreamer-full and called by
gst_init().
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/629>
|
|
This is identical to how the cross-android-universal target works.
Supported UWP arches are: x86, x86_64, arm64. This covers 100% of
Windows 10 machines:
https://docs.microsoft.com/en-us/windows/msix/package/device-architecture
Advantages are the same as Android:
1. Most people will build apps that target multiple (or all) archs
2. Easier to build and ship all arches at once
3. Easier to download two tarballs rather than six
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/551>
|
|
Part-of: <https://gitlab.freedesktop.org/gstreamer/cerbero/-/merge_requests/509>
|
|
When removing hogweed linkage for gio workaround, the $GSTREAMER_EXTRA_LIBS
entry got removed from GSTREAMER_ANDROID_LIBS as well. Add it back, so it
works as intended in commit d4d75a04065 and needed linkages like EGL work
again via GSTREAMER_EXTRA_LIBS `-l` entries (instead of having to workaround
via TARGET_LDFLAGS).
Fixes: e3892148653bd96a1d1f8f370809762dc8903795
|
|
|
|
|
|
Fix NDK build with newest NDK. Cerbero itself has a
separate problem trying to use r20, but this enables
using the GStreamer SDK with NDK 20.
|
|
|
|
Add screenshots for Windows installation steps and add new sections
about cross-compilation and enabling qt5.
|
|
https://gitlab.freedesktop.org/gstreamer/cerbero/issues/64
|
|
Licensing was incorrect, incomplete, and at best, ambiguous. Some
recipes were picking one license when there were many, others were
listing all the licenses and you had to pick one.
On the other hand, many projects are licensed under multiple BSD-like
licenses, and you must adhere to the terms of all of them, and there
was no way to know how from the binary packages.
Now we have an extended syntax for declaring the licensing properties
of a recipe. The licenses array can now also contain dictionaries with
License enums as keys and relative paths to files in the source tree
as values. All files specified in this way will be copied into
`share/licenses/$recipe_name`.
Common license texts which are copied verbatim by projects without
adding any specific author/copyright information have been copied into
`data/licenses/` and will be copied into `share/licenses/$recipe_name`
when a license is specified without a corresponding source tree file.
`share/licenses/$recipe_name/README-LICENSE-INFO.txt` contains
a disclaimer that this is not legal advice, and uses (AND) and (OR)
operators to declare the combinations of licenses you can pick when
adhering to the license requirements of a project.
`share/licenses/$recipe_name` is, of course, now also copied into the
devel binary packages.
I have made a best-effort to check and update the licenses in each
recipe, but I have probably missed things. Reviews and updates are
welcome. I also did not bother updating the toolchain recipe licenses
too carefully since we do not ship them with our binary packages;
except mingw-runtime.recipe (which does have an updated license).
|
|
Fixed issue https://gitlab.freedesktop.org/gstreamer/gst-docs/issues/27.
This commit is to support that developers can specify a multiple values
with 'APP_ABI' of Application.mk file. The recent Adroid NDK tool provides
the multiple architecture build as well as a single architecture build.
* Reference:
* https://developer.android.com/ndk/guides/abis?hl=en#gc
* How to evaluate with this commit
```bash
$ cd {your_work_dir}/gst-docs/examples/tutorials/android/android-tutorial-1/jni
$ cat ./Application.mk | grep APP_ABI
APP_ABI = armeabi armeabi-v7a arm64-v8a x86 x86_64
$ ndk-build (with android-ndk-r16b)
$ tree ../libs/
../libs/
|-- arm64-v8a
| |-- libc++_shared.so
| |-- libgstreamer_android.so
| `-- libtutorial-1.so
|-- armeabi (Note: It will be deprected since android-ndk-r18b.)
| |-- libc++_shared.so
| |-- libgstreamer_android.so
| `-- libtutorial-1.so
|-- armeabi-v7a
| |-- libc++_shared.so
| |-- libgstreamer_android.so
| `-- libtutorial-1.so
|-- x86
| |-- libc++_shared.so
| |-- libgstreamer_android.so
| `-- libtutorial-1.so
`-- x86_64
|-- libc++_shared.so
|-- libgstreamer_android.so
`-- libtutorial-1.so
```
* Self assessment:
* Local test with ndk-build: It's okay.
* Local test with gst-docs (./android-tutorial-{1-5}/)
|
|
|
|
Instead pass -Wl,exclude-libs,$lib for each library *NOT* mentioned
explicitly on the command line so those symbols aren't placed in
exported symbol tables. Fixes numerous linking errors in dependant
libraries that are extremely likely to be unused directly.
This does however mean that any symbols and libraries that are used need
to be present in the command line explicitly using either
GSTREAMER_EXTRA_DEPS (for pkg-config) or -l$lib arguments.
Fixes https://gitlab.freedesktop.org/gstreamer/cerbero/issues/52
Fixes https://gitlab.freedesktop.org/gstreamer/gst-libav/issues/37
|
|
Use the GLOBAL_* arguments as well
|
|
Fixes cases where there is no static library to link to (e.g.
libc++_shared.so) or the possibility that the static library is
different from the .la file name.
|
|
Streams always will be closed.
https://gitlab.freedesktop.org/gstreamer/cerbero/issues/75
|
|
The previously used GStreamer custom custom patch to load certificate
files from the CA_CERTIFICATES environment variable is no longer
effective with glib-networking 2.58 and instead API was added to the
upcoming glib 2.60 release (backported to glib 2.58 in GStreamer's
cerbero) to set the default TLS database.
This patch makes use of the new API to set the default TLS database
and behaves similarly as the previous CA_CERTIFICATES environment
variable.
https://bugzilla.gnome.org/show_bug.cgi?id=796702
|
|
gio modules are not in a specific (static/) subdirectory anymore.
Also change how we reference the modules as using -L will preferentially
locate the shared library over the static library. Add the full path to
the static library module instead.
|
|
This reverts commit d9914b60e86af229aa78eedf2ab605b30ac0fc96.
The static plugins are still in $prefix/lib/gstreamer-1.0 so a -L path
is still needed to reference them to be able to find them.
https://bugzilla.gnome.org/show_bug.cgi?id=791854
|
|
This makes V=1 works, helping a lot when we need to debug our makefiles.
https://bugzilla.gnome.org/show_bug.cgi?id=791854
|
|
The @# break when running on Windows
https://bugzilla.gnome.org/show_bug.cgi?id=791854
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=791854
|
|
We have the same plugin API for static and non-static now.
https://bugzilla.gnome.org/show_bug.cgi?id=791854
|
|
gradle/android-studio do not seem to like it at all.
https://bugzilla.gnome.org/show_bug.cgi?id=773401
|
|
This allows building a precompiled GStreamer application against
android-ndk-r16.
Headers for all platforms have been moved to a single location. See
https://android.googlesource.com/platform/ndk/+/master/docs/UnifiedHeaders.md
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=789385
|
|
The plugin interface now supports building once for both static
and dynamic modules.
https://bugzilla.gnome.org/show_bug.cgi?id=779344
|
|
Plugins have been rename so their library name now matches
their plugin name.
|
|
This seems to be the correct place to put it, and newer versions of
Android Studio don't seem to pick up just assets/.
Also adding a way to customise this for apps that wish to do so (via
the GSTREAMER_ASSETS_DIR variable).
https://bugzilla.gnome.org/show_bug.cgi?id=774728
|
|
This is used by the androidmedia plugin and potentially others.
|
|
|
|
Windows a) requires quotes around commands if you | them and b) remembers
empty quotes in Makefiles and confuses the shell with them.
https://bugzilla.gnome.org/show_bug.cgi?id=768326
|
|
|
|
On OSX they apparently end up as literal '\n' in the code instead of newlines.
https://bugzilla.gnome.org/show_bug.cgi?id=768456
|
|
Windows has no cat so it doesn't work. We lose some symmetry in the code in
exchange for Windows portability.
https://bugzilla.gnome.org/show_bug.cgi?id=768326
|
|
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=767096
|
|
Based on a patch by Milos Pesic <msg4misa@gmail.com>
https://bugzilla.gnome.org/show_bug.cgi?id=767096
|
|
different way
Get the correct symbol via dlsym() instead of letting the linker figure it
out. Letting the linker do it can bring us into infinite recursion calling
into our very own weak symbol.
https://bugzilla.gnome.org/show_bug.cgi?id=766235
|