Age | Commit message (Collapse) | Author | Files | Lines |
|
The macro makes it easier to prepare a separate configuration for ISU package.
Files from path %{BUILDROOT}/etc/isu/ are packed into a separate rpm
package: %{name}-isu
In addition, pattern occurrences are substituted:
#NAME# - %{name}
#VERSION# - %{version}
#ISU_CONFIG_PATH# - /etc/isu
#ISU_INSTALL_PATH# - /opt/isu
#ISU_RUN_PATH# - /run/isu
Change-Id: Ia60a964165a9a838fb3422ded0410402924c5adf
(cherry picked from commit 0cb94f2a960168fb4cc6eed7acdd19dba633fcd9)
|
|
https://code.sec.samsung.net/jira/browse/TSIX-3628
The external pointer(keyp) refers to a local variable(mi_offset),
but beyond the scope of the local variable, the pointer is still referenced.
Change-Id: I2a9ee984e3e290a8f41c7d3cf4444786e087c41b
Signed-off-by: jiankang.fan <jiankang.fan@samsung.com>
|
|
find-debuginfo.sh erroneously detected files with 'debug' in name as
files which do have debuginfo sections.
Change-Id: Ie18714130f2ee315cdabf56e521eb6f63cb98e8b
Signed-off-by: Slava Barinov <v.barinov@samsung.com>
|
|
This removes errors like
cpio: glibc-2.24/csu: Cannot stat: No such file or directory
Change-Id: Ib1a710b72a44be4bc5fd2e6871ef277c66068149
Signed-off-by: Slava Barinov <v.barinov@samsung.com>
|
|
This reverts commit 4998addba8f80a46875b84d7a9a20f4ccddff863.
From https://gcc.gnu.org/gcc-6/changes.html
The default mode for C++ is now -std=gnu++14 instead of -std=gnu++98.
Change-Id: I6a0ea547436bc22352ca15df9da52fab73de582c
|
|
|
|
1. Debug information was not connected with stripped part without .gnu_debuglink
(eu-strip creates this section automatically)
2. chmod 444 was wrongly propagated to the binaries with the same .debug.id when
we put stripped output in the initial input.
Change-Id: Ie82a46daf8d8aaea0c3f31d97e99fabc6e8bf68f
|
|
Change-Id: Ie77018682ed64f7f55eb7f40bf153578801f2a30
Signed-off-by: Slava Barinov <v.barinov@samsung.com>
|
|
eu-strip doesn't support custom section removing other than .comment:
$ /usr/lib/rpm/find-debuginfo.sh --strip-option=--remove-section=.gnu.build.attributes ...
eu-strip: -R option supports only .comment section
find-debuginfo.sh selects strip/eu-strip based on:
if [ "$STRIP_DEFAULT_PACKAGE" != "binutils" ];
So nothing is changed without:
%define _enable_binutils_strip 1
%define _rpm_strip_option --remove-section=.gnu.build.attributes
Change-Id: Ie37c61c3ae2b91a37ab57c92b96e459bfed7a698
|
|
Change-Id: I68eca62b65b69a5535626c757a2826262a842eb0
|
|
`uname -m` command does not correctly identify the architecture to
build the package because the buildroot architecture may be different
from the kernel architecture
Change-Id: Ic88898ddd9317301305a2c5c676857186ccb96ac
Signed-off-by: Vyacheslav Cherkashin <v.cherkashin@samsung.com>
|
|
Without setting 'rc' code packing is failed with OK message:
[ 2687s] error: Can't parse BUILDINFO tag: unknown error
[ 2687s] Wrote: /home/abuild/rpmbuild/RPMS/armv7l/tizen-locale-0.1-2.49.armv7l.rpm
As the result rpm was not wrote and process exits successfully without errors.
Change-Id: I56a2a99b4347e056f79beda21180d1013148f4b6
|
|
Change-Id: I99dcdb6bbd713eef5ce2e9c85fa6c532ac45e04a
Signed-off-by: Slava Barinov <v.barinov@samsung.com>
|
|
This allows to change %_buildinfo tag during the package build if required and
allows customization of tag basing on build environment, e.g. for ASan builds.
Change-Id: I0104c0eed3c16ac6edccc2c7a74fb12d38fff8aa
Signed-off-by: Slava Barinov <v.barinov@samsung.com>
|
|
The tag is intended for storage of Sanitizer build information or toolchain
details. The tag is array of strings and it can be added to .spec file using
line
BuildInfo: buildtag1 buildtag2
or by defining tag trough
%define _buildinfo buildtag1
Also the tag value can be queried using regular rpm query syntax:
rpm -qp --queryformat "[%{BUILDINFO}\n]"
The storage is intended for use at least for sanitized firmwares, but can be
reused for storing any information required for Tizen build details.
Change-Id: Icfc0c384c5a5d3b82973ee0be9345e396723174c
Signed-off-by: Slava Barinov <v.barinov@samsung.com>
|
|
LD_AS_NEEDED env variable is not supported
Change-Id: I4727e323a3b79129e22942224366931861776a99
|
|
|
|
This reverts commit 079d890dfd09f5c175d05387c05bfdd7e47c66b4.
It results in build failure on x86_64 architecture
Change-Id: I81ffe5e19ad252c27549f3f3c2ccfd16dceed6a6
|
|
Change-Id: Id6a78df4c4683ebf348915b24d5f6fefe2b429e5
|
|
Rpm builder adds one security manifest for each debug file in debuginfo
package. For packages containing more than one binary this leads to creation of
multiple copies of the manifest in the debuginfo package.
The msm plugin expects only one manifest and if there's more of them, it treats
it as an error and falls back to the default policy ("No manifest in this
package. Creating default one"). As a result the debug files get their labels
from the installing process. This leads to access denials when unprivileged
processes try to access the debug files.
This commit modifies the builder so that the security manifest is added only
once.
Change-Id: I8c29897d80664af0760eb2e3204baec1fe7ecdb2
|
|
- Previously %pretrans and %posttrans were tied to --nopre and --nopost
disablers (since commit 0b2d7775c5e828652e45829f551352b93890bbc8)
because back then, there was no room new disablers in rpmtransFlags
bitfield. This is no longer the case as of rpm >= 4.9.x where
a bunch of obsolete flags were axed, so we can now add specific
--nopretrans and --noposttrans switches + corresponding flags.
- This is obviously a behavior change as --nopre and --nopost no
longer affect %pretrans and %posttrans, but --noscripts behavior
remains the same.
Change-Id: I7d8ebba44573f0a72a4eecfc8040af86e95409ce
|
|
Change-Id: Iab46b1827bb37d14aaa8235cf992eb8fc2b3b564
|
|
combination
Change-Id: If7b72745e0ef8fae3e3991e61a37ca26cde67723
|
|
Change-Id: I5f1d6a591fdff247328f72e1b531a0e1b0aaf9d1
|
|
Tizen debuginfo and debugsource packages have arbitrary SMACK labels, which are
inherited from the process that performs installation.
Sometimes this leads to "Access denied" while reading debuginfo by tools.
Change-Id: I321a327ba8bf651b4875df42082522f4867cadee
Signed-off-by: Slava Barinov <v.barinov@samsung.com>
|
|
Change-Id: I12544b91c972bcb563e92bff9d76ea5cf289280d
|
|
GCC 6 defaults to -std=gnu++14 instead of -std=gnu++98: the C++11
standard, plus GNU extensions. Tizen prefer to update to gnu++11,
bringing in the C++11 changes but not the C++14 ones.
Change-Id: Idd30e078bf3c9ec1d31c833b5ed68f686308d410
Signed-off-by: Dongkyun, Son <dongkyun.s@samsung.com>
|
|
It takes long time when running %posttrans scripts of packages but there is no way to know what is urunning.
This change adds log message before running each %posttrans script.
Change-Id: I774d1dd28ab6a81ea40da392f293f5a86fa69e43
|
|
When the %rpmhome is not set to libdir the install order is wrong.
Change-Id: I5f79075298731ec1c60333c3ee0f5c583b07f16b
Signed-off-by: Slava Barinov <v.barinov@samsung.com>
|
|
This change will not have below error on aarch64 caused by rpmconfigdir
error: Unable to open /usr/lib/rpm/rpmrc for reading: Too many levels of symbolic links.
Change-Id: Ic896e64c80bd91a36f0bf4214c9ad4cfe55da2a7
Signed-off-by: Dongkyun, Son <dongkyun.s@samsung.com>
|
|
*.so at build time
The command strip has been in use building for chromium-efl like below.
$ strip --remove-section=.comment -o /PATH/TO/libchromium-ewk.so.debug /PATH/TO/libchromium-ewk.so
Also, it has been expected that
the argument libchromium-ewk.so.debug will have section .debug_*
and another argument libchromium-ewk.so will be stripped.
Btw, the libchromium-ewk.so.debug doesn't have the section .debug_*
but the libchromium-ewk.so still has the section.
The argument files need to be switched each other.
With this CL, the libchromium-ewk.so.debug properly has
the section .debug_* like below and libchromium-ewk.so is stripped.
> ...
> 28 .debug_line 048e8963 00000000 00000000 0231a318 2**0
> CONTENTS, READONLY, DEBUGGING
> 29 .debug_info b61b6cbd 00000000 00000000 06c02c7b 2**0
> CONTENTS, READONLY, DEBUGGING
> 30 .debug_abbrev 0349bf7f 00000000 00000000 bcdb9938 2**0
> CONTENTS, READONLY, DEBUGGING
> 31 .debug_aranges 004047a0 00000000 00000000 c02558b8 2**3
> CONTENTS, READONLY, DEBUGGING
> 32 .debug_ranges 015dbc78 00000000 00000000 c065a058 2**3
> CONTENTS, READONLY, DEBUGGING
> ...
> 34 .debug_loc 08b66519 00000000 00000000 c1c35cfd 2**0
> CONTENTS, READONLY, DEBUGGING
> 35 .debug_str 10b85beb 00000000 00000000 ca79c216 2**0
> CONTENTS, READONLY, DEBUGGING
> 36 .debug_frame 00d2f1b4 00000000 00000000 db321e04 2**2
> CONTENTS, READONLY, DEBUGGING
> ...
The file size is like below.
before)
3.5G libchromium-ewk.so
36M libchromium-ewk.so.debug
after)
36M libchromium-ewk.so
3.5G libchromium-ewk.so.debug
Bug: http://suprem.sec.samsung.net/jira/browse/RWASP-807
Change-Id: I11e80373fa9973663ee2c7b2092ae9a5f678cbc8
Signed-off-by: Youngsoo Choi <kenshin.choi@samsung.com>
|
|
Change-Id: I1214981ceb82d53c96becbe9d59e87e6272897bd
|
|
This allows moving rpm configs in x86_64 environment to prevent clashing in multilib
environments.
Change-Id: I8aa94d47f6b6fc6cb1ece88417363bb57ac8c14c
Signed-off-by: Slava Barinov <v.barinov@samsung.com>
|
|
This reverts commit c31c49f42b54dcf6edb8804e633e6b6985acbb41.
Change-Id: I94a88f43ba2db764c7c3a9435683ca26fe97c565
|
|
This reverts commit 822fe26c20549c1e891d874316cf91a7b244c23d.
Change-Id: Ic866ff716b4d547b4499f701b7577d025b89e8db
|
|
This commit is to solve a stripping issue of chromium-efl (m53).
Note that up-to-date elfutils package(e.g., the elfutils version
0.168 (3a45dbbe7) have fixed this issue. However, GPLv3 is a problem.
Let's support an alternative way to choose between strip (binutils)
and eu-strip (elfutils) to handle in case of a large shared object
such as chromium project. The default strip of rpmbuild is eu-strip.
* Case study: chromium-efl(m53)
Here is how to replace eu-strip (elfutils) with strip (binutils):
$ vi ./packaging/<git-package-name>.spec
# Let's replace eu-strip (elf-utils) with strip (binutils) in %install.
export STRIP_DEFAULT_PACKAGE="binutils"
Change-Id: Idca08e2f65ea084c6b5eb3c5cd218477f6da1a5f
Signed-off-by: Geunsik Lim <geunsik.lim@samsung.com>
|
|
build time
eu-strip can not normally remove debugging symbols in case of a large so file
such as libchromium-efl.so (2.8GiB) at build time. The up-to-date version of
eu-strip handles this issue by merging the commit that was submitted by
Mark Wielaard as following:
http://www.mail-archive.com/elfutils-devel@lists.fedorahosted.org/msg04444.html
In order to avoid eu-strip modification such as backporting, use strip(binutils)
instead of eu-strip(elfutils) because the existing strip has already fixed this issue.
before) eu-strip --remove-comment $g $strip_option -f "$1" "$2" || exit
after) strip --remove-section=.comment $g $strip_option -o "$1" "$2" || exit
* build error:
eu-strip: /home/abuild/rpmbuild/BUILDROOT/chromium-efl-53.2785.0.36-1.arm/usr/
lib/libchromium-ewk.so: INTERNAL ERROR 936 (0.153-Jan 6 2017): cannot read data from file
* unit test:
$ sudo chroot ~/GBS-ROOT/local/BUILD-ROOTS/scratch.armv7l.0/ /bin/bash
$ strip --remove-section=.comment -g ./libchromium-efl.so
$ ls -al
* evaluation:
$ sudo chroot ~/GBS-ROOT/local/BUILD-ROOTS/scratch.armv7l.0/ /bin/bash
$ rpm -ivh rpm-build-4.11.0.1-0.armv7l.rpm --force --nodeps
$ git checkout tizen_m53_beta
$ gbs build --define "nodebug 0" ......
(or ./tizen_src/build/build_mobile.sh -P tzmb_v3.0_target-TM1_mirror -A armv7l)
Change-Id: I7ae755b1f4570a28c0fc3088801b12f2ffd21808
Reported-by: Youngsoo Choi <kenshin.choi@samsung.com>
Signed-off-by: Geunsik Lim <geunsik.lim@samsung.com>
Reviewed-by: Dongkyun Son <dongkyun.s@samsung.com>
|
|
Additional modifications to support weak dependencies
(resolving errors from the cherry-pick)
rebased.
Change-Id: I34e9a5b11853dd4c0862dfbb119a3a5b7dd4f2bd
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
|
|
Change-Id: I24f0b1c0e98003a75b097c8afe7be19e21506695
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
|
|
Change-Id: Icac0310111aa3b59197af934659f7b94ca403059
|
|
As 32 bit build suffers under the limitation of 32 bit address space,
regardless of it's environment would be ie. 64 bit and not have this
constration, rpm must make sure not to exceed this memory limitation.
When using multithreaded xz compression, the number of threads used will
increase the memory usage, making it necessary to check the memory
required with the number of threads to be used.
Number of compression threads will therefore be kept reduced untill
amount of memory required won't exceed this limitation.
For 32 bit binaries running under 64 bit host environment, where less
available memory will be reserved for kernel, easing memory constraints,
determination of this will be done by a combination of checking host
arch as well as whether 32 bit personality flag is set, thereby still
allow a sligthly greater memory usage for such cases to avoid
imposing unnecessatry limitations under such environments.
Change-Id: Ie72827d3067a353a8a48faff9b65595c99f60a4c
|
|
Change-Id: I77af75943420c65868672f05cbde73563370c351
|
|
Change-Id: If7513a85c77692983bc2cb948f5b92eea3b304d8
|
|
Change-Id: I25c017827b38e2141dcff4d6bfd398f9e1a008c2
|
|
Change-Id: I3b95d39e0385ad50a6e8ed244757dd1fa8797f6e
|
|
Change-Id: Ie430058a1ecd3c03627060c1b32080d0d47a3877
|
|
which BTW fix the default compression level which is 6 instead of 7
Change-Id: I8b9b50a2cd1f64169477a72cc4d36a374d7a9867
|
|
Remove msm related macros inside macros.in file
Change-Id: I3ae680b13739f92624f757934fe884737c9181bf
|
|
package upgrade
Change-Id: I4cecbdb5034cef6ca42b8a8ed95792e73bf81c04
|
|
libdir macro which is re-defined in each platform macro : is not defined by ARCH but by _host_cpu
Change-Id: I2b5a10c817a1b8703bc3e51e8970ea73e49c5815
|