Added new MSYS_INSTALL_DIR variable that points to MSYS2 installation
for Windows users. It is used to include POSIX native headers from
/usr/include also required openssl headers.
Signed-off-by: Andrey Borisovich <andrey.borisovich@intel.com>
Fixes clang failure:
clang: error: -Wl,-EL: 'linker' input unused [-Werror,-Wunused-command-line-argument]
-EL has an effect only when using OUTPUT_FORMAT or --oformat but rimage
uses neither.
The binaries produced by ld version 2.34 are strictly identical before
and after this removal.
It is not clear why -EL was ever added. It was added to src/Makefile.am
by commit 0d33e87433 and to src/CMakeLists.txt by commit 4e3ead0096
but these commits were initial additions of the entire files and they
did not get into detail.
Signed-off-by: Marc Herbert <marc.herbert@intel.com>
From the gcc documentation:
'-Wimplicit-fallthrough'
'-Wimplicit-fallthrough' is the same as '-Wimplicit-fallthrough=3'
and '-Wno-implicit-fallthrough' is the same as
'-Wimplicit-fallthrough=0'.
clang supports only the number-less option.
Signed-off-by: Marc Herbert <marc.herbert@intel.com>
Used platform should be defined by config file, given in
-c option. Double ways of defining platform may lead to
missalignement, so old way should be removed.
Signed-off-by: Karol Trzcinski <karolx.trzcinski@linux.intel.com>
This allow to add new platform with old version of rimage tool.
Default values are easily to define for any fields, so fields
duplication in config files should be reduced.
Signed-off-by: Karol Trzcinski <karolx.trzcinski@linux.intel.com>
Unlike hardcoded target_compile_options(-g) can be overriden from the
command line, from the parent ExternalProject_Add(CMAKE_ARGS) (tested)
or from a CMake GUI (not tested).
Default to Debug because the time spent running rimage is negligible
compared to building the image to sign and because the time saved
learning CMake when it crashes can be huge for some people.
BTW -O2 -g is rarely ever useful.
Signed-off-by: Marc Herbert <marc.herbert@intel.com>
Path added to include should end at 'include' as usual, then
it is easy to see where specific headers comes from during reading
source code. It is especially important for projects composed from
a few parts, like firmware, driver, build and debug tools in this
project.
Moreover changed "" to <> in include directives because there is
specified full path to file from project include root and to be
aligned with code style from firmware repository,
Signed-off-by: Karol Trzcinski <karolx.trzcinski@linux.intel.com>
Because there is possibility to reference headers from this repo
from another one, there is a need to put every header into rimage
namespace. Otherwise reference to headers from duplicated
namespace (like kernel) from external repo may be ambiguous.
Update guard ifdef/define/endif sequence value, to make it more
unique
Signed-off-by: Karol Trzcinski <karolx.trzcinski@linux.intel.com>
Extended manifest is a place to store metadata about firmware, known during
compilation time - for example firmware version or used compiler.
Given information are read on host side before firmware startup.
This part of output binary is not signed.
Signed-off-by: Karol Trzcinski <karolx.trzcinski@linux.intel.com>
Since both fw.h and manifest.h are being used in the main SOF
repo and also here in the standalone rimage repo, to prevent
them getting out of sync, the SOF main repo is going to use
the ones coming from the rimage repo. So there is no need for
the option anymore.
Signed-off-by: Daniel Leung <danielcp@gmail.com>
This adds the necessary bits to allow building rimage
with CMake with similar configure options as the just
removed autotools files.
Also update README.md for new build instructions.
Signed-off-by: Daniel Leung <danielcp@gmail.com>