tags 581662 +patch
thanks

Note: I'm just doing flyby rc bugsquashing here.

I made the build-dependency linux in question linux-specific (since afaict the library in question is linux-specific and likely to stay that way). Then I tried to build the package. Unsurprisingly it failed. Looking at the makefile it seems it only knew what to do on linux so I fixed that.

Then I discovered that as well as build-depending on gudev it also unconditionally asked pkg-config for it so I modified the makefile again so it didn't ask for those things on kfreebsd.

Then I found the camera stuff was pretty reliant on gudev. Lukilly there seemed to be a #if to disable the camera stuff so I used this.

Finally I ran into a build error which seemed to be a case of a missed #if in the camera stuff disabling, I've put one in but i'm not positive it's correct.

With these fixes the package builds and installs successfully on kfreebsd and appears to run. I have not further tested it.

I have also tried to make the Makefile treat hurd the same as kfreebsd but I have not tested on hurd.

A patch implementing the above is attatched ready for adding to the quilt series
Description: Fixes for non-linux ports
 Add support for freebsd and hurd (hurd untested) to makefile
 .
 Disable camera support (which appears to depend heavilly on gudev which in turn
 depends on udev which is linux specific) on freebsd and hurd
 .
 Fix a build issue with camera support disabled
Author: Peter Green <plugw...@p10link.net>

--- shotwell-0.5.0+dfsg.orig/Makefile
+++ shotwell-0.5.0+dfsg/Makefile
@@ -20,6 +20,13 @@ SYSTEM := $(UNAME:MINGW32_%=MinGW)
 
 ifeq "$(SYSTEM)" "Linux"
   LINUX = 1
+  NIX = 1
+endif
+
+ifeq "$(SYSTEM)" "GNU/kFreeBSD"
+  KFBSD = 1
+  USER_VALAFLAGS += -D NO_CAMERA
+  NIX = 1
 endif
 
 ifeq "$(SYSTEM)" "MinGW"
@@ -95,7 +102,7 @@ SRC_FILES = \
 	PicasaConnector.vala \
     Screensaver.vala
 
-ifndef LINUX
+ifndef NIX
 SRC_FILES += \
     GConf.vala
 endif
@@ -155,6 +162,10 @@ EXT_PKGS = \
 	sqlite3
 	
 ifdef LINUX
+EXT_PKGS += gudev-1.0
+endif
+
+ifdef NIX
 EXT_PKGS += \
 	gconf-2.0 \
 	libgphoto2 \
@@ -163,7 +174,6 @@ EXT_PKGS += \
 	unique-1.0 \
 	webkit-1.0 \
 	libusb \
-	gudev-1.0 \
     dbus-glib-1
 endif
 
@@ -179,6 +189,10 @@ EXT_PKG_VERSIONS = \
 	sqlite3 >= 3.5.9
 	
 ifdef LINUX
+  EXT_PKG_VERSIOS += gudev-1.0 >= 145
+endif
+
+ifdef NIX
 EXT_PKG_VERSIONS += \
 	gconf-2.0 >= 2.22.0 \
 	libgphoto2 >= 2.4.2 \
@@ -187,7 +201,6 @@ EXT_PKG_VERSIONS += \
 	unique-1.0 >= 1.0.0 \
 	webkit-1.0 >= 1.1.5 \
 	libusb >= 0.1.12 \
-	gudev-1.0 >= 145 \
     dbus-glib-1 >= 0.80
 endif
 
@@ -334,7 +347,7 @@ endif
 ifndef DISABLE_DESKTOP_UPDATE
 	-update-desktop-database || :
 endif
-ifdef LINUX
+ifdef NIX
 ifndef DISABLE_SCHEMAS_INSTALL
 	GCONF_CONFIG_SOURCE=`gconftool-2 --get-default-source` gconftool-2 --makefile-install-rule misc/shotwell.schemas
 else
@@ -355,7 +368,7 @@ uninstall:
 ifndef DISABLE_DESKTOP_UPDATE
 	-update-desktop-database || :
 endif
-ifdef LINUX
+ifdef NIX
 ifndef DISABLE_SCHEMAS_INSTALL
 	GCONF_CONFIG_SOURCE=`gconftool-2 --get-default-source` gconftool-2 --makefile-uninstall-rule misc/shotwell.schemas
 else
--- shotwell-0.5.0+dfsg.orig/src/main.vala
+++ shotwell-0.5.0+dfsg/src/main.vala
@@ -17,7 +17,9 @@ Unique.Response on_shotwell_message(Uniq
     
     switch (command) {
         case ShotwellCommand.MOUNTED_CAMERA:
-            LibraryWindow.get_app().mounted_camera_shell_notification(data.get_text());
+            #if !NO_CAMERA
+                LibraryWindow.get_app().mounted_camera_shell_notification(data.get_text());
+            #endif
         break;
         
         case Unique.Command.ACTIVATE:

Reply via email to