From 54987c1d0eb01d369acbbde4914e25ee1da71936 Mon Sep 17 00:00:00 2001 From: Humdinger Date: Mon, 30 Jan 2017 10:33:35 +0100 Subject: [PATCH] Update Becasso and ArtPaint recipes Becasso: * Upstreamed korli's patch. Now builds on all Haiku plattforms. * Update to latest commit. * Improved DESCRIPTION. * Update HOMEPAGE URL. * Renamed "BeCasso" everywhere to "Becasso" as that's the actual name of the app. * Include documentation and tutorial and the API docs. ArtPaint: * Update to latest commit. * Fix build. * Include the add-ons. --- haiku-apps/artpaint/artpaint-2.1.0git.recipe | 20 +- haiku-apps/becasso/becasso-2.0.recipe | 33 +- .../becasso/patches/becasso-2.0.patchset | 1068 ----------------- 3 files changed, 27 insertions(+), 1094 deletions(-) delete mode 100644 haiku-apps/becasso/patches/becasso-2.0.patchset diff --git a/haiku-apps/artpaint/artpaint-2.1.0git.recipe b/haiku-apps/artpaint/artpaint-2.1.0git.recipe index 245ed8576..bb7ad2cec 100644 --- a/haiku-apps/artpaint/artpaint-2.1.0git.recipe +++ b/haiku-apps/artpaint/artpaint-2.1.0git.recipe @@ -8,10 +8,11 @@ HOMEPAGE="https://github.com/HaikuArchives/ArtPaint" COPYRIGHT="2003 Heikki Suhonen 2009 Karsten Heimrich" LICENSE="MIT" -REVISION="1" -SOURCE_URI="https://github.com/HaikuArchives/ArtPaint/archive/3e4be5a29e2966b390d668b7e96ef3f7901fa001.tar.gz" -CHECKSUM_SHA256="2990682bb932f4fbd8f156511171ae09d61038eddfa88fc7646af715f6fc83d8" -SOURCE_DIR="ArtPaint-3e4be5a29e2966b390d668b7e96ef3f7901fa001" +REVISION="2" +srcGitRev="b4f5fcef7f49011b1974ffe899d4ec14d7d4c576" +SOURCE_URI="https://github.com/HaikuArchives/ArtPaint/archive/$srcGitRev.tar.gz" +CHECKSUM_SHA256="01482dbe4b90805565a0b2b3f256ae26853646411ea20304bafced7ad38ca5cd" +SOURCE_DIR="ArtPaint-$srcGitRev" ARCHITECTURES="x86_gcc2 ?x86 ?x86_64" @@ -35,14 +36,13 @@ BUILD_PREREQUIRES=" BUILD() { - cd artpaint - make $jobArgs OBJ_DIR=objects + ./build.sh } INSTALL() { - cd artpaint - mkdir -p $appsDir - cp objects/ArtPaint $appsDir - addAppDeskbarSymlink $appsDir/ArtPaint + + mkdir -p $appsDir/ArtPaint + cp -r dist/* $appsDir/ArtPaint + addAppDeskbarSymlink $appsDir/ArtPaint/ArtPaint } diff --git a/haiku-apps/becasso/becasso-2.0.recipe b/haiku-apps/becasso/becasso-2.0.recipe index a4e236358..bf9fa6cb3 100644 --- a/haiku-apps/becasso/becasso-2.0.recipe +++ b/haiku-apps/becasso/becasso-2.0.recipe @@ -1,26 +1,24 @@ SUMMARY="A paint and imaging software" -DESCRIPTION="BeCasso is a paint and imaging software for Haiku, originally \ +DESCRIPTION="Becasso is a paint and imaging software for Haiku, originally \ written for BeOS by Sum Software. It features alpha channel support, layering, multi-level undo/redo, add-on \ architecture for external filters, transformators and generators, an \ -orthogonal user interface, and import/export of numerous file formats \ -via the Translation Kit." -HOMEPAGE="https://github.com/orangejua/Becasso" +orthogonal user interface, and import/export of numerous file formats." +HOMEPAGE="https://github.com/HaikuArchives/Becasso" COPYRIGHT="1997-2003 Sum Software 2013 Julian Harnath" LICENSE="MIT" -REVISION="2" -COMMIT="42f736e5a936947e58085ad97e794b2a056fd85a" -SOURCE_URI="https://github.com/HaikuArchives/Becasso/archive/$COMMIT.zip" -CHECKSUM_SHA256="20a7ede7f3d4befac25e2af4a70b64f068bc2eda0379a75279b7904577677eed" -SOURCE_DIR="Becasso-$COMMIT" -PATCHES="becasso-$portVersion.patchset" +REVISION="3" +srcGitRev="4552e03687c5851ced22c855496e8d483cc4ae35" +SOURCE_URI="https://github.com/HaikuArchives/Becasso/archive/$srcGitRev.tar.gz" +CHECKSUM_SHA256="65b1c42f4f56e92b748774ebbd908019625c8d2e601af317245d9efa6d8240dc" +SOURCE_DIR="Becasso-$srcGitRev" -ARCHITECTURES="x86_gcc2 ?x86 x86_64" +ARCHITECTURES="x86_gcc2 x86 x86_64" PROVIDES=" becasso = $portVersion - app:BeCasso = $portVersion + app:Becasso = $portVersion " REQUIRES=" haiku @@ -48,10 +46,13 @@ INSTALL() { jam install - beCassoDir=$appsDir/BeCasso - mkdir -p $beCassoDir + becassoDir=$appsDir/Becasso + mkdir -p $becassoDir $becassoDir/Documentation $becassoDir/Tutorials - cp -R target/* $beCassoDir + cp -R target/* $becassoDir + cp -R documentation/Becasso\ 2.0/* $becassoDir/Documentation + cp -R source/BecassoAPI2.0/API $becassoDir/Documentation + cp -R documentation/Tutorials $becassoDir - addAppDeskbarSymlink $beCassoDir/Becasso + addAppDeskbarSymlink $becassoDir/Becasso } diff --git a/haiku-apps/becasso/patches/becasso-2.0.patchset b/haiku-apps/becasso/patches/becasso-2.0.patchset deleted file mode 100644 index 1aab833ca..000000000 --- a/haiku-apps/becasso/patches/becasso-2.0.patchset +++ /dev/null @@ -1,1068 +0,0 @@ -From aac227cdfe1d8038cacc423706d0c29ca380c794 Mon Sep 17 00:00:00 2001 -From: Jerome Duval -Date: Sun, 22 Jan 2017 13:55:08 +0100 -Subject: build on x86_64. - -* caveats: x86 asm can't be easily ported, only stubs now. - -diff --git a/source/AboutView.cpp b/source/AboutView.cpp -index 887af6f..0da560a 100644 ---- a/source/AboutView.cpp -+++ b/source/AboutView.cpp -@@ -2,6 +2,7 @@ - #include "Colors.h" - #include - #include -+#include - #include "Settings.h" - - SAboutView::SAboutView (BRect rect, BBitmap *becasso, BBitmap *sum, bool startup) -diff --git a/source/AttribBrush.cpp b/source/AttribBrush.cpp -index 063ae36..959f0be 100644 ---- a/source/AttribBrush.cpp -+++ b/source/AttribBrush.cpp -@@ -3,8 +3,9 @@ - #include - #include - #include --#include - #include -+#include -+#include - #include "Settings.h" - - static property_info prop_list[] = { -@@ -369,4 +370,4 @@ void AttribBrush::MessageReceived (BMessage *msg) - inherited::MessageReceived (msg); - } - bv->Invalidate(); --} -\ No newline at end of file -+} -diff --git a/source/AttribClone.cpp b/source/AttribClone.cpp -index 07781e1..7781371 100644 ---- a/source/AttribClone.cpp -+++ b/source/AttribClone.cpp -@@ -3,8 +3,9 @@ - #include - #include - #include --#include -+#include - #include -+#include - #include "Settings.h" - - static property_info prop_list[] = { -@@ -369,4 +370,4 @@ void AttribClone::MessageReceived (BMessage *msg) - inherited::MessageReceived (msg); - } - bv->Invalidate(); --} -\ No newline at end of file -+} -diff --git a/source/AttribPolyblob.cpp b/source/AttribPolyblob.cpp -index bade3cd..1bba62f 100644 ---- a/source/AttribPolyblob.cpp -+++ b/source/AttribPolyblob.cpp -@@ -24,27 +24,30 @@ AttribPolyblob::AttribPolyblob () - type->SetLabel (lstring (311, "Type")); - AddChild (type); - -+ BPoint pointArray[] = { -+ BPoint ( 2, 8), -+ BPoint ( 3, 4), -+ BPoint ( 6, 3), -+ BPoint ( 9, 2), -+ BPoint (12, 3), -+ BPoint (20, 5), -+ BPoint (23, 7), -+ BPoint (27, 12), -+ BPoint (26, 15), -+ BPoint (24, 20), -+ BPoint (22, 23), -+ BPoint (19, 28), -+ BPoint (18, 28), -+ BPoint (16, 23), -+ BPoint (15, 20), -+ BPoint (13, 21), -+ BPoint (11, 23), -+ BPoint ( 6, 22), -+ BPoint ( 4, 15), -+ BPoint ( 3, 10) -+ }; - BPolygon *poly = new BPolygon(); -- poly->AddPoints (&BPoint ( 2, 8), 1); -- poly->AddPoints (&BPoint ( 3, 4), 1); -- poly->AddPoints (&BPoint ( 6, 3), 1); -- poly->AddPoints (&BPoint ( 9, 2), 1); -- poly->AddPoints (&BPoint (12, 3), 1); -- poly->AddPoints (&BPoint (20, 5), 1); -- poly->AddPoints (&BPoint (23, 7), 1); -- poly->AddPoints (&BPoint (27, 12), 1); -- poly->AddPoints (&BPoint (26, 15), 1); -- poly->AddPoints (&BPoint (24, 20), 1); -- poly->AddPoints (&BPoint (22, 23), 1); -- poly->AddPoints (&BPoint (19, 28), 1); -- poly->AddPoints (&BPoint (18, 28), 1); -- poly->AddPoints (&BPoint (16, 23), 1); -- poly->AddPoints (&BPoint (15, 20), 1); -- poly->AddPoints (&BPoint (13, 21), 1); -- poly->AddPoints (&BPoint (11, 23), 1); -- poly->AddPoints (&BPoint ( 6, 22), 1); -- poly->AddPoints (&BPoint ( 4, 15), 1); -- poly->AddPoints (&BPoint ( 3, 10), 1); -+ poly->AddPoints(pointArray, 20); - - BWindow *picWindow = new BWindow (BRect (0, 0, 100, 100), "Temp Pic Window", B_BORDERED_WINDOW, uint32 (NULL), uint32 (NULL)); - BView *bg = new BView (BRect (0, 0, 100, 100), "Temp Pic View", uint32 (NULL), uint32 (NULL)); -@@ -265,4 +268,4 @@ void AttribPolyblob::MessageReceived (BMessage *msg) - inherited::MessageReceived (msg); - break; - } --} -\ No newline at end of file -+} -diff --git a/source/AttribPolygon.cpp b/source/AttribPolygon.cpp -index 57a500f..f9b035d 100644 ---- a/source/AttribPolygon.cpp -+++ b/source/AttribPolygon.cpp -@@ -26,15 +26,18 @@ AttribPolygon::AttribPolygon () - BBox *type = new BBox (BRect (18, 32, 130, 82), "type"); - type->SetLabel (lstring (311, "Type")); - AddChild (type); -- -+ -+ BPoint pointArray[] = { -+ BPoint ( 2, 8), -+ BPoint ( 9, 2), -+ BPoint (27, 12), -+ BPoint (19, 28), -+ BPoint (14, 20), -+ BPoint ( 9, 26) -+ }; - BPolygon *poly = new BPolygon(); -- poly->AddPoints (&BPoint ( 2, 8), 1); -- poly->AddPoints (&BPoint ( 9, 2), 1); -- poly->AddPoints (&BPoint (27, 12), 1); -- poly->AddPoints (&BPoint (19, 28), 1); -- poly->AddPoints (&BPoint (14, 20), 1); -- poly->AddPoints (&BPoint ( 9, 26), 1); -- -+ poly->AddPoints(pointArray, 6); -+ - BWindow *picWindow = new BWindow (BRect (0, 0, 100, 100), "Temp Pic Window", B_BORDERED_WINDOW, uint32 (NULL), uint32 (NULL)); - BView *bg = new BView (BRect (0, 0, 100, 100), "Temp Pic View", uint32 (NULL), uint32 (NULL)); - picWindow->AddChild (bg); -@@ -254,4 +257,4 @@ void AttribPolygon::MessageReceived (BMessage *msg) - inherited::MessageReceived (msg); - break; - } --} -\ No newline at end of file -+} -diff --git a/source/Becasso.cpp b/source/Becasso.cpp -index cc19cf1..4d32f68 100644 ---- a/source/Becasso.cpp -+++ b/source/Becasso.cpp -@@ -942,7 +942,7 @@ void Becasso::MessageReceived (BMessage *message) - canvas *current = (canvas *) canvases.ItemAt (i); - if (its_looper == current->its_looper) - { -- delete (canvases.RemoveItem (i)); -+ delete ((canvas *) canvases.RemoveItem (i)); - break; - } - } -diff --git a/source/BecassoAddOn.h b/source/BecassoAddOn.h -index 03d697b..936d626 100644 ---- a/source/BecassoAddOn.h -+++ b/source/BecassoAddOn.h -@@ -12,12 +12,7 @@ - - class BView; - --// The following is for exporting the necessary symbols. --#if !defined (BUILDING_BECASSO) || defined (BUILDING_ADDON) --# define ADDON_EXPORT __declspec(dllexport) --#else --# define ADDON_EXPORT __declspec(dllimport) --#endif -+# define ADDON_EXPORT - - // Undefined Hue - some of the HSV functions from Becasso can return this. - #define HUE_UNDEF -1.0 -diff --git a/source/Build.h b/source/Build.h -index 7646f07..6d93cd6 100644 ---- a/source/Build.h -+++ b/source/Build.h -@@ -1,10 +1,6 @@ - #ifndef _BUILD_H - #define _BUILD_H - --#if defined (BUILDING_BECASSO) --# define IMPEXP __declspec(dllexport) --#else --# define IMPEXP __declspec(dllimport) --#endif -+#define IMPEXP - - #endif -diff --git a/source/CanvasTools.cpp b/source/CanvasTools.cpp -index ce5db99..e2247f1 100644 ---- a/source/CanvasTools.cpp -+++ b/source/CanvasTools.cpp -@@ -3071,8 +3071,8 @@ inline bool CanvasView::inbounds (LPoint p) - - inline bool CanvasView::isfillcolor0 (LPoint point) - { -- uint32 *addr = bbitsl + bbprl*point.y + point.x; -- return (*addr == fill32 || (!(fill32 & ALPHA_MASK) && !(*addr & ALPHA_MASK))); -+ ulong *addr = bbitsl + bbprl*point.y + point.x; -+ return (*(uint32*)addr == fill32 || (!(fill32 & ALPHA_MASK) && !(*addr & ALPHA_MASK))); - } - - inline bool CanvasView::isfillcolorrgb (LPoint point, uchar *t) -@@ -3158,7 +3158,7 @@ void CanvasView::tFill (int32 mode, BPoint point, uint32 buttons, rgb_color *c) - tbits = (uchar *) temp->Bits(); - tbpr = temp->BytesPerRow(); - tbprl = tbpr/4; -- bbitsl = (uint32 *) currentLayer()->Bits(); -+ bbitsl = (ulong *) currentLayer()->Bits(); - bbits = (uchar *) bbitsl; - bbpr = currentLayer()->BytesPerRow(); - bbprl = bbpr/4; -diff --git a/source/CanvasView.cpp b/source/CanvasView.cpp -index c1b60b0..e6b4576 100644 ---- a/source/CanvasView.cpp -+++ b/source/CanvasView.cpp -@@ -5378,7 +5378,7 @@ void CanvasView::Paste (bool winAct) - inDrag ? "true" : "false"); - } - BPoint point; -- ulong buttons; -+ uint32 buttons; - GetMouse (&point, &buttons, true); - if (inPaste) - { -diff --git a/source/ColorWindow.cpp b/source/ColorWindow.cpp -index 7d8f85b..c91ad01 100644 ---- a/source/ColorWindow.cpp -+++ b/source/ColorWindow.cpp -@@ -236,9 +236,9 @@ void ColorWindow::MessageReceived (BMessage *msg) - case 'SetC': - { - char s[16]; -- c.red = msg->FindInt32 ("color", 0L); -- c.green = msg->FindInt32 ("color", 1L); -- c.blue = msg->FindInt32 ("color", 2L); -+ c.red = msg->FindInt32 ("color", 0); -+ c.green = msg->FindInt32 ("color", 1); -+ c.blue = msg->FindInt32 ("color", 2); - int32 alpha; - if (msg->FindInt32 ("alpha", &alpha) == B_OK) - { -@@ -312,9 +312,9 @@ void ColorWindow::MessageReceived (BMessage *msg) - case 'CSQc': - { - char s[16]; -- c.red = msg->FindInt32 ("color", 0L); -- c.green = msg->FindInt32 ("color", 1L); -- c.blue = msg->FindInt32 ("color", 2L); -+ c.red = msg->FindInt32 ("color", 0); -+ c.green = msg->FindInt32 ("color", 1); -+ c.blue = msg->FindInt32 ("color", 2); - sprintf (s, "%i", c.red); - rTC->SetText (s); - sprintf (s, "%i", c.green); -@@ -328,9 +328,9 @@ void ColorWindow::MessageReceived (BMessage *msg) - { - char s[16]; - hsv_color h; -- h.hue = msg->FindFloat ("color", 0L); -- h.saturation = msg->FindFloat ("color", 1L); -- h.value = msg->FindFloat ("color", 2L); -+ h.hue = msg->FindFloat ("color", 0); -+ h.saturation = msg->FindFloat ("color", 1); -+ h.value = msg->FindFloat ("color", 2); - sprintf (s, "%3.0f", h.hue); - hTC->SetText (s); - sprintf (s, "%1.3f", h.saturation); -diff --git a/source/DragWindow.h b/source/DragWindow.h -index d9161ae..03bcc61 100644 ---- a/source/DragWindow.h -+++ b/source/DragWindow.h -@@ -3,6 +3,7 @@ - - #include - #include -+#include - #include "Settings.h" - - class DragWindow : public BWindow -@@ -42,4 +43,4 @@ private: - char fKind[64]; - }; - --#endif -\ No newline at end of file -+#endif -diff --git a/source/HelpView.cpp b/source/HelpView.cpp -index 1ab620b..cc871fa 100644 ---- a/source/HelpView.cpp -+++ b/source/HelpView.cpp -@@ -1,4 +1,5 @@ - #include "HelpView.h" -+#include - - HelpView::HelpView (const BRect frame, const char *name) - : BView (frame, name, B_FOLLOW_LEFT, B_WILL_DRAW) -@@ -29,4 +30,4 @@ void HelpView::setText (const char *t) - { - strcpy (text, t); - Invalidate(); --} -\ No newline at end of file -+} -diff --git a/source/Jamfile b/source/Jamfile -index 3a6f373..607cb7f 100644 ---- a/source/Jamfile -+++ b/source/Jamfile -@@ -1,10 +1,16 @@ - SubDir TOP source ; - --LINKLIBS on Becasso = -lbe -lz -ltracker -ltranslation -lgame -ldevice ; -+LINKLIBS on Becasso = -lbe -lz -ltracker -ltranslation -lgame -ldevice -lstdc++ ; - LINKFLAGS on Becasso = -Xlinker -soname=_APP_ ; - - AS = nasm -f elf32 ; - -+local have64bits = [ GLOB /system : kernel_x86_64 ] ; -+x86_sources = mmx_gcc.asm ; -+if $(have64bits) { -+ x86_sources = ; -+} -+ - Main Becasso : - TabView.cpp - Slider.cpp -@@ -90,7 +96,7 @@ Main Becasso : - AddOn.cpp - AddOnWindow.cpp - AddOnSupport.cpp -- mmx_gcc.asm -+ $(x86_sources) - ; - - AddResources Becasso : Becasso.rsrc ; -diff --git a/source/MagView.cpp b/source/MagView.cpp -index 5b3a5ee..084a92e 100644 ---- a/source/MagView.cpp -+++ b/source/MagView.cpp -@@ -67,7 +67,7 @@ void MagView::MouseDown (BPoint point) - extern ColorMenuButton *locolor, *hicolor; - BPoint p = BPoint (int (point.x/zoom), int (point.y/zoom)); - BRect pix; -- ulong buttons = Window()->CurrentMessage()->FindInt32 ("buttons"); -+ uint32 buttons = Window()->CurrentMessage()->FindInt32 ("buttons"); - rgb_color hi; - if (modifiers() & B_OPTION_KEY) - { -@@ -346,4 +346,4 @@ status_t MagView::Redo () - } - else - return B_ERROR; --} -\ No newline at end of file -+} -diff --git a/source/MagWindow.h b/source/MagWindow.h -index 6ae438f..8984b35 100644 ---- a/source/MagWindow.h -+++ b/source/MagWindow.h -@@ -22,6 +22,7 @@ virtual void MenusBeginning (); - float menubarHeight (); - - private: -+typedef BWindow inherited; - MagView *magView; - BScrollBar *h, *v; - BMenuBar *menubar; -@@ -30,4 +31,4 @@ BWindow *myWindow; - float menubarheight; - }; - --#endif -\ No newline at end of file -+#endif -diff --git a/source/PatternMenu.h b/source/PatternMenu.h -index 1136617..630e3d3 100644 ---- a/source/PatternMenu.h -+++ b/source/PatternMenu.h -@@ -11,6 +11,8 @@ - - #define MAX_PATTERNS 20 - -+class PatternMenuButton; -+ - class PatternMenu : public BMenu - { - friend class PatternMenuButton; -@@ -40,4 +42,4 @@ BView *view; - float hs, vs; - }; - --#endif -\ No newline at end of file -+#endif -diff --git a/source/PointStack.cpp b/source/PointStack.cpp -index 7f983cb..92e854f 100644 ---- a/source/PointStack.cpp -+++ b/source/PointStack.cpp -@@ -1,5 +1,6 @@ - #include "PointStack.h" - #include -+#include - - PointStack::PointStack () - { -diff --git a/source/PrefsWindow.cpp b/source/PrefsWindow.cpp -index 5789b4b..767cae3 100644 ---- a/source/PrefsWindow.cpp -+++ b/source/PrefsWindow.cpp -@@ -11,6 +11,7 @@ - #include "PrefsWindow.h" - #include "Colors.h" - #include -+#include - #include "Settings.h" - #include - #include -diff --git a/source/SBitmap.cpp b/source/SBitmap.cpp -index 2c74c53..4135881 100644 ---- a/source/SBitmap.cpp -+++ b/source/SBitmap.cpp -@@ -2,6 +2,7 @@ - - #include "SBitmap.h" - #include -+#include - #include - - SBitmap::SBitmap (BBitmap *src) -diff --git a/source/Selection.cpp b/source/Selection.cpp -index 4844b4c..2bd9316 100644 ---- a/source/Selection.cpp -+++ b/source/Selection.cpp -@@ -3,8 +3,6 @@ - #include - #include - --#define bzero(p,n) memset(p,0,n) -- - Selection::Selection (BRect bounds) - : BBitmap (bounds, B_BITMAP_ACCEPTS_VIEWS, B_GRAYSCALE_8_BIT) - { -@@ -28,4 +26,4 @@ Selection::~Selection () - void Selection::ClearTo (grey_pixel p) - { - memset (Bits(), p, BitsLength()); --} -\ No newline at end of file -+} -diff --git a/source/Slider.cpp b/source/Slider.cpp -index c2a1dad..3e38a78 100644 ---- a/source/Slider.cpp -+++ b/source/Slider.cpp -@@ -163,7 +163,7 @@ void Slider::MouseDown (BPoint point) - - BPoint knobpos = BPoint (float (value - min)/(max - min)*(width - knobsize), 1); - knob = BRect (knobpos.x + 1, knobpos.y + 1, knobpos.x + knobsize - 2, knobpos.y + height - 2); -- ulong buttons; -+ uint32 buttons; - buttons = Window()->CurrentMessage()->FindInt32 ("buttons"); - float px = -1; - bool dragging = false; -@@ -419,4 +419,4 @@ void Slider::NotifyTarget () - target->MessageReceived (changed); - target->UnlockLooper(); - delete changed; --} -\ No newline at end of file -+} -diff --git a/source/TOTDWindow.cpp b/source/TOTDWindow.cpp -index 5068acd..31f940a 100644 ---- a/source/TOTDWindow.cpp -+++ b/source/TOTDWindow.cpp -@@ -2,6 +2,7 @@ - #include "Colors.h" - #include "BitmapView.h" - #include "Settings.h" -+#include - #include - #include - #include -diff --git a/source/TabView.cpp b/source/TabView.cpp -index d3292e4..fb89ca5 100644 ---- a/source/TabView.cpp -+++ b/source/TabView.cpp -@@ -1,6 +1,7 @@ - #include "TabView.h" - #include "Colors.h" - #include -+#include - #include - - #define _HTABHEIGHT (TAB_HEIGHT/2) -@@ -175,4 +176,4 @@ void TabView::RaiseView (int n) - AddChild (views[n]); - current = n; - Invalidate(); --} -\ No newline at end of file -+} -diff --git a/source/Tablet.h b/source/Tablet.h -index 3aa7fb8..28e69ec 100644 ---- a/source/Tablet.h -+++ b/source/Tablet.h -@@ -3,6 +3,7 @@ - - #include - #include "Wacom.h" -+#include - #include - #include - -@@ -46,4 +47,4 @@ float fMaxPressure; - int32 fTabletType; - }; - --#endif -\ No newline at end of file -+#endif -diff --git a/source/ThumbnailFilePanel.cpp b/source/ThumbnailFilePanel.cpp -index cdecd43..9fb501f 100644 ---- a/source/ThumbnailFilePanel.cpp -+++ b/source/ThumbnailFilePanel.cpp -@@ -3,6 +3,7 @@ - #include "ThumbnailFilePanel.h" - #include "Colors.h" - #include -+#include - #include "BitmapStuff.h" - #include - #include -@@ -202,4 +203,4 @@ void ThumbnailView::update (BBitmap *map) - delete tmpView; - } - Invalidate(); --} -\ No newline at end of file -+} -diff --git a/source/VideoConsumer.h b/source/VideoConsumer.h -index 56772ff..9dfb518 100644 ---- a/source/VideoConsumer.h -+++ b/source/VideoConsumer.h -@@ -23,13 +23,13 @@ public: - const char * name, - BView * view, - BMediaAddOn *addon, -- const uint32 internal_id); -+ const int32 internal_id); - ~VideoConsumer(); - - /* BMediaNode */ - public: - -- virtual BMediaAddOn *AddOn(long *cookie) const; -+ virtual BMediaAddOn *AddOn(int32 *cookie) const; - - protected: - -@@ -109,7 +109,7 @@ public: - - private: - -- uint32 mInternalID; -+ int32 mInternalID; - BMediaAddOn *mAddOn; - - bool mConnectionActive; -@@ -122,7 +122,7 @@ private: - BBitmap *mBitmap[3]; - bool mOurBuffers; - BBufferGroup *mBuffers; -- uint32 mBufferMap[3]; -+ BBuffer *mBufferMap[3]; - - bigtime_t mRate; - uint32 mImageFormat; -diff --git a/source/add-ons/AutoContrast/Jamfile b/source/add-ons/AutoContrast/Jamfile -index 0498302..ce2823a 100644 ---- a/source/add-ons/AutoContrast/Jamfile -+++ b/source/add-ons/AutoContrast/Jamfile -@@ -2,7 +2,7 @@ SubDir TOP source add-ons AutoContrast ; - - SubDirHdrs $(TOP) source ; - --LINKFLAGS on AutoContrast = -nostart -Xlinker -soname=AutoContrast ; -+LINKFLAGS on AutoContrast = -shared -Xlinker -soname=AutoContrast ; - - Main AutoContrast : - AutoContrast.cpp -diff --git a/source/add-ons/Blur/Jamfile b/source/add-ons/Blur/Jamfile -index 7784c80..60ebfa9 100644 ---- a/source/add-ons/Blur/Jamfile -+++ b/source/add-ons/Blur/Jamfile -@@ -2,7 +2,7 @@ SubDir TOP source add-ons Blur ; - - SubDirHdrs $(TOP) source ; - --LINKFLAGS on Blur = -nostart -Xlinker -soname=Blur ; -+LINKFLAGS on Blur = -shared -Xlinker -soname=Blur ; - - Main Blur : - Blur.cpp -diff --git a/source/add-ons/Brightness/Jamfile b/source/add-ons/Brightness/Jamfile -index 7c308a9..1885536 100644 ---- a/source/add-ons/Brightness/Jamfile -+++ b/source/add-ons/Brightness/Jamfile -@@ -2,7 +2,7 @@ SubDir TOP source add-ons Brightness ; - - SubDirHdrs $(TOP) source ; - --LINKFLAGS on Brightness = -nostart -Xlinker -soname=Brightness ; -+LINKFLAGS on Brightness = -shared -Xlinker -soname=Brightness ; - - Main Brightness : - Brightness.cpp -diff --git a/source/add-ons/BumpMap/Jamfile b/source/add-ons/BumpMap/Jamfile -index c03ef3a..3590082 100644 ---- a/source/add-ons/BumpMap/Jamfile -+++ b/source/add-ons/BumpMap/Jamfile -@@ -2,7 +2,7 @@ SubDir TOP source add-ons BumpMap ; - - SubDirHdrs $(TOP) source ; - --LINKFLAGS on BumpMap = -nostart -Xlinker -soname=BumpMap ; -+LINKFLAGS on BumpMap = -shared -Xlinker -soname=BumpMap ; - - Main BumpMap : - BumpMap.cpp -diff --git a/source/add-ons/CaptureTest/Jamfile b/source/add-ons/CaptureTest/Jamfile -index 8525ae0..73ad315 100644 ---- a/source/add-ons/CaptureTest/Jamfile -+++ b/source/add-ons/CaptureTest/Jamfile -@@ -2,7 +2,7 @@ SubDir TOP source add-ons CaptureTest ; - - SubDirHdrs $(TOP) source ; - --LINKFLAGS on CaptureTest = -nostart -Xlinker -soname=CaptureTest ; -+LINKFLAGS on CaptureTest = -shared -Xlinker -soname=CaptureTest ; - - Main CaptureTest : - CaptureTest.cpp -diff --git a/source/add-ons/Chromakey/Jamfile b/source/add-ons/Chromakey/Jamfile -index 1355f28..e503192 100644 ---- a/source/add-ons/Chromakey/Jamfile -+++ b/source/add-ons/Chromakey/Jamfile -@@ -2,7 +2,7 @@ SubDir TOP source add-ons Chromakey ; - - SubDirHdrs $(TOP) source ; - --LINKFLAGS on Chromakey = -nostart -Xlinker -soname=Chromakey ; -+LINKFLAGS on Chromakey = -shared -Xlinker -soname=Chromakey ; - - Main Chromakey : - Chromakey.cpp -diff --git a/source/add-ons/ColorCurves/Jamfile b/source/add-ons/ColorCurves/Jamfile -index 5aa8fab..52dc7ed 100644 ---- a/source/add-ons/ColorCurves/Jamfile -+++ b/source/add-ons/ColorCurves/Jamfile -@@ -2,13 +2,19 @@ SubDir TOP source add-ons ColorCurves ; - - SubDirHdrs $(TOP) source ; - --LINKFLAGS on ColorCurves = -nostart -Xlinker -soname=ColorCurves ; -+LINKFLAGS on ColorCurves = -shared -Xlinker -soname=ColorCurves ; - - AS = nasm -f elf32 ; - -+local have64bits = [ GLOB /system : kernel_x86_64 ] ; -+x86_sources = Colorcurves_x86.asm ; -+if $(have64bits) { -+ x86_sources = ; -+} -+ - Main ColorCurves : - ColorCurves.cpp -- Colorcurves_x86.asm -+ $(x86_sources) - ; - - InstallBin target/add-ons : ColorCurves ; -diff --git a/source/add-ons/Diffuse/Jamfile b/source/add-ons/Diffuse/Jamfile -index 8e179c2..8c79f53 100644 ---- a/source/add-ons/Diffuse/Jamfile -+++ b/source/add-ons/Diffuse/Jamfile -@@ -2,7 +2,7 @@ SubDir TOP source add-ons Diffuse ; - - SubDirHdrs $(TOP) source ; - --LINKFLAGS on Diffuse = -nostart -Xlinker -soname=Diffuse ; -+LINKFLAGS on Diffuse = -shared -Xlinker -soname=Diffuse ; - - Main Diffuse : - Diffuse.cpp -diff --git a/source/add-ons/Gaussian/Jamfile b/source/add-ons/Gaussian/Jamfile -index b4b85c4..4ce3163 100644 ---- a/source/add-ons/Gaussian/Jamfile -+++ b/source/add-ons/Gaussian/Jamfile -@@ -2,7 +2,7 @@ SubDir TOP source add-ons Gaussian ; - - SubDirHdrs $(TOP) source ; - --LINKFLAGS on Gaussian = -nostart -Xlinker -soname=Gaussian ; -+LINKFLAGS on Gaussian = -shared -Xlinker -soname=Gaussian ; - - Main Gaussian : - Gaussian.cpp -diff --git a/source/add-ons/Gradient/Jamfile b/source/add-ons/Gradient/Jamfile -index ac9a7c1..94107c1 100644 ---- a/source/add-ons/Gradient/Jamfile -+++ b/source/add-ons/Gradient/Jamfile -@@ -2,7 +2,7 @@ SubDir TOP source add-ons Gradient ; - - SubDirHdrs $(TOP) source ; - --LINKFLAGS on Gradient = -nostart -Xlinker -soname=Gradient ; -+LINKFLAGS on Gradient = -shared -Xlinker -soname=Gradient ; - - Main Gradient : - Gradient.cpp -diff --git a/source/add-ons/ImageElements/Jamfile b/source/add-ons/ImageElements/Jamfile -index 492f094..db8fda9 100644 ---- a/source/add-ons/ImageElements/Jamfile -+++ b/source/add-ons/ImageElements/Jamfile -@@ -2,7 +2,7 @@ SubDir TOP source add-ons ImageElements ; - - SubDirHdrs $(TOP) source ; - --LINKFLAGS on ImageElements = -nostart -Xlinker -soname=ImageElements ; -+LINKFLAGS on ImageElements = -shared -Xlinker -soname=ImageElements ; - - Main ImageElements : - ImageElements.cpp -diff --git a/source/add-ons/Jim/Jamfile b/source/add-ons/Jim/Jamfile -index 21dbda3..e6d5660 100644 ---- a/source/add-ons/Jim/Jamfile -+++ b/source/add-ons/Jim/Jamfile -@@ -2,7 +2,7 @@ SubDir TOP source add-ons Jim ; - - SubDirHdrs $(TOP) source ; - --LINKFLAGS on Jim = -nostart -Xlinker -soname=Jim ; -+LINKFLAGS on Jim = -shared -Xlinker -soname=Jim ; - - Main Jim : - Jim.cpp -diff --git a/source/add-ons/Mandelbrot/Jamfile b/source/add-ons/Mandelbrot/Jamfile -index 54160f9..3c71dc2 100644 ---- a/source/add-ons/Mandelbrot/Jamfile -+++ b/source/add-ons/Mandelbrot/Jamfile -@@ -2,7 +2,7 @@ SubDir TOP source add-ons Mandelbrot ; - - SubDirHdrs $(TOP) source ; - --LINKFLAGS on Mandelbrot = -nostart -Xlinker -soname=Mandelbrot ; -+LINKFLAGS on Mandelbrot = -shared -Xlinker -soname=Mandelbrot ; - - Main Mandelbrot : - mandelbrot.cpp -diff --git a/source/add-ons/MotionBlur/Jamfile b/source/add-ons/MotionBlur/Jamfile -index 8c8d0c5..3a4d2a0 100644 ---- a/source/add-ons/MotionBlur/Jamfile -+++ b/source/add-ons/MotionBlur/Jamfile -@@ -2,7 +2,7 @@ SubDir TOP source add-ons MotionBlur ; - - SubDirHdrs $(TOP) source ; - --LINKFLAGS on MotionBlur = -nostart -Xlinker -soname=MotionBlur ; -+LINKFLAGS on MotionBlur = -shared -Xlinker -soname=MotionBlur ; - - Main MotionBlur : - MotionBlur.cpp -diff --git a/source/add-ons/MultiGradient/Jamfile b/source/add-ons/MultiGradient/Jamfile -index 393431b..837683e 100644 ---- a/source/add-ons/MultiGradient/Jamfile -+++ b/source/add-ons/MultiGradient/Jamfile -@@ -2,7 +2,7 @@ SubDir TOP source add-ons MultiGradient ; - - SubDirHdrs $(TOP) source ; - --LINKFLAGS on MultiGradient = -nostart -Xlinker -soname=MultiGradient ; -+LINKFLAGS on MultiGradient = -shared -Xlinker -soname=MultiGradient ; - - Main MultiGradient : - MultiGradient.cpp -diff --git a/source/add-ons/Negate/Jamfile b/source/add-ons/Negate/Jamfile -index 8ae0cb7..b84e8d3 100644 ---- a/source/add-ons/Negate/Jamfile -+++ b/source/add-ons/Negate/Jamfile -@@ -2,7 +2,7 @@ SubDir TOP source add-ons Negate ; - - SubDirHdrs $(TOP) source ; - --LINKFLAGS on Negate = -nostart -Xlinker -soname=Negate ; -+LINKFLAGS on Negate = -shared -Xlinker -soname=Negate ; - - Main Negate : - Negate.cpp -diff --git a/source/add-ons/Noise/Jamfile b/source/add-ons/Noise/Jamfile -index 74d66d8..169a85b 100644 ---- a/source/add-ons/Noise/Jamfile -+++ b/source/add-ons/Noise/Jamfile -@@ -2,7 +2,7 @@ SubDir TOP source add-ons Noise ; - - SubDirHdrs $(TOP) source ; - --LINKFLAGS on Noise = -nostart -Xlinker -soname=Noise ; -+LINKFLAGS on Noise = -shared -Xlinker -soname=Noise ; - - Main Noise : - Noise.cpp -diff --git a/source/add-ons/OilPaint/Jamfile b/source/add-ons/OilPaint/Jamfile -index 463b025..251e139 100644 ---- a/source/add-ons/OilPaint/Jamfile -+++ b/source/add-ons/OilPaint/Jamfile -@@ -2,7 +2,7 @@ SubDir TOP source add-ons OilPaint ; - - SubDirHdrs $(TOP) source ; - --LINKFLAGS on OilPaint = -nostart -Xlinker -soname=OilPaint ; -+LINKFLAGS on OilPaint = -shared -Xlinker -soname=OilPaint ; - - Main OilPaint : - OilPaint.cpp -diff --git a/source/add-ons/Palmcam/Jamfile b/source/add-ons/Palmcam/Jamfile -index 699ac80..7f6a639 100644 ---- a/source/add-ons/Palmcam/Jamfile -+++ b/source/add-ons/Palmcam/Jamfile -@@ -2,7 +2,7 @@ SubDir TOP source add-ons Palmcam ; - - SubDirHdrs $(TOP) source ; - --LINKFLAGS on Palmcam = -nostart -Xlinker -soname=Palmcam ; -+LINKFLAGS on Palmcam = -shared -Xlinker -soname=Palmcam ; - - Main Palmcam : - Palmcam.cpp -diff --git a/source/add-ons/Quantize/Jamfile b/source/add-ons/Quantize/Jamfile -index b01f888..896bc16 100644 ---- a/source/add-ons/Quantize/Jamfile -+++ b/source/add-ons/Quantize/Jamfile -@@ -2,7 +2,7 @@ SubDir TOP source add-ons Quantize ; - - SubDirHdrs $(TOP) source ; - --LINKFLAGS on Quantize = -nostart -Xlinker -soname=Quantize ; -+LINKFLAGS on Quantize = -shared -Xlinker -soname=Quantize ; - - Main Quantize : - Quantize.cpp -diff --git a/source/add-ons/Ripple/Jamfile b/source/add-ons/Ripple/Jamfile -index 4759470..f135490 100644 ---- a/source/add-ons/Ripple/Jamfile -+++ b/source/add-ons/Ripple/Jamfile -@@ -2,7 +2,7 @@ SubDir TOP source add-ons Ripple ; - - SubDirHdrs $(TOP) source ; - --LINKFLAGS on Ripple = -nostart -Xlinker -soname=Ripple ; -+LINKFLAGS on Ripple = -shared -Xlinker -soname=Ripple ; - - Main Ripple : - Ripple.cpp -diff --git a/source/add-ons/Scale/Jamfile b/source/add-ons/Scale/Jamfile -index 7b86ba3..6abf1e5 100644 ---- a/source/add-ons/Scale/Jamfile -+++ b/source/add-ons/Scale/Jamfile -@@ -2,7 +2,7 @@ SubDir TOP source add-ons Scale ; - - SubDirHdrs $(TOP) source ; - --LINKFLAGS on Scale = -nostart -Xlinker -soname=Scale ; -+LINKFLAGS on Scale = -shared -Xlinker -soname=Scale ; - - Main Scale : - Scale.cpp -diff --git a/source/add-ons/Sepia/Jamfile b/source/add-ons/Sepia/Jamfile -index 83b18a9..dbc9d8b 100644 ---- a/source/add-ons/Sepia/Jamfile -+++ b/source/add-ons/Sepia/Jamfile -@@ -2,7 +2,7 @@ SubDir TOP source add-ons Sepia ; - - SubDirHdrs $(TOP) source ; - --LINKFLAGS on Sepia = -nostart -Xlinker -soname=Sepia ; -+LINKFLAGS on Sepia = -shared -Xlinker -soname=Sepia ; - - Main Sepia : - Sepia.cpp -diff --git a/source/add-ons/Solarize/Jamfile b/source/add-ons/Solarize/Jamfile -index c108fdd..077a909 100644 ---- a/source/add-ons/Solarize/Jamfile -+++ b/source/add-ons/Solarize/Jamfile -@@ -2,7 +2,7 @@ SubDir TOP source add-ons Solarize ; - - SubDirHdrs $(TOP) source ; - --LINKFLAGS on Solarize = -nostart -Xlinker -soname=Solarize ; -+LINKFLAGS on Solarize = -shared -Xlinker -soname=Solarize ; - - Main Solarize : - Solarize.cpp -diff --git a/source/add-ons/Tile/Jamfile b/source/add-ons/Tile/Jamfile -index 4252e7d..359e8e5 100644 ---- a/source/add-ons/Tile/Jamfile -+++ b/source/add-ons/Tile/Jamfile -@@ -2,7 +2,7 @@ SubDir TOP source add-ons Tile ; - - SubDirHdrs $(TOP) source ; - --LINKFLAGS on Tile = -nostart -Xlinker -soname=Tile ; -+LINKFLAGS on Tile = -shared -Xlinker -soname=Tile ; - - Main Tile : - Tile.cpp -diff --git a/source/add-ons/Translate/Jamfile b/source/add-ons/Translate/Jamfile -index a441991..227dcaa 100644 ---- a/source/add-ons/Translate/Jamfile -+++ b/source/add-ons/Translate/Jamfile -@@ -2,7 +2,7 @@ SubDir TOP source add-ons Translate ; - - SubDirHdrs $(TOP) source ; - --LINKFLAGS on Translate = -nostart -Xlinker -soname=Translate ; -+LINKFLAGS on Translate = -shared -Xlinker -soname=Translate ; - - Main Translate : - Translate.cpp -diff --git a/source/add-ons/VideoGrabber/Jamfile b/source/add-ons/VideoGrabber/Jamfile -index f769d50..a3539cc 100644 ---- a/source/add-ons/VideoGrabber/Jamfile -+++ b/source/add-ons/VideoGrabber/Jamfile -@@ -2,7 +2,7 @@ SubDir TOP source add-ons VideoGrabber ; - - SubDirHdrs $(TOP) source ; - --LINKFLAGS on VideoGrabber = -nostart -Xlinker -soname=VideoGrabber ; -+LINKFLAGS on VideoGrabber = -shared -Xlinker -soname=VideoGrabber ; - - Main VideoGrabber : - VideoGrabber.cpp -diff --git a/source/add-ons/VideoGrabber/VideoConsumer.cpp b/source/add-ons/VideoGrabber/VideoConsumer.cpp -index b1458f9..5a27a23 100644 ---- a/source/add-ons/VideoGrabber/VideoConsumer.cpp -+++ b/source/add-ons/VideoGrabber/VideoConsumer.cpp -@@ -36,7 +36,7 @@ VideoConsumer::VideoConsumer( - const char * name, - BView *view, - BMediaAddOn *addon, -- const uint32 internal_id) : -+ const int32 internal_id) : - - BMediaNode(name), - BMediaEventLooper(), -@@ -61,7 +61,7 @@ VideoConsumer::VideoConsumer( - for (uint32 j = 0; j < 3; j++) - { - mBitmap[j] = NULL; -- mBufferMap[j] = 0; -+ mBufferMap[j] = NULL; - } - - SetPriority(B_DISPLAY_PRIORITY); -@@ -94,7 +94,7 @@ VideoConsumer::~VideoConsumer() - //--------------------------------------------------------------- - - BMediaAddOn * --VideoConsumer::AddOn(long *cookie) const -+VideoConsumer::AddOn(int32 *cookie) const - { - // do the right thing if we're ever used with an add-on - *cookie = mInternalID; -@@ -260,7 +260,7 @@ VideoConsumer::CreateBuffers( - for (int j = 0; j < 3; j++) - if (buffList[j] != NULL) - { -- mBufferMap[j] = (uint32) buffList[j]; -+ mBufferMap[j] = buffList[j]; - // PROGRESS(" j = %d buffer = %08lx\n", j, mBufferMap[j]); - } - else -@@ -493,7 +493,7 @@ VideoConsumer::HandleEvent( - uint32 index = 0; - mOurBuffers = true; - while(index < 3) -- if ((uint32)buffer == mBufferMap[index]) -+ if (buffer == mBufferMap[index]) - break; - else - index++; -diff --git a/source/add-ons/Wave/Jamfile b/source/add-ons/Wave/Jamfile -index 3e1777c..5c21617 100644 ---- a/source/add-ons/Wave/Jamfile -+++ b/source/add-ons/Wave/Jamfile -@@ -2,7 +2,7 @@ SubDir TOP source add-ons Wave ; - - SubDirHdrs $(TOP) source ; - --LINKFLAGS on Wave = -nostart -Xlinker -soname=Wave ; -+LINKFLAGS on Wave = -shared -Xlinker -soname=Wave ; - - Main Wave : - Wave.cpp -diff --git a/source/add-ons/WinGrab/Jamfile b/source/add-ons/WinGrab/Jamfile -index 729d9f5..c1f5f31 100644 ---- a/source/add-ons/WinGrab/Jamfile -+++ b/source/add-ons/WinGrab/Jamfile -@@ -2,7 +2,7 @@ SubDir TOP source add-ons WinGrab ; - - SubDirHdrs $(TOP) source ; - --LINKFLAGS on WinGrab = -nostart -Xlinker -soname=WinGrab ; -+LINKFLAGS on WinGrab = -shared -Xlinker -soname=WinGrab ; - - Main WinGrab : - WinGrab.cpp -diff --git a/source/mmx.c b/source/mmx.c -index 8319af2..94a6b84 100644 ---- a/source/mmx.c -+++ b/source/mmx.c -@@ -42,6 +42,12 @@ void mmx_alpha_blend_nodiff_ga (uint64 ga_64, uint32 *s, uint32 *d, int size); - void mmx_alpha_blend_diff (uint32 *s, uint32 *d, int height, int difference, int width); - void mmx_alpha_blend_nodiff (uint32 *s, uint32 *d, int size); - #endif -+#if defined (__GNUC__) && defined (__x86_64__) -+void mmx_alpha_blend_diff_ga (uint64 ga_64, uint32 *s, uint32 *d, int height, int difference, int width) {}; -+void mmx_alpha_blend_nodiff_ga (uint64 ga_64, uint32 *s, uint32 *d, int size) {}; -+void mmx_alpha_blend_diff (uint32 *s, uint32 *d, int height, int difference, int width) {}; -+void mmx_alpha_blend_nodiff (uint32 *s, uint32 *d, int size) {}; -+#endif - - void mmx_alpha_blend (bgra_pixel *src, bgra_pixel *dest, int ga, int w, int l, int t, int r, int b) - // src and dest point to 32 bit pixel bitmaps, of equal width (w). -diff --git a/source/mmx.h b/source/mmx.h -index 84fd9a3..fc6dd01 100644 ---- a/source/mmx.h -+++ b/source/mmx.h -@@ -1,4 +1,5 @@ --typedef unsigned long bgra_pixel; -+#include -+typedef uint32_t bgra_pixel; - - #if defined (__cplusplus) - extern "C" --- -2.10.2 -