vncserver: fix x86_64 build.

This commit is contained in:
Jerome Duval
2017-01-29 14:08:48 +01:00
parent f9d8797279
commit 0845c818b0
2 changed files with 104 additions and 6 deletions

View File

@@ -1,4 +1,4 @@
From f45e9f03da995fbb870155013b3d4037cf0aeff2 Mon Sep 17 00:00:00 2001
From a6d790e41451ef275932775569c31784e46feb5c Mon Sep 17 00:00:00 2001
From: Sergei Reznikov <diver@gelios.net>
Date: Mon, 13 Apr 2015 15:08:26 +0300
Subject: Fix stdc++ in Jamfiles
@@ -31,5 +31,98 @@ index 04c5bdf..965ea68 100644
# Specify additional paths to directories following the standard
# libXXX.so or libXXX.a naming scheme. You can specify full paths
--
2.2.2
2.10.2
From 11b25e662cb44a715df56dd3e1a5a2ea48520cec Mon Sep 17 00:00:00 2001
From: Jerome Duval <jerome.duval@gmail.com>
Date: Sun, 29 Jan 2017 13:58:42 +0100
Subject: x86_64 build fix.
diff --git a/Jamfile-engine b/Jamfile-engine
index dc5cfaf..4287669 100644
--- a/Jamfile-engine
+++ b/Jamfile-engine
@@ -329,7 +329,7 @@ if ( $(OSPLAT) = X86 )
switch $(TYPE)
{
case APP : LINKFLAGS += -Xlinker -soname=_APP_ ;
- case SHARED : LINKFLAGS += -nostart -Xlinker -soname=$(NAME) ;
+ case SHARED : LINKFLAGS += -shared -Xlinker -soname=$(NAME) ;
case DRIVER : LINKFLAGS += -nostdlib /boot/develop/lib/x86/_KERNEL_ ;
}
}
diff --git a/beosserver/FrameBufferBeOS.cxx b/beosserver/FrameBufferBeOS.cxx
index 2c1be83..0902b10 100644
--- a/beosserver/FrameBufferBeOS.cxx
+++ b/beosserver/FrameBufferBeOS.cxx
@@ -757,8 +757,8 @@ unsigned int FrameBufferBDirect::UpdatePixelFormatEtc ()
char TempString [2048];
sprintf (TempString,
"UpdatePixelFormatEtc new settings: "
- "Width=%d, Stride=%d, Height=%d, Bits at $%08X, ",
- width_, m_CachedStride, height_, (unsigned int) data);
+ "Width=%d, Stride=%d, Height=%d, Bits at $%p, ",
+ width_, m_CachedStride, height_, data);
format.print (TempString + strlen (TempString),
sizeof (TempString) - strlen (TempString));
vlog.debug (TempString);
@@ -988,8 +988,8 @@ unsigned int FrameBufferBScreen::UpdatePixelFormatEtc ()
char TempString [2048];
sprintf (TempString,
"UpdatePixelFormatEtc new settings: "
- "Width=%d, Stride=%d, Height=%d, Bits at $%08X, ",
- width_, m_CachedStride, height_, (unsigned int) data);
+ "Width=%d, Stride=%d, Height=%d, Bits at $%p, ",
+ width_, m_CachedStride, height_, data);
format.print (TempString + strlen (TempString),
sizeof (TempString) - strlen (TempString));
vlog.debug (TempString);
diff --git a/beosserver/InputEventInjector.cpp b/beosserver/InputEventInjector.cpp
index 466c094..0e86ceb 100644
--- a/beosserver/InputEventInjector.cpp
+++ b/beosserver/InputEventInjector.cpp
@@ -122,7 +122,7 @@ status_t InputEventInjector::InitCheck ()
status_t InputEventInjector::Start (const char *device, void *cookie)
{
- if ((int) cookie == 76543210)
+ if ((addr_t) cookie == 76543210)
m_KeyboardEnabled = true;
else
return B_ERROR;
@@ -133,7 +133,7 @@ status_t InputEventInjector::Start (const char *device, void *cookie)
status_t InputEventInjector::Stop (const char *device, void *cookie)
{
- if ((int) cookie == 76543210)
+ if ((addr_t) cookie == 76543210)
m_KeyboardEnabled = false;
else
return B_ERROR;
@@ -150,7 +150,7 @@ status_t InputEventInjector::Control (
{
BMessage *EventMsgPntr = NULL;
- if ((int) cookie == 76543210)
+ if ((addr_t) cookie == 76543210)
{
if (m_KeyboardEnabled && code == 'EInj' && message != NULL)
{
diff --git a/beosserver/ServerMain.cxx b/beosserver/ServerMain.cxx
index dcceb3a..f90cc89 100644
--- a/beosserver/ServerMain.cxx
+++ b/beosserver/ServerMain.cxx
@@ -307,7 +307,7 @@ void ServerApp::MessageReceived (BMessage *MessagePntr)
else if (MessagePntr->what == B_CLIPBOARD_CHANGED)
{
BMessage *ClipMsgPntr;
- int32 TextLength;
+ ssize_t TextLength;
const char *TextPntr;
if (m_VNCServerPntr != NULL && be_clipboard->Lock())
--
2.10.2

View File

@@ -22,13 +22,13 @@ System)
1996 Widget Workshop, Inc, by Dave Zimmerman, Jef Poskanzer (Java DES \
software)"
LICENSE="GNU GPL v2"
REVISION="1"
REVISION="2"
SOURCE_URI="http://www.agmsmith.ca/BeOS/VNCServer-4.0-BeOS-AGMS-$portVersion.zip"
CHECKSUM_SHA256="ec55f781ee375f4a325faa008336394d675dcf795d8b165d669f456ba220e27a"
SOURCE_DIR="VNCServer-4.0-BeOS-AGMS-$portVersion/Source Code"
PATCHES="vncserver-$portVersion.patchset"
ARCHITECTURES="x86_gcc2 ?x86 ?x86_64"
ARCHITECTURES="x86_gcc2 ?x86 x86_64"
PROVIDES="
vncserver = $portVersion
@@ -53,11 +53,16 @@ BUILD_PREREQUIRES="
BUILD()
{
STDCPPLIBS=stdc++
if [ "$effectiveTargetArchitecture" = x86_gcc2 ]; then
STDCPPLIBS=stdc++.r4
fi
rm _INPUTSERVER_
ln -s /system/servers/input_server _INPUTSERVER_
mkdir -p obj.X86
jam -fJambase -fJamfile-vncserver
jam -fJambase -fJamfile-vncpasswd
jam -fJambase -fJamfile-vncserver -sSTDCPPLIBS=$STDCPPLIBS
jam -fJambase -fJamfile-vncpasswd -sSTDCPPLIBS=$STDCPPLIBS
jam -fJambase -fJamfile-InputEventInjector
}