Add paches taken from upstream to fix build ruby-gnome2-gtkmozembed with

xulrunner-1.9.2.x.
This commit is contained in:
obache 2010-03-19 13:22:42 +00:00
parent 12e5b9fd80
commit cdbb940b34
4 changed files with 133 additions and 5 deletions

View file

@ -1,6 +1,8 @@
$NetBSD: distinfo,v 1.13 2010/01/01 18:38:08 joerg Exp $
$NetBSD: distinfo,v 1.14 2010/03/19 13:22:42 obache Exp $
SHA1 (ruby-gnome2-all-0.19.3.tar.gz) = f6ab4c1699c4920c738343870b13ba5410a5ecbf
RMD160 (ruby-gnome2-all-0.19.3.tar.gz) = a7ec4b9b7c17f2e23a5a51a7ed9c8df5a6c3ea7f
Size (ruby-gnome2-all-0.19.3.tar.gz) = 2335847 bytes
SHA1 (patch-aa) = 4b246a11069ba0a058673febcb9eb490c23f3898
SHA1 (patch-aa) = 35b07c8543c0703f4a6426c1e76bb0a4b53c9517
SHA1 (patch-ac) = a80d28135f652d06398b6a4d1b1bfd744820c9e2
SHA1 (patch-at) = 607c04a7089e7cf94ba1d39479ff385b80cd9299

View file

@ -1,8 +1,25 @@
$NetBSD: patch-aa,v 1.6 2010/01/01 18:38:08 joerg Exp $
$NetBSD: patch-aa,v 1.7 2010/03/19 13:22:42 obache Exp $
--- gtkmozembed/extconf.rb.orig 2010-01-01 18:25:07.000000000 +0000
* add libxul-embedding to PACKAGED_IDS for xulrunner 1.9.2.
http://ruby-gnome2.svn.sourceforge.net/viewvc/ruby-gnome2?view=rev&revision=3752
* fix -Wl,-rpath syntax. [#2924766]
http://ruby-gnome2.svn.sourceforge.net/viewvc/ruby-gnome2?view=rev&revision=3727
* generate collected flags type. [#2925285]
http://ruby-gnome2.svn.sourceforge.net/viewvc/ruby-gnome2?view=rev&revision=3749
--- gtkmozembed/extconf.rb.orig 2009-09-23 00:43:01.000000000 +0000
+++ gtkmozembed/extconf.rb
@@ -48,7 +48,7 @@ mozilla_path = mozilla_library_path.stri
@@ -4,6 +4,7 @@ extconf.rb for Ruby/GtkMozEmbed extentio
PACKAGE_NAME = "gtkmozembed"
PACKAGE_IDS = ["libxul-embedding-unstable",
+ "libxul-embedding",
"xulrunner-gtkmozembed",
"firefox-gtkmozembed",
"seamonkey-gtkmozembed",
@@ -48,7 +49,7 @@ mozilla_path = mozilla_library_path.stri
if mozilla_path
# please comment the CFLAGS line if you don't want a default comp_path
$CFLAGS << " -DDEFAULT_MOZILLA_FIVE_HOME='\"#{mozilla_path}\"' "
@ -11,3 +28,13 @@ $NetBSD: patch-aa,v 1.6 2010/01/01 18:38:08 joerg Exp $
else
$stderr.puts "${package_id}.pc cannot be found."
exit 1
@@ -83,7 +84,8 @@ create_makefile_at_srcdir(PACKAGE_NAME,
result += [gtkmozembed_h] if File.exist?(gtkmozembed_h)
result
end
- glib_mkenums(enum_type_prefix, headers, "GTK_TYPE_", ["gtkmozembed.h"])
+ glib_mkenums(enum_type_prefix, headers, "GTK_TYPE_", ["gtkmozembed.h"],
+ :force_flags => [/Flags/])
end
create_top_makefile

View file

@ -0,0 +1,20 @@
$NetBSD: patch-ac,v 1.6 2010/03/19 13:22:42 obache Exp $
* for patch-aa part#3
http://ruby-gnome2.svn.sourceforge.net/viewvc/ruby-gnome2?view=rev&revision=3748
--- glib/src/lib/mkmf-gnome2.rb.orig 2009-09-24 11:30:50.000000000 +0000
+++ glib/src/lib/mkmf-gnome2.rb
@@ -331,10 +331,10 @@ def add_obj(name)
$objs << name unless $objs.index(name)
end
-def glib_mkenums(prefix, files, g_type_prefix, include_files)
+def glib_mkenums(prefix, files, g_type_prefix, include_files, options={})
add_distcleanfile(prefix + ".h")
add_distcleanfile(prefix + ".c")
- GLib::MkEnums.create(prefix, files, g_type_prefix, include_files)
+ GLib::MkEnums.create(prefix, files, g_type_prefix, include_files, options)
end
def check_cairo

View file

@ -0,0 +1,79 @@
$NetBSD: patch-at,v 1.1 2010/03/19 13:22:42 obache Exp $
* for patch-aa part#3
http://ruby-gnome2.svn.sourceforge.net/viewvc/ruby-gnome2?view=rev&revision=3748
--- glib/src/lib/glib-mkenums.rb.orig 2008-03-15 01:50:44.000000000 +0000
+++ glib/src/lib/glib-mkenums.rb
@@ -16,7 +16,8 @@ module GLib
attr_reader :constants
- def initialize(name, const_lines, g_type_prefix)
+ def initialize(name, const_lines, g_type_prefix, options={})
+ @options = options || {}
@EnumName = name
@g_type_prefix = g_type_prefix
@constants = []
@@ -30,7 +31,7 @@ module GLib
def parse_const_lines(const_lines)
ret = ""
- if const_lines.include? "<<"
+ if @options[:force_flags] or const_lines.include? "<<"
@type = "flags"
@Type = "Flags"
else
@@ -92,12 +93,18 @@ GType #{@enum_name}_get_type (void);
end
- def self.parse(data, g_type_prefix)
+ def self.parse(data, g_type_prefix, options={})
+ options ||={}
enums = []
data.scan(/^\s*typedef\s+enum\s*
\{?\s*(.*?)
\}\s*(\w+);/mx){|constants, name|
- enum = new(name, constants, g_type_prefix)
+ enum_options = {}
+ force_flags_patterns = [(options[:force_flags] || [])].flatten
+ if force_flags_patterns.any? {|pattern| pattern === name}
+ enum_options[:force_flags] = true
+ end
+ enum = new(name, constants, g_type_prefix, enum_options)
enums << enum
}
enums
@@ -111,9 +118,11 @@ GType #{@enum_name}_get_type (void);
# * files: header files to parse
# * g_type_prefix: the gtype prefix such as GTK_TYPE_
# * include_files: define #include <file> lines into target_filename.c
- def self.create(target_filename, files, g_type_prefix, include_files)
+ def self.create(target_filename, files, g_type_prefix, include_files,
+ options)
puts "creating #{target_filename}.c"
- mkenums = MkEnums.new(target_filename, files, g_type_prefix, include_files)
+ mkenums = MkEnums.new(target_filename, files, g_type_prefix, include_files,
+ options)
open("#{target_filename}.c", "w") do |out|
out.write(mkenums.create_c)
@@ -130,7 +139,7 @@ GType #{@enum_name}_get_type (void);
# * files: header files to parse
# * g_type_prefix: the gtype prefix such as GTK_TYPE_
# * include_files: define #include <file> lines into target_filename.c
- def initialize(target_filename, files, g_type_prefix, include_files)
+ def initialize(target_filename, files, g_type_prefix, include_files, options)
@target_filename = target_filename
@include_files = include_files
@targets = []
@@ -139,7 +148,7 @@ GType #{@enum_name}_get_type (void);
File.open(path) do |i|
data = i.read
end
- @targets << [path, EnumDefinition.parse(data, g_type_prefix)]
+ @targets << [path, EnumDefinition.parse(data, g_type_prefix, options)]
end
end