Commit Graph

34 Commits

Author SHA1 Message Date
RonenGvili
95e2c52980
Adding ARM64 support and optimized Neon implementation (#270)
Add NEON intrinsics routines for lpc_compute_residual_from_qlp_coefficients
and lpc_compute_residual_from_qlp_coefficients_wide
2022-04-29 14:46:07 +02:00
Martijn van Beurden
0caf685360
[CMake] Enable building ogg together with flac (#325)
This reverts the part of commit 2013738 that searched for a local
ogg build
2022-04-27 19:53:13 +02:00
NotTsunami
b171e767e2 Add missing langinfo check for CMake 2022-04-21 19:35:58 +02:00
Martijn van Beurden
f579b163fe
Add git commit tag, hash and date to vendor string when available
In some circles (Hydrogenaud.io for example) people share binaries
compiled from git, i.e. inbetween official releases. Files created
with these binaries cannot be discerned from others. To improve
troubleshooting, compiles from a git repository are marked with
the commit hash and date when configured with autotools or CMake
2022-04-20 21:47:07 +02:00
Martijn van Beurden
0ec47a87b4 [CMake] Remove /MT from MSVC flags, causes crashes with shared libs 2022-04-13 17:37:50 +02:00
Martijn van Beurden
db72703f86 [CMake] Set binary and library output dir to objs on Windows
Without this patch, CMake places output binaries and libraries in
the respective source directories, like the autotools build system.
The Visual Studio build system places objects in the objs directory

Because CTest didn't run properly when building shared libs, this
commit changes the CMake behaviour on (NOT UNIX) to that similar
to Visual Studio. That way, DLLs and EXEs are placed in the same
directory and running CTest with the correct DLLs being loaded
is trivial.
2022-04-13 17:37:50 +02:00
Martijn van Beurden
4256c12eac [CMake] Specifically prefer linking with static libssp
As to have a libFLAC.dll with no additional dependencies, linking
with libssp.a is preferred over linking with libssp.dll.a
2022-04-13 17:37:50 +02:00
Martijn van Beurden
6e3089b9bc [CMake] Add BUILD_SHARED_LIBS as options 2022-04-13 17:37:50 +02:00
Martijn van Beurden
805b7dba83 [CMake] Build with -lssp on MinGW 2022-04-13 17:37:50 +02:00
NotTsunami
617efda90d CMake: Make FORTIFY_SOURCE optional
* Also add in checking for libssp for MinGW
2022-04-13 17:37:50 +02:00
Martijn van Beurden
f5efd956d9 [CMake] Create prettier MSVC solution files 2022-04-13 17:37:50 +02:00
Martijn van Beurden
2013738622 [CMake] Add options for better MS Visual Studio building 2022-04-13 17:37:50 +02:00
David Callu
6debf337c8 cmake: fix c/cxx compile option use with asm code 2022-04-12 21:37:51 +02:00
Martijn van Beurden
e75495be3d
Change version to 1.3.4 and add placeholders for release date
Signed-off-by: Ralph Giles <giles@thaumas.net>
2022-02-20 20:54:19 -08:00
TGMarkiewicz
1ac2a6314b Fix version & requires fields in pkg config files
Details:
 - When building with CMake, pkg-config files flac.pc and flac++.pc
   are not updated with Version information. This causes a failure
   when running a configure script in opus-tools
   (https://github.com/xiph/opus-tools).

   Note that OGG_PACKAGE is set to "ogg" exactly as in the configure.ac,
   but it is only set when the building explicitly with libogg.
2021-06-24 15:59:09 -07:00
evpobr
e0b62a61a7 Bunch of CMake fixes
* Add more Git ignore patterns
* Fix Ogg dependency handling (closes #203)
* Remove unneeded compiler flag (closes #204)
* Fix Visual Studio DLL build error error C2491:
  'flac_internal_rename_utf8': definition of dllimport function not
  allowed (closes #205)
* Add alias targets
* Reduce number of CMake files
* Improve CMake intrinsics detection
2020-05-03 17:13:50 +10:00
evpobr
acadefddac Add more CMake options
* BUILD_PROGRAMS
** INSTALL_MANPAGES
* INSTALL_PKGCONFIG_MODULES
* INSTALL_CMAKE_CONFIG_MODULE
2020-04-05 19:31:40 +10:00
Vitaliy Kirsanov
0dfe23504c CMake: Handier way to find Iconv 2019-12-22 22:09:03 +11:00
NotTsunami
f706f28322 cmake/configure.ac: Enable -fstack-protector-strong by default
This commit contains the following changes:

- Drops -fstack-protector in favor of -fstack-protector-strong.
  Consequently, the ssp-buffer-size parameter has been removed as
  -fstack-protector-strong ignores array size.

- Add new global opt-out for stack smash protection. This is enabled
  by default for both autotools and CMake builds. Users can opt out
  of stack smash protection by passing -DWITH_STACK_PROTECTOR=OFF to
  CMake or --disable-stack-smash-protection when running ./configure.

- Renames HAVE_SSP_FLAG to HAVE_STACK_PROTECTOR_FLAG in
  CMakeLists.txt to be more readable.
2019-11-20 17:12:03 +11:00
sezero
cdcf0d5575 cmake_minimum_required() cleanup:
- document version requirements in the top-level file.
- remove incorrect version requirements from sub-dirs.
- set min. required version to 3.5 in top-level file.
- set minimun required version to 3.9 under docs/ .
- make documents building an option (on by default.)
  so, the tree can be built using cmake-3.5 using
 -DBUILD_DOCS=0 on the command line.
2019-11-15 19:06:58 +11:00
Ralph Giles
88ddb5b59e Fix metaflac under ctest.
The 1.3.3 release didn't update the version number in the cmake
build. It's too late to fix the release, but bringing the version
number into sync allows the metaflac test which verifies the
encoder's embedded version number to pass, giving us proper test
feedback on other changes to the development tree.
2019-08-16 06:59:42 +10:00
sezero
f85a2f44f6 increase required minimum cmake version to 3.9. 2019-08-06 07:26:19 +10:00
evpobr
cd03042ea9 Fix CMake configure warning
Policy CMP0054 is not set: Only interpret if() arguments as variables or keywords when
 unquoted.
2019-06-01 12:33:53 +10:00
Vitaliy Kirsanov
26cbd97884 CMAKE_BUILD_TYPE set to Release by default: improved 2019-05-04 11:41:48 +10:00
Vitaliy Kirsanov
1794b0cd79 CMAKE_BUILD_TYPE set to Release by default 2019-05-04 11:41:48 +10:00
Vitaliy Kirsanov
573dbc12ae Use of BUILD_SHARED_LIBS added 2019-05-04 11:41:48 +10:00
Vitaly Kirsanov
a82a014cf1 CMake minimum required lowered to 3.1 2019-05-04 11:41:48 +10:00
evpobr
d38b867f68 Add missing fseeko check 2019-05-04 11:41:48 +10:00
Vitaliy Kirsanov
2359563a46 FLAC now depends on win_utf8_io
Accidently found this missing dependency
2019-05-04 11:41:48 +10:00
Vitaly Kirsanov
8610c3acfb Added /arch:SSE2 flag 2019-05-04 11:41:48 +10:00
Vitaliy Kirsanov
60129c7018 Cosmetic change: using $<COMPILE_LANGUAGE:> 2019-05-04 11:41:48 +10:00
Vitaliy Kirsanov
5435f15be4 /test/*.sh enabled for CTest in UNIX 2019-05-04 11:41:48 +10:00
Vitaliy Kirsanov
6cd2b6cded FindOGG.cmake module added 2019-05-04 11:41:48 +10:00
Vitaliy Kirsanov
c39718d7a3 CMake support added 2019-05-04 11:41:48 +10:00