If we build with `-Os` some vars are missing in backtraces and will be listed as `<optimized out>`
- https://github.com/PCSX2/pcsx2/issues/5226#issuecomment-1036987320
```
Optimize debugging experience. -Og should be the optimization level of choice for the standard edit-compile-debug cycle, offering a reasonable level of optimization while maintaining fast compilation and a good debugging experience. It is a better choice than -O0 for producing debuggable code because some compiler passes that collect debug information are disabled at -O0.
Like -O0, -Og completely disables a number of optimization passes so that individual options controlling them have no effect. Otherwise -Og enables all -O1 optimization flags except for those that may interfere with debugging:
```
- https://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html
This function can be used on "autotools" and "configure" packages.
Use libtool_remove_rpath() to remove hardcode rpath when --disable-rpath
is not supported by "configure".
usage: `libtool_remove_rpath libtool`
If there are multiple libtool scripts or they are in subdirectories,
then you may need to run this function using the path to libtool or run
the function multiple times.
If binaries and shared objects installed by the package to target have
incorrect or system libraries then this function can be used. After
using the function, these example command below should NOT have a
RPATH/RUNPATH.
e.g. (before using the fucntion)
$ readelf --dynamic ${filename} | grep PATH
RPATH Library runpath: [.....]
RUNPATH Library runpath: [.....]
Before using this function; check if the package supports
--disable-rpath (and that it works.) Work with upstream and have a
working --disable-rpath added to the package.
Currently building a package with
GET_HANDLER_SUPPORT="file"
PKG_URL="file:///some_path_to_file_with_sources"
throws an error
ERROR: using manual toolchain but PKG_TAR_COPY_OPTS is configured.
- clean up
- tweaks for show_config
- default to `OPENGL/OPENGLES=no` if not set
- sort `GRAPHIC_DRIVERS` & list them for all projects not just x11
- moved video acceleration out of graphic config
Using -DCMAKE_BUILD_TYPE=MinSizeRel result in finally building with -Os. Our default
optimization or '+speed' are ignored, behavior is like always using '+size'.
Changing to default -DCMAKE_BUILD_TYPE="" is not allowed by to many packages including
Kodi, they are forcing a default option (in worst case "Debug", e.g. llvm)
Redefine the cmake parameters to not include any options and do the same for host choosing
"Release" as build type.
This needs to be done even on target=host due to libraries of the host
being newer than the target. This fixes tests where target glibc is
different from host glibc and meson tries to check existance of 2
functions which are in GLIBC_2.34 in this example. It is also correct
functionality, as we will never be building for the host the compile is
on.
`Program stderr:
/var/media/DATA/home-rudi/LibreELEC.tv/build.LibreELEC-Generic.x86_64-10.0-devel/build/glib-37e5dfd3a2ced10c395b38702ae15e0e128e457b/.x86_64-libreelec-linux-gnu/meson-private/tmpg908xy4s/output.exe:
/lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.34' not found
(required by
/var/media/DATA/home-rudi/LibreELEC.tv/build.LibreELEC-Generic.x86_64-10.0-devel/build/glib-37e5dfd3a2ced10c395b38702ae15e0e128e457b/.x86_64-libreelec-linux-gnu/meson-private/tmpg908xy4s/output.exe)`
Python3's crypt module is capable of generating password hashes. Use that
instead of busybox:host's cryptpw function.
Move password hashing into config/function's add_user(), so one need not
remember to generate the hash and then pass it into add_user().
Signed-off-by: Ian Leonard <antonlacon@gmail.com>