parent
c78a2e72c6
commit
6cc95b158d
@ -1,4 +1,2 @@
|
||||
DIST nerolinux-3.5.3.1-x86.rpm 17673697 RMD160 fbacf46ef63f4d10e31f4211bf55a3aa0915a282 SHA1 70bd14792e5c4f8bf9edc3bf519bcccf87433e00 SHA256 fd4067306ea330361de4e5ee899dadbdd6d77301d112effcb1c18ab79960bfce
|
||||
DIST nerolinux-3.5.3.1-x86_64.rpm 17860056 RMD160 a023de323e90da40aa34d0dd2dca352928ca08e6 SHA1 4e84c3b9dc7b0cb223a2c239d4adfa1f52737b15 SHA256 9243c66b94663511aa5db8e6baaf762bf959aa6de664bc72cf80d309c45eaa6f
|
||||
DIST nerolinux-4.0.0.0b-x86.rpm 17391650 RMD160 51b8ce13298d78fe58a5694cdc4ddc19deb2e364 SHA1 bee73ba3153ba8373f9a1bab271b971346081546 SHA256 03ec02c35f6f6dce4315d396b79b50031e507194475d2e6e24326f96dbfe9465
|
||||
DIST nerolinux-4.0.0.0b-x86_64.rpm 17559298 RMD160 ee8b17818e612b1a01a2874c6fd2ee1c161eb729 SHA1 7a62fbc3f54b14f6efdbbf3a844783c2aad70f2d SHA256 a68101eca1095cf523cd7cb39132f5c0b2ae98cc7fe0a8d89590285b59e78965
|
||||
|
@ -1,81 +0,0 @@
|
||||
# Copyright 1999-2009 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-cdr/nero/nero-3.5.3.1.ebuild,v 1.2 2009/08/31 21:49:52 ikelos Exp $
|
||||
|
||||
EAPI=2
|
||||
inherit eutils fdo-mime rpm multilib gnome2-utils linux-mod
|
||||
|
||||
DESCRIPTION="Nero Burning ROM for Linux"
|
||||
HOMEPAGE="http://nerolinux.nero.com"
|
||||
SRC_URI="x86? ( mirror://${PN}/${PN}linux-${PV}-x86.rpm )
|
||||
amd64? ( mirror://${PN}/${PN}linux-${PV}-x86_64.rpm )"
|
||||
|
||||
LICENSE="Nero-EULA-US"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="doc"
|
||||
|
||||
RDEPEND="x11-libs/libX11
|
||||
x11-libs/pango[X]
|
||||
>=x11-libs/gtk+-2:2"
|
||||
DEPEND=""
|
||||
|
||||
PROPERTIES="interactive"
|
||||
RESTRICT="strip mirror test"
|
||||
CONFIG_CHECK="~CHR_DEV_SG"
|
||||
QA_TEXTRELS="opt/nero/$(get_libdir)/nero/*"
|
||||
QA_EXECSTACK="opt/nero/$(get_libdir)/nero/*"
|
||||
S=${WORKDIR}
|
||||
|
||||
pkg_setup() {
|
||||
check_license
|
||||
}
|
||||
|
||||
src_install() {
|
||||
insinto /etc
|
||||
doins -r etc/nero || die "doins failed"
|
||||
|
||||
insinto /opt/nero
|
||||
doins -r usr/$(get_libdir) || die "doins failed"
|
||||
dosym /opt/nero/$(get_libdir)/nero /usr/$(get_libdir)/nero || die "dosym failed"
|
||||
|
||||
exeinto /opt/nero
|
||||
doexe usr/bin/nero* || die "doexe failed"
|
||||
|
||||
insinto /usr/share
|
||||
doins -r usr/share/nero usr/share/locale usr/share/icons || die "doins failed"
|
||||
|
||||
domenu usr/share/applications/nerolinux.desktop
|
||||
doicon usr/share/pixmaps/nerolinux.xpm
|
||||
dodoc usr/share/doc/nero/NEWS
|
||||
doman usr/share/man/man1/*
|
||||
use doc && dodoc usr/share/doc/nero/*.pdf
|
||||
|
||||
make_wrapper nero ./nero /opt/nero /opt/${PN}/$(get_libdir)
|
||||
make_wrapper nerocmd ./nerocmd /opt/nero /opt/nero/$(get_libdir)
|
||||
|
||||
# This is a ugly hack to fix burning in x86_64.
|
||||
# http://club.cdfreaks.com/showthread.php?t=218041
|
||||
use amd64 && cp usr/share/nero/Nero*.txt "${D}"/opt/nero/$(get_libdir)/nero
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
gnome2_icon_savelist
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
fdo-mime_desktop_database_update
|
||||
fdo-mime_mime_database_update
|
||||
gnome2_icon_cache_update
|
||||
|
||||
elog "Technical support for NeroLINUX is provided by CDFreaks"
|
||||
elog "Linux forum at http://club.cdfreaks.com/forumdisplay.php?f=104"
|
||||
elog
|
||||
elog "You also need to setup your user to cdrom group."
|
||||
}
|
||||
|
||||
pkg_postrm() {
|
||||
fdo-mime_desktop_database_update
|
||||
fdo-mime_mime_database_update
|
||||
gnome2_icon_cache_update
|
||||
}
|
@ -1,2 +1,3 @@
|
||||
DIST gummi-0.5.8-2.tar.gz 394256 RMD160 b4ad4daeda6caf5f9600072606305da7ec0c4e2d SHA1 43d5793cb99be7c734f2da9d76989f5a805b6b34 SHA256 df3d2abf64be6c0b2b6debf1fea57ffddd2faa57022bcb557211d717ae681080
|
||||
DIST gummi-0.6.0.tar.gz 495854 RMD160 fda103df3b69044a964a1e9dcb8561fa02d88df3 SHA1 6e6e3e790715efda49859e5a75a8c54f773c5c76 SHA256 7a8b54394fe5f56e9e142672889363ba2e0f6b9f28de3dfcbe53930f83a19485
|
||||
DIST gummi-0.6.1.tar.gz 499416 RMD160 c839517a14b405d61e647db4e968071305fa2348 SHA1 9e03f704fa44e39b0cbd14afd1b73d79375cd3a4 SHA256 d682f880a6566983d949632e3176da7df9e67e2079723511b3065551f1525547
|
||||
|
@ -0,0 +1,44 @@
|
||||
# Copyright 1999-2011 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-editors/gummi/gummi-0.6.1.ebuild,v 1.1 2011/12/02 18:30:50 hwoarang Exp $
|
||||
|
||||
EAPI=4
|
||||
inherit base eutils
|
||||
|
||||
DESCRIPTION="Simple LaTeX editor for GTK+"
|
||||
HOMEPAGE="http://gummi.midnightcoding.org"
|
||||
SRC_URI="http://dev.midnightcoding.org/redmine/attachments/download/217/${P}.tar.gz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE=""
|
||||
|
||||
LANGS="ar ca cs da de el es fr it nl pl pt pt_BR ro ru sv zh_TW"
|
||||
|
||||
for X in ${LANGS} ; do
|
||||
IUSE="${IUSE} linguas_${X}"
|
||||
done
|
||||
|
||||
RDEPEND="app-text/gtkspell:2
|
||||
>=dev-libs/glib-2.28.6
|
||||
dev-texlive/texlive-latex
|
||||
dev-texlive/texlive-latexextra
|
||||
>=x11-libs/gtk+-2.24:2
|
||||
x11-libs/gtksourceview:2.0"
|
||||
DEPEND="${RDEPEND}
|
||||
app-text/poppler[cairo]
|
||||
x11-libs/gtksourceview:2.0
|
||||
x11-libs/pango"
|
||||
|
||||
DOCS=( AUTHORS ChangeLog README )
|
||||
|
||||
src_prepare() {
|
||||
strip-linguas ${LANGS}
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
elog "Gummi >=0.4.8 supports spell-checking through gtkspell. Support for"
|
||||
elog "additional languages can be added by installing myspell-** packages"
|
||||
elog "for your language of choice."
|
||||
}
|
@ -0,0 +1,108 @@
|
||||
# Copyright 1999-2011 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-editors/padre/padre-0.920.0.ebuild,v 1.1 2011/12/02 19:42:55 tove Exp $
|
||||
|
||||
EAPI=4
|
||||
|
||||
MY_PN=Padre
|
||||
MODULE_AUTHOR=PLAVEN
|
||||
MODULE_VERSION=0.92
|
||||
inherit perl-module
|
||||
|
||||
DESCRIPTION="Perl Application Development and Refactoring Environment"
|
||||
HOMEPAGE="http://padre.perlide.org/"
|
||||
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE=""
|
||||
|
||||
# Test Deps
|
||||
TDEPEND="
|
||||
>=dev-perl/Test-MockObject-1.09
|
||||
>=dev-perl/Test-Script-1.07
|
||||
>=dev-perl/Test-Exception-0.27
|
||||
>=dev-perl/Test-NoWarnings-0.084
|
||||
>=virtual/perl-Test-Simple-0.88
|
||||
"
|
||||
|
||||
# Depend on perl-5.10.1 but it only needs
|
||||
# a modern EU::MM
|
||||
# >=virtual/perl-Pod-Perldoc-3.15
|
||||
RDEPEND="
|
||||
>=dev-lang/perl-5.10.1
|
||||
>=dev-perl/Algorithm-Diff-1.190.0
|
||||
>=dev-perl/Capture-Tiny-0.06
|
||||
>=dev-perl/Class-Adapter-1.05
|
||||
>=dev-perl/Class-Inspector-1.22
|
||||
>=dev-perl/Class-XSAccessor-1.05
|
||||
>=dev-perl/DBD-SQLite-1.27
|
||||
>=dev-perl/DBI-1.58
|
||||
>=dev-perl/Devel-Dumpvar-0.04
|
||||
>=dev-perl/Debug-Client-0.11
|
||||
>=dev-perl/Devel-Refactor-0.05
|
||||
>=dev-perl/File-Copy-Recursive-0.37
|
||||
>=dev-perl/File-Find-Rule-0.30
|
||||
>=dev-perl/File-HomeDir-0.91
|
||||
>=virtual/perl-File-Path-2.08
|
||||
>=dev-perl/File-Remove-1.40
|
||||
>=dev-perl/File-ShareDir-1.00
|
||||
dev-perl/File-Slurp
|
||||
>=virtual/perl-File-Spec-3.27.01
|
||||
>=virtual/perl-File-Temp-0.20
|
||||
>=dev-perl/File-Which-1.08
|
||||
dev-perl/File-pushd
|
||||
>=dev-perl/Format-Human-Bytes-0.06
|
||||
virtual/perl-Getopt-Long
|
||||
>=dev-perl/HTML-Parser-3.58
|
||||
>=dev-perl/IO-stringy-2.110
|
||||
virtual/perl-IO
|
||||
>=dev-perl/IO-String-1.08
|
||||
>=dev-perl/IPC-Run-0.83
|
||||
>=dev-perl/JSON-XS-2.2.9
|
||||
>=virtual/perl-Scalar-List-Utils-1.18
|
||||
>=dev-perl/libwww-perl-5.815
|
||||
>=dev-perl/List-MoreUtils-0.22
|
||||
>=dev-perl/Locale-Msgfmt-0.15
|
||||
>=dev-perl/Module-Manifest-0.07
|
||||
>=dev-perl/ORLite-1.48
|
||||
>=dev-perl/ORLite-Migrate-1.80.0
|
||||
>=dev-perl/PAR-0.989
|
||||
>=dev-perl/Params-Util-0.33
|
||||
>=dev-perl/Parse-ErrorString-Perl-0.14
|
||||
>=dev-perl/Parse-ExuberantCTags-1.00
|
||||
>=dev-perl/Pod-Abstract-0.16
|
||||
>=dev-perl/Pod-POM-0.17
|
||||
>=virtual/perl-Pod-Simple-3.07
|
||||
>=dev-perl/PPI-1.205
|
||||
>=dev-perl/PPIx-EditorTools-0.130.0
|
||||
>=dev-perl/PPIx-Regexp-0.011
|
||||
dev-perl/Probe-Perl
|
||||
>=dev-perl/Sort-Versions-1.500.0
|
||||
>=virtual/perl-Storable-2.16
|
||||
>=dev-perl/Template-Tiny-0.11
|
||||
>=virtual/perl-Text-Balanced-0.80
|
||||
>=dev-perl/Text-Diff-1.410.0
|
||||
>=dev-perl/Text-FindIndent-0.10
|
||||
>=dev-perl/Text-Patch-1.800.0
|
||||
>=virtual/perl-threads-1.71
|
||||
>=virtual/perl-threads-shared-1.33
|
||||
>=virtual/perl-Time-HiRes-1.97.18
|
||||
>=dev-perl/URI-0
|
||||
>=dev-perl/wxperl-0.990.100
|
||||
>=dev-perl/Wx-Perl-ProcessStream-0.28
|
||||
>=dev-perl/Wx-Scintilla-0.340.0
|
||||
>=dev-perl/YAML-Tiny-1.32
|
||||
>=virtual/perl-version-0.79
|
||||
"
|
||||
DEPEND="${RDEPEND}"
|
||||
# test? (
|
||||
# ${TDEPEND}
|
||||
# )
|
||||
#"
|
||||
|
||||
#SRC_TEST=do
|
||||
|
||||
src_configure() {
|
||||
unset DISPLAY
|
||||
perl-module_src_configure
|
||||
}
|
@ -1,13 +0,0 @@
|
||||
http://bugs.gentoo.org/260726
|
||||
|
||||
--- wine-1.1.15/configure
|
||||
+++ wine-1.1.15/configure
|
||||
@@ -3943,7 +3943,7 @@
|
||||
$as_echo "$wine_cv_toolsdir" >&6; }
|
||||
TOOLSDIR=$wine_cv_toolsdir
|
||||
|
||||
-if test -n "$host_alias"
|
||||
+if test -n "$host_alias" -a "$host_alias" != "$build_alias"
|
||||
then
|
||||
TARGETFLAGS="-b $host_alias $TARGETFLAGS"
|
||||
|
@ -1,594 +0,0 @@
|
||||
http://bugs.winehq.org/show_bug.cgi?id=6971
|
||||
|
||||
diff --git a/configure b/configure
|
||||
index 9b1cb22..05baa8d 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -7972,6 +7972,7 @@ fi
|
||||
X11/Xcursor/Xcursor.h \
|
||||
X11/extensions/shape.h \
|
||||
X11/extensions/XInput.h \
|
||||
+ X11/extensions/XInput2.h \
|
||||
X11/extensions/XShm.h \
|
||||
X11/extensions/Xcomposite.h \
|
||||
X11/extensions/Xinerama.h \
|
||||
@@ -8168,6 +8169,61 @@ This is an error since --with-xinput was requested." "$LINENO" 5 ;;
|
||||
esac
|
||||
fi
|
||||
|
||||
+ if test "$ac_cv_header_X11_extensions_XInput2_h" = "yes"
|
||||
+ then
|
||||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XIQueryVersion in -lXi" >&5
|
||||
+$as_echo_n "checking for XIQueryVersion in -lXi... " >&6; }
|
||||
+if test "${ac_cv_lib_Xi_XIQueryVersion+set}" = set; then :
|
||||
+ $as_echo_n "(cached) " >&6
|
||||
+else
|
||||
+ ac_check_lib_save_LIBS=$LIBS
|
||||
+LIBS="-lXi $X_LIBS $XLIB $X_EXTRA_LIBS $LIBS"
|
||||
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
+/* end confdefs.h. */
|
||||
+
|
||||
+/* Override any GCC internal prototype to avoid an error.
|
||||
+ Use char because int might match the return type of a GCC
|
||||
+ builtin and then its argument prototype would still apply. */
|
||||
+#ifdef __cplusplus
|
||||
+extern "C"
|
||||
+#endif
|
||||
+char XIQueryVersion ();
|
||||
+int
|
||||
+main ()
|
||||
+{
|
||||
+return XIQueryVersion ();
|
||||
+ ;
|
||||
+ return 0;
|
||||
+}
|
||||
+_ACEOF
|
||||
+if ac_fn_c_try_link "$LINENO"; then :
|
||||
+ ac_cv_lib_Xi_XIQueryVersion=yes
|
||||
+else
|
||||
+ ac_cv_lib_Xi_XIQueryVersion=no
|
||||
+fi
|
||||
+rm -f core conftest.err conftest.$ac_objext \
|
||||
+ conftest$ac_exeext conftest.$ac_ext
|
||||
+LIBS=$ac_check_lib_save_LIBS
|
||||
+fi
|
||||
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xi_XIQueryVersion" >&5
|
||||
+$as_echo "$ac_cv_lib_Xi_XIQueryVersion" >&6; }
|
||||
+if test "x$ac_cv_lib_Xi_XIQueryVersion" = x""yes; then :
|
||||
+
|
||||
+$as_echo "#define HAVE_LIBXINPUT2 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+
|
||||
+
|
||||
+ fi
|
||||
+ if test "$ac_cv_lib_Xi_XIQueryVersion" != "yes"; then :
|
||||
+ case "x$with_xinput2" in
|
||||
+ x) as_fn_append wine_notices "|libxi ${notice_platform}development files not found, the Xinput2 extension won't be supported." ;;
|
||||
+ xno) ;;
|
||||
+ *) as_fn_error "libxi ${notice_platform}development files not found, the Xinput2 extension won't be supported.
|
||||
+This is an error since --with-xinput2 was requested." "$LINENO" 5 ;;
|
||||
+esac
|
||||
+fi
|
||||
+
|
||||
if test "$ac_cv_header_X11_extensions_XShm_h" = "yes"
|
||||
then
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for XShmQueryExtension in -lXext" >&5
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 04ed14f..0d4410a 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -897,6 +897,7 @@ then
|
||||
X11/Xcursor/Xcursor.h \
|
||||
X11/extensions/shape.h \
|
||||
X11/extensions/XInput.h \
|
||||
+ X11/extensions/XInput2.h \
|
||||
X11/extensions/XShm.h \
|
||||
X11/extensions/Xcomposite.h \
|
||||
X11/extensions/Xinerama.h \
|
||||
@@ -935,6 +936,17 @@ then
|
||||
WINE_NOTICE_WITH(xinput,[test "x$ac_cv_lib_soname_Xi" = "x"],
|
||||
[libxi ${notice_platform}development files not found, the Xinput extension won't be supported.])
|
||||
|
||||
+ dnl *** Check for X input 2 extension
|
||||
+ if test "$ac_cv_header_X11_extensions_XInput2_h" = "yes"
|
||||
+ then
|
||||
+ AC_CHECK_LIB(Xi, XIQueryVersion,
|
||||
+ AC_DEFINE(HAVE_LIBXINPUT2, 1, [Define if you have the XInput 2 extension]),,
|
||||
+ $X_LIBS $XLIB $X_EXTRA_LIBS)
|
||||
+
|
||||
+ fi
|
||||
+ WINE_NOTICE_WITH(xinput2,[test "$ac_cv_lib_Xi_XIQueryVersion" != "yes"],
|
||||
+ [libxi ${notice_platform}development files not found, the Xinput2 extension won't be supported.])
|
||||
+
|
||||
dnl *** Check for X Shm extension
|
||||
if test "$ac_cv_header_X11_extensions_XShm_h" = "yes"
|
||||
then
|
||||
diff --git a/dlls/dinput/dinput_main.c b/dlls/dinput/dinput_main.c
|
||||
index 06971db..c86ae97 100644
|
||||
--- a/dlls/dinput/dinput_main.c
|
||||
+++ b/dlls/dinput/dinput_main.c
|
||||
@@ -85,6 +85,16 @@ static const struct dinput_device *dinput_devices[] =
|
||||
#define NB_DINPUT_DEVICES (sizeof(dinput_devices)/sizeof(dinput_devices[0]))
|
||||
|
||||
static HINSTANCE DINPUT_instance = NULL;
|
||||
+static int(*wine_xinput_acquire)(int,HOOKPROC);
|
||||
+
|
||||
+static void dinput_init( HINSTANCE inst )
|
||||
+{
|
||||
+ HMODULE x11 = GetModuleHandleA("winex11.drv");
|
||||
+
|
||||
+ DINPUT_instance = inst;
|
||||
+ if (x11)
|
||||
+ wine_xinput_acquire = (void *)GetProcAddress(x11, "wine_xinput_acquire");
|
||||
+}
|
||||
|
||||
BOOL WINAPI DllMain( HINSTANCE inst, DWORD reason, LPVOID reserv)
|
||||
{
|
||||
@@ -92,7 +102,7 @@ BOOL WINAPI DllMain( HINSTANCE inst, DWORD reason, LPVOID reserv)
|
||||
{
|
||||
case DLL_PROCESS_ATTACH:
|
||||
DisableThreadLibraryCalls(inst);
|
||||
- DINPUT_instance = inst;
|
||||
+ dinput_init(inst);
|
||||
break;
|
||||
case DLL_PROCESS_DETACH:
|
||||
break;
|
||||
@@ -882,6 +892,28 @@ HRESULT WINAPI DllGetClassObject(REFCLSID rclsid, REFIID riid, LPVOID *ppv)
|
||||
* DInput hook thread
|
||||
*/
|
||||
|
||||
+static LRESULT CALLBACK LL_hook_proc_xi2( int code, WPARAM wparam, LPARAM lparam )
|
||||
+{
|
||||
+ IDirectInputImpl *dinput;
|
||||
+
|
||||
+ EnterCriticalSection( &dinput_hook_crit );
|
||||
+ LIST_FOR_EACH_ENTRY( dinput, &direct_input_list, IDirectInputImpl, entry )
|
||||
+ {
|
||||
+ IDirectInputDeviceImpl *dev;
|
||||
+
|
||||
+ EnterCriticalSection( &dinput->crit );
|
||||
+ LIST_FOR_EACH_ENTRY( dev, &dinput->devices_list, IDirectInputDeviceImpl, entry )
|
||||
+ if (dev->acquired && dev->event_proc)
|
||||
+ {
|
||||
+ TRACE("calling %p->%p (%lx %lx)\n", dev, dev->event_proc, wparam, lparam);
|
||||
+ dev->event_proc( (LPDIRECTINPUTDEVICE8A)dev, wparam, lparam );
|
||||
+ }
|
||||
+ LeaveCriticalSection( &dinput->crit );
|
||||
+ }
|
||||
+ LeaveCriticalSection( &dinput_hook_crit );
|
||||
+ return 1;
|
||||
+}
|
||||
+
|
||||
static LRESULT CALLBACK LL_hook_proc( int code, WPARAM wparam, LPARAM lparam )
|
||||
{
|
||||
IDirectInputImpl *dinput;
|
||||
@@ -1003,12 +1035,15 @@ static DWORD WINAPI hook_thread_proc(void *param)
|
||||
kbd_hook = NULL;
|
||||
}
|
||||
|
||||
- if (mice_cnt && !mouse_hook)
|
||||
- mouse_hook = SetWindowsHookExW( WH_MOUSE_LL, LL_hook_proc, DINPUT_instance, 0 );
|
||||
- else if (!mice_cnt && mouse_hook)
|
||||
+ if (!wine_xinput_acquire( (mice_cnt ? 2 : 0) , LL_hook_proc_xi2 ))
|
||||
{
|
||||
- UnhookWindowsHookEx( mouse_hook );
|
||||
- mouse_hook = NULL;
|
||||
+ if (mice_cnt && !mouse_hook)
|
||||
+ mouse_hook = SetWindowsHookExW( WH_MOUSE_LL, LL_hook_proc, DINPUT_instance, 0 );
|
||||
+ else if (!mice_cnt && mouse_hook)
|
||||
+ {
|
||||
+ UnhookWindowsHookEx( mouse_hook );
|
||||
+ mouse_hook = NULL;
|
||||
+ }
|
||||
}
|
||||
}
|
||||
TranslateMessage(&msg);
|
||||
diff --git a/dlls/dinput/mouse.c b/dlls/dinput/mouse.c
|
||||
index 1599157..7390c01 100644
|
||||
--- a/dlls/dinput/mouse.c
|
||||
+++ b/dlls/dinput/mouse.c
|
||||
@@ -304,7 +304,10 @@ static int dinput_mouse_hook( LPDIRECTINPUTDEVICE8A iface, WPARAM wparam, LPARAM
|
||||
{
|
||||
POINT pt, pt1;
|
||||
|
||||
- GetCursorPos(&pt);
|
||||
+ if (hook->flags & 2)
|
||||
+ pt.x = pt.y = 0;
|
||||
+ else
|
||||
+ GetCursorPos(&pt);
|
||||
This->m_state.lX += pt.x = hook->pt.x - pt.x;
|
||||
This->m_state.lY += pt.y = hook->pt.y - pt.y;
|
||||
|
||||
@@ -330,7 +333,8 @@ static int dinput_mouse_hook( LPDIRECTINPUTDEVICE8A iface, WPARAM wparam, LPARAM
|
||||
wdata = pt1.y;
|
||||
}
|
||||
|
||||
- This->need_warp = This->warp_override != WARP_DISABLE &&
|
||||
+ This->need_warp = !(hook->flags & 2) &&
|
||||
+ This->warp_override != WARP_DISABLE &&
|
||||
(pt.x || pt.y) &&
|
||||
(dwCoop & DISCL_EXCLUSIVE || This->warp_override == WARP_FORCE_ON);
|
||||
break;
|
||||
diff --git a/dlls/winex11.drv/event.c b/dlls/winex11.drv/event.c
|
||||
index ae0875b..bc9dedf 100644
|
||||
--- a/dlls/winex11.drv/event.c
|
||||
+++ b/dlls/winex11.drv/event.c
|
||||
@@ -141,9 +141,10 @@ static struct event_handler handlers[MAX_EVENT_HANDLERS] =
|
||||
/* ColormapNotify */
|
||||
{ ClientMessage, X11DRV_ClientMessage },
|
||||
{ MappingNotify, X11DRV_MappingNotify },
|
||||
+ { GenericEvent, X11DRV_GenericEvent },
|
||||
};
|
||||
|
||||
-static int nb_event_handlers = 20; /* change this if you add handlers above */
|
||||
+static int nb_event_handlers = 21; /* change this if you add handlers above */
|
||||
|
||||
|
||||
/* return the name of an X event */
|
||||
diff --git a/dlls/winex11.drv/mouse.c b/dlls/winex11.drv/mouse.c
|
||||
index 71b31cc..61eb7dc 100644
|
||||
--- a/dlls/winex11.drv/mouse.c
|
||||
+++ b/dlls/winex11.drv/mouse.c
|
||||
@@ -22,23 +22,10 @@
|
||||
#include "config.h"
|
||||
#include "wine/port.h"
|
||||
|
||||
-#include <X11/Xlib.h>
|
||||
+#include <stdlib.h>
|
||||
#include <X11/cursorfont.h>
|
||||
#include <stdarg.h>
|
||||
-
|
||||
-#ifdef SONAME_LIBXCURSOR
|
||||
-# include <X11/Xcursor/Xcursor.h>
|
||||
-static void *xcursor_handle;
|
||||
-# define MAKE_FUNCPTR(f) static typeof(f) * p##f
|
||||
-MAKE_FUNCPTR(XcursorImageCreate);
|
||||
-MAKE_FUNCPTR(XcursorImageDestroy);
|
||||
-MAKE_FUNCPTR(XcursorImageLoadCursor);
|
||||
-MAKE_FUNCPTR(XcursorImagesCreate);
|
||||
-MAKE_FUNCPTR(XcursorImagesDestroy);
|
||||
-MAKE_FUNCPTR(XcursorImagesLoadCursor);
|
||||
-MAKE_FUNCPTR(XcursorLibraryLoadCursor);
|
||||
-# undef MAKE_FUNCPTR
|
||||
-#endif /* SONAME_LIBXCURSOR */
|
||||
+#include <assert.h>
|
||||
|
||||
#define NONAMELESSUNION
|
||||
#define NONAMELESSSTRUCT
|
||||
@@ -53,6 +40,39 @@ MAKE_FUNCPTR(XcursorLibraryLoadCursor);
|
||||
#include "wine/unicode.h"
|
||||
#include "wine/debug.h"
|
||||
|
||||
+#include <X11/Xlib.h>
|
||||
+
|
||||
+#define MAKE_FUNCPTR(f) static typeof(f) * p##f
|
||||
+
|
||||
+#ifdef SONAME_LIBXCURSOR
|
||||
+# include <X11/Xcursor/Xcursor.h>
|
||||
+static void *xcursor_handle;
|
||||
+MAKE_FUNCPTR(XcursorImageCreate);
|
||||
+MAKE_FUNCPTR(XcursorImageDestroy);
|
||||
+MAKE_FUNCPTR(XcursorImageLoadCursor);
|
||||
+MAKE_FUNCPTR(XcursorImagesCreate);
|
||||
+MAKE_FUNCPTR(XcursorImagesDestroy);
|
||||
+MAKE_FUNCPTR(XcursorImagesLoadCursor);
|
||||
+MAKE_FUNCPTR(XcursorLibraryLoadCursor);
|
||||
+#endif /* SONAME_LIBXCURSOR */
|
||||
+
|
||||
+#ifdef HAVE_LIBXINPUT2
|
||||
+# include <X11/extensions/XInput2.h>
|
||||
+static void *xinput2_handle;
|
||||
+static int xinput2_opcode;
|
||||
+static int xinput2_available;
|
||||
+static int core_pointer_id;
|
||||
+MAKE_FUNCPTR(XQueryExtension);
|
||||
+MAKE_FUNCPTR(XIQueryVersion);
|
||||
+MAKE_FUNCPTR(XISelectEvents);
|
||||
+MAKE_FUNCPTR(XGetEventData);
|
||||
+MAKE_FUNCPTR(XFreeEventData);
|
||||
+MAKE_FUNCPTR(XIQueryDevice);
|
||||
+MAKE_FUNCPTR(XIFreeDeviceInfo);
|
||||
+#endif /* HAVE_LIBXINPUT2 */
|
||||
+
|
||||
+#undef MAKE_FUNCPTR
|
||||
+
|
||||
WINE_DEFAULT_DEBUG_CHANNEL(cursor);
|
||||
|
||||
/**********************************************************************/
|
||||
@@ -130,6 +150,67 @@ void X11DRV_Xcursor_Init(void)
|
||||
#endif /* SONAME_LIBXCURSOR */
|
||||
}
|
||||
|
||||
+void X11DRV_XInput2_Init(void)
|
||||
+{
|
||||
+#ifdef HAVE_LIBXINPUT2
|
||||
+ int event_base, error_base, ret;
|
||||
+ int major = 2, minor = 0; /* Need at least v2.0 extension */
|
||||
+ char msg[1024];
|
||||
+
|
||||
+ xinput2_handle = wine_dlopen(SONAME_LIBXI, RTLD_NOW, NULL, 0);
|
||||
+ if (!xinput2_handle) /* wine_dlopen failed. */
|
||||
+ {
|
||||
+ FIXME("XInput2 failed to load. Using fallback code.\n");
|
||||
+ return;
|
||||
+ }
|
||||
+#define LOAD_FUNCPTR(f) if (!(p##f = wine_dlsym(xinput2_handle, #f, msg, sizeof(msg)))) \
|
||||
+ { WARN("Error loading \"%s\": %s\n", #f, msg); return; }
|
||||
+ LOAD_FUNCPTR(XQueryExtension)
|
||||
+ LOAD_FUNCPTR(XIQueryVersion)
|
||||
+ LOAD_FUNCPTR(XISelectEvents)
|
||||
+ LOAD_FUNCPTR(XGetEventData)
|
||||
+ LOAD_FUNCPTR(XFreeEventData)
|
||||
+ LOAD_FUNCPTR(XIQueryDevice)
|
||||
+ LOAD_FUNCPTR(XIFreeDeviceInfo)
|
||||
+#undef LOAD_FUNCPTR
|
||||
+
|
||||
+ wine_tsx11_lock();
|
||||
+ if (!pXQueryExtension(gdi_display, "XInputExtension", &xinput2_opcode, &event_base, &error_base))
|
||||
+ {
|
||||
+ wine_tsx11_unlock();
|
||||
+ WARN("Failed to query XInputExtension\n");
|
||||
+ return;
|
||||
+ }
|
||||
+ if ((ret = pXIQueryVersion(gdi_display, &major, &minor)) == Success)
|
||||
+ {
|
||||
+ XIDeviceInfo *devs;
|
||||
+ int num_devs, i;
|
||||
+
|
||||
+ /* Find core pointer id. */
|
||||
+ devs = pXIQueryDevice(gdi_display, XIAllMasterDevices, &num_devs);
|
||||
+ for (i = 0; i < num_devs; i++)
|
||||
+ {
|
||||
+ if (devs[i].use == XIMasterPointer)
|
||||
+ {
|
||||
+ core_pointer_id = devs[i].deviceid;
|
||||
+ break;
|
||||
+ }
|
||||
+ }
|
||||
+ pXIFreeDeviceInfo(devs);
|
||||
+ }
|
||||
+ wine_tsx11_unlock();
|
||||
+
|
||||
+ if (ret != Success)
|
||||
+ {
|
||||
+ WARN("Failed to get requred Xi2 version. Server supports %d.%d\n", major, minor);
|
||||
+ return;
|
||||
+ }
|
||||
+ TRACE("Server supports Xinput2 extension version %d.%d\n", major, minor);
|
||||
+ xinput2_available = 1;
|
||||
+
|
||||
+ return;
|
||||
+#endif /* HAVE_LIBXINPUT2 */
|
||||
+}
|
||||
|
||||
/***********************************************************************
|
||||
* clip_point_to_rect
|
||||
@@ -1258,3 +1339,160 @@ void X11DRV_EnterNotify( HWND hwnd, XEvent *xev )
|
||||
X11DRV_send_mouse_input( top_hwnd, hwnd, MOUSEEVENTF_MOVE | MOUSEEVENTF_ABSOLUTE,
|
||||
pt.x, pt.y, 0, EVENT_x11_time_to_win32_time(event->time), 0, 0 );
|
||||
}
|
||||
+
|
||||
+#ifdef HAVE_LIBXINPUT2
|
||||
+static HOOKPROC xi2_callback;
|
||||
+
|
||||
+static UINT xi2_press_to_mesage(int btn)
|
||||
+{
|
||||
+ switch (btn)
|
||||
+ {
|
||||
+ case 1: return WM_LBUTTONDOWN;
|
||||
+ case 2: return WM_MBUTTONDOWN;
|
||||
+ case 3: return WM_RBUTTONDOWN;
|
||||
+ case 4: case 5:
|
||||
+ case 6: case 7:
|
||||
+ return WM_MOUSEWHEEL;
|
||||
+ case 8:
|
||||
+ case 9: return WM_XBUTTONDOWN;
|
||||
+ }
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+static UINT xi2_release_to_mesage(int btn)
|
||||
+{
|
||||
+ switch (btn)
|
||||
+ {
|
||||
+ case 1: return WM_LBUTTONUP;
|
||||
+ case 2: return WM_MBUTTONUP;
|
||||
+ case 3: return WM_RBUTTONUP;
|
||||
+ case 4: case 5:
|
||||
+ case 6: case 7:
|
||||
+ return WM_MOUSEWHEEL;
|
||||
+ case 8:
|
||||
+ case 9: return WM_XBUTTONUP;
|
||||
+ }
|
||||
+ return 0;
|
||||
+}
|
||||
+#endif
|
||||
+
|
||||
+/***********************************************************************
|
||||
+ * X11DRV_GenericEvent
|
||||
+ */
|
||||
+void X11DRV_GenericEvent( HWND hwnd, XEvent *xev )
|
||||
+{
|
||||
+#ifdef HAVE_LIBXINPUT2
|
||||
+ XGenericEventCookie *cookie = (XGenericEventCookie*)&xev->xcookie;
|
||||
+ Display *display = thread_init_display();
|
||||
+
|
||||
+ assert(xinput2_available);
|
||||
+ TRACE("%p %p\n", hwnd, xev);
|
||||
+
|
||||
+ if (pXGetEventData(display , cookie) &&
|
||||
+ cookie->type == GenericEvent &&
|
||||
+ cookie->extension == xinput2_opcode)
|
||||
+ {
|
||||
+ XIRawEvent *revent = (XIRawEvent *)cookie->data;
|
||||
+ DWORD wData;
|
||||
+ MSLLHOOKSTRUCT hook;
|
||||
+
|
||||
+ memset(&hook, 0, sizeof(hook));
|
||||
+ hook.time = EVENT_x11_time_to_win32_time(revent->time);
|
||||
+
|
||||
+ /* Skip core pointer events */
|
||||
+ if (revent->deviceid != core_pointer_id)
|
||||
+ switch (cookie->evtype)
|
||||
+ {
|
||||
+ case XI_RawMotion:
|
||||
+ {
|
||||
+ int i = 0;
|
||||
+ hook.pt.x = XIMaskIsSet(revent->valuators.mask, 0) ? revent->raw_values[i++] : 0;
|
||||
+ hook.pt.y = XIMaskIsSet(revent->valuators.mask, 1) ? revent->raw_values[i++] : 0;
|
||||
+ hook.flags = 2;
|
||||
+ if (xi2_callback) xi2_callback(0, WM_MOUSEMOVE, (LPARAM)&hook);
|
||||
+ break;
|
||||
+ }
|
||||
+
|
||||
+ case XI_RawButtonPress:
|
||||
+ switch (revent->detail)
|
||||
+ {
|
||||
+ case 4: case 6: wData = WHEEL_DELTA; break;
|
||||
+ case 5: case 7: wData = -WHEEL_DELTA; break;
|
||||
+ case 8: wData = XBUTTON1; break;
|
||||
+ case 9: wData = XBUTTON2; break;
|
||||
+ default: wData = 0;
|
||||
+ }
|
||||
+ hook.mouseData = MAKELONG(0, wData);
|
||||
+ if (xi2_callback) xi2_callback(0, xi2_press_to_mesage(revent->detail), (LPARAM)&hook);
|
||||
+ break;
|
||||
+
|
||||
+ case XI_RawButtonRelease:
|
||||
+ switch (revent->detail)
|
||||
+ {
|
||||
+ case 8: wData = XBUTTON1; break;
|
||||
+ case 9: wData = XBUTTON2; break;
|
||||
+ default: wData = 0;
|
||||
+ }
|
||||
+ hook.mouseData = MAKELONG(0, wData);
|
||||
+ if (xi2_callback) xi2_callback(0, xi2_release_to_mesage(revent->detail), (LPARAM)&hook);
|
||||
+ break;
|
||||
+
|
||||
+ case XI_RawKeyPress:
|
||||
+ break;
|
||||
+ case XI_RawKeyRelease:
|
||||
+ break;
|
||||
+ }
|
||||
+ }
|
||||
+ pXFreeEventData(display , &xev->xcookie);
|
||||
+#endif
|
||||
+}
|
||||
+
|
||||
+
|
||||
+#ifdef HAVE_LIBXINPUT2
|
||||
+int CDECL X11DRV_xinput_acquire(int dev_mask, HOOKPROC cb)
|
||||
+{
|
||||
+ XIEventMask eventmask;
|
||||
+ unsigned char mask[XIMaskLen(XI_RawMotion)] = {0};
|
||||
+ Display *display = thread_init_display();
|
||||
+ int ret;
|
||||
+
|
||||
+ TRACE("%d %p\n", dev_mask, cb);
|
||||
+ if (!xinput2_available) return 0;
|
||||
+
|
||||
+ eventmask.mask = mask;
|
||||
+ eventmask.mask_len = sizeof(mask);
|
||||
+ eventmask.deviceid = XIAllDevices;
|
||||
+
|
||||
+ if (dev_mask & 1)
|
||||
+ {
|
||||
+ XISetMask(eventmask.mask, XI_RawKeyPress);
|
||||
+ XISetMask(eventmask.mask, XI_RawKeyRelease);
|
||||
+ }
|
||||
+ if (dev_mask & 2)
|
||||
+ {
|
||||
+ XISetMask(eventmask.mask, XI_RawButtonPress);
|
||||
+ XISetMask(eventmask.mask, XI_RawButtonRelease);
|
||||
+ XISetMask(eventmask.mask, XI_RawMotion);
|
||||
+ }
|
||||
+ wine_tsx11_lock();
|
||||
+ ret = pXISelectEvents(display, DefaultRootWindow(display), &eventmask, 1);
|
||||
+ wine_tsx11_unlock();
|
||||
+ if (ret != Success)
|
||||
+ {
|
||||
+ WARN("Failed to set mask: %d\n", ret);
|
||||
+ return 0;
|
||||
+ }
|
||||
+ InterlockedExchangePointer((LPVOID)&xi2_callback, cb);
|
||||
+ TRACE("Set Xi2 callback to %p\n", cb);
|
||||
+
|
||||
+ return 1;
|
||||
+}
|
||||
+
|
||||
+#else /* HAVE_LIBXINPUT2 */
|
||||
+int X11DRV_xinput_acquire(int dev_mask, HOOKPROC cb)
|
||||
+{
|
||||
+ WARN("xinput2 is not available\n");
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+#endif /* HAVE_LIBXINPUT2 */
|
||||
diff --git a/dlls/winex11.drv/winex11.drv.spec b/dlls/winex11.drv/winex11.drv.spec
|
||||
index 9476c40..6ead1aa 100644
|
||||
--- a/dlls/winex11.drv/winex11.drv.spec
|
||||
+++ b/dlls/winex11.drv/winex11.drv.spec
|
||||
@@ -162,3 +162,5 @@
|
||||
@ stdcall ImeProcessKey(long long long ptr)
|
||||
@ stdcall ImeGetRegisterWordStyle(long ptr)
|
||||
@ stdcall ImeGetImeMenuItems(long long long ptr ptr long)
|
||||
+
|
||||
+@ cdecl wine_xinput_acquire(long ptr) X11DRV_xinput_acquire
|
||||
diff --git a/dlls/winex11.drv/x11drv.h b/dlls/winex11.drv/x11drv.h
|
||||
index f48b51f..d9035ce 100644
|
||||
--- a/dlls/winex11.drv/x11drv.h
|
||||
+++ b/dlls/winex11.drv/x11drv.h
|
||||
@@ -713,6 +713,7 @@ extern void X11DRV_DestroyNotify( HWND hwnd, XEvent *event );
|
||||
extern void X11DRV_SelectionRequest( HWND hWnd, XEvent *event );
|
||||
extern void X11DRV_SelectionClear( HWND hWnd, XEvent *event );
|
||||
extern void X11DRV_MappingNotify( HWND hWnd, XEvent *event );
|
||||
+extern void X11DRV_GenericEvent( HWND hWnd, XEvent *event );
|
||||
|
||||
extern DWORD EVENT_x11_time_to_win32_time(Time time);
|
||||
|
||||
@@ -843,6 +844,8 @@ extern void X11DRV_XIMLookupChars( const char *str, DWORD count ) DECLSPEC_HIDDE
|
||||
extern void X11DRV_ForceXIMReset(HWND hwnd) DECLSPEC_HIDDEN;
|
||||
extern BOOL X11DRV_SetPreeditState(HWND hwnd, BOOL fOpen);
|
||||
|
||||
+extern void X11DRV_XInput2_Init(void);
|
||||
+
|
||||
/* FIXME: private functions imported from user32 */
|
||||
extern LRESULT HOOK_CallHooks( INT id, INT code, WPARAM wparam, LPARAM lparam, BOOL unicode );
|
||||
|
||||
diff --git a/dlls/winex11.drv/x11drv_main.c b/dlls/winex11.drv/x11drv_main.c
|
||||
index 0d1a7da..f94bba4 100644
|
||||
--- a/dlls/winex11.drv/x11drv_main.c
|
||||
+++ b/dlls/winex11.drv/x11drv_main.c
|
||||
@@ -562,6 +562,7 @@ static BOOL process_attach(void)
|
||||
#ifdef SONAME_LIBXCOMPOSITE
|
||||
X11DRV_XComposite_Init();
|
||||
#endif
|
||||
+ X11DRV_XInput2_Init();
|
||||
|
||||
#ifdef HAVE_XKB
|
||||
if (use_xkb) use_xkb = XkbUseExtension( gdi_display, NULL, NULL );
|
||||
diff --git a/include/config.h.in b/include/config.h.in
|
||||
index 46adad8..be06226 100644
|
||||
--- a/include/config.h.in
|
||||
+++ b/include/config.h.in
|
||||
@@ -367,6 +367,9 @@
|
||||
/* Define to 1 if you have the `ossaudio' library (-lossaudio). */
|
||||
#undef HAVE_LIBOSSAUDIO
|
||||
|
||||
+/* Define if you have the XInput 2 extension */
|
||||
+#undef HAVE_LIBXINPUT2
|
||||
+
|
||||
/* Define if you have the libxml2 library */
|
||||
#undef HAVE_LIBXML2
|
||||
|
||||
@@ -1075,6 +1078,9 @@
|
||||
/* Define to 1 if you have the <X11/extensions/Xinerama.h> header file. */
|
||||
#undef HAVE_X11_EXTENSIONS_XINERAMA_H
|
||||
|
||||
+/* Define to 1 if you have the <X11/extensions/XInput2.h> header file. */
|
||||
+#undef HAVE_X11_EXTENSIONS_XINPUT2_H
|
||||
+
|
||||
/* Define to 1 if you have the <X11/extensions/XInput.h> header file. */
|
||||
#undef HAVE_X11_EXTENSIONS_XINPUT_H
|
||||
|
@ -1,594 +0,0 @@
|
||||
http://bugs.winehq.org/show_bug.cgi?id=6971
|
||||
|
||||
diff --git a/configure b/configure
|
||||
index 51321db..4ea7489 100755
|
||||
--- a/configure
|
||||
+++ b/configure
|
||||
@@ -8030,6 +8030,7 @@ fi
|
||||
X11/Xcursor/Xcursor.h \
|
||||
X11/extensions/shape.h \
|
||||
X11/extensions/XInput.h \
|
||||
+ X11/extensions/XInput2.h \
|
||||
X11/extensions/XShm.h \
|
||||
X11/extensions/Xcomposite.h \
|
||||
X11/extensions/Xinerama.h \
|
||||
@@ -8226,6 +8227,61 @@ This is an error since --with-xinput was requested." "$LINENO" 5 ;;
|
||||
esac
|
||||
fi
|
||||
|
||||
+ if test "$ac_cv_header_X11_extensions_XInput2_h" = "yes"
|
||||
+ then
|
||||
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for XIQueryVersion in -lXi" >&5
|
||||
+$as_echo_n "checking for XIQueryVersion in -lXi... " >&6; }
|
||||
+if test "${ac_cv_lib_Xi_XIQueryVersion+set}" = set; then :
|
||||
+ $as_echo_n "(cached) " >&6
|
||||
+else
|
||||
+ ac_check_lib_save_LIBS=$LIBS
|
||||
+LIBS="-lXi $X_LIBS $XLIB $X_EXTRA_LIBS $LIBS"
|
||||
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
|
||||
+/* end confdefs.h. */
|
||||
+
|
||||
+/* Override any GCC internal prototype to avoid an error.
|
||||
+ Use char because int might match the return type of a GCC
|
||||
+ builtin and then its argument prototype would still apply. */
|
||||
+#ifdef __cplusplus
|
||||
+extern "C"
|
||||
+#endif
|
||||
+char XIQueryVersion ();
|
||||
+int
|
||||
+main ()
|
||||
+{
|
||||
+return XIQueryVersion ();
|
||||
+ ;
|
||||
+ return 0;
|
||||
+}
|
||||
+_ACEOF
|
||||
+if ac_fn_c_try_link "$LINENO"; then :
|
||||
+ ac_cv_lib_Xi_XIQueryVersion=yes
|
||||
+else
|
||||
+ ac_cv_lib_Xi_XIQueryVersion=no
|
||||
+fi
|
||||
+rm -f core conftest.err conftest.$ac_objext \
|
||||
+ conftest$ac_exeext conftest.$ac_ext
|
||||
+LIBS=$ac_check_lib_save_LIBS
|
||||
+fi
|
||||
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_Xi_XIQueryVersion" >&5
|
||||
+$as_echo "$ac_cv_lib_Xi_XIQueryVersion" >&6; }
|
||||
+if test "x$ac_cv_lib_Xi_XIQueryVersion" = x""yes; then :
|
||||
+
|
||||
+$as_echo "#define HAVE_LIBXINPUT2 1" >>confdefs.h
|
||||
+
|
||||
+fi
|
||||
+
|
||||
+
|
||||
+ fi
|
||||
+ if test "$ac_cv_lib_Xi_XIQueryVersion" != "yes"; then :
|
||||
+ case "x$with_xinput2" in
|
||||
+ x) as_fn_append wine_notices "|libxi ${notice_platform}development files not found, the Xinput2 extension won't be supported." ;;
|
||||
+ xno) ;;
|
||||
+ *) as_fn_error "libxi ${notice_platform}development files not found, the Xinput2 extension won't be supported.
|
||||
+This is an error since --with-xinput2 was requested." "$LINENO" 5 ;;
|
||||
+esac
|
||||
+fi
|
||||
+
|
||||
if test "$ac_cv_header_X11_extensions_XShm_h" = "yes"
|
||||
then
|
||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for XShmQueryExtension in -lXext" >&5
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 2022e67..10fad6c 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -932,6 +932,7 @@ then
|
||||
X11/Xcursor/Xcursor.h \
|
||||
X11/extensions/shape.h \
|
||||
X11/extensions/XInput.h \
|
||||
+ X11/extensions/XInput2.h \
|
||||
X11/extensions/XShm.h \
|
||||
X11/extensions/Xcomposite.h \
|
||||
X11/extensions/Xinerama.h \
|
||||
@@ -970,6 +971,17 @@ then
|
||||
WINE_NOTICE_WITH(xinput,[test "x$ac_cv_lib_soname_Xi" = "x"],
|
||||
[libxi ${notice_platform}development files not found, the Xinput extension won't be supported.])
|
||||
|
||||
+ dnl *** Check for X input 2 extension
|
||||
+ if test "$ac_cv_header_X11_extensions_XInput2_h" = "yes"
|
||||
+ then
|
||||
+ AC_CHECK_LIB(Xi, XIQueryVersion,
|
||||
+ AC_DEFINE(HAVE_LIBXINPUT2, 1, [Define if you have the XInput 2 extension]),,
|
||||
+ $X_LIBS $XLIB $X_EXTRA_LIBS)
|
||||
+
|
||||
+ fi
|
||||
+ WINE_NOTICE_WITH(xinput2,[test "$ac_cv_lib_Xi_XIQueryVersion" != "yes"],
|
||||
+ [libxi ${notice_platform}development files not found, the Xinput2 extension won't be supported.])
|
||||
+
|
||||
dnl *** Check for X Shm extension
|
||||
if test "$ac_cv_header_X11_extensions_XShm_h" = "yes"
|
||||
then
|
||||
diff --git a/dlls/dinput/dinput_main.c b/dlls/dinput/dinput_main.c
|
||||
index d3727bc..b42096a 100644
|
||||
--- a/dlls/dinput/dinput_main.c
|
||||
+++ b/dlls/dinput/dinput_main.c
|
||||
@@ -96,6 +96,16 @@ static const struct dinput_device *dinput_devices[] =
|
||||
#define NB_DINPUT_DEVICES (sizeof(dinput_devices)/sizeof(dinput_devices[0]))
|
||||
|
||||
static HINSTANCE DINPUT_instance = NULL;
|
||||
+static int(*wine_xinput_acquire)(int,HOOKPROC);
|
||||
+
|
||||
+static void dinput_init( HINSTANCE inst )
|
||||
+{
|
||||
+ HMODULE x11 = GetModuleHandleA("winex11.drv");
|
||||
+
|
||||
+ DINPUT_instance = inst;
|
||||
+ if (x11)
|
||||
+ wine_xinput_acquire = (void *)GetProcAddress(x11, "wine_xinput_acquire");
|
||||
+}
|
||||
|
||||
BOOL WINAPI DllMain( HINSTANCE inst, DWORD reason, LPVOID reserv)
|
||||
{
|
||||
@@ -103,7 +113,7 @@ BOOL WINAPI DllMain( HINSTANCE inst, DWORD reason, LPVOID reserv)
|
||||
{
|
||||
case DLL_PROCESS_ATTACH:
|
||||
DisableThreadLibraryCalls(inst);
|
||||
- DINPUT_instance = inst;
|
||||
+ dinput_init(inst);
|
||||
break;
|
||||
case DLL_PROCESS_DETACH:
|
||||
break;
|
||||
@@ -904,6 +914,28 @@ HRESULT WINAPI DllUnregisterServer(void)
|
||||
* DInput hook thread
|
||||
*/
|
||||
|
||||
+static LRESULT CALLBACK LL_hook_proc_xi2( int code, WPARAM wparam, LPARAM lparam )
|
||||
+{
|
||||
+ IDirectInputImpl *dinput;
|
||||
+
|
||||
+ EnterCriticalSection( &dinput_hook_crit );
|
||||
+ LIST_FOR_EACH_ENTRY( dinput, &direct_input_list, IDirectInputImpl, entry )
|
||||
+ {
|
||||
+ IDirectInputDeviceImpl *dev;
|
||||
+
|
||||
+ EnterCriticalSection( &dinput->crit );
|
||||
+ LIST_FOR_EACH_ENTRY( dev, &dinput->devices_list, IDirectInputDeviceImpl, entry )
|
||||
+ if (dev->acquired && dev->event_proc)
|
||||
+ {
|
||||
+ TRACE("calling %p->%p (%lx %lx)\n", dev, dev->event_proc, wparam, lparam);
|
||||
+ dev->event_proc( (LPDIRECTINPUTDEVICE8A)dev, wparam, lparam );
|
||||
+ }
|
||||
+ LeaveCriticalSection( &dinput->crit );
|
||||
+ }
|
||||
+ LeaveCriticalSection( &dinput_hook_crit );
|
||||
+ return 1;
|
||||
+}
|
||||
+
|
||||
static LRESULT CALLBACK LL_hook_proc( int code, WPARAM wparam, LPARAM lparam )
|
||||
{
|
||||
IDirectInputImpl *dinput;
|
||||
@@ -1025,12 +1057,15 @@ static DWORD WINAPI hook_thread_proc(void *param)
|
||||
kbd_hook = NULL;
|
||||
}
|
||||
|
||||
- if (mice_cnt && !mouse_hook)
|
||||
- mouse_hook = SetWindowsHookExW( WH_MOUSE_LL, LL_hook_proc, DINPUT_instance, 0 );
|
||||
- else if (!mice_cnt && mouse_hook)
|
||||
+ if (!wine_xinput_acquire( (mice_cnt ? 2 : 0) , LL_hook_proc_xi2 ))
|
||||
{
|
||||
- UnhookWindowsHookEx( mouse_hook );
|
||||
- mouse_hook = NULL;
|
||||
+ if (mice_cnt && !mouse_hook)
|
||||
+ mouse_hook = SetWindowsHookExW( WH_MOUSE_LL, LL_hook_proc, DINPUT_instance, 0 );
|
||||
+ else if (!mice_cnt && mouse_hook)
|
||||
+ {
|
||||
+ UnhookWindowsHookEx( mouse_hook );
|
||||
+ mouse_hook = NULL;
|
||||
+ }
|
||||
}
|
||||
}
|
||||
TranslateMessage(&msg);
|
||||
diff --git a/dlls/dinput/mouse.c b/dlls/dinput/mouse.c
|
||||
index ace9fe2..386ce11 100644
|
||||
--- a/dlls/dinput/mouse.c
|
||||
+++ b/dlls/dinput/mouse.c
|
||||
@@ -334,7 +334,10 @@ static int dinput_mouse_hook( LPDIRECTINPUTDEVICE8A iface, WPARAM wparam, LPARAM
|
||||
{
|
||||
POINT pt, pt1;
|
||||
|
||||
- GetCursorPos(&pt);
|
||||
+ if (hook->flags & 2)
|
||||
+ pt.x = pt.y = 0;
|
||||
+ else
|
||||
+ GetCursorPos(&pt);
|
||||
This->m_state.lX += pt.x = hook->pt.x - pt.x;
|
||||
This->m_state.lY += pt.y = hook->pt.y - pt.y;
|
||||
|
||||
@@ -360,7 +363,8 @@ static int dinput_mouse_hook( LPDIRECTINPUTDEVICE8A iface, WPARAM wparam, LPARAM
|
||||
wdata = pt1.y;
|
||||
}
|
||||
|
||||
- This->need_warp = This->warp_override != WARP_DISABLE &&
|
||||
+ This->need_warp = !(hook->flags & 2) &&
|
||||
+ This->warp_override != WARP_DISABLE &&
|
||||
(pt.x || pt.y) &&
|
||||
(dwCoop & DISCL_EXCLUSIVE || This->warp_override == WARP_FORCE_ON);
|
||||
break;
|
||||
diff --git a/dlls/winex11.drv/event.c b/dlls/winex11.drv/event.c
|
||||
index 6e4225c..bb8a605 100644
|
||||
--- a/dlls/winex11.drv/event.c
|
||||
+++ b/dlls/winex11.drv/event.c
|
||||
@@ -141,9 +141,10 @@ static struct event_handler handlers[MAX_EVENT_HANDLERS] =
|
||||
/* ColormapNotify */
|
||||
{ ClientMessage, X11DRV_ClientMessage },
|
||||
{ MappingNotify, X11DRV_MappingNotify },
|
||||
+ { GenericEvent, X11DRV_GenericEvent },
|
||||
};
|
||||
|
||||
-static int nb_event_handlers = 20; /* change this if you add handlers above */
|
||||
+static int nb_event_handlers = 21; /* change this if you add handlers above */
|
||||
|
||||
|
||||
/* return the name of an X event */
|
||||
diff --git a/dlls/winex11.drv/mouse.c b/dlls/winex11.drv/mouse.c
|
||||
index a527a2e..4362da7 100644
|
||||
--- a/dlls/winex11.drv/mouse.c
|
||||
+++ b/dlls/winex11.drv/mouse.c
|
||||
@@ -22,23 +22,10 @@
|
||||
#include "config.h"
|
||||
#include "wine/port.h"
|
||||
|
||||
-#include <X11/Xlib.h>
|
||||
+#include <stdlib.h>
|
||||
#include <X11/cursorfont.h>
|
||||
#include <stdarg.h>
|
||||
-
|
||||
-#ifdef SONAME_LIBXCURSOR
|
||||
-# include <X11/Xcursor/Xcursor.h>
|
||||
-static void *xcursor_handle;
|
||||
-# define MAKE_FUNCPTR(f) static typeof(f) * p##f
|
||||
-MAKE_FUNCPTR(XcursorImageCreate);
|
||||
-MAKE_FUNCPTR(XcursorImageDestroy);
|
||||
-MAKE_FUNCPTR(XcursorImageLoadCursor);
|
||||
-MAKE_FUNCPTR(XcursorImagesCreate);
|
||||
-MAKE_FUNCPTR(XcursorImagesDestroy);
|
||||
-MAKE_FUNCPTR(XcursorImagesLoadCursor);
|
||||
-MAKE_FUNCPTR(XcursorLibraryLoadCursor);
|
||||
-# undef MAKE_FUNCPTR
|
||||
-#endif /* SONAME_LIBXCURSOR */
|
||||
+#include <assert.h>
|
||||
|
||||
#define NONAMELESSUNION
|
||||
#define NONAMELESSSTRUCT
|
||||
@@ -53,6 +40,39 @@ MAKE_FUNCPTR(XcursorLibraryLoadCursor);
|
||||
#include "wine/unicode.h"
|
||||
#include "wine/debug.h"
|
||||
|
||||
+#include <X11/Xlib.h>
|
||||
+
|
||||
+#define MAKE_FUNCPTR(f) static typeof(f) * p##f
|
||||
+
|
||||
+#ifdef SONAME_LIBXCURSOR
|
||||
+# include <X11/Xcursor/Xcursor.h>
|
||||
+static void *xcursor_handle;
|
||||
+MAKE_FUNCPTR(XcursorImageCreate);
|
||||
+MAKE_FUNCPTR(XcursorImageDestroy);
|
||||
+MAKE_FUNCPTR(XcursorImageLoadCursor);
|
||||
+MAKE_FUNCPTR(XcursorImagesCreate);
|
||||
+MAKE_FUNCPTR(XcursorImagesDestroy);
|
||||
+MAKE_FUNCPTR(XcursorImagesLoadCursor);
|
||||
+MAKE_FUNCPTR(XcursorLibraryLoadCursor);
|
||||
+#endif /* SONAME_LIBXCURSOR */
|
||||
+
|
||||
+#ifdef HAVE_LIBXINPUT2
|
||||
+# include <X11/extensions/XInput2.h>
|
||||
+static void *xinput2_handle;
|
||||
+static int xinput2_opcode;
|
||||
+static int xinput2_available;
|
||||
+static int core_pointer_id;
|
||||
+MAKE_FUNCPTR(XQueryExtension);
|
||||
+MAKE_FUNCPTR(XIQueryVersion);
|
||||
+MAKE_FUNCPTR(XISelectEvents);
|
||||
+MAKE_FUNCPTR(XGetEventData);
|
||||
+MAKE_FUNCPTR(XFreeEventData);
|
||||
+MAKE_FUNCPTR(XIQueryDevice);
|
||||
+MAKE_FUNCPTR(XIFreeDeviceInfo);
|
||||
+#endif /* HAVE_LIBXINPUT2 */
|
||||
+
|
||||
+#undef MAKE_FUNCPTR
|
||||
+
|
||||
WINE_DEFAULT_DEBUG_CHANNEL(cursor);
|
||||
|
||||
/**********************************************************************/
|
||||
@@ -128,6 +148,67 @@ void X11DRV_Xcursor_Init(void)
|
||||
#endif /* SONAME_LIBXCURSOR */
|
||||
}
|
||||
|
||||
+void X11DRV_XInput2_Init(void)
|
||||
+{
|
||||
+#ifdef HAVE_LIBXINPUT2
|
||||
+ int event_base, error_base, ret;
|
||||
+ int major = 2, minor = 0; /* Need at least v2.0 extension */
|
||||
+ char msg[1024];
|
||||
+
|
||||
+ xinput2_handle = wine_dlopen(SONAME_LIBXI, RTLD_NOW, NULL, 0);
|
||||
+ if (!xinput2_handle) /* wine_dlopen failed. */
|
||||
+ {
|
||||
+ FIXME("XInput2 failed to load. Using fallback code.\n");
|
||||
+ return;
|
||||
+ }
|
||||
+#define LOAD_FUNCPTR(f) if (!(p##f = wine_dlsym(xinput2_handle, #f, msg, sizeof(msg)))) \
|
||||
+ { WARN("Error loading \"%s\": %s\n", #f, msg); return; }
|
||||
+ LOAD_FUNCPTR(XQueryExtension)
|
||||
+ LOAD_FUNCPTR(XIQueryVersion)
|
||||
+ LOAD_FUNCPTR(XISelectEvents)
|
||||
+ LOAD_FUNCPTR(XGetEventData)
|
||||
+ LOAD_FUNCPTR(XFreeEventData)
|
||||
+ LOAD_FUNCPTR(XIQueryDevice)
|
||||
+ LOAD_FUNCPTR(XIFreeDeviceInfo)
|
||||
+#undef LOAD_FUNCPTR
|
||||
+
|
||||
+ wine_tsx11_lock();
|
||||
+ if (!pXQueryExtension(gdi_display, "XInputExtension", &xinput2_opcode, &event_base, &error_base))
|
||||
+ {
|
||||
+ wine_tsx11_unlock();
|
||||
+ WARN("Failed to query XInputExtension\n");
|
||||
+ return;
|
||||
+ }
|
||||
+ if ((ret = pXIQueryVersion(gdi_display, &major, &minor)) == Success)
|
||||
+ {
|
||||
+ XIDeviceInfo *devs;
|
||||
+ int num_devs, i;
|
||||
+
|
||||
+ /* Find core pointer id. */
|
||||
+ devs = pXIQueryDevice(gdi_display, XIAllMasterDevices, &num_devs);
|
||||
+ for (i = 0; i < num_devs; i++)
|
||||
+ {
|
||||
+ if (devs[i].use == XIMasterPointer)
|
||||
+ {
|
||||
+ core_pointer_id = devs[i].deviceid;
|
||||
+ break;
|
||||
+ }
|
||||
+ }
|
||||
+ pXIFreeDeviceInfo(devs);
|
||||
+ }
|
||||
+ wine_tsx11_unlock();
|
||||
+
|
||||
+ if (ret != Success)
|
||||
+ {
|
||||
+ WARN("Failed to get requred Xi2 version. Server supports %d.%d\n", major, minor);
|
||||
+ return;
|
||||
+ }
|
||||
+ TRACE("Server supports Xinput2 extension version %d.%d\n", major, minor);
|
||||
+ xinput2_available = 1;
|
||||
+
|
||||
+ return;
|
||||
+#endif /* HAVE_LIBXINPUT2 */
|
||||
+}
|
||||
|
||||
/***********************************************************************
|
||||
* get_empty_cursor
|
||||
@@ -1020,3 +1101,160 @@ void X11DRV_EnterNotify( HWND hwnd, XEvent *xev )
|
||||
send_mouse_input( hwnd, MOUSEEVENTF_MOVE | MOUSEEVENTF_ABSOLUTE,
|
||||
event->window, event->x, event->y, event->state, 0, event->time );
|
||||
}
|
||||
+
|
||||
+#ifdef HAVE_LIBXINPUT2
|
||||
+static HOOKPROC xi2_callback;
|
||||
+
|
||||
+static UINT xi2_press_to_mesage(int btn)
|
||||
+{
|
||||
+ switch (btn)
|
||||
+ {
|
||||
+ case 1: return WM_LBUTTONDOWN;
|
||||
+ case 2: return WM_MBUTTONDOWN;
|
||||
+ case 3: return WM_RBUTTONDOWN;
|
||||
+ case 4: case 5:
|
||||
+ case 6: case 7:
|
||||
+ return WM_MOUSEWHEEL;
|
||||
+ case 8:
|
||||
+ case 9: return WM_XBUTTONDOWN;
|
||||
+ }
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+static UINT xi2_release_to_mesage(int btn)
|
||||
+{
|
||||
+ switch (btn)
|
||||
+ {
|
||||
+ case 1: return WM_LBUTTONUP;
|
||||
+ case 2: return WM_MBUTTONUP;
|
||||
+ case 3: return WM_RBUTTONUP;
|
||||
+ case 4: case 5:
|
||||
+ case 6: case 7:
|
||||
+ return WM_MOUSEWHEEL;
|
||||
+ case 8:
|
||||
+ case 9: return WM_XBUTTONUP;
|
||||
+ }
|
||||
+ return 0;
|
||||
+}
|
||||
+#endif
|
||||
+
|
||||
+/***********************************************************************
|
||||
+ * X11DRV_GenericEvent
|
||||
+ */
|
||||
+void X11DRV_GenericEvent( HWND hwnd, XEvent *xev )
|
||||
+{
|
||||
+#ifdef HAVE_LIBXINPUT2
|
||||
+ XGenericEventCookie *cookie = (XGenericEventCookie*)&xev->xcookie;
|
||||
+ Display *display = thread_init_display();
|
||||
+
|
||||
+ assert(xinput2_available);
|
||||
+ TRACE("%p %p\n", hwnd, xev);
|
||||
+
|
||||
+ if (pXGetEventData(display , cookie) &&
|
||||
+ cookie->type == GenericEvent &&
|
||||
+ cookie->extension == xinput2_opcode)
|
||||
+ {
|
||||
+ XIRawEvent *revent = (XIRawEvent *)cookie->data;
|
||||
+ DWORD wData;
|
||||
+ MSLLHOOKSTRUCT hook;
|
||||
+
|
||||
+ memset(&hook, 0, sizeof(hook));
|
||||
+ hook.time = EVENT_x11_time_to_win32_time(revent->time);
|
||||
+
|
||||
+ /* Skip core pointer events */
|
||||
+ if (revent->deviceid != core_pointer_id)
|
||||
+ switch (cookie->evtype)
|
||||
+ {
|
||||
+ case XI_RawMotion:
|
||||
+ {
|
||||
+ int i = 0;
|
||||
+ hook.pt.x = XIMaskIsSet(revent->valuators.mask, 0) ? revent->raw_values[i++] : 0;
|
||||
+ hook.pt.y = XIMaskIsSet(revent->valuators.mask, 1) ? revent->raw_values[i++] : 0;
|
||||
+ hook.flags = 2;
|
||||
+ if (xi2_callback) xi2_callback(0, WM_MOUSEMOVE, (LPARAM)&hook);
|
||||
+ break;
|
||||
+ }
|
||||
+
|
||||
+ case XI_RawButtonPress:
|
||||
+ switch (revent->detail)
|
||||
+ {
|
||||
+ case 4: case 6: wData = WHEEL_DELTA; break;
|
||||
+ case 5: case 7: wData = -WHEEL_DELTA; break;
|
||||
+ case 8: wData = XBUTTON1; break;
|
||||
+ case 9: wData = XBUTTON2; break;
|
||||
+ default: wData = 0;
|
||||
+ }
|
||||
+ hook.mouseData = MAKELONG(0, wData);
|
||||
+ if (xi2_callback) xi2_callback(0, xi2_press_to_mesage(revent->detail), (LPARAM)&hook);
|
||||
+ break;
|
||||
+
|
||||
+ case XI_RawButtonRelease:
|
||||
+ switch (revent->detail)
|
||||
+ {
|
||||
+ case 8: wData = XBUTTON1; break;
|
||||
+ case 9: wData = XBUTTON2; break;
|
||||
+ default: wData = 0;
|
||||
+ }
|
||||
+ hook.mouseData = MAKELONG(0, wData);
|
||||
+ if (xi2_callback) xi2_callback(0, xi2_release_to_mesage(revent->detail), (LPARAM)&hook);
|
||||
+ break;
|
||||
+
|
||||
+ case XI_RawKeyPress:
|
||||
+ break;
|
||||
+ case XI_RawKeyRelease:
|
||||
+ break;
|
||||
+ }
|
||||
+ }
|
||||
+ pXFreeEventData(display , &xev->xcookie);
|
||||
+#endif
|
||||
+}
|
||||
+
|
||||
+
|
||||
+#ifdef HAVE_LIBXINPUT2
|
||||
+int CDECL X11DRV_xinput_acquire(int dev_mask, HOOKPROC cb)
|
||||
+{
|
||||
+ XIEventMask eventmask;
|
||||
+ unsigned char mask[XIMaskLen(XI_RawMotion)] = {0};
|
||||
+ Display *display = thread_init_display();
|
||||
+ int ret;
|
||||
+
|
||||
+ TRACE("%d %p\n", dev_mask, cb);
|
||||
+ if (!xinput2_available) return 0;
|
||||
+
|
||||
+ eventmask.mask = mask;
|
||||
+ eventmask.mask_len = sizeof(mask);
|
||||
+ eventmask.deviceid = XIAllDevices;
|
||||
+
|
||||
+ if (dev_mask & 1)
|
||||
+ {
|
||||
+ XISetMask(eventmask.mask, XI_RawKeyPress);
|
||||
+ XISetMask(eventmask.mask, XI_RawKeyRelease);
|
||||
+ }
|
||||
+ if (dev_mask & 2)
|
||||
+ {
|
||||
+ XISetMask(eventmask.mask, XI_RawButtonPress);
|
||||
+ XISetMask(eventmask.mask, XI_RawButtonRelease);
|
||||
+ XISetMask(eventmask.mask, XI_RawMotion);
|
||||
+ }
|
||||
+ wine_tsx11_lock();
|
||||
+ ret = pXISelectEvents(display, DefaultRootWindow(display), &eventmask, 1);
|
||||
+ wine_tsx11_unlock();
|
||||
+ if (ret != Success)
|
||||
+ {
|
||||
+ WARN("Failed to set mask: %d\n", ret);
|
||||
+ return 0;
|
||||
+ }
|
||||
+ InterlockedExchangePointer((LPVOID)&xi2_callback, cb);
|
||||
+ TRACE("Set Xi2 callback to %p\n", cb);
|
||||
+
|
||||
+ return 1;
|
||||
+}
|
||||
+
|
||||
+#else /* HAVE_LIBXINPUT2 */
|
||||
+int X11DRV_xinput_acquire(int dev_mask, HOOKPROC cb)
|
||||
+{
|
||||
+ WARN("xinput2 is not available\n");
|
||||
+ return 0;
|
||||
+}
|
||||
+
|
||||
+#endif /* HAVE_LIBXINPUT2 */
|
||||
diff --git a/dlls/winex11.drv/winex11.drv.spec b/dlls/winex11.drv/winex11.drv.spec
|
||||
index c4a7672..dc637fb 100644
|
||||
--- a/dlls/winex11.drv/winex11.drv.spec
|
||||
+++ b/dlls/winex11.drv/winex11.drv.spec
|
||||
@@ -158,3 +158,5 @@
|
||||
@ stdcall ImeProcessKey(long long long ptr)
|
||||
@ stdcall ImeGetRegisterWordStyle(long ptr)
|
||||
@ stdcall ImeGetImeMenuItems(long long long ptr ptr long)
|
||||
+
|
||||
+@ cdecl wine_xinput_acquire(long ptr) X11DRV_xinput_acquire
|
||||
diff --git a/dlls/winex11.drv/x11drv.h b/dlls/winex11.drv/x11drv.h
|
||||
index c973675..53bbeec 100644
|
||||
--- a/dlls/winex11.drv/x11drv.h
|
||||
+++ b/dlls/winex11.drv/x11drv.h
|
||||
@@ -730,6 +730,7 @@ extern void X11DRV_DestroyNotify( HWND hwnd, XEvent *event );
|
||||
extern void X11DRV_SelectionRequest( HWND hWnd, XEvent *event );
|
||||
extern void X11DRV_SelectionClear( HWND hWnd, XEvent *event );
|
||||
extern void X11DRV_MappingNotify( HWND hWnd, XEvent *event );
|
||||
+extern void X11DRV_GenericEvent( HWND hWnd, XEvent *event );
|
||||
|
||||
extern DWORD EVENT_x11_time_to_win32_time(Time time);
|
||||
|
||||
@@ -858,6 +859,8 @@ extern void X11DRV_XIMLookupChars( const char *str, DWORD count ) DECLSPEC_HIDDE
|
||||
extern void X11DRV_ForceXIMReset(HWND hwnd) DECLSPEC_HIDDEN;
|
||||
extern BOOL X11DRV_SetPreeditState(HWND hwnd, BOOL fOpen);
|
||||
|
||||
+extern void X11DRV_XInput2_Init(void);
|
||||
+
|
||||
#define XEMBED_MAPPED (1 << 0)
|
||||
|
||||
#endif /* __WINE_X11DRV_H */
|
||||
diff --git a/dlls/winex11.drv/x11drv_main.c b/dlls/winex11.drv/x11drv_main.c
|
||||
index 606bc28..6d63b02 100644
|
||||
--- a/dlls/winex11.drv/x11drv_main.c
|
||||
+++ b/dlls/winex11.drv/x11drv_main.c
|
||||
@@ -582,6 +582,7 @@ static BOOL process_attach(void)
|
||||
#ifdef SONAME_LIBXCOMPOSITE
|
||||
X11DRV_XComposite_Init();
|
||||
#endif
|
||||
+ X11DRV_XInput2_Init();
|
||||
|
||||
#ifdef HAVE_XKB
|
||||
if (use_xkb) use_xkb = XkbUseExtension( gdi_display, NULL, NULL );
|
||||
diff --git a/include/config.h.in b/include/config.h.in
|
||||
index 7195429..b170d0a 100644
|
||||
--- a/include/config.h.in
|
||||
+++ b/include/config.h.in
|
||||
@@ -377,6 +377,9 @@
|
||||
/* Define to 1 if you have the `ossaudio' library (-lossaudio). */
|
||||
#undef HAVE_LIBOSSAUDIO
|
||||
|
||||
+/* Define if you have the XInput 2 extension */
|
||||
+#undef HAVE_LIBXINPUT2
|
||||
+
|
||||
/* Define if you have the libxml2 library */
|
||||
#undef HAVE_LIBXML2
|
||||
|
||||
@@ -1100,6 +1103,9 @@
|
||||
/* Define to 1 if you have the <X11/extensions/Xinerama.h> header file. */
|
||||
#undef HAVE_X11_EXTENSIONS_XINERAMA_H
|
||||
|
||||
+/* Define to 1 if you have the <X11/extensions/XInput2.h> header file. */
|
||||
+#undef HAVE_X11_EXTENSIONS_XINPUT2_H
|
||||
+
|
||||
/* Define to 1 if you have the <X11/extensions/XInput.h> header file. */
|
||||
#undef HAVE_X11_EXTENSIONS_XINPUT_H
|
||||
|
@ -1,16 +0,0 @@
|
||||
support older ssp (gcc-3.4.x). this ssp was never in mainline gcc, thus
|
||||
upstream wine wont accept it. can drop once hardened gets a stable gcc-4.x.
|
||||
|
||||
http://bugs.gentoo.org/66002
|
||||
|
||||
--- loader/preloader.c
|
||||
+++ loader/preloader.c
|
||||
@@ -155,6 +155,8 @@ struct wld_link_map {
|
||||
|
||||
/* similar to the above but for -fstack-protector */
|
||||
void *__stack_chk_guard = 0;
|
||||
+void *__guard = 0;
|
||||
+void __stack_smash_handler(void) { return; }
|
||||
void __stack_chk_fail(void) { return; }
|
||||
|
||||
* The _start function is the entry and exit point of this program
|
@ -0,0 +1,204 @@
|
||||
# Copyright 1999-2011 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-emulation/wine/wine-1.3.33.ebuild,v 1.2 2011/12/02 23:32:04 vapier Exp $
|
||||
|
||||
EAPI="2"
|
||||
|
||||
inherit eutils flag-o-matic multilib
|
||||
|
||||
if [[ ${PV} == "9999" ]] ; then
|
||||
EGIT_REPO_URI="git://source.winehq.org/git/wine.git"
|
||||
inherit git-2
|
||||
SRC_URI=""
|
||||
#KEYWORDS=""
|
||||
else
|
||||
MY_P="${PN}-${PV/_/-}"
|
||||
SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.bz2"
|
||||
KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
|
||||
S=${WORKDIR}/${MY_P}
|
||||
fi
|
||||
|
||||
GV="1.4"
|
||||
DESCRIPTION="free implementation of Windows(tm) on Unix"
|
||||
HOMEPAGE="http://www.winehq.org/"
|
||||
SRC_URI="${SRC_URI}
|
||||
gecko? (
|
||||
mirror://sourceforge/wine/wine_gecko-${GV}-x86.msi
|
||||
win64? ( mirror://sourceforge/wine/wine_gecko-${GV}-x86_64.msi )
|
||||
)"
|
||||
|
||||
LICENSE="LGPL-2.1"
|
||||
SLOT="0"
|
||||
IUSE="alsa capi cups custom-cflags dbus fontconfig +gecko gnutls gphoto2 gsm gstreamer hardened jpeg lcms ldap mp3 ncurses nls openal opencl +opengl +oss +perl png samba scanner ssl test +threads +truetype v4l +win32 +win64 +X xcomposite xinerama xml"
|
||||
RESTRICT="test" #72375
|
||||
|
||||
MLIB_DEPS="amd64? (
|
||||
truetype? ( >=app-emulation/emul-linux-x86-xlibs-2.1 )
|
||||
X? (
|
||||
>=app-emulation/emul-linux-x86-xlibs-2.1
|
||||
>=app-emulation/emul-linux-x86-soundlibs-2.1
|
||||
)
|
||||
mp3? ( app-emulation/emul-linux-x86-soundlibs )
|
||||
openal? ( app-emulation/emul-linux-x86-sdl )
|
||||
opengl? ( app-emulation/emul-linux-x86-opengl )
|
||||
scanner? ( app-emulation/emul-linux-x86-medialibs )
|
||||
v4l? ( app-emulation/emul-linux-x86-medialibs )
|
||||
app-emulation/emul-linux-x86-baselibs
|
||||
>=sys-kernel/linux-headers-2.6
|
||||
)"
|
||||
RDEPEND="truetype? ( >=media-libs/freetype-2.0.0 media-fonts/corefonts )
|
||||
perl? ( dev-lang/perl dev-perl/XML-Simple )
|
||||
capi? ( net-dialup/capi4k-utils )
|
||||
ncurses? ( >=sys-libs/ncurses-5.2 )
|
||||
fontconfig? ( media-libs/fontconfig )
|
||||
gphoto2? ( media-libs/libgphoto2 )
|
||||
openal? ( media-libs/openal )
|
||||
dbus? ( sys-apps/dbus )
|
||||
gnutls? ( net-libs/gnutls )
|
||||
gstreamer? ( media-libs/gstreamer media-libs/gst-plugins-base )
|
||||
X? (
|
||||
x11-libs/libXcursor
|
||||
x11-libs/libXrandr
|
||||
x11-libs/libXi
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXxf86vm
|
||||
x11-apps/xmessage
|
||||
)
|
||||
xinerama? ( x11-libs/libXinerama )
|
||||
alsa? ( media-libs/alsa-lib )
|
||||
cups? ( net-print/cups )
|
||||
opencl? ( x11-drivers/nvidia-drivers >=dev-util/nvidia-cuda-toolkit-3.1 )
|
||||
opengl? ( virtual/opengl )
|
||||
gsm? ( media-sound/gsm )
|
||||
jpeg? ( virtual/jpeg )
|
||||
ldap? ( net-nds/openldap )
|
||||
lcms? ( =media-libs/lcms-1* )
|
||||
mp3? ( >=media-sound/mpg123-1.5.0 )
|
||||
nls? ( sys-devel/gettext )
|
||||
samba? ( >=net-fs/samba-3.0.25 )
|
||||
xml? ( dev-libs/libxml2 dev-libs/libxslt )
|
||||
scanner? ( media-gfx/sane-backends )
|
||||
ssl? ( dev-libs/openssl )
|
||||
png? ( media-libs/libpng )
|
||||
v4l? ( media-libs/libv4l )
|
||||
!win64? ( ${MLIB_DEPS} )
|
||||
win32? ( ${MLIB_DEPS} )
|
||||
xcomposite? ( x11-libs/libXcomposite )"
|
||||
DEPEND="${RDEPEND}
|
||||
X? (
|
||||
x11-proto/inputproto
|
||||
x11-proto/xextproto
|
||||
x11-proto/xf86vidmodeproto
|
||||
)
|
||||
xinerama? ( x11-proto/xineramaproto )
|
||||
!hardened? ( sys-devel/prelink )
|
||||
virtual/yacc
|
||||
sys-devel/flex"
|
||||
|
||||
src_unpack() {
|
||||
if use win64 ; then
|
||||
[[ $(( $(gcc-major-version) * 100 + $(gcc-minor-version) )) -lt 404 ]] \
|
||||
&& die "you need gcc-4.4+ to build 64bit wine"
|
||||
fi
|
||||
|
||||
if [[ ${PV} == "9999" ]] ; then
|
||||
git-2_src_unpack
|
||||
else
|
||||
unpack ${MY_P}.tar.bz2
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
epatch "${FILESDIR}"/${PN}-1.1.15-winegcc.patch #260726
|
||||
epatch_user #282735
|
||||
sed -i '/^UPDATE_DESKTOP_DATABASE/s:=.*:=true:' tools/Makefile.in || die
|
||||
sed -i '/^MimeType/d' tools/wine.desktop || die #117785
|
||||
}
|
||||
|
||||
do_configure() {
|
||||
local builddir="${WORKDIR}/wine$1"
|
||||
mkdir -p "${builddir}"
|
||||
pushd "${builddir}" >/dev/null
|
||||
|
||||
ECONF_SOURCE=${S} \
|
||||
econf \
|
||||
--sysconfdir=/etc/wine \
|
||||
$(use_with alsa) \
|
||||
$(use_with capi) \
|
||||
$(use_with lcms cms) \
|
||||
$(use_with cups) \
|
||||
$(use_with ncurses curses) \
|
||||
$(use_with fontconfig) \
|
||||
$(use_with gnutls) \
|
||||
$(use_with gphoto2 gphoto) \
|
||||
$(use_with gsm) \
|
||||
$(use_with gstreamer) \
|
||||
--without-hal \
|
||||
$(use_with jpeg) \
|
||||
$(use_with ldap) \
|
||||
$(use_with mp3 mpg123) \
|
||||
$(use_with nls gettext) \
|
||||
$(use_with openal) \
|
||||
$(use_with opencl) \
|
||||
$(use_with opengl) \
|
||||
$(use_with ssl openssl) \
|
||||
$(use_with oss) \
|
||||
$(use_with png) \
|
||||
$(use_with threads pthread) \
|
||||
$(use_with scanner sane) \
|
||||
$(use_enable test tests) \
|
||||
$(use_with truetype freetype) \
|
||||
$(use_with v4l) \
|
||||
$(use_with X x) \
|
||||
$(use_with xcomposite) \
|
||||
$(use_with xinerama) \
|
||||
$(use_with xml) \
|
||||
$(use_with xml xslt) \
|
||||
$2
|
||||
|
||||
emake -j1 depend || die "depend"
|
||||
|
||||
popd >/dev/null
|
||||
}
|
||||
src_configure() {
|
||||
export LDCONFIG=/bin/true
|
||||
use custom-cflags || strip-flags
|
||||
|
||||
if use win64 ; then
|
||||
do_configure 64 --enable-win64
|
||||
use win32 && ABI=x86 do_configure 32 --with-wine64=../wine64
|
||||
else
|
||||
ABI=x86 do_configure 32 --disable-win64
|
||||
fi
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local b
|
||||
for b in 64 32 ; do
|
||||
local builddir="${WORKDIR}/wine${b}"
|
||||
[[ -d ${builddir} ]] || continue
|
||||
emake -C "${builddir}" all || die
|
||||
done
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local b
|
||||
for b in 64 32 ; do
|
||||
local builddir="${WORKDIR}/wine${b}"
|
||||
[[ -d ${builddir} ]] || continue
|
||||
emake -C "${builddir}" install DESTDIR="${D}" || die
|
||||
done
|
||||
dodoc ANNOUNCE AUTHORS README
|
||||
if use gecko ; then
|
||||
insinto /usr/share/wine/gecko
|
||||
doins "${DISTDIR}"/wine_gecko-${GV}-x86.msi || die
|
||||
use win64 && { doins "${DISTDIR}"/wine_gecko-${GV}-x86_64.msi || die ; }
|
||||
fi
|
||||
if ! use perl ; then
|
||||
rm "${D}"/usr/bin/{wine{dump,maker},function_grep.pl} "${D}"/usr/share/man/man1/wine{dump,maker}.1 || die
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
paxctl -psmr "${ROOT}"/usr/bin/wine{,-preloader} 2>/dev/null #255055
|
||||
}
|
@ -0,0 +1,204 @@
|
||||
# Copyright 1999-2011 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-emulation/wine/wine-1.3.34.ebuild,v 1.2 2011/12/02 23:32:04 vapier Exp $
|
||||
|
||||
EAPI="2"
|
||||
|
||||
inherit eutils flag-o-matic multilib
|
||||
|
||||
if [[ ${PV} == "9999" ]] ; then
|
||||
EGIT_REPO_URI="git://source.winehq.org/git/wine.git"
|
||||
inherit git-2
|
||||
SRC_URI=""
|
||||
#KEYWORDS=""
|
||||
else
|
||||
MY_P="${PN}-${PV/_/-}"
|
||||
SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.bz2"
|
||||
KEYWORDS="-* ~amd64 ~x86 ~x86-fbsd"
|
||||
S=${WORKDIR}/${MY_P}
|
||||
fi
|
||||
|
||||
GV="1.4"
|
||||
DESCRIPTION="free implementation of Windows(tm) on Unix"
|
||||
HOMEPAGE="http://www.winehq.org/"
|
||||
SRC_URI="${SRC_URI}
|
||||
gecko? (
|
||||
mirror://sourceforge/wine/wine_gecko-${GV}-x86.msi
|
||||
win64? ( mirror://sourceforge/wine/wine_gecko-${GV}-x86_64.msi )
|
||||
)"
|
||||
|
||||
LICENSE="LGPL-2.1"
|
||||
SLOT="0"
|
||||
IUSE="alsa capi cups custom-cflags dbus fontconfig +gecko gnutls gphoto2 gsm gstreamer hardened jpeg lcms ldap mp3 ncurses nls openal opencl +opengl +oss +perl png samba scanner ssl test +threads +truetype v4l +win32 +win64 +X xcomposite xinerama xml"
|
||||
RESTRICT="test" #72375
|
||||
|
||||
MLIB_DEPS="amd64? (
|
||||
truetype? ( >=app-emulation/emul-linux-x86-xlibs-2.1 )
|
||||
X? (
|
||||
>=app-emulation/emul-linux-x86-xlibs-2.1
|
||||
>=app-emulation/emul-linux-x86-soundlibs-2.1
|
||||
)
|
||||
mp3? ( app-emulation/emul-linux-x86-soundlibs )
|
||||
openal? ( app-emulation/emul-linux-x86-sdl )
|
||||
opengl? ( app-emulation/emul-linux-x86-opengl )
|
||||
scanner? ( app-emulation/emul-linux-x86-medialibs )
|
||||
v4l? ( app-emulation/emul-linux-x86-medialibs )
|
||||
app-emulation/emul-linux-x86-baselibs
|
||||
>=sys-kernel/linux-headers-2.6
|
||||
)"
|
||||
RDEPEND="truetype? ( >=media-libs/freetype-2.0.0 media-fonts/corefonts )
|
||||
perl? ( dev-lang/perl dev-perl/XML-Simple )
|
||||
capi? ( net-dialup/capi4k-utils )
|
||||
ncurses? ( >=sys-libs/ncurses-5.2 )
|
||||
fontconfig? ( media-libs/fontconfig )
|
||||
gphoto2? ( media-libs/libgphoto2 )
|
||||
openal? ( media-libs/openal )
|
||||
dbus? ( sys-apps/dbus )
|
||||
gnutls? ( net-libs/gnutls )
|
||||
gstreamer? ( media-libs/gstreamer media-libs/gst-plugins-base )
|
||||
X? (
|
||||
x11-libs/libXcursor
|
||||
x11-libs/libXrandr
|
||||
x11-libs/libXi
|
||||
x11-libs/libXmu
|
||||
x11-libs/libXxf86vm
|
||||
x11-apps/xmessage
|
||||
)
|
||||
xinerama? ( x11-libs/libXinerama )
|
||||
alsa? ( media-libs/alsa-lib )
|
||||
cups? ( net-print/cups )
|
||||
opencl? ( x11-drivers/nvidia-drivers >=dev-util/nvidia-cuda-toolkit-3.1 )
|
||||
opengl? ( virtual/opengl )
|
||||
gsm? ( media-sound/gsm )
|
||||
jpeg? ( virtual/jpeg )
|
||||
ldap? ( net-nds/openldap )
|
||||
lcms? ( =media-libs/lcms-1* )
|
||||
mp3? ( >=media-sound/mpg123-1.5.0 )
|
||||
nls? ( sys-devel/gettext )
|
||||
samba? ( >=net-fs/samba-3.0.25 )
|
||||
xml? ( dev-libs/libxml2 dev-libs/libxslt )
|
||||
scanner? ( media-gfx/sane-backends )
|
||||
ssl? ( dev-libs/openssl )
|
||||
png? ( media-libs/libpng )
|
||||
v4l? ( media-libs/libv4l )
|
||||
!win64? ( ${MLIB_DEPS} )
|
||||
win32? ( ${MLIB_DEPS} )
|
||||
xcomposite? ( x11-libs/libXcomposite )"
|
||||
DEPEND="${RDEPEND}
|
||||
X? (
|
||||
x11-proto/inputproto
|
||||
x11-proto/xextproto
|
||||
x11-proto/xf86vidmodeproto
|
||||
)
|
||||
xinerama? ( x11-proto/xineramaproto )
|
||||
!hardened? ( sys-devel/prelink )
|
||||
virtual/yacc
|
||||
sys-devel/flex"
|
||||
|
||||
src_unpack() {
|
||||
if use win64 ; then
|
||||
[[ $(( $(gcc-major-version) * 100 + $(gcc-minor-version) )) -lt 404 ]] \
|
||||
&& die "you need gcc-4.4+ to build 64bit wine"
|
||||
fi
|
||||
|
||||
if [[ ${PV} == "9999" ]] ; then
|
||||
git-2_src_unpack
|
||||
else
|
||||
unpack ${MY_P}.tar.bz2
|
||||
fi
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
epatch "${FILESDIR}"/${PN}-1.1.15-winegcc.patch #260726
|
||||
epatch_user #282735
|
||||
sed -i '/^UPDATE_DESKTOP_DATABASE/s:=.*:=true:' tools/Makefile.in || die
|
||||
sed -i '/^MimeType/d' tools/wine.desktop || die #117785
|
||||
}
|
||||
|
||||
do_configure() {
|
||||
local builddir="${WORKDIR}/wine$1"
|
||||
mkdir -p "${builddir}"
|
||||
pushd "${builddir}" >/dev/null
|
||||
|
||||
ECONF_SOURCE=${S} \
|
||||
econf \
|
||||
--sysconfdir=/etc/wine \
|
||||
$(use_with alsa) \
|
||||
$(use_with capi) \
|
||||
$(use_with lcms cms) \
|
||||
$(use_with cups) \
|
||||
$(use_with ncurses curses) \
|
||||
$(use_with fontconfig) \
|
||||
$(use_with gnutls) \
|
||||
$(use_with gphoto2 gphoto) \
|
||||
$(use_with gsm) \
|
||||
$(use_with gstreamer) \
|
||||
--without-hal \
|
||||
$(use_with jpeg) \
|
||||
$(use_with ldap) \
|
||||
$(use_with mp3 mpg123) \
|
||||
$(use_with nls gettext) \
|
||||
$(use_with openal) \
|
||||
$(use_with opencl) \
|
||||
$(use_with opengl) \
|
||||
$(use_with ssl openssl) \
|
||||
$(use_with oss) \
|
||||
$(use_with png) \
|
||||
$(use_with threads pthread) \
|
||||
$(use_with scanner sane) \
|
||||
$(use_enable test tests) \
|
||||
$(use_with truetype freetype) \
|
||||
$(use_with v4l) \
|
||||
$(use_with X x) \
|
||||
$(use_with xcomposite) \
|
||||
$(use_with xinerama) \
|
||||
$(use_with xml) \
|
||||
$(use_with xml xslt) \
|
||||
$2
|
||||
|
||||
emake -j1 depend || die "depend"
|
||||
|
||||
popd >/dev/null
|
||||
}
|
||||
src_configure() {
|
||||
export LDCONFIG=/bin/true
|
||||
use custom-cflags || strip-flags
|
||||
|
||||
if use win64 ; then
|
||||
do_configure 64 --enable-win64
|
||||
use win32 && ABI=x86 do_configure 32 --with-wine64=../wine64
|
||||
else
|
||||
ABI=x86 do_configure 32 --disable-win64
|
||||
fi
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
local b
|
||||
for b in 64 32 ; do
|
||||
local builddir="${WORKDIR}/wine${b}"
|
||||
[[ -d ${builddir} ]] || continue
|
||||
emake -C "${builddir}" all || die
|
||||
done
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local b
|
||||
for b in 64 32 ; do
|
||||
local builddir="${WORKDIR}/wine${b}"
|
||||
[[ -d ${builddir} ]] || continue
|
||||
emake -C "${builddir}" install DESTDIR="${D}" || die
|
||||
done
|
||||
dodoc ANNOUNCE AUTHORS README
|
||||
if use gecko ; then
|
||||
insinto /usr/share/wine/gecko
|
||||
doins "${DISTDIR}"/wine_gecko-${GV}-x86.msi || die
|
||||
use win64 && { doins "${DISTDIR}"/wine_gecko-${GV}-x86_64.msi || die ; }
|
||||
fi
|
||||
if ! use perl ; then
|
||||
rm "${D}"/usr/bin/{wine{dump,maker},function_grep.pl} "${D}"/usr/share/man/man1/wine{dump,maker}.1 || die
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
paxctl -psmr "${ROOT}"/usr/bin/wine{,-preloader} 2>/dev/null #255055
|
||||
}
|
@ -0,0 +1,13 @@
|
||||
--- gnusim8085-1.3.7/src/Makefile.am.orig
|
||||
+++ gnusim8085-1.3.7/src/Makefile.am
|
||||
@@ -11,9 +11,7 @@
|
||||
|
||||
gnusim8085_CFLAGS =\
|
||||
-DPACKAGE_DOC_DIR=\"$(docdir)\"\
|
||||
- -Wall\
|
||||
- -O1\
|
||||
- -g
|
||||
+ -Wall
|
||||
|
||||
if WIN32
|
||||
gnusim8085_CFLAGS += \
|
@ -0,0 +1,371 @@
|
||||
# Copyright 1999-2011 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-java/icedtea/icedtea-6.1.10.4-r3.ebuild,v 1.1 2011/12/02 12:27:17 sera Exp $
|
||||
# Build written by Andrew John Hughes (gnu_andrew@member.fsf.org)
|
||||
|
||||
# *********************************************************
|
||||
# * IF YOU CHANGE THIS EBUILD, CHANGE ICEDTEA-7.* AS WELL *
|
||||
# *********************************************************
|
||||
|
||||
EAPI="4"
|
||||
|
||||
inherit java-pkg-2 java-vm-2 pax-utils prefix versionator
|
||||
|
||||
ICEDTEA_PKG=${PN}$(replace_version_separator 1 -)
|
||||
OPENJDK_BUILD="22"
|
||||
OPENJDK_DATE="28_feb_2011"
|
||||
OPENJDK_TARBALL="openjdk-6-src-b${OPENJDK_BUILD}-${OPENJDK_DATE}.tar.gz"
|
||||
JAXP_TARBALL="jaxp144_01.zip"
|
||||
JAXWS_TARBALL="jdk6-jaxws-b20.zip"
|
||||
JAF_TARBALL="jdk6-jaf-b20.zip"
|
||||
HOTSPOT_TARBALL="f0f676c5a2c6.tar.gz"
|
||||
CACAO_TARBALL="c7bf150bfa46.tar.gz" # 17 Mar 2011
|
||||
JAMVM_TARBALL="jamvm-a95ca049d3bb257d730535a5d5ec3f73a943d0aa.tar.gz" # 25 Mar 2011
|
||||
#CACAO_TARBALL="cacao-2204b08fcae9.tar.gz" # 03 Nov 2011
|
||||
#JAMVM_TARBALL="jamvm-4617da717ecb05654ea5bb9572338061106a414d.tar.gz" # 10 Oct 2011
|
||||
S=${WORKDIR}/${ICEDTEA_PKG}
|
||||
|
||||
DESCRIPTION="A harness to build OpenJDK using Free Software build tools and dependencies"
|
||||
HOMEPAGE="http://icedtea.classpath.org"
|
||||
SRC_URI="
|
||||
http://icedtea.classpath.org/download/source/${ICEDTEA_PKG}.tar.gz
|
||||
http://download.java.net/openjdk/jdk6/promoted/b${OPENJDK_BUILD}/${OPENJDK_TARBALL}
|
||||
http://icedtea.classpath.org/download/drops/${JAXWS_TARBALL}
|
||||
http://icedtea.classpath.org/download/drops/${JAF_TARBALL}
|
||||
http://icedtea.classpath.org/download/drops/${JAXP_TARBALL}
|
||||
hs20? ( http://hg.openjdk.java.net/hsx/hsx20/master/archive/${HOTSPOT_TARBALL} )
|
||||
cacao? ( http://icedtea.classpath.org/download/drops/cacao/${CACAO_TARBALL} )
|
||||
jamvm? ( http://icedtea.classpath.org/download/drops/jamvm/${JAMVM_TARBALL} )"
|
||||
|
||||
LICENSE="Apache-1.1 Apache-2.0 GPL-1 GPL-2 GPL-2-with-linking-exception LGPL-2 MPL-1.0 MPL-1.1 public-domain W3C"
|
||||
SLOT="6"
|
||||
KEYWORDS="~amd64 ~ppc ~ppc64 ~x86"
|
||||
|
||||
# Missing options: zero shark - for building additional vms
|
||||
IUSE="+X +alsa -cacao cjk +cups debug doc examples +hs20 -jamvm javascript
|
||||
+jbootstrap nio2 +nsplugin +nss pulseaudio +source systemtap +webstart"
|
||||
REQUIRED_USE="
|
||||
cacao? ( jbootstrap )
|
||||
jamvm? ( jbootstrap )"
|
||||
|
||||
# JTReg doesn't pass at present
|
||||
RESTRICT="test"
|
||||
|
||||
# Ideally the following were optional at build time.
|
||||
ALSA_COMMON_DEP="
|
||||
>=media-libs/alsa-lib-1.0"
|
||||
CUPS_COMMON_DEP="
|
||||
>=net-print/cups-1.2.12"
|
||||
X_COMMON_DEP="
|
||||
dev-libs/glib
|
||||
>=media-libs/freetype-2.3.5
|
||||
>=x11-libs/gtk+-2.8:2
|
||||
>=x11-libs/libX11-1.1.3
|
||||
>=x11-libs/libXext-1.1.1
|
||||
>=x11-libs/libXi-1.1.3
|
||||
>=x11-libs/libXrender-0.9.4
|
||||
>=x11-libs/libXtst-1.0.3"
|
||||
X_DEPEND="
|
||||
>=x11-libs/libXau-1.0.3
|
||||
>=x11-libs/libXdmcp-1.0.2
|
||||
>=x11-libs/libXinerama-1.0.2
|
||||
>=x11-libs/libXp-1.0.0
|
||||
x11-proto/inputproto
|
||||
>=x11-proto/xextproto-7.1.1
|
||||
x11-proto/xineramaproto
|
||||
x11-proto/xproto"
|
||||
|
||||
# virtual/libffi is needed for Zero
|
||||
COMMON_DEP="
|
||||
>=media-libs/giflib-4.1.6
|
||||
>=media-libs/libpng-1.2
|
||||
>=sys-devel/gcc-4.3
|
||||
>=sys-libs/glibc-2.11.2
|
||||
>=sys-libs/zlib-1.2.3
|
||||
virtual/jpeg
|
||||
javascript? ( dev-java/rhino:1.6 )
|
||||
nss? ( >=dev-libs/nss-3.12.5-r1 )
|
||||
pulseaudio? ( >=media-sound/pulseaudio-0.9.11 )
|
||||
systemtap? ( >=dev-util/systemtap-1 )
|
||||
!amd64? ( !sparc? ( !x86? ( virtual/libffi ) ) )"
|
||||
|
||||
# media-fonts/lklug needs ppc ppc64 keywords
|
||||
RDEPEND="${COMMON_DEP}
|
||||
!dev-java/icedtea6
|
||||
X? (
|
||||
${X_COMMON_DEP}
|
||||
media-fonts/dejavu
|
||||
cjk? (
|
||||
media-fonts/arphicfonts
|
||||
media-fonts/baekmuk-fonts
|
||||
!ppc? ( !ppc64? ( media-fonts/lklug ) )
|
||||
media-fonts/lohit-fonts
|
||||
media-fonts/sazanami
|
||||
)
|
||||
)
|
||||
alsa? ( ${ALSA_COMMON_DEP} )
|
||||
cups? ( ${CUPS_COMMON_DEP} )"
|
||||
|
||||
# Additional dependencies for building:
|
||||
# zip: extract OpenJDK tarball, and needed by configure
|
||||
# xalan/xerces: automatic code generation (also needed for Ant 1.8.0 to work properly)
|
||||
# ant, jdk: required to build Java code
|
||||
# ecj: required for bootstrap builds
|
||||
# Only ant-core-1.7.1-r2 and later contain a version of Ant that
|
||||
# properly respects environment variables, if the build
|
||||
# sets some environment variables.
|
||||
# ca-certificates, perl and openssl are used for the cacerts keystore generation
|
||||
# xext headers have two variants depending on version - bug #288855
|
||||
# !eclipse-ecj-3.7 - bug #392587
|
||||
DEPEND="${COMMON_DEP} ${ALSA_COMMON_DEP} ${CUPS_COMMON_DEP} ${X_COMMON_DEP}
|
||||
|| (
|
||||
>=dev-java/gcj-jdk-4.3
|
||||
dev-java/icedtea-bin:6
|
||||
dev-java/icedtea:6
|
||||
)
|
||||
app-arch/cpio
|
||||
app-arch/zip
|
||||
app-misc/ca-certificates
|
||||
>=dev-java/ant-core-1.7.1-r2
|
||||
dev-java/ant-nodeps
|
||||
>=dev-java/xalan-2.7.0:0
|
||||
>=dev-java/xerces-2.9.1:2
|
||||
dev-lang/perl
|
||||
dev-libs/openssl
|
||||
dev-util/pkgconfig
|
||||
sys-apps/lsb-release
|
||||
${X_DEPEND}
|
||||
jbootstrap? (
|
||||
|| ( <dev-java/eclipse-ecj-3.7 dev-java/ecj-gcj )
|
||||
)"
|
||||
|
||||
PDEPEND="webstart? ( dev-java/icedtea-web:6 )
|
||||
nsplugin? ( dev-java/icedtea-web:6[nsplugin] )"
|
||||
|
||||
# a bit of hack so the VM switching is triggered without causing dependency troubles
|
||||
JAVA_PKG_NV_DEPEND=">=virtual/jdk-1.5"
|
||||
JAVA_PKG_WANT_SOURCE="1.5"
|
||||
JAVA_PKG_WANT_TARGET="1.5"
|
||||
|
||||
pkg_setup() {
|
||||
if use nsplugin && ! use webstart ; then
|
||||
elog "Note that the nsplugin flag implies the webstart flag. Enable it to remove this message."
|
||||
fi
|
||||
|
||||
[[ "${MERGE_TYPE}" == "binary" ]] && return #258423
|
||||
|
||||
# icedtea doesn't like some locales. #330433 #389717
|
||||
export LANG="C" LC_ALL="C"
|
||||
|
||||
# quite a hack since java-config does not provide a way for a package
|
||||
# to limit supported VM's for building and their preferred order
|
||||
if [[ -n "${JAVA_PKG_FORCE_VM}" ]]; then
|
||||
einfo "Honoring user-set JAVA_PKG_FORCE_VM"
|
||||
elif has_version "<=dev-java/icedtea-6.1.10.4:6"; then
|
||||
JAVA_PKG_FORCE_VM="icedtea6"
|
||||
elif has_version ">dev-java/icedtea-6.1.10.4:6"; then
|
||||
JAVA_PKG_FORCE_VM="icedtea-6"
|
||||
elif has_version "<dev-java/icedtea-bin-6.1.10.4:6"; then
|
||||
JAVA_PKG_FORCE_VM="icedtea6-bin"
|
||||
elif has_version ">=dev-java/icedtea-bin-6.1.10.4:6"; then
|
||||
JAVA_PKG_FORCE_VM="icedtea-bin-6"
|
||||
elif has_version dev-java/gcj-jdk; then
|
||||
JAVA_PKG_FORCE_VM="gcj-jdk"
|
||||
else
|
||||
die "Unable to find a supported VM for building"
|
||||
fi
|
||||
|
||||
einfo "Forced vm ${JAVA_PKG_FORCE_VM}"
|
||||
java-vm-2_pkg_setup
|
||||
java-pkg-2_pkg_setup
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
unpack ${ICEDTEA_PKG}.tar.gz
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local config bootstrap
|
||||
local vm=$(java-pkg_get-current-vm)
|
||||
|
||||
# IcedTea6 can't be built using IcedTea7; its class files are too new
|
||||
if has "${vm}" icedtea6 icedtea-6 icedtea6-bin icedtea-bin-6; then
|
||||
use jbootstrap && bootstrap=yes
|
||||
elif has "${vm}" gcj-jdk; then
|
||||
# gcj-jdk ensures ecj is present.
|
||||
use jbootstrap || einfo "bootstrap forced on for ${vm}, ignoring use jbootstrap"
|
||||
bootstrap=yes
|
||||
else
|
||||
eerror "IcedTea${SLOT} must be built with either a JDK based on GNU Classpath or an existing build of IcedTea${SLOT}."
|
||||
die "Install a GNU Classpath JDK (gcj-jdk)"
|
||||
fi
|
||||
|
||||
if [[ ${bootstrap} ]] ; then
|
||||
local ecj_jar="$(readlink "${EPREFIX}"/usr/share/eclipse-ecj/ecj.jar)"
|
||||
|
||||
# Don't use eclipse-ecj-3.7 #392587
|
||||
local ecj_all=( "${EPREFIX}"/usr/share/{eclipse-ecj,ecj-gcj}-* )
|
||||
ecj_all=( "${ecj_all[@]/*eclipse-ecj-3.7*/}" )
|
||||
if ! has "${ecj_jar%/lib/ecj.jar}" "${ecj_all[@]}"; then
|
||||
ecj_jar="${ecj_jar%/lib/ecj.jar}"
|
||||
ewarn "${ecj_jar##*/} set as system ecj, can't use for bootstrap"
|
||||
ewarn "Found usable: ${ecj_all[@]##*/}"
|
||||
ewarn "using ${ecj_all##*/} instead"
|
||||
ecj_jar="${ecj_all}"/lib/ecj.jar
|
||||
fi
|
||||
|
||||
config="${config} --enable-bootstrap"
|
||||
config="${config} --with-ecj-jar=${ecj_jar}"
|
||||
else
|
||||
config="${config} --disable-bootstrap"
|
||||
fi
|
||||
|
||||
# Always use HotSpot as the primary VM if available. #389521 #368669 #357633 ...
|
||||
if has "${ARCH}" amd64 sparc x86; then
|
||||
config="${config} --disable-zero --disable-cacao --disable-jamvm --disable-shark"
|
||||
|
||||
if [[ ${bootstrap} ]]; then
|
||||
local extra_vms
|
||||
#if use shark; then
|
||||
# extra_vms="${extra_vms},shark"
|
||||
#elif use zero; then
|
||||
# extra_vms="${extra_vms},zero"
|
||||
#fi
|
||||
if use cacao; then
|
||||
extra_vms="${extra_vms},cacao"
|
||||
config="${config} --with-cacao-src-zip=${DISTDIR}/${CACAO_TARBALL}"
|
||||
fi
|
||||
if use jamvm; then
|
||||
extra_vms="${extra_vms},jamvm"
|
||||
config="${config} --with-jamvm-src-zip=${DISTDIR}/${JAMVM_TARBALL}"
|
||||
fi
|
||||
if [[ ${extra_vms} ]]; then
|
||||
config="${config} --with-additional-vms=${extra_vms#,}"
|
||||
fi
|
||||
elif use cacao || use jamvm; then
|
||||
ewarn "Can't build additional VMs without bootstrap."
|
||||
ewarn "Rebuild IcedTea with a JDK that allows bootstrapping."
|
||||
fi
|
||||
else
|
||||
config="${config} --enable-zero --disable-cacao --disable-jamvm --disable-shark"
|
||||
# local extra_vms
|
||||
fi
|
||||
|
||||
# OpenJDK-specific parallelism support. Bug #389791, #337827
|
||||
# Implementation modified from waf-utils.eclass
|
||||
# Note that "-j" is converted to "-j1" as the system doesn't support --load-average
|
||||
local procs=$(echo -j1 ${MAKEOPTS} | sed -r "s/.*(-j\s*|--jobs=)([0-9]+).*/\2/" )
|
||||
config="${config} --with-parallel-jobs=${procs}";
|
||||
einfo "Configuring using --with-parallel-jobs=${procs}"
|
||||
|
||||
if use javascript ; then
|
||||
config="${config} --with-rhino=$(java-pkg_getjar rhino:1.6 js.jar)"
|
||||
else
|
||||
config="${config} --without-rhino"
|
||||
fi
|
||||
|
||||
if use hs20 ; then
|
||||
config="${config} --with-hotspot-build=hs20 --with-hotspot-src-zip=${DISTDIR}/${HOTSPOT_TARBALL}"
|
||||
fi
|
||||
|
||||
unset JAVA_HOME JDK_HOME CLASSPATH JAVAC JAVACFLAGS
|
||||
|
||||
econf ${config} \
|
||||
--with-openjdk-src-zip="${DISTDIR}/${OPENJDK_TARBALL}" \
|
||||
--with-jaxp-drop-zip="${DISTDIR}/${JAXP_TARBALL}" \
|
||||
--with-jaxws-drop-zip="${DISTDIR}/${JAXWS_TARBALL}" \
|
||||
--with-jaf-drop-zip="${DISTDIR}/${JAF_TARBALL}" \
|
||||
--with-jdk-home="$(java-config -O)" \
|
||||
--with-abs-install-dir=/usr/$(get_libdir)/icedtea${SLOT} \
|
||||
$(use_enable !debug optimizations) \
|
||||
$(use_enable doc docs) \
|
||||
$(use_enable nio2) \
|
||||
$(use_enable nss) \
|
||||
$(use_enable pulseaudio pulse-java) \
|
||||
$(use_enable systemtap)
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Newer versions of Gentoo's ant add
|
||||
# an environment variable so it works properly...
|
||||
export ANT_RESPECT_JAVA_HOME=TRUE
|
||||
|
||||
# ant -diagnostics in Ant 1.8.0 fails without xerces-2 and xalan
|
||||
# We try to load the least that's needed to avoid possible classpath collisions
|
||||
export ANT_TASKS="xerces-2 xalan ant-nodeps"
|
||||
|
||||
# Build and pax mark the intermidiate jdk. #389751
|
||||
if host-is-pax; then
|
||||
emake icedtea-ecj
|
||||
java-vm_set-pax-markings openjdk.build-ecj/j2sdk-image
|
||||
fi
|
||||
|
||||
emake
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local dest="/usr/$(get_libdir)/icedtea${SLOT}"
|
||||
local ddest="${ED}/${dest}"
|
||||
dodir "${dest}"
|
||||
|
||||
dodoc README NEWS AUTHORS THANKYOU
|
||||
dosym /usr/share/doc/${PF} /usr/share/doc/${PN}${SLOT}
|
||||
|
||||
cd openjdk.build/j2sdk-image || die
|
||||
|
||||
# doins can't handle symlinks.
|
||||
cp -vRP bin include jre lib man "${ddest}" || die
|
||||
|
||||
dodoc ASSEMBLY_EXCEPTION THIRD_PARTY_README
|
||||
|
||||
if use doc; then
|
||||
# java-pkg_dohtml needed for package-list #302654
|
||||
java-pkg_dohtml -r ../docs/* || die
|
||||
fi
|
||||
|
||||
if use examples; then
|
||||
dodir "${dest}/share";
|
||||
cp -vRP demo sample "${ddest}/share/" || die
|
||||
fi
|
||||
|
||||
if use source; then
|
||||
cp src.zip "${ddest}" || die
|
||||
fi
|
||||
|
||||
# Fix the permissions.
|
||||
find "${ddest}" \! -type l \( -perm /111 -exec chmod 755 {} \; -o -exec chmod 644 {} \; \) || die
|
||||
|
||||
# Needs to be done before generating cacerts
|
||||
java-vm_set-pax-markings "${ddest}"
|
||||
|
||||
# We need to generate keystore - bug #273306
|
||||
einfo "Generating cacerts file from certificates in ${EPREFIX}/usr/share/ca-certificates/"
|
||||
mkdir "${T}/certgen" && cd "${T}/certgen" || die
|
||||
cp "${FILESDIR}/generate-cacerts.pl" . && chmod +x generate-cacerts.pl || die
|
||||
for c in "${EPREFIX}"/usr/share/ca-certificates/*/*.crt; do
|
||||
openssl x509 -text -in "${c}" >> all.crt || die
|
||||
done
|
||||
./generate-cacerts.pl "${ddest}/bin/keytool" all.crt || die
|
||||
cp -vRP cacerts "${ddest}/jre/lib/security/" || die
|
||||
chmod 644 "${ddest}/jre/lib/security/cacerts" || die
|
||||
|
||||
# Bug 390663
|
||||
cp "${FILESDIR}"/fontconfig.Gentoo.properties.src "${T}"/fontconfig.Gentoo.properties || die
|
||||
eprefixify "${T}"/fontconfig.Gentoo.properties
|
||||
insinto "${dest}"/jre/lib
|
||||
doins "${T}"/fontconfig.Gentoo.properties
|
||||
|
||||
set_java_env "${FILESDIR}/icedtea.env"
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
if has_version "<=dev-java/icedtea-6.1.10.4:${SLOT}"; then
|
||||
# portage would preserve the symlink otherwise, related to bug #384397
|
||||
rm -f "${EROOT}/usr/lib/jvm/icedtea6"
|
||||
elog "To unify the layout and simplify scripts, the identifier of Icedtea-6*"
|
||||
elog "has changed from 'icedtea6' to 'icedtea-6' starting from version 6.1.10.4-r1"
|
||||
elog "If you had icedtea6 as system VM, the change should be automatic, however"
|
||||
elog "build VM settings in /etc/java-config-2/build/jdk.conf are not changed"
|
||||
elog "and the same holds for any user VM settings. Sorry for the inconvenience."
|
||||
fi
|
||||
}
|
@ -0,0 +1,399 @@
|
||||
# Copyright 1999-2011 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-java/icedtea/icedtea-7.2.0-r3.ebuild,v 1.1 2011/12/02 12:27:17 sera Exp $
|
||||
# Build written by Andrew John Hughes (gnu_andrew@member.fsf.org)
|
||||
|
||||
# *********************************************************
|
||||
# * IF YOU CHANGE THIS EBUILD, CHANGE ICEDTEA-6.* AS WELL *
|
||||
# *********************************************************
|
||||
|
||||
EAPI="4"
|
||||
|
||||
inherit java-pkg-2 java-vm-2 pax-utils prefix versionator
|
||||
|
||||
ICEDTEA_PKG=icedtea-$(get_version_component_range 2-3)
|
||||
OPENJDK_TARBALL="0a76e5390e68.tar.gz"
|
||||
CORBA_TARBALL="4d9e4fb8af09.tar.gz"
|
||||
HOTSPOT_TARBALL="b28ae681bae0.tar.gz"
|
||||
JAXP_TARBALL="948e734135ea.tar.gz"
|
||||
JAXWS_TARBALL="a2ebfdc9db7e.tar.gz"
|
||||
JDK_TARBALL="2054526dd141.tar.gz"
|
||||
LANGTOOLS_TARBALL="9b85f1265346.tar.gz"
|
||||
CACAO_TARBALL="4549072ab2de.tar.gz" # 30 Aug 2011
|
||||
JAMVM_TARBALL="jamvm-310c491ddc14e92a6ffff27030a1a1821e6395a8.tar.gz" # 26 Sep 2011
|
||||
#CACAO_TARBALL="cacao-2204b08fcae9.tar.gz" # 03 Nov 2011
|
||||
#JAMVM_TARBALL="jamvm-4617da717ecb05654ea5bb9572338061106a414d.tar.gz" # 10 Oct 2011
|
||||
S=${WORKDIR}/${ICEDTEA_PKG}
|
||||
|
||||
DESCRIPTION="A harness to build OpenJDK using Free Software build tools and dependencies"
|
||||
HOMEPAGE="http://icedtea.classpath.org"
|
||||
SRC_URI="
|
||||
http://icedtea.classpath.org/download/source/${ICEDTEA_PKG}.tar.gz
|
||||
http://icedtea.classpath.org/hg/release/icedtea7-forest-2.0/archive/${OPENJDK_TARBALL}
|
||||
http://icedtea.classpath.org/hg/release/icedtea7-forest-2.0/corba/archive/${CORBA_TARBALL}
|
||||
http://icedtea.classpath.org/hg/release/icedtea7-forest-2.0/jaxp/archive/${JAXP_TARBALL}
|
||||
http://icedtea.classpath.org/hg/release/icedtea7-forest-2.0/jaxws/archive/${JAXWS_TARBALL}
|
||||
http://icedtea.classpath.org/hg/release/icedtea7-forest-2.0/jdk/archive/${JDK_TARBALL}
|
||||
http://icedtea.classpath.org/hg/release/icedtea7-forest-2.0/hotspot/archive/${HOTSPOT_TARBALL}
|
||||
http://icedtea.classpath.org/hg/release/icedtea7-forest-2.0/langtools/archive/${LANGTOOLS_TARBALL}
|
||||
jamvm? ( http://icedtea.classpath.org/download/drops/jamvm/${JAMVM_TARBALL} )"
|
||||
#cacao? ( http://icedtea.classpath.org/download/drops/cacao/${CACAO_TARBALL} )
|
||||
|
||||
LICENSE="Apache-1.1 Apache-2.0 GPL-1 GPL-2 GPL-2-with-linking-exception LGPL-2 MPL-1.0 MPL-1.1 public-domain W3C"
|
||||
SLOT="7"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
|
||||
# Missing options: cacao zero shark - for building additional vms
|
||||
IUSE="+X +alsa cjk +cups debug doc examples -jamvm javascript +jbootstrap
|
||||
+nsplugin +nss pulseaudio +source systemtap +webstart"
|
||||
REQUIRED_USE="
|
||||
jamvm? ( jbootstrap )"
|
||||
#cacao? ( jbootstrap )
|
||||
|
||||
# Ideally the following were optional at build time.
|
||||
ALSA_COMMON_DEP="
|
||||
>=media-libs/alsa-lib-1.0"
|
||||
CUPS_COMMON_DEP="
|
||||
>=net-print/cups-1.2.12"
|
||||
X_COMMON_DEP="
|
||||
>=dev-libs/atk-1.30.0
|
||||
>=dev-libs/glib-2.26
|
||||
media-libs/fontconfig
|
||||
>=media-libs/freetype-2.3.5
|
||||
>=x11-libs/cairo-1.8.8
|
||||
x11-libs/gdk-pixbuf:2
|
||||
>=x11-libs/gtk+-2.8:2
|
||||
>=x11-libs/libX11-1.1.3
|
||||
>=x11-libs/libXext-1.1.1
|
||||
>=x11-libs/libXi-1.1.3
|
||||
>=x11-libs/libXrender-0.9.4
|
||||
>=x11-libs/libXtst-1.0.3
|
||||
>=x11-libs/pango-1.24.5"
|
||||
X_DEPEND="
|
||||
>=x11-libs/libXau-1.0.3
|
||||
>=x11-libs/libXdmcp-1.0.2
|
||||
>=x11-libs/libXinerama-1.0.2
|
||||
>=x11-libs/libXp-1.0.0
|
||||
x11-proto/inputproto
|
||||
>=x11-proto/xextproto-7.1.1
|
||||
x11-proto/xineramaproto
|
||||
x11-proto/xproto"
|
||||
|
||||
# virtual/libffi is needed for Zero
|
||||
COMMON_DEP="
|
||||
>=media-libs/giflib-4.1.6
|
||||
media-libs/lcms:2
|
||||
>=media-libs/libpng-1.2
|
||||
>=sys-devel/gcc-4.3
|
||||
>=sys-libs/glibc-2.11.2
|
||||
>=sys-libs/zlib-1.2.3
|
||||
virtual/jpeg
|
||||
javascript? ( dev-java/rhino:1.6 )
|
||||
nss? ( >=dev-libs/nss-3.12.5-r1 )
|
||||
pulseaudio? ( >=media-sound/pulseaudio-0.9.11 )
|
||||
systemtap? ( >=dev-util/systemtap-1 )
|
||||
!amd64? ( !sparc? ( !x86? ( virtual/libffi ) ) )"
|
||||
|
||||
# cups is needed for X. #390945 #390975
|
||||
RDEPEND="${COMMON_DEP}
|
||||
!dev-java/icedtea:0
|
||||
X? (
|
||||
${CUPS_COMMON_DEP}
|
||||
${X_COMMON_DEP}
|
||||
media-fonts/dejavu
|
||||
cjk? (
|
||||
media-fonts/arphicfonts
|
||||
media-fonts/baekmuk-fonts
|
||||
media-fonts/lklug
|
||||
media-fonts/lohit-fonts
|
||||
media-fonts/sazanami
|
||||
)
|
||||
)
|
||||
alsa? ( ${ALSA_COMMON_DEP} )
|
||||
cups? ( ${CUPS_COMMON_DEP} )"
|
||||
|
||||
# Additional dependencies for building:
|
||||
# zip: extract OpenJDK tarball, and needed by configure
|
||||
# ant, jdk: required to build Java code
|
||||
# ecj: required for bootstrap builds
|
||||
# Only ant-core-1.8.1 has fixed ant -diagnostics when xerces+xalan are not present.
|
||||
# ca-certificates, perl and openssl are used for the cacerts keystore generation
|
||||
# xext headers have two variants depending on version - bug #288855
|
||||
# autoconf - as long as we use eautoreconf, version restrictions for bug #294918
|
||||
DEPEND="${COMMON_DEP} ${ALSA_COMMON_DEP} ${CUPS_COMMON_DEP} ${X_COMMON_DEP}
|
||||
|| (
|
||||
>=dev-java/gcj-jdk-4.3
|
||||
dev-java/icedtea-bin:7
|
||||
dev-java/icedtea-bin:6
|
||||
dev-java/icedtea:7
|
||||
dev-java/icedtea:6
|
||||
)
|
||||
app-arch/cpio
|
||||
app-arch/zip
|
||||
app-misc/ca-certificates
|
||||
>=dev-java/ant-core-1.8.1
|
||||
dev-java/ant-nodeps
|
||||
dev-lang/perl
|
||||
>=dev-libs/libxslt-1.1.26
|
||||
dev-libs/openssl
|
||||
dev-util/pkgconfig
|
||||
sys-apps/attr
|
||||
sys-apps/lsb-release
|
||||
${X_DEPEND}
|
||||
jbootstrap? (
|
||||
|| ( dev-java/eclipse-ecj dev-java/ecj-gcj )
|
||||
)"
|
||||
# || ( >=sys-devel/autoconf-2.65:2.5 <sys-devel/autoconf-2.64:2.5 )"
|
||||
|
||||
PDEPEND="webstart? ( dev-java/icedtea-web:7 )
|
||||
nsplugin? ( dev-java/icedtea-web:7[nsplugin] )"
|
||||
|
||||
# a bit of hack so the VM switching is triggered without causing dependency troubles
|
||||
JAVA_PKG_NV_DEPEND=">=virtual/jdk-1.5"
|
||||
JAVA_PKG_WANT_SOURCE="1.5"
|
||||
JAVA_PKG_WANT_TARGET="1.5"
|
||||
|
||||
pkg_setup() {
|
||||
if use nsplugin && ! use webstart ; then
|
||||
elog "Note that the nsplugin flag implies the webstart flag. Enable it to remove this message."
|
||||
fi
|
||||
|
||||
[[ "${MERGE_TYPE}" == "binary" ]] && return #258423
|
||||
|
||||
# icedtea doesn't like some locales. #330433 #389717
|
||||
export LANG="C" LC_ALL="C"
|
||||
|
||||
# quite a hack since java-config does not provide a way for a package
|
||||
# to limit supported VM's for building and their preferred order
|
||||
if [[ -n "${JAVA_PKG_FORCE_VM}" ]]; then
|
||||
einfo "Honoring user-set JAVA_PKG_FORCE_VM"
|
||||
elif has_version "<=dev-java/icedtea-7.2.0:7"; then
|
||||
JAVA_PKG_FORCE_VM="icedtea7"
|
||||
elif has_version ">dev-java/icedtea-7.2.0:7"; then
|
||||
JAVA_PKG_FORCE_VM="icedtea-7"
|
||||
elif has_version "dev-java/icedtea-bin:7"; then
|
||||
JAVA_PKG_FORCE_VM="icedtea-bin-7"
|
||||
elif has_version "<=dev-java/icedtea-6.1.10.4:6"; then
|
||||
JAVA_PKG_FORCE_VM="icedtea6"
|
||||
elif has_version ">dev-java/icedtea-6.1.10.4:6"; then
|
||||
JAVA_PKG_FORCE_VM="icedtea-6"
|
||||
elif has_version "<dev-java/icedtea-bin-6.1.10.4:6"; then
|
||||
JAVA_PKG_FORCE_VM="icedtea6-bin"
|
||||
elif has_version ">=dev-java/icedtea-bin-6.1.10.4:6"; then
|
||||
JAVA_PKG_FORCE_VM="icedtea-bin-6"
|
||||
elif has_version dev-java/gcj-jdk; then
|
||||
JAVA_PKG_FORCE_VM="gcj-jdk"
|
||||
else
|
||||
die "Unable to find a supported VM for building"
|
||||
fi
|
||||
|
||||
einfo "Forced vm ${JAVA_PKG_FORCE_VM}"
|
||||
java-vm-2_pkg_setup
|
||||
java-pkg-2_pkg_setup
|
||||
|
||||
# For bootstrap builds as the sandbox control file might not yet exist.
|
||||
addpredict /proc/self/coredump_filter
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
unpack ${ICEDTEA_PKG}.tar.gz
|
||||
}
|
||||
|
||||
java_prepare() {
|
||||
# Fix non bootstrap builds with PaX enabled kernels. Bug #389751
|
||||
# Move applying test_gamma.patch to before creating boot copy.
|
||||
if host-is-pax; then
|
||||
sed -i -e 's|patches/boot/test_gamma.patch||' Makefile.in || die
|
||||
sed -i -e 's|openjdk-boot|openjdk|g' patches/boot/test_gamma.patch || die
|
||||
export DISTRIBUTION_PATCHES=patches/boot/test_gamma.patch
|
||||
fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local config bootstrap
|
||||
local vm=$(java-pkg_get-current-vm)
|
||||
|
||||
if has "${vm}" icedtea7 icedtea-7 icedtea-bin-7; then
|
||||
use jbootstrap && bootstrap=yes
|
||||
elif has "${vm}" icedtea6 icedtea-6 icedtea6-bin icedtea-bin-6; then
|
||||
if use jbootstrap; then
|
||||
einfo "We can't currently bootstrap with a IcedTea6 JVM :("
|
||||
einfo "bootstrap forced off, ignoring use jbootstrap"
|
||||
fi
|
||||
elif has "${vm}" gcj-jdk; then
|
||||
# gcj-jdk ensures ecj is present.
|
||||
use jbootstrap || einfo "bootstrap forced on for ${vm}, ignoring use jbootstrap"
|
||||
bootstrap=yes
|
||||
else
|
||||
eerror "IcedTea must be built with either a JDK based on GNU Classpath or an existing build of IcedTea."
|
||||
die "Install a GNU Classpath JDK (gcj-jdk)"
|
||||
fi
|
||||
|
||||
if [[ ${bootstrap} ]]; then
|
||||
local ecj_jar="$(readlink "${EPREFIX}"/usr/share/eclipse-ecj/ecj.jar)"
|
||||
|
||||
config="${config} --enable-bootstrap"
|
||||
config="${config} --with-ecj-jar=${ecj_jar}"
|
||||
else
|
||||
config="${config} --disable-bootstrap"
|
||||
fi
|
||||
|
||||
# Always use HotSpot as the primary VM if available. #389521 #368669 #357633 ...
|
||||
if has "${ARCH}" amd64 sparc x86; then
|
||||
config="${config} --disable-zero --disable-cacao --disable-jamvm --disable-shark"
|
||||
|
||||
if [[ ${bootstrap} ]]; then
|
||||
local extra_vms
|
||||
#if use shark; then
|
||||
# extra_vms="${extra_vms},shark"
|
||||
#elif use zero; then
|
||||
# extra_vms="${extra_vms},zero"
|
||||
#fi
|
||||
# CACAO disabled until it has OpenJDK7 support
|
||||
#if use cacao; then
|
||||
# extra_vms="${extra_vms},cacao"
|
||||
# config="${config} --with-cacao-src-zip=${DISTDIR}/${CACAO_TARBALL}"
|
||||
#fi
|
||||
if use jamvm; then
|
||||
extra_vms="${extra_vms},jamvm"
|
||||
config="${config} --with-jamvm-src-zip=${DISTDIR}/${JAMVM_TARBALL}"
|
||||
fi
|
||||
if [[ ${extra_vms} ]]; then
|
||||
config="${config} --with-additional-vms=${extra_vms#,}"
|
||||
fi
|
||||
elif use jamvm; then
|
||||
ewarn "Can't build additional VMs without bootstrap."
|
||||
ewarn "Rebuild IcedTea with a JDK that allows bootstrapping."
|
||||
fi
|
||||
else
|
||||
config="${config} --enable-zero --disable-cacao --disable-jamvm --disable-shark"
|
||||
# local extra_vms
|
||||
fi
|
||||
|
||||
# OpenJDK-specific parallelism support. Bug #389791, #337827
|
||||
# Implementation modified from waf-utils.eclass
|
||||
# Note that "-j" is converted to "-j1" as the system doesn't support --load-average
|
||||
local procs=$(echo -j1 ${MAKEOPTS} | sed -r "s/.*(-j\s*|--jobs=)([0-9]+).*/\2/" )
|
||||
config="${config} --with-parallel-jobs=${procs}";
|
||||
einfo "Configuring using --with-parallel-jobs=${procs}"
|
||||
|
||||
if use javascript ; then
|
||||
config="${config} --with-rhino=$(java-pkg_getjar rhino:1.6 js.jar)"
|
||||
else
|
||||
config="${config} --without-rhino"
|
||||
fi
|
||||
|
||||
unset JAVA_HOME JDK_HOME CLASSPATH JAVAC JAVACFLAGS
|
||||
|
||||
econf ${config} \
|
||||
--with-openjdk-src-zip="${DISTDIR}/${OPENJDK_TARBALL}" \
|
||||
--with-corba-src-zip="${DISTDIR}/${CORBA_TARBALL}" \
|
||||
--with-jaxp-src-zip="${DISTDIR}/${JAXP_TARBALL}" \
|
||||
--with-jaxws-src-zip="${DISTDIR}/${JAXWS_TARBALL}" \
|
||||
--with-jdk-src-zip="${DISTDIR}/${JDK_TARBALL}" \
|
||||
--with-hotspot-src-zip="${DISTDIR}/${HOTSPOT_TARBALL}" \
|
||||
--with-langtools-src-zip="${DISTDIR}/${LANGTOOLS_TARBALL}" \
|
||||
--with-jdk-home="$(java-config -O)" \
|
||||
--with-abs-install-dir=/usr/$(get_libdir)/icedtea${SLOT} \
|
||||
--disable-jdk-tests \
|
||||
$(use_enable !debug optimizations) \
|
||||
$(use_enable doc docs) \
|
||||
$(use_enable nss) \
|
||||
$(use_enable pulseaudio pulse-java) \
|
||||
$(use_enable systemtap)
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Newer versions of Gentoo's ant add
|
||||
# an environment variable so it works properly...
|
||||
export ANT_RESPECT_JAVA_HOME=TRUE
|
||||
|
||||
# We try to load the least that's needed to avoid possible classpath collisions
|
||||
export ANT_TASKS="ant-nodeps"
|
||||
|
||||
# Build and pax mark the intermidiate jdk. #389751
|
||||
if host-is-pax; then
|
||||
emake -j1 icedtea-boot
|
||||
java-vm_set-pax-markings openjdk.build-boot
|
||||
fi
|
||||
|
||||
emake -j 1
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local dest="/usr/$(get_libdir)/icedtea${SLOT}"
|
||||
local ddest="${ED}/${dest}"
|
||||
dodir "${dest}"
|
||||
|
||||
dodoc README NEWS AUTHORS
|
||||
dosym /usr/share/doc/${PF} /usr/share/doc/${PN}${SLOT}
|
||||
|
||||
# http://www.mail-archive.com/openjdk@lists.launchpad.net/msg06599.html
|
||||
if use jamvm; then
|
||||
dosym ${dest}/jre/lib/$(get_system_arch)/jamvm/libjvm.so \
|
||||
${dest}/jre/lib/$(get_system_arch)
|
||||
fi
|
||||
|
||||
cd openjdk.build/j2sdk-image || die
|
||||
|
||||
# Don't hide classes
|
||||
rm lib/ct.sym || die
|
||||
|
||||
# doins can't handle symlinks.
|
||||
cp -vRP bin include jre lib man "${ddest}" || die
|
||||
|
||||
dodoc ASSEMBLY_EXCEPTION THIRD_PARTY_README
|
||||
|
||||
if use doc; then
|
||||
# java-pkg_dohtml needed for package-list #302654
|
||||
java-pkg_dohtml -r ../docs/* || die
|
||||
fi
|
||||
|
||||
if use examples; then
|
||||
dodir "${dest}/share";
|
||||
cp -vRP demo sample "${ddest}/share/" || die
|
||||
fi
|
||||
|
||||
if use source; then
|
||||
cp src.zip "${ddest}" || die
|
||||
fi
|
||||
|
||||
# Fix the permissions.
|
||||
find "${ddest}" \! -type l \( -perm /111 -exec chmod 755 {} \; -o -exec chmod 644 {} \; \) || die
|
||||
|
||||
# Needs to be done before generating cacerts
|
||||
java-vm_set-pax-markings "${ddest}"
|
||||
|
||||
# We need to generate keystore - bug #273306
|
||||
einfo "Generating cacerts file from certificates in ${EPREFIX}/usr/share/ca-certificates/"
|
||||
mkdir "${T}/certgen" && cd "${T}/certgen" || die
|
||||
cp "${FILESDIR}/generate-cacerts.pl" . && chmod +x generate-cacerts.pl || die
|
||||
for c in "${EPREFIX}"/usr/share/ca-certificates/*/*.crt; do
|
||||
openssl x509 -text -in "${c}" >> all.crt || die
|
||||
done
|
||||
./generate-cacerts.pl "${ddest}/bin/keytool" all.crt || die
|
||||
cp -vRP cacerts "${ddest}/jre/lib/security/" || die
|
||||
chmod 644 "${ddest}/jre/lib/security/cacerts" || die
|
||||
|
||||
# OpenJDK7 should be able to use fontconfig instead, but wont hurt to
|
||||
# install it anyway. Bug 390663
|
||||
cp "${FILESDIR}"/fontconfig.Gentoo.properties.src "${T}"/fontconfig.Gentoo.properties || die
|
||||
eprefixify "${T}"/fontconfig.Gentoo.properties
|
||||
insinto "${dest}"/jre/lib
|
||||
doins "${T}"/fontconfig.Gentoo.properties
|
||||
|
||||
set_java_env "${FILESDIR}/icedtea.env"
|
||||
java-vm_sandbox-predict /proc/self/coredump_filter
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
if has_version "<=dev-java/icedtea-7.2.0:7"; then
|
||||
# portage would preserve the symlink otherwise, related to bug #384397
|
||||
rm -f "${EROOT}/usr/lib/jvm/icedtea7"
|
||||
elog "To unify the layout and simplify scripts, the identifier of Icedtea-7*"
|
||||
elog "has changed from 'icedtea7' to 'icedtea-7' starting from version 7.2.0-r1"
|
||||
elog "If you had icedtea7 as system VM, the change should be automatic, however"
|
||||
elog "build VM settings in /etc/java-config-2/build/jdk.conf are not changed"
|
||||
elog "and the same holds for any user VM settings. Sorry for the inconvenience."
|
||||
fi
|
||||
}
|
@ -1,5 +1,5 @@
|
||||
DIST v8-3.5.10.24.tar.bz2 9378560 RMD160 5d6be86af37aed9e7a227fec817e76980f9802d7 SHA1 a20b0ff0baff46b75289c30016e1744457399208 SHA256 4fa2c6cc996463db122fc73267a64d0c00b17e0cddf11aa02bfab6b126b797ee
|
||||
DIST v8-3.6.6.5.tar.bz2 9621910 RMD160 b704bdfc7ea535210a2c8881becff6f81e0c6da3 SHA1 91b12e58dc2480eec132e12039748cebff4d2510 SHA256 d4a689038c0991f7bfaf367f5ec986110e35387259598183143f9c7f04343ca8
|
||||
DIST v8-3.6.6.6.tar.bz2 9619754 RMD160 8d8af502c4b90a534e302850349cc62c64e330b1 SHA1 25b65a7246731b5f91db3a0a8a0c6bd377b1fff5 SHA256 f51de4710c547373df546810e8d51c60cc90dd07881bf575191ade065964d6d6
|
||||
DIST v8-3.6.6.9.tar.bz2 9622646 RMD160 94a99d7e1179b2c377b9a55ce4d69eea0b022609 SHA1 5c65e4b8ef5273de48772a143c5b413037edb537 SHA256 2730f4601fd90a3b90916ecb07fc621ebc9eddd8d7e21799a906f6eec4c985ba
|
||||
DIST v8-3.7.6.tar.bz2 9794134 RMD160 8ad53560e1a2b55e720c36bbcc19f08f888d5abc SHA1 7d8f81876164f7f0d28dbc8616f2a0afcccd3bec SHA256 5cdbd893c41f552a33d6fabcc2df88c9610a410d2993f3791cdeef318ff25189
|
||||
DIST v8-3.7.7.tar.bz2 9796280 RMD160 bf58f21e6b422fe82ab90e281b29947d5c969f85 SHA1 ebb1c5a454fc375fac4d7075b91b387f5c4b6e48 SHA256 83e08194789bf3226a7fc20a98438b30a28eaecd6bf937796e30dc8a8c50d301
|
||||
|
@ -1,6 +1,6 @@
|
||||
# Copyright 1999-2011 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-lang/v8/v8-3.6.6.5.ebuild,v 1.7 2011/11/23 19:27:23 floppym Exp $
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-lang/v8/v8-3.6.6.9.ebuild,v 1.1 2011/12/02 12:17:41 floppym Exp $
|
||||
|
||||
EAPI="4"
|
||||
|
@ -1,2 +1,3 @@
|
||||
DIST ocaml-make-6.29.3.tar.gz 38418 RMD160 8634b14b0a7e24c66b9d4dd7a72a5f09f901d237 SHA1 a1268abe16326d974da646b76fe9ad30ab9f3f05 SHA256 4cdb93c99960fb8fda59d34a99b6fbe5ecdc3cc90dbb1c373373bd89268e5159
|
||||
DIST ocaml-make-6.30.0.tar.gz 38581 RMD160 74ee33dfd522b654cdd0118d53588a450ee8cd17 SHA1 8c5796fa4781e115cb5f62be4b2e4e4a70de0c2a SHA256 b9e57e8cfdc2ddf4b3ffebc2a503311a841c60443f5540c7587715ba2c8ba182
|
||||
DIST ocaml-make-6.33.0.tar.gz 38794 RMD160 a86972d2259a408cdf669a262e9d2ab99cf4319f SHA1 f1979692ce3c279e9b92c2c42bc1d93ad0905952 SHA256 3054303ba04e4bbbe038e08310fabc3e5a0e3899bbba33d9ac5ed7a1b9d1e05a
|
||||
|
@ -0,0 +1,29 @@
|
||||
# Copyright 1999-2011 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-ml/ocaml-make/ocaml-make-6.33.0.ebuild,v 1.1 2011/12/02 13:18:44 aballier Exp $
|
||||
|
||||
DESCRIPTION="Generic O'Caml Makefile for GNU Make"
|
||||
HOMEPAGE="http://www.ocaml.info/home/ocaml_sources.html"
|
||||
LICENSE="LGPL-2.1"
|
||||
|
||||
DEPEND=""
|
||||
RDEPEND=">=dev-lang/ocaml-3.06-r1
|
||||
>=dev-ml/findlib-0.8"
|
||||
SRC_URI="http://www.ocaml.info/ocaml_sources/${P}.tar.gz"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~ppc ~sparc ~x86"
|
||||
IUSE="examples"
|
||||
|
||||
src_install () {
|
||||
# Just put the OCamlMakefile into /usr/include
|
||||
# where GNU Make will automatically pick it up.
|
||||
insinto /usr/include
|
||||
doins OCamlMakefile
|
||||
# install documentation
|
||||
dodoc README.txt Changelog
|
||||
|
||||
if use examples; then
|
||||
insinto /usr/share/doc/${PF}
|
||||
doins -r calc camlp4 gtk idl threads
|
||||
fi
|
||||
}
|
@ -0,0 +1,20 @@
|
||||
# Copyright 1999-2011 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-perl/B-Utils/B-Utils-0.170.0.ebuild,v 1.1 2011/12/02 15:57:00 tove Exp $
|
||||
|
||||
EAPI=4
|
||||
|
||||
MODULE_AUTHOR=JJORE
|
||||
MODULE_VERSION=0.17
|
||||
inherit perl-module
|
||||
|
||||
DESCRIPTION="Helper functions for op tree manipulation"
|
||||
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND=""
|
||||
DEPEND=">=dev-perl/extutils-depends-0.301"
|
||||
|
||||
SRC_TEST=do
|
@ -1 +1,2 @@
|
||||
DIST B-Utils-0.15.tar.gz 71433 RMD160 1d4baaf2a13df2283b2ef69d1984511b0b2773b7 SHA1 344555734d1b3d7373d98a00b75505e123e44d43 SHA256 9c4bcdd7b8c4e8a09a6eebb69559be0b02fd513146afd0fec8946d1a264accac
|
||||
DIST B-Utils-0.17.tar.gz 71537 RMD160 c6092bdea05689904c287f5c22709f679bd3575e SHA1 5e9e699d291442c08b0c29d8c6bae61ad4627c8b SHA256 0734e6134e2099464be266d28adc87120942f21963f402d2635cbb81b0bcd71f
|
||||
|
@ -0,0 +1,18 @@
|
||||
# Copyright 1999-2011 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-perl/Capture-Tiny/Capture-Tiny-0.120.0.ebuild,v 1.1 2011/12/02 15:46:12 tove Exp $
|
||||
|
||||
EAPI=4
|
||||
|
||||
MODULE_AUTHOR=DAGOLDEN
|
||||
MODULE_VERSION=0.12
|
||||
inherit perl-module
|
||||
|
||||
DESCRIPTION="Capture STDOUT and STDERR from Perl, XS or external programs"
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE=""
|
||||
|
||||
SRC_TEST=do
|
@ -1,2 +1,3 @@
|
||||
DIST Capture-Tiny-0.08.tar.gz 25145 RMD160 83aed66423cd9b547a318aa5372459b0609f71c5 SHA1 adabe5184bb8406b9578f5f6d2136771765247c3 SHA256 7365f880c4e6d5a035fbf9bca1a49ed9b6c52e252e620c757db62181742adc88
|
||||
DIST Capture-Tiny-0.11.tar.gz 21060 RMD160 679fd9ca51868867ea716cb46eae593aac037327 SHA1 370492e212497512f50de38ea60f67b42f0fcf06 SHA256 8ca40024c425902d0305076771834278643002e5fe546fb6b8ca6d9f9f743027
|
||||
DIST Capture-Tiny-0.12.tar.gz 26122 RMD160 5936e8d8773f8a7fc6e918da86660c1ebdd8d544 SHA1 5bd3a4f8a535fc35f795b077b1d44568fbefb073 SHA256 d4b2cd32dba2e2fca3ed965ebef79178b1874ddd3c2274462839004ba7a87e82
|
||||
|
@ -0,0 +1,24 @@
|
||||
# Copyright 1999-2011 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-perl/Class-Accessor-Grouped/Class-Accessor-Grouped-0.100.40.ebuild,v 1.1 2011/12/02 15:45:50 tove Exp $
|
||||
|
||||
EAPI=4
|
||||
|
||||
MODULE_AUTHOR=RIBASUSHI
|
||||
MODULE_VERSION=0.10004
|
||||
inherit perl-module
|
||||
|
||||
DESCRIPTION="Lets you build groups of accessors"
|
||||
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~ppc ~x86 ~ppc-macos ~x86-solaris"
|
||||
IUSE="test"
|
||||
|
||||
RDEPEND="dev-perl/Class-Inspector
|
||||
>=dev-perl/Class-XSAccessor-1.110
|
||||
>=dev-perl/Sub-Name-0.05"
|
||||
DEPEND="${RDEPEND}
|
||||
test? ( >=dev-perl/Test-Exception-0.31
|
||||
>=virtual/perl-Test-Simple-0.94 )"
|
||||
|
||||
SRC_TEST=do
|
@ -1 +1,2 @@
|
||||
DIST Class-Accessor-Grouped-0.10003.tar.gz 39885 RMD160 9837ed0df58e89d9ac4118e0239ddc3caa4d0221 SHA1 a17b29f8b17099705132d393e51d091fedf1958f SHA256 3d56247cc4458ebb3cf0b881859706465f33b18f6189176df1e83746cef5cc0c
|
||||
DIST Class-Accessor-Grouped-0.10004.tar.gz 40985 RMD160 3a8763bc47b5f8b7c90f52802c686b4dfe0816dd SHA1 90f90f654a30fd0ecc2b099611ae9c1db38209b2 SHA256 4c4f44283b8399e3aeafe8a05649dc75a630d574e236166bb47fad850c84899b
|
||||
|
@ -0,0 +1,35 @@
|
||||
# Copyright 1999-2011 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-perl/DBD-SQLite/DBD-SQLite-1.350.0.ebuild,v 1.1 2011/12/02 15:41:46 tove Exp $
|
||||
|
||||
EAPI=4
|
||||
|
||||
MODULE_AUTHOR=ADAMK
|
||||
MODULE_VERSION=1.35
|
||||
inherit perl-module
|
||||
|
||||
DESCRIPTION="Self Contained RDBMS in a DBI Driver"
|
||||
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x64-solaris ~x86-solaris"
|
||||
IUSE="test"
|
||||
|
||||
RDEPEND=">=dev-perl/DBI-1.57
|
||||
>=dev-db/sqlite-3.6.22[extensions]
|
||||
!<dev-perl/DBD-SQLite-1"
|
||||
DEPEND="${RDEPEND}
|
||||
test? ( >=virtual/perl-Test-Simple-0.86 )"
|
||||
|
||||
SRC_TEST="do"
|
||||
|
||||
src_prepare() {
|
||||
perl-module_src_prepare
|
||||
sed -i 's/^if ( 0 )/if ( 1 )/' "${S}"/Makefile.PL || die
|
||||
# remove bundled sqlite (rt.cpan#61361)
|
||||
for i in sqlite3{.c,.h,ext.h} ; do
|
||||
rm ${i} || die
|
||||
sed -i -e "/^${i}\$/d" MANIFEST || die
|
||||
done
|
||||
|
||||
myconf="SQLITE_LOCATION=${EPREFIX}/usr"
|
||||
}
|
@ -1,3 +1,4 @@
|
||||
DIST DBD-SQLite-0.31.tar.gz 357902 RMD160 283b4513727394fb8001ca4b4c41e017317b391c SHA1 f880a6bc672af98ee2e6272c81b874a7d850bd55 SHA256 d7317b19464b92e60949b8b7aebbaf6d9a0fc1ee32c77f687cda79db430dc4d5
|
||||
DIST DBD-SQLite-1.31.tar.gz 1325225 RMD160 ba69edded3363cabce9c2d7b758d9c8cef11bf2a SHA1 6c189fba1a4ec4b7e792b3c0b9c9020d5cf7cb8e SHA256 987e5446dea3dbdfb3aea5b27dbed8526af1733e3eb01ea59a6435ebba5b29f6
|
||||
DIST DBD-SQLite-1.33.tar.gz 1400534 RMD160 95068c69776377c96f2f3652f13cac42e271cfb4 SHA1 1b2c005902789199e728f7a43f97f390cf6337e5 SHA256 e0b2fbf88d7d8aa13aa8b7c4a6cbe4f10eb92df30138e4201c4c64f883a958de
|
||||
DIST DBD-SQLite-1.35.tar.gz 1467375 RMD160 df4078555b816ab1101725f402356d2cb35443d0 SHA1 71f796b483e50732d3733a1d16de868d3e6c5ff2 SHA256 ff08d1ee50c057d03ab2901aa7896fda2226c30b85c0999f5858cd2a81b4bc7d
|
||||
|
@ -0,0 +1,19 @@
|
||||
# Copyright 1999-2011 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-perl/DBIx-Class-InflateColumn-IP/DBIx-Class-InflateColumn-IP-0.20.20.ebuild,v 1.1 2011/12/02 15:23:06 tove Exp $
|
||||
|
||||
EAPI=4
|
||||
|
||||
MODULE_AUTHOR=ILMARI
|
||||
MODULE_VERSION=0.02002
|
||||
inherit perl-module
|
||||
|
||||
DESCRIPTION="Auto-create NetAddr::IP objects from columns"
|
||||
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE=""
|
||||
|
||||
DEPEND="dev-perl/NetAddr-IP
|
||||
>=dev-perl/DBIx-Class-0.08107"
|
||||
RDEPEND="${DEPEND}"
|
@ -1 +1,2 @@
|
||||
DIST DBIx-Class-InflateColumn-IP-0.02001.tar.gz 22266 RMD160 f12d9a9a74a2a7d399331d5e268c8fc49ac1532e SHA1 0e38fbb5811e17ff372ee609f12f72149bf72318 SHA256 66a3c9b51fd0da59bc28c96d2ac622344fb61e17c72fc65dc0065a26cfd8457d
|
||||
DIST DBIx-Class-InflateColumn-IP-0.02002.tar.gz 29437 RMD160 095e77c38f204e81167b3abe8c34717822e6b319 SHA1 7743c37aafd2481d0761ada9fdea8e95a75d2451 SHA256 fa0639ac348e3c8cfab0d3e8d2300f87ef67a9807add29d9bde0d517cd7b1e86
|
||||
|
@ -0,0 +1,91 @@
|
||||
# Copyright 1999-2011 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-perl/DBIx-Class/DBIx-Class-0.81.960.ebuild,v 1.1 2011/12/02 15:31:10 tove Exp $
|
||||
|
||||
EAPI=4
|
||||
|
||||
MODULE_AUTHOR=ARODLAND
|
||||
MODULE_VERSION=0.08196
|
||||
inherit perl-module
|
||||
|
||||
DESCRIPTION="Extensible and flexible object <-> relational mapper"
|
||||
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="test admin admin_script deploy replicated"
|
||||
|
||||
RDEPEND_MOOSE_BASIC="
|
||||
>=dev-perl/Moose-0.98
|
||||
>=dev-perl/MooseX-Types-0.21
|
||||
"
|
||||
RDEPEND_ADMIN_BASIC="
|
||||
>=dev-perl/JSON-Any-1.22
|
||||
>=dev-perl/MooseX-Types-JSON-0.02
|
||||
>=dev-perl/MooseX-Types-Path-Class-0.05
|
||||
>=dev-perl/namespace-autoclean-0.09
|
||||
"
|
||||
|
||||
# >=dev-perl/Class-DBI-Plugin-DeepAbstractSearch-0.08
|
||||
# dev-perl/Class-Trigger
|
||||
# >=dev-perl/DBIx-ContextualFetch-1.03
|
||||
# >=dev-perl/Date-Simple-3.03
|
||||
# dev-perl/DateTime-Format-MySQL
|
||||
# dev-perl/DateTime-Format-Pg
|
||||
# dev-perl/DateTime-Format-SQLite
|
||||
# dev-perl/DateTime-Format-Strptime
|
||||
# dev-perl/Devel-Cycle
|
||||
# dev-perl/Time-Piece-MySQL
|
||||
|
||||
RDEPEND="
|
||||
admin? (
|
||||
${RDEPEND_MOOSE_BASIC}
|
||||
${RDEPEND_ADMIN_BASIC}
|
||||
)
|
||||
admin_script? (
|
||||
${RDEPEND_MOOSE_BASIC}
|
||||
${RDEPEND_ADMIN_BASIC}
|
||||
>=dev-perl/Getopt-Long-Descriptive-0.081
|
||||
>=dev-perl/Text-CSV-1.16
|
||||
)
|
||||
deploy? (
|
||||
>=dev-perl/SQL-Translator-0.110.60
|
||||
)
|
||||
replicated? (
|
||||
${RDEPEND_MOOSE_BASIC}
|
||||
>=dev-perl/Hash-Merge-0.12
|
||||
)
|
||||
>=dev-perl/DBD-SQLite-1.29
|
||||
>=dev-perl/Carp-Clan-6.00
|
||||
>=dev-perl/Class-Accessor-Grouped-0.100.20
|
||||
>=dev-perl/Class-C3-Componentised-1.0.900
|
||||
>=dev-perl/Class-Inspector-1.24
|
||||
>=dev-perl/Config-Any-0.20
|
||||
dev-perl/Data-Compare
|
||||
>=dev-perl/Data-Page-2.01
|
||||
>=dev-perl/DBI-1.609
|
||||
>=virtual/perl-File-Path-2.08
|
||||
dev-perl/Hash-Merge
|
||||
>=dev-perl/Math-Base36-0.07
|
||||
>=virtual/perl-Math-BigInt-1.80
|
||||
>=dev-perl/MRO-Compat-0.11
|
||||
>=dev-perl/Module-Find-0.06
|
||||
>=dev-perl/Path-Class-0.18
|
||||
>=dev-perl/SQL-Abstract-1.720
|
||||
>=dev-perl/Sub-Name-0.04
|
||||
>=dev-perl/Data-Dumper-Concise-2.20
|
||||
>=dev-perl/Scope-Guard-0.03
|
||||
dev-perl/Context-Preserve
|
||||
>=dev-perl/Try-Tiny-0.04
|
||||
>=dev-perl/namespace-clean-0.20
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
test? (
|
||||
>=virtual/perl-File-Temp-0.22
|
||||
>=dev-perl/Package-Stash-0.280.0
|
||||
>=dev-perl/Test-Exception-0.31
|
||||
>=dev-perl/Test-Warn-0.21
|
||||
>=virtual/perl-Test-Simple-0.94
|
||||
dev-perl/Test-Pod
|
||||
dev-perl/Test-Pod-Coverage )"
|
||||
|
||||
SRC_TEST=do
|
@ -1,2 +1,3 @@
|
||||
DIST DBIx-Class-0.08120.tar.gz 513806 RMD160 ea342a8f37bf0915b60c4bcdad9079be232aaa1f SHA1 b16397560c1b1bbb1bfab9b1712c841a44875840 SHA256 c97af692cbbf9779457e669b52d117b3b174aac3826d4af20da7f26e5aabe479
|
||||
DIST DBIx-Class-0.08195.tar.gz 664222 RMD160 97ed78d355ff0a26f0868eae9875b21ec867e1e0 SHA1 14c4467a28e5d5986ff497522aeb4392b3af9d4b SHA256 e61ec90cd768aad21ac28f0f9b66610ab732abfa96497372c0b79939e715f8a4
|
||||
DIST DBIx-Class-0.08196.tar.gz 667259 RMD160 7963f7da9269f84ce3205944d899a64e34f16dba SHA1 19f2963a479eecfbd3eaaa827b753f1fbba16e82 SHA256 951eb2a1e4e929eba37b094ce275a404a4f94908d933b322c87c5a9dd79b6196
|
||||
|
@ -1,2 +1,3 @@
|
||||
DIST PAR-1.002.tar.gz 90208 RMD160 d2403a33799855654fab8f38af85d6d180f03d73 SHA1 8ec29e9ce78190805aecbe7c969a96585ec8374b SHA256 b4196596979e3873a5e54ef6bb9835236dcf812ae9a0ec8cbac68559abeee5c1
|
||||
DIST PAR-1.003.tar.gz 90133 RMD160 abc74f1f9c9c1a47a2cc9eb22b40359ebbe6cfa4 SHA1 5c63f83b8735b2d320b3cb68d9bbb7e42228325d SHA256 05a676998a6556eeda78dd1b5a4b501f7350247c60eb9ecc2f5dff754411ab70
|
||||
DIST PAR-1.004.tar.gz 88034 RMD160 0af8d6c7d0023a7cbf1ba0d76b25d6045b5c02c1 SHA1 91654f0c4f8ce207fec58d8de9721b76322b8c48 SHA256 718cb3101c3668741b99e704871868a86036688b04bcfe90326f9e24a102b6bb
|
||||
|
@ -0,0 +1,23 @@
|
||||
# Copyright 1999-2011 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-perl/PAR/PAR-1.4.0.ebuild,v 1.1 2011/12/02 14:52:25 tove Exp $
|
||||
|
||||
EAPI=4
|
||||
|
||||
MODULE_AUTHOR=RSCHUPP
|
||||
MODULE_VERSION=1.004
|
||||
inherit perl-module
|
||||
|
||||
DESCRIPTION="Perl Archive Toolkit"
|
||||
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86 ~x86-solaris"
|
||||
IUSE=""
|
||||
|
||||
DEPEND="virtual/perl-AutoLoader
|
||||
>=virtual/perl-IO-Compress-1.30
|
||||
>=dev-perl/Archive-Zip-1.00
|
||||
>=dev-perl/PAR-Dist-0.32"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
SRC_TEST=do
|
@ -1,2 +1,3 @@
|
||||
DIST Test-NoWarnings-1.01.tar.gz 17618 RMD160 513ec005d249cbf4ecece4debcd9fc8737904ed3 SHA1 9f13caef00364436563d8387dd679466496b82dd SHA256 9ec81fd6f2c6c6c61af80313053e141caeec53e741153f7a2219f766e4bf4b27
|
||||
DIST Test-NoWarnings-1.03.tar.gz 18007 RMD160 6b53b222c588c8abcdf7681123b4cf1c38d133bc SHA1 6f403ac5749b4d46855e10d36baf2be796329347 SHA256 f808ae0ba90bbb83ef0de0fccdaa7c82dc95f161b2ee333098e9f40b8d06f4a9
|
||||
DIST Test-NoWarnings-1.04.tar.gz 18204 RMD160 1809d98bca154c70409297e0ee5da9fb7487b642 SHA1 2b8840b199d30812b6abc24f2b86289e0a3811f3 SHA256 638a57658cb119af1fe5b15e73d47c2544dcfef84af0c6b1b2e97f08202b686c
|
||||
|
@ -0,0 +1,21 @@
|
||||
# Copyright 1999-2011 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-perl/Test-NoWarnings/Test-NoWarnings-1.40.0.ebuild,v 1.1 2011/12/02 14:50:24 tove Exp $
|
||||
|
||||
EAPI=4
|
||||
|
||||
MODULE_AUTHOR=ADAMK
|
||||
MODULE_VERSION=1.04
|
||||
inherit perl-module
|
||||
|
||||
DESCRIPTION="Make sure you didn't emit any warnings while testing"
|
||||
|
||||
SLOT="0"
|
||||
LICENSE="LGPL-2.1"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND=">=dev-perl/Test-Tester-0.107"
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
SRC_TEST="do"
|
@ -0,0 +1,2 @@
|
||||
DIST Wx-Scintilla-0.34-patches.tar.gz 488 RMD160 5210c1df71a5c56220df3276398fc546e6b6fd01 SHA1 5b6e2f5859826d5ea56315f2dde85091f40f769c SHA256 3ca51b083080d0e1943c24db04251b1a1a8961ded91d18935f850e0004152bd4
|
||||
DIST Wx-Scintilla-0.34.tar.gz 821449 RMD160 e0570d1a50cc5f1a7360bbbd00eada9bf3aae314 SHA1 e1361d65145cc0d12b08f71443a26ae14e7e75b8 SHA256 b205e3e8105c7a62099e3e55384384068c034c23efc445330ba6aea037642254
|
@ -0,0 +1,38 @@
|
||||
# Copyright 1999-2011 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-perl/Wx-Scintilla/Wx-Scintilla-0.340.0.ebuild,v 1.1 2011/12/02 19:39:53 tove Exp $
|
||||
|
||||
EAPI=4
|
||||
|
||||
MODULE_AUTHOR=AZAWAWI
|
||||
MODULE_VERSION=0.34
|
||||
WX_GTK_VER="2.8"
|
||||
#VIRTUALX_REQUIRED=test
|
||||
#inherit virtualx
|
||||
inherit wxwidgets perl-module
|
||||
|
||||
DESCRIPTION="Scintilla source code editing component for wxWidgets"
|
||||
SRC_URI+=" http://dev.gentoo.org/~tove/distfiles/dev-perl/${PN}-0.34-patches.tar.gz"
|
||||
|
||||
LICENSE+=" Scintilla"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND="
|
||||
dev-perl/Alien-wxWidgets
|
||||
dev-perl/wxperl
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
>=dev-perl/ExtUtils-XSpp-0.160.200
|
||||
>=virtual/perl-Module-Build-0.360.0
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${WORKDIR}"/${PN}-patches/0.34-flags.patch
|
||||
)
|
||||
|
||||
#SRC_TEST=do
|
||||
#src_test() {
|
||||
# VIRTUALX_COMMAND="./Build" virtualmake test || die
|
||||
#}
|
@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<herd>perl</herd>
|
||||
<upstream>
|
||||
<remote-id type="cpan">Wx-Scintilla</remote-id>
|
||||
</upstream>
|
||||
</pkgmetadata>
|
@ -0,0 +1,22 @@
|
||||
From 47322e554cc5388a3e6325f36b7d07a13f124594 Mon Sep 17 00:00:00 2001
|
||||
From: Vincent Untz <vuntz@gnome.org>
|
||||
Date: Thu, 31 Mar 2011 16:28:44 +0000
|
||||
Subject: Add Unity to list of registered environments
|
||||
|
||||
See http://lists.freedesktop.org/archives/xdg/2011-March/011856.html
|
||||
---
|
||||
diff --git a/src/validate.c b/src/validate.c
|
||||
index 04bc8d0..9c399a3 100644
|
||||
--- a/src/validate.c
|
||||
+++ b/src/validate.c
|
||||
@@ -338,7 +338,7 @@ static struct {
|
||||
};
|
||||
|
||||
static const char *show_in_registered[] = {
|
||||
- "GNOME", "KDE", "LXDE", "ROX", "XFCE", "Old"
|
||||
+ "GNOME", "KDE", "LXDE", "ROX", "Unity", "XFCE", "Old"
|
||||
};
|
||||
|
||||
static struct {
|
||||
--
|
||||
cgit v0.9.0.2-2-gbebe
|
@ -1 +1,2 @@
|
||||
DIST intltool-0.41.1.tar.gz 139287 RMD160 8c9cc498c4b70e0d78e04fc14c99f7c8832295db SHA1 20b2bf222395cf1711fee1f1b7b7650b9e0f2fc2 SHA256 06d02133a85b9d6f29cd763050dc9267a6d73ef3008993f5b917cafc7ece96c0
|
||||
DIST intltool-0.50.0.tar.gz 142837 RMD160 5f5f881ac5945853df4a0d447d20ec5cd5bcc252 SHA1 b842d3b5f4de74371049cc366dee19083061c51a SHA256 dccfb0b7dd35a170130e8934bfd30c29da6ae73bcd3ca4ba71317c977b2893d6
|
||||
|
@ -0,0 +1,21 @@
|
||||
# Copyright 1999-2011 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-util/intltool/intltool-0.50.0.ebuild,v 1.1 2011/12/03 00:26:00 ssuominen Exp $
|
||||
|
||||
EAPI=4
|
||||
|
||||
DESCRIPTION="Internationalization Tool Collection"
|
||||
HOMEPAGE="http://edge.launchpad.net/intltool/"
|
||||
SRC_URI="http://edge.launchpad.net/intltool/trunk/${PV}/+download/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE=""
|
||||
|
||||
DEPEND=">=dev-lang/perl-5.8.1
|
||||
dev-perl/XML-Parser"
|
||||
RDEPEND="${DEPEND}
|
||||
sys-devel/gettext"
|
||||
|
||||
DOCS=( AUTHORS README TODO doc/I18N-HOWTO )
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue