Merge branch 'master' into f25
This commit is contained in:
commit
a4acd898df
|
@ -23,3 +23,5 @@
|
|||
/chromium-59.0.3071.86-clean.tar.xz
|
||||
/chromium-59.0.3071.104-clean.tar.xz
|
||||
/chromium-59.0.3071.109-clean.tar.xz
|
||||
/chromium-59.0.3071.115-clean.tar.xz
|
||||
/chromium-59.0.3071.109-freetype.tar.bz2
|
||||
|
|
|
@ -0,0 +1,214 @@
|
|||
diff -up chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc
|
||||
--- chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc.ucontextfix 2017-07-12 15:23:33.019591380 -0400
|
||||
+++ chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc 2017-07-12 15:32:52.069197546 -0400
|
||||
@@ -36,19 +36,19 @@ namespace google_breakpad {
|
||||
|
||||
// Minidump defines register structures which are different from the raw
|
||||
// structures which we get from the kernel. These are platform specific
|
||||
-// functions to juggle the ucontext and user structures into minidump format.
|
||||
+// functions to juggle the ucontext_t and user structures into minidump format.
|
||||
|
||||
#if defined(__i386__)
|
||||
|
||||
-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.gregs[REG_ESP];
|
||||
}
|
||||
|
||||
-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.gregs[REG_EIP];
|
||||
}
|
||||
|
||||
-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
|
||||
+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
|
||||
const struct _libc_fpstate* fp) {
|
||||
const greg_t* regs = uc->uc_mcontext.gregs;
|
||||
|
||||
@@ -88,15 +88,15 @@ void UContextReader::FillCPUContext(RawC
|
||||
|
||||
#elif defined(__x86_64)
|
||||
|
||||
-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.gregs[REG_RSP];
|
||||
}
|
||||
|
||||
-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.gregs[REG_RIP];
|
||||
}
|
||||
|
||||
-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
|
||||
+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
|
||||
const struct _libc_fpstate* fpregs) {
|
||||
const greg_t* regs = uc->uc_mcontext.gregs;
|
||||
|
||||
@@ -145,15 +145,15 @@ void UContextReader::FillCPUContext(RawC
|
||||
|
||||
#elif defined(__ARM_EABI__)
|
||||
|
||||
-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.arm_sp;
|
||||
}
|
||||
|
||||
-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.arm_pc;
|
||||
}
|
||||
|
||||
-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc) {
|
||||
+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc) {
|
||||
out->context_flags = MD_CONTEXT_ARM_FULL;
|
||||
|
||||
out->iregs[0] = uc->uc_mcontext.arm_r0;
|
||||
@@ -184,15 +184,15 @@ void UContextReader::FillCPUContext(RawC
|
||||
|
||||
#elif defined(__aarch64__)
|
||||
|
||||
-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.sp;
|
||||
}
|
||||
|
||||
-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.pc;
|
||||
}
|
||||
|
||||
-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
|
||||
+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
|
||||
const struct fpsimd_context* fpregs) {
|
||||
out->context_flags = MD_CONTEXT_ARM64_FULL;
|
||||
|
||||
@@ -210,15 +210,15 @@ void UContextReader::FillCPUContext(RawC
|
||||
|
||||
#elif defined(__mips__)
|
||||
|
||||
-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.gregs[MD_CONTEXT_MIPS_REG_SP];
|
||||
}
|
||||
|
||||
-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
|
||||
+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
|
||||
return uc->uc_mcontext.pc;
|
||||
}
|
||||
|
||||
-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc) {
|
||||
+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc) {
|
||||
#if _MIPS_SIM == _ABI64
|
||||
out->context_flags = MD_CONTEXT_MIPS64_FULL;
|
||||
#elif _MIPS_SIM == _ABIO32
|
||||
diff -up chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h
|
||||
--- chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h.ucontextfix 2017-07-12 15:33:08.486806743 -0400
|
||||
+++ chromium-59.0.3071.115/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h 2017-07-12 15:33:57.299644808 -0400
|
||||
@@ -39,23 +39,23 @@
|
||||
|
||||
namespace google_breakpad {
|
||||
|
||||
-// Wraps platform-dependent implementations of accessors to ucontext structs.
|
||||
+// Wraps platform-dependent implementations of accessors to ucontext_t structs.
|
||||
struct UContextReader {
|
||||
- static uintptr_t GetStackPointer(const struct ucontext* uc);
|
||||
+ static uintptr_t GetStackPointer(const ucontext_t* uc);
|
||||
|
||||
- static uintptr_t GetInstructionPointer(const struct ucontext* uc);
|
||||
+ static uintptr_t GetInstructionPointer(const ucontext_t* uc);
|
||||
|
||||
- // Juggle a arch-specific ucontext into a minidump format
|
||||
+ // Juggle a arch-specific ucontext_t into a minidump format
|
||||
// out: the minidump structure
|
||||
// info: the collection of register structures.
|
||||
#if defined(__i386__) || defined(__x86_64)
|
||||
- static void FillCPUContext(RawContextCPU *out, const ucontext *uc,
|
||||
+ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
|
||||
const struct _libc_fpstate* fp);
|
||||
#elif defined(__aarch64__)
|
||||
- static void FillCPUContext(RawContextCPU *out, const ucontext *uc,
|
||||
+ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
|
||||
const struct fpsimd_context* fpregs);
|
||||
#else
|
||||
- static void FillCPUContext(RawContextCPU *out, const ucontext *uc);
|
||||
+ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc);
|
||||
#endif
|
||||
};
|
||||
|
||||
diff -up chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.cc.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.cc
|
||||
--- chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.cc.ucontextfix 2017-07-12 15:34:09.094364048 -0400
|
||||
+++ chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.cc 2017-07-12 15:35:36.483283853 -0400
|
||||
@@ -439,9 +439,9 @@ bool ExceptionHandler::HandleSignal(int
|
||||
// Fill in all the holes in the struct to make Valgrind happy.
|
||||
memset(&g_crash_context_, 0, sizeof(g_crash_context_));
|
||||
memcpy(&g_crash_context_.siginfo, info, sizeof(siginfo_t));
|
||||
- memcpy(&g_crash_context_.context, uc, sizeof(struct ucontext));
|
||||
+ memcpy(&g_crash_context_.context, uc, sizeof(ucontext_t));
|
||||
#if defined(__aarch64__)
|
||||
- struct ucontext* uc_ptr = (struct ucontext*)uc;
|
||||
+ ucontext_t* uc_ptr = (ucontext_t*)uc;
|
||||
struct fpsimd_context* fp_ptr =
|
||||
(struct fpsimd_context*)&uc_ptr->uc_mcontext.__reserved;
|
||||
if (fp_ptr->head.magic == FPSIMD_MAGIC) {
|
||||
@@ -450,9 +450,9 @@ bool ExceptionHandler::HandleSignal(int
|
||||
}
|
||||
#elif !defined(__ARM_EABI__) && !defined(__mips__)
|
||||
// FP state is not part of user ABI on ARM Linux.
|
||||
- // In case of MIPS Linux FP state is already part of struct ucontext
|
||||
+ // In case of MIPS Linux FP state is already part of ucontext_t
|
||||
// and 'float_state' is not a member of CrashContext.
|
||||
- struct ucontext* uc_ptr = (struct ucontext*)uc;
|
||||
+ ucontext_t* uc_ptr = (ucontext_t*)uc;
|
||||
if (uc_ptr->uc_mcontext.fpregs) {
|
||||
memcpy(&g_crash_context_.float_state, uc_ptr->uc_mcontext.fpregs,
|
||||
sizeof(g_crash_context_.float_state));
|
||||
@@ -476,7 +476,7 @@ bool ExceptionHandler::SimulateSignalDel
|
||||
// ExceptionHandler::HandleSignal().
|
||||
siginfo.si_code = SI_USER;
|
||||
siginfo.si_pid = getpid();
|
||||
- struct ucontext context;
|
||||
+ ucontext_t context;
|
||||
getcontext(&context);
|
||||
return HandleSignal(sig, &siginfo, &context);
|
||||
}
|
||||
diff -up chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.h.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.h
|
||||
--- chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.h.ucontextfix 2017-07-12 15:35:48.559996380 -0400
|
||||
+++ chromium-59.0.3071.115/breakpad/src/client/linux/handler/exception_handler.h 2017-07-12 15:36:32.615948562 -0400
|
||||
@@ -191,11 +191,11 @@ class ExceptionHandler {
|
||||
struct CrashContext {
|
||||
siginfo_t siginfo;
|
||||
pid_t tid; // the crashing thread.
|
||||
- struct ucontext context;
|
||||
+ ucontext_t context;
|
||||
#if !defined(__ARM_EABI__) && !defined(__mips__)
|
||||
// #ifdef this out because FP state is not part of user ABI for Linux ARM.
|
||||
// In case of MIPS Linux FP state is already part of struct
|
||||
- // ucontext so 'float_state' is not required.
|
||||
+ // ucontext_t so 'float_state' is not required.
|
||||
fpstate_t float_state;
|
||||
#endif
|
||||
};
|
||||
diff -up chromium-59.0.3071.115/breakpad/src/client/linux/microdump_writer/microdump_writer.cc.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/microdump_writer/microdump_writer.cc
|
||||
--- chromium-59.0.3071.115/breakpad/src/client/linux/microdump_writer/microdump_writer.cc.ucontextfix 2017-07-12 15:37:26.232674196 -0400
|
||||
+++ chromium-59.0.3071.115/breakpad/src/client/linux/microdump_writer/microdump_writer.cc 2017-07-12 15:37:39.032369973 -0400
|
||||
@@ -579,7 +579,7 @@ class MicrodumpWriter {
|
||||
|
||||
void* Alloc(unsigned bytes) { return dumper_->allocator()->Alloc(bytes); }
|
||||
|
||||
- const struct ucontext* const ucontext_;
|
||||
+ const ucontext_t* const ucontext_;
|
||||
#if !defined(__ARM_EABI__) && !defined(__mips__)
|
||||
const google_breakpad::fpstate_t* const float_state_;
|
||||
#endif
|
||||
diff -up chromium-59.0.3071.115/breakpad/src/client/linux/minidump_writer/minidump_writer.cc.ucontextfix chromium-59.0.3071.115/breakpad/src/client/linux/minidump_writer/minidump_writer.cc
|
||||
--- chromium-59.0.3071.115/breakpad/src/client/linux/minidump_writer/minidump_writer.cc.ucontextfix 2017-07-12 15:37:54.041013246 -0400
|
||||
+++ chromium-59.0.3071.115/breakpad/src/client/linux/minidump_writer/minidump_writer.cc 2017-07-12 15:38:19.600405748 -0400
|
||||
@@ -1323,7 +1323,7 @@ class MinidumpWriter {
|
||||
const int fd_; // File descriptor where the minidum should be written.
|
||||
const char* path_; // Path to the file where the minidum should be written.
|
||||
|
||||
- const struct ucontext* const ucontext_; // also from the signal handler
|
||||
+ const ucontext_t* const ucontext_; // also from the signal handler
|
||||
#if !defined(__ARM_EABI__) && !defined(__mips__)
|
||||
const google_breakpad::fpstate_t* const float_state_; // ditto
|
||||
#endif
|
132
chromium.spec
132
chromium.spec
|
@ -1,5 +1,10 @@
|
|||
# NEVER EVER EVER turn this on in official builds
|
||||
%global freeworld 0
|
||||
%if %{freeworld}
|
||||
%global lsuffix freeworld
|
||||
%else
|
||||
%global lsuffix fedora
|
||||
%endif
|
||||
|
||||
# Leave this alone, please.
|
||||
%global target out/Release
|
||||
|
@ -109,8 +114,8 @@ BuildRequires: libicu-devel >= 5.4
|
|||
%global majorversion 59
|
||||
|
||||
Name: chromium%{chromium_channel}
|
||||
Version: %{majorversion}.0.3071.109
|
||||
Release: 5%{?dist}
|
||||
Version: %{majorversion}.0.3071.115
|
||||
Release: 1%{?dist}
|
||||
Summary: A WebKit (Blink) powered web browser
|
||||
Url: http://www.chromium.org/Home
|
||||
License: BSD and LGPLv2+ and ASL 2.0 and IJG and MIT and GPLv2+ and ISC and OpenSSL and (MPLv1.1 or GPLv2 or LGPLv2)
|
||||
|
@ -178,7 +183,9 @@ Patch37: chromium-59.0.3071.86-ffmpeg-stdatomic.patch
|
|||
Patch38: chromium-59.0.3071.86-dma-buf-header-hack.patch
|
||||
# Nacl can't die soon enough
|
||||
Patch39: chromium-59.0.3071.86-system-clang.patch
|
||||
|
||||
# Change struct ucontext to ucontext_t in breakpad
|
||||
# https://patchwork.openembedded.org/patch/141358/
|
||||
Patch40: chromium-59.0.3071.115-ucontext-fix.patch
|
||||
|
||||
### Chromium Tests Patches ###
|
||||
Patch100: chromium-46.0.2490.86-use_system_opus.patch
|
||||
|
@ -213,6 +220,10 @@ Source9: chromium-browser.xml
|
|||
Source10: https://dl.google.com/dl/edgedl/chrome/policy/policy_templates.zip
|
||||
Source11: chrome-remote-desktop@.service
|
||||
Source13: master_preferences
|
||||
# Upstream did not include third_party/freetype source code in the tarball for 59.0.3071.115
|
||||
# So we copy it from the previous build. :/
|
||||
Source14: chromium-59.0.3071.109-freetype.tar.bz2
|
||||
|
||||
# We can assume gcc and binutils.
|
||||
BuildRequires: gcc-c++
|
||||
|
||||
|
@ -472,6 +483,8 @@ Chromium is an open-source web browser, powered by WebKit (Blink).
|
|||
%package libs
|
||||
Summary: Shared libraries used by chromium (and chrome-remote-desktop)
|
||||
Requires: chromium-libs-media%{_isa} >= %{majorversion}
|
||||
Requires(post): %{_sbindir}/update-alternatives
|
||||
Requires(preun): %{_sbindir}/update-alternatives
|
||||
|
||||
%description libs
|
||||
Shared libraries used by chromium (and chrome-remote-desktop).
|
||||
|
@ -481,6 +494,8 @@ Shared libraries used by chromium (and chrome-remote-desktop).
|
|||
Summary: Chromium media libraries built with all possible codecs
|
||||
Provides: chromium-libs-media = %{version}-%{release}
|
||||
Provides: chromium-libs-media%{_isa} = %{version}-%{release}
|
||||
Requires(post): %{_sbindir}/update-alternatives
|
||||
Requires(preun): %{_sbindir}/update-alternatives
|
||||
|
||||
%description libs-media-freeworld
|
||||
Chromium media libraries built with all possible codecs. Chromium is an
|
||||
|
@ -491,6 +506,8 @@ can include.
|
|||
%package libs-media
|
||||
Summary: Shared libraries used by the chromium media subsystem
|
||||
Requires: chromium-libs%{_isa} = %{version}
|
||||
Requires(post): %{_sbindir}/update-alternatives
|
||||
Requires(preun): %{_sbindir}/update-alternatives
|
||||
|
||||
%description libs-media
|
||||
Shared libraries used by the chromium media subsystem.
|
||||
|
@ -532,9 +549,9 @@ members of the Chromium and WebDriver teams.
|
|||
%setup -q -T -c -n %{name}-policies -a 10
|
||||
%setup -q -T -c -n depot_tools -a 2
|
||||
%if 0%{tests}
|
||||
%setup -q -n chromium-%{version} -b 1
|
||||
%setup -q -n chromium-%{version} -b 1 -a 14
|
||||
%else
|
||||
%setup -q -n chromium-%{version}
|
||||
%setup -q -n chromium-%{version} -a 14
|
||||
%endif
|
||||
|
||||
### Chromium Fedora Patches ###
|
||||
|
@ -564,6 +581,7 @@ members of the Chromium and WebDriver teams.
|
|||
%patch37 -p1 -b .ffmpeg-stdatomic
|
||||
%patch38 -p1 -b .headerhack
|
||||
%patch39 -p1 -b .system-clang
|
||||
%patch40 -p1 -b .ucontextfix
|
||||
|
||||
### Chromium Tests Patches ###
|
||||
%patch100 -p1 -b .use_system_opus
|
||||
|
@ -1003,6 +1021,9 @@ export CHROMIUM_BROWSER_UNIT_TESTS=
|
|||
|
||||
%global target out/Release
|
||||
|
||||
%if 0%{freeworld}
|
||||
../depot_tools/ninja -C %{target} -vvv media $CHROMIUM_BROWSER_UNIT_TESTS
|
||||
%else
|
||||
../depot_tools/ninja -C %{target} -vvv chrome chrome_sandbox chromedriver widevinecdmadapter clearkeycdm policy_templates $CHROMIUM_BROWSER_UNIT_TESTS
|
||||
|
||||
# remote client
|
||||
|
@ -1017,6 +1038,8 @@ GOOGLE_CLIENT_ID_REMOTING_IDENTITY_API=%{chromoting_client_id} ../../depot_tools
|
|||
%endif
|
||||
popd
|
||||
|
||||
%endif
|
||||
|
||||
# Nuke nacl/pnacl bits at the end of the build
|
||||
rm -rf out/Release/gen/sdk
|
||||
rm -rf native_client/toolchain
|
||||
|
@ -1024,6 +1047,15 @@ rm -rf third_party/llvm-build/*
|
|||
|
||||
%install
|
||||
rm -rf %{buildroot}
|
||||
|
||||
%if 0%{freeworld}
|
||||
mkdir -p %{buildroot}%{chromium_path}
|
||||
|
||||
pushd %{target}
|
||||
cp -a libffmpeg.so* %{buildroot}%{chromium_path}
|
||||
cp -a libmedia.so* %{buildroot}%{chromium_path}
|
||||
popd
|
||||
%else
|
||||
mkdir -p %{buildroot}%{_bindir}
|
||||
mkdir -p %{buildroot}%{chromium_path}
|
||||
cp -a %{SOURCE3} %{buildroot}%{chromium_path}/%{chromium_browser_channel}.sh
|
||||
|
@ -1060,6 +1092,11 @@ cp -a natives_blob.bin %{buildroot}%{chromium_path}
|
|||
cp -a snapshot_blob.bin %{buildroot}%{chromium_path}
|
||||
%if 0%{?shared}
|
||||
cp -a lib*.so* %{buildroot}%{chromium_path}
|
||||
cp -p %{buildroot}%{chromium_path}/libwidevinecdm.so{,.fedora}
|
||||
cp -p %{buildroot}%{chromium_path}/libffmpeg.so{,.%{lsuffix}}
|
||||
cp -p %{buildroot}%{chromium_path}/libffmpeg.so.TOC{,.%{lsuffix}}
|
||||
cp -p %{buildroot}%{chromium_path}/libmedia.so{,.%{lsuffix}}
|
||||
cp -p %{buildroot}%{chromium_path}/libmedia.so.TOC{,.%{lsuffix}}
|
||||
%endif
|
||||
|
||||
# chromedriver
|
||||
|
@ -1160,6 +1197,9 @@ cp -a %{SOURCE9} %{buildroot}%{_datadir}/gnome-control-center/default-apps/
|
|||
|
||||
mkdir -p %{buildroot}%{chromium_path}/PepperFlash
|
||||
|
||||
# freeworld conditional
|
||||
%endif
|
||||
|
||||
%check
|
||||
%if 0%{tests}
|
||||
%if 0%{?tests_force_display}
|
||||
|
@ -1494,6 +1534,52 @@ if st and st.type == "link" then
|
|||
os.remove(path)
|
||||
end
|
||||
|
||||
%post libs
|
||||
%{_sbindir}/update-alternatives --install \
|
||||
%{_libdir}/chromium-browser/libwidevinecdm.so libwidevinecdm.so \
|
||||
%{_libdir}/chromium-browser/libwidevinecdm.so.fedora 10
|
||||
|
||||
%preun libs
|
||||
if [ $1 = 0 ]; then
|
||||
%{_sbindir}/alternatives --remove libwidevinecdm.so \
|
||||
%{_libdir}/chromium-browser/libwidevinecdm.so.fedora
|
||||
fi
|
||||
|
||||
%if %{freeworld}
|
||||
%post libs-media-freeworld
|
||||
%{_sbindir}/update-alternatives --install \
|
||||
%{_libdir}/chromium-browser/libffmpeg.so libffmpeg.so \
|
||||
%{_libdir}/chromium-browser/libffmpeg.so.freeworld 5
|
||||
--slave %{_libdir}/chromium-browser/libffmpeg.so.TOC libffmpeg.so.TOC \
|
||||
%{_libdir}/chromium-browser/libffmpeg.so.TOC.freeworld
|
||||
--slave %{_libdir}/chromium-browser/libmedia.so libmedia.so \
|
||||
%{_libdir}/chromium-browser/libmedia.so.freeworld
|
||||
--slave %{_libdir}/chromium-browser/libmedia.so.TOC libmedia.so.TOC \
|
||||
%{_libdir}/chromium-browser/libmedia.so.TOC.freeworld
|
||||
|
||||
%preun libs-media-freeworld
|
||||
if [ $1 = 0 ]; then
|
||||
%{_sbindir}/alternatives --remove libffmpeg.so \
|
||||
%{_libdir}/chromium-browser/libffmpeg.so.freeworld
|
||||
fi
|
||||
%else
|
||||
%post libs-media
|
||||
%{_sbindir}/update-alternatives --install \
|
||||
%{_libdir}/chromium-browser/libffmpeg.so libffmpeg.so \
|
||||
%{_libdir}/chromium-browser/libffmpeg.so.fedora 10
|
||||
--slave %{_libdir}/chromium-browser/libffmpeg.so.TOC libffmpeg.so.TOC \
|
||||
%{_libdir}/chromium-browser/libffmpeg.so.TOC.fedora
|
||||
--slave %{_libdir}/chromium-browser/libmedia.so libmedia.so \
|
||||
%{_libdir}/chromium-browser/libmedia.so.fedora
|
||||
--slave %{_libdir}/chromium-browser/libmedia.so.TOC libmedia.so.TOC \
|
||||
%{_libdir}/chromium-browser/libmedia.so.TOC.fedora
|
||||
|
||||
%preun libs-media
|
||||
if [ $1 = 0 ]; then
|
||||
%{_sbindir}/alternatives --remove libffmpeg.so \
|
||||
%{_libdir}/chromium-browser/libffmpeg.so.fedora
|
||||
fi
|
||||
%endif
|
||||
|
||||
%pre -n chrome-remote-desktop
|
||||
getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-desktop
|
||||
|
@ -1507,6 +1593,10 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt
|
|||
%postun -n chrome-remote-desktop
|
||||
%systemd_postun_with_restart chrome-remote-desktop@.service
|
||||
|
||||
%if 0%{freeworld}
|
||||
# We only build libs-media-freeworld.
|
||||
%else
|
||||
|
||||
%files
|
||||
%doc AUTHORS
|
||||
%license LICENSE
|
||||
|
@ -1602,15 +1692,8 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt
|
|||
%files libs
|
||||
%exclude %{chromium_path}/libffmpeg.so*
|
||||
%exclude %{chromium_path}/libmedia.so*
|
||||
%exclude %{chromium_path}/libwidevinecdm.so
|
||||
%{chromium_path}/lib*.so*
|
||||
|
||||
%if %{freeworld}
|
||||
%files libs-media-freeworld
|
||||
%else
|
||||
%files libs-media
|
||||
%endif
|
||||
%{chromium_path}/libffmpeg.so*
|
||||
%{chromium_path}/libmedia.so*
|
||||
%endif
|
||||
|
||||
%files -n chrome-remote-desktop
|
||||
|
@ -1641,7 +1724,30 @@ getent group chrome-remote-desktop >/dev/null || groupadd -r chrome-remote-deskt
|
|||
%{_bindir}/chromedriver
|
||||
%{chromium_path}/chromedriver
|
||||
|
||||
%endif
|
||||
|
||||
%if 0%{?shared}
|
||||
%if %{freeworld}
|
||||
%files libs-media-freeworld
|
||||
%else
|
||||
%files libs-media
|
||||
%endif
|
||||
%{chromium_path}/libffmpeg.so.%{lsuffix}*
|
||||
%{chromium_path}/libffmpeg.so.TOC.%{lsuffix}*
|
||||
%{chromium_path}/libmedia.so.%{lsuffix}*
|
||||
%{chromium_path}/libmedia.so.TOC.%{lsuffix}*
|
||||
%endif
|
||||
|
||||
|
||||
%changelog
|
||||
* Wed Jul 12 2017 Tom Callaway <spot@fedoraproject.org> 59.0.3071.115-1
|
||||
- 59.0.3071.115
|
||||
- conditionalize spec so it can be easily used to make -libs-media-freeworld
|
||||
|
||||
* Wed Jun 28 2017 Dominik Mierzejewski <dominik@greysector.net> 59.0.3071.109-6
|
||||
- use alternatives for widevine stub and media libs to allow third-party
|
||||
packages to replace them without conflicts
|
||||
|
||||
* Mon Jun 26 2017 Tom Callaway <spot@fedoraproject.org> 59.0.3071.109-5
|
||||
- fix path in pretrans scriptlet
|
||||
|
||||
|
|
3
sources
3
sources
|
@ -1,3 +1,4 @@
|
|||
SHA512 (chromium-59.0.3071.109-clean.tar.xz) = 7158a5b1c228c077275cf1bde79c34d9eabf607c04424df02056700703f2fd2907fc011ad658d759d7c6dd78c303f9c2983eb811cc9f9b6b424b0af615f6eaa7
|
||||
SHA512 (depot_tools.git-master.tar.gz) = d3d6a1873b2b0296a8cd99e0d8d2e629a17b1808934b4972556168f8b4ccea60577ebaeab4445baf15afb1b04080808db59a832a5b61d247bd48da14fa6acf03
|
||||
SHA512 (policy_templates.zip) = a997bd5d410cf8f0f104fb5b69b60699c9e60eb3f99b42e0aff167843f3a45923a9a99c881cac9cd4472a60ca9c7d1ba897e15d485fbfd66c996419e7fadd3f8
|
||||
SHA512 (chromium-59.0.3071.115-clean.tar.xz) = 001e6d9b4cae244767de7e85575d4071421d588422ca434461939e9652549bcd43c56fe0c510ab0d7d0a050e97d98f4086b8bf102dbadd7f83dc8827b9ea7ed1
|
||||
SHA512 (chromium-59.0.3071.109-freetype.tar.bz2) = 62a698c0229c0eb5ed4d31efd211db70f1183f4f86558bd68a6110214b2f0a61eecdde27efcab359ecee684b3df819b37a75505c1b9ea6bec407d289d6e78a66
|
||||
|
|
Loading…
Reference in New Issue