Compare commits

..

1 Commits

Author SHA1 Message Date
Danilo Spinella
640ead2960
gitui: Bump to 0.10.1 2020-12-05 17:19:21 +01:00
47 changed files with 1255 additions and 446 deletions

View File

@ -3,6 +3,7 @@
dev-lang/fsharp[~scm]
dev-lang/fstar[~scm]
dev-python/pytype[~scm]
dev-util/universal-ctags[~scm]
games-emulation/gambatte[~scm]
games-engines/OpenJK[~scm]
games-engines/flare[~scm]

View File

@ -0,0 +1,34 @@
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require cmake [ api=2 ]
SUMMARY="A system information and benchmark tool for Linux systems"
HOMEPAGE="http://hardinfo.org/"
DOWNLOADS="https://dev.gentoo.org/~hasufell/distfiles/${PNV}.tar.xz"
LICENCES="GPL-2"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS=""
DEPENDENCIES="
build:
virtual/pkg-config
build+run:
dev-libs/glib:2
gnome-desktop/libsoup
x11-libs/gdk-pixbuf
x11-libs/gtk+:2
x11-libs/pango
"
REMOTE_IDS="github:lpereira/${PN}"
src_prepare() {
edo sed -i \
-e '/PREFIX/s:@CMAKE_INSTALL_PREFIX@/share:@CMAKE_INSTALL_DATAROOTDIR@:' \
"${CMAKE_SOURCE}"/config.h.cmake
cmake_src_prepare
}

View File

@ -1,41 +0,0 @@
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
# Snapshot until release work in progress: https://github.com/lpereira/hardinfo/issues/530
GITHUB_REVISION=f6a4f52868c2404f3ad58ef04e513ffe5fa090c7
require github [ user=lpereira ]
require cmake
require gtk-icon-cache
SUMMARY="A system information and benchmark tool for Linux systems"
HOMEPAGE="http://hardinfo.org/"
LICENCES="GPL-2"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS=""
DEPENDENCIES="
build:
sys-devel/gettext
virtual/pkg-config
build+run:
core/json-glib
dev-libs/glib:2
gnome-desktop/libsoup
x11-libs/cairo
x11-libs/gdk-pixbuf
x11-libs/gtk+:3
x11-libs/libX11
x11-libs/pango
suggestion:
app-benchmarks/sysbench [[ description = [ additional cpu/memory benchmarks ] ]]
sys-apps/fwupd [[ description = [ read firmware details ] ]]
sys-apps/udisks [[ description = [ read nvme storage information ] ]]
x11-dri/mesa-demos [[ description = [ show GLX info ] ]]
"
CMAKE_SRC_CONFIGURE_PARAMS=(
-DHARDINFO_GTK3:BOOL=TRUE
)

View File

@ -14,6 +14,8 @@ PLATFORMS="~amd64 ~x86"
MYOPTIONS=""
DEPENDENCIES="
run:
dev-python/meld3[python_abis:*(-)?]
test:
dev-python/pexpect[python_abis:*(-)?]
python_abis:2.7? ( dev-python/mock[python_abis:2.7] )

View File

@ -1,50 +0,0 @@
Upstream: yes
Reason: https://github.com/daa84/neovim-gtk/issues/208
From c1dbe9b9549383b22807a2de9c76094ca9204f51 Mon Sep 17 00:00:00 2001
From: daa <daa@localhost.localdomain>
Date: Tue, 26 Nov 2019 19:25:42 +0300
Subject: [PATCH] Try to fix render issues due to changes in pango_1.44 (#208)
---
src/render/context.rs | 20 +++++++++-----------
1 file changed, 9 insertions(+), 11 deletions(-)
diff --git a/src/render/context.rs b/src/render/context.rs
index 8168296..0c19437 100644
--- a/src/render/context.rs
+++ b/src/render/context.rs
@@ -111,21 +111,19 @@ pub struct CellMetrics {
impl CellMetrics {
fn new(font_metrics: &pango::FontMetrics, line_space: i32) -> Self {
+ let ascent = (f64::from(font_metrics.get_ascent()) / f64::from(pango::SCALE)).ceil();
+ let descent = (f64::from(font_metrics.get_descent()) / f64::from(pango::SCALE)).ceil();
+ let underline_position = (f64::from(font_metrics.get_underline_position()) / f64::from(pango::SCALE)).ceil();
CellMetrics {
pango_ascent: font_metrics.get_ascent(),
pango_descent: font_metrics.get_descent(),
pango_char_width: font_metrics.get_approximate_digit_width(),
- ascent: f64::from(font_metrics.get_ascent()) / f64::from(pango::SCALE),
- line_height: f64::from(font_metrics.get_ascent() + font_metrics.get_descent())
- / f64::from(pango::SCALE)
- + f64::from(line_space),
- char_width: f64::from(font_metrics.get_approximate_digit_width())
- / f64::from(pango::SCALE),
- underline_position: f64::from(
- font_metrics.get_ascent() - font_metrics.get_underline_position(),
- ) / f64::from(pango::SCALE),
- underline_thickness: f64::from(font_metrics.get_underline_thickness())
- / f64::from(pango::SCALE),
+ ascent,
+ line_height: ascent + descent + f64::from(line_space),
+ char_width: (f64::from(font_metrics.get_approximate_digit_width())
+ / f64::from(pango::SCALE)).ceil(),
+ underline_position: ascent - underline_position,
+ underline_thickness: f64::from(font_metrics.get_underline_thickness()) / f64::from(pango::SCALE),
}
}
--
2.30.0

View File

@ -11,13 +11,16 @@ DEPENDENCIES="
app-editors/neovim
dev-libs/glib:2
x11-libs/cairo
x11-libs/gtk+:3[>=3.22.0]
x11-libs/gtk+:3[>=3.10.0]
x11-libs/pango
run:
gnome-desktop/gsettings-desktop-schemas
"
DEFAULT_SRC_PREPARE_PATCHES=(
"${FILES}"/Try-to-fix-render-issues-due-to-changes-in-pango_1.4.patch
)
src_install() {
ecargo_install
insinto /usr/share/applications
doins desktop/*.desktop
insinto /usr/share/icons/hicolor/128x128/apps
doins desktop/nvim-gtk.png
}

View File

@ -1,7 +1,7 @@
# Copyright 2018 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require neovim-gtk
require neovim-gtk gtk-icon-cache
DOWNLOADS=""
@ -15,11 +15,27 @@ DEPENDENCIES="
x11-libs/cairo
x11-libs/gtk+:3[>=3.22.0]
x11-libs/pango[>=1.38]
run:
gnome-desktop/gsettings-desktop-schemas
"
src_unpack() {
cargo_src_unpack
}
src_install() {
ecargo_install
insinto /usr/share/nvim-gtk
doins -r runtime
insinto /usr/share/applications
doins desktop/*.desktop
insinto /usr/share/icons/hicolor/128x128/apps
newins desktop/org.daa.NeovimGtk_128.png org.daa.NeovimGtk.png
insinto /usr/share/icons/hicolor/48x48/apps
newins desktop/org.daa.NeovimGtk_48.png org.daa.NeovimGtk.png
insinto /usr/share/icons/hicolor/scalable/apps
newins desktop/org.daa.NeovimGtk.svg org.daa.NeovimGtk.png
insinto /usr/share/icons/hicolor/symbolic/apps
newins desktop/org.daa.NeovimGtk-symbolic.svg org.daa.NeovimGtk.png
}

View File

@ -11,26 +11,11 @@ HOMEPAGE="https://github.com/daa84/neovim-gtk ${HOMEPAGE}"
LICENCES="GPL-3.0"
MYOPTIONS=""
src_install() {
ecargo_install
BUGS_TO="hasufell@posteo.de"
insinto /usr/share/nvim-gtk
doins -r runtime
insinto /usr/share/applications
doins desktop/*.desktop
local s
for s in 48 128; do
insinto /usr/share/icons/hicolor/${s}x${s}/apps
newins desktop/org.daa.NeovimGtk_${s}.png org.daa.NeovimGtk.png
done
insinto /usr/share/icons/hicolor/scalable/apps
newins desktop/org.daa.NeovimGtk.svg org.daa.NeovimGtk.png
insinto /usr/share/icons/hicolor/symbolic/apps
newins desktop/org.daa.NeovimGtk-symbolic.svg org.daa.NeovimGtk.png
src_prepare() {
default
export PREFIX=/usr
}
pkg_postinst() {

View File

@ -0,0 +1,36 @@
# Copyright 2019 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require github [ user="jarun" tag="v${PV}" ]
require bash-completion zsh-completion
SUMMARY="Lean, fast, zero-config, full-featured file manager with batteries "
LICENCES="BSD-2"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS=""
DEPENDENCIES="
build:
virtual/pkg-config
build+run:
sys-libs/ncurses:=
sys-libs/readline:=
suggestion:
app-arch/libarchive [[ description = [ create, list and extract archives ] ]]
media/mediainfo [[ description = [ multimedia file details ] ]]
sys-auth/vlock [[ description = [ terminal locker ] ]]
sys-fs/sshfs-fuse [[ description = [ mount, unmount over SSHFS ] ]]
x11-apps/xdg-utils [[ description = [ desktop opener ] ]]
"
BUGS_TO="hasufell@posteo.de"
src_install() {
emake PREFIX="/usr/$(exhost --target)" MANPREFIX="/usr/share/man" DESTDIR="${IMAGE}" install
emagicdocs
dobashcompletion scripts/auto-completion/bash/*
dozshcompletion scripts/auto-completion/zsh/*
}

View File

@ -1,7 +1,7 @@
# Copyright 2017 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require autotools [ supported_autoconf=[ 2.7 ] supported_automake=[ 1.16 ] ]
require autotools [ supported_autoconf=[ 2.5 ] supported_automake=[ 1.15 ] ]
require github [ user="olafvdspek" tag="${PNV}" ]
SUMMARY="A simple but powerful template language for C++"

View File

@ -0,0 +1,78 @@
# Copyright 2013-2014 Thomas Witt
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
MY_PN="OpenSceneGraph"
MY_PNV=${MY_PN}-${PV}
require github [ user=openscenegraph project=${MY_PN} tag=${MY_PNV} ]
require cmake [ api=2 ]
SUMMARY="High performance 3D graphics toolkit"
DESCRIPTION="
The OpenSceneGraph is an open source high performance 3D graphics toolkit, used by application
developers in fields such as visual simulation, games, virtual reality, scientific visualization
and modelling. Written entirely in Standard C++ and OpenGL it runs on all Windows platforms, OSX,
GNU/Linux, IRIX, Solaris, HP-Ux, AIX and FreeBSD operating systems. The OpenSceneGraph is now well
established as the world leading scene graph technology, used widely in the vis-sim, space,
scientific, oil-gas, games and virtual reality industries.
"
HOMEPAGE+=" http://${PN}.org"
LICENCES="wxWinLL-3 LGPL-2.1"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS="
( providers: ijg-jpeg jpeg-turbo ) [[ number-selected = exactly-one ]]
"
DEPENDENCIES="
build:
virtual/unzip
build+run:
app-text/poppler[cairo]
dev-libs/glib:2
media/ffmpeg
media-libs/freetype:2
media-libs/giflib:=
media-libs/gstreamer:1.0
media-libs/ilmbase
media-libs/jasper
media-libs/libpng:=
media-libs/openexr
media-libs/SDL:0
media-libs/tiff
media-plugins/gst-plugins-base:1.0
net-misc/curl
sys-libs/zlib
x11-dri/mesa
x11-libs/cairo
x11-libs/libX11
x11-libs/libXrandr
providers:ijg-jpeg? ( media-libs/jpeg:= )
providers:jpeg-turbo? ( media-libs/libjpeg-turbo )
"
CMAKE_SRC_CONFIGURE_PARAMS=(
-DCMAKE_DISABLE_FIND_PACKAGE_Asio=1
-DCMAKE_DISABLE_FIND_PACKAGE_Inventor=1
-DCMAKE_DISABLE_FIND_PACKAGE_COLLADA=1
-DCMAKE_DISABLE_FIND_PACKAGE_FBX=
-DCMAKE_DISABLE_FIND_PACKAGE_Xine=1
-DCMAKE_DISABLE_FIND_PACKAGE_OpenVRML=1
-DCMAKE_DISABLE_FIND_PACKAGE_Performer=1
-DCMAKE_DISABLE_FIND_PACKAGE_GDAL=1
-DCMAKE_DISABLE_FIND_PACKAGE_LibVNCServer=1
-DCMAKE_DISABLE_FIND_PACKAGE_OurDCMTK=1
-DCMAKE_DISABLE_FIND_PACKAGE_RSVG=1
-DCMAKE_DISABLE_FIND_PACKAGE_NVTT=1
-DCMAKE_DISABLE_FIND_PACKAGE_LIBLAS=1
-DCMAKE_DISABLE_FIND_PACKAGE_Lua51=1
-DCMAKE_DISABLE_FIND_PACKAGE_Lua52=1
-DCMAKE_DISABLE_FIND_PACKAGE_SDL2=1
-DOSG_USE_LOCAL_LUA_SOURCE=OFF
-DOPENGL_PROFILE=GL2
-DDYNAMIC_OPENSCENEGRAPH=ON
-DLIB_POSTFIX=""
)

View File

@ -0,0 +1,168 @@
From fbdfac84763ce525e7d243eefbb23c013db93e32 Mon Sep 17 00:00:00 2001
From: Julian Ospald <hasufell@posteo.de>
Date: Tue, 24 May 2016 18:06:54 +0200
Subject: [PATCH] Use GNUInstallDirs
This will probably not make it upstream since they try to
be windows compatible.
---
CMake/ConfigureBuild.cmake | 2 +-
CMake/Utils/MyGUIConfigTargets.cmake | 40 +++++++++++++-------------
CMakeLists.txt | 1 +
MyGUIEngine/CMakeLists.txt | 2 +-
Platforms/OpenGL/OpenGLPlatform/CMakeLists.txt | 2 +-
5 files changed, 24 insertions(+), 23 deletions(-)
diff --git a/CMake/ConfigureBuild.cmake b/CMake/ConfigureBuild.cmake
index 9c6aad9..b655848 100644
--- a/CMake/ConfigureBuild.cmake
+++ b/CMake/ConfigureBuild.cmake
@@ -47,7 +47,7 @@ if (UNIX)
else ()
configure_file(${MYGUI_TEMPLATES_DIR}/MYGUI.pc.in ${MYGUI_BINARY_DIR}/pkgconfig/MYGUI${MYGUI_LIB_SUFFIX}.pc @ONLY)
endif ()
- install(FILES ${MYGUI_BINARY_DIR}/pkgconfig/MYGUI${MYGUI_LIB_SUFFIX}.pc DESTINATION lib/pkgconfig)
+ install(FILES ${MYGUI_BINARY_DIR}/pkgconfig/MYGUI${MYGUI_LIB_SUFFIX}.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
# configure additional packages
diff --git a/CMake/Utils/MyGUIConfigTargets.cmake b/CMake/Utils/MyGUIConfigTargets.cmake
index d48d2a3..61b80a5 100644
--- a/CMake/Utils/MyGUIConfigTargets.cmake
+++ b/CMake/Utils/MyGUIConfigTargets.cmake
@@ -60,27 +60,27 @@ endfunction(mygui_create_vcproj_userfile)
# install targets according to current build type
function(mygui_install_target TARGETNAME SUFFIX)
install(TARGETS ${TARGETNAME}
- RUNTIME DESTINATION "bin${MYGUI_RELEASE_PATH}" CONFIGURATIONS Release None ""
- LIBRARY DESTINATION "lib${MYGUI_LIB_RELEASE_PATH}${SUFFIX}" CONFIGURATIONS Release None ""
- ARCHIVE DESTINATION "lib${MYGUI_LIB_RELEASE_PATH}${SUFFIX}" CONFIGURATIONS Release None ""
+ RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}${MYGUI_RELEASE_PATH}" CONFIGURATIONS Release None ""
+ LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}${MYGUI_LIB_RELEASE_PATH}${SUFFIX}" CONFIGURATIONS Release None ""
+ ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}${MYGUI_LIB_RELEASE_PATH}${SUFFIX}" CONFIGURATIONS Release None ""
FRAMEWORK DESTINATION "${MYGUI_FRAMEWORK_PATH}" CONFIGURATIONS Release None ""
)
install(TARGETS ${TARGETNAME}
- RUNTIME DESTINATION "bin${MYGUI_RELWDBG_PATH}" CONFIGURATIONS RelWithDebInfo
- LIBRARY DESTINATION "lib${MYGUI_LIB_RELWDBG_PATH}${SUFFIX}" CONFIGURATIONS RelWithDebInfo
- ARCHIVE DESTINATION "lib${MYGUI_LIB_RELWDBG_PATH}${SUFFIX}" CONFIGURATIONS RelWithDebInfo
+ RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}${MYGUI_RELWDBG_PATH}" CONFIGURATIONS RelWithDebInfo
+ LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}${MYGUI_LIB_RELWDBG_PATH}${SUFFIX}" CONFIGURATIONS RelWithDebInfo
+ ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}${MYGUI_LIB_RELWDBG_PATH}${SUFFIX}" CONFIGURATIONS RelWithDebInfo
FRAMEWORK DESTINATION "${MYGUI_FRAMEWORK_PATH}" CONFIGURATIONS RelWithDebInfo
)
install(TARGETS ${TARGETNAME}
- RUNTIME DESTINATION "bin${MYGUI_MINSIZE_PATH}" CONFIGURATIONS MinSizeRel
- LIBRARY DESTINATION "lib${MYGUI_LIB_MINSIZE_PATH}${SUFFIX}" CONFIGURATIONS MinSizeRel
- ARCHIVE DESTINATION "lib${MYGUI_LIB_MINSIZE_PATH}${SUFFIX}" CONFIGURATIONS MinSizeRel
+ RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}${MYGUI_MINSIZE_PATH}" CONFIGURATIONS MinSizeRel
+ LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}${MYGUI_LIB_MINSIZE_PATH}${SUFFIX}" CONFIGURATIONS MinSizeRel
+ ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}${MYGUI_LIB_MINSIZE_PATH}${SUFFIX}" CONFIGURATIONS MinSizeRel
FRAMEWORK DESTINATION "${MYGUI_FRAMEWORK_PATH}" CONFIGURATIONS MinSizeRel
)
install(TARGETS ${TARGETNAME}
- RUNTIME DESTINATION "bin${MYGUI_DEBUG_PATH}" CONFIGURATIONS Debug
- LIBRARY DESTINATION "lib${MYGUI_LIB_DEBUG_PATH}${SUFFIX}" CONFIGURATIONS Debug
- ARCHIVE DESTINATION "lib${MYGUI_LIB_DEBUG_PATH}${SUFFIX}" CONFIGURATIONS Debug
+ RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}${MYGUI_DEBUG_PATH}" CONFIGURATIONS Debug
+ LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}${MYGUI_LIB_DEBUG_PATH}${SUFFIX}" CONFIGURATIONS Debug
+ ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}${MYGUI_LIB_DEBUG_PATH}${SUFFIX}" CONFIGURATIONS Debug
FRAMEWORK DESTINATION "${MYGUI_FRAMEWORK_PATH}" CONFIGURATIONS Debug
)
endfunction(mygui_install_target)
@@ -364,11 +364,11 @@ function(mygui_install_app PROJECTNAME)
if (MYGUI_INSTALL_PDB)
# install debug pdb files
install(FILES ${MYGUI_BINARY_DIR}/bin${MYGUI_DEBUG_PATH}/${PROJECTNAME}.pdb
- DESTINATION bin${MYGUI_DEBUG_PATH}
+ DESTINATION ${CMAKE_INSTALL_BINDIR}${MYGUI_DEBUG_PATH}
CONFIGURATIONS Debug
)
install(FILES ${MYGUI_BINARY_DIR}/bin${MYGUI_RELWDBG_PATH}/${PROJECTNAME}.pdb
- DESTINATION bin${MYGUI_RELWDBG_PATH}
+ DESTINATION ${CMAKE_INSTALL_BINDIR}${MYGUI_RELWDBG_PATH}
CONFIGURATIONS RelWithDebInfo
)
endif ()
@@ -400,7 +400,7 @@ function(mygui_plugin PROJECTNAME)
set_target_properties(${PROJECTNAME} PROPERTIES PREFIX "")
install(FILES ${HEADER_FILES}
- DESTINATION include/MYGUI
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/MYGUI
)
endfunction(mygui_plugin)
@@ -431,20 +431,20 @@ function(mygui_config_lib PROJECTNAME)
# install debug pdb files
if (MYGUI_STATIC)
install(FILES ${MYGUI_BINARY_DIR}/lib${MYGUI_LIB_DEBUG_PATH}/${PROJECTNAME}Static_d.pdb
- DESTINATION lib${MYGUI_LIB_DEBUG_PATH}
+ DESTINATION ${CMAKE_INSTALL_LIBDIR}${MYGUI_LIB_DEBUG_PATH}
CONFIGURATIONS Debug
)
install(FILES ${MYGUI_BINARY_DIR}/lib${MYGUI_LIB_RELWDBG_PATH}/${PROJECTNAME}Static.pdb
- DESTINATION lib${MYGUI_LIB_RELWDBG_PATH}
+ DESTINATION ${CMAKE_INSTALL_LIBDIR}${MYGUI_LIB_RELWDBG_PATH}
CONFIGURATIONS RelWithDebInfo
)
else ()
install(FILES ${MYGUI_BINARY_DIR}/bin${MYGUI_DEBUG_PATH}/${PROJECTNAME}_d.pdb
- DESTINATION bin${MYGUI_DEBUG_PATH}
+ DESTINATION ${CMAKE_INSTALL_BINDIR}${MYGUI_DEBUG_PATH}
CONFIGURATIONS Debug
)
install(FILES ${MYGUI_BINARY_DIR}/bin${MYGUI_RELWDBG_PATH}/${PROJECTNAME}.pdb
- DESTINATION bin${MYGUI_RELWDBG_PATH}
+ DESTINATION ${CMAKE_INSTALL_BINDIR}${MYGUI_RELWDBG_PATH}
CONFIGURATIONS RelWithDebInfo
)
endif ()
@@ -459,7 +459,7 @@ function(mygui_config_sample PROJECTNAME)
# set install RPATH for Unix systems
if (UNIX AND MYGUI_FULL_RPATH)
set_property(TARGET ${PROJECTNAME} APPEND PROPERTY
- INSTALL_RPATH ${CMAKE_INSTALL_PREFIX}/lib)
+ INSTALL_RPATH ${CMAKE_INSTALL_LIBDIR})
set_property(TARGET ${PROJECTNAME} PROPERTY INSTALL_RPATH_USE_LINK_PATH TRUE)
endif ()
endfunction(mygui_config_sample)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 9fc5694..0cddafa 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -17,6 +17,7 @@ set(CMAKE_MODULE_PATH
"${MYGUI_SOURCE_DIR}/CMake/Utils"
"${MYGUI_SOURCE_DIR}/CMake/Packages"
)
+include(GNUInstallDirs)
include(CMakeDependentOption)
include(MacroLogFeature)
include(MyGUIConfigTargets)
diff --git a/MyGUIEngine/CMakeLists.txt b/MyGUIEngine/CMakeLists.txt
index c5eab54..839ff43 100644
--- a/MyGUIEngine/CMakeLists.txt
+++ b/MyGUIEngine/CMakeLists.txt
@@ -64,5 +64,5 @@ endif ()
# install MyGUIEngine headers
install(FILES ${HEADER_FILES}
- DESTINATION include/MYGUI
+ DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/MYGUI"
)
diff --git a/Platforms/OpenGL/OpenGLPlatform/CMakeLists.txt b/Platforms/OpenGL/OpenGLPlatform/CMakeLists.txt
index 169ad05..4bd7cd1 100644
--- a/Platforms/OpenGL/OpenGLPlatform/CMakeLists.txt
+++ b/Platforms/OpenGL/OpenGLPlatform/CMakeLists.txt
@@ -30,7 +30,7 @@ link_directories(${OPENGL_LIB_DIR} ${PNG_LIBRARY})
# installation rules
install(FILES ${HEADER_FILES}
- DESTINATION include/MYGUI
+ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/MYGUI
)
mygui_install_target(${PROJECTNAME} "")
--
2.8.3

View File

@ -0,0 +1,21 @@
From: Julian Ospald <hasufell@gentoo.org>
Date: Fri Jun 15 10:42:42 UTC 2012
Subject: build system
Upstream: no
fix underlinking
--- MyGUIEngine/CMakeLists.txt
+++ MyGUIEngine/CMakeLists.txt
@@ -48,7 +48,10 @@
if (MYGUI_USE_FREETYPE)
target_link_libraries(${PROJECTNAME}
${FREETYPE_LIBRARIES}
- )
+ dl)
+else()
+ target_link_libraries(${PROJECTNAME}
+ dl)
endif()
# platform specific dependencies

View File

@ -0,0 +1,61 @@
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
MY_PNV=MyGUI${PV}
WORK="${WORKBASE}/${PN}-${MY_PNV}"
require cmake [ api=2 ]
require github [ user=MyGUI tag=${MY_PNV} ]
SUMMARY="A library for creating GUIs for games"
HOMEPAGE="http://mygui.info/"
LICENCES="MIT"
SLOT="0"
PLATFORMS="~amd64 ~x86"
DEPENDENCIES="
build:
virtual/pkg-config
build+run:
media-libs/freetype:2
media-libs/glew
x11-dri/mesa
"
DEFAULT_SRC_PREPARE_PATCHES=(
-p0 "${FILES}"/${PNV}-underlinking.patch
-p1 "${FILES}"/${PNV}-Use-GNUInstallDirs.patch
)
CMAKE_SRC_CONFIGURE_PARAMS=(
-DCMAKE_INSTALL_BINDIR="/usr$(exhost --target)/bin"
-DCMAKE_INSTALL_INCLUDEDIR="/usr/$(exhost --target)/include"
-DCMAKE_INSTALL_LIBDIR="/usr/$(exhost --target)/lib"
-DCMAKE_INSTALL_PREFIX="/usr"
-DMYGUI_BUILD_DEMOS=OFF
-DMYGUI_BUILD_DOCS=OFF
-DMYGUI_BUILD_PLUGINS=ON
-DMYGUI_BUILD_TOOLS=OFF
-DCMAKE_BUILD_TYPE=Release
-DMYGUI_BUILD_WRAPPER=OFF
-DMYGUI_INSTALL_DOCS=OFF
-DMYGUI_INSTALL_MEDIA=ON
-DMYGUI_INSTALL_SAMPLES=OFF
-DMYGUI_INSTALL_TOOLS=OFF
-DMYGUI_RENDERSYSTEM=4
-DMYGUI_STATIC=OFF
-DMYGUI_USE_FREETYPE=ON
-DMYGUI_USE_SYSTEM_GLEW=ON
)
src_install() {
cmake_src_install
# test media not needed at runtime
edo rm -r "${IMAGE}"/usr/share/MYGUI/Media/UnitTests
# wrapper not available for linux, remove related media
edo rm -r "${IMAGE}"/usr/share/MYGUI/Media/Wrapper
}

View File

@ -0,0 +1,94 @@
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require github [ user=ARMmbed tag=mbedtls-${PV} ]
WORK="${WORKBASE}/${PNV}" # because github.exlib is broken
require cmake [ api=2 ]
SUMMARY="Cryptographic library for embedded systems"
HOMEPAGE="https://tls.mbed.org/"
DOWNLOADS="https://tls.mbed.org/download/${PNV}-gpl.tgz"
LICENCES="|| ( Apache-2.0 GPL-2 )"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS="
doc
havege [[ description = [ Enable the HAVEGE random generator,
not suitable for virtualized environments! ] ]]
threads [[ description = [ Enables the threading abstraction layer
via pthread. This is used if you do intend
to use contexts between threads. ] ]]
x86_cpu_features:
sse2
"
DEPENDENCIES="
build:
doc? (
app-doc/doxygen[>=1.8.4]
media-gfx/graphviz
)
build+run:
sys-libs/zlib
test:
dev-lang/perl:*
dev-lang/python:*[>=3]
"
CMAKE_SRC_CONFIGURE_PARAMS=(
-DENABLE_PROGRAMS=OFF
-DUSE_SHARED_MBEDTLS_LIBRARY=ON
-DINSTALL_MBEDTLS_HEADERS=ON
-DLIB_INSTALL_DIR="/usr/$(exhost --target)/lib"
-DUSE_STATIC_MBEDTLS_LIBRARY=OFF
-DENABLE_ZLIB_SUPPORT=ON
)
CMAKE_SRC_CONFIGURE_TESTS=(
'-DENABLE_TESTING=ON'
)
enable_mbedtls_option() {
local myopt="$@"
# check that config.h syntax is the same at version bump
edo sed -i \
-e "s://#define ${myopt}:#define ${myopt}:" \
"${CMAKE_SOURCE}"/include/mbedtls/config.h
}
src_prepare() {
option x86_cpu_features:sse2 && enable_mbedtls_option MBEDTLS_HAVE_SSE2
enable_mbedtls_option MBEDTLS_ZLIB_SUPPORT
option havege && enable_mbedtls_option MBEDTLS_HAVEGE_C
option threads && enable_mbedtls_option MBEDTLS_THREADING_C
option threads && enable_mbedtls_option MBEDTLS_THREADING_PTHREAD
enable_mbedtls_option MBEDTLS_MD4_C
cmake_src_prepare
}
src_compile() {
default
if option doc ; then
emake apidoc
fi
}
src_test() {
LD_LIBRARY_PATH="${ECMAKE_BUILD_DIR}/library" \
emake test
}
src_install() {
cmake_src_install
if option doc ; then
docinto html
dodoc -r "${CMAKE_SOURCE}"/apidoc/*
fi
}

View File

@ -1,25 +0,0 @@
Upstream: Yes
From 08c503bdd1e128118e45fa50be256e27415bbd41 Mon Sep 17 00:00:00 2001
From: Adrian Georgescu <ag@ag-projects.com>
Date: Sat, 1 Jan 2022 15:19:37 +0000
Subject: [PATCH] collections.MutableMapping was deprecated since Python 3.3
---
application/python/weakref.py | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/application/python/weakref.py b/application/python/weakref.py
index a785a7e..38fd664 100644
--- a/application/python/weakref.py
+++ b/application/python/weakref.py
@@ -1,7 +1,8 @@
import weakref
-from collections import MutableMapping, deque
+from collections.abc import MutableMapping
+from collections import deque
from copy import deepcopy
from threading import local

View File

@ -1,8 +1,7 @@
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require setup-py [ import=distutils blacklist="2" multibuild=false ]
require github [ user="AGProjects" pn="python3-application" tag="${PV}" ]
require pypi setup-py [ import=distutils blacklist="3" ]
SUMMARY="Basic building blocks for python applications"
HOMEPAGE="http://ag-projects.com/"
@ -15,7 +14,4 @@ MYOPTIONS=""
DEPENDENCIES="
dev-python/zopeinterface[python_abis:*(-)?]
"
DEFAULT_SRC_PREPARE_PATCHES=(
"${FILES}"/08c503bdd1e128118e45fa50be256e27415bbd41.patch
)

View File

@ -1,8 +1,8 @@
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require github [ user="AGProjects" pn="python3-eventlib" tag="${PV}" ]
require setup-py [ import=distutils blacklist="2" multibuild=false ]
require github [ user="AGProjects" tag="release-${PV}" ]
require setup-py [ import=distutils blacklist="3" work="${PN}-release-${PV}" ]
SUMMARY="Coroutine-based networking library"
HOMEPAGE="http://sipsimpleclient.org"

View File

@ -1,8 +1,7 @@
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require setup-py [ import=distutils blacklist="2" multibuild=false ]
require github [ user="AGProjects" pn="python3-gnutls" tag="${PV}" ]
require pypi setup-py [ import=distutils blacklist="3" ]
SUMMARY="High level object oriented wrapper around libgnutls"
HOMEPAGE="http://ag-projects.com/"

View File

@ -1,8 +1,8 @@
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require github [ user="AGProjects" pn="python3-msrplib" tag="${PV}" ]
require setup-py [ import=distutils blacklist="2" multibuild=false ]
require github [ user="AGProjects" tag="release-${PV}" ]
require setup-py [ import=distutils blacklist="3" work="${PN}-release-${PV}" ]
SUMMARY="Client library for MSRP protocol and its relay extension"
HOMEPAGE="http://sipsimpleclient.org"
@ -14,9 +14,9 @@ MYOPTIONS=""
DEPENDENCIES="
run:
dev-python/python-application[>=3.0.3][python_abis:*(-)?]
dev-python/python-eventlib[>=0.3.0][python_abis:*(-)?]
dev-python/python-gnutls[>=3.1.8][python_abis:*(-)?]
dev-python/python-application[python_abis:*(-)?]
dev-python/python-eventlib[python_abis:*(-)?]
dev-python/python-gnutls[>=3.0.0][python_abis:*(-)?]
net-twisted/Twisted[python_abis:*(-)?]
"

View File

@ -1,8 +1,7 @@
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require setup-py [ import=distutils blacklist="2" multibuild=false ]
require github [ user="AGProjects" pn="python3-otr" tag="${PV}" ]
require pypi setup-py [ import=distutils blacklist="3" ]
SUMMARY="Off-The-Record Messaging protocol implementation for Python"
HOMEPAGE="https://github.com/AGProjects/python-otr"
@ -15,8 +14,9 @@ MYOPTIONS=""
DEPENDENCIES="
build+run:
dev-python/cryptography[>=1.6][python_abis:*(-)?]
dev-python/enum34[python_abis:*(-)?]
dev-python/gmpy2[python_abis:*(-)?]
dev-python/python-application[>=3.0.3][python_abis:*(-)?]
dev-python/python-application[>=2.0.0][python_abis:*(-)?]
dev-python/zopeinterface[python_abis:*(-)?]
net-libs/libotr
"

View File

@ -0,0 +1,26 @@
From 8e0874b1be515abc8845e3ad41c4332f992e5687 Mon Sep 17 00:00:00 2001
From: Julian Ospald <hasufell@posteo.de>
Date: Tue, 24 Dec 2019 22:17:28 +0100
Subject: [PATCH] Fix build with LibreSSL 2.7
Upstream: submitted, https://github.com/AGProjects/python-sipsimple/pull/8
---
deps/pjsip/third_party/zsrtp/include/openssl_compat.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/deps/pjsip/third_party/zsrtp/include/openssl_compat.h b/deps/pjsip/third_party/zsrtp/include/openssl_compat.h
index 5b6e183e..aebbf996 100644
--- a/deps/pjsip/third_party/zsrtp/include/openssl_compat.h
+++ b/deps/pjsip/third_party/zsrtp/include/openssl_compat.h
@@ -3,7 +3,7 @@
#include <openssl/hmac.h>
-#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || defined (LIBRESSL_VERSION_NUMBER)
+#if (OPENSSL_VERSION_NUMBER < 0x10100000L) || (defined(LIBRESSL_VERSION_NUMBER) && LIBRESSL_VERSION_NUMBER < 0x20700000L)
static HMAC_CTX *HMAC_CTX_new(void)
{
HMAC_CTX *ctx = (HMAC_CTX*)OPENSSL_malloc(sizeof(HMAC_CTX));
--
2.24.1

View File

@ -0,0 +1,45 @@
From f786808a36deab01f301905ecdae27e6e17ce197 Mon Sep 17 00:00:00 2001
From: Charles Barcza <info@blackpanther.hu>
Date: Mon, 13 Mar 2017 14:46:34 +0100
Subject: [PATCH 1/2] Build fix on Linux
Upstream: submitted, https://github.com/AGProjects/python-sipsimple/pull/1
---
setup_pjsip.py | 1 +
1 file changed, 1 insertion(+)
diff --git a/setup_pjsip.py b/setup_pjsip.py
index 4760e64..a43533d 100644
--- a/setup_pjsip.py
+++ b/setup_pjsip.py
@@ -157,6 +157,7 @@ def configure_pjsip(self):
if sys_platform == "win32":
cmd = ["bash", "configure"]
else:
+ os.system("chmod +x "+ self.build_dir +"/*configure")
cmd = ["./configure"]
cmd.extend(["--disable-g7221-codec"])
ffmpeg_path = env.get("SIPSIMPLE_FFMPEG_PATH", None)
From b80cf7ee9d4c32b4e068eb74492f31ccab1296b2 Mon Sep 17 00:00:00 2001
From: Charles Barcza <info@blackpanther.hu>
Date: Mon, 13 Mar 2017 14:55:29 +0100
Subject: [PATCH 2/2] Build fix on Linux
---
setup_pjsip.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/setup_pjsip.py b/setup_pjsip.py
index a43533d..5f1b27b 100644
--- a/setup_pjsip.py
+++ b/setup_pjsip.py
@@ -157,7 +157,7 @@ def configure_pjsip(self):
if sys_platform == "win32":
cmd = ["bash", "configure"]
else:
- os.system("chmod +x "+ self.build_dir +"/*configure")
+ os.system("chmod +x "+ self.build_dir +"/*configure")
cmd = ["./configure"]
cmd.extend(["--disable-g7221-codec"])
ffmpeg_path = env.get("SIPSIMPLE_FFMPEG_PATH", None)

View File

@ -1,22 +0,0 @@
From f786808a36deab01f301905ecdae27e6e17ce197 Mon Sep 17 00:00:00 2001
From: Charles Barcza <info@blackpanther.hu>
Date: Mon, 13 Mar 2017 14:46:34 +0100
Subject: [PATCH 1/2] Build fix on Linux
Upstream: submitted, https://github.com/AGProjects/python-sipsimple/pull/1
---
setup_pjsip.py | 1 +
1 file changed, 1 insertion(+)
diff --git a/setup_pjsip.py b/setup_pjsip.py
index 7dd6c13ff..82e7bd1ca 100644
--- a/setup_pjsip.py
+++ b/setup_pjsip.py
@@ -160,6 +160,7 @@ class PJSIP_build_ext(build_ext):
if sys_platform == "win32":
cmd = ["bash", "configure"]
else:
+ os.system("chmod +x "+ self.build_dir +"/*configure")
cmd = ["./configure"]
cmd.extend(["--disable-g7221-codec"])
ffmpeg_path = env.get("SIPSIMPLE_FFMPEG_PATH", None)

View File

@ -0,0 +1,25 @@
Upstream: Submitted
Source: https://github.com/AGProjects/python-sipsimple/pull/10
From 052f7301a0c906c4117dff5453222f12e768bb49 Mon Sep 17 00:00:00 2001
From: Tom Briden <tom@decompile.me.uk>
Date: Thu, 23 Jul 2020 19:22:30 +0100
Subject: [PATCH] Fix multiple definition of `PJ_ATTR_MAY_ALIAS' with GCC-10
---
deps/pjsip/pjlib/include/pj/list.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/deps/pjsip/pjlib/include/pj/list.h b/deps/pjsip/pjlib/include/pj/list.h
index 880f58d4..50510fe3 100644
--- a/deps/pjsip/pjlib/include/pj/list.h
+++ b/deps/pjsip/pjlib/include/pj/list.h
@@ -71,7 +71,7 @@ PJ_BEGIN_DECL
* must initialize the 'value' member to an appropriate value (typically the
* owner itself).
*/
-struct pj_list
+extern struct pj_list
{
PJ_DECL_LIST_MEMBER(void);
} PJ_ATTR_MAY_ALIAS; /* may_alias avoids warning with gcc-4.4 -Wall -O2 */

View File

@ -0,0 +1,60 @@
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require github [ user="AGProjects" tag="release-${PV}" ]
require setup-py [ import=distutils blacklist="3" work="${PN}-release-${PV}" ]
SUMMARY="SIP SIMPLE client SDK is a Software Development Kit"
HOMEPAGE="http://sipsimpleclient.org ${HOMEPAGE}"
LICENCES="GPL-3"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS="
( providers: libressl openssl ) [[ number-selected = exactly-one ]]
"
DEPENDENCIES="
build:
dev-python/Cython[python_abis:*(-)?]
virtual/pkg-config
build+run:
dev-db/sqlite:3
dev-libs/icu:=
dev-python/python-application[>=2.5.0][python_abis:*(-)?]
media/ffmpeg[h264]
media-libs/libvpx
media-libs/v4l-utils
sys-apps/util-linux
sys-sound/alsa-lib
providers:libressl? ( dev-libs/libressl:= )
providers:openssl? ( dev-libs/openssl )
run:
dev-python/dnspython[python_abis:*(-)?]
dev-python/greenlet[python_abis:*(-)?]
dev-python/lxml[python_abis:*(-)?]
dev-python/python-cjson[python_abis:*(-)?]
dev-python/python-dateutil[python_abis:*(-)?]
dev-python/python-eventlib[python_abis:*(-)?]
dev-python/python-gnutls[python_abis:*(-)?]
dev-python/python-msrplib[>=0.19.0][python_abis:*(-)?]
dev-python/python-otr[>=1.2.0][python_abis:*(-)?]
dev-python/python-xcaplib[python_abis:*(-)?]
dev-python/zopeinterface[python_abis:*(-)?]
media-libs/x264[-10bit]
net-twisted/Twisted[python_abis:*(-)?]
"
DEFAULT_SRC_PREPARE_PATCHES=(
"${FILES}"/${PNV}-fix-build.patch
"${FILES}"/0001-Fix-build-with-LibreSSL-2.7.patch
"${FILES}"/${PN}-gcc10-fix.patch
)
src_compile() {
# breaks horribly with 'ld'
export LD=${CC}
setup-py_src_compile
}

View File

@ -1,98 +0,0 @@
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require github [ user="AGProjects" pn="python3-sipsimple" tag="${PV}" ]
require setup-py [ import=distutils blacklist="2" multibuild=false ]
SUMMARY="SIP SIMPLE client SDK is a Software Development Kit"
HOMEPAGE="http://sipsimpleclient.org ${HOMEPAGE}"
ZRTPCPP_SHA="6b3cd8e6783642292bad0c21e3e5e5ce45ff3e03"
DOWNLOADS+="
https://github.com/pjsip/pjproject/archive/2.10.tar.gz
https://github.com/wernerd/ZRTPCPP/archive/${ZRTPCPP_SHA}.tar.gz -> ZRTPCPP-${ZRTPCPP_SHA}.tar.gz
"
LICENCES="GPL-3"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS="
( providers: libressl openssl ) [[ number-selected = exactly-one ]]
"
DEPENDENCIES="
build:
dev-python/Cython[python_abis:*(-)?]
virtual/pkg-config
build+run:
dev-db/sqlite:3
dev-libs/icu:=
dev-python/python-application[>=3.0.3][python_abis:*(-)?]
media/ffmpeg[h264]
media-libs/libvpx
media-libs/v4l-utils
sys-apps/util-linux
sys-sound/alsa-lib
providers:libressl? ( dev-libs/libressl:= )
providers:openssl? ( dev-libs/openssl )
run:
dev-python/dnspython[python_abis:*(-)?]
dev-python/gevent[python_abis:*(-)?]
dev-python/greenlet[python_abis:*(-)?]
dev-python/lxml[python_abis:*(-)?]
dev-python/python-dateutil[python_abis:*(-)?]
dev-python/python-eventlib[>=0.3.0][python_abis:*(-)?]
dev-python/python-gnutls[>=3.1.8][python_abis:*(-)?]
dev-python/python-msrplib[>=0.21.0][python_abis:*(-)?]
dev-python/python-otr[>=2.0.1][python_abis:*(-)?]
dev-python/python-xcaplib[>=2.0.0][python_abis:*(-)?]
dev-python/zopeinterface[python_abis:*(-)?]
media-libs/x264[-10bit]
net-twisted/Twisted[python_abis:*(-)?]
"
DEFAULT_SRC_PREPARE_PATCHES=(
"${FILES}"/${PN}-fix-build.patch
)
src_prepare() {
setup-py_src_prepare
# MOst of this is straight from get_dependencies.sh but that
# wants to download the dependencies directly so we can't use it
edo mkdir "${WORK}"/deps/pjsip
edo mv "${WORKBASE}"/pjproject*/* "${WORK}"/deps/pjsip/
edo pushd "${WORK}"/deps/
# Copy wrapper from old version to third_party/zsrtp/
edo mkdir ./pjsip/third_party/zsrtp
cp -r zsrtp/include ./pjsip/third_party/zsrtp/
cp -r zsrtp/srtp ./pjsip/third_party/zsrtp/
cp -r zsrtp/build ./pjsip/third_party/build/zsrtp
# Copy new version to third_party/zsrtp/
mkdir ./pjsip/third_party/zsrtp/zrtp
cp -r "${WORKBASE}"/ZRTPCPP-"${ZRTPCPP_SHA}"/bnlib ./pjsip/third_party/zsrtp/zrtp/
cp -r "${WORKBASE}"/ZRTPCPP-"${ZRTPCPP_SHA}"/common ./pjsip/third_party/zsrtp/zrtp/
cp -r "${WORKBASE}"/ZRTPCPP-"${ZRTPCPP_SHA}"/cryptcommon ./pjsip/third_party/zsrtp/zrtp/
cp -r "${WORKBASE}"/ZRTPCPP-"${ZRTPCPP_SHA}"/srtp ./pjsip/third_party/zsrtp/zrtp/
cp -r "${WORKBASE}"/ZRTPCPP-"${ZRTPCPP_SHA}"/zrtp ./pjsip/third_party/zsrtp/zrtp/
cp "${WORKBASE}"/ZRTPCPP-"${ZRTPCPP_SHA}"/COPYING ./pjsip/third_party/zsrtp/zrtp/
cp "${WORKBASE}"/ZRTPCPP-"${ZRTPCPP_SHA}"/README.md ./pjsip/third_party/zsrtp/zrtp/
for p in patches/*.patch; do
expatch -p0 "${p}"
done
edo popd
}
src_compile() {
# breaks horribly with 'ld'
export LD=${CC}
setup-py_src_compile
}

View File

@ -1,11 +1,11 @@
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require setup-py [ import=distutils blacklist="2" multibuild=false ]
require github [ user="AGProjects" pn="python3-xcaplib" tag="${PV}" ]
require setup-py [ import=distutils blacklist="3" ]
SUMMARY="Python library for managing XML documents on XCAP server"
HOMEPAGE="http://sipsimpleclient.org"
DOWNLOADS="http://download.ag-projects.com/XCAP/${PNV}.tar.gz"
LICENCES="GPL-2"
SLOT="0"
@ -14,8 +14,7 @@ MYOPTIONS=""
DEPENDENCIES="
run:
dev-python/gevent[python_abis:*(-)?]
dev-python/lxml[python_abis:*(-)?]
dev-python/python-application[>=3.0.3][python_abis:*(-)?]
dev-python/python-application[python_abis:*(-)?]
"

View File

@ -5,7 +5,7 @@ require python [ blacklist=3 has_bin=true has_lib=true multibuild=false ]
require github [ user="vslavik" release="v${PV}" suffix=tar.gz ]
SUMMARY="Bakefile makefiles generator"
HOMEPAGE="https://bakefile.org/"
HOMEPAGE="http://bakefile.org/"
LICENCES="MIT"
SLOT="0"

View File

@ -23,7 +23,6 @@ BUGS_TO="hasufell@posteo.de"
src_compile() {
export GOPATH="${WORK}"/.gopath
export GOBIN="${WORK}"/.bin
export GH_VERSION="v${PV}"
unset LDFLAGS
esandbox disable_net
@ -31,7 +30,7 @@ src_compile() {
emake manpages
edo go run ./cmd/gh completion -s bash > gh.bash-completion
edo go run ./cmd/gh completion -s zsh > _gh
edo go run ./cmd/gh completion -s zsh > gh.zsh-completion
esandbox enable_net
}
@ -40,13 +39,6 @@ src_install() {
emagicdocs
doman share/man/man?/gh*.?
dobashcompletion gh.bash-completion gh
dozshcompletion _gh
dobashcompletion gh.bash-completion
dozshcompletion gh.zsh-completion
}
src_test() {
esandbox disable_net
default
esandbox enable_net
}

View File

@ -17,5 +17,3 @@ DEPENDENCIES="
dev-scm/libgit2
"
BUGS_TO="hasufell@posteo.de"

View File

@ -0,0 +1,51 @@
# Copyright 2018 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require alternatives github [ user='universal-ctags' pn='ctags' ]
require autotools [ supported_autoconf=[ 2.5 ] supported_automake=[ 1.16 ] ]
SUMMARY="Universal ctags"
LICENCES="GPL-2"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS="
json [[ description = [ Add support for JSON format as output ] ]]
seccomp [[ description = [ Add support for libseccomp library ] ]]
xml
yaml [[ description = [ Add support for YAML format as output ] ]]
"
DEPENDENCIES="
build+run:
json? ( dev-libs/jansson )
seccomp? ( sys-libs/libseccomp )
xml? ( dev-libs/libxml2:2.0[>=2.7.7] )
yaml? ( dev-libs/libyaml )
build:
dev-python/docutils
virtual/pkg-config
"
# input-encoding-option and output-encoding-option fail as of 20-03-2020
RESTRICT="test"
DEFAULT_SRC_CONFIGURE_OPTION_ENABLES=(
'json'
'seccomp'
'xml'
'yaml'
)
src_install() {
default
# alternatives collision
edo mv "${IMAGE}"/usr/$(exhost --target)/bin/{ctags,universal-ctags}
edo mv "${IMAGE}"/usr/share/man/man1/{ctags,universal-ctags}.1
alternatives_for ctags universal-ctags 500 \
/usr/$(exhost --target)/bin/ctags universal-ctags \
/usr/share/man/man1/ctags.1 universal-ctags.1
}

View File

@ -0,0 +1,63 @@
# Copyright 2014-2018 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require gtk-icon-cache
require github [ user=OpenMW tag=${PNV} ]
require cmake [ api=2 ]
SUMMARY="An open source reimplementation of TES III: Morrowind"
HOMEPAGE="http://openmw.org/"
LICENCES="GPL-3 MIT bitstream-font OFL-1.1"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS="
( providers: ffmpeg libav ) [[ number-selected = exactly-one ]]
"
DEPENDENCIES="
build:
virtual/pkg-config
build+run:
app-arch/unshield
dev-games/OpenSceneGraph[>=3.3.4]
dev-games/mygui[>=3.2.1]
dev-libs/boost
dev-libs/tinyxml
media-libs/SDL:2[X]
media-libs/freetype:2
media-libs/openal
sci-physics/bullet[>=2.86]
x11-libs/qtbase:5
providers:ffmpeg? ( media/ffmpeg )
providers:libav? ( media/libav )
"
CMAKE_SRC_CONFIGURE_PARAMS=(
-DBINDIR="/usr/$(exhost --target)/bin"
-DBUILD_BSATOOL=ON
-DBUILD_DOCS=OFF
-DBUILD_ESMTOOL=ON
-DBUILD_LAUNCHER=ON
-DBUILD_NIFTEST=OFF
-DBUILD_OPENCS=ON
-DBUILD_OPENMW=ON
-DBUILD_UNITTESTS=OFF
-DBUILD_WITH_CODE_COVERAGE=OFF
-DBUILD_WIZARD=ON
-DCMAKE_INSTALL_PREFIX=/usr
-DDATADIR="/usr/share/${PN}"
-DDESIRED_QT_VERSION=5
-DGLOBAL_CONFIG_PATH="/etc"
-DICONDIR="/usr/share/icons/hicolor/256x256/apps"
-DLIBDIR="/usr/$(exhost --target)/lib"
-DMORROWIND_DATA_FILES="/usr/share/${PN}/data"
-DOPENMW_RESOURCE_FILES="/usr/share/${PN}/resources"
-DUSE_SYSTEM_TINYXML=ON
)
src_install() {
default
keepdir /usr/share/openmw/data
}

View File

@ -0,0 +1,46 @@
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
# Distributed under the terms of the GNU General Public License v2
require scons
SUMMARY="A simple converter to create Ogg Theora files"
HOMEPAGE="http://www.v2v.cc/~j/ffmpeg2theora/"
DOWNLOADS="http://www.v2v.cc/~j/${PN}/downloads/${PNV}.tar.bz2"
LICENCES="GPL-3"
SLOT="0"
PLATFORMS="~amd64 ~x86"
MYOPTIONS="
( providers: ffmpeg libav ) [[ number-selected = exactly-one ]]
"
DEPENDENCIES="
build:
virtual/pkg-config
build+run:
media-libs/libvorbis
media-libs/libogg
media-libs/libtheora
providers:ffmpeg? ( media/ffmpeg )
providers:libav? ( media/libav )
"
DEFAULT_SRC_PREPARE_PATCHES=(
-p0 "${FILES}"/${PN}-0.30-underlinking.patch
-p1 "${FILES}"/${PN}-0.30-build.patch
)
SCONS_SRC_CONFIGURE_PARAMS=(
libkate=0
bindir="${IMAGE}/usr/$(exhost --target)/bin"
destdir=${IMAGE}
prefix=/usr
)
SCONS_SRC_COMPILE_PARAMS=( "${SCONS_SRC_CONFIGURE_PARAMS[@]}" )
SCONS_SRC_INSTALL_PARAMS=( "${SCONS_SRC_CONFIGURE_PARAMS[@]}" )
src_install() {
scons_src_install
dodoc AUTHORS ChangeLog README subtitles.txt TODO
}

View File

@ -0,0 +1,76 @@
Source: Julian Ospald <hasufell@posteo.de>
Upstream: no
Reason: fix build by respecting pkg-config, CC etc
diff --git a/SConstruct b/SConstruct
index 2458096..eda1c41 100644
--- a/SConstruct
+++ b/SConstruct
@@ -4,6 +4,7 @@ from glob import glob
import os
import SCons
+import SCons.Util
def version():
#return "0.29"
@@ -41,6 +42,27 @@ opts.AddVariables(
env = Environment(options = opts)
Help(opts.GenerateHelpText(env))
+if os.environ.has_key('AR'):
+ env['AR'] = os.environ['AR']
+if os.environ.has_key('RANLIB'):
+ env['RANLIB'] = os.environ['RANLIB']
+if os.environ.has_key('CC'):
+ env['CC'] = os.environ['CC']
+if os.environ.has_key('CFLAGS'):
+ env['CCFLAGS'] += SCons.Util.CLVar(os.environ['CFLAGS'])
+if os.environ.has_key('CXX'):
+ env['CXX'] = os.environ['CXX']
+if os.environ.has_key('CXXFLAGS'):
+ env['CXXFLAGS'] += SCons.Util.CLVar(os.environ['CXXFLAGS'])
+if os.environ.has_key('CPPFLAGS'):
+ env['CCFLAGS'] += SCons.Util.CLVar(os.environ['CPPFLAGS'])
+if os.environ.has_key('LDFLAGS'):
+ env['LINKFLAGS'] += SCons.Util.CLVar(os.environ['LDFLAGS'])
+if os.environ.has_key('PKG_CONFIG'):
+ env['PKG_CONFIG'] = os.environ['PKG_CONFIG']
+else:
+ env['PKG_CONFIG'] = 'pkg-config'
+
pkg_flags="--cflags --libs"
if env['static']:
pkg_flags+=" --static"
@@ -75,9 +97,9 @@ if GetOption("help"):
def ParsePKGConfig(env, name):
if os.environ.get('PKG_CONFIG_PATH', ''):
- action = 'PKG_CONFIG_PATH=%s pkg-config %s "%s"' % (os.environ['PKG_CONFIG_PATH'], pkg_flags, name)
+ action = 'PKG_CONFIG_PATH=%s %s %s "%s"' % (os.environ['PKG_CONFIG_PATH'], env['PKG_CONFIG'], pkg_flags, name)
else:
- action = 'pkg-config %s "%s"' % (pkg_flags, name)
+ action = '%s %s "%s"' % (env['PKG_CONFIG'], pkg_flags, name)
return env.ParseConfig(action)
def TryAction(action):
@@ -89,16 +111,16 @@ def TryAction(action):
def CheckPKGConfig(context, version):
context.Message( 'Checking for pkg-config... ' )
- ret = TryAction('pkg-config --atleast-pkgconfig-version=%s' % version)[0]
+ ret = TryAction('%s --atleast-pkgconfig-version=%s' % (env['PKG_CONFIG'], version))[0]
context.Result( ret )
return ret
def CheckPKG(context, name):
context.Message( 'Checking for %s... ' % name )
if os.environ.get('PKG_CONFIG_PATH', ''):
- action = 'PKG_CONFIG_PATH=%s pkg-config --exists "%s"' % (os.environ['PKG_CONFIG_PATH'], name)
+ action = 'PKG_CONFIG_PATH=%s %s --exists "%s"' % (os.environ['PKG_CONFIG_PATH'], env['PKG_CONFIG'], name)
else:
- action = 'pkg-config --exists "%s"' % name
+ action = '%s --exists "%s"' % (env['PKG_CONFIG'], name)
ret = TryAction(action)[0]
context.Result( ret )
return ret

View File

@ -0,0 +1,17 @@
Source: Gentoo
Upstream: unknown
Reason: fix underlinking
--- SConstruct
+++ SConstruct
@@ -206,9 +206,8 @@
if env['crossmingw']:
env.Append(CCFLAGS=['-Wl,-subsystem,windows'])
env.Append(LIBS=['m'])
- elif env['static']:
- env.Append(LIBS=['m', 'dl'])
+ env.Append(LIBS=['m', 'dl'])
env = conf.Finish()

View File

@ -5,7 +5,7 @@ require gtk-icon-cache freedesktop-desktop freedesktop-mime
SUMMARY="Team collaboration tool"
HOMEPAGE="http://www.slack.com/"
DOWNLOADS="https://downloads.slack-edge.com/releases/linux/${PV}/prod/x64/slack-desktop-${PV}-amd64.deb"
DOWNLOADS="https://downloads.slack-edge.com/linux_releases/${PN/-bin/}-desktop-${PV}-amd64.deb"
LICENCES="all-rights-reserved"
SLOT="0"
@ -70,7 +70,6 @@ src_install() {
insinto /opt/slack
doins -r usr/lib/slack/.
edo chmod +x "${IMAGE}"/opt/slack/slack
edo chmod +x "${IMAGE}"/opt/slack/chrome_crashpad_handler
dodir /usr/$(exhost --target)/bin
dosym ../../../opt/slack/slack /usr/$(exhost --target)/bin/slack
}

View File

@ -2,11 +2,11 @@
# Distributed under the terms of the GNU General Public License v2
require desktop-utils gtk-icon-cache
require setup-py [ import=distutils blacklist="2" multibuild=false ]
require setup-py [ import=distutils blacklist="3" multibuild=false ]
require github [ user="AGProjects" pn="blink-qt" tag="release-${PV}" ]
SUMMARY="A state of the art, easy to use SIP client"
HOMEPAGE="http://iCanBlink.com"
DOWNLOADS="http://download.ag-projects.com/Blink/Linux/${PNV}.tar.gz"
LICENCES="GPL-3"
SLOT="0"
@ -22,17 +22,17 @@ DEPENDENCIES="
dev-python/PyQt5[>=5.0][webkit][python_abis:*(-)?]
dev-python/google-api-python-client[python_abis:*(-)?]
dev-python/lxml[python_abis:*(-)?]
dev-python/python-application[>=3.0.3][python_abis:*(-)?]
dev-python/python-application[>=2.5.0][python_abis:*(-)?]
dev-python/python-cjson[python_abis:*(-)?]
dev-python/python-dateutil[python_abis:*(-)?]
dev-python/python-eventlib[>=0.3.0][python_abis:*(-)?]
dev-python/python-sipsimple[>=5.2.5][python_abis:*(-)?]
dev-python/python-eventlib[python_abis:*(-)?]
dev-python/python-sipsimple[>=3.0.0][python_abis:*(-)?]
dev-python/zopeinterface[python_abis:*(-)?]
net-twisted/Twisted[python_abis:*(-)?]
"
DEFAULT_SRC_PREPARE_PATCHES=(
"${FILES}/${PN}-data-path.patch"
"${FILES}/33c7f377d173d27b4611d061ca36077805250e78.patch"
"${FILES}/${PNV}-data-path.patch"
)
src_install() {

View File

@ -1,122 +0,0 @@
Upstream: Yes
From 33c7f377d173d27b4611d061ca36077805250e78 Mon Sep 17 00:00:00 2001
From: Jose Lopes <josemslopes@gmail.com>
Date: Tue, 8 Feb 2022 08:11:57 +0000
Subject: [PATCH] Solve issues with python 3.10
GH-3
---
blink/chatwindow.py | 3 ++-
blink/sessions.py | 6 +++---
blink/widgets/buttons.py | 4 ++--
blink/widgets/lineedit.py | 14 +++++++-------
blink/widgets/video.py | 2 +-
5 files changed, 15 insertions(+), 14 deletions(-)
diff --git a/blink/chatwindow.py b/blink/chatwindow.py
index e55f590..40da6de 100644
--- a/blink/chatwindow.py
+++ b/blink/chatwindow.py
@@ -18,7 +18,8 @@
from application.python.descriptor import WriteOnceAttribute
from application.python.types import MarkerType
from application.system import makedirs
-from collections import MutableSet, deque
+from collections.abc import MutableSet
+from collections import deque
from datetime import datetime, timedelta
from itertools import count
from lxml import etree, html
diff --git a/blink/sessions.py b/blink/sessions.py
index 9805515..9928831 100644
--- a/blink/sessions.py
+++ b/blink/sessions.py
@@ -5094,13 +5094,13 @@ def showEvent(self, event):
total_width = width + window_frame_size.width()
total_height = height + window_frame_size.height()
- x = limit(screen_geometry.center().x() - total_width/2, min=available_geometry.left(), max=available_geometry.right()-total_width)
+ x = int(limit(screen_geometry.center().x() - total_width/2, min=available_geometry.left(), max=available_geometry.right()-total_width))
if slot is None:
y = -1
elif slot % 2 == 0:
- y = screen_geometry.center().y() + (slot-1)*total_height/2
+ y = int(screen_geometry.center().y() + (slot-1)*total_height/2)
else:
- y = screen_geometry.center().y() - slot*total_height/2
+ y = int(screen_geometry.center().y() - slot*total_height/2)
if available_geometry.top() <= y <= available_geometry.bottom() - total_height:
self.setGeometry(x, y, width, height)
diff --git a/blink/widgets/buttons.py b/blink/widgets/buttons.py
index c3b18bf..72aefd5 100644
--- a/blink/widgets/buttons.py
+++ b/blink/widgets/buttons.py
@@ -620,8 +620,8 @@ def pixmap(self, mode=QIcon.Normal, state=QIcon.Off):
return pixmap
size = max(pixmap.width(), pixmap.height())
- offset_x = (size - pixmap.width())/2
- offset_y = (size - pixmap.height())/2
+ offset_x = int((size - pixmap.width())/2)
+ offset_y = int((size - pixmap.height())/2)
new_pixmap = QPixmap(size, size)
new_pixmap.fill(Qt.transparent)
diff --git a/blink/widgets/lineedit.py b/blink/widgets/lineedit.py
index ee63e81..f03ac54 100644
--- a/blink/widgets/lineedit.py
+++ b/blink/widgets/lineedit.py
@@ -68,13 +68,13 @@ def _update_side_widget_locations(self):
text_rect.adjust(spacing, 0, -spacing, 0)
mid_height = text_rect.center().y() + 1 - (text_rect.height() % 2) # need -1 correction for odd heights -Dan
if self.left_layout.count() > 0:
- left_height = mid_height - self.left_widget.height()/2
+ left_height = int(mid_height - self.left_widget.height()/2)
left_width = self.left_widget.width()
if left_width == 0:
- left_height = mid_height - self.left_widget.sizeHint().height()/2
+ left_height = int(mid_height - self.left_widget.sizeHint().height()/2)
self.left_widget.move(text_rect.x(), left_height)
text_rect.setX(self.left_margin)
- text_rect.setY(mid_height - self.right_widget.sizeHint().height()/2.0)
+ text_rect.setY(int(mid_height - self.right_widget.sizeHint().height()/2.0))
text_rect.setHeight(self.right_widget.sizeHint().height())
self.right_widget.setGeometry(text_rect)
@@ -201,8 +201,8 @@ def __init__(self, parent=None, size=16):
def paintEvent(self, event):
painter = QPainter(self)
if self.icon is not None:
- x = (self.width() - self.icon.width()) / 2
- y = (self.height() - self.icon.height()) / 2
+ x = int((self.width() - self.icon.width()) / 2)
+ y = int((self.height() - self.icon.height()) / 2)
painter.drawPixmap(x, y, self.icon)
@@ -232,8 +232,8 @@ def paintEvent(self, event):
painter = QPainter(self)
icon = self.icon_pressed if self.isDown() else self.icon
if icon is not None:
- x = (self.width() - icon.width()) / 2
- y = (self.height() - icon.height()) / 2
+ x = int((self.width() - icon.width()) / 2)
+ y = int((self.height() - icon.height()) / 2)
painter.drawPixmap(x, y, icon)
else:
width = self.width()
diff --git a/blink/widgets/video.py b/blink/widgets/video.py
index eff4f7c..5ecab6a 100644
--- a/blink/widgets/video.py
+++ b/blink/widgets/video.py
@@ -56,7 +56,7 @@ def __init__(self, parent=None, framerate=None):
self.cursors.resize_bottom = QCursor(QIcon(Resources.get('icons/resize-bottom.svg')).pixmap(16), hotX=8, hotY=16)
if framerate is not None:
self._clock = QTimer()
- self._clock.setInterval(1000/framerate)
+ self._clock.setInterval(int(1000/framerate))
self._clock.timeout.connect(self.update)
else:
self._clock = None

View File

@ -3,17 +3,14 @@ Date: Tue Sep 8 10:10:18 UTC 2015
Subject: Fix data path fallback
Upstream: no, correct fix pending since 'sys.prefix' is broken in exherbo
diff --git a/blink/resources.py b/blink/resources.py
index e981ed8..f1f4f5c 100644
--- a/blink/resources.py
+++ b/blink/resources.py
@@ -81,7 +81,7 @@ class Resources(object):
elif os.path.exists(os.path.join(application_directory, 'resources', 'blink.ui')):
cls._cached_directory = os.path.join(application_directory, 'resources')
--- blink-1.4.1/blink/resources.py
+++ blink-1.4.1/blink/resources.py
@@ -71,7 +71,7 @@
if os.path.exists(os.path.join(application_directory, 'resources', 'blink.ui')):
cls._cached_directory = os.path.join(application_directory, 'resources').decode(sys.getfilesystemencoding())
else:
- cls._cached_directory = os.path.join(application_directory, 'share', 'blink')
+ cls._cached_directory = os.path.join('/usr', 'share', 'blink')
- cls._cached_directory = os.path.join(application_directory, 'share', 'blink').decode(sys.getfilesystemencoding())
+ cls._cached_directory = os.path.join('/usr', 'share', 'blink').decode(sys.getfilesystemencoding())
return DirectoryContextManager(cls._cached_directory)
@classmethod

View File

@ -23,9 +23,9 @@ DEPENDENCIES="
x11-proto/xorgproto
build+run:
dev-libs/libev
dev-libs/pcre[>=8.20]
dev-libs/pcre[>=8.10]
x11-libs/libX11
x11-libs/libxcb[>=1.12.0]
x11-libs/libxcb[>=1.9.2]
x11-libs/libXext
x11-libs/pixman:1
x11-utils/xcb-util-image
@ -40,6 +40,7 @@ DEPENDENCIES="
x11-dri/mesa
)
run:
dev-lang/python:*[>3.5] [[ note = [ bin/compton-convgen.py ] ]]
x11-apps/xprop
x11-apps/xwininfo
"
@ -49,9 +50,8 @@ DEFAULT_SRC_INSTALL_EXTRA_DOCS=(
)
MESON_SRC_CONFIGURE_PARAMS=(
"-Dcompton=false"
"-Dunittest=true"
"-Dwith_docs=true"
"-Dbuild_docs=true" # with_docs in "next" branch
)
MESON_SRC_CONFIGURE_OPTION_SWITCHES=(
"dbus"
@ -59,6 +59,13 @@ MESON_SRC_CONFIGURE_OPTION_SWITCHES=(
"opengl"
)
src_prepare() {
meson_src_prepare
# don't install compat symlink
# this script is also broken
echo "#!/bin/sh" > meson/install.sh
}
src_install() {
meson_src_install
option dbus && dodoc -r dbus-examples

View File

@ -0,0 +1,27 @@
Upstream: sent https://github.com/zim-desktop-wiki/zim-desktop-wiki/pull/1261
From 1e63570eb941b985dc70df31043c7f4279c6a935 Mon Sep 17 00:00:00 2001
From: Alexander Kapshuna <kapsh@kap.sh>
Date: Fri, 18 Sep 2020 01:15:16 +0300
Subject: [PATCH] Fix reading preformatted text under Python 3.9
---
zim/formats/__init__.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/zim/formats/__init__.py b/zim/formats/__init__.py
index e1149f7f..f22b0b0b 100644
--- a/zim/formats/__init__.py
+++ b/zim/formats/__init__.py
@@ -822,7 +822,7 @@ class ParseTreeBuilder(Builder):
self._last_char = None
def append(self, tag, attrib=None, text=None):
- attrib = attrib.copy() if attrib is not None else None
+ attrib = attrib.copy() if attrib is not None else {}
if tag in BLOCK_LEVEL:
if text and not text.endswith('\n'):
text += '\n'
--
2.28.0

View File

@ -0,0 +1,239 @@
Upstream: master
From 0c7d355a76236b0c687fb7c59cd974c2c7f35657 Mon Sep 17 00:00:00 2001
From: Robin Lee <cheeselee@fedoraproject.org>
Date: Thu, 10 Sep 2020 21:31:22 +0800
Subject: [PATCH] Replace usage of `getchildren` and `getiterator` with `list`
or `iter`
Methods getchildren() and getiterator() of classes ElementTree and Element in
the ElementTree module have been deprecated since Python 3.2 and removed since
Python 3.9.
Fixes #1258
Closes #1259
---
tests/__init__.py | 2 +-
zim/formats/__init__.py | 44 ++++++++++++++++++++---------------------
zim/gui/pageview.py | 2 +-
3 files changed, 24 insertions(+), 24 deletions(-)
diff --git a/tests/__init__.py b/tests/__init__.py
index 20e5b8df..88f87f87 100644
--- a/tests/__init__.py
+++ b/tests/__init__.py
@@ -559,7 +559,7 @@ class _TestData(object):
tree = etree.ElementTree(file=root + '/tests/data/notebook-wiki.xml')
test_data = []
- for node in tree.getiterator(tag='page'):
+ for node in tree.iter(tag='page'):
name = node.attrib['name']
text = str(node.text.lstrip('\n'))
test_data.append((name, text))
diff --git a/zim/formats/__init__.py b/zim/formats/__init__.py
index 9e00c169..e1149f7f 100644
--- a/zim/formats/__init__.py
+++ b/zim/formats/__init__.py
@@ -262,7 +262,7 @@ class ParseTree(object):
'''Returns True if the tree contains any content at all.'''
root = self._etree.getroot()
return root is not None and (
- bool(root.getchildren()) or (root.text and not root.text.isspace())
+ bool(list(root)) or (root.text and not root.text.isspace())
)
@property
@@ -284,14 +284,14 @@ class ParseTree(object):
myroot = self._etree.getroot()
otherroot = tree._etree.getroot()
if otherroot.text:
- children = myroot.getchildren()
+ children = list(myroot)
if children:
last = children[-1]
last.tail = (last.tail or '') + otherroot.text
else:
myroot.text = (myroot.text or '') + otherroot.text
- for element in otherroot.getchildren():
+ for element in iter(otherroot):
myroot.append(element)
return self
@@ -312,7 +312,7 @@ class ParseTree(object):
# HACK: Force sorting of attrib - else change in python3.8 breaks test cases
# Ensure all attrib are string, else ElementTree fails
- for element in self._etree.getiterator('*'):
+ for element in self._etree.iter('*'):
myattrib = element.attrib.copy()
element.attrib.clear()
for key in sorted(myattrib.keys()):
@@ -342,8 +342,8 @@ class ParseTree(object):
from zim.notebook.page import HRef # XXX
seen = set()
for elt in itertools.chain(
- self._etree.getiterator(LINK),
- self._etree.getiterator(IMAGE)
+ self._etree.iter(LINK),
+ self._etree.iter(IMAGE)
):
href = elt.attrib.get('href')
if href and href not in seen:
@@ -359,7 +359,7 @@ class ParseTree(object):
@returns: yields an unordered list of tag names
'''
seen = set()
- for elt in self._etree.getiterator(TAG):
+ for elt in self._etree.iter(TAG):
name = elt.text
if not name in seen:
seen.add(name)
@@ -367,7 +367,7 @@ class ParseTree(object):
def _get_heading_element(self, level=1):
root = self._etree.getroot()
- children = root.getchildren()
+ children = list(root)
if root.text and not root.text.isspace():
return None
@@ -424,7 +424,7 @@ class ParseTree(object):
'''
root = self._etree.getroot()
roottext = root.text and not root.text.isspace()
- children = root.getchildren()
+ children = list(root)
if children and not roottext:
first = children[0]
@@ -442,7 +442,7 @@ class ParseTree(object):
and a max depth.
'''
path = []
- for heading in self._etree.getiterator('h'):
+ for heading in self._etree.iter('h'):
level = int(heading.attrib['level'])
# find parent header in path using old level
while path and path[-1][0] >= level:
@@ -461,11 +461,11 @@ class ParseTree(object):
adds a '_src_file' attribute to the elements with the full file path.
'''
if notebook is None:
- for element in self._etree.getiterator('img'):
+ for element in self._etree.iter('img'):
filepath = element.attrib['src']
element.attrib['_src_file'] = File(filepath)
else:
- for element in self._etree.getiterator('img'):
+ for element in self._etree.iter('img'):
filepath = element.attrib['src']
element.attrib['_src_file'] = notebook.resolve_file(element.attrib['src'], path)
@@ -473,7 +473,7 @@ class ParseTree(object):
'''Undo effect of L{resolve_images()}, mainly intended for
testing.
'''
- for element in self._etree.getiterator('img'):
+ for element in self._etree.iter('img'):
if '_src_file' in element.attrib:
element.attrib.pop('_src_file')
@@ -481,7 +481,7 @@ class ParseTree(object):
'''Calls encode_url() on all links that contain urls.
See zim.parsing for details. Modifies the parse tree.
'''
- for link in self._etree.getiterator('link'):
+ for link in self._etree.iter('link'):
href = link.attrib['href']
if href and is_url_re.match(href):
link.attrib['href'] = url_encode(href, mode=mode)
@@ -492,7 +492,7 @@ class ParseTree(object):
'''Calls decode_url() on all links that contain urls.
See zim.parsing for details. Modifies the parse tree.
'''
- for link in self._etree.getiterator('link'):
+ for link in self._etree.iter('link'):
href = link.attrib['href']
if href and is_url_re.match(href):
link.attrib['href'] = url_decode(href, mode=mode)
@@ -502,7 +502,7 @@ class ParseTree(object):
def count(self, text):
'''Returns the number of occurences of 'text' in this tree.'''
count = 0
- for element in self._etree.getiterator():
+ for element in self._etree.iter():
if element.text:
count += element.text.count(text)
if element.tail:
@@ -515,7 +515,7 @@ class ParseTree(object):
in this tree.
'''
count = 0
- for element in self._etree.getiterator():
+ for element in self._etree.iter():
if element.text:
newstring, n = regex.subn('', element.text)
count += n
@@ -535,7 +535,7 @@ class ParseTree(object):
elif element.tag in ('li', 'h'):
return True # implicit newline
else:
- children = element.getchildren()
+ children = list(element)
if children:
return self._get_element_ends_with_newline(children[-1]) # recurs
elif element.text:
@@ -586,7 +586,7 @@ class ParseTree(object):
@param tag: tag name
@returns: yields L{Node} objects
'''
- for elt in self._etree.getiterator(tag):
+ for elt in self._etree.iter(tag):
yield Element.new_from_etree(elt)
def replace(self, tag, func):
@@ -932,7 +932,7 @@ class OldParseTreeBuilder(object):
if len(self._stack) > 1 and not (
tag in (IMAGE, OBJECT, HEADDATA, TABLEDATA)
or (self._last.text and not self._last.text.isspace())
- or self._last.getchildren()
+ or bool(list(self._last))
):
# purge empty tags
if self._last.text and self._last.text.isspace():
@@ -940,7 +940,7 @@ class OldParseTreeBuilder(object):
empty = self._stack.pop()
self._stack[-1].remove(empty)
- children = self._stack[-1].getchildren()
+ children = list(self._stack[-1])
if children:
self._last = children[-1]
if not self._last.tail is None:
@@ -1053,7 +1053,7 @@ class OldParseTreeBuilder(object):
def _append_to_previous(self, text):
'''Add text before current element'''
parent = self._stack[-2]
- children = parent.getchildren()[:-1]
+ children = list(parent)[:-1]
if children:
if children[-1].tail:
children[-1].tail = children[-1].tail + text
diff --git a/zim/gui/pageview.py b/zim/gui/pageview.py
index 84fe99b4..c2c29cc5 100644
--- a/zim/gui/pageview.py
+++ b/zim/gui/pageview.py
@@ -857,7 +857,7 @@ class TextBuffer(Gtk.TextBuffer):
if not iter.starts_line():
self.insert_at_cursor('\n')
- for element in node.getchildren():
+ for element in iter(node):
if element.tag in ('p', 'div'):
# No force line start here on purpose
if 'indent' in element.attrib:
--
2.28.0

View File

@ -27,6 +27,7 @@ DEPENDENCIES="
suggestion:
app-text/dvipng [[ note = [ equation plugin ] ]]
app-text/texlive-core [[ note = [ equation plugin ] ]]
dev-libs/zeitgeist:2.0
dev-scm/bzr [[ note = [ version control plugin ] ]]
media-gfx/graphviz [[ note = [ diagram editor plugin ] ]]
media-gfx/ImageMagick [[ note = [ screenshot plugin ] ]]
@ -40,6 +41,11 @@ RESTRICT="test"
WORK=${WORKBASE}/${PNV/_rc/-rc}
DEFAULT_SRC_PREPARE_PATCHES=(
"${FILES}"/Fix-reading-preformatted-text-under-Python-3.9.patch
"${FILES}"/Replace-usage-of-getchildren-and-getiterator-with-li.patch
)
pkg_setup() {
unset DISPLAY # tries to access X socket
}