summaryrefslogtreecommitdiff
path: root/x11-wm/amiwm
diff options
context:
space:
mode:
Diffstat (limited to 'x11-wm/amiwm')
-rw-r--r--x11-wm/amiwm/Manifest8
-rw-r--r--x11-wm/amiwm/amiwm-0.21_p2.ebuild63
-rw-r--r--x11-wm/amiwm/files/amiwm-0.21_p2-flex-2.6.3-fix.patch31
-rw-r--r--x11-wm/amiwm/files/amiwm-0.21_p2-gentoo.diff160
-rw-r--r--x11-wm/amiwm/files/amiwm-0.21_p2-implicts.patch73
-rw-r--r--x11-wm/amiwm/metadata.xml10
6 files changed, 345 insertions, 0 deletions
diff --git a/x11-wm/amiwm/Manifest b/x11-wm/amiwm/Manifest
new file mode 100644
index 000000000000..e7039d587890
--- /dev/null
+++ b/x11-wm/amiwm/Manifest
@@ -0,0 +1,8 @@
+AUX amiwm-0.21_p2-flex-2.6.3-fix.patch 686 SHA256 58dadef7af5fb0d7c58ab91481cffebe32e06e3a0be8a0ef4bfaeaeb48edd183 SHA512 14982dba3c1baf8bbca9daee204c32d3312c2505127bd4e2744eb9348784e927fbf4c2cb7e3f50c84494d62a714313c7bf0762023ad84fdb3707e108e1778693 WHIRLPOOL 01ea0555cb1fcaea70cae7a8ba4ef17c6b8cbc241d9f3f1f028e7d20f12e844f677f2340d6438a82ecdb874c2e956f9cdfbfd700104644fa6b2624d93dd403b6
+AUX amiwm-0.21_p2-gentoo.diff 6030 SHA256 60680ea549e76468d51418d1168c30527696ab8b9b6d97d067422dd8711bcb5e SHA512 0eed752869ab7a46de2925e13e53796d1459d1ce656cd3d96b0367dcb6f17fbb2e98cd58a336e0d6880f9e76ca037c7ac2b91f1670ecc636f5ba8281dc35aa82 WHIRLPOOL a8628b696682f73bfd59c7a5c7e57aefe7a2bca5055399ea63c01578093393a945e93f9fa2fa1d08c97706a684e1521e58e0cabb8d2b00cd932f412deb6f0927
+AUX amiwm-0.21_p2-implicts.patch 1547 SHA256 bd84dba61c5c9fe0c8d1c6a7730d2823230cc0de89d07f2f82c95eeea1b1716b SHA512 19a0983d7de963f75696968918553c362941e437e5f5ebe75ceb0d0b4f28402c00f1df003bd1639ad6001274b670cad97ce1324afa1aae68c1dc93a424422b1a WHIRLPOOL cab8245f0868be39b5c9c0eeb11eb42e01d5d38f64f473e0041d153e87d0d56808ea1854e47dd32aae7fb989e7c4147053f384b7e677d4d08ec41d27d40f8089
+DIST amiwm0.21pl2.tar.gz 195128 SHA256 7d8f83ae15f04fdc2c188e546bf8233974f5e38f2b4724655128ab7b5351c3df SHA512 6504a4fd4c30a571b0c501b46fdc442fcc993c27b4595753f7bfa12a38c0b997a01d939c7a35e6c499aa0f8972bc0fda7cc88a9fe77091f363f8cd5a9e8d50de WHIRLPOOL 180efbcf92a284b2de15f3a815bbbaddacb2fc34bbd3b4b47cde18bfc40c7476c546e09c19516c2a7ce9eafa6b067e8e56511ecc459b3bcae4aaa725e9cead39
+EBUILD amiwm-0.21_p2.ebuild 1262 SHA256 c4703a42c23611ec6cb31b6d24a1ab9e3cd4a082ef0b38bff203d5d2aa44c8eb SHA512 73c2b231bfe238d600d4267595c6a63a24c2481a025f72fc73a2fa6e8145acc19b4eed7f0528bc349430d6adddd8d90e9af7bccc046885bf70aac606507e99a3 WHIRLPOOL 9fba5aa90b963171629a4c92a2e15ea4d37d972ec4c595213fd325b27875a644fc79d04fa9931d988a1f72eaab722ca7f75b0beefd251125e4928bde163e04e9
+MISC ChangeLog 2662 SHA256 7bcb3697faa30e7b9ec70bb2ff6eb79f3ae8419582b38750c33972810f378456 SHA512 67bd8a72a1cf6d1f02c1672c76a5697025ba331c0d8a0c034d81ba032c67f947809bef95570ac0cc240394113e021cd1443bb29367f3870502196966ddd538ff WHIRLPOOL 9f78febd32708d2675f5b1952d98f2cd33c726c8b02d960ddbb80d454310cf981edc5e79fda4267c3080c4fbddc31d0efbde07d6949773cf4c29f8f5500ab42e
+MISC ChangeLog-2015 2059 SHA256 7216a974d32a69ea39047b12a8825d3a713ef27ef7fe309c1ff6b72828ab9550 SHA512 4ed00c8f70b2bff8a39c5a248b4647c2e052dbfaa1df638e1fd07afaa5323c99d40a23a010f30a626b67e6692abdfe6ada4fafa662ef34c14d149f282f4a2f87 WHIRLPOOL 669ebe7cd778fe66aabbbc07d36431bd1430c503731c25d0ca433aa3a3a181f426bc14acc864d7b3c8130e4a54e8f25451d73b2586034ef143ddf22c71675873
+MISC metadata.xml 421 SHA256 fd3f27d05f9bf0c92b95697a4bb104a1a5e0c40412d85a50b9f2672fb0226a40 SHA512 941d314dced43df9951b885f47245c4ca9deff091c8c75727f1cc2b3fcdb485024d4b8e04ebf8d40bebe491bae50522e41ae3cee9f6f600814874f01aae43d90 WHIRLPOOL bf24ca55fe0842f0f6b00c35b01e679ec495ac89f720872d49472ba74c9ac1c79709987b22f936185f642d6c556553e8d86e109348ee96f618adc6af769452e4
diff --git a/x11-wm/amiwm/amiwm-0.21_p2.ebuild b/x11-wm/amiwm/amiwm-0.21_p2.ebuild
new file mode 100644
index 000000000000..3e5a3cf8bacd
--- /dev/null
+++ b/x11-wm/amiwm/amiwm-0.21_p2.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils multilib toolchain-funcs
+
+MY_P=${PN}${PV/_p/pl}
+DESCRIPTION="Windowmanager ala Amiga(R) Workbench(R)"
+HOMEPAGE="http://www.lysator.liu.se/~marcus/amiwm.html"
+SRC_URI="ftp://ftp.lysator.liu.se/pub/X11/wm/${PN}/${MY_P}.tar.gz"
+
+LICENSE="amiwm"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE=""
+
+COMMON_DEPEND="x11-libs/libX11
+ x11-libs/libXmu
+ x11-libs/libXext"
+
+RDEPEND="${COMMON_DEPEND}
+ media-gfx/xloadimage
+ x11-apps/xrdb
+ x11-apps/xsetroot
+ x11-terms/xterm"
+DEPEND="${COMMON_DEPEND}
+ x11-proto/xproto
+ x11-proto/xextproto"
+
+S="${WORKDIR}/${MY_P}"
+
+PATCHES=(
+ "${FILESDIR}/${P}-gentoo.diff"
+ "${FILESDIR}/${P}-implicts.patch"
+ "${FILESDIR}/${P}-flex-2.6.3-fix.patch"
+)
+
+pkg_setup() {
+ tc-export CC
+}
+
+src_prepare() {
+ default
+ sed -e "s:\$(exec_prefix)/lib:\$(exec_prefix)/$(get_libdir):" \
+ -e '/^STRIPFLAG/s@-s@@' \
+ -e '/$(LN_S)/s@$(DESTDIR)$(AMIWM_HOME)@../..$(AMIWM_HOME)@' \
+ -i Makefile.in || die
+ sed -i -e "s:/bin/ksh:/bin/sh:g" Xsession{,2}.in || die
+
+ cat <<- EOF > "${T}"/amiwm
+ #!/bin/sh
+ exec /usr/bin/amiwm
+ EOF
+}
+
+src_install() {
+ local DOCS=( README* )
+ default
+
+ exeinto /etc/X11/Sessions
+ doexe "${T}"/amiwm
+}
diff --git a/x11-wm/amiwm/files/amiwm-0.21_p2-flex-2.6.3-fix.patch b/x11-wm/amiwm/files/amiwm-0.21_p2-flex-2.6.3-fix.patch
new file mode 100644
index 000000000000..ae89aafdae86
--- /dev/null
+++ b/x11-wm/amiwm/files/amiwm-0.21_p2-flex-2.6.3-fix.patch
@@ -0,0 +1,31 @@
+--- amiwm0.21pl2/lex.l
++++ amiwm0.21pl2/lex.l
+@@ -1,5 +1,6 @@
++%option noyywrap
+ %{
+ #include <stdio.h>
+ #include "gram.h"
+ extern char *progname;
+ extern int ParseError;
+--- amiwm0.21pl2/kbdlexer.l
++++ amiwm0.21pl2/kbdlexer.l
+@@ -1,5 +1,6 @@
++%option noyywrap
+ %{
+ #include <X11/Xmu/CharSet.h>
+ #include <string.h>
+
+ #include "libami.h"
+@@ -134,12 +135,9 @@ int parse_keyword(char *str, YYSTYPE *va
+
+ . { fprintf(stderr, "%s: illegal character \"%s\" ignored\n",
+ progname, yytext); }
+ %%
+
+-#ifndef yywrap
+-int yywrap() { return 1; }
+-#endif
+ #undef input
+ #define input() ((*inptr)?(*inptr++):0)
+ #undef unput
+ #define unput(c) (*--inptr=c)
diff --git a/x11-wm/amiwm/files/amiwm-0.21_p2-gentoo.diff b/x11-wm/amiwm/files/amiwm-0.21_p2-gentoo.diff
new file mode 100644
index 000000000000..fa875a4a43bf
--- /dev/null
+++ b/x11-wm/amiwm/files/amiwm-0.21_p2-gentoo.diff
@@ -0,0 +1,160 @@
+Fix parallel build, don't strip binaries, respect CC LDFLAGS, fix install dirs
+Fix incompatible implicit declaration of built-in function {strlen,memset,strcpy}
+
+http://bugs.gentoo.org/show_bug.cgi?id=248680
+http://bugs.gentoo.org/show_bug.cgi?id=299918
+
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -14,7 +14,7 @@
+ exec_prefix = @exec_prefix@
+ bindir = $(exec_prefix)/bin
+ libdir = $(exec_prefix)/lib
+-mandir = $(prefix)/man
++mandir = $(prefix)/share/man
+ INSTALL = @INSTALL@
+ LN_S = @LN_S@
+ RM = -rm -f
+@@ -45,13 +45,19 @@
+
+ AMIWM_HOME = $(libdir)/amiwm
+
++.PHONY: yaccs all clean lib_all lexs
++
++.SUFFIXES: .c
++
+ all : lib_all
+ @$(MAKE) local_all
+
+ local_all : $(PROGS) $(MODULES)
+
++$(OBJS): lexs
++
+ lib_all :
+- @( cd libami; $(MAKE) all )
++ @$(MAKE) -C libami all
+
+ .c.o:
+ $(CC) -c $(CPPFLAGS) $(ALL_CFLAGS) $<
+@@ -71,83 +77,75 @@
+ ppmtoinfo.o : ppmtoinfo.c
+ $(CC) -c $(CPPFLAGS) $(ALL_CFLAGS) -DAMIWM_HOME=\"$(AMIWM_HOME)\" $<
+
+-gram.h gram.c: gram.y
+- $(YACC) $(YFLAGS) $<
+- mv y.tab.c gram.c
+- mv y.tab.h gram.h
++yaccs: gram.c kbdmodule.c
++lexs: yaccs lex.c kbdlexer.c
++
++%.c: %.y
++ $(YACC) $(YFLAGS) $< -o $@
+
+-lex.c : lex.l
+- $(LEX) -t $< > lex.c
+
+-kbdmodule.h kbdmodule.c: kbdmodule.y
+- $(YACC) $(YFLAGS) $<
+- mv y.tab.c kbdmodule.c
+- mv y.tab.h kbdmodule.h
++lex.c : lex.l
++ $(LEX) -t $< > lex.c
+
+ kbdlexer.c : kbdlexer.l
+ $(LEX) -t $< > kbdlexer.c
+
+-install : $(PROGS) $(MODULES) Xsession Xsession2 Xinitrc amiwm-init
+- -mkdir -p $(AMIWM_HOME)
+- $(INSTALL) $(STRIPFLAG) requestchoice $(AMIWM_HOME)/requestchoice
+- $(INSTALL) $(STRIPFLAG) executecmd $(AMIWM_HOME)/executecmd
++install : Xsession Xsession2 Xinitrc amiwm-init
++ $(INSTALL) -D requestchoice $(DESTDIR)$(AMIWM_HOME)/requestchoice
++ $(INSTALL) executecmd $(DESTDIR)$(AMIWM_HOME)/executecmd
+ for module in $(MODULES); do \
+ if [ "$$module" = "$(srcdir)/Background" ]; then \
+- $(INSTALL) $$module $(AMIWM_HOME)/Background; \
++ $(INSTALL) $$module $(DESTDIR)$(AMIWM_HOME)/Background; \
+ else \
+- $(INSTALL) $(STRIPFLAG) $$module $(AMIWM_HOME)/$$module; \
++ $(INSTALL) $(STRIPFLAG) $$module $(DESTDIR)$(AMIWM_HOME)/$$module; \
+ fi; \
+ done
+- $(INSTALL) -m 644 $(srcdir)/system.amiwmrc $(AMIWM_HOME)/system.amiwmrc
+- $(INSTALL) -m 644 $(srcdir)/def_tool.info $(AMIWM_HOME)/def_tool.info
+- $(INSTALL) -m 644 $(srcdir)/system.map $(AMIWM_HOME)/system.map
+- $(INSTALL) -m 644 $(srcdir)/magicwb.map $(AMIWM_HOME)/magicwb.map
+- $(INSTALL) -m 644 $(srcdir)/schwartz.map $(AMIWM_HOME)/schwartz.map
+- $(INSTALL) -m 755 Xsession $(AMIWM_HOME)/Xsession
+- $(INSTALL) -m 755 Xsession2 $(AMIWM_HOME)/Xsession2
+- $(INSTALL) -m 755 Xinitrc $(AMIWM_HOME)/Xinitrc
+- $(INSTALL) -m 755 $(srcdir)/amiwm-init $(AMIWM_HOME)/amiwm-init
+- -mkdir -p $(bindir)
+- $(INSTALL) $(STRIPFLAG) amiwm $(bindir)/amiwm
+- $(INSTALL) $(STRIPFLAG) ppmtoinfo $(bindir)/ppmtoinfo
+- $(RM) $(bindir)/requestchoice
+- $(LN_S) $(AMIWM_HOME)/requestchoice $(bindir)/requestchoice
+- -mkdir -p $(mandir)/man1
+- $(INSTALL) -m 644 $(srcdir)/amiwm.1 $(mandir)/man1/amiwm.1
++ $(INSTALL) -m 644 $(srcdir)/system.amiwmrc $(DESTDIR)$(AMIWM_HOME)/system.amiwmrc
++ $(INSTALL) -m 644 $(srcdir)/def_tool.info $(DESTDIR)$(AMIWM_HOME)/def_tool.info
++ $(INSTALL) -m 644 $(srcdir)/system.map $(DESTDIR)$(AMIWM_HOME)/system.map
++ $(INSTALL) -m 644 $(srcdir)/magicwb.map $(DESTDIR)$(AMIWM_HOME)/magicwb.map
++ $(INSTALL) -m 644 $(srcdir)/schwartz.map $(DESTDIR)$(AMIWM_HOME)/schwartz.map
++ $(INSTALL) -m 755 Xsession $(DESTDIR)$(AMIWM_HOME)/Xsession
++ $(INSTALL) -m 755 Xsession2 $(DESTDIR)$(AMIWM_HOME)/Xsession2
++ $(INSTALL) -m 755 Xinitrc $(DESTDIR)$(AMIWM_HOME)/Xinitrc
++ $(INSTALL) -m 755 $(srcdir)/amiwm-init $(DESTDIR)$(AMIWM_HOME)/amiwm-init
++ $(INSTALL) -D amiwm $(DESTDIR)$(bindir)/amiwm
++ $(INSTALL) ppmtoinfo $(DESTDIR)$(bindir)/ppmtoinfo
++ $(RM) $(DESTDIR)$(bindir)/requestchoice
++ $(LN_S) $(DESTDIR)$(AMIWM_HOME)/requestchoice $(DESTDIR)$(bindir)/requestchoice
++ $(INSTALL) -D -m 644 $(srcdir)/amiwm.1 $(DESTDIR)$(mandir)/man1/amiwm.1
+
+ fs-install : Filesystem
+- $(INSTALL) $(STRIPFLAG) Filesystem $(AMIWM_HOME)/Filesystem
+- $(INSTALL) -m 644 def_disk.info $(AMIWM_HOME)/def_disk.info
+- $(INSTALL) -m 644 def_drawer.info $(AMIWM_HOME)/def_disk.info
++ $(INSTALL) Filesystem $(DESTDIR)$(AMIWM_HOME)/Filesystem
++ $(INSTALL) -m 644 def_disk.info $(DESTDIR)$(AMIWM_HOME)/def_disk.info
++ $(INSTALL) -m 644 def_drawer.info $(DESTDIR)$(AMIWM_HOME)/def_disk.info
+
+ cde-install : Xresources.amiwm Amilogo.bm Amilogo.pm
+- -mkdir -p $(DT_DIR)/config/C/Xresources.d
+- $(INSTALL) -m 644 Xresources.amiwm $(DT_DIR)/config/C/Xresources.d/Xresources.amiwm
+- -mkdir -p $(DT_DIR)/appconfig/icons/C
+- $(INSTALL) -m 644 Amilogo.bm $(DT_DIR)/appconfig/icons/C/Amilogo.bm
++ $(INSTALL) -D -m 644 Xresources.amiwm $(DESTDIR)$(DT_DIR)/config/C/Xresources.d/Xresources.amiwm
++ $(INSTALL) -D -m 644 Amilogo.bm $(DESTDIR)$(DT_DIR)/appconfig/icons/C/Amilogo.bm
+ $(INSTALL) -m 644 Amilogo.pm $(DT_DIR)/appconfig/icons/C/Amilogo.pm
+
+
+ amiwm : $(OBJS) $(LIBAMI)
+- $(CC) -o amiwm $(OBJS) $(LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o amiwm $(OBJS) $(LIBS)
+
+ requestchoice : requestchoice.o $(LIBAMI)
+- $(CC) -o requestchoice requestchoice.o $(LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o requestchoice requestchoice.o $(LIBS)
+
+ executecmd : executecmd.o $(LIBAMI)
+- $(CC) -o executecmd executecmd.o $(LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o executecmd executecmd.o $(LIBS)
+
+ Filesystem : filesystem.o $(LIBAMI)
+- $(CC) -o Filesystem filesystem.o $(LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o Filesystem filesystem.o $(LIBS)
+
+ Keyboard : kbdmodule.o kbdlexer.o $(LIBAMI)
+- $(CC) -o Keyboard kbdmodule.o kbdlexer.o $(LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o Keyboard kbdmodule.o kbdlexer.o $(LIBS)
+
+ ppmtoinfo : ppmtoinfo.o
+- $(CC) -o ppmtoinfo ppmtoinfo.o -lm
++ $(CC) $(CFLAGS) $(LDFLAGS) -o ppmtoinfo ppmtoinfo.o -lm
+
+ localetest : localetest.o $(LIBAMI)
+- $(CC) -o localetest localetest.o $(LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o localetest localetest.o $(LIBS)
+
+ clean :
+ $(RM) core $(PROGS) $(LIBAMI) Keyboard *.o libami/*.o
diff --git a/x11-wm/amiwm/files/amiwm-0.21_p2-implicts.patch b/x11-wm/amiwm/files/amiwm-0.21_p2-implicts.patch
new file mode 100644
index 000000000000..4a01347d0e86
--- /dev/null
+++ b/x11-wm/amiwm/files/amiwm-0.21_p2-implicts.patch
@@ -0,0 +1,73 @@
+--- a/main.c
++++ b/main.c
+@@ -131,6 +131,7 @@
+ extern void read_rc_file(char *filename, int manage_all);
+ extern void init_modules();
+ extern void flushmodules();
++extern void closescreen();
+ extern void raiselowerclient(Client *, int);
+
+ #ifndef AMIGAOS
+--- a/menu.c
++++ b/menu.c
+@@ -45,6 +45,11 @@
+ extern void mod_menuselect(struct module *, int, int, int);
+ extern void setfocus(Window);
+ extern void flushmodules();
++extern void openscreen(char *, Window);
++extern void realizescreens(void);
++extern void screentoback();
++extern void wberror(Scrn *, char *);
++extern void closescreen();
+
+ Scrn *mbdclick=NULL, *mbdscr=NULL;
+
+--- a/icc.c
++++ b/icc.c
+@@ -6,6 +6,7 @@
+ #include "prefs.h"
+
+ #include <string.h>
++#include <stdlib.h>
+
+ #ifdef AMIGAOS
+ #include <pragmas/xlib_pragmas.h>
+--- a/libami/lists.c
++++ b/libami/lists.c
+@@ -1,3 +1,4 @@
++#include <string.h>
+ #include "libami.h"
+
+ #ifndef AMIGAOS
+--- a/kbdmodule.y
++++ b/kbdmodule.y
+@@ -2,6 +2,8 @@
+ #include <stdio.h>
+ #include <string.h>
+ #include "libami.h"
++int yyerror(char *);
++int yylex (void);
+
+ void docmd(XEvent *e, void *callback)
+ {
+--- a/gram.y
++++ b/gram.y
+@@ -8,6 +8,8 @@
+ #include "screen.h"
+ #include "icc.h"
+ #include "style.h"
++int yyerror(char *);
++int yylex (void);
+ extern void set_sys_palette(void);
+ extern void set_mwb_palette(void);
+ extern void set_schwartz_palette(void);
+--- a/ppmtoinfo.c
++++ b/ppmtoinfo.c
+@@ -1,6 +1,7 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <string.h>
++#include <time.h>
+ #ifdef HAVE_UNISTD_H
+ #include <unistd.h>
+ #endif
diff --git a/x11-wm/amiwm/metadata.xml b/x11-wm/amiwm/metadata.xml
new file mode 100644
index 000000000000..722041341d07
--- /dev/null
+++ b/x11-wm/amiwm/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<!-- maintainer-needed -->
+<longdescription>
+ amiwm is an X window manager that tries to make your display look and
+ feel like an Amiga Workbench screen. It is fully functional and can do
+ all the usual window manager stuff, like moving and resizing windows.
+ </longdescription>
+</pkgmetadata>