mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-07-20 04:23:16 -04:00
app-office/sc-im: rewrite fixing automagic deps
This is an almost complete rewrite patching the Makefile for clipboard program control with use flags and replacing automagic dependencies with use flags. Signed-off-by: Dex Conner <cantcuckthis@danwin1210.de>
This commit is contained in:
50
app-office/sc-im/files/sc-im-0.8.2-automagic.patch
Normal file
50
app-office/sc-im/files/sc-im-0.8.2-automagic.patch
Normal file
@@ -0,0 +1,50 @@
|
||||
--- src/Makefile
|
||||
+++ src/Makefile
|
||||
@@ -83,7 +83,7 @@
|
||||
endif
|
||||
|
||||
# Check for gnuplot existance
|
||||
-ifneq (, $(shell which gnuplot))
|
||||
+ifeq ($(PLOTS),yes)
|
||||
CFLAGS += -DGNUPLOT
|
||||
endif
|
||||
|
||||
@@ -116,32 +116,33 @@
|
||||
endif
|
||||
|
||||
# NOTE: libxlsreader (libxls) is required for xls file reading support
|
||||
- ifneq ($(shell pkg-config --exists libxls || echo 'no'),no)
|
||||
+ ifeq ($(XLS),yes)
|
||||
CFLAGS += -DXLS $(shell pkg-config --cflags libxls)
|
||||
LDLIBS += $(shell pkg-config --libs libxls)
|
||||
endif
|
||||
|
||||
# NOTE: libxml and libzip are required for xlsx file import support
|
||||
- ifneq ($(shell pkg-config --exists libzip libxml-2.0 || echo 'no'),no)
|
||||
+ ifeq ($(XML_ZIP),yes)
|
||||
CFLAGS += -DODS -DXLSX $(shell pkg-config --cflags libxml-2.0 libzip)
|
||||
LDLIBS += $(shell pkg-config --libs libxml-2.0 libzip)
|
||||
endif
|
||||
|
||||
# NOTE: libxlsxwriter is required for xlsx file export support
|
||||
- ifneq ($(shell pkg-config --exists xlsxwriter || echo 'no'),no)
|
||||
+ ifeq ($(XLSX),yes)
|
||||
CFLAGS += -DXLSX_EXPORT $(shell pkg-config --cflags xlsxwriter)
|
||||
LDLIBS += $(shell pkg-config --libs xlsxwriter)
|
||||
endif
|
||||
|
||||
# NOTE: lua support
|
||||
- ifneq ($(shell pkg-config --exists lua || echo 'no'),no) # Check for user's default lua
|
||||
+ ifeq ($(LUA),yes)
|
||||
CFLAGS += -DXLUA $(shell pkg-config --cflags lua)
|
||||
ifneq ($(shell uname -s),Darwin)
|
||||
LDLIBS += $(shell pkg-config --libs lua) -Wl,--export-dynamic
|
||||
else
|
||||
LDLIBS += $(shell pkg-config --libs lua) -rdynamic
|
||||
endif
|
||||
- else ifneq ($(shell pkg-config --exists luajit || echo 'no'),no) # If not found, check for luajit
|
||||
+ endif
|
||||
+ ifeq ($(LUAJIT),yes)
|
||||
CFLAGS += -DXLUA $(shell pkg-config --cflags luajit)
|
||||
ifneq ($(shell uname -s),Darwin)
|
||||
LDLIBS += $(shell pkg-config --libs luajit) -Wl,--export-dynamic
|
||||
32
app-office/sc-im/files/sc-im-0.8.2-clipboard.patch
Normal file
32
app-office/sc-im/files/sc-im-0.8.2-clipboard.patch
Normal file
@@ -0,0 +1,32 @@
|
||||
--- src/Makefile
|
||||
+++ src/Makefile
|
||||
@@ -57,8 +57,19 @@
|
||||
#
|
||||
# Choose one of the following commands for copying to different clipboards:
|
||||
# You can later change it at runtime.
|
||||
+ifeq ($(TMUX),yes)
|
||||
+ CFLAGS += -DDEFAULT_COPY_TO_CLIPBOARD_CMD=\""tmux load-buffer"\"
|
||||
+ CFLAGS += -DDEFAULT_PASTE_FROM_CLIPBOARD_CMD=\""tmux show-buffer"\"
|
||||
+else ifeq ($(WAYLAND),yes)
|
||||
+ CFLAGS += -DDEFAULT_COPY_TO_CLIPBOARD_CMD=\""wl-copy <"\"
|
||||
+ CFLAGS += -DDEFAULT_PASTE_FROM_CLIPBOARD_CMD=\""wl-paste"\"
|
||||
+else ifeq ($(X),yes)
|
||||
+ CFLAGS += -DDEFAULT_COPY_TO_CLIPBOARD_CMD=\""xclip -i -selection clipboard <"\"
|
||||
+ CFLAGS += -DDEFAULT_PASTE_FROM_CLIPBOARD_CMD=\""xclip -o -selection clipboard"\"
|
||||
+endif
|
||||
+
|
||||
#to copy to tmux clipboard:
|
||||
-CFLAGS += -DDEFAULT_COPY_TO_CLIPBOARD_CMD=\""tmux load-buffer"\"
|
||||
+#CFLAGS += -DDEFAULT_COPY_TO_CLIPBOARD_CMD=\""tmux load-buffer"\"
|
||||
#to copy to X clipboard:
|
||||
#CFLAGS += -DDEFAULT_COPY_TO_CLIPBOARD_CMD=\""xclip -i -selection clipboard <"\"
|
||||
#to copy to OSX clipboard:
|
||||
@@ -66,7 +77,7 @@
|
||||
#
|
||||
# Choose one of the proposed commands for pasting from different clipboards:
|
||||
# You can later change it at runtime.
|
||||
-CFLAGS += -DDEFAULT_PASTE_FROM_CLIPBOARD_CMD=\""tmux show-buffer"\"
|
||||
+#CFLAGS += -DDEFAULT_PASTE_FROM_CLIPBOARD_CMD=\""tmux show-buffer"\"
|
||||
#CFLAGS += -DDEFAULT_PASTE_FROM_CLIPBOARD_CMD=\""xclip -o -selection clipboard"\"
|
||||
#CFLAGS += -DDEFAULT_PASTE_FROM_CLIPBOARD_CMD=\""pbpaste"\"
|
||||
|
||||
@@ -1,23 +0,0 @@
|
||||
--- src/Makefile
|
||||
+++ src/Makefile
|
||||
@@ -58,16 +58,16 @@
|
||||
# Choose one of the following commands for copying to different clipboards:
|
||||
# You can later change it at runtime.
|
||||
#to copy to tmux clipboard:
|
||||
-#CFLAGS += -DDEFAULT_COPY_TO_CLIPBOARD_CMD=\""tmux load-buffer"\"
|
||||
+CFLAGS += -DDEFAULT_COPY_TO_CLIPBOARD_CMD=\""tmux load-buffer"\"
|
||||
#to copy to X clipboard:
|
||||
-CFLAGS += -DDEFAULT_COPY_TO_CLIPBOARD_CMD=\""xclip -i -selection clipboard <"\"
|
||||
+#CFLAGS += -DDEFAULT_COPY_TO_CLIPBOARD_CMD=\""xclip -i -selection clipboard <"\"
|
||||
#to copy to OSX clipboard:
|
||||
#CFLAGS += -DDEFAULT_COPY_TO_CLIPBOARD_CMD=\""pbcopy <"\"
|
||||
#
|
||||
# Choose one of the proposed commands for pasting from different clipboards:
|
||||
# You can later change it at runtime.
|
||||
-#CFLAGS += -DDEFAULT_PASTE_FROM_CLIPBOARD_CMD=\""tmux show-buffer"\"
|
||||
-CFLAGS += -DDEFAULT_PASTE_FROM_CLIPBOARD_CMD=\""xclip -o -selection clipboard"\"
|
||||
+CFLAGS += -DDEFAULT_PASTE_FROM_CLIPBOARD_CMD=\""tmux show-buffer"\"
|
||||
+#CFLAGS += -DDEFAULT_PASTE_FROM_CLIPBOARD_CMD=\""xclip -o -selection clipboard"\"
|
||||
#CFLAGS += -DDEFAULT_PASTE_FROM_CLIPBOARD_CMD=\""pbpaste"\"
|
||||
|
||||
# Command to open file or link under cursor
|
||||
@@ -7,9 +7,11 @@
|
||||
</maintainer>
|
||||
<use>
|
||||
<flag name='plots'>Add <pkg>sci-visualization/gnuplot</pkg> for plotting support</flag>
|
||||
<flag name='xls'>Add xls/xlsx support</flag>
|
||||
<flag name='ods'>Add <pkg>dev-libs/libzip</pkg> for ods import support</flag>
|
||||
<flag name='xls'>Add xls support</flag>
|
||||
<flag name='xlsx'>Add xlsx support</flag>
|
||||
<flag name='ods'>Add ods import support</flag>
|
||||
<flag name='X'>Use <pkg>x11-misc/xclip</pkg> for clipboard copy/paste</flag>
|
||||
<flag name='tmux'>Use <pkg>app-misc/tmux</pkg> for clipboard copy/paste</flag>
|
||||
<flag name='wayland'>Use <pkg>gui-apps/wl-clipboard</pkg> for clipboard copy/paste</flag>
|
||||
</use>
|
||||
</pkgmetadata>
|
||||
|
||||
@@ -3,6 +3,10 @@
|
||||
|
||||
EAPI=7
|
||||
|
||||
LUA_COMPAT=( lua5-1 luajit )
|
||||
|
||||
inherit lua-single
|
||||
|
||||
DESCRIPTION="Spreadsheet Calculator Improvised -- An ncurses spreadsheet program for terminal"
|
||||
HOMEPAGE="https://github.com/andmarti1424/sc-im"
|
||||
SRC_URI="https://github.com/andmarti1424/sc-im/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
||||
@@ -10,28 +14,35 @@ SRC_URI="https://github.com/andmarti1424/sc-im/archive/v${PV}.tar.gz -> ${P}.tar
|
||||
LICENSE="BSD-4"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="X plots xls lua ods tmux"
|
||||
IUSE="X plots wayland xls xlsx lua ods tmux"
|
||||
REQUIRED_USE="lua? ( ${LUA_REQUIRED_USE} )"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${P}-prefix.patch"
|
||||
"${FILESDIR}/${P}-tmux.patch"
|
||||
"${FILESDIR}/${P}-automagic.patch"
|
||||
"${FILESDIR}/${P}-clipboard.patch"
|
||||
)
|
||||
|
||||
DEPEND="
|
||||
sys-libs/ncurses
|
||||
X? ( x11-misc/xclip )
|
||||
tmux? ( app-misc/tmux )
|
||||
plots? ( sci-visualization/gnuplot )
|
||||
xls? (
|
||||
dev-libs/libxlsxwriter
|
||||
dev-haskell/libxml
|
||||
dev-libs/libzip
|
||||
dev-libs/libxls
|
||||
)
|
||||
|
||||
lua? (
|
||||
dev-lang/lua
|
||||
${LUA_DEPS}
|
||||
)
|
||||
ods? (
|
||||
dev-haskell/libxml
|
||||
dev-libs/libzip
|
||||
)
|
||||
plots? ( sci-visualization/gnuplot )
|
||||
tmux? ( app-misc/tmux )
|
||||
wayland? ( gui-apps/wl-clipboard )
|
||||
X? ( x11-misc/xclip )
|
||||
xls? (
|
||||
dev-libs/libxls
|
||||
)
|
||||
xlsx? (
|
||||
dev-libs/libxlsxwriter
|
||||
dev-haskell/libxml
|
||||
dev-libs/libzip
|
||||
)
|
||||
"
|
||||
@@ -39,8 +50,31 @@ RDEPEND="${DEPEND}"
|
||||
BDEPEND="virtual/pkgconfig"
|
||||
S="${WORKDIR}/${P}/src"
|
||||
|
||||
src_prepare() {
|
||||
eapply "${FILESDIR}/${P}-prefix.patch"
|
||||
use tmux && eapply "${FILESDIR}/${P}-tmux.patch"
|
||||
eapply_user
|
||||
pkg_setup() {
|
||||
export X=$(usex X)
|
||||
export TMUX=$(usex tmux)
|
||||
export WAYLAND=$(usex wayland)
|
||||
export PLOTS=$(usex plots)
|
||||
export XLS=$(usex xls)
|
||||
export XLSX=$(usex xlsx)
|
||||
export LUA=$(usex lua)
|
||||
export JUAJIT=$(usex lua_single_target_luajit)
|
||||
( use xlsx || use ods ) && export XML_ZIP="yes"
|
||||
|
||||
# Prefer wayland support over X, and tmux support over both wayland and X.
|
||||
use wayland && export X="no"
|
||||
use tmux && X="no" && export WAYLAND="no"
|
||||
|
||||
# Notifying the user about which clipboard support is enabled if conflicting flags are set
|
||||
CONFLICTING=$(usex tmux "tmux " "")$(usex wayland "wayland " "")$(usex X "X" "")
|
||||
if ( use tmux && ( use wayland || use X ) ) ; then
|
||||
elog "Conflicting flags for clipboard support are set: ${CONFLICTING}"
|
||||
elog "tmux support has been preferred."
|
||||
elif ( use wayland && use X ) ; then
|
||||
elog "Conflicting flags for clipboard support are set: ${CONFLICTING}"
|
||||
elog "Wayland support has been preferred."
|
||||
fi
|
||||
|
||||
# Run lua setup
|
||||
lua-single_pkg_setup
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user