initial glew import

This commit is contained in:
Hans de Goede 2007-08-19 06:22:05 +00:00
parent 0cddf426ee
commit e0219dcac2
8 changed files with 276 additions and 0 deletions

View File

@ -0,0 +1,2 @@
glew-1.4.0-src-clean.tgz
glew-mesa-replacement-headers.tgz

16
LICENSE-README.fedora Normal file
View File

@ -0,0 +1,16 @@
The original version of GLEW contains files under 4 licenses:
BSD
GPLv2+
SGI Free Software License B
GLX Public License
The last 2 licenses are not Free software licenses and thus not acceptable for
Fedora. The version shipped by Fedora has the encumbered files removed and
replaced by files from Mesa. These replacement files are licensed under the
MIT license, which is BSD and GPL compatible.
Also note that the GPL licensed files are scripts which generate parts of the
C-code in GLEW, these scripts itself are only part of the GLEW sources shipped
by Fedora, not of the binary rpm. Thus the binary package is licensed under the
BSD license, and only under the BSD license. This is important for other
packages which use the GLEW library.

View File

@ -0,0 +1,57 @@
--- glew/Makefile.orig 2007-03-02 16:56:00.000000000 +0000
+++ glew/Makefile 2007-03-04 19:56:19.000000000 +0000
@@ -41,9 +41,9 @@
endif
GLEW_DEST ?= /usr
-BINDIR ?= $(GLEW_DEST)/bin
-LIBDIR ?= $(GLEW_DEST)/lib
-INCDIR ?= $(GLEW_DEST)/include/GL
+BINDIR ?= $(GLEW_DEST)$(bindir)
+LIBDIR ?= $(GLEW_DEST)$(libdir)
+INCDIR ?= $(GLEW_DEST)$(includedir)/GL
SHARED_OBJ_EXT ?= o
TARDIR = ../glew-$(GLEW_VERSION)
TARBALL = ../glew_$(GLEW_VERSION).tar.gz
@@ -57,7 +57,7 @@
STRIP =
else
OPT = $(POPT)
-STRIP = -s
+STRIP =
endif
INCLUDE = -Iinclude
CFLAGS = $(OPT) $(WARN) $(INCLUDE) $(CFLAGS.EXTRA)
@@ -121,7 +121,7 @@
$(INSTALL) -m 0644 lib/$(LIB.SHARED) $(LIBDIR)/
$(LN) $(LIB.SHARED) $(LIBDIR)/$(LIB.SONAME)
else
- $(INSTALL) $(STRIP) -m 0644 lib/$(LIB.SHARED) $(LIBDIR)/
+ $(INSTALL) $(STRIP) -m 0755 lib/$(LIB.SHARED) $(LIBDIR)/
$(LN) $(LIB.SHARED) $(LIBDIR)/$(LIB.SONAME)
endif
endif
@@ -137,7 +137,7 @@
$(INSTALL) -m 0644 lib/$(LIB.STATIC) $(LIBDIR)/
$(LN) $(LIB.SHARED) $(LIBDIR)/$(LIB.DEVLNK)
else
- $(INSTALL) $(STRIP) -m 0644 lib/$(LIB.STATIC) $(LIBDIR)/
+ $(INSTALL) $(STRIP) -m 0755 lib/$(LIB.STATIC) $(LIBDIR)/
$(LN) $(LIB.SHARED) $(LIBDIR)/$(LIB.DEVLNK)
endif
endif
--- glew/config/Makefile.linux.orig 2007-03-01 06:49:21.000000000 +0000
+++ glew/config/Makefile.linux 2007-03-04 19:38:17.000000000 +0000
@@ -9,10 +9,10 @@
M_ARCH ?= $(shell arch)
ifeq (x86_64,${M_ARCH})
LDFLAGS.EXTRA = -L/usr/X11R6/lib64
-LIBDIR = $(GLEW_DEST)/lib64
+LIBDIR = $(GLEW_DEST)$(libdir)
else
LDFLAGS.EXTRA = -L/usr/X11R6/lib
-LIBDIR = $(GLEW_DEST)/lib
+LIBDIR = $(GLEW_DEST)$(libdir)
endif
LDFLAGS.GL = -lXmu -lXi -lGLU -lGL -lXext -lX11
LDFLAGS.STATIC = -Wl,-Bstatic

View File

@ -0,0 +1,19 @@
diff -up glew/auto/Makefile~ glew/auto/Makefile
--- glew/auto/Makefile~ 2007-08-06 21:39:42.000000000 +0200
+++ glew/auto/Makefile 2007-08-06 21:39:42.000000000 +0200
@@ -105,7 +105,6 @@ $(I.DEST)/glew.h: $(EXT)/.dummy
@echo "--------------------------------------------------------------------"
test -d $(I.DEST) || mkdir -p $(I.DEST)
cp -f $(SRC)/glew_license.h $@
- cat $(SRC)/sgi_license.h >> $@
cat $(SRC)/glew_head.h >> $@
$(BIN)/make_header.pl GLAPIENTRY GL $(GL_CORE_SPEC) >> $@
$(BIN)/make_header.pl GLAPIENTRY GL $(GL_EXT_SPEC) >> $@
@@ -138,7 +137,6 @@ $(I.DEST)/glxew.h: $(EXT)/.dummy
@echo "Creating glxew.h"
@echo "--------------------------------------------------------------------"
cp -f $(SRC)/glew_license.h $@
- cat $(SRC)/glx_license.h >> $@
cat $(SRC)/glxew_head.h >> $@
$(BIN)/make_header.pl '' GLX $(GLX_CORE_SPEC) >> $@
$(BIN)/make_header.pl '' GLX $(GLX_EXT_SPEC) >> $@

View File

@ -0,0 +1,19 @@
diff -up glew/doc/credits.html~ glew/doc/credits.html
--- glew/doc/credits.html~ 2007-08-18 10:06:03.000000000 +0200
+++ glew/doc/credits.html 2007-08-18 10:06:03.000000000 +0200
@@ -88,10 +88,11 @@ which modifications were made by Michael
<p>
GLEW is originally derived from the <a
href="http://www.levp.de/3d/">EXTGL</a> project by Lev Povalahev. The
-source code is licensed under the modified BSD license, the <a
-href="sgi.txt">SGI Free Software License B</a>, and the <a
-href="glx.txt">GLX Public License</a>. The automatic code
-generation scripts are released under the <a href="gpl.txt">GPL</a>.
+source code is licensed under the modified BSD license, parts which were
+licensed under the non free SGI Free Software License B and GLX Public
+License have been <a href="../glew-1.4.0/LICENSE-README.fedora">replaced</a>
+by MIT licensed files from Mesa. The automatic code generation scripts are
+released under the <a href="gpl.txt">GPL</a>.
</p>
</td>

View File

@ -0,0 +1,24 @@
diff -up glew/config/Makefile.linux~ glew/config/Makefile.linux
--- glew/config/Makefile.linux~ 2007-08-18 09:56:12.000000000 +0200
+++ glew/config/Makefile.linux 2007-08-18 09:56:12.000000000 +0200
@@ -14,7 +14,7 @@ else
LDFLAGS.EXTRA = -L/usr/X11R6/lib
LIBDIR = $(GLEW_DEST)$(libdir)
endif
-LDFLAGS.GL = -lXmu -lXi -lGLU -lGL -lXext -lX11
+LDFLAGS.GL = -lGL
LDFLAGS.STATIC = -Wl,-Bstatic
LDFLAGS.DYNAMIC = -Wl,-Bdynamic
NAME = GLEW
diff -up glew/Makefile~ glew/Makefile
--- glew/Makefile~ 2007-08-18 10:26:11.000000000 +0200
+++ glew/Makefile 2007-08-18 10:26:11.000000000 +0200
@@ -96,7 +96,7 @@ bin/$(GLEWINFO.BIN): $(GLEWINFO.BIN.SRCS
$(CC) $(CFLAGS) -o $@ $(GLEWINFO.BIN.SRCS) $(BIN.LIBS)
bin/$(VISUALINFO.BIN): $(VISUALINFO.BIN.SRCS) lib/$(LIB.SHARED)
- $(CC) $(CFLAGS) -o $@ $(VISUALINFO.BIN.SRCS) $(BIN.LIBS)
+ $(CC) $(CFLAGS) -o $@ $(VISUALINFO.BIN.SRCS) $(BIN.LIBS) -lGLU
%.o: %.c
$(CC) -c $(CFLAGS) -o $@ $<

137
glew.spec Normal file
View File

@ -0,0 +1,137 @@
Name: glew
Version: 1.4.0
Release: 3%{?dist}
Summary: The OpenGL Extension Wrangler Library
Group: System Environment/Libraries
License: BSD
URL: http://glew.sourceforge.net
# This is http://downloads.sourceforge.net/glew/glew-%{version}-src.tgz
# With the following files removed because they are subject to the
# "SGI Free Software License B" resp "GLX Public License" :
# include/GL/glew.h include/GL/glxew.h auto/src/glew_head.h
# auto/src/glxew_head.h auto/src/sgi_license.h auto/src/glx_license.h
# doc/sgi.txt doc/glx.txt
Source0: glew-%{version}-src-clean.tgz
# These are modified headers from Mesa, with all post GL[x] 1.1 defines and
# prototypes removed, these replace the removed encumbered auto/src/glew_head.h
# and auto/src/glxew_head.h files
Source1: glew-mesa-replacement-headers.tgz
Source2: LICENSE-README.fedora
Patch0: glew-1.3.6-pathandstrip.patch
Patch1: glew-1.4.0-auto-make.patch
Patch2: glew-1.4.0-unused-direct-shlib-dependency.patch
Patch3: glew-1.4.0-license-doc.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: libGLU-devel
%description
The OpenGL Extension Wrangler Library (GLEW) is a cross-platform C/C++
extension loading library. GLEW provides efficient run-time mechanisms for
determining which OpenGL extensions are supported on the target platform.
OpenGL core and extension functionality is exposed in a single header file.
GLEW is available for a variety of operating systems, including Windows, Linux,
Mac OS X, FreeBSD, Irix, and Solaris.
%package devel
Summary: Development files for glew
Group: Development/Libraries
Requires: %{name} = %{version}-%{release}
Requires: libGLU-devel
%description devel
Development files for glew
%prep
%setup -q -a 1 -n %{name}
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
cp %{SOURCE2} .
mkdir auto/registry
touch auto/registry/.dummy auto/extensions/.dummy
make -C auto ../include/GL/glew.h
make -C auto ../include/GL/glxew.h
%build
make %{?_smp_mflags} CFLAGS.EXTRA="$RPM_OPT_FLAGS"
%install
rm -rf $RPM_BUILD_ROOT
make install GLEW_DEST="$RPM_BUILD_ROOT" libdir=%{_libdir} bindir=%{_bindir} \
includedir=%{_includedir}
rm $RPM_BUILD_ROOT%{_libdir}/libGLEW.a
%clean
rm -rf $RPM_BUILD_ROOT
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%defattr(-,root,root,-)
%doc LICENSE-README.fedora
%{_bindir}/*
%{_libdir}/libGLEW.so.*
%files devel
%defattr(-,root,root,-)
%doc doc/*
%{_libdir}/libGLEW.so
%{_includedir}/GL/*.h
%changelog
* Sat Aug 18 2007 Hans de Goede <j.w.r.degoede@hhs.nl> 1.4.0-3
- Fix multiple unused direct shlib dependencies in libGLEW.so
- Remove the "SGI Free Software License B" and "GLX Public License" tekst from
the doc dir in the tarbal
- Patch credits.html to no longer refer to the 2 non free licenses, instead it
now points to LICENSE-README.fedora
- Put API docs in -devel instead of main package
* Mon Aug 6 2007 Hans de Goede <j.w.r.degoede@hhs.nl> 1.4.0-2
- Remove SGI encumbered files to make this ok to go into Fedora
- Replace some removed files with (modified) mesa files
- Regenerate some of the removed files using the mesa replacemenmt files
and the scripts in the auto directory
- Readd wglew.h, some programs may need this to compile
- Update License tag for new Licensing Guidelines compliance
* Sun May 06 2007 Ian Chapman <packages@amiga-hardware.com> 1.4.0-1%{?dist}
- Updated to 1.4.0
* Sun Mar 04 2007 Ian Chapman <packages@amiga-hardware.com> 1.3.6-1%{?dist}
- Updated to 1.3.6
- Updated pathandstrip patch
- Dropped xlib patch - fixed upstream
- Dropped sed EOL replacements - fixed upstream
- Changed license to GPL
* Fri Dec 01 2006 Ian Chapman <packages@amiga-hardware.com> 1.3.5-1%{?dist}
- Updated to 1.3.5
- Fixed stripping of the binaries
- Reinstate parallel building, no longer appears broken
- Removed FC4 specifics from spec (no longer supported)
* Tue Jun 20 2006 Ian Chapman <packages@amiga-hardware.com> 1.3.4-3%{?dist}
- Added buildrequire macros to determine fc4, fc5, fc6 due to X modularisation
* Sun Jun 04 2006 Ian Chapman <packages@amiga-hardware.com> 1.3.4-2%{?dist}
- Replaced %%{_sed} macro with sed
- Replaced xorg-x11-devel (build)requires with libGLU-devel for compatibility
with modular / non-modular X
- Replaced source URL to use primary sf site rather than a mirror
- Removed superfluous docs from devel package
- Removed wglew.h, seems to be only useful for windows platforms
* Thu May 11 2006 Ian Chapman <packages@amiga-hardware.com> 1.3.4-1.iss
- Initial Release

View File

@ -0,0 +1,2 @@
c8b8f2db1b68886baf6c0849807884b4 glew-1.4.0-src-clean.tgz
211daf41c394153f3d989195898145a6 glew-mesa-replacement-headers.tgz