diff --git a/mingw-w64-kicad/01-swig4.patch b/mingw-w64-kicad/01-swig4.patch new file mode 100644 index 0000000000..52448fab12 --- /dev/null +++ b/mingw-w64-kicad/01-swig4.patch @@ -0,0 +1,23 @@ +From 5685174808f5ca973e916a10f9f93660ee4dc4f2 Mon Sep 17 00:00:00 2001 +From: Mark +Date: Thu, 9 May 2019 09:53:46 +0200 +Subject: [PATCH] Fix for SWIG 4.0.0 + +--- + scripting/build_tools/fix_swig_imports.py | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/scripting/build_tools/fix_swig_imports.py b/scripting/build_tools/fix_swig_imports.py +index 160d7e2d90..4f97df079f 100644 +--- a/scripting/build_tools/fix_swig_imports.py ++++ b/scripting/build_tools/fix_swig_imports.py +@@ -40,6 +40,9 @@ + txt = b"" + + for l in lines: ++ if l.startswith(b"if _swig_python_version_info < (2, 7, 0):"): # ok with swig version >= 4.0.0 ++ l = l.replace(b"_swig_python_version_info < (2, 7, 0)", b"False") ++ doneOk = True + if l.startswith(b"if _swig_python_version_info >= (2, 7, 0):"): # ok with swig version >= 3.0.10 + l = l.replace(b"_swig_python_version_info >= (2, 7, 0)", b"False") + doneOk = True diff --git a/mingw-w64-kicad/PKGBUILD b/mingw-w64-kicad/PKGBUILD index 2fe6af378f..48afab1034 100644 --- a/mingw-w64-kicad/PKGBUILD +++ b/mingw-w64-kicad/PKGBUILD @@ -2,65 +2,64 @@ _realname=kicad pkgbase=mingw-w64-${_realname} -_sub=("footprints" "symbols" "templates" "packages3D") pkgname=("${MINGW_PACKAGE_PREFIX}-${_realname}" - "${MINGW_PACKAGE_PREFIX}-${_realname}-meta" - "${MINGW_PACKAGE_PREFIX}-${_realname}-footprints" - "${MINGW_PACKAGE_PREFIX}-${_realname}-symbols" - "${MINGW_PACKAGE_PREFIX}-${_realname}-templates" - "${MINGW_PACKAGE_PREFIX}-${_realname}-packages3D") -pkgver=5.1.0 -pkgrel=2 + "${MINGW_PACKAGE_PREFIX}-${_realname}-meta" + "${MINGW_PACKAGE_PREFIX}-${_realname}-footprints" + "${MINGW_PACKAGE_PREFIX}-${_realname}-symbols" + "${MINGW_PACKAGE_PREFIX}-${_realname}-templates" + "${MINGW_PACKAGE_PREFIX}-${_realname}-packages3D") +pkgver=5.1.2 +pkgrel=1 pkgdesc="Software for the creation of electronic schematic diagrams and printed circuit board artwork (mingw-w64)" arch=("any") url="http://www.kicad-pcb.org" license=("GPLv3+") depends=("${MINGW_PACKAGE_PREFIX}-boost" - "${MINGW_PACKAGE_PREFIX}-curl" - "${MINGW_PACKAGE_PREFIX}-glew" - "${MINGW_PACKAGE_PREFIX}-glm" - "${MINGW_PACKAGE_PREFIX}-ngspice" - "${MINGW_PACKAGE_PREFIX}-python2" - "${MINGW_PACKAGE_PREFIX}-wxPython" - "${MINGW_PACKAGE_PREFIX}-wxWidgets" - "${MINGW_PACKAGE_PREFIX}-openssl" - "${MINGW_PACKAGE_PREFIX}-freeglut" - "${MINGW_PACKAGE_PREFIX}-zlib") - + "${MINGW_PACKAGE_PREFIX}-curl" + "${MINGW_PACKAGE_PREFIX}-glew" + "${MINGW_PACKAGE_PREFIX}-glm" + "${MINGW_PACKAGE_PREFIX}-ngspice" + "${MINGW_PACKAGE_PREFIX}-python2" + "${MINGW_PACKAGE_PREFIX}-wxPython" + "${MINGW_PACKAGE_PREFIX}-wxWidgets" + "${MINGW_PACKAGE_PREFIX}-openssl" + "${MINGW_PACKAGE_PREFIX}-freeglut" + "${MINGW_PACKAGE_PREFIX}-zlib") makedepends=("git" - "${MINGW_PACKAGE_PREFIX}-cmake" - "${MINGW_PACKAGE_PREFIX}-gcc" - "${MINGW_PACKAGE_PREFIX}-doxygen" - "${MINGW_PACKAGE_PREFIX}-pkg-config" - "${MINGW_PACKAGE_PREFIX}-swig" - "${MINGW_PACKAGE_PREFIX}-cairo" - "${MINGW_PACKAGE_PREFIX}-oce") + "${MINGW_PACKAGE_PREFIX}-cmake" + "${MINGW_PACKAGE_PREFIX}-gcc" + "${MINGW_PACKAGE_PREFIX}-doxygen" + "${MINGW_PACKAGE_PREFIX}-pkg-config" + "${MINGW_PACKAGE_PREFIX}-swig" + "${MINGW_PACKAGE_PREFIX}-cairo" + "${MINGW_PACKAGE_PREFIX}-oce") source=("${_realname}-${pkgver}.tar.gz"::"https://github.com/KiCad/kicad-source-mirror/archive/${pkgver}.tar.gz" - "${_realname}-i18n-${pkgver}.tar.gz"::"https://github.com/KiCad/kicad-i18n/archive/${pkgver}.tar.gz" - "${_realname}-footprints-${pkgver}.tar.gz"::"https://github.com/KiCad/kicad-footprints/archive/${pkgver}.tar.gz" - "${_realname}-symbols-${pkgver}.tar.gz"::"https://github.com/KiCad/kicad-symbols/archive/${pkgver}.tar.gz" - "${_realname}-templates-${pkgver}.tar.gz"::"https://github.com/KiCad/kicad-templates/archive/${pkgver}.tar.gz" - "${_realname}-packages3D-${pkgver}.tar.gz"::"https://github.com/KiCad/kicad-packages3D/archive/${pkgver}.tar.gz") -sha256sums=('64b28735a666f060da5d49ac73bd653d3db5a54dd40e3c13d8fa34ffa6c1e682' - 'bb022b905c52e9be87e5ef52020194001ddf7a89d773b202f2b940a6e86392d7' - '965cb3902df557a32ecf4101c37af3e43291f2485f42a23392797da837523e23' - '7ca872eac9fb4117b50bcbbade59c96bd4ebad4d765baac1b95e46d13c25cb71' - '36c4ac1ea78333cd92dc82b28f57066a9888801dc7d803d822e22b5b2a924516' - '5ea2a0eb8cbe73bf069c96b8c823ef2af4c430e87287c7052aa32f24a9d2c7e6') + "${_realname}-i18n-${pkgver}.tar.gz"::"https://github.com/KiCad/kicad-i18n/archive/${pkgver}.tar.gz" + "${_realname}-footprints-${pkgver}.tar.gz"::"https://github.com/KiCad/kicad-footprints/archive/${pkgver}.tar.gz" + "${_realname}-symbols-${pkgver}.tar.gz"::"https://github.com/KiCad/kicad-symbols/archive/${pkgver}.tar.gz" + "${_realname}-templates-${pkgver}.tar.gz"::"https://github.com/KiCad/kicad-templates/archive/${pkgver}.tar.gz" + "${_realname}-packages3D-${pkgver}.tar.gz"::"https://github.com/KiCad/kicad-packages3D/archive/${pkgver}.tar.gz" + 01-swig4.patch) +sha256sums=('b181e81fe25929dd86900790e07067e28c62eaaf954d3a4a7ac4f18ed4745e42' + 'a07ffc5c5cb61b2a81ff7716fbfd8f0d7a470961e7660d5d8e424a91bcf7d6e7' + 'fb0f983393c78dc9bb0b060827a98e57d96abe9881f9fb356c2afdecc0fdbfd1' + 'e89fc4d2ad27a287a9d8924e6c6c4837d39f2a7192797b8c31535ffb18f2dc8c' + 'fd14978af2d5b64d41561c8cd954f386a10e1548d6db2d4998281deffddeffbb' + '5c3dfc3cc7f11ce5a19853b86a79dbeef7383ccbf7ecaf9c83728bcc28edef09' + '01460672c077d11597df5d10bd351a62b3e352a1ccb061c430c69268ca66955e') + +_doc=("ca" "de" "en" "es" "fr" "id" "it" "ja" "nl" "pl" "ru" "zh") + _sub=("footprints" "symbols" "templates" "packages3D") prepare() { - cd "${srcdir}" - - [[ -d build-${MINGW_CHOST} ]] && rm -r build-${MINGW_CHOST} - [[ -d build-i18n ]] && rm -r build-i18n - for _i in ${_sub[@]}; do - [[ -d build-${_i} ]] && rm -r build-${_i} - done + cd ${_realname}-source-mirror-${pkgver} + patch -p1 -i ${srcdir}/01-swig4.patch } -build_kicad() { +build() { cd "${srcdir}" - # Configure and build KiCad. + msg2 "Build kicad" + [[ -d build-${MINGW_CHOST} ]] && rm -rf build-${MINGW_CHOST} mkdir -p build-${MINGW_CHOST} && cd build-${MINGW_CHOST} MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=;DCMAKE_PREFIX_PATH=;DEFAULT_INSTALL_PATH=" \ @@ -80,58 +79,59 @@ build_kicad() { make cd "${srcdir}" - # Configure the translationn installation build. + msg2 "Build translations" + [[ -d build-i18n ]] && rm -rf build-i18n mkdir -p build-i18n && cd build-i18n - + MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \ ${MINGW_PREFIX}/bin/cmake.exe \ -G "MSYS Makefiles" \ -DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \ ../${_realname}-i18n-${pkgver} -} -build_sub() { - cd "${srcdir}" - mkdir -p build-${1} && cd build-${1} + for _s in ${_sub[@]}; do + cd ${srcdir} + msg2 "Build ${_s}" + [[ -d build-${_s} ]] && rm -rf build-${_s} + mkdir -p build-${_s} && cd build-${_s} - MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \ - ${MINGW_PREFIX}/bin/cmake.exe \ - -G "MSYS Makefiles" \ - -DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \ - ../${_realname}-${1}-${pkgver} + MSYS2_ARG_CONV_EXCL="-DCMAKE_INSTALL_PREFIX=" \ + ${MINGW_PREFIX}/bin/cmake.exe \ + -G "MSYS Makefiles" \ + -DCMAKE_INSTALL_PREFIX=${MINGW_PREFIX} \ + ../${_realname}-${_s}-${pkgver} + done } -_doc=("ca" "de" "en" "es" "fr" "id" "it" "ja" "nl" "pl" "ru" "zh") -for _d in ${_doc[@]}; do _doc_pkg+=("\"${MINGW_PACKAGE_PREFIX}-${_realname}-doc-${_d}: Documentation for KiCad (mingw-w64)\""); done -for _s in ${_sub[@]}; do _sub_pkg+=("${MINGW_PACKAGE_PREFIX}-${_realname}-${_s}"); done +for _doclang in ${_doc[@]}; do _doc_pkg+=("\"${MINGW_PACKAGE_PREFIX}-${_realname}-doc-${_doclang}: Documentation for KiCad (mingw-w64)\""); done +for _feature in ${_sub[@]}; do _sub_pkg+=("\"${MINGW_PACKAGE_PREFIX}-${_realname}-${_feature}\""); done eval "package_${MINGW_PACKAGE_PREFIX}-${_realname}() { - optdepends+=("${_doc_pkg[@]}" "\${_sub_pkg[@]}") - conflicts=("${MINGW_PACKAGE_PREFIX}-${_realname}-git") - replaces=("${MINGW_PACKAGE_PREFIX}-${_realname}-git") + msg2 \"Package kicad\" + optdepends+=(${_doc_pkg[@]} ${_sub_pkg[@]}) + conflicts=(${MINGW_PACKAGE_PREFIX}-${_realname}-git) + replaces=(${MINGW_PACKAGE_PREFIX}-${_realname}-git) - build_kicad - - cd "\"\${srcdir}\"/build-${MINGW_CHOST}" - make DESTDIR="\"\${pkgdir}\"" install + cd \${srcdir}/build-${MINGW_CHOST} + make DESTDIR=\${pkgdir} install - cd "\"\${srcdir}\"/build-i18n" - make DESTDIR="\"\${pkgdir}\"" install + cd \${srcdir}/build-i18n + make DESTDIR=\${pkgdir} install }" eval "package_${MINGW_PACKAGE_PREFIX}-${_realname}-meta() { - depends=("${MINGW_PACKAGE_PREFIX}-${_realname}" - "${_sub_pkg[@]}") + depends=(${MINGW_PACKAGE_PREFIX}-${_realname} + ${_sub_pkg[@]}) }" -for _s in ${_sub[@]}; do - eval "package_${MINGW_PACKAGE_PREFIX}-${_realname}-${_s}() { +for _part in ${_sub[@]}; do + eval "package_${MINGW_PACKAGE_PREFIX}-${_realname}-${_part}() { options=('!strip') - conflicts=("${MINGW_PACKAGE_PREFIX}-${_realname}-${_s}-git") - replaces=("${MINGW_PACKAGE_PREFIX}-${_realname}-${_s}-git") - build_sub ${_s} - cd "\"\${srcdir}\"/build-${_s}" - make DESTDIR="\"\${pkgdir}\"" install + conflicts=(${MINGW_PACKAGE_PREFIX}-${_realname}-${_part}-git) + replaces=(${MINGW_PACKAGE_PREFIX}-${_realname}-${_part}-git) + msg2 \"Package ${_part}\" + cd \${srcdir}/build-${_part} + make DESTDIR=\${pkgdir} install }" done