aboutsummaryrefslogtreecommitdiff
path: root/x11-themes
diff options
context:
space:
mode:
Diffstat (limited to 'x11-themes')
-rw-r--r--x11-themes/gtk3-oxygen-engine/Makefile12
-rw-r--r--x11-themes/gtk3-oxygen-engine/distinfo4
-rw-r--r--x11-themes/gtk3-oxygen-engine/files/extra-patch-demo-oxygengtkdeco_main.cpp11
-rw-r--r--x11-themes/gtk3-oxygen-engine/files/patch-git_f2ac11760
4 files changed, 64 insertions, 23 deletions
diff --git a/x11-themes/gtk3-oxygen-engine/Makefile b/x11-themes/gtk3-oxygen-engine/Makefile
index 8512cc45cc3d..2dd0121237ea 100644
--- a/x11-themes/gtk3-oxygen-engine/Makefile
+++ b/x11-themes/gtk3-oxygen-engine/Makefile
@@ -2,7 +2,7 @@
# $FreeBSD$
PORTNAME= oxygen
-PORTVERSION= 1.1.4
+PORTVERSION= 1.2.0
CATEGORIES= x11-themes
MASTER_SITES= ${MASTER_SITE_KDE}
MASTER_SITE_SUBDIR= stable/${PORTNAME}-gtk3/${PORTVERSION}/src/
@@ -22,12 +22,4 @@ USE_BZIP2= yes
USE_GNOME= gtk30
USES= cmake:outsource pkgconfig
-.include <bsd.port.pre.mk>
-
-# FreeBSD SVN r205606 was only MFC'ed to 8.1+, so we need to match
-# the old function signature on previous versions.
-.if ${OSVERSION} < 801000
-EXTRA_PATCHES+= ${FILESDIR}/extra-patch-demo-oxygengtkdeco_main.cpp
-.endif
-
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>
diff --git a/x11-themes/gtk3-oxygen-engine/distinfo b/x11-themes/gtk3-oxygen-engine/distinfo
index 3852eef92034..861a32feb414 100644
--- a/x11-themes/gtk3-oxygen-engine/distinfo
+++ b/x11-themes/gtk3-oxygen-engine/distinfo
@@ -1,2 +1,2 @@
-SHA256 (oxygen-gtk3-1.1.4.tar.bz2) = c40f1766ae7d2f110f1bd40af4ca5c88ccb5fee5713e9cb835e8023c98be4d17
-SIZE (oxygen-gtk3-1.1.4.tar.bz2) = 188960
+SHA256 (oxygen-gtk3-1.2.0.tar.bz2) = ea550bd215614c89704501d44479e0b3373db033d6026ce2244b70593241c61f
+SIZE (oxygen-gtk3-1.2.0.tar.bz2) = 190583
diff --git a/x11-themes/gtk3-oxygen-engine/files/extra-patch-demo-oxygengtkdeco_main.cpp b/x11-themes/gtk3-oxygen-engine/files/extra-patch-demo-oxygengtkdeco_main.cpp
deleted file mode 100644
index 43a8adc64f18..000000000000
--- a/x11-themes/gtk3-oxygen-engine/files/extra-patch-demo-oxygengtkdeco_main.cpp
+++ /dev/null
@@ -1,11 +0,0 @@
---- demo/oxygengtkdeco_main.cpp~ 2011-06-26 11:15:05.000000000 -0300
-+++ demo/oxygengtkdeco_main.cpp 2011-06-26 11:16:02.000000000 -0300
-@@ -118,7 +118,7 @@ int dh=0;
- gboolean initLib()
- {
- void* library;
-- char* error=0;
-+ const char* error=0;
- char* moduleDir=gtk_rc_get_module_dir();
- if(moduleDir)
- {
diff --git a/x11-themes/gtk3-oxygen-engine/files/patch-git_f2ac117 b/x11-themes/gtk3-oxygen-engine/files/patch-git_f2ac117
new file mode 100644
index 000000000000..36f09b055a5c
--- /dev/null
+++ b/x11-themes/gtk3-oxygen-engine/files/patch-git_f2ac117
@@ -0,0 +1,60 @@
+commit f2ac117f0343f8f18b7c43eb875c2d4f8faef722
+Author: Raphael Kubo da Costa <rakuco@FreeBSD.org>
+Date: Sat Aug 31 16:12:49 2013 +0300
+
+ Use g_mkdir() instead of different versions of mkdir().
+
+ The current code was erroneously relying on the _POSIX_C_SOURCE macro to
+ decide whether to use mkdir() with the signature present in POSIX-compliant
+ systems or with the Windows signature.
+
+ It turns out POSIX.1 expects the applications to define _POSIX_C_SOURCE to
+ certain values. Only glibc resorts to defining it to a value by default,
+ opposing what the standard says. It would then break systems that use
+ another libc, such as the BSDs, OS X and maybe even other Linux libc
+ implementations.
+
+ Work around the issue by just relying on glib's g_mkdir(), which has the
+ proper means to decide which mkdir() function to call. We still need to
+ check for whether we are on Windows, though, since some of the mode
+ constants are not defined on it.
+
+ REVIEW: 112402
+
+diff --git a/src/oxygenqtsettings.cpp b/src/oxygenqtsettings.cpp
+index b9fdaea..9ad648c 100644
+--- src/oxygenqtsettings.cpp
++++ src/oxygenqtsettings.cpp
+@@ -26,6 +26,8 @@
+ #include "oxygentimeline.h"
+ #include "config.h"
+
++#include <glib.h>
++#include <glib/gstdio.h>
+ #include <gtk/gtk.h>
+
+ #include <algorithm>
+@@ -36,7 +38,6 @@
+ #include <fstream>
+ #include <iostream>
+ #include <sstream>
+-#include <unistd.h>
+
+ namespace Oxygen
+ {
+@@ -327,10 +328,12 @@ namespace Oxygen
+ struct stat st;
+ if( stat( _userConfigDir.c_str(), &st ) != 0 )
+ {
+- #if _POSIX_C_SOURCE
+- mkdir( _userConfigDir.c_str(), S_IRWXU|S_IRWXG|S_IRWXO );
++ #ifdef G_OS_WIN32
++ // S_IRWXG and S_IRWXO are undefined on Windows, and g_mkdir()
++ // ignores its second parameter on Windows anyway.
++ g_mkdir( _userConfigDir.c_str(), 0 );
+ #else
+- mkdir( _userConfigDir.c_str() );
++ g_mkdir( _userConfigDir.c_str(), S_IRWXU|S_IRWXG|S_IRWXO );
+ #endif
+ }
+