From 1d45079334df20523c8c0d8fd37b3a771af3e51d Mon Sep 17 00:00:00 2001 From: Peter Eszlari Date: Sun, 24 Mar 2019 03:17:35 +0100 Subject: [PATCH 1/8] kicad 5.1.0, fd.o 18.08 --- 0001-Add-AppStream-metadata.patch | 111 ---- 0001-Closing-6851.patch | 28 - kicad-4.0.5-boost.patch | 897 ------------------------------ org.kicad_pcb.KiCad.json | 61 +- 4 files changed, 30 insertions(+), 1067 deletions(-) delete mode 100644 0001-Add-AppStream-metadata.patch delete mode 100644 0001-Closing-6851.patch delete mode 100644 kicad-4.0.5-boost.patch diff --git a/0001-Add-AppStream-metadata.patch b/0001-Add-AppStream-metadata.patch deleted file mode 100644 index bb705dd..0000000 --- a/0001-Add-AppStream-metadata.patch +++ /dev/null @@ -1,111 +0,0 @@ -From 6ddde8f630b9410fda90be3bf2f9529ef488b7be Mon Sep 17 00:00:00 2001 -From: Lubomir Rintel -Date: Wed, 20 Apr 2016 16:54:08 +0200 -Subject: [PATCH] Add AppStream metadata - -This will ensure KiCad will be easily installable from the app stores such -as GNOME Software. - -The screenshots probably need a better home. Not that it would matter -too much -- the Linux distributions do cache them with their feeds, so -the app store applications don't access them from this source directly. - -Screenshots from the web [1] can't be used since they are too large for -use in the app store application. :( - -[1] http://kicad-pcb.org/discover/screenshots/ - -Fixes lp:1323789 - -https://bugs.launchpad.net/kicad/+bug/1323789 -(cherry picked from commit 862711b71a78b140ee2987eeccb44a29a4f2a14f) ---- - CMakeLists.txt | 7 +++++ - resources/linux/appdata/kicad.appdata.xml | 50 +++++++++++++++++++++++++++++++ - 2 files changed, 57 insertions(+) - create mode 100644 resources/linux/appdata/kicad.appdata.xml - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 9fec4a285..5822c446f 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -795,6 +795,7 @@ if( UNIX AND NOT APPLE ) - set( UNIX_MIME_FILES ${UNIX_MIME_DIR}/mime ) - set( UNIX_ICON_FILES ${UNIX_MIME_DIR}/icons ) - set( UNIX_APPLICATIONS_FILES ${UNIX_MIME_DIR}/applications ) -+ set( UNIX_APPDATA_FILES resources/linux/appdata ) - - # Install Mime directory - install( DIRECTORY ${UNIX_ICON_FILES} -@@ -813,6 +814,12 @@ if( UNIX AND NOT APPLE ) - DESTINATION ${CMAKE_INSTALL_PREFIX}/share - COMPONENT resources - ) -+ -+ # Install AppStream directory (app store entry) -+ install( DIRECTORY ${UNIX_APPDATA_FILES} -+ DESTINATION ${CMAKE_INSTALL_PREFIX}/share -+ COMPONENT resources -+ ) - endif() - - #include( CTest ) -diff --git a/resources/linux/appdata/kicad.appdata.xml b/resources/linux/appdata/kicad.appdata.xml -new file mode 100644 -index 000000000..8f7886358 ---- /dev/null -+++ b/resources/linux/appdata/kicad.appdata.xml -@@ -0,0 +1,50 @@ -+ -+ -+ -+ -+ kicad.desktop -+ KiCad -+ GPL-2.0+ -+ CC0-1.0 -+ EDA Suite -+ -+ -+ KiCad -+ EDA -+ PCB -+ Schema -+ PcbNew -+ Eeschema -+ -+ -+ -+

A Cross Platform and Open Source Electronics Design Automation Suite.

-+

The programs handle Schematic Capture, and PCB Layout with Gerber output.

-+
-+ -+ -+ -+ http://kicad-pcb.org/img/screenshots/appstream/kicad.png -+ -+ -+ -+ Eeschema Schematic Editor -+ http://kicad-pcb.org/img/screenshots/appstream/eeschema.png -+ -+ -+ -+ PcbNew PCB Layout -+ http://kicad-pcb.org/img/screenshots/appstream/pcbnew.png -+ -+ -+ -+ PcbNew 3D Viewer -+ http://kicad-pcb.org/img/screenshots/appstream/3dviewer.png -+ -+ -+ -+ http://kicad-pcb.org/ -+ http://kicad-pcb.org/help/report-a-bug/ -+ kicad-developers@lists.launchpad.net -+ The KiCad Developers -+
--- -2.14.2 - diff --git a/0001-Closing-6851.patch b/0001-Closing-6851.patch deleted file mode 100644 index 69687ab..0000000 --- a/0001-Closing-6851.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 3ad1bd9dd80913150eb7b48fafafe6a0e26b2cae Mon Sep 17 00:00:00 2001 -From: Artyom Beilis -Date: Thu, 13 Jul 2017 17:10:39 +0300 -Subject: [PATCH] Closing #6851 - -(cherry picked from commit 90dd8146fbb01fd0a1b0473ad5a5d28644b65e87) - -https://github.com/boostorg/locale/commit/90dd8146 ---- - libs/locale/src/icu/formatter.cpp | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/libs/locale/src/icu/formatter.cpp b/libs/locale/src/icu/formatter.cpp -index 25eab31..86e71e9 100644 ---- a/libs/locale/src/icu/formatter.cpp -+++ b/libs/locale/src/icu/formatter.cpp -@@ -58,7 +58,7 @@ namespace locale { - virtual string_type format(int64_t value,size_t &code_points) const - { - icu::UnicodeString tmp; -- icu_fmt_->format(value,tmp); -+ icu_fmt_->format(static_cast< ::int64_t>(value),tmp); - code_points=tmp.countChar32(); - return cvt_.std(tmp); - } --- -2.14.2 - diff --git a/kicad-4.0.5-boost.patch b/kicad-4.0.5-boost.patch deleted file mode 100644 index 3abaa96..0000000 --- a/kicad-4.0.5-boost.patch +++ /dev/null @@ -1,897 +0,0 @@ -From 9a7bd89fd15be9af3b676cd1d7a28338e6c8cd15 Mon Sep 17 00:00:00 2001 -From: Michael Steinberg -Date: Tue, 5 Jul 2016 00:14:32 +0200 -Subject: [PATCH 1/3] boost::context fixes to make it compatible with boost - 1.61 - -(cherry picked from commit 06d4894fdbeb00727cdcc667b8899ad73d8eb1c2) ---- - common/tool/tool_manager.cpp | 6 +- - include/tool/coroutine.h | 162 ++++++++++++++++++++++++++-------------- - include/tool/tool_base.h | 7 +- - include/tool/tool_interactive.h | 3 +- - 4 files changed, 116 insertions(+), 62 deletions(-) - -diff --git a/common/tool/tool_manager.cpp b/common/tool/tool_manager.cpp -index 447ab99..a198c69 100644 ---- a/common/tool/tool_manager.cpp -+++ b/common/tool/tool_manager.cpp -@@ -528,7 +528,7 @@ void TOOL_MANAGER::dispatchInternal( const TOOL_EVENT& aEvent ) - } - } - -- BOOST_FOREACH( TOOL_STATE* st, m_toolState | boost::adaptors::map_values ) -+ for( TOOL_STATE* st : ( m_toolState | boost::adaptors::map_values ) ) - { - // no state handler in progress - check if there are any transitions (defined by - // Go() method that match the event. -@@ -542,11 +542,11 @@ void TOOL_MANAGER::dispatchInternal( const TOOL_EVENT& aEvent ) - if( st->cofunc ) - st->Push(); - -+ st->cofunc = new COROUTINE( tr.second ); -+ - // as the state changes, the transition table has to be set up again - st->transitions.clear(); - -- st->cofunc = new COROUTINE( tr.second ); -- - // got match? Run the handler. - st->cofunc->Call( aEvent ); - -diff --git a/include/tool/coroutine.h b/include/tool/coroutine.h -index c7eaf5f..e21e18f 100644 ---- a/include/tool/coroutine.h -+++ b/include/tool/coroutine.h -@@ -3,6 +3,7 @@ - * - * Copyright (C) 2013 CERN - * @author Tomasz Wlostowski -+ * Copyright (C) 2016 KiCad Developers, see AUTHORS.txt for contributors. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License -@@ -27,10 +28,14 @@ - - #include - --#include - #include -+#include - --#include "delegate.h" -+#if BOOST_VERSION <= 106000 -+#include -+#else -+#include -+#endif - - /** - * Class COROUNTINE. -@@ -53,13 +58,12 @@ - * See coroutine_example.cpp for sample code. - */ - --template -+template - class COROUTINE - { - public: - COROUTINE() : -- m_saved( NULL ), m_self( NULL ), m_stack( NULL ), m_stackSize( c_defaultStackSize ), -- m_running( false ) -+ COROUTINE( nullptr ) - { - } - -@@ -69,8 +73,7 @@ public: - */ - template - COROUTINE( T* object, ReturnType(T::* ptr)( ArgType ) ) : -- m_func( object, ptr ), m_self( NULL ), m_saved( NULL ), m_stack( NULL ), -- m_stackSize( c_defaultStackSize ), m_running( false ) -+ COROUTINE( std::bind( ptr, object, std::placeholders::_1 ) ) - { - } - -@@ -78,9 +81,15 @@ public: - * Constructor - * Creates a coroutine from a delegate object - */ -- COROUTINE( DELEGATE aEntry ) : -- m_func( aEntry ), m_saved( NULL ), m_self( NULL ), m_stack( NULL ), -- m_stackSize( c_defaultStackSize ), m_running( false ) -+ COROUTINE( std::function aEntry ) : -+ m_func( std::move( aEntry ) ), -+ m_running( false ), -+#if BOOST_VERSION <= 106000 -+ m_stack( nullptr ), -+ m_stackSize( c_defaultStackSize ), -+#endif -+ m_caller( nullptr ), -+ m_callee( nullptr ) - { - // Avoid not initialized members, and make static analysers quiet - m_args = 0; -@@ -89,18 +98,26 @@ public: - - ~COROUTINE() - { -- if( m_saved ) -- delete m_saved; -- - #if BOOST_VERSION >= 105600 -- if( m_self ) -- delete m_self; -+ delete m_callee; - #endif - -+#if BOOST_VERSION <= 106000 -+ delete m_caller; -+ - if( m_stack ) - free( m_stack ); -+#endif - } - -+private: -+#if BOOST_VERSION <= 106000 -+ using context_type = boost::context::fcontext_t; -+#else -+ using context_type = boost::context::execution_context; -+#endif -+ -+public: - /** - * Function Yield() - * -@@ -110,7 +127,12 @@ public: - */ - void Yield() - { -- jump( m_self, m_saved, 0 ); -+#if BOOST_VERSION <= 106000 -+ jump( m_callee, m_caller, false ); -+#else -+ auto result = (*m_caller)( this ); -+ *m_caller = std::move( std::get<0>( result ) ); -+#endif - } - - /** -@@ -122,7 +144,11 @@ public: - void Yield( ReturnType& aRetVal ) - { - m_retVal = aRetVal; -- jump( m_self, m_saved, 0 ); -+#if BOOST_VERSION <= 106000 -+ jump( m_callee, m_caller, false ); -+#else -+ m_caller( this ); -+#endif - } - - /** -@@ -130,9 +156,9 @@ public: - * - * Defines the entry point for the coroutine, if not set in the constructor. - */ -- void SetEntry( DELEGATE aEntry ) -+ void SetEntry( std::function aEntry ) - { -- m_func = aEntry; -+ m_func = std::move( aEntry ); - } - - /* Function Call() -@@ -143,6 +169,10 @@ public: - */ - bool Call( ArgType aArgs ) - { -+ assert( m_callee == NULL ); -+ assert( m_caller == NULL ); -+ -+#if BOOST_VERSION <= 106000 - // fixme: Clean up stack stuff. Add a guard - m_stack = malloc( c_defaultStackSize ); - -@@ -151,22 +181,32 @@ public: - - // correct the stack size - m_stackSize -= ( (size_t) m_stack + m_stackSize - (size_t) sp ); -- -- assert( m_self == NULL ); -- assert( m_saved == NULL ); -+#endif - - m_args = &aArgs; --#if BOOST_VERSION >= 105600 -- m_self = new boost::context::fcontext_t(); -- *m_self = boost::context::make_fcontext( sp, m_stackSize, callerStub ); -+ -+#if BOOST_VERSION < 105600 -+ m_callee = boost::context::make_fcontext( sp, m_stackSize, callerStub ); -+#elif BOOST_VERSION <= 106000 -+ m_callee = new context_type( boost::context::make_fcontext( sp, m_stackSize, callerStub ) ); - #else -- m_self = boost::context::make_fcontext( sp, m_stackSize, callerStub ); -+ m_callee = new context_type( std::allocator_arg_t(), -+ boost::context::fixedsize_stack( c_defaultStackSize ), &COROUTINE::callerStub ); -+#endif -+ -+#if BOOST_VERSION <= 106000 -+ m_caller = new context_type(); - #endif -- m_saved = new boost::context::fcontext_t(); - - m_running = true; -+ - // off we go! -- jump( m_saved, m_self, reinterpret_cast( this ) ); -+#if BOOST_VERSION <= 106000 -+ jump( m_caller, m_callee, reinterpret_cast( this ) ); -+#else -+ auto result = (*m_callee)( this ); -+ *m_callee = std::move( std::get<0>( result ) ); -+#endif - return m_running; - } - -@@ -179,7 +219,12 @@ public: - */ - bool Resume() - { -- jump( m_saved, m_self, 0 ); -+#if BOOST_VERSION <= 106000 -+ jump( m_caller, m_callee, false ); -+#else -+ auto result = (*m_callee)( this ); -+ *m_callee = std::move( std::get<0>( result ) ); -+#endif - - return m_running; - } -@@ -208,61 +253,66 @@ private: - static const int c_defaultStackSize = 2000000; // fixme: make configurable - - /* real entry point of the coroutine */ -+#if BOOST_VERSION <= 106000 - static void callerStub( intptr_t aData ) -+#else -+ static context_type callerStub( context_type caller, COROUTINE* cor ) -+#endif - { - // get pointer to self -+#if BOOST_VERSION <= 106000 - COROUTINE* cor = reinterpret_cast*>( aData ); -+#else -+ cor->m_caller = &caller; -+#endif - - // call the coroutine method -- cor->m_retVal = cor->m_func( *cor->m_args ); -+ cor->m_retVal = cor->m_func( *( cor->m_args ) ); - cor->m_running = false; - - // go back to wherever we came from. -- jump( cor->m_self, cor->m_saved, 0 ); // reinterpret_cast( this )); -+#if BOOST_VERSION <= 106000 -+ jump( cor->m_callee, cor->m_caller, 0 ); -+#else -+ return caller; -+#endif - } - - ///> Wrapper for jump_fcontext to assure compatibility between different boost versions -- static inline intptr_t jump(boost::context::fcontext_t* aOld, boost::context::fcontext_t* aNew, -+#if BOOST_VERSION <= 106000 -+ static inline intptr_t jump( context_type* aOld, context_type* aNew, - intptr_t aP, bool aPreserveFPU = true ) - { --#if BOOST_VERSION >= 105600 -- return boost::context::jump_fcontext( aOld, *aNew, aP, aPreserveFPU ); --#else -+#if BOOST_VERSION < 105600 - return boost::context::jump_fcontext( aOld, aNew, aP, aPreserveFPU ); -+#else -+ return boost::context::jump_fcontext( aOld, *aNew, aP, aPreserveFPU ); - #endif - } -+#endif - -- template -- struct strip_ref -- { -- typedef T result; -- }; -+ std::function m_func; - -- template -- struct strip_ref -- { -- typedef T result; -- }; -+ bool m_running; - -- DELEGATE m_func; -+#if BOOST_VERSION <= 106000 -+ ///< coroutine stack -+ void* m_stack; -+ -+ size_t m_stackSize; -+#endif - - ///< pointer to coroutine entry arguments. Stripped of references - ///< to avoid compiler errors. -- typename strip_ref::result* m_args; -+ typename std::remove_reference::type* m_args; -+ - ReturnType m_retVal; - - ///< saved caller context -- boost::context::fcontext_t* m_saved; -+ context_type* m_caller; - - ///< saved coroutine context -- boost::context::fcontext_t* m_self; -- -- ///< coroutine stack -- void* m_stack; -- -- size_t m_stackSize; -- -- bool m_running; -+ context_type* m_callee; - }; - - #endif -diff --git a/include/tool/tool_base.h b/include/tool/tool_base.h -index 584a979..3bef987 100644 ---- a/include/tool/tool_base.h -+++ b/include/tool/tool_base.h -@@ -3,6 +3,7 @@ - * - * Copyright (C) 2013 CERN - * @author Tomasz Wlostowski -+ * Copyright (C) 2016 KiCad Developers, see AUTHORS.txt for contributors. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License -@@ -31,7 +32,7 @@ - #include - #include - --#include -+#include - - class EDA_ITEM; - class TOOL_MANAGER; -@@ -53,7 +54,9 @@ enum TOOL_TYPE - - /// Unique identifier for tools - typedef int TOOL_ID; --typedef DELEGATE TOOL_STATE_FUNC; -+ -+using TOOL_STATE_FUNC = std::function; -+ - - /** - * Class TOOL_BASE -diff --git a/include/tool/tool_interactive.h b/include/tool/tool_interactive.h -index 17d2de7..240eb58 100644 ---- a/include/tool/tool_interactive.h -+++ b/include/tool/tool_interactive.h -@@ -3,6 +3,7 @@ - * - * Copyright (C) 2013 CERN - * @author Tomasz Wlostowski -+ * Copyright (C) 2016 KiCad Developers, see AUTHORS.txt for contributors. - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License -@@ -113,7 +114,7 @@ template - void TOOL_INTERACTIVE::Go( int (T::* aStateFunc)( const TOOL_EVENT& ), - const TOOL_EVENT_LIST& aConditions ) - { -- TOOL_STATE_FUNC sptr( static_cast( this ), aStateFunc ); -+ TOOL_STATE_FUNC sptr = std::bind( aStateFunc, static_cast( this ), std::placeholders::_1 ); - - goInternal( sptr, aConditions ); - } --- -2.9.3 - -From 157c499b031659b895c1a7fef056d02a94bce0b3 Mon Sep 17 00:00:00 2001 -From: decimad -Date: Tue, 5 Jul 2016 18:02:50 +0200 -Subject: [PATCH 2/3] use a guarded stack for coroutines in boost version 1.61 - -(cherry picked from commit 78bc3c65de6c03d19be9902327d08cd4d87c229c) ---- - include/tool/coroutine.h | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/include/tool/coroutine.h b/include/tool/coroutine.h -index e21e18f..8e472ca 100644 ---- a/include/tool/coroutine.h -+++ b/include/tool/coroutine.h -@@ -35,6 +35,7 @@ - #include - #else - #include -+#include - #endif - - /** -@@ -191,7 +192,7 @@ public: - m_callee = new context_type( boost::context::make_fcontext( sp, m_stackSize, callerStub ) ); - #else - m_callee = new context_type( std::allocator_arg_t(), -- boost::context::fixedsize_stack( c_defaultStackSize ), &COROUTINE::callerStub ); -+ boost::context::protected_fixedsize_stack( c_defaultStackSize ), &COROUTINE::callerStub ); - #endif - - #if BOOST_VERSION <= 106000 --- -2.9.3 - -From 418c62f03d9bd81881a17c9cca9c30f839d23e3a Mon Sep 17 00:00:00 2001 -From: decimad -Date: Tue, 2 Aug 2016 11:39:39 +0200 -Subject: [PATCH 3/3] Refactor coroutine to improve readability and removed - unnecessary heap allocations. Added documentation/links to various boost doc - revisions. - -(cherry picked from commit 18b7dbf4d166fcb7da10ced72268a77f02448188) ---- - include/tool/coroutine.h | 221 +++++++++++++++++++++++++---------------------- - include/tool/delegate.h | 100 --------------------- - 2 files changed, 120 insertions(+), 201 deletions(-) - delete mode 100644 include/tool/delegate.h - -diff --git a/include/tool/coroutine.h b/include/tool/coroutine.h -index 8e472ca..70ef6cb 100644 ---- a/include/tool/coroutine.h -+++ b/include/tool/coroutine.h -@@ -31,7 +31,7 @@ - #include - #include - --#if BOOST_VERSION <= 106000 -+#if BOOST_VERSION < 106100 - #include - #else - #include -@@ -39,6 +39,44 @@ - #endif - - /** -+ * Note: in the history of boost, two changes to the context interface happened. -+ * [1.54, 1.56) -+ * http://www.boost.org/doc/libs/1_55_0/libs/context/doc/html/context/context/boost_fcontext.html -+ * intptr_t jump_fcontext( -+ * fcontext_t* ofc, -+ * fcontext_t const* nfc, -+ * intptr_t vp, -+ * bool preserve_fpu = true -+ * ); -+ * -+ * fcontext_t* make_fcontext( -+ * void* sp, -+ * std::size_t size, -+ * void (*fn)(intptr_t) -+ * ); -+ * -+ * [1.56, 1.61) -+ * http://www.boost.org/doc/libs/1_56_0/libs/context/doc/html/context/context/boost_fcontext.html -+ * intptr_t jump_fcontext( -+ * fcontext_t* ofc, -+ * fcontext_t nfc, <----- -+ * intptr_t vp, -+ * bool preserve_fpu = true -+ * ); -+ * -+ * fcontext_t make_fcontext( <----- -+ * void* sp, -+ * std::size_t size, -+ * void(*fn)(intptr_t) -+ * ); -+ * -+ * [1.61, oo) -+ * http://www.boost.org/doc/libs/1_61_0/libs/context/doc/html/context/ecv2.html -+ * fcontext_t is hidden away behind the boost::execution_context(_v2) and the stack is created on behalf of -+ * the user. -+ */ -+ -+/** - * Class COROUNTINE. - * Implements a coroutine. Wikipedia has a good explanation: - * -@@ -73,7 +111,7 @@ public: - * Creates a coroutine from a member method of an object - */ - template -- COROUTINE( T* object, ReturnType(T::* ptr)( ArgType ) ) : -+ COROUTINE( T* object, ReturnType(T::*ptr)( ArgType ) ) : - COROUTINE( std::bind( ptr, object, std::placeholders::_1 ) ) - { - } -@@ -85,34 +123,20 @@ public: - COROUTINE( std::function aEntry ) : - m_func( std::move( aEntry ) ), - m_running( false ), --#if BOOST_VERSION <= 106000 -- m_stack( nullptr ), -- m_stackSize( c_defaultStackSize ), -+ m_args( 0 ), -+#if BOOST_VERSION < 106100 // -> m_callee = void* or void** -+ m_callee( nullptr ), - #endif -- m_caller( nullptr ), -- m_callee( nullptr ) -+ m_retVal( 0 ) - { -- // Avoid not initialized members, and make static analysers quiet -- m_args = 0; -- m_retVal = 0; - } - - ~COROUTINE() - { --#if BOOST_VERSION >= 105600 -- delete m_callee; --#endif -- --#if BOOST_VERSION <= 106000 -- delete m_caller; -- -- if( m_stack ) -- free( m_stack ); --#endif - } - - private: --#if BOOST_VERSION <= 106000 -+#if BOOST_VERSION < 106100 - using context_type = boost::context::fcontext_t; - #else - using context_type = boost::context::execution_context; -@@ -128,12 +152,7 @@ public: - */ - void Yield() - { --#if BOOST_VERSION <= 106000 -- jump( m_callee, m_caller, false ); --#else -- auto result = (*m_caller)( this ); -- *m_caller = std::move( std::get<0>( result ) ); --#endif -+ jumpOut(); - } - - /** -@@ -145,11 +164,20 @@ public: - void Yield( ReturnType& aRetVal ) - { - m_retVal = aRetVal; --#if BOOST_VERSION <= 106000 -- jump( m_callee, m_caller, false ); --#else -- m_caller( this ); --#endif -+ jumpOut(); -+ } -+ -+ /** -+ * Function Resume() -+ * -+ * Resumes execution of a previously yielded coroutine. -+ * @return true, if the coroutine has yielded again and false if it has finished its -+ * execution (returned). -+ */ -+ bool Resume() -+ { -+ jumpIn(); -+ return m_running; - } - - /** -@@ -170,62 +198,37 @@ public: - */ - bool Call( ArgType aArgs ) - { -- assert( m_callee == NULL ); -- assert( m_caller == NULL ); -+ assert( m_func ); -+ assert( !m_callee ); -+ -+ m_args = &aArgs; -+ -+#if BOOST_VERSION < 106100 -+ assert( m_stack == nullptr ); - --#if BOOST_VERSION <= 106000 - // fixme: Clean up stack stuff. Add a guard -- m_stack = malloc( c_defaultStackSize ); -+ size_t stackSize = c_defaultStackSize; -+ m_stack.reset( new char[stackSize] ); - - // align to 16 bytes -- void* sp = (void*) ( ( ( (ptrdiff_t) m_stack ) + m_stackSize - 0xf ) & ( ~0x0f ) ); -+ void* sp = (void*) ( ( ( (ptrdiff_t) m_stack.get() ) + stackSize - 0xf ) & ( ~0x0f ) ); - - // correct the stack size -- m_stackSize -= ( (size_t) m_stack + m_stackSize - (size_t) sp ); --#endif -- -- m_args = &aArgs; -+ stackSize -= size_t( ( (ptrdiff_t) m_stack.get() + stackSize) - (ptrdiff_t) sp ); - --#if BOOST_VERSION < 105600 -- m_callee = boost::context::make_fcontext( sp, m_stackSize, callerStub ); --#elif BOOST_VERSION <= 106000 -- m_callee = new context_type( boost::context::make_fcontext( sp, m_stackSize, callerStub ) ); -+ m_callee = boost::context::make_fcontext( sp, stackSize, callerStub ); - #else -- m_callee = new context_type( std::allocator_arg_t(), -- boost::context::protected_fixedsize_stack( c_defaultStackSize ), &COROUTINE::callerStub ); --#endif -- --#if BOOST_VERSION <= 106000 -- m_caller = new context_type(); -+ m_callee = context_type( -+ std::allocator_arg_t(), -+ boost::context::protected_fixedsize_stack( c_defaultStackSize ), -+ &COROUTINE::callerStub -+ ); - #endif - - m_running = true; - - // off we go! --#if BOOST_VERSION <= 106000 -- jump( m_caller, m_callee, reinterpret_cast( this ) ); --#else -- auto result = (*m_callee)( this ); -- *m_callee = std::move( std::get<0>( result ) ); --#endif -- return m_running; -- } -- -- /** -- * Function Resume() -- * -- * Resumes execution of a previously yielded coroutine. -- * @return true, if the coroutine has yielded again and false if it has finished its -- * execution (returned). -- */ -- bool Resume() -- { --#if BOOST_VERSION <= 106000 -- jump( m_caller, m_callee, false ); --#else -- auto result = (*m_callee)( this ); -- *m_callee = std::move( std::get<0>( result ) ); --#endif -+ jumpIn(); - - return m_running; - } -@@ -254,66 +257,82 @@ private: - static const int c_defaultStackSize = 2000000; // fixme: make configurable - - /* real entry point of the coroutine */ --#if BOOST_VERSION <= 106000 -+#if BOOST_VERSION < 106100 - static void callerStub( intptr_t aData ) --#else -- static context_type callerStub( context_type caller, COROUTINE* cor ) --#endif - { - // get pointer to self --#if BOOST_VERSION <= 106000 -- COROUTINE* cor = reinterpret_cast*>( aData ); -+ COROUTINE* cor = reinterpret_cast( aData ); -+ -+ // call the coroutine method -+ cor->m_retVal = cor->m_func( *(cor->m_args) ); -+ cor->m_running = false; -+ -+ // go back to wherever we came from. -+ cor->jumpOut(); -+ } - #else -- cor->m_caller = &caller; --#endif -+ /* real entry point of the coroutine */ -+ static context_type callerStub( context_type caller, COROUTINE* cor ) -+ { -+ cor->m_caller = std::move( caller ); - - // call the coroutine method -- cor->m_retVal = cor->m_func( *( cor->m_args ) ); -+ cor->m_retVal = cor->m_func( *(cor->m_args) ); - cor->m_running = false; - - // go back to wherever we came from. --#if BOOST_VERSION <= 106000 -- jump( cor->m_callee, cor->m_caller, 0 ); -+ return std::move( cor->m_caller ); -+ } -+#endif -+ -+ void jumpIn() -+ { -+#if BOOST_VERSION < 105600 -+ boost::context::jump_fcontext( &m_caller, m_callee, reinterpret_cast(this) ); -+#elif BOOST_VERSION < 106100 -+ boost::context::jump_fcontext( &m_caller, m_callee, reinterpret_cast(this) ); - #else -- return caller; -+ auto result = m_callee( this ); -+ m_callee = std::move( std::get<0>( result ) ); - #endif - } - -- ///> Wrapper for jump_fcontext to assure compatibility between different boost versions --#if BOOST_VERSION <= 106000 -- static inline intptr_t jump( context_type* aOld, context_type* aNew, -- intptr_t aP, bool aPreserveFPU = true ) -+ void jumpOut() - { - #if BOOST_VERSION < 105600 -- return boost::context::jump_fcontext( aOld, aNew, aP, aPreserveFPU ); -+ boost::context::jump_fcontext( m_callee, &m_caller, 0 ); -+#elif BOOST_VERSION < 106100 -+ boost::context::jump_fcontext( &m_callee, m_caller, 0 ); - #else -- return boost::context::jump_fcontext( aOld, *aNew, aP, aPreserveFPU ); -+ auto result = m_caller( nullptr ); -+ m_caller = std::move( std::get<0>( result ) ); - #endif - } --#endif - - std::function m_func; - - bool m_running; - --#if BOOST_VERSION <= 106000 -+#if BOOST_VERSION < 106100 - ///< coroutine stack -- void* m_stack; -- -- size_t m_stackSize; -+ std::unique_ptr m_stack; - #endif - - ///< pointer to coroutine entry arguments. Stripped of references - ///< to avoid compiler errors. - typename std::remove_reference::type* m_args; - -- ReturnType m_retVal; -- - ///< saved caller context -- context_type* m_caller; -+ context_type m_caller; - - ///< saved coroutine context -+#if BOOST_VERSION < 105600 - context_type* m_callee; -+#else -+ context_type m_callee; -+#endif -+ -+ ReturnType m_retVal; - }; - - #endif -diff --git a/include/tool/delegate.h b/include/tool/delegate.h -deleted file mode 100644 -index a350dec..0000000 ---- a/include/tool/delegate.h -+++ /dev/null -@@ -1,100 +0,0 @@ --/* -- * This program source code file is part of KiCad, a free EDA CAD application. -- * -- * Copyright (C) 2013 CERN -- * @author Tomasz Wlostowski -- * -- * This program is free software; you can redistribute it and/or -- * modify it under the terms of the GNU General Public License -- * as published by the Free Software Foundation; either version 2 -- * of the License, or (at your option) any later version. -- * -- * This program is distributed in the hope that it will be useful, -- * but WITHOUT ANY WARRANTY; without even the implied warranty of -- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -- * GNU General Public License for more details. -- * -- * You should have received a copy of the GNU General Public License -- * along with this program; if not, you may find one here: -- * http://www.gnu.org/licenses/old-licenses/gpl-2.0.html -- * or you may search the http://www.gnu.org website for the version 2 license, -- * or you may write to the Free Software Foundation, Inc., -- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA -- */ -- --#ifndef __DELEGATE_H --#define __DELEGATE_H -- -- --/** -- * class DELEGATE -- * A trivial delegate (pointer to member method of an object) pattern implementation. -- * Check delegate_example.cpp for a coding sample. -- */ -- --template --class DELEGATE --{ --public: -- typedef ReturnType (DELEGATE::* MemberPointer)( Arg ); -- typedef ReturnType _ReturnType; -- typedef Arg _ArgType; -- -- DELEGATE() -- { -- } -- -- template -- DELEGATE( T* aObject, ReturnType(T::* aPtr)( Arg ) ) -- { -- m_ptr = reinterpret_cast( aPtr ); -- m_object = reinterpret_cast( aObject ); -- }; -- -- -- ReturnType operator()( Arg aA ) const -- { -- DELEGATE* casted = reinterpret_cast*>( m_object ); -- return (casted->*m_ptr)( aA ); -- } -- --private: -- MemberPointer m_ptr; -- void* m_object; --}; -- --/** -- * Class DELEGATE0 -- * Same as DELEGATE, but with no arguments. -- */ --template --class DELEGATE0 --{ --public: -- typedef ReturnType ( DELEGATE0::* MemberPointer )(); -- typedef ReturnType _ReturnType; -- -- DELEGATE0() -- { -- } -- -- template -- DELEGATE0( T* aObject, ReturnType(T::* aPtr)() ) -- { -- m_ptr = reinterpret_cast( aPtr ); -- m_object = reinterpret_cast( aObject ); -- }; -- -- -- ReturnType operator()() const -- { -- DELEGATE0* casted = reinterpret_cast*>( m_object ); -- return ( casted->*m_ptr )(); -- } -- --private: -- MemberPointer m_ptr; -- void* m_object; --}; -- --#endif --- -2.9.3 - diff --git a/org.kicad_pcb.KiCad.json b/org.kicad_pcb.KiCad.json index a33585e..8898a06 100644 --- a/org.kicad_pcb.KiCad.json +++ b/org.kicad_pcb.KiCad.json @@ -1,8 +1,8 @@ { "app-id": "org.kicad_pcb.KiCad", - "runtime": "org.gnome.Platform", - "runtime-version": "3.26", - "sdk": "org.gnome.Sdk", + "runtime": "org.freedesktop.Platform", + "runtime-version": "18.08", + "sdk": "org.freedesktop.Sdk", "command": "kicad", "appdata-license": "GPL-3.0+ and BSD and MIT and wxWidgets", "rename-desktop-file": "kicad.desktop", @@ -25,12 +25,11 @@ { "name": "wxWidgets", "rm-configure": true, - "config-opts": [ "--disable-silent-rules" ], "sources": [ { "type": "archive", - "url": "https://github.com/wxWidgets/wxWidgets/releases/download/v3.0.3/wxWidgets-3.0.3.tar.bz2", - "sha256": "08c8033f48ec1b23520f036cde37b5ae925a6a65f137ded665633ca159b9307b" + "url": "https://github.com/wxWidgets/wxWidgets/releases/download/v3.1.2/wxWidgets-3.1.2.tar.bz2", + "sha256": "4cb8d23d70f9261debf7d6cfeca667fc0a7d2b6565adb8f1c484f9b674f1f27a" }, { "type": "script", @@ -50,7 +49,7 @@ "sha256": "c553d6a7bf52f790abc3b6bb7a1e91a65947e92a426bb1a88a11960c31f0966c" } ], - "buildsystem": "cmake", + "buildsystem": "cmake-ninja", "config-opts": [ "-DOCE_INSTALL_PREFIX=/app" ] @@ -60,11 +59,11 @@ "sources": [ { "type": "archive", - "url": "https://github.com/g-truc/glm/releases/download/0.9.9.0/glm-0.9.9.0.zip", - "sha256": "e1c707407c43589e8eeb8b69b902f1a34aaaa59bda1ca144181c2d2d6e531246" + "url": "https://github.com/g-truc/glm/releases/download/0.9.9.4/glm-0.9.9.4.zip", + "sha256": "972b8c319ff1b96eeac19c63563176f138527ebf6fa5110b8eac5fe23f5e7d9f" } ], - "buildsystem": "cmake" + "buildsystem": "cmake-ninja" }, @@ -79,8 +78,8 @@ ], "buildsystem": "simple", "build-commands": [ - "./bootstrap.sh --prefix=/app", - "./b2 install --with-context --with-date_time --with-filesystem --with-iostreams --with-locale --with-program_options --with-regex --with-system --with-thread --with-test --prefix=/app" + "./bootstrap.sh --prefix=/app --with-libraries=context,date_time,filesystem,iostreams,locale,program_options,regex,system,thread,test", + "./b2 -j $FLATPAK_BUILDER_N_JOBS install" ] }, { @@ -90,7 +89,7 @@ "sources": [ { "type": "archive", - "url": "https://downloads.sourceforge.net/project/ngspice/ng-spice-rework/28/ngspice-28.tar.gz", + "url": "https://downloads.sourceforge.net/project/ngspice/ng-spice-rework/old-releases/28/ngspice-28.tar.gz", "sha256": "94804fa78c8db2f90f088902e8c27f7b732a66767a58c70f37612bff5a16df66" }, { @@ -107,11 +106,11 @@ "sources": [ { "type": "archive", - "url": "https://launchpad.net/kicad/5.0/5.0.2/+download/kicad-5.0.2.tar.xz", - "sha256": "2f3406e72eb6757789c18bd9204d0c6ddae64b025f4c6fec28037410722ec080" + "url": "https://launchpad.net/kicad/5.0/5.1.0/+download/kicad-5.1.0.tar.xz", + "sha256": "7a9e018ee7372f144d9eb2b78bc1e7b5dfa92f6e293f4c1cff75781e8e9a0cbd" } ], - "buildsystem": "cmake", + "buildsystem": "cmake-ninja", "config-opts": [ "-DBOOST_ROOT=/app", "-DGLEW_GLEW_LIBRARY=/app/lib/libGLEW.so", @@ -130,11 +129,11 @@ "sources": [ { "type": "archive", - "url": "https://github.com/KiCad/kicad-templates/archive/5.0.2.tar.gz#/kicad-templates-5.0.2.tar.gz", - "sha256": "ca46396cfbc31cbf78f5edbcf5950caccd18fc1486ccb145884e577cac076b76" + "url": "https://github.com/KiCad/kicad-templates/archive/5.1.0.tar.gz", + "sha256": "36c4ac1ea78333cd92dc82b28f57066a9888801dc7d803d822e22b5b2a924516" } ], - "buildsystem": "cmake" + "buildsystem": "cmake-ninja" }, @@ -143,44 +142,44 @@ "sources": [ { "type": "archive", - "url": "https://github.com/KiCad/kicad-symbols/archive/5.0.2.tar.gz#/kicad-symbols-5.0.2.tar.gz", - "sha256": "eeb58a46ab9423ae2b66307f50cc0c897a1a7679d91f423402edb80f0df21cdc" + "url": "https://github.com/KiCad/kicad-symbols/archive/5.1.0.tar.gz", + "sha256": "7ca872eac9fb4117b50bcbbade59c96bd4ebad4d765baac1b95e46d13c25cb71" } ], - "buildsystem": "cmake" + "buildsystem": "cmake-ninja" }, { "name": "kicad-footprints", "sources": [ { "type": "archive", - "url": "https://github.com/KiCad/kicad-footprints/archive/5.0.2.tar.gz#/kicad-footprints-5.0.2.tar.gz", - "sha256": "430c3d58ad85aa87c2514b3243536f73d8690681693d63bc5886ce3b82e2e841" + "url": "https://github.com/KiCad/kicad-footprints/archive/5.1.0.tar.gz", + "sha256": "965cb3902df557a32ecf4101c37af3e43291f2485f42a23392797da837523e23" } ], - "buildsystem": "cmake" + "buildsystem": "cmake-ninja" }, { "name": "kicad-packages3D", "sources": [ { "type": "archive", - "url": "https://github.com/KiCad/kicad-packages3D/archive/5.0.2.tar.gz#/kicad-packages3D-5.0.2.tar.gz", - "sha256": "86e20dfb3a4720082a4dd92d66c7d3581e11f3638c8dc3a832a526ab3fc321fa" + "url": "https://github.com/KiCad/kicad-packages3D/archive/5.1.0.tar.gz", + "sha256": "5ea2a0eb8cbe73bf069c96b8c823ef2af4c430e87287c7052aa32f24a9d2c7e6" } ], - "buildsystem": "cmake" + "buildsystem": "cmake-ninja" }, { "name": "kicad-i18n", "sources": [ { "type": "archive", - "url": "https://github.com/KiCad/kicad-i18n/archive/5.0.2.tar.gz#/kicad-i18n-5.0.2.tar.gz", - "sha256": "cde8939ad031519847f90daa1ad6d87516ab224949e028a5f89a895c7595870a" + "url": "https://github.com/KiCad/kicad-i18n/archive/5.1.0.tar.gz", + "sha256": "bb022b905c52e9be87e5ef52020194001ddf7a89d773b202f2b940a6e86392d7" } ], - "buildsystem": "cmake", + "buildsystem": "cmake-ninja", "builddir": true, "config-opts": [ "-DKICAD_I18N_UNIX_STRICT_PATH=ON" From 90626c6fa73b01e3d9b14fc82f936ef9599f19f8 Mon Sep 17 00:00:00 2001 From: eszlari Date: Fri, 16 Aug 2019 20:43:49 +0200 Subject: [PATCH 2/8] kicad 5.1.4 --- org.kicad_pcb.KiCad.json | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/org.kicad_pcb.KiCad.json b/org.kicad_pcb.KiCad.json index 8898a06..6f6316d 100644 --- a/org.kicad_pcb.KiCad.json +++ b/org.kicad_pcb.KiCad.json @@ -106,8 +106,8 @@ "sources": [ { "type": "archive", - "url": "https://launchpad.net/kicad/5.0/5.1.0/+download/kicad-5.1.0.tar.xz", - "sha256": "7a9e018ee7372f144d9eb2b78bc1e7b5dfa92f6e293f4c1cff75781e8e9a0cbd" + "url": "https://launchpad.net/kicad/5.0/5.1.4/+download/kicad-5.1.4.tar.xz", + "sha256": "52cca2672e33197ae9ca4c36d73c9a8c580bfeecfe56cd03be8b2a65e06bc0e4" } ], "buildsystem": "cmake-ninja", @@ -129,8 +129,8 @@ "sources": [ { "type": "archive", - "url": "https://github.com/KiCad/kicad-templates/archive/5.1.0.tar.gz", - "sha256": "36c4ac1ea78333cd92dc82b28f57066a9888801dc7d803d822e22b5b2a924516" + "url": "https://github.com/KiCad/kicad-templates/archive/5.1.4.tar.gz", + "sha256": "be2fc20ccf646843af4871ad2d4cd79418e895bc70442569f0b1f423c615bdbb" } ], "buildsystem": "cmake-ninja" @@ -142,8 +142,8 @@ "sources": [ { "type": "archive", - "url": "https://github.com/KiCad/kicad-symbols/archive/5.1.0.tar.gz", - "sha256": "7ca872eac9fb4117b50bcbbade59c96bd4ebad4d765baac1b95e46d13c25cb71" + "url": "https://github.com/KiCad/kicad-symbols/archive/5.1.4.tar.gz", + "sha256": "afa91c22cb2c01a52dfaffc9256085a52a9ee7811f7eef2e9154049de9ed5707" } ], "buildsystem": "cmake-ninja" @@ -153,8 +153,8 @@ "sources": [ { "type": "archive", - "url": "https://github.com/KiCad/kicad-footprints/archive/5.1.0.tar.gz", - "sha256": "965cb3902df557a32ecf4101c37af3e43291f2485f42a23392797da837523e23" + "url": "https://github.com/KiCad/kicad-footprints/archive/5.1.4.tar.gz", + "sha256": "79cb7f15fdfc6510a5260f03c53be341b0ccf152cc3008d3c7a576e926036e37" } ], "buildsystem": "cmake-ninja" @@ -164,8 +164,8 @@ "sources": [ { "type": "archive", - "url": "https://github.com/KiCad/kicad-packages3D/archive/5.1.0.tar.gz", - "sha256": "5ea2a0eb8cbe73bf069c96b8c823ef2af4c430e87287c7052aa32f24a9d2c7e6" + "url": "https://github.com/KiCad/kicad-packages3D/archive/5.1.4.tar.gz", + "sha256": "80cc03bca0f78948ed32ed5c5636c692725b85fde859863c02fd5df81f5f4a02" } ], "buildsystem": "cmake-ninja" @@ -175,8 +175,8 @@ "sources": [ { "type": "archive", - "url": "https://github.com/KiCad/kicad-i18n/archive/5.1.0.tar.gz", - "sha256": "bb022b905c52e9be87e5ef52020194001ddf7a89d773b202f2b940a6e86392d7" + "url": "https://github.com/KiCad/kicad-i18n/archive/5.1.4.tar.gz", + "sha256": "e8f47497dcd7e9448be25e126fc195dc223e1c5b28554ed49e83741f910a1c35" } ], "buildsystem": "cmake-ninja", From f129c5d6c48ce5d8fd2869ac3cb071239cfc8e5c Mon Sep 17 00:00:00 2001 From: eszlari Date: Sat, 17 Aug 2019 07:25:48 +0200 Subject: [PATCH 3/8] fix appdata --- org.kicad_pcb.KiCad.json | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/org.kicad_pcb.KiCad.json b/org.kicad_pcb.KiCad.json index 6f6316d..0b7f946 100644 --- a/org.kicad_pcb.KiCad.json +++ b/org.kicad_pcb.KiCad.json @@ -4,7 +4,6 @@ "runtime-version": "18.08", "sdk": "org.freedesktop.Sdk", "command": "kicad", - "appdata-license": "GPL-3.0+ and BSD and MIT and wxWidgets", "rename-desktop-file": "kicad.desktop", "rename-icon": "kicad", "rename-appdata-file": "kicad.appdata.xml", @@ -108,6 +107,12 @@ "type": "archive", "url": "https://launchpad.net/kicad/5.0/5.1.4/+download/kicad-5.1.4.tar.xz", "sha256": "52cca2672e33197ae9ca4c36d73c9a8c580bfeecfe56cd03be8b2a65e06bc0e4" + }, + { + "type": "shell", + "commands": [ + "sed -i '5i ' resources/linux/appdata/kicad.appdata.xml" + ] } ], "buildsystem": "cmake-ninja", From 956e1479bcfa23574372ef935de79df5aef2eef8 Mon Sep 17 00:00:00 2001 From: eszlari Date: Fri, 30 Aug 2019 14:27:42 +0200 Subject: [PATCH 4/8] only build x86_64, i386 --- flathub.json | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 flathub.json diff --git a/flathub.json b/flathub.json new file mode 100644 index 0000000..9f8cb08 --- /dev/null +++ b/flathub.json @@ -0,0 +1,3 @@ +{ + "only-arches": ["x86_64", "i386"] +} From c92d30f4ea1e2d12425eebdbe1114eb01fd25881 Mon Sep 17 00:00:00 2001 From: eszlari Date: Sat, 21 Sep 2019 16:47:49 +0200 Subject: [PATCH 5/8] runtime 19.08 --- org.kicad_pcb.KiCad.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.kicad_pcb.KiCad.json b/org.kicad_pcb.KiCad.json index 0b7f946..19ea2ab 100644 --- a/org.kicad_pcb.KiCad.json +++ b/org.kicad_pcb.KiCad.json @@ -1,7 +1,7 @@ { "app-id": "org.kicad_pcb.KiCad", "runtime": "org.freedesktop.Platform", - "runtime-version": "18.08", + "runtime-version": "19.08", "sdk": "org.freedesktop.Sdk", "command": "kicad", "rename-desktop-file": "kicad.desktop", From 6a9ca1a6a8101b0d07bed3c2e952ea775ccf6c5e Mon Sep 17 00:00:00 2001 From: eszlari Date: Mon, 23 Sep 2019 16:06:06 +0200 Subject: [PATCH 6/8] glm 0.9.9.6 --- org.kicad_pcb.KiCad.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/org.kicad_pcb.KiCad.json b/org.kicad_pcb.KiCad.json index 19ea2ab..f82b25e 100644 --- a/org.kicad_pcb.KiCad.json +++ b/org.kicad_pcb.KiCad.json @@ -58,8 +58,8 @@ "sources": [ { "type": "archive", - "url": "https://github.com/g-truc/glm/releases/download/0.9.9.4/glm-0.9.9.4.zip", - "sha256": "972b8c319ff1b96eeac19c63563176f138527ebf6fa5110b8eac5fe23f5e7d9f" + "url": "https://github.com/g-truc/glm/releases/download/0.9.9.6/glm-0.9.9.6.zip", + "sha256": "9db7339c3b8766184419cfe7942d668fecabe9013ccfec8136b39e11718817d0" } ], "buildsystem": "cmake-ninja" From 1f932485e2c62dd6292fde3d330059a19c5f5f6a Mon Sep 17 00:00:00 2001 From: eszlari Date: Mon, 23 Sep 2019 21:00:56 +0200 Subject: [PATCH 7/8] GLM_TEST_ENABLE=OFF --- org.kicad_pcb.KiCad.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/org.kicad_pcb.KiCad.json b/org.kicad_pcb.KiCad.json index f82b25e..3374106 100644 --- a/org.kicad_pcb.KiCad.json +++ b/org.kicad_pcb.KiCad.json @@ -62,7 +62,10 @@ "sha256": "9db7339c3b8766184419cfe7942d668fecabe9013ccfec8136b39e11718817d0" } ], - "buildsystem": "cmake-ninja" + "buildsystem": "cmake-ninja", + "config-opts": [ + "-DGLM_TEST_ENABLE=OFF" + ] }, From 53df6ea6599144209c1b7400469b17c292d7fa26 Mon Sep 17 00:00:00 2001 From: eszlari Date: Thu, 26 Sep 2019 21:16:38 +0200 Subject: [PATCH 8/8] glm: revert to 0.9.9.5 see https://github.com/g-truc/glm/issues/947 --- org.kicad_pcb.KiCad.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/org.kicad_pcb.KiCad.json b/org.kicad_pcb.KiCad.json index 3374106..6739764 100644 --- a/org.kicad_pcb.KiCad.json +++ b/org.kicad_pcb.KiCad.json @@ -58,8 +58,8 @@ "sources": [ { "type": "archive", - "url": "https://github.com/g-truc/glm/releases/download/0.9.9.6/glm-0.9.9.6.zip", - "sha256": "9db7339c3b8766184419cfe7942d668fecabe9013ccfec8136b39e11718817d0" + "url": "https://github.com/g-truc/glm/releases/download/0.9.9.5/glm-0.9.9.5.zip", + "sha256": "4fe34860ce69156f63eea6c3d84c91cadfc330353cf275ff394aef4e163cafee" } ], "buildsystem": "cmake-ninja",