summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /x11-wm/amiwm
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'x11-wm/amiwm')
-rw-r--r--x11-wm/amiwm/Manifest1
-rw-r--r--x11-wm/amiwm/amiwm-0.21_p2.ebuild58
-rw-r--r--x11-wm/amiwm/files/amiwm-0.20_p48-flex.patch12
-rw-r--r--x11-wm/amiwm/files/amiwm-0.20_p48-gentoo.diff188
-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
7 files changed, 502 insertions, 0 deletions
diff --git a/x11-wm/amiwm/Manifest b/x11-wm/amiwm/Manifest
new file mode 100644
index 000000000000..aa10be5ef13b
--- /dev/null
+++ b/x11-wm/amiwm/Manifest
@@ -0,0 +1 @@
+DIST amiwm0.21pl2.tar.gz 195128 SHA256 7d8f83ae15f04fdc2c188e546bf8233974f5e38f2b4724655128ab7b5351c3df
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..466c8be735b1
--- /dev/null
+++ b/x11-wm/amiwm/amiwm-0.21_p2.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+
+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}
+
+pkg_setup() {
+ tc-export CC
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-gentoo.diff \
+ "${FILESDIR}"/${P}-implicts.patch
+ sed -i -e "s:\$(exec_prefix)/lib:\$(exec_prefix)/$(get_libdir):" \
+ 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() {
+ emake DESTDIR="${D}" install || die
+
+ dodoc README*
+
+ exeinto /etc/X11/Sessions
+ doexe "${T}"/amiwm
+}
diff --git a/x11-wm/amiwm/files/amiwm-0.20_p48-flex.patch b/x11-wm/amiwm/files/amiwm-0.20_p48-flex.patch
new file mode 100644
index 000000000000..c346fbb0bc08
--- /dev/null
+++ b/x11-wm/amiwm/files/amiwm-0.20_p48-flex.patch
@@ -0,0 +1,12 @@
+http://bugs.gentoo.org/110169
+
+--- amiwm/lex.l
++++ amiwm/lex.l
+@@ -6,6 +6,7 @@
+ extern FILE *rcfile;
+ #undef yyin
+ #define yyin rcfile
++#define YY_SKIP_YYWRAP
+ #define yywrap() 1
+ extern int parse_keyword(char *);
+ void fixup_string(char *, char *);
diff --git a/x11-wm/amiwm/files/amiwm-0.20_p48-gentoo.diff b/x11-wm/amiwm/files/amiwm-0.20_p48-gentoo.diff
new file mode 100644
index 000000000000..7b13b66a08aa
--- /dev/null
+++ b/x11-wm/amiwm/files/amiwm-0.20_p48-gentoo.diff
@@ -0,0 +1,188 @@
+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
+
+--- Makefile.in
++++ Makefile.in
+@@ -1,7 +1,6 @@
+ srcdir = @srcdir@
+ VPATH = @srcdir@
+ SHELL = /bin/sh
+-CC = @CC@
+ LEX = @LEX@
+ YACC = @YACC@
+ CFLAGS = @CFLAGS@
+@@ -14,7 +13,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
+@@ -44,8 +43,14 @@
+
+ AMIWM_HOME = $(libdir)/amiwm
+
++.PHONY: yaccs all clean lib lexs
++
++.SUFFIXES: .c
++
+ all : $(PROGS) $(MODULES)
+
++$(OBJS): lexs
++
+ lib :
+ @( cd libami; $(MAKE) libami.a )
+
+@@ -64,71 +69,63 @@
+ ppmtoinfo.o : ppmtoinfo.c
+ $(CC) -c $(CPPFLAGS) $(ALL_CFLAGS) -DAMIWM_HOME=\"$(AMIWM_HOME)\" $<
+
+-gram.h gram.c: gram.y
+- $(YACC) $(YFLAGS) gram.y
+- 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.l > lex.c
+
+-kbdmodule.h kbdmodule.c: kbdmodule.y
+- $(YACC) $(YFLAGS) kbdmodule.y
+- mv y.tab.c kbdmodule.c
+- mv y.tab.h kbdmodule.h
+-
+ kbdlexer.c : kbdlexer.l
+ $(LEX) -t kbdlexer.l > kbdlexer.c
+
+-install : $(PROGS) $(MODULES) Xsession Xsession2 Xinitrc amiwm-init
+- -mkdir -p $(AMIWM_HOME)
+- $(INSTALL) -s requestchoice $(AMIWM_HOME)/requestchoice
+- $(INSTALL) -s 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" = "Background" ]; then \
+- $(INSTALL) $$module $(AMIWM_HOME)/$$module; \
++ $(INSTALL) $$module $(DESTDIR)$(AMIWM_HOME)/$$module; \
+ else \
+- $(INSTALL) -s $$module $(AMIWM_HOME)/$$module; \
++ $(INSTALL) $$module $(DESTDIR)$(AMIWM_HOME)/$$module; \
+ fi \
+ done
+- $(INSTALL) -m 644 system.amiwmrc $(AMIWM_HOME)/system.amiwmrc
+- $(INSTALL) -m 644 def_tool.info $(AMIWM_HOME)/def_tool.info
+- $(INSTALL) -m 644 system.map $(AMIWM_HOME)/system.map
+- $(INSTALL) -m 644 magicwb.map $(AMIWM_HOME)/magicwb.map
+- $(INSTALL) -m 644 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 amiwm-init $(AMIWM_HOME)/amiwm-init
+- $(INSTALL) -s amiwm $(bindir)/amiwm
+- $(INSTALL) -s ppmtoinfo $(bindir)/ppmtoinfo
+- $(RM) $(bindir)/requestchoice
+- $(LN_S) $(AMIWM_HOME)/requestchoice $(bindir)/requestchoice
+- -mkdir -p $(mandir)/man1
+- $(INSTALL) -m 644 amiwm.1 $(mandir)/man1/amiwm.1
++ $(INSTALL) -m 644 system.amiwmrc $(DESTDIR)$(AMIWM_HOME)/system.amiwmrc
++ $(INSTALL) -m 644 def_tool.info $(DESTDIR)$(AMIWM_HOME)/def_tool.info
++ $(INSTALL) -m 644 system.map $(DESTDIR)$(AMIWM_HOME)/system.map
++ $(INSTALL) -m 644 magicwb.map $(DESTDIR)$(AMIWM_HOME)/magicwb.map
++ $(INSTALL) -m 644 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 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 amiwm.1 $(DESTDIR)$(mandir)/man1/amiwm.1
+
+ 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) -m 644 Amilogo.pm $(DT_DIR)/appconfig/icons/C/Amilogo.pm
++ $(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 $(DESTDIR)$(DT_DIR)/appconfig/icons/C/Amilogo.pm
+
+
+ amiwm : $(OBJS) lib
+- $(CC) -o amiwm $(OBJS) $(LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o amiwm $(OBJS) $(LIBS)
+
+ requestchoice : requestchoice.o lib
+- $(CC) -o requestchoice requestchoice.o $(LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o requestchoice requestchoice.o $(LIBS)
+
+ executecmd : executecmd.o lib
+- $(CC) -o executecmd executecmd.o $(LIBS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o executecmd executecmd.o $(LIBS)
+
+ Keyboard : kbdmodule.o kbdlexer.o lib
+- $(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
+
+ clean :
+ $(RM) core $(PROGS) $(LIBAMI) *.o libami/*.o
+--- icc.c
++++ icc.c
+@@ -1,3 +1,4 @@
++#include <string.h>
+ #include "drawinfo.h"
+ #include "screen.h"
+ #include "icc.h"
+--- rc.c
++++ rc.c
+@@ -1,7 +1,7 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <X11/Xmu/CharSet.h>
+-
++#include <string.h>
+ #include "alloc.h"
+ #include "prefs.h"
+ #include "drawinfo.h"
+--- libami/drawinfo.c
++++ libami/drawinfo.c
+@@ -1,7 +1,7 @@
+ #include <X11/Xlib.h>
+ #include <stdio.h>
+ #include <stdlib.h>
+-
++#include <string.h>
+ #include "alloc.h"
+ #include "drawinfo.h"
+
+--- libami/mdscreen.c
++++ libami/mdscreen.c
+@@ -1,3 +1,4 @@
++#include <string.h>
+ #include "libami.h"
+ #include "module.h"
+
+--- libami/error.c
++++ libami/error.c
+@@ -1,4 +1,5 @@
+ #include <stdio.h>
++#include <string.h>
+ #include "libami.h"
+
+ #ifndef AMIGAOS
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..03b9f2fc458b
--- /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><email>maintainer-needed@gentoo.org</email></maintainer>
+ <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>