glut 8.1.0 → 8.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: a34676086739fe14428a6bfd66402efdce5120ae
4
- data.tar.gz: 162f0fc72bd33d200572af21384ed88c0f81cf8f
3
+ metadata.gz: 9788722e2d44f88e83148aeff2d385204d7864f6
4
+ data.tar.gz: 0aeece59c8101debaa2a359f1c403a9ab2a2c9ec
5
5
  SHA512:
6
- metadata.gz: 63ef01adeee45f68525548847ff474f9da837ad82a50f8877f4f1fa0c509c9057f618b55be8921e7ef505d9eb15160b82043af9d1a9c6b29bcb0d317fe2f0f5b
7
- data.tar.gz: b38c761031179108f3de27b726ea67e769c6160677bc08b2e2ac8d55b5d5e9addb821667663f91a3d006b8cfecc58c6eae56a2e41d122e715cb07f0867bcab93
6
+ metadata.gz: c19d3e8ead5d61ea53e3ca580ec030bbef1a9a022cf05d594786740e501f18712aa7990924617830b1e6e6698e6006468869237a10a82bb0baf41887b6f0988a
7
+ data.tar.gz: d78436ce4f5064742dd7a40113737ef8eb550f78537b041b195e82c01b5ef34b803aa887e372a787a301a29733bc496ef27bd826cff780eafabefb7e2dea64f8
Binary file
Binary file
@@ -0,0 +1,15 @@
1
+ language: ruby
2
+ rvm:
3
+ # - "1.9.3"
4
+ - "2.0.0"
5
+ # - jruby-19mode # JRuby in 1.9 mode
6
+ # - rbx-19mode
7
+ before_install:
8
+ - gem install hoe rake-compiler;
9
+ - sudo apt-get install xpra xserver-xorg-video-dummy freeglut3-dev;
10
+ before_script:
11
+ - "xpra --xvfb=\"Xorg +extension GLX -config `pwd`/test/dummy.xorg.conf -logfile ${HOME}/.xpra/xorg.log\" start :9"
12
+ script: "env DISPLAY=:9 rake test"
13
+ after_script:
14
+ - "xpra stop :9"
15
+ - "cat ~/.xpra/*"
@@ -1,3 +1,10 @@
1
- === 8.1.0
1
+ === 8.2.0 / 2014-03-14
2
2
 
3
- * Moved glut into a standalone gem.
3
+ * Add x64-mingw platform for cross build and add ruby-2.0.0 to binary gems.
4
+ * Update to freeglut-2.8.1 for cross build.
5
+ * Don't pollute the global namespace. Use GLUT namespace.
6
+ * Replace deprecated rb_thread_blocking_region() by rb_thread_call_with_gvl()
7
+
8
+ === 8.1.0 / 2013-03-03
9
+
10
+ * Moved glut into a standalone gem.
@@ -1,12 +1,12 @@
1
1
  .autotest
2
2
  .gemtest
3
3
  .gitignore
4
+ .travis.yml
4
5
  History.rdoc
5
6
  MIT-LICENSE
6
7
  Manifest.txt
7
8
  README.rdoc
8
9
  Rakefile
9
- Rakefile.cross
10
10
  ext/glut/common.h
11
11
  ext/glut/extconf.rb
12
12
  ext/glut/glut.c
@@ -2,7 +2,7 @@
2
2
 
3
3
  == Description
4
4
 
5
- Glut bindings for OpenGL. To be used with the opengl gem.
5
+ Glut bindings for OpenGL. To be used with the {opengl}[https://github.com/larskanis/opengl] gem.
6
6
 
7
7
  == Features and Problems
8
8
 
@@ -12,7 +12,7 @@ Glut bindings for OpenGL. To be used with the opengl gem.
12
12
 
13
13
  * Ruby 1.9.2+
14
14
  * see {0.7}[https://github.com/archSeer/opengl/tree/0.7] for Ruby 1.8.x compatible branch
15
- * OpenGL, GLU and (free-)GLUT development files installed
15
+ * (free-)GLUT development files installed
16
16
 
17
17
  == Install
18
18
 
data/Rakefile CHANGED
@@ -1,4 +1,5 @@
1
- #-*-ruby-*-
1
+ # -*- coding: UTF-8 -*-
2
+ # -*-ruby-*-
2
3
  #
3
4
  # Copyright (C) 2006 John M. Gabriele <jmg3000@gmail.com>
4
5
  # Copyright (C) Eric Hodel <drbrain@segment7.net>
@@ -16,7 +17,6 @@
16
17
 
17
18
  require 'hoe'
18
19
  require 'rake/extensiontask'
19
- load 'Rakefile.cross'
20
20
 
21
21
  hoe = Hoe.spec 'glut' do
22
22
  developer 'Eric Hodel', 'drbrain@segment7.net'
@@ -43,9 +43,9 @@ Rake::ExtensionTask.new 'glut', hoe.spec do |ext|
43
43
  ext.lib_dir = 'lib/glut'
44
44
 
45
45
  ext.cross_compile = true
46
- ext.cross_platform = ['i386-mingw32']
46
+ ext.cross_platform = ['i386-mingw32', 'x64-mingw32']
47
47
  ext.cross_config_options += [
48
- "--with-installed-dir=#{STATIC_INSTALLDIR}",
48
+ "--enable-win32-cross",
49
49
  ]
50
50
  end
51
51
 
@@ -13,10 +13,36 @@ def have_framework(fw, &b)
13
13
  end
14
14
  end unless respond_to? :have_framework
15
15
 
16
- if ENV['CROSS_COMPILING']
17
- dir_config("installed")
16
+ if enable_config('win32-cross')
17
+ require "mini_portile"
18
+
19
+ LIBFREEGLUT_VERSION = ENV['LIBFREEGLUT_VERSION'] || '2.8.1'
20
+ LIBFREEGLUT_SOURCE_URI = "http://downloads.sourceforge.net/project/freeglut/freeglut/#{LIBFREEGLUT_VERSION}/freeglut-#{LIBFREEGLUT_VERSION}.tar.gz"
21
+
22
+ recipe = MiniPortile.new("libglut", LIBFREEGLUT_VERSION)
23
+ recipe.files = [LIBFREEGLUT_SOURCE_URI]
24
+ recipe.target = portsdir = File.expand_path('../../../ports', __FILE__)
25
+ # Prefer host_alias over host in order to use i586-mingw32msvc as
26
+ # correct compiler prefix for cross build, but use host if not set.
27
+ recipe.host = RbConfig::CONFIG["host_alias"].empty? ? RbConfig::CONFIG["host"] : RbConfig::CONFIG["host_alias"]
28
+ recipe.configure_options = [
29
+ "--enable-static",
30
+ "--target=#{recipe.host}",
31
+ "--host=#{recipe.host}",
32
+ ]
33
+
34
+ checkpoint = File.join(portsdir, "#{recipe.name}-#{recipe.version}-#{recipe.host}.installed")
35
+ unless File.exist?(checkpoint)
36
+ recipe.cook
37
+ # --disable-static can not be used since it breaks the freeglut build,
38
+ # but to enforce static linking, we delete the import lib.
39
+ FileUtils.rm File.join(recipe.path, "lib", "libglut.dll.a")
40
+ FileUtils.touch checkpoint
41
+ end
42
+ recipe.activate
18
43
 
19
44
  $defs.push "-DFREEGLUT_EXPORTS"
45
+ dir_config('freeglut', "#{recipe.path}/include", "#{recipe.path}/lib")
20
46
 
21
47
  # libfreeglut is linked to gdi32 and winmm
22
48
  have_library( 'gdi32', 'CreateDC' ) && append_library( $libs, 'gdi32' )
@@ -24,10 +50,10 @@ if ENV['CROSS_COMPILING']
24
50
  end
25
51
 
26
52
  ok =
27
- have_library('glut32.lib', 'gluSolidTeapot') ||
28
- have_library('glut', 'glutSolidTeapot') ||
29
- have_framework('GLUT') &&
30
- have_framework('Cocoa')
53
+ (have_library('opengl32.lib', 'glVertex3d') && have_library('glut32.lib', 'gluSolidTeapot')) ||
54
+ (have_library('opengl32') && have_library('glut')) ||
55
+ (have_library('GL', 'glVertex3d') && have_library('glut', 'glutSolidTeapot')) ||
56
+ (have_framework('OpenGL') && have_framework('GLUT') && have_framework('Cocoa'))
31
57
 
32
58
  ok &&=
33
59
  have_header('GL/glut.h') ||
@@ -21,6 +21,8 @@
21
21
  */
22
22
 
23
23
  #include "common.h"
24
+ extern void *rb_thread_call_without_gvl(void *(*func)(void *), void *data1,
25
+ rb_unblock_function_t *ubf, void *data2);
24
26
 
25
27
  static VALUE menu_callback = Qnil;
26
28
  static ID call_id; /* 'call' method id */
@@ -115,15 +117,15 @@ VALUE obj,arg1,arg2;
115
117
  return Qnil;
116
118
  }
117
119
 
118
- VALUE glut_MainLoop0(void *ignored) {
120
+ void *glut_MainLoop0(void *ignored) {
119
121
  glutMainLoop();
120
122
 
121
- return Qnil; /* never reached */
123
+ return NULL; /* never reached */
122
124
  }
123
125
 
124
126
  static VALUE
125
127
  glut_MainLoop(void) {
126
- rb_thread_blocking_region(glut_MainLoop0, NULL, NULL, NULL);
128
+ rb_thread_call_without_gvl(glut_MainLoop0, NULL, NULL, NULL);
127
129
 
128
130
  return Qnil; /* never reached */
129
131
  }
@@ -16,25 +16,36 @@
16
16
 
17
17
  #include "common.h"
18
18
 
19
+ /*
20
+ * Process loop function, see freeglut_main.c
21
+ */
22
+ GLUT_SIMPLE_FUNCTION(MainLoopEvent)
23
+ GLUT_SIMPLE_FUNCTION(LeaveMainLoop)
24
+ GLUT_SIMPLE_FUNCTION(Exit)
25
+
26
+ /*
27
+ * Window management functions, see freeglut_window.c
28
+ */
29
+ GLUT_SIMPLE_FUNCTION(FullScreenToggle)
30
+ GLUT_SIMPLE_FUNCTION(LeaveFullScreen)
31
+
32
+ /* Initialization functions */
19
33
  static VALUE
20
- glut_InitContextVersion(obj,majorVersion,minorVersion)
21
- VALUE obj,majorVersion,minorVersion;
34
+ glut_InitContextVersion(VALUE obj, VALUE majorVersion, VALUE minorVersion)
22
35
  {
23
36
  glutInitContextVersion(NUM2INT(majorVersion), NUM2INT(minorVersion));
24
37
  return Qnil;
25
38
  }
26
39
 
27
40
  static VALUE
28
- glut_InitContextFlags(obj,flags)
29
- VALUE obj,flags;
41
+ glut_InitContextFlags(VALUE obj, VALUE flags)
30
42
  {
31
43
  glutInitContextFlags(NUM2INT(flags));
32
44
  return Qnil;
33
45
  }
34
46
 
35
47
  static VALUE
36
- glut_InitContextProfile(obj,profile)
37
- VALUE obj,profile;
48
+ glut_InitContextProfile(VALUE obj, VALUE profile)
38
49
  {
39
50
  glutInitContextProfile(NUM2INT(profile));
40
51
  return Qnil;
@@ -43,9 +54,19 @@ VALUE obj,profile;
43
54
  void Init_glut_ext() {
44
55
  VALUE mGlut = rb_path2class("Glut");
45
56
 
57
+ /* Process loop functions */
58
+ rb_define_module_function(mGlut, "glutMainLoopEvent", glut_MainLoopEvent, 0);
59
+ rb_define_module_function(mGlut, "glutLeaveMainLoop", glut_LeaveMainLoop, 0);
60
+ rb_define_module_function(mGlut, "glutExit", glut_Exit, 0);
61
+
62
+ /* Window management functions */
63
+ rb_define_module_function(mGlut, "glutFullScreenToggle", glut_FullScreenToggle, 0);
64
+ rb_define_module_function(mGlut, "glutLeaveFullScreen", glut_LeaveFullScreen, 0);
65
+
66
+ /* Initialization functions */
46
67
  rb_define_module_function(mGlut, "glutInitContextVersion", glut_InitContextVersion, 2);
47
68
  rb_define_module_function(mGlut, "glutInitContextFlags", glut_InitContextFlags, 1);
48
- rb_define_module_function(mGlut, "glutInitContextFlags", glut_InitContextFlags, 1);
69
+ rb_define_module_function(mGlut, "glutInitContextProfile", glut_InitContextProfile, 1);
49
70
 
50
71
  /* Context-related flags */
51
72
  rb_define_const(mGlut, "GLUT_INIT_MAJOR_VERSION", INT2NUM(GLUT_INIT_MAJOR_VERSION));
@@ -60,6 +81,4 @@ void Init_glut_ext() {
60
81
  /* Flags for glutInitContextProfile */
61
82
  rb_define_const(mGlut, "GLUT_CORE_PROFILE", INT2NUM(GLUT_CORE_PROFILE));
62
83
  rb_define_const(mGlut, "GLUT_COMPATIBILITY_PROFILE", INT2NUM(GLUT_COMPATIBILITY_PROFILE));
63
-
64
-
65
84
  }
@@ -1,6 +1,9 @@
1
- require 'glut/glut'
2
-
3
- include Glut
1
+ begin
2
+ RUBY_VERSION =~ /(\d+.\d+)/
3
+ require "glut/#{$1}/glut"
4
+ rescue LoadError
5
+ require 'glut/glut'
6
+ end
4
7
 
5
8
  # (Glut.)glutInit -> GLUT.Init
6
9
  # (Glut::)GLUT_RGBA -> GLUT::RGBA
@@ -22,5 +25,5 @@ module GLUT
22
25
  end
23
26
 
24
27
  module Glut
25
- VERSION = "8.1.0"
28
+ VERSION = "8.2.0"
26
29
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: glut
3
3
  version: !ruby/object:Gem::Version
4
- version: 8.1.0
4
+ version: 8.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Eric Hodel
@@ -13,8 +13,29 @@ authors:
13
13
  - James Adam
14
14
  autorequire:
15
15
  bindir: bin
16
- cert_chain: []
17
- date: 2013-03-03 00:00:00.000000000 Z
16
+ cert_chain:
17
+ - |
18
+ -----BEGIN CERTIFICATE-----
19
+ MIIDLjCCAhagAwIBAgIBAjANBgkqhkiG9w0BAQUFADA9MQ4wDAYDVQQDDAVrYW5p
20
+ czEXMBUGCgmSJomT8ixkARkWB2NvbWNhcmQxEjAQBgoJkiaJk/IsZAEZFgJkZTAe
21
+ Fw0xNDAyMjYwOTMzMDBaFw0xNTAyMjYwOTMzMDBaMD0xDjAMBgNVBAMMBWthbmlz
22
+ MRcwFQYKCZImiZPyLGQBGRYHY29tY2FyZDESMBAGCgmSJomT8ixkARkWAmRlMIIB
23
+ IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApop+rNmg35bzRugZ21VMGqI6
24
+ HGzPLO4VHYncWn/xmgPU/ZMcZdfj6MzIaZJ/czXyt4eHpBk1r8QOV3gBXnRXEjVW
25
+ 9xi+EdVOkTV2/AVFKThcbTAQGiF/bT1n2M+B1GTybRzMg6hyhOJeGPqIhLfJEpxn
26
+ lJi4+ENAVT4MpqHEAGB8yFoPC0GqiOHQsdHxQV3P3c2OZqG+yJey74QtwA2tLcLn
27
+ Q53c63+VLGsOjODl1yPn/2ejyq8qWu6ahfTxiIlSar2UbwtaQGBDFdb2CXgEufXT
28
+ L7oaPxlmj+Q2oLOfOnInd2Oxop59HoJCQPsg8f921J43NCQGA8VHK6paxIRDLQID
29
+ AQABozkwNzAJBgNVHRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQUvgTdT7fe
30
+ x17ugO3IOsjEJwW7KP4wDQYJKoZIhvcNAQEFBQADggEBAFmIAhRT0awqLQN9e4Uv
31
+ ZEk+jUWv4zkb+TWiKFJXlwjPyjGbZY9gVfOwAwMibYOK/t/+57ZzW3d0L12OUwvo
32
+ on84NVvYtIr1/iskJFWFkMoIquAFCdi9p68stSPMQK2XcrJJuRot29fJtropsZBa
33
+ 2cpaNd/sRYdK4oep2usdKifA1lI0hIkPb3r5nLfwG2lAqBH7WZsUICHcTgR0VEbG
34
+ z9Ug5qQp9Uz73xC9YdGvGiuOX53LYobHAR4MWi2xxDlHI+ER8mRz0eY2FUuNu/Wj
35
+ GrqF74zpLl7/KFdHC8VmzwZS18hvDjxeLVuVI2gIGnBInqnlqv05g/l4/1pISh5j
36
+ dS4=
37
+ -----END CERTIFICATE-----
38
+ date: 2014-03-14 00:00:00.000000000 Z
18
39
  dependencies:
19
40
  - !ruby/object:Gem::Dependency
20
41
  name: rdoc
@@ -22,14 +43,14 @@ dependencies:
22
43
  requirements:
23
44
  - - ~>
24
45
  - !ruby/object:Gem::Version
25
- version: '3.10'
46
+ version: '4.0'
26
47
  type: :development
27
48
  prerelease: false
28
49
  version_requirements: !ruby/object:Gem::Requirement
29
50
  requirements:
30
51
  - - ~>
31
52
  - !ruby/object:Gem::Version
32
- version: '3.10'
53
+ version: '4.0'
33
54
  - !ruby/object:Gem::Dependency
34
55
  name: rake-compiler
35
56
  requirement: !ruby/object:Gem::Requirement
@@ -56,15 +77,16 @@ dependencies:
56
77
  requirements:
57
78
  - - ~>
58
79
  - !ruby/object:Gem::Version
59
- version: '3.5'
80
+ version: '3.7'
60
81
  type: :development
61
82
  prerelease: false
62
83
  version_requirements: !ruby/object:Gem::Requirement
63
84
  requirements:
64
85
  - - ~>
65
86
  - !ruby/object:Gem::Version
66
- version: '3.5'
67
- description: Glut bindings for OpenGL. To be used with the opengl gem.
87
+ version: '3.7'
88
+ description: Glut bindings for OpenGL. To be used with the {opengl}[https://github.com/larskanis/opengl]
89
+ gem.
68
90
  email:
69
91
  - drbrain@segment7.net
70
92
  - ''
@@ -84,12 +106,12 @@ files:
84
106
  - .autotest
85
107
  - .gemtest
86
108
  - .gitignore
109
+ - .travis.yml
87
110
  - History.rdoc
88
111
  - MIT-LICENSE
89
112
  - Manifest.txt
90
113
  - README.rdoc
91
114
  - Rakefile
92
- - Rakefile.cross
93
115
  - ext/glut/common.h
94
116
  - ext/glut/extconf.rb
95
117
  - ext/glut/glut.c
@@ -98,7 +120,8 @@ files:
98
120
  - lib/glut.rb
99
121
  - lib/glut/dummy.rb
100
122
  homepage:
101
- licenses: []
123
+ licenses:
124
+ - MIT
102
125
  metadata: {}
103
126
  post_install_message:
104
127
  rdoc_options:
@@ -118,7 +141,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
118
141
  version: '0'
119
142
  requirements: []
120
143
  rubyforge_project: glut
121
- rubygems_version: 2.0.0
144
+ rubygems_version: 2.2.2
122
145
  signing_key:
123
146
  specification_version: 4
124
147
  summary: Glut bindings for OpenGL
@@ -0,0 +1,3 @@
1
+ �)qv^P�+�;g��o&���M�u�h������%pB,
2
+ x#,X:@�%�[���
3
+ <�d3'~�!�>�w`�l��E�x��W��C�U' s$���w��r04���r�9�)}��5Z-��ig�"�D
@@ -1,107 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
- # -*- ruby -*-
3
-
4
- require 'rubygems'
5
- require 'hoe'
6
- require 'rake/extensiontask'
7
- require 'rake/extensioncompiler'
8
- require 'uri'
9
- require 'rbconfig'
10
- require 'pathname'
11
-
12
- ENV['RUBY_CC_VERSION'] ||= '1.9.3'
13
-
14
- # Cross-compilation constants
15
- COMPILE_HOME = Pathname( "build" ).expand_path
16
- STATIC_SOURCESDIR = COMPILE_HOME + 'sources'
17
- STATIC_BUILDDIR = COMPILE_HOME + 'builds'
18
- STATIC_INSTALLDIR = COMPILE_HOME + 'install'
19
- RUBY_BUILD = RbConfig::CONFIG["host"]
20
- CROSS_PREFIX = begin
21
- Rake::ExtensionCompiler.mingw_host
22
- rescue => err
23
- $stderr.puts "Cross-compilation disabled -- %s" % [ err.message ]
24
- 'unknown'
25
- end
26
-
27
- NUM_CPUS = if File.exist?('/proc/cpuinfo')
28
- File.read('/proc/cpuinfo').scan('processor').length
29
- elsif RUBY_PLATFORM.include?( 'darwin' )
30
- `system_profiler SPHardwareDataType | grep 'Cores' | awk '{print $5}'`.chomp
31
- else
32
- 1
33
- end
34
-
35
-
36
- # Fetch libfreeglut tarball
37
- LIBFREEGLUT_VERSION = ENV['LIBFREEGLUT_VERSION'] || '2.8.0'
38
- LIBFREEGLUT_SOURCE_URI = URI( "http://downloads.sourceforge.net/project/freeglut/freeglut/#{LIBFREEGLUT_VERSION}/freeglut-#{LIBFREEGLUT_VERSION}.tar.gz" )
39
- LIBFREEGLUT_TARBALL = STATIC_SOURCESDIR + File.basename( LIBFREEGLUT_SOURCE_URI.path )
40
- STATIC_LIBFREEGLUT_BUILDDIR = STATIC_BUILDDIR + LIBFREEGLUT_TARBALL.basename(".tar.gz")
41
- LIBFREEGLUT_MAKEFILE = STATIC_LIBFREEGLUT_BUILDDIR + 'Makefile'
42
- LIBFREEGLUT_A = STATIC_INSTALLDIR + 'lib' + 'libglut.a'
43
-
44
-
45
- # clean intermediate files and folders
46
- CLEAN.include( STATIC_BUILDDIR.to_s )
47
-
48
- #####################################################################
49
- ### C R O S S - C O M P I L A T I O N - T A S K S
50
- #####################################################################
51
-
52
-
53
- directory STATIC_SOURCESDIR.to_s
54
-
55
- #
56
- # Static libfreeglut build tasks
57
- #
58
- directory STATIC_LIBFREEGLUT_BUILDDIR.to_s
59
-
60
- # libfreeglut source file should be stored there
61
- file LIBFREEGLUT_TARBALL => STATIC_SOURCESDIR do |t|
62
- # download the source file using wget or curl
63
- chdir File.dirname(t.name) do
64
- sh "wget '#{LIBFREEGLUT_SOURCE_URI}' -O #{LIBFREEGLUT_TARBALL}"
65
- end
66
- end
67
-
68
- # Extract the libfreeglut builds
69
- file STATIC_LIBFREEGLUT_BUILDDIR => LIBFREEGLUT_TARBALL do |t|
70
- sh 'tar', '-xzf', LIBFREEGLUT_TARBALL.to_s, '-C', STATIC_LIBFREEGLUT_BUILDDIR.parent.to_s
71
- end
72
-
73
- LIBFREEGLUT_ENV = [
74
- "'CPPFLAGS=-I#{STATIC_INSTALLDIR}/include'",
75
- "'LDFLAGS=-L#{STATIC_INSTALLDIR}/lib'",
76
- ]
77
- # generate the makefile in a clean build location
78
- file LIBFREEGLUT_MAKEFILE => [STATIC_LIBFREEGLUT_BUILDDIR] do |t|
79
- Dir.chdir( STATIC_LIBFREEGLUT_BUILDDIR ) do
80
- options = [
81
- "--target=#{CROSS_PREFIX}",
82
- "--host=#{CROSS_PREFIX}",
83
- "--build=#{RUBY_BUILD}",
84
- "--prefix=#{STATIC_INSTALLDIR}",
85
- "--enable-static",
86
- ]
87
-
88
- configure_path = STATIC_LIBFREEGLUT_BUILDDIR + 'configure'
89
- sh "env #{[LIBFREEGLUT_ENV, configure_path.to_s, *options].join(" ")}"
90
- end
91
- end
92
-
93
- # generate the makefile in a clean build location
94
- task LIBFREEGLUT_A => [LIBFREEGLUT_MAKEFILE] do |t|
95
- Dir.chdir( STATIC_LIBFREEGLUT_BUILDDIR ) do
96
- sh "make -j#{NUM_CPUS} install"
97
- (STATIC_INSTALLDIR + "lib" + "libglut.dll.a").unlink
98
- end
99
- end
100
-
101
- desc "compile static libraries"
102
- task :static_libs => [ LIBFREEGLUT_A ]
103
-
104
- desc 'cross compile required libs for win32'
105
- task :cross => [ :static_libs ] do
106
- ENV['CROSS_COMPILING'] = 'yes'
107
- end