Accepting request 722078 from home:StefanBruens:branches:electronics

Update to 5.1.4
Please wait for release announcement until forwarding to Factory.

OBS-URL: https://build.opensuse.org/request/show/722078
OBS-URL: https://build.opensuse.org/package/show/electronics/kicad?expand=0&rev=67
This commit is contained in:
Stefan Brüns 2019-08-10 13:59:47 +00:00 committed by Git OBS Bridge
parent daf451e8ac
commit aab2adb643
5 changed files with 163 additions and 4 deletions

148
fix_build_with_lto.patch Normal file
View File

@ -0,0 +1,148 @@
--- kicad-5.0.0/common/system/libcontext.cpp.orig 2018-07-13 21:53:52.000000000 +0200
+++ kicad-5.0.0/common/system/libcontext.cpp 2018-08-12 12:01:30.930309888 +0200
@@ -258,12 +258,10 @@
#endif
#if defined(LIBCONTEXT_PLATFORM_linux_i386) && defined(LIBCONTEXT_COMPILER_gcc)
+intptr_t LIBCONTEXT_CALL_CONVENTION libcontext::jump_fcontext( libcontext::fcontext_t* ofc, libcontext::fcontext_t nfc,
+ intptr_t vp, bool preserve_fpu )
+{
__asm (
-".text\n"
-".globl jump_fcontext\n"
-".align 2\n"
-".type jump_fcontext,@function\n"
-"jump_fcontext:\n"
" movl 0x10(%esp), %ecx\n"
" pushl %ebp \n"
" pushl %ebx \n"
@@ -293,19 +291,16 @@
" popl %edx\n"
" movl %eax, 0x4(%esp)\n"
" jmp *%edx\n"
-".size jump_fcontext,.-jump_fcontext\n"
-".section .note.GNU-stack,\"\",%progbits\n"
);
+}
#endif
#if defined(LIBCONTEXT_PLATFORM_linux_i386) && defined(LIBCONTEXT_COMPILER_gcc)
+libcontext::fcontext_t LIBCONTEXT_CALL_CONVENTION libcontext::make_fcontext( void* sp, size_t size,
+ void (* fn)( intptr_t ) )
+{
__asm (
-".text\n"
-".globl make_fcontext\n"
-".align 2\n"
-".type make_fcontext,@function\n"
-"make_fcontext:\n"
" movl 0x4(%esp), %eax\n"
" leal -0x8(%eax), %eax\n"
" andl $-16, %eax\n"
@@ -327,19 +322,16 @@
" movl %eax, (%esp)\n"
" call _exit@PLT\n"
" hlt\n"
-".size make_fcontext,.-make_fcontext\n"
-".section .note.GNU-stack,\"\",%progbits\n"
);
+}
#endif
#if defined(LIBCONTEXT_PLATFORM_linux_x86_64) && defined(LIBCONTEXT_COMPILER_gcc)
+intptr_t LIBCONTEXT_CALL_CONVENTION libcontext::jump_fcontext( libcontext::fcontext_t* ofc, libcontext::fcontext_t nfc,
+ intptr_t vp, bool preserve_fpu )
+{
__asm (
-".text\n"
-".globl jump_fcontext\n"
-".type jump_fcontext,@function\n"
-".align 16\n"
-"jump_fcontext:\n"
" pushq %rbp \n"
" pushq %rbx \n"
" pushq %r15 \n"
@@ -370,19 +362,16 @@
" movq %rdx, %rax\n"
" movq %rdx, %rdi\n"
" jmp *%r8\n"
-".size jump_fcontext,.-jump_fcontext\n"
-".section .note.GNU-stack,\"\",%progbits\n"
);
+}
#endif
#if defined(LIBCONTEXT_PLATFORM_linux_x86_64) && defined(LIBCONTEXT_COMPILER_gcc)
+libcontext::fcontext_t LIBCONTEXT_CALL_CONVENTION libcontext::make_fcontext( void* sp, size_t size,
+ void (* fn)( intptr_t ) )
+{
__asm (
-".text\n"
-".globl make_fcontext\n"
-".type make_fcontext,@function\n"
-".align 16\n"
-"make_fcontext:\n"
" movq %rdi, %rax\n"
" andq $-16, %rax\n"
" leaq -0x48(%rax), %rax\n"
@@ -396,9 +385,8 @@
" xorq %rdi, %rdi\n"
" call _exit@PLT\n"
" hlt\n"
-".size make_fcontext,.-make_fcontext\n"
-".section .note.GNU-stack,\"\",%progbits\n"
);
+}
#endif
--- kicad-5.1.0/include/system/libcontext.h.orig 2019-03-08 13:31:50.000000000 +0100
+++ kicad-5.1.0/include/system/libcontext.h 2019-03-15 22:51:14.620823853 +0100
@@ -30,15 +30,19 @@
#if defined(__x86_64__) || defined(__amd64__)
#define LIBCONTEXT_PLATFORM_linux_x86_64
#define LIBCONTEXT_CALL_CONVENTION
+ #define LIBCONTEXT_FUNCTION_ALIGN 16
#elif __i386__
#define LIBCONTEXT_PLATFORM_linux_i386
#define LIBCONTEXT_CALL_CONVENTION
+ #define LIBCONTEXT_FUNCTION_ALIGN 2
#elif __arm__
#define LIBCONTEXT_PLATFORM_linux_arm32
#define LIBCONTEXT_CALL_CONVENTION
+ #define LIBCONTEXT_FUNCTION_ALIGN 2
#elif __aarch64__
#define LIBCONTEXT_PLATFORM_linux_arm64
#define LIBCONTEXT_CALL_CONVENTION
+ #define LIBCONTEXT_FUNCTION_ALIGN 2
#elif (__mips__ && _MIPS_SIM == _ABI64)
#define LIBCONTEXT_PLATFORM_linux_mips_n64
#define LIBCONTEXT_CALL_CONVENTION
@@ -85,22 +89,15 @@
typedef void* fcontext_t;
-#ifdef __cplusplus
-extern "C" {
-#endif
intptr_t LIBCONTEXT_CALL_CONVENTION jump_fcontext( fcontext_t* ofc, fcontext_t nfc,
- intptr_t vp, bool preserve_fpu = true );
+ intptr_t vp, bool preserve_fpu = true ) __attribute__ ((naked, aligned(LIBCONTEXT_FUNCTION_ALIGN) ));
fcontext_t LIBCONTEXT_CALL_CONVENTION make_fcontext( void* sp, size_t size,
- void (* fn)( intptr_t ) );
+ void (* fn)( intptr_t ) ) __attribute__ ((naked, aligned(LIBCONTEXT_FUNCTION_ALIGN) ));
#ifdef __cplusplus
} // namespace
#endif
-#ifdef __cplusplus
-} // extern "C"
-#endif
-
#endif

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:84376c50b436a1aec985d3de94e6f445ea5c1e5c75c04a239c9837a1ab40778a
size 14191500

3
kicad-5.1.4.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:52cca2672e33197ae9ca4c36d73c9a8c580bfeecfe56cd03be8b2a65e06bc0e4
size 14198672

View File

@ -1,3 +1,9 @@
-------------------------------------------------------------------
Wed Aug 7 16:39:35 UTC 2019 - Stefan Brüns <stefan.bruens@rwth-aachen.de>
- Update to minor release 5.1.4
See http://kicad-pcb.org/blog/2019/08/KiCad-5.1.4-Release/ for details.
-------------------------------------------------------------------
Thu Apr 25 13:40:29 UTC 2019 - Stefan Brüns <stefan.bruens@rwth-aachen.de>

View File

@ -20,7 +20,7 @@
# symbol libraries from version 5.0.0
%define compatversion 5.0.0
Name: kicad
Version: 5.1.2
Version: 5.1.4
Release: 0
Summary: EDA software suite for the creation of schematics and PCB
License: GPL-3.0-or-later AND AGPL-3.0-or-later
@ -32,6 +32,8 @@ Patch1: kicad-user-library.patch
# PATCH-FIX-OPENSUSE davejplater@gmail.com -kicad-suse-help-path.patch - kicad looks in /usr/share/doc/kicad for help files and doesn't find them.
# this patch adds packges/ befor kicad and enables help to function.
Patch3: kicad-suse-help-path.patch
# PATCH-FIX-OTHER http://git.pld-linux.org/?p=packages/kicad.git;a=blob_plain;f=lto.patch;h=ad2c2f023eb7ffeefef2c1fd4cff1fdc9f6b3156;hb=HEAD
Patch4: fix_build_with_lto.patch
%if 0%{?suse_version} >= 1500
BuildRequires: libboost_filesystem-devel
@ -94,6 +96,9 @@ KiCad includes a project manager and four main independent software tools:
%setup -q -n kicad-%{version}
%patch1 -p0
%patch3
%if 0
%patch4 -p1
%endif
%build
# -DKICAD_PLUGINS:PATH=%%{_libdir}/kicad/plugins \