You can subscribe to this list here.
2000 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(2) |
Sep
(4) |
Oct
(24) |
Nov
(28) |
Dec
(40) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2001 |
Jan
(11) |
Feb
(1) |
Mar
(4) |
Apr
(13) |
May
(11) |
Jun
(6) |
Jul
(8) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
2002 |
Jan
|
Feb
(1) |
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(9) |
Dec
(1) |
2003 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(2) |
Oct
|
Nov
(1) |
Dec
|
2004 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(2) |
Aug
|
Sep
|
Oct
(2) |
Nov
(1) |
Dec
|
2005 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(3) |
Oct
(22) |
Nov
(4) |
Dec
(1) |
2006 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
(1) |
Jul
|
Aug
(7) |
Sep
(21) |
Oct
(15) |
Nov
|
Dec
|
2007 |
Jan
|
Feb
(1) |
Mar
(33) |
Apr
(11) |
May
(10) |
Jun
|
Jul
(2) |
Aug
(2) |
Sep
|
Oct
(1) |
Nov
(11) |
Dec
(4) |
2008 |
Jan
(2) |
Feb
(3) |
Mar
(6) |
Apr
(1) |
May
|
Jun
(2) |
Jul
(1) |
Aug
(2) |
Sep
|
Oct
|
Nov
|
Dec
(7) |
2009 |
Jan
(24) |
Feb
(49) |
Mar
(42) |
Apr
(22) |
May
(4) |
Jun
(73) |
Jul
(7) |
Aug
(3) |
Sep
(11) |
Oct
(1) |
Nov
(1) |
Dec
(21) |
2010 |
Jan
(2) |
Feb
(18) |
Mar
(1) |
Apr
(1) |
May
|
Jun
|
Jul
(3) |
Aug
(5) |
Sep
(6) |
Oct
(1) |
Nov
(3) |
Dec
(2) |
2011 |
Jan
(7) |
Feb
(3) |
Mar
|
Apr
(2) |
May
(1) |
Jun
|
Jul
(18) |
Aug
|
Sep
(1) |
Oct
(1) |
Nov
(1) |
Dec
|
2012 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
|
2013 |
Jan
|
Feb
|
Mar
(3) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Jose F. <jrf...@us...> - 2011-07-15 13:31:46
|
Module: glean Branch: cmake Commit: 12e52eb5b8dcb3b866c8b6085ef021dae253663f URL: no.cgit.repo/commit/?id=12e52eb5b8dcb3b866c8b6085ef021dae253663f Author: José Fonseca <jfo...@vm...> Date: Fri Jul 15 14:30:17 2011 +0100 Drop scons build support. Broken on windows 64 bits, and obsoleted by CMake, which needs much less customization/tweaking to work as desired. --- .gitignore | 2 - doc/html/build.html | 1 - doc/html/buildscons.html | 75 ------------- scons/crossmingw.py | 185 -------------------------------- src/SConscript | 1 - src/SConstruct | 236 ----------------------------------------- src/glean/SConscript | 87 --------------- src/libs/SConscript | 1 - src/libs/dsurf/SConscript | 11 -- src/libs/image/SConscript | 16 --- src/libs/lex/SConscript | 10 -- src/libs/stats/SConscript | 10 -- src/libs/timer/SConscript | 10 -- src/tiff/SConscript | 166 ----------------------------- src/tools/SConscript | 1 - src/tools/difftiff/SConscript | 16 --- src/tools/showtiff/SConscript | 16 --- src/tools/showvis/SConscript | 15 --- 18 files changed, 0 insertions(+), 859 deletions(-) diff --git a/.gitignore b/.gitignore index bbbbc02..0b143a4 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,4 @@ .*.sw? -.scon* *.a *.dep *.exe @@ -13,4 +12,3 @@ *.so *.zip build -config.log diff --git a/doc/html/build.html b/doc/html/build.html index 28b3a81..b23fb5b 100644 --- a/doc/html/build.html +++ b/doc/html/build.html @@ -59,7 +59,6 @@ Once you've completed those tasks, choose one of the following: <LI><A HREF="buildgnu.html">Building <I>glean</I> for GNU/Linux</A></LI> <LI><A HREF="buildwin.html">Building <I>glean</I> for Windows</A></LI> <LI><A HREF="buildcmake.html">Building <I>glean</I> for GNU/Linux or Windows using cmake</A></LI> - <LI><A HREF="buildscons.html">Building <I>glean</I> for GNU/Linux or Windows using scons</A></LI> </UL> diff --git a/doc/html/buildscons.html b/doc/html/buildscons.html deleted file mode 100644 index 5be8d05..0000000 --- a/doc/html/buildscons.html +++ /dev/null @@ -1,75 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> -<HTML> - -<HEAD> - <TITLE>Building glean using scons</TITLE> - <META NAME="description" CONTENT="building glean using scons"> - <META NAME="author" CONTENT="Jose Fonseca"> - <LINK REV="made" HREF="mailto:jfo...@vm..."> -</HEAD> - -<BODY bgcolor=#FFFFFF topmargin="10" bottommargin="10" leftmargin="10" - rightmargin="10" marginheight="0" marginwidth="0"> - -<H1>Building <I>glean</I> with scons</H1> - -<P> -Now you can build glean on GNU/Linux or Windows using -<A HREF="http://www.scons.org/">scons</A>. The advantages over GNU make are: -<UL TYPE=DISC> - <LI> no need to set build options — everything is autodetected; - <LI> automatically uses an included tiff library if none can be found; - <LI> support to cross build from GNU/Linux to Windows using MinGW cross - compilers. -</UL> - -<H2>Build <I>glean</I> on GNU/Linux or Windows</H2> - -<P> -Simply type -<PRE> - scons -C src -</PRE> - -<P> -Everything should be autodetected for you. - -<P> -You can change aspects of the build by passing options in the name=value. To -list these options and see their default value do -<PRE> - scons -C src -h -</PRE> - - -<H2>Build <I>glean</I> for Windows on GNU/Linux</H2> - -<P> -Type -<PRE> - scons -C src platform=windows machine=x86 toolchain=crossmingw -</PRE> - - -<HR> -<SMALL> - <UL TYPE=DISC> - <LI> <A HREF="index.html"><I>glean</I> home</A> - <LI> <A HREF="whatis.html">What is <I>glean</I>?</A> - <LI> <A HREF="build.html">How do I build <I>glean</I>?</A> - <LI> <A HREF="run.html">How do I run <I>glean</I>?</A> - <LI> <A HREF="next.html">Where do we go from here?</A> - <UL TYPE=CIRCLE> - <LI> <A HREF="newtest.html">Adding new tests</A> - <LI> <A HREF="newfeat.html">Adding new infrastructure features</A> - <LI> <A HREF="overview.html">Overview of <I>glean</I> internals</A> - <LI> <A HREF="repo.html">Creating a repository of results</A> - <LI> <A HREF="port.html">Porting <I>glean</I></A> - <LI> <A HREF="cleanup.html">Cleaning up loose ends</A> - </UL> - <LI> <A HREF="changes.html">What has changed recently?</A> - </UL> -</SMALL> - -</BODY> -</HTML> diff --git a/scons/crossmingw.py b/scons/crossmingw.py deleted file mode 100644 index bf81f16..0000000 --- a/scons/crossmingw.py +++ /dev/null @@ -1,185 +0,0 @@ -"""SCons.Tool.gcc - -Tool-specific initialization for MinGW (http://www.mingw.org/) - -There normally shouldn't be any need to import this module directly. -It will usually be imported through the generic SCons.Tool.Tool() -selection method. - -See also http://www.scons.org/wiki/CrossCompilingMingw -""" - -# -# Copyright (c) 2001, 2002, 2003, 2004 The SCons Foundation -# -# Permission is hereby granted, free of charge, to any person obtaining -# a copy of this software and associated documentation files (the -# "Software"), to deal in the Software without restriction, including -# without limitation the rights to use, copy, modify, merge, publish, -# distribute, sublicense, and/or sell copies of the Software, and to -# permit persons to whom the Software is furnished to do so, subject to -# the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY -# KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE -# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -# - -import os -import os.path -import string - -import SCons.Action -import SCons.Builder -import SCons.Tool -import SCons.Util - -# This is what we search for to find mingw: -prefixes = SCons.Util.Split(""" - mingw32- - mingw32msvc- - i386-mingw32- - i486-mingw32- - i586-mingw32- - i686-mingw32- - i386-mingw32msvc- - i486-mingw32msvc- - i586-mingw32msvc- - i686-mingw32msvc- -""") - -def find(env): - for prefix in prefixes: - # First search in the SCons path and then the OS path: - if env.WhereIs(prefix + 'gcc') or SCons.Util.WhereIs(prefix + 'gcc'): - return prefix - - return '' - -def shlib_generator(target, source, env, for_signature): - cmd = SCons.Util.CLVar(['$SHLINK', '$SHLINKFLAGS']) - - dll = env.FindIxes(target, 'SHLIBPREFIX', 'SHLIBSUFFIX') - if dll: cmd.extend(['-o', dll]) - - cmd.extend(['$SOURCES', '$_LIBDIRFLAGS', '$_LIBFLAGS']) - - implib = env.FindIxes(target, 'LIBPREFIX', 'LIBSUFFIX') - if implib: cmd.append('-Wl,--out-implib,'+implib.get_string(for_signature)) - - def_target = env.FindIxes(target, 'WIN32DEFPREFIX', 'WIN32DEFSUFFIX') - if def_target: cmd.append('-Wl,--output-def,'+def_target.get_string(for_signature)) - - return [cmd] - -def shlib_emitter(target, source, env): - dll = env.FindIxes(target, 'SHLIBPREFIX', 'SHLIBSUFFIX') - no_import_lib = env.get('no_import_lib', 0) - - if not dll: - raise SCons.Errors.UserError, "A shared library should have exactly one target with the suffix: %s" % env.subst("$SHLIBSUFFIX") - - if not no_import_lib and \ - not env.FindIxes(target, 'LIBPREFIX', 'LIBSUFFIX'): - - # Append an import library to the list of targets. - target.append(env.ReplaceIxes(dll, - 'SHLIBPREFIX', 'SHLIBSUFFIX', - 'LIBPREFIX', 'LIBSUFFIX')) - - # Append a def file target if there isn't already a def file target - # or a def file source. There is no option to disable def file - # target emitting, because I can't figure out why someone would ever - # want to turn it off. - def_source = env.FindIxes(source, 'WIN32DEFPREFIX', 'WIN32DEFSUFFIX') - def_target = env.FindIxes(target, 'WIN32DEFPREFIX', 'WIN32DEFSUFFIX') - if not def_source and not def_target: - target.append(env.ReplaceIxes(dll, - 'SHLIBPREFIX', 'SHLIBSUFFIX', - 'WIN32DEFPREFIX', 'WIN32DEFSUFFIX')) - - return (target, source) - - -shlib_action = SCons.Action.Action(shlib_generator, generator=1) - -res_action = SCons.Action.Action('$RCCOM', '$RCCOMSTR') - -res_builder = SCons.Builder.Builder(action=res_action, suffix='.o', - source_scanner=SCons.Tool.SourceFileScanner) -SCons.Tool.SourceFileScanner.add_scanner('.rc', SCons.Defaults.CScan) - -def generate(env): - mingw_prefix = find(env) - - if mingw_prefix: - dir = os.path.dirname(env.WhereIs(mingw_prefix + 'gcc') or SCons.Util.WhereIs(mingw_prefix + 'gcc')) - - # The mingw bin directory must be added to the path: - path = env['ENV'].get('PATH', []) - if not path: - path = [] - if SCons.Util.is_String(path): - path = string.split(path, os.pathsep) - - env['ENV']['PATH'] = string.join([dir] + path, os.pathsep) - - # Most of mingw is the same as gcc and friends... - gnu_tools = ['gcc', 'g++', 'gnulink', 'ar', 'gas'] - for tool in gnu_tools: - SCons.Tool.Tool(tool)(env) - - #... but a few things differ: - env['CC'] = mingw_prefix + 'gcc' - env['SHCCFLAGS'] = SCons.Util.CLVar('$CCFLAGS') - env['CXX'] = mingw_prefix + 'g++' - env['SHCXXFLAGS'] = SCons.Util.CLVar('$CXXFLAGS') - env['SHLINKFLAGS'] = SCons.Util.CLVar('$LINKFLAGS -shared') - env['SHLINKCOM'] = shlib_action - env.Append(SHLIBEMITTER = [shlib_emitter]) - env['LINK'] = mingw_prefix + 'g++' - env['AR'] = mingw_prefix + 'ar' - env['RANLIB'] = mingw_prefix + 'ranlib' - env['LINK'] = mingw_prefix + 'g++' - env['AS'] = mingw_prefix + 'as' - env['WIN32DEFPREFIX'] = '' - env['WIN32DEFSUFFIX'] = '.def' - env['SHOBJSUFFIX'] = '.o' - env['STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME'] = 1 - - env['RC'] = mingw_prefix + 'windres' - env['RCFLAGS'] = SCons.Util.CLVar('') - env['RCCOM'] = '$RC $_CPPDEFFLAGS $_CPPINCFLAGS ${INCPREFIX}${SOURCE.dir} $RCFLAGS -i $SOURCE -o $TARGET' - env['BUILDERS']['RES'] = res_builder - - # Some setting from the platform also have to be overridden: - env['OBJPREFIX'] = '' - env['OBJSUFFIX'] = '.o' - env['SHOBJPREFIX'] = '$OBJPREFIX' - env['SHOBJSUFFIX'] = '$OBJSUFFIX' - env['PROGPREFIX'] = '' - env['PROGSUFFIX'] = '.exe' - env['LIBPREFIX'] = 'lib' - env['LIBSUFFIX'] = '.a' - env['SHLIBPREFIX'] = '' - env['SHLIBSUFFIX'] = '.dll' - env['LIBPREFIXES'] = [ 'lib', '' ] - env['LIBSUFFIXES'] = [ '.a', '.lib' ] - - # MinGW port of gdb does not handle well dwarf debug info which is the - # default in recent gcc versions - env.AppendUnique(CFLAGS = ['-gstabs']) - - env.AppendUnique(LIBS = ['iberty']) - env.AppendUnique(SHLINKFLAGS = ['-Wl,--enable-stdcall-fixup']) - #env.AppendUnique(SHLINKFLAGS = ['-Wl,--kill-at']) - -def exists(env): - return find(env) diff --git a/src/SConscript b/src/SConscript deleted file mode 100644 index f2b3d26..0000000 --- a/src/SConscript +++ /dev/null @@ -1 +0,0 @@ -SConscript(dirs = ['libs', 'glean', 'tools']) diff --git a/src/SConstruct b/src/SConstruct deleted file mode 100644 index 37be39a..0000000 --- a/src/SConstruct +++ /dev/null @@ -1,236 +0,0 @@ -import os -import platform -import sys - -_platform_map = { - 'darwin': 'darwin', - 'freebsd': 'freebsd', - 'linux2': 'linux', - 'win32': 'windows', -} - -default_platform = _platform_map.get(sys.platform, 'unix') - -_machine_map = { - 'x86': 'x86', - 'i386': 'x86', - 'i486': 'x86', - 'i586': 'x86', - 'i686': 'x86', - 'ppc' : 'ppc', - 'x86_64': 'x86_64', -} -if 'PROCESSOR_ARCHITECTURE' in os.environ: - default_machine = os.environ['PROCESSOR_ARCHITECTURE'] -else: - default_machine = platform.machine() -default_machine = _machine_map.get(default_machine, 'generic') - -if default_platform == 'windows': - default_prefix = os.path.join(os.environ.get('ProgramFiles', 'C:\\Program Files'), 'glean') -else: - default_prefix = '/usr/local' - -vars = Variables() -vars.Add(BoolVariable('debug', 'debug build', 'yes')) -vars.Add(EnumVariable('platform', 'target platform', default_platform, - allowed_values=('linux', 'freebsd', 'unix', 'other', 'windows', 'darwin'))) -vars.Add(EnumVariable('machine', 'use machine-specific assembly code', default_machine, - allowed_values=('generic', 'ppc', 'x86', 'x86_64'))) -vars.Add(EnumVariable('toolchain', 'compiler toolchain', 'default', - allowed_values=('default', 'crossmingw'))) -vars.Add(PathVariable('prefix', 'installation prefix', default_prefix, PathVariable.PathIsDirCreate)) -if platform.machine() == 'win32': - vars.Add(EnumVariable('MSVS_VERSION', 'Microsoft Visual Studio version', None, - allowed_values=('7.1', '8.0', '9.0'))) - -env = Environment(variables=vars) -Help(vars.GenerateHelpText(env)) - -Export(['env']) - -env.Tool(env['toolchain'], ['../scons']) - -env['gcc'] = 'gcc' in os.path.basename(env['CC']).split('-') -env['msvc'] = env['CC'] == 'cl' - -# C preprocessor options -cppdefines = [] -if not env['debug']: - cppdefines += ['NDEBUG'] -if env['platform'] == 'windows': - cppdefines += [ - 'WIN32', - '_CONSOLE', - '_MBCS', - ] - if env['debug']: - cppdefines += ['_DEBUG'] -env.Append(CPPDEFINES = cppdefines) - -# C compiler options -cflags = [] # C -cxxflags = [] # C++ -ccflags = [] # C & C++ -if env['gcc']: - if env['debug']: - ccflags += ['-O0', '-g3'] - else: - ccflags += ['-O3', '-g0'] - if env['machine'] == 'x86': - ccflags += ['-m32'] - if env['machine'] == 'x86_64': - ccflags += ['-m64'] - # See also: - # - http://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html - ccflags += [ - '-Wall', - '-Wmissing-field-initializers', - '-Wpointer-arith', - '-fmessage-length=0', # be nice to Eclipse - ] - cflags += [ - '-Wdeclaration-after-statement', - '-Wmissing-prototypes', - ] -if env['msvc']: - if env['debug']: - ccflags += [ - '/Od', # disable optimizations - '/Oi', # enable intrinsic functions - '/Oy-', # disable frame pointer omission - '/GL-', # disable whole program optimization - ] - else: - ccflags += [ - '/O2', # optimize for speed - ] - ccflags += [ - '/EHsc', # set exception handling model - #'/W3', # warning level - #'/Wp64', # enable 64 bit porting warnings - ] - # Automatic pdb generation - # See http://scons.tigris.org/issues/show_bug.cgi?id=1656 - env.EnsureSConsVersion(0, 98, 0) - env['PDB'] = '${TARGET.base}.pdb' -env.Append(CCFLAGS = ccflags) -env.Append(CFLAGS = cflags) -env.Append(CXXFLAGS = cxxflags) - -if env['platform'] == 'windows' and env['msvc']: - # Choose the appropriate MSVC CRT - # http://msdn.microsoft.com/en-us/library/2kzt1wy3.aspx - if env['debug']: - env.Append(CCFLAGS = ['/MTd']) - env.Append(SHCCFLAGS = ['/LDd']) - else: - env.Append(CCFLAGS = ['/MT']) - env.Append(SHCCFLAGS = ['/LD']) - -# Assembler options -if env['gcc']: - if env['machine'] == 'x86': - env.Append(ASFLAGS = ['-m32']) - if env['machine'] == 'x86_64': - env.Append(ASFLAGS = ['-m64']) - -# Linker options -linkflags = [] -if env['gcc']: - if env['machine'] == 'x86': - linkflags += ['-m32'] - if env['machine'] == 'x86_64': - linkflags += ['-m64'] -if env['platform'] == 'windows' and env['msvc']: - # See also: - # - http://msdn2.microsoft.com/en-us/library/y0zzbyt4.aspx - linkflags += [ - '/fixed:no', - '/incremental:no', - ] -env.Append(LINKFLAGS = linkflags) - -if env['platform'] in ('freebsd', 'linux', 'unix'): - env.Append(CPPDEFINES = [ - '__UNIX__', - '__X11__', - ]) - env.Prepend(LIBS = [ - 'GLU', - 'GL', - ]) - -if env['platform'] == 'windows': - env.Append(CPPDEFINES = [ - '__WIN__', - '__MS__', - ]) - env.Prepend(LIBS = [ - 'glu32', - 'opengl32', - 'gdi32', - 'user32', - 'kernel32', - ]) - -if env['platform'] == 'darwin': - env.Append(CPPDEFINES = [ - '__UNIX__', - '__AGL__', - ]) - env.Prepend(FRAMEWORKS = [ - 'AGL', - 'Carbon', - 'GLUT', - 'OpenGL', - ]) - -variant = env['platform'] -if env['machine'] != 'generic': - variant += '-' + env['machine'] -if env['debug']: - variant += '-debug' -env['variant'] = variant - -# Put all SCons' persistent data in the build dir -build_dir = os.path.join('..', 'build', variant) -env.SConsignFile(os.path.join(build_dir, 'sign')) -env['CONFIGUREDIR'] = os.path.join(build_dir, 'conf') -env['CONFIGURELOG'] = os.path.join(build_dir, 'config.log') - -conf = Configure(env) -if not conf.CheckCHeader('GL/glext.h'): - conf.env.Prepend(CPPPATH = ['#glext']) -if conf.CheckCHeader('GL/glut.h'): - if env['platform'] == 'windows': - conf.env.Prepend(LIBS = ['glut32']) - else: - conf.env.Prepend(LIBS = ['glut']) - conf.env['glut'] = True -else: - conf.env['glut'] = False -has_tiff = conf.CheckCHeader('tiff.h') -env = conf.Finish() - -if has_tiff: - conf.env.Prepend(LIBS = ['tiff']) -else: - SConscript(['tiff/SConscript']) - Import(['tiff']) - conf.env.Prepend(CPPPATH = ['#tiff']) - conf.env.Prepend(LIBS = [tiff]) - -env.Prepend(CPPPATH = [ - '#glh', - '#libs/dsurf', - '#libs/image', - '#libs/lex', - '#libs/rand', - '#libs/stats', - '#libs/timer', -]) - -env.VariantDir(build_dir, '.', duplicate=0) - -SConscript('SConscript', variant_dir=build_dir, duplicate=0) diff --git a/src/glean/SConscript b/src/glean/SConscript deleted file mode 100644 index 3a39966..0000000 --- a/src/glean/SConscript +++ /dev/null @@ -1,87 +0,0 @@ -import os.path - -Import(['*']) - -env = env.Clone() - -env.Prepend(LIBS = [ - dsurf, - lex, - image, - stats, - timer, -]) - -main = [ - 'codedid.cpp', - 'dsurf.cpp', - 'environ.cpp', - 'geomrend.cpp', - 'geomutil.cpp', - 'glutils.cpp', - 'main.cpp', - 'misc.cpp', - 'options.cpp', - 'rc.cpp', - 'test.cpp', - 'winsys.cpp', -] - -tests = [ - 'tapi2.cpp', - 'tbasic.cpp', - 'tbasicperf.cpp', - 'tbinding.cpp', - 'tblend.cpp', - 'tbufferobject.cpp', - 'tchgperf.cpp', - 'tclipflat.cpp', - 'tdepthstencil.cpp', - 'tfbo.cpp', - 'tfpexceptions.cpp', - 'tfragprog1.cpp', - 'tgetstr.cpp', - 'tglsl1.cpp', - 'tlogicop.cpp', - 'tmaskedclear.cpp', - 'tmultitest.cpp', - 'toccluqry.cpp', - 'torthpos.cpp', - 'tpaths.cpp', - 'tpbo.cpp', - 'tpgos.cpp', - 'tpixelformats.cpp', - 'tpointatten.cpp', - 'tpointsprite.cpp', - 'treadpix.cpp', - 'treadpixperf.cpp', - 'trgbtris.cpp', - 'tscissor.cpp', - 'tshaderapi.cpp', - 'tstencil2.cpp', - 'tteapot.cpp', - 'ttexcombine4.cpp', - 'ttexcombine.cpp', - 'ttexcube.cpp', - 'ttexenv.cpp', - 'ttexgen.cpp', - 'ttexrect.cpp', - 'ttexswizzle.cpp', - 'ttexture_srgb.cpp', - 'ttexunits.cpp', - 'tvertattrib.cpp', - 'tvertarraybgra.cpp', - 'tvertprog1.cpp', - 'tvtxperf.cpp', -] - -glean = env.Program( - target = 'glean', - source = main + tests, -) - -env.Default(glean) - -bin_dir = os.path.join(env['prefix'], 'bin') -env.Install(bin_dir, glean) -env.Alias('install', bin_dir) diff --git a/src/libs/SConscript b/src/libs/SConscript deleted file mode 100644 index 2b3fdc0..0000000 --- a/src/libs/SConscript +++ /dev/null @@ -1 +0,0 @@ -SConscript(dirs = ['rand', 'timer', 'stats', 'image', 'lex', 'dsurf']) diff --git a/src/libs/dsurf/SConscript b/src/libs/dsurf/SConscript deleted file mode 100644 index f34aace..0000000 --- a/src/libs/dsurf/SConscript +++ /dev/null @@ -1,11 +0,0 @@ -Import(['env']) - -dsurf = env.StaticLibrary( - target = 'dsurf', - source = [ - 'dsconfig.cpp', - 'dsfilt.cpp', - ], -) - -Export(['dsurf']) diff --git a/src/libs/image/SConscript b/src/libs/image/SConscript deleted file mode 100644 index f3e1344..0000000 --- a/src/libs/image/SConscript +++ /dev/null @@ -1,16 +0,0 @@ -Import(['env']) - -image = env.StaticLibrary( - target = 'image', - source = [ - 'gl.cpp', - 'misc.cpp', - 'pack.cpp', - 'rdtiff.cpp', - 'reg.cpp', - 'unpack.cpp', - 'wrtiff.cpp', - ], -) - -Export(['image']) diff --git a/src/libs/lex/SConscript b/src/libs/lex/SConscript deleted file mode 100644 index ba4d967..0000000 --- a/src/libs/lex/SConscript +++ /dev/null @@ -1,10 +0,0 @@ -Import(['env']) - -lex = env.StaticLibrary( - target = 'lex', - source = [ - 'lex.cpp', - ], -) - -Export(['lex']) diff --git a/src/libs/rand/SConscript b/src/libs/rand/SConscript deleted file mode 100644 index e69de29..0000000 diff --git a/src/libs/stats/SConscript b/src/libs/stats/SConscript deleted file mode 100644 index 694f56f..0000000 --- a/src/libs/stats/SConscript +++ /dev/null @@ -1,10 +0,0 @@ -Import(['env']) - -stats = env.StaticLibrary( - target = 'stats', - source = [ - 'basic.cpp', - ], -) - -Export(['stats']) diff --git a/src/libs/timer/SConscript b/src/libs/timer/SConscript deleted file mode 100644 index ab3bd5a..0000000 --- a/src/libs/timer/SConscript +++ /dev/null @@ -1,10 +0,0 @@ -Import(['env']) - -timer = env.StaticLibrary( - target = 'timer', - source = [ - 'timer.cpp', - ], -) - -Export(['timer']) diff --git a/src/tiff/SConscript b/src/tiff/SConscript deleted file mode 100644 index 276dbab..0000000 --- a/src/tiff/SConscript +++ /dev/null @@ -1,166 +0,0 @@ -# $Id: SConstruct,v 1.2 2006/03/23 14:54:00 dron Exp $ - -# Tag Image File Format (TIFF) Software -# -# Copyright (C) 2005, Andrey Kiselev <dr...@ak...> -# -# Permission to use, copy, modify, distribute, and sell this software and -# its documentation for any purpose is hereby granted without fee, provided -# that (i) the above copyright notices and this permission notice appear in -# all copies of the software and related documentation, and (ii) the names of -# Sam Leffler and Silicon Graphics may not be used in any advertising or -# publicity relating to the software without the specific, prior written -# permission of Sam Leffler and Silicon Graphics. -# -# THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, -# EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY -# WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. -# -# IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR -# ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, -# OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, -# WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF -# LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE -# OF THIS SOFTWARE. - -Import(['env']) - -env = env.Clone() - -sources = [ - 'tif_aux.c', - 'tif_close.c', - 'tif_codec.c', - 'tif_color.c', - 'tif_compress.c', - 'tif_dir.c', - 'tif_dirinfo.c', - 'tif_dirread.c', - 'tif_dirwrite.c', - 'tif_dumpmode.c', - 'tif_error.c', - 'tif_extension.c', - 'tif_fax3.c', - 'tif_fax3sm.c', - 'tif_flush.c', - 'tif_getimage.c', - 'tif_jpeg.c', - 'tif_luv.c', - 'tif_lzw.c', - 'tif_next.c', - 'tif_ojpeg.c', - 'tif_open.c', - 'tif_packbits.c', - 'tif_pixarlog.c', - 'tif_predict.c', - 'tif_print.c', - 'tif_read.c', - 'tif_strip.c', - 'tif_swab.c', - 'tif_thunder.c', - 'tif_tile.c', - 'tif_version.c', - 'tif_warning.c', - 'tif_write.c', - 'tif_zip.c', -] - -if env['platform'] == 'windows': - sources += ['tif_win32.c'] - - env.Append(CPPDEFINES = [ - ('inline', '__inline'), - ]) -elif env['platform'] == 'darwin': - sources += ['tif_apple.c'] - env.Prepend(CPPPATH = ['/Developer/Headers/FlatCarbon']) -else: - sources += ['tif_unix.c'] - -def Define(context, key, have): - import SCons.Conftest - SCons.Conftest._Have(context, key, have) - -def CheckCustomOption(context, name): - context.Message('Checking is the ' + name + ' option set... ') - ret = True - Define(context, name + '_SUPPORT', ret) - context.Result(ret) - return ret - -def CheckFillorderOption(context): - context.Message('Checking for the native cpu bit order... ') - if True: # FIXME - Define(context, 'HOST_FILLORDER', 'FILLORDER_LSB2MSB') - context.Result('lsb2msb') - else: - Define(context, 'HOST_FILLORDER', 'FILLORDER_MSB2LSB') - context.Result('msb2lsb') - return 1 - -def CheckIEEEFPOption(context): - context.Message('Checking for the IEEE floating point format... ') - Define(context, 'HAVE_IEEEFP', 1) - context.Result(1) - return 1 - -def CheckOtherOption(context, name): - context.Message('Checking is the ' + name + ' option set... ') - ret = True - Define(context, 'HAVE_' + name, ret) - context.Result(ret) - return ret - -custom_tests = { - 'CheckCustomOption' : CheckCustomOption, - 'CheckFillorderOption' : CheckFillorderOption, - 'CheckIEEEFPOption' : CheckIEEEFPOption, - 'CheckOtherOption' : CheckOtherOption - } -conf = Configure(env, custom_tests = custom_tests, config_h = 'tif_config.h') - -# Check for standard library -conf.CheckLib('c') -if False: # FIXME - conf.CheckLib('m') - -# Check for system headers -conf.CheckCHeader('assert.h') -conf.CheckCHeader('fcntl.h') -conf.CheckCHeader('limits.h') -conf.CheckCHeader('malloc.h') -conf.CheckCHeader('search.h') -conf.CheckCHeader('sys/time.h') -conf.CheckCHeader('unistd.h') -conf.CheckCHeader('string.h') - -# Check for standard library functions -conf.CheckFunc('floor') -conf.CheckFunc('isascii') -conf.CheckFunc('memmove') -conf.CheckFunc('memset') -conf.CheckFunc('mmap') -conf.CheckFunc('pow') -conf.CheckFunc('sqrt') -conf.CheckFunc('strchr') -conf.CheckFunc('strrchr') -conf.CheckFunc('strstr') -conf.CheckFunc('strtol') - -conf.CheckFillorderOption() -conf.CheckIEEEFPOption() -conf.CheckCustomOption('ccitt') -conf.CheckCustomOption('packbits') -conf.CheckCustomOption('lzw') -conf.CheckCustomOption('thunder') -conf.CheckCustomOption('next') -conf.CheckCustomOption('logluv') -conf.CheckOtherOption('strip_chopping') -conf.CheckOtherOption('extrasample_as_alpha') -conf.CheckOtherOption('check_ycbcr_subsampling') - -env = conf.Finish() - -tiff = env.StaticLibrary('tiff', sources) - -Export('tiff') diff --git a/src/tools/SConscript b/src/tools/SConscript deleted file mode 100644 index 4d5260c..0000000 --- a/src/tools/SConscript +++ /dev/null @@ -1 +0,0 @@ -SConscript(dirs = ['showtiff', 'difftiff', 'showvis']) diff --git a/src/tools/difftiff/SConscript b/src/tools/difftiff/SConscript deleted file mode 100644 index 56ca5a1..0000000 --- a/src/tools/difftiff/SConscript +++ /dev/null @@ -1,16 +0,0 @@ -import os.path - -Import(['*']) - -if env['glut']: - env = env.Clone() - - env.Prepend(LIBS = [image]) - - difftiff = env.Program('difftiff', ['main.cpp']) - - env.Default(difftiff) - - bin_dir = os.path.join(env['prefix'], 'bin') - env.Install(bin_dir, difftiff) - env.Alias('install', bin_dir) diff --git a/src/tools/showtiff/SConscript b/src/tools/showtiff/SConscript deleted file mode 100644 index 52a1a72..0000000 --- a/src/tools/showtiff/SConscript +++ /dev/null @@ -1,16 +0,0 @@ -import os.path - -Import(['*']) - -if env['glut']: - env = env.Clone() - - env.Prepend(LIBS = [image]) - - showtiff = env.Program('showtiff', ['main.cpp']) - - env.Default(showtiff) - - bin_dir = os.path.join(env['prefix'], 'bin') - env.Install(bin_dir, showtiff) - env.Alias('install', bin_dir) diff --git a/src/tools/showvis/SConscript b/src/tools/showvis/SConscript deleted file mode 100644 index 42f09d4..0000000 --- a/src/tools/showvis/SConscript +++ /dev/null @@ -1,15 +0,0 @@ -import os.path - -Import(['*']) - -env = env.Clone() - -env.Prepend(LIBS = [dsurf, lex]) - -showvis = env.Program('showvis', ['main.cpp']) - -env.Default(showvis) - -bin_dir = os.path.join(env['prefix'], 'bin') -env.Install(bin_dir, showvis) -env.Alias('install', bin_dir) |
From: Brian P. <br...@us...> - 2011-05-24 15:12:43
|
Module: glean Branch: master Commit: cf022fe9dce1406803fea72b8a4b011a1d41303d URL: no.cgit.repo/commit/?id=cf022fe9dce1406803fea72b8a4b011a1d41303d Author: Simone Contini <s.c...@ol...> Date: Mon May 23 21:34:55 2011 +0200 Fix bug ID: 2957996 - Wrong results when executing readpixPerf cast to double added to the first argument expression to prevent the integer overflow Signed-off-by: Simone Contini <s.c...@ol...> Signed-off-by: Brian Paul <br...@vm...> --- src/glean/treadpixperf.cpp | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/glean/treadpixperf.cpp b/src/glean/treadpixperf.cpp index 7ad3d42..813dfdb 100644 --- a/src/glean/treadpixperf.cpp +++ b/src/glean/treadpixperf.cpp @@ -207,7 +207,7 @@ ReadpixPerfTest::runNonPBOtest(int formatNum, GLsizei width, GLsizei height, delete buffer; - double rate = width * height * iter / elapsedTime / 1000000.0; + double rate = static_cast<double>(width) * height * iter / elapsedTime / 1000000.0; return rate; } @@ -299,7 +299,7 @@ ReadpixPerfTest::runPBOtest(int formatNum, GLsizei width, GLsizei height, delete b; #endif - double rate = width * height * iter / elapsedTime / 1000000.0; + double rate = static_cast<double>(width) * height * iter / elapsedTime / 1000000.0; return rate; #else return 0.0; |
From: Jose F. <jrf...@us...> - 2011-04-23 10:31:28
|
Module: glean Branch: master Commit: 3aa148ab51196075265c08b5a18dcdd35dcf6a05 URL: no.cgit.repo/commit/?id=3aa148ab51196075265c08b5a18dcdd35dcf6a05 Author: José Fonseca <jos...@gm...> Date: Sat Apr 23 11:31:02 2011 +0100 scons: Avoid deprecation warning. --- src/SConstruct | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/src/SConstruct b/src/SConstruct index 7150a59..37be39a 100644 --- a/src/SConstruct +++ b/src/SConstruct @@ -233,4 +233,4 @@ env.Prepend(CPPPATH = [ env.VariantDir(build_dir, '.', duplicate=0) -SConscript('SConscript', build_dir=build_dir, duplicate=0) +SConscript('SConscript', variant_dir=build_dir, duplicate=0) |
From: Jose F. <jrf...@us...> - 2011-04-23 10:31:24
|
Module: glean Branch: master Commit: ea87fd848301b0414318f150a627d390afef07ab URL: no.cgit.repo/commit/?id=ea87fd848301b0414318f150a627d390afef07ab Author: José Fonseca <jos...@gm...> Date: Sat Apr 23 11:30:38 2011 +0100 scons: Remove winsdk toolchain. Unnecessary/undocumented. --- scons/mslib_sa.py | 49 ------------ scons/mslink_sa.py | 211 ---------------------------------------------------- scons/msvc_sa.py | 173 ------------------------------------------ scons/winsdk.py | 139 ---------------------------------- src/SConstruct | 2 +- 5 files changed, 1 insertions(+), 573 deletions(-) diff --git a/scons/mslib_sa.py b/scons/mslib_sa.py deleted file mode 100644 index da51c57..0000000 --- a/scons/mslib_sa.py +++ /dev/null @@ -1,49 +0,0 @@ -"""mslib_sa - -Tool-specific initialization for lib (MicroSoft library archiver). - -Based on SCons.Tool.mslib, without the MSVC detection. - -""" - -# -# Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 The SCons Foundation -# -# Permission is hereby granted, free of charge, to any person obtaining -# a copy of this software and associated documentation files (the -# "Software"), to deal in the Software without restriction, including -# without limitation the rights to use, copy, modify, merge, publish, -# distribute, sublicense, and/or sell copies of the Software, and to -# permit persons to whom the Software is furnished to do so, subject to -# the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY -# KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE -# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -# - -import SCons.Defaults -import SCons.Tool -import SCons.Util - -def generate(env): - """Add Builders and construction variables for lib to an Environment.""" - SCons.Tool.createStaticLibBuilder(env) - - env['AR'] = 'lib' - env['ARFLAGS'] = SCons.Util.CLVar('/nologo') - env['ARCOM'] = "${TEMPFILE('$AR $ARFLAGS /OUT:$TARGET $SOURCES')}" - env['LIBPREFIX'] = '' - env['LIBSUFFIX'] = '.lib' - -def exists(env): - return env.Detect('lib') - -# vim:set ts=4 sw=4 et: diff --git a/scons/mslink_sa.py b/scons/mslink_sa.py deleted file mode 100644 index 53331de..0000000 --- a/scons/mslink_sa.py +++ /dev/null @@ -1,211 +0,0 @@ -"""mslink_sa - -Tool-specific initialization for the Microsoft linker. - -Based on SCons.Tool.mslink, without the MSVS detection. - -""" - -# -# Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 The SCons Foundation -# -# Permission is hereby granted, free of charge, to any person obtaining -# a copy of this software and associated documentation files (the -# "Software"), to deal in the Software without restriction, including -# without limitation the rights to use, copy, modify, merge, publish, -# distribute, sublicense, and/or sell copies of the Software, and to -# permit persons to whom the Software is furnished to do so, subject to -# the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY -# KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE -# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -# - -import os.path - -import SCons.Action -import SCons.Defaults -import SCons.Errors -import SCons.Platform.win32 -import SCons.Tool -import SCons.Tool.msvc -import SCons.Util - -def pdbGenerator(env, target, source, for_signature): - try: - return ['/PDB:%s' % target[0].attributes.pdb, '/DEBUG'] - except (AttributeError, IndexError): - return None - -def windowsShlinkTargets(target, source, env, for_signature): - listCmd = [] - dll = env.FindIxes(target, 'SHLIBPREFIX', 'SHLIBSUFFIX') - if dll: listCmd.append("/out:%s"%dll.get_string(for_signature)) - - implib = env.FindIxes(target, 'LIBPREFIX', 'LIBSUFFIX') - if implib: listCmd.append("/implib:%s"%implib.get_string(for_signature)) - - return listCmd - -def windowsShlinkSources(target, source, env, for_signature): - listCmd = [] - - deffile = env.FindIxes(source, "WINDOWSDEFPREFIX", "WINDOWSDEFSUFFIX") - for src in source: - if src == deffile: - # Treat this source as a .def file. - listCmd.append("/def:%s" % src.get_string(for_signature)) - else: - # Just treat it as a generic source file. - listCmd.append(src) - return listCmd - -def windowsLibEmitter(target, source, env): - SCons.Tool.msvc.validate_vars(env) - - extratargets = [] - extrasources = [] - - dll = env.FindIxes(target, "SHLIBPREFIX", "SHLIBSUFFIX") - no_import_lib = env.get('no_import_lib', 0) - - if not dll: - raise SCons.Errors.UserError, "A shared library should have exactly one target with the suffix: %s" % env.subst("$SHLIBSUFFIX") - - insert_def = env.subst("$WINDOWS_INSERT_DEF") - if not insert_def in ['', '0', 0] and \ - not env.FindIxes(source, "WINDOWSDEFPREFIX", "WINDOWSDEFSUFFIX"): - - # append a def file to the list of sources - extrasources.append( - env.ReplaceIxes(dll, - "SHLIBPREFIX", "SHLIBSUFFIX", - "WINDOWSDEFPREFIX", "WINDOWSDEFSUFFIX")) - - if env.has_key('PDB') and env['PDB']: - pdb = env.arg2nodes('$PDB', target=target, source=source)[0] - extratargets.append(pdb) - target[0].attributes.pdb = pdb - - if not no_import_lib and \ - not env.FindIxes(target, "LIBPREFIX", "LIBSUFFIX"): - # Append an import library to the list of targets. - extratargets.append( - env.ReplaceIxes(dll, - "SHLIBPREFIX", "SHLIBSUFFIX", - "LIBPREFIX", "LIBSUFFIX")) - # and .exp file is created if there are exports from a DLL - extratargets.append( - env.ReplaceIxes(dll, - "SHLIBPREFIX", "SHLIBSUFFIX", - "WINDOWSEXPPREFIX", "WINDOWSEXPSUFFIX")) - - return (target+extratargets, source+extrasources) - -def prog_emitter(target, source, env): - SCons.Tool.msvc.validate_vars(env) - - extratargets = [] - - exe = env.FindIxes(target, "PROGPREFIX", "PROGSUFFIX") - if not exe: - raise SCons.Errors.UserError, "An executable should have exactly one target with the suffix: %s" % env.subst("$PROGSUFFIX") - - if env.has_key('PDB') and env['PDB']: - pdb = env.arg2nodes('$PDB', target=target, source=source)[0] - extratargets.append(pdb) - target[0].attributes.pdb = pdb - - return (target+extratargets,source) - -def RegServerFunc(target, source, env): - if env.has_key('register') and env['register']: - ret = regServerAction([target[0]], [source[0]], env) - if ret: - raise SCons.Errors.UserError, "Unable to register %s" % target[0] - else: - print "Registered %s sucessfully" % target[0] - return ret - return 0 - -regServerAction = SCons.Action.Action("$REGSVRCOM", "$REGSVRCOMSTR") -regServerCheck = SCons.Action.Action(RegServerFunc, None) -shlibLinkAction = SCons.Action.Action('${TEMPFILE("$SHLINK $SHLINKFLAGS $_SHLINK_TARGETS $( $_LIBDIRFLAGS $) $_LIBFLAGS $_PDB $_SHLINK_SOURCES")}') -compositeLinkAction = shlibLinkAction + regServerCheck - -def generate(env): - """Add Builders and construction variables for ar to an Environment.""" - SCons.Tool.createSharedLibBuilder(env) - SCons.Tool.createProgBuilder(env) - - env['SHLINK'] = '$LINK' - env['SHLINKFLAGS'] = SCons.Util.CLVar('$LINKFLAGS /dll') - env['_SHLINK_TARGETS'] = windowsShlinkTargets - env['_SHLINK_SOURCES'] = windowsShlinkSources - env['SHLINKCOM'] = compositeLinkAction - env.Append(SHLIBEMITTER = [windowsLibEmitter]) - env['LINK'] = 'link' - env['LINKFLAGS'] = SCons.Util.CLVar('/nologo') - env['_PDB'] = pdbGenerator - env['LINKCOM'] = '${TEMPFILE("$LINK $LINKFLAGS /OUT:$TARGET.windows $( $_LIBDIRFLAGS $) $_LIBFLAGS $_PDB $SOURCES.windows")}' - env.Append(PROGEMITTER = [prog_emitter]) - env['LIBDIRPREFIX']='/LIBPATH:' - env['LIBDIRSUFFIX']='' - env['LIBLINKPREFIX']='' - env['LIBLINKSUFFIX']='$LIBSUFFIX' - - env['WIN32DEFPREFIX'] = '' - env['WIN32DEFSUFFIX'] = '.def' - env['WIN32_INSERT_DEF'] = 0 - env['WINDOWSDEFPREFIX'] = '${WIN32DEFPREFIX}' - env['WINDOWSDEFSUFFIX'] = '${WIN32DEFSUFFIX}' - env['WINDOWS_INSERT_DEF'] = '${WIN32_INSERT_DEF}' - - env['WIN32EXPPREFIX'] = '' - env['WIN32EXPSUFFIX'] = '.exp' - env['WINDOWSEXPPREFIX'] = '${WIN32EXPPREFIX}' - env['WINDOWSEXPSUFFIX'] = '${WIN32EXPSUFFIX}' - - env['WINDOWSSHLIBMANIFESTPREFIX'] = '' - env['WINDOWSSHLIBMANIFESTSUFFIX'] = '${SHLIBSUFFIX}.manifest' - env['WINDOWSPROGMANIFESTPREFIX'] = '' - env['WINDOWSPROGMANIFESTSUFFIX'] = '${PROGSUFFIX}.manifest' - - env['REGSVRACTION'] = regServerCheck - env['REGSVR'] = os.path.join(SCons.Platform.win32.get_system_root(),'System32','regsvr32') - env['REGSVRFLAGS'] = '/s ' - env['REGSVRCOM'] = '$REGSVR $REGSVRFLAGS ${TARGET.windows}' - - # For most platforms, a loadable module is the same as a shared - # library. Platforms which are different can override these, but - # setting them the same means that LoadableModule works everywhere. - SCons.Tool.createLoadableModuleBuilder(env) - env['LDMODULE'] = '$SHLINK' - env['LDMODULEPREFIX'] = '$SHLIBPREFIX' - env['LDMODULESUFFIX'] = '$SHLIBSUFFIX' - env['LDMODULEFLAGS'] = '$SHLINKFLAGS' - # We can't use '$SHLINKCOM' here because that will stringify the - # action list on expansion, and will then try to execute expanded - # strings, with the upshot that it would try to execute RegServerFunc - # as a command. - env['LDMODULECOM'] = compositeLinkAction - -def exists(env): - platform = env.get('PLATFORM', '') - if platform in ('win32', 'cygwin'): - # Only explicitly search for a 'link' executable on Windows - # systems. Some other systems (e.g. Ubuntu Linux) have an - # executable named 'link' and we don't want that to make SCons - # think Visual Studio is installed. - return env.Detect('link') - return None - -# vim:set ts=4 sw=4 et: diff --git a/scons/msvc_sa.py b/scons/msvc_sa.py deleted file mode 100644 index 136d305..0000000 --- a/scons/msvc_sa.py +++ /dev/null @@ -1,173 +0,0 @@ -"""msvc_sa - -Tool-specific initialization for Microsoft Visual C/C++. - -Based on SCons.Tool.msvc, without the MSVS detection. - -""" - -# -# Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 The SCons Foundation -# -# Permission is hereby granted, free of charge, to any person obtaining -# a copy of this software and associated documentation files (the -# "Software"), to deal in the Software without restriction, including -# without limitation the rights to use, copy, modify, merge, publish, -# distribute, sublicense, and/or sell copies of the Software, and to -# permit persons to whom the Software is furnished to do so, subject to -# the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY -# KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE -# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -# - -import os.path -import re -import string - -import SCons.Action -import SCons.Builder -import SCons.Errors -import SCons.Platform.win32 -import SCons.Tool -import SCons.Util -import SCons.Warnings - -CSuffixes = ['.c', '.C'] -CXXSuffixes = ['.cc', '.cpp', '.cxx', '.c++', '.C++'] - -def validate_vars(env): - """Validate the PCH and PCHSTOP construction variables.""" - if env.has_key('PCH') and env['PCH']: - if not env.has_key('PCHSTOP'): - raise SCons.Errors.UserError, "The PCHSTOP construction must be defined if PCH is defined." - if not SCons.Util.is_String(env['PCHSTOP']): - raise SCons.Errors.UserError, "The PCHSTOP construction variable must be a string: %r"%env['PCHSTOP'] - -def pch_emitter(target, source, env): - """Adds the object file target.""" - - validate_vars(env) - - pch = None - obj = None - - for t in target: - if SCons.Util.splitext(str(t))[1] == '.pch': - pch = t - if SCons.Util.splitext(str(t))[1] == '.obj': - obj = t - - if not obj: - obj = SCons.Util.splitext(str(pch))[0]+'.obj' - - target = [pch, obj] # pch must be first, and obj second for the PCHCOM to work - - return (target, source) - -def object_emitter(target, source, env, parent_emitter): - """Sets up the PCH dependencies for an object file.""" - - validate_vars(env) - - parent_emitter(target, source, env) - - if env.has_key('PCH') and env['PCH']: - env.Depends(target, env['PCH']) - - return (target, source) - -def static_object_emitter(target, source, env): - return object_emitter(target, source, env, - SCons.Defaults.StaticObjectEmitter) - -def shared_object_emitter(target, source, env): - return object_emitter(target, source, env, - SCons.Defaults.SharedObjectEmitter) - -pch_action = SCons.Action.Action('$PCHCOM', '$PCHCOMSTR') -pch_builder = SCons.Builder.Builder(action=pch_action, suffix='.pch', - emitter=pch_emitter, - source_scanner=SCons.Tool.SourceFileScanner) -res_action = SCons.Action.Action('$RCCOM', '$RCCOMSTR') -res_builder = SCons.Builder.Builder(action=res_action, - src_suffix='.rc', - suffix='.res', - src_builder=[], - source_scanner=SCons.Tool.SourceFileScanner) -SCons.Tool.SourceFileScanner.add_scanner('.rc', SCons.Defaults.CScan) - -def generate(env): - """Add Builders and construction variables for MSVC++ to an Environment.""" - static_obj, shared_obj = SCons.Tool.createObjBuilders(env) - - for suffix in CSuffixes: - static_obj.add_action(suffix, SCons.Defaults.CAction) - shared_obj.add_action(suffix, SCons.Defaults.ShCAction) - static_obj.add_emitter(suffix, static_object_emitter) - shared_obj.add_emitter(suffix, shared_object_emitter) - - for suffix in CXXSuffixes: - static_obj.add_action(suffix, SCons.Defaults.CXXAction) - shared_obj.add_action(suffix, SCons.Defaults.ShCXXAction) - static_obj.add_emitter(suffix, static_object_emitter) - shared_obj.add_emitter(suffix, shared_object_emitter) - - env['CCPDBFLAGS'] = SCons.Util.CLVar(['${(PDB and "/Z7") or ""}']) - env['CCPCHFLAGS'] = SCons.Util.CLVar(['${(PCH and "/Yu%s /Fp%s"%(PCHSTOP or "",File(PCH))) or ""}']) - env['CCCOMFLAGS'] = '$CPPFLAGS $_CPPDEFFLAGS $_CPPINCFLAGS /c $SOURCES /Fo$TARGET $CCPCHFLAGS $CCPDBFLAGS' - env['CC'] = 'cl' - env['CCFLAGS'] = SCons.Util.CLVar('/nologo') - env['CFLAGS'] = SCons.Util.CLVar('') - env['CCCOM'] = '$CC $CFLAGS $CCFLAGS $CCCOMFLAGS' - env['SHCC'] = '$CC' - env['SHCCFLAGS'] = SCons.Util.CLVar('$CCFLAGS') - env['SHCFLAGS'] = SCons.Util.CLVar('$CFLAGS') - env['SHCCCOM'] = '$SHCC $SHCFLAGS $SHCCFLAGS $CCCOMFLAGS' - env['CXX'] = '$CC' - env['CXXFLAGS'] = SCons.Util.CLVar('$CCFLAGS $( /TP $)') - env['CXXCOM'] = '$CXX $CXXFLAGS $CCCOMFLAGS' - env['SHCXX'] = '$CXX' - env['SHCXXFLAGS'] = SCons.Util.CLVar('$CXXFLAGS') - env['SHCXXCOM'] = '$SHCXX $SHCXXFLAGS $CCCOMFLAGS' - env['CPPDEFPREFIX'] = '/D' - env['CPPDEFSUFFIX'] = '' - env['INCPREFIX'] = '/I' - env['INCSUFFIX'] = '' -# env.Append(OBJEMITTER = [static_object_emitter]) -# env.Append(SHOBJEMITTER = [shared_object_emitter]) - env['STATIC_AND_SHARED_OBJECTS_ARE_THE_SAME'] = 1 - - env['RC'] = 'rc' - env['RCFLAGS'] = SCons.Util.CLVar('') - env['RCCOM'] = '$RC $_CPPDEFFLAGS $_CPPINCFLAGS $RCFLAGS /fo$TARGET $SOURCES' - env['BUILDERS']['RES'] = res_builder - env['OBJPREFIX'] = '' - env['OBJSUFFIX'] = '.obj' - env['SHOBJPREFIX'] = '$OBJPREFIX' - env['SHOBJSUFFIX'] = '$OBJSUFFIX' - - env['CFILESUFFIX'] = '.c' - env['CXXFILESUFFIX'] = '.cc' - - env['PCHPDBFLAGS'] = SCons.Util.CLVar(['${(PDB and "/Yd") or ""}']) - env['PCHCOM'] = '$CXX $CXXFLAGS $CPPFLAGS $_CPPDEFFLAGS $_CPPINCFLAGS /c $SOURCES /Fo${TARGETS[1]} /Yc$PCHSTOP /Fp${TARGETS[0]} $CCPDBFLAGS $PCHPDBFLAGS' - env['BUILDERS']['PCH'] = pch_builder - - if not env.has_key('ENV'): - env['ENV'] = {} - if not env['ENV'].has_key('SystemRoot'): # required for dlls in the winsxs folders - env['ENV']['SystemRoot'] = SCons.Platform.win32.get_system_root() - -def exists(env): - return env.Detect('cl') - -# vim:set ts=4 sw=4 et: diff --git a/scons/winsdk.py b/scons/winsdk.py deleted file mode 100644 index 255f9c5..0000000 --- a/scons/winsdk.py +++ /dev/null @@ -1,139 +0,0 @@ -"""winsdk - -Tool-specific initialization for Microsoft Windows SDK. - -""" - -# -# Copyright (c) 2001-2007 The SCons Foundation -# Copyright (c) 2008 Tungsten Graphics, Inc. -# Copyright (c) 2009 VMware, Inc. -# -# Permission is hereby granted, free of charge, to any person obtaining -# a copy of this software and associated documentation files (the -# "Software"), to deal in the Software without restriction, including -# without limitation the rights to use, copy, modify, merge, publish, -# distribute, sublicense, and/or sell copies of the Software, and to -# permit persons to whom the Software is furnished to do so, subject to -# the following conditions: -# -# The above copyright notice and this permission notice shall be included -# in all copies or substantial portions of the Software. -# -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY -# KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE -# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND -# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE -# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION -# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -# - -import os.path -import platform - -import SCons.Errors -import SCons.Util - -import msvc_sa -import mslib_sa -import mslink_sa - - -def get_vs_root(env): - # TODO: Check HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\SxS\VS7 - path = os.path.join(os.getenv('ProgramFiles', r'C:\Program Files'), 'Microsoft Visual Studio 9.0') - return path - -def get_vs_paths(env): - vs_root = get_vs_root(env) - if vs_root is None: - raise SCons.Errors.InternalError, "WINSDK compiler not found" - - tool_path = os.path.join(vs_root, 'Common7', 'IDE') - - env.PrependENVPath('PATH', tool_path) - -def get_vc_root(env): - # TODO: Check HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\SxS\VC7 - path = os.path.join(os.getenv('ProgramFiles', r'C:\Program Files'), 'Microsoft Visual Studio 9.0', 'VC') - return path - -def get_vc_paths(env): - vc_root = get_vc_root(env) - if vc_root is None: - raise SCons.Errors.InternalError, "WINSDK compiler not found" - - target_cpu = env['machine'] - - if target_cpu in ('generic', 'x86'): - bin_dir = 'bin' - lib_dir = 'lib' - elif target_cpu == 'x86_64': - # TODO: take in consideration the host cpu - bin_dir = r'bin\x86_amd64' - lib_dir = r'lib\amd64' - else: - raise SCons.Errors.InternalError, "Unsupported target machine" - include_dir = 'include' - - exe_path = os.path.join(vc_root, bin_dir) - include_path = os.path.join(vc_root, include_dir) - lib_path = os.path.join(vc_root, lib_dir) - - env.PrependENVPath('INCLUDE', include_path) - env.PrependENVPath('LIB', lib_path) - env.PrependENVPath('PATH', exe_path) - -def get_sdk_root(env): - if SCons.Util.can_read_reg: - key = r'SOFTWARE\Microsoft\Microsoft SDKs\Windows\CurrentInstallFolder' - try: - path, t = SCons.Util.RegGetValue(SCons.Util.HKEY_LOCAL_MACHINE, key) - except SCons.Util.RegError: - pass - else: - return path - - return None - -def get_sdk_paths(env): - sdk_root = get_sdk_root(env) - if sdk_root is None: - raise SCons.Errors.InternalError, "WINSDK not found" - - target_cpu = env['machine'] - - bin_dir = 'Bin' - if target_cpu in ('generic', 'x86'): - lib_dir = 'Lib' - elif target_cpu == 'x86_64': - lib_dir = 'Lib/x64' - else: - raise SCons.Errors.InternalError, "Unsupported target machine" - include_dir = 'Include' - - exe_path = os.path.join(sdk_root, bin_dir) - include_path = os.path.join(sdk_root, include_dir) - lib_path = os.path.join(sdk_root, lib_dir) - - env.PrependENVPath('INCLUDE', include_path) - env.PrependENVPath('LIB', lib_path) - env.PrependENVPath('PATH', exe_path) - -def generate(env): - if not env.has_key('ENV'): - env['ENV'] = {} - - get_vs_paths(env) - get_vc_paths(env) - get_sdk_paths(env) - - msvc_sa.generate(env) - mslib_sa.generate(env) - mslink_sa.generate(env) - -def exists(env): - return get_vc_root(env) is not None and get_sdk_root(env) is not None - -# vim:set ts=4 sw=4 et: diff --git a/src/SConstruct b/src/SConstruct index 3a91dc7..7150a59 100644 --- a/src/SConstruct +++ b/src/SConstruct @@ -38,7 +38,7 @@ vars.Add(EnumVariable('platform', 'target platform', default_platform, vars.Add(EnumVariable('machine', 'use machine-specific assembly code', default_machine, allowed_values=('generic', 'ppc', 'x86', 'x86_64'))) vars.Add(EnumVariable('toolchain', 'compiler toolchain', 'default', - allowed_values=('default', 'crossmingw', 'winsdk'))) + allowed_values=('default', 'crossmingw'))) vars.Add(PathVariable('prefix', 'installation prefix', default_prefix, PathVariable.PathIsDirCreate)) if platform.machine() == 'win32': vars.Add(EnumVariable('MSVS_VERSION', 'Microsoft Visual Studio version', None, |
From: Brian P. <br...@us...> - 2011-02-15 19:41:15
|
Module: glean Branch: master Commit: c26fd5e9938d5088a31735330bd538209921eb1b URL: no.cgit.repo/commit/?id=c26fd5e9938d5088a31735330bd538209921eb1b Author: Brian Paul <br...@vm...> Date: Tue Feb 15 12:38:20 2011 -0700 glsl1: add GLSL version checking code for single test case --- src/glean/tglsl1.cpp | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-) diff --git a/src/glean/tglsl1.cpp b/src/glean/tglsl1.cpp index 09284f3..6a48db6 100644 --- a/src/glean/tglsl1.cpp +++ b/src/glean/tglsl1.cpp @@ -4834,6 +4834,12 @@ GLSLTest::runOne(MultiTestResult &r, Window &w) env->log << "glsl1: Running single test: " << singleTest << "\n"; for (int i = 0; Programs[i].name; i++) { if (strcmp(Programs[i].name, singleTest) == 0) { + + if ((Programs[i].flags & FLAG_VERSION_1_20) && !glsl_120) + break; // skip non-applicable tests + if ((Programs[i].flags & FLAG_VERSION_1_30) && !glsl_130) + break; // skip non-applicable tests + r.numPassed = testProgram(Programs[i]); r.numFailed = 1 - r.numPassed; break; |
From: Brian P. <br...@us...> - 2011-02-15 19:41:10
|
Module: glean Branch: master Commit: 55d78c07525703b70a22e400fd3b38bbca44c079 URL: no.cgit.repo/commit/?id=55d78c07525703b70a22e400fd3b38bbca44c079 Author: Brian Paul <br...@vm...> Date: Tue Jan 4 11:20:35 2011 -0700 glsl1: better comments for shadow2D() tests --- src/glean/tglsl1.cpp | 11 +++++++---- 1 files changed, 7 insertions(+), 4 deletions(-) diff --git a/src/glean/tglsl1.cpp b/src/glean/tglsl1.cpp index 8f2ceae..09284f3 100644 --- a/src/glean/tglsl1.cpp +++ b/src/glean/tglsl1.cpp @@ -2361,7 +2361,7 @@ static const ShaderProgram Programs[] = { " vec3 coord = vec3(0.1, 0.1, 0.5); \n" " // shadow map value should be 0.25 \n" " gl_FragColor = shadow2D(texZ, coord) + vec4(0.25); \n" - " // 0.5 <= 0.25 ? color = 1 : 0\n" + " // color = (0.5 <= 0.25) ? 1.25 : 0.25\n" "} \n", { 0.25, 0.25, 0.25, 1.0 }, DONT_CARE_Z, @@ -2376,7 +2376,7 @@ static const ShaderProgram Programs[] = { " vec3 coord = vec3(0.1, 0.1, 0.2); \n" " // shadow map value should be 0.25 \n" " gl_FragColor = shadow2D(texZ, coord); \n" - " // 0.2 <= 0.25 ? color = 1 : 0\n" + " // color = (0.2 <= 0.25) ? 1 : 0\n" "} \n", { 1.0, 1.0, 1.0, 1.0 }, DONT_CARE_Z, @@ -2391,7 +2391,7 @@ static const ShaderProgram Programs[] = { " vec3 coord = vec3(0.9, 0.9, 0.95); \n" " // shadow map value should be 0.75 \n" " gl_FragColor = shadow2D(texZ, coord) + vec4(0.25); \n" - " // 0.95 <= 0.75 ? color = 1 : 0\n" + " // color = (0.95 <= 0.75) ? 1.25 : 0.25\n" "} \n", { 0.25, 0.25, 0.25, 1.0 }, DONT_CARE_Z, @@ -2406,7 +2406,7 @@ static const ShaderProgram Programs[] = { " vec3 coord = vec3(0.9, 0.9, 0.65); \n" " // shadow map value should be 0.75 \n" " gl_FragColor = shadow2D(texZ, coord); \n" - " // 0.65 <= 0.75 ? color = 1 : 0\n" + " // color = (0.65 <= 0.75) ? 1 : 0\n" "} \n", { 1.0, 1.0, 1.0, 1.0 }, DONT_CARE_Z, @@ -4342,6 +4342,7 @@ GLSLTest::setupTextures(void) // // 2D GL_DEPTH_COMPONENT texture (for shadow sampler tests) + // Left half = 0.25, right half = 0.75 // for (i = 0; i < 16; i++) { for (j = 0; j < 16; j++) { @@ -4770,6 +4771,8 @@ GLSLTest::testProgram(const ShaderProgram &p) glEnd(); } + // env->log << " Shader test: " << p.name << "\n"; + // read a pixel from lower-left corder of rendered quad GLfloat pixel[4]; glReadPixels(windowSize / 2 - 2, windowSize / 2 - 2, 1, 1, |
From: Jose F. <jrf...@us...> - 2011-02-07 15:58:56
|
Module: glean Branch: master Commit: 95311553470f2c532776c252a3936eb200bcfcf7 URL: no.cgit.repo/commit/?id=95311553470f2c532776c252a3936eb200bcfcf7 Author: José Fonseca <jfo...@vm...> Date: Sun Feb 6 10:56:32 2011 +0000 blendFunc: observe the --quick flag. Using the same approach as texCombine. Logged all combinations and ensured that the frequencies match the desired. --- src/glean/tblend.cpp | 26 +++++++++++++++++++++++++- 1 files changed, 25 insertions(+), 1 deletions(-) diff --git a/src/glean/tblend.cpp b/src/glean/tblend.cpp index 057ee4a..2d8d5a2 100644 --- a/src/glean/tblend.cpp +++ b/src/glean/tblend.cpp @@ -37,6 +37,8 @@ #define ELEMENTS(ARRAY) (sizeof(ARRAY) / sizeof(ARRAY[0])) +#define HUGE_STEP 1000 + namespace GLEAN { static PFNGLBLENDFUNCSEPARATEPROC glBlendFuncSeparate_func = NULL; static PFNGLBLENDCOLORPROC glBlendColor_func = NULL; @@ -695,6 +697,7 @@ BlendFuncTest::runOne(BlendFuncResult& r, Window& w) { unsigned numOperatorsRGB, numOperatorsA; BlendFuncResult::PartialResult p; bool allPassed = true; + unsigned testNo, testStride; // test for features, get function pointers if (GLUtils::getVersion() >= 1.4) { @@ -770,6 +773,18 @@ BlendFuncTest::runOne(BlendFuncResult& r, Window& w) { numOperatorsA = 1; // just ADD } + // If quick mode, run fewer tests + if (env->options.quick) { + testStride = 11; // a prime number + assert(ELEMENTS(srcFactors) % testStride); + assert(ELEMENTS(dstFactors) % testStride); + assert(ELEMENTS(operators) % testStride); + } + else { + testStride = 1; + } + testNo = testStride - 1; + #if 0 // use this to test a single combination: p.srcRGB = p.srcA = GL_SRC_ALPHA; @@ -792,7 +807,7 @@ BlendFuncTest::runOne(BlendFuncResult& r, Window& w) { else if (p.opRGB == GL_MIN || p.opRGB == GL_MAX || p.opA == GL_MIN || p.opA == GL_MAX) { // blend terms are N/A so only do one iteration of loops - step = 1000; + step = HUGE_STEP; } else { // subtract modes: do every 3rd blend term for speed @@ -831,6 +846,15 @@ BlendFuncTest::runOne(BlendFuncResult& r, Window& w) { needsBlendColor(p.dstA))) continue; + // skip all but every testStride-th test + ++testNo; + if (testNo == testStride || step >= HUGE_STEP) { + testNo = 0; + } + else { + continue; + } + if (!runCombo(r, w, p, *env)) { allPassed = false; } |
From: Vinson L. <vin...@us...> - 2011-01-08 02:30:20
|
Module: glean Branch: master Commit: bfab4d5d11b28aa6ac75b4f01a8127cfe6dbd4bb URL: no.cgit.repo/commit/?id=bfab4d5d11b28aa6ac75b4f01a8127cfe6dbd4bb Author: Vinson Lee <vl...@vm...> Date: Fri Jan 7 18:28:21 2011 -0800 pointAtten: Initialize member variables in class PointAttenuationTest constructor. --- src/glean/tpointatten.cpp | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-) diff --git a/src/glean/tpointatten.cpp b/src/glean/tpointatten.cpp index 4ff1c45..7d8a562 100644 --- a/src/glean/tpointatten.cpp +++ b/src/glean/tpointatten.cpp @@ -272,6 +272,12 @@ PointAttenuationTest::PointAttenuationTest(const char *testName, { fWidth = windowWidth; fHeight = windowHeight; + errorCode = GL_NO_ERROR; + errorPos = NULL; + for (int i = 0; i < 2; i++) { + aliasedLimits[i] = 0; + smoothLimits[i] = 0; + } } |
From: Vinson L. <vin...@us...> - 2011-01-08 01:59:39
|
Module: glean Branch: master Commit: 584c60541ca82424debfeecaba9fb177f0e65186 URL: no.cgit.repo/commit/?id=584c60541ca82424debfeecaba9fb177f0e65186 Author: Vinson Lee <vl...@vm...> Date: Fri Jan 7 17:58:03 2011 -0800 pixelFormats: Initialize member variables in class PixelFormatsTest constructor. --- src/glean/tpixelformats.h | 6 ++++++ 1 files changed, 6 insertions(+), 0 deletions(-) diff --git a/src/glean/tpixelformats.h b/src/glean/tpixelformats.h index faffc32..8772021 100644 --- a/src/glean/tpixelformats.h +++ b/src/glean/tpixelformats.h @@ -45,6 +45,12 @@ public: const char *extensions, const char* description) : MultiTest(testName, filter, extensions, description) { + alphaBits = 0; + defaultAlpha = 0; + haveHalfFloat = false; + haveABGR = false; + haveSRGB = false; + haveCombine = false; } virtual void runOne(MultiTestResult &r, Window &w); |
From: Vinson L. <vin...@us...> - 2011-01-08 01:37:27
|
Module: glean Branch: master Commit: 6f6d2af900c095e6eb22f2dc242f02f26f537be9 URL: no.cgit.repo/commit/?id=6f6d2af900c095e6eb22f2dc242f02f26f537be9 Author: Vinson Lee <vl...@vm...> Date: Fri Jan 7 17:36:54 2011 -0800 Initialize member variables in class Lex constructor. --- src/libs/lex/lex.cpp | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/src/libs/lex/lex.cpp b/src/libs/lex/lex.cpp index 84891f1..d493910 100644 --- a/src/libs/lex/lex.cpp +++ b/src/libs/lex/lex.cpp @@ -45,6 +45,8 @@ Lex::Lex(const char* s, bool ignoreCase/* = false */) { input = s; p = input; ignoringCase = ignoreCase; + token = ERROR; + iValue = 0; } // Lex::Lex /////////////////////////////////////////////////////////////////////////////// |
From: Vinson L. <vin...@us...> - 2011-01-08 00:59:21
|
Module: glean Branch: master Commit: 7a978fdb434b73f0a33d9d87b6ee2e3ece69ca2d URL: no.cgit.repo/commit/?id=7a978fdb434b73f0a33d9d87b6ee2e3ece69ca2d Author: Vinson Lee <vl...@vm...> Date: Fri Jan 7 16:57:59 2011 -0800 Initialize member env in class Test constructor. --- src/glean/test.cpp | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/src/glean/test.cpp b/src/glean/test.cpp index 5d178b2..0d3dbfb 100644 --- a/src/glean/test.cpp +++ b/src/glean/test.cpp @@ -61,6 +61,7 @@ Test::Test(const char* testName, const char *descrip): name(testName), description(descrip) { prereqs = 0; hasRun = false; + env = NULL; nextTest = testList; testList = this; ++testCount; @@ -70,6 +71,7 @@ Test::Test(const char* testName, const char *descrip, Test** thePrereqs): name(testName), description(descrip) { prereqs = thePrereqs; hasRun = false; + env = NULL; nextTest = testList; testList = this; ++testCount; |
From: Vinson L. <vin...@us...> - 2011-01-08 00:18:46
|
Module: glean Branch: master Commit: 004eb1375fce27c75d72346ebe68e3193713d6c5 URL: no.cgit.repo/commit/?id=004eb1375fce27c75d72346ebe68e3193713d6c5 Author: Vinson Lee <vl...@vm...> Date: Fri Jan 7 16:18:02 2011 -0800 difftiff: Add cassert header to main.cpp. Fixes build with GCC 4.4.x. --- src/tools/difftiff/main.cpp | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/src/tools/difftiff/main.cpp b/src/tools/difftiff/main.cpp index 16e5aff..f4a0a37 100644 --- a/src/tools/difftiff/main.cpp +++ b/src/tools/difftiff/main.cpp @@ -36,6 +36,7 @@ #else #include <GL/glut.h> #endif +#include <cassert> #include <cmath> // for fabs #include "image.h" |
From: Vinson L. <vin...@us...> - 2011-01-08 00:11:52
|
Module: glean Branch: master Commit: cdf77343daf30c6e46d65002a12566d5f149deb2 URL: no.cgit.repo/commit/?id=cdf77343daf30c6e46d65002a12566d5f149deb2 Author: Vinson Lee <vl...@vm...> Date: Fri Jan 7 16:11:04 2011 -0800 difftiff: Add default for unhandled cases in DiffColorMenu. --- src/tools/difftiff/main.cpp | 4 ++++ 1 files changed, 4 insertions(+), 0 deletions(-) diff --git a/src/tools/difftiff/main.cpp b/src/tools/difftiff/main.cpp index 32a8c65..16e5aff 100644 --- a/src/tools/difftiff/main.cpp +++ b/src/tools/difftiff/main.cpp @@ -174,6 +174,10 @@ DiffColorMenu(int item) { c[0] = 0; c[1] = c[2] = 255; break; + default: + assert(0); + c[0] = c[1] = c[2] = 0; + break; } if (c[0]!=DiffColor[0] || c[1]!=DiffColor[1] || c[2]!=DiffColor[2]) { |
From: Vinson L. <vin...@us...> - 2011-01-07 23:59:06
|
Module: glean Branch: master Commit: a927b09b0c8ce192a4e2815f7e53f3658d54ccdc URL: no.cgit.repo/commit/?id=a927b09b0c8ce192a4e2815f7e53f3658d54ccdc Author: Vinson Lee <vl...@vm...> Date: Fri Jan 7 15:56:43 2011 -0800 texcombine: Ensure variable expected is initialized. --- src/glean/ttexcombine.cpp | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/src/glean/ttexcombine.cpp b/src/glean/ttexcombine.cpp index d4a43c2..b2ee316 100644 --- a/src/glean/ttexcombine.cpp +++ b/src/glean/ttexcombine.cpp @@ -1274,7 +1274,7 @@ TexCombineTest::RunMultiTextureTest(glmachine &machine, BasicResult &r, // 2. Compute expected result GLfloat prevColor[4]; - GLfloat expected[4]; + GLfloat expected[4] = { 0 }; for (u = 0; u < machine.NumTexUnits; u++) { if (u == 0) { COPY4(prevColor, machine.FragColor); |
From: Vinson L. <vin...@us...> - 2010-12-24 08:58:11
|
Module: glean Branch: master Commit: b3adb7eaab0f166fa32f5bf959e8175a2836f6f3 URL: no.cgit.repo/commit/?id=b3adb7eaab0f166fa32f5bf959e8175a2836f6f3 Author: Vinson Lee <vl...@vm...> Date: Fri Dec 24 00:56:28 2010 -0800 Add back cstdio header in environ.cpp. cstdio was removed as part of previous commit 53d45c4d7a4db12c90a34fbb0cedd1dd2a79a02d but is needed for snprintf. --- src/glean/environ.cpp | 1 + 1 files changed, 1 insertions(+), 0 deletions(-) diff --git a/src/glean/environ.cpp b/src/glean/environ.cpp index 41effcc..050d9da 100644 --- a/src/glean/environ.cpp +++ b/src/glean/environ.cpp @@ -40,6 +40,7 @@ #include <unistd.h> #include <errno.h> #include <stdlib.h> +#include <cstdio> #elif defined(__MS__) #include <stdio.h> |
From: Vinson L. <vin...@us...> - 2010-12-24 08:49:43
|
Module: glean Branch: master Commit: 53d45c4d7a4db12c90a34fbb0cedd1dd2a79a02d URL: no.cgit.repo/commit/?id=53d45c4d7a4db12c90a34fbb0cedd1dd2a79a02d Author: Vinson Lee <vl...@vm...> Date: Fri Dec 24 00:48:29 2010 -0800 Remove unnecessary headers. --- src/glean/environ.cpp | 1 - src/glean/geomrend.cpp | 2 -- src/glean/test.cpp | 2 -- src/glean/tfpexceptions.cpp | 1 - src/glean/tmaskedclear.cpp | 2 -- src/glean/tvtxperf.cpp | 1 - 6 files changed, 0 insertions(+), 9 deletions(-) diff --git a/src/glean/environ.cpp b/src/glean/environ.cpp index 050d9da..41effcc 100644 --- a/src/glean/environ.cpp +++ b/src/glean/environ.cpp @@ -40,7 +40,6 @@ #include <unistd.h> #include <errno.h> #include <stdlib.h> -#include <cstdio> #elif defined(__MS__) #include <stdio.h> diff --git a/src/glean/geomrend.cpp b/src/glean/geomrend.cpp index fceb24d..4d6d085 100644 --- a/src/glean/geomrend.cpp +++ b/src/glean/geomrend.cpp @@ -35,12 +35,10 @@ // methods stuffed in a display list. #include "geomrend.h" -#include "rand.h" #include "glutils.h" #include <algorithm> #include <iostream> #include <cmath> -#include <float.h> #include <cassert> using namespace std; diff --git a/src/glean/test.cpp b/src/glean/test.cpp index 02bd16c..5d178b2 100644 --- a/src/glean/test.cpp +++ b/src/glean/test.cpp @@ -36,11 +36,9 @@ #include <iostream> #include "dsconfig.h" -#include "dsfilt.h" #include "dsurf.h" #include "winsys.h" #include "environ.h" -#include "rc.h" #include "test.h" namespace GLEAN { diff --git a/src/glean/tfpexceptions.cpp b/src/glean/tfpexceptions.cpp index 2038007..acc170f 100644 --- a/src/glean/tfpexceptions.cpp +++ b/src/glean/tfpexceptions.cpp @@ -29,7 +29,6 @@ // Authors: Brian Paul, Keith Whitwell #include "tfpexceptions.h" -#include <cassert> #include <cmath> #define INCLUDE_FPU_CONTROL 0 diff --git a/src/glean/tmaskedclear.cpp b/src/glean/tmaskedclear.cpp index b8fd6f9..a3fa723 100644 --- a/src/glean/tmaskedclear.cpp +++ b/src/glean/tmaskedclear.cpp @@ -29,8 +29,6 @@ // tmaskedclear.cpp: Test color/index masking with glClear. #include "tmaskedclear.h" -#include "rand.h" -#include "image.h" namespace GLEAN { diff --git a/src/glean/tvtxperf.cpp b/src/glean/tvtxperf.cpp index fa5bd87..90f9b33 100644 --- a/src/glean/tvtxperf.cpp +++ b/src/glean/tvtxperf.cpp @@ -31,7 +31,6 @@ #include "tvtxperf.h" #include "geomutil.h" #include "timer.h" -#include "rand.h" #include "image.h" #include "codedid.h" #include "treadpix.h" |
From: Brian P. <br...@us...> - 2010-11-12 14:18:50
|
Module: glean Branch: master Commit: 16137be5f6ff0d13d1920f16047e7d0b18839299 URL: no.cgit.repo/commit/?id=16137be5f6ff0d13d1920f16047e7d0b18839299 Author: Brian Paul <br...@vm...> Date: Fri Nov 12 07:16:26 2010 -0700 pbo: fix glIsBuffer() tests glIsBuffer() should return GL_FALSE if the buffer was generated with glGenBuffers() but never bound with glBindBuffer(). This was incorrect in Mesa until yesteday. Mesa now agrees with AMD, Apple and Intel drivers. NVIDIA is the odd one out. Also, improve error messages and remove another unneeded glIsBuffer() call later. --- src/glean/tpbo.cpp | 8 +++----- 1 files changed, 3 insertions(+), 5 deletions(-) diff --git a/src/glean/tpbo.cpp b/src/glean/tpbo.cpp index 7d86279..85a7dba 100644 --- a/src/glean/tpbo.cpp +++ b/src/glean/tpbo.cpp @@ -200,8 +200,8 @@ bool PBOTest::testSanity(void) glGenBuffersARB_func(1, pbs); - if (glIsBufferARB_func(pbs[0]) != GL_TRUE) { - REPORT_FAILURE("Failed to call glIsBuffersARB"); + if (glIsBufferARB_func(pbs[0]) != GL_FALSE) { + REPORT_FAILURE("glIsBufferARB failed"); return false; } @@ -224,7 +224,7 @@ bool PBOTest::testSanity(void) glDeleteBuffersARB_func(1, pbs); if (glIsBufferARB_func(pbs[0]) == GL_TRUE) { - REPORT_FAILURE("Failed to call glIsBuffersARB"); + REPORT_FAILURE("glIsBufferARB failed"); return false; } @@ -615,8 +615,6 @@ bool PBOTest::testTexImage(void) breakCOWTexture++) { if (useTexUnpackBuffer) { glGenBuffersARB_func(1, unpack_pb); - if (glIsBufferARB_func(unpack_pb[0]) == false) - return false; glBindBufferARB_func(GL_PIXEL_UNPACK_BUFFER_ARB, unpack_pb[0]); glBufferDataARB_func(GL_PIXEL_UNPACK_BUFFER_ARB, TEXSIZE * TEXSIZE * 3 * sizeof(GLfloat), NULL, |
From: Vinson L. <vin...@us...> - 2010-11-04 23:41:32
|
Module: glean Branch: master Commit: f6214d6efabce33e105451f863978fc4e4899e74 URL: no.cgit.repo/commit/?id=f6214d6efabce33e105451f863978fc4e4899e74 Author: Vinson Lee <vl...@vm...> Date: Thu Nov 4 16:38:51 2010 -0700 vertarraybgra: Use gl[En|Dis]ableClientState for client-side capabilities. Fixes GL_INVALID_ENUM errors on Mac OS X. --- src/glean/tvertarraybgra.cpp | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/glean/tvertarraybgra.cpp b/src/glean/tvertarraybgra.cpp index f13b461..fede919 100644 --- a/src/glean/tvertarraybgra.cpp +++ b/src/glean/tvertarraybgra.cpp @@ -140,18 +140,18 @@ void VertArrayBGRATest::renderPoints(bool useBGRA) { glVertexPointer(2, GL_FLOAT, 0, mPos); - glEnable(GL_VERTEX_ARRAY); + glEnableClientState(GL_VERTEX_ARRAY); if (useBGRA) glColorPointer(GL_BGRA, GL_UNSIGNED_BYTE, 0, mBGRA); else glColorPointer(4, GL_UNSIGNED_BYTE, 0, mRGBA); - glEnable(GL_COLOR_ARRAY); + glEnableClientState(GL_COLOR_ARRAY); glDrawArrays(GL_POINTS, 0, NUM_POINTS); - glDisable(GL_VERTEX_ARRAY); - glDisable(GL_COLOR_ARRAY); + glDisableClientState(GL_VERTEX_ARRAY); + glDisableClientState(GL_COLOR_ARRAY); } |
From: Vinson L. <vin...@us...> - 2010-11-04 23:01:50
|
Module: glean Branch: master Commit: f835584771fbb6b28068e64c2863ab8662b1c29e URL: no.cgit.repo/commit/?id=f835584771fbb6b28068e64c2863ab8662b1c29e Author: Vinson Lee <vl...@vm...> Date: Thu Nov 4 16:00:15 2010 -0700 Initialize member variable _pixels in class Image. Fixes a valgrind uninitialized value error. --- src/libs/image/misc.cpp | 8 +++++++- 1 files changed, 7 insertions(+), 1 deletions(-) diff --git a/src/libs/image/misc.cpp b/src/libs/image/misc.cpp index 1762670..f770d8f 100644 --- a/src/libs/image/misc.cpp +++ b/src/libs/image/misc.cpp @@ -175,7 +175,13 @@ Image::pixels(char* p) { void Image::reserve() { pixels(0); // deallocate old pixel array - pixels(new char[height() * rowSizeInBytes()]); + + const int size = height() * rowSizeInBytes(); + char * const p = new char[size]; + for (int i = 0; i < size; i++) { + p[i] = 0; + } + pixels(p); } // Image::reserve /////////////////////////////////////////////////////////////////////////////// |
From: Vinson L. <vin...@us...> - 2010-10-08 19:28:37
|
Module: glean Branch: master Commit: e80d526c2410e4ebe7dfc8cd57f621d19ddf3f24 URL: no.cgit.repo/commit/?id=e80d526c2410e4ebe7dfc8cd57f621d19ddf3f24 Author: Vinson Lee <vl...@vm...> Date: Fri Oct 8 12:25:57 2010 -0700 glsl1: Replace "/" with "-" in test names. "Fixes" the HTML output from piglit-summary-html.py. --- src/glean/tglsl1.cpp | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/glean/tglsl1.cpp b/src/glean/tglsl1.cpp index 5d46353..8f2ceae 100644 --- a/src/glean/tglsl1.cpp +++ b/src/glean/tglsl1.cpp @@ -1205,7 +1205,7 @@ static const ShaderProgram Programs[] = { }, { - "simple if/else statement, fragment shader", + "simple if-else statement, fragment shader", NO_VERTEX_SHADER, "void main() { \n" " // this should always be false \n" @@ -1221,7 +1221,7 @@ static const ShaderProgram Programs[] = { }, { - "simple if/else statement, vertex shader", + "simple if-else statement, vertex shader", "uniform vec4 uniform1; \n" "void main() { \n" " gl_Position = ftransform(); \n" @@ -2101,7 +2101,7 @@ static const ShaderProgram Programs[] = { // Note: var3 = gl_Color // Note: var1 = -var2 // Final fragment color should be equal to gl_Color - "varying variable read/write", + "varying variable read-write", // vertex program: "varying vec4 var1, var2, var3; \n" "void main() { \n" @@ -3404,7 +3404,7 @@ static const ShaderProgram Programs[] = { }, { - "if (boolean/scalar) check", + "if (boolean-scalar) check", NO_VERTEX_SHADER, "void main() { \n" " vec3 v; \n" |
From: Brian P. <br...@us...> - 2010-09-29 15:37:59
|
Module: glean Branch: master Commit: d0928df9ffac0dc0ff6539556f48ca2fcb6b7b42 URL: no.cgit.repo/commit/?id=d0928df9ffac0dc0ff6539556f48ca2fcb6b7b42 Author: Brian Paul <br...@vm...> Date: Wed Sep 29 09:35:34 2010 -0600 fbo: tweak vertex pos for line drawing This compensates for slight differences in line rasterization from one driver to another and allows more drivers to pass. --- src/glean/tfbo.cpp | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/src/glean/tfbo.cpp b/src/glean/tfbo.cpp index f24fe7f..886facc 100644 --- a/src/glean/tfbo.cpp +++ b/src/glean/tfbo.cpp @@ -675,7 +675,7 @@ FBOTest::testRender2SingleTexture(void) case GL_TEXTURE_1D: glBegin(GL_LINES); glVertex3f(TEXSIZE / 4, 0.5, 0.3); - glVertex3f(TEXSIZE * 5 / 8, 0.5, 0.3); + glVertex3f(TEXSIZE * 5 / 8 + 0.25, 0.5, 0.3); glEnd(); break; case GL_TEXTURE_2D: |
From: Brian P. <br...@us...> - 2010-09-27 22:02:11
|
Module: glean Branch: master Commit: 9682c3021140961d26c4c6b1dcc1d148eb137cd2 URL: no.cgit.repo/commit/?id=9682c3021140961d26c4c6b1dcc1d148eb137cd2 Author: Eric Anholt <er...@an...> Date: Mon Sep 27 15:57:33 2010 -0600 glean/tfbo: Put lines in the middle of the pixel, not the edge. GL lets the implementation be +/- a pixel on line location. It was getting rounded down on the intel driver, so the lines weren't drawn to 1D FBOs. This should have a better chance on drivers in general. (cherry-picked from piglit commit 9fdd8d9d1fc56178c950ba8fbca8abfb2e9d8b96) --- src/glean/tfbo.cpp | 12 ++++++------ 1 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/glean/tfbo.cpp b/src/glean/tfbo.cpp index 591e78d..f24fe7f 100644 --- a/src/glean/tfbo.cpp +++ b/src/glean/tfbo.cpp @@ -674,8 +674,8 @@ FBOTest::testRender2SingleTexture(void) switch (textureModes[mode]) { case GL_TEXTURE_1D: glBegin(GL_LINES); - glVertex3f(TEXSIZE / 4, 0, 0.3); - glVertex3f(TEXSIZE * 5 / 8, 0, 0.3); + glVertex3f(TEXSIZE / 4, 0.5, 0.3); + glVertex3f(TEXSIZE * 5 / 8, 0.5, 0.3); glEnd(); break; case GL_TEXTURE_2D: @@ -704,8 +704,8 @@ FBOTest::testRender2SingleTexture(void) switch (textureModes[mode]) { case GL_TEXTURE_1D: glBegin(GL_LINES); - glVertex3f(TEXSIZE / 2, 0, 0.3); - glVertex3f(TEXSIZE * 7 / 8, 0, 0.3); + glVertex3f(TEXSIZE / 2, 0.5, 0.3); + glVertex3f(TEXSIZE * 7 / 8, 0.5, 0.3); glEnd(); break; case GL_TEXTURE_2D: @@ -735,8 +735,8 @@ FBOTest::testRender2SingleTexture(void) switch (textureModes[mode]) { case GL_TEXTURE_1D: glBegin(GL_LINES); - glVertex3f(0, 0, 0.2); - glVertex3f(TEXSIZE, 0, 0.2); + glVertex3f(0, 0.5, 0.2); + glVertex3f(TEXSIZE, 0.5, 0.2); glEnd(); break; case GL_TEXTURE_2D: |
From: Brian P. <br...@us...> - 2010-09-27 22:02:07
|
Module: glean Branch: master Commit: 1830b8ae997f0312940fece082c18d98c44ac530 URL: no.cgit.repo/commit/?id=1830b8ae997f0312940fece082c18d98c44ac530 Author: Eric Anholt <er...@an...> Date: Mon Sep 27 15:55:30 2010 -0600 glean/tfbo: Properly clean up when the driver reports unsupported. Fixes spurious test failures on the intel driver. (cherry-picked from piglit 35122d69307f0b9c88bc143715f616be80ac5cae) --- src/glean/tfbo.cpp | 11 +++++++++-- 1 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/glean/tfbo.cpp b/src/glean/tfbo.cpp index 8b80ded..591e78d 100644 --- a/src/glean/tfbo.cpp +++ b/src/glean/tfbo.cpp @@ -651,9 +651,16 @@ FBOTest::testRender2SingleTexture(void) } - if (status != GL_FRAMEBUFFER_COMPLETE_EXT) + if (status != GL_FRAMEBUFFER_COMPLETE_EXT) { + glDeleteTextures(1, textures); + if (useFramebuffer) + glDeleteFramebuffersEXT_func(1, fbs); + if (depthBuffer) + glDeleteRenderbuffersEXT_func(1, depth_rb); + if (stencilBuffer) + glDeleteRenderbuffersEXT_func(1, stencil_rb); continue; - + } // // Render, test the results |
From: Brian P. <br...@us...> - 2010-09-23 01:15:30
|
Module: glean Branch: master Commit: 75589a36e5cc526fb35ef37c91d4616283ecc5f7 URL: no.cgit.repo/commit/?id=75589a36e5cc526fb35ef37c91d4616283ecc5f7 Author: Brian Paul <br...@vm...> Date: Wed Sep 22 19:12:34 2010 -0600 pointAtten: improve measureSize() function Before, we read one row of pixels where we expected the point to be in order to compute the point size. With some drivers single pixel points might be positioned one above or below the expected position thus causing the test to fail. Now, read thee rows of pixels to make sure we don't miss the point. The purpose of this test is to measure attenuated point size, not exact positioning of single pixel points. --- src/glean/tpointatten.cpp | 44 ++++++++++++++++++++++++++++++++------------ 1 files changed, 32 insertions(+), 12 deletions(-) diff --git a/src/glean/tpointatten.cpp b/src/glean/tpointatten.cpp index f5ce13e..4ff1c45 100644 --- a/src/glean/tpointatten.cpp +++ b/src/glean/tpointatten.cpp @@ -134,16 +134,30 @@ PointAttenuationTest::measureSize(GLfloat yPos) const int x = 0; int y = (int) (yNdc * windowHeight); int w = windowWidth; - int h = 1; - GLfloat image[windowWidth * 3]; - // Read row of pixels and add up colors, which should be white - // or shades of gray if smoothing is enabled. - glReadPixels(x, y, w, h, GL_RGB, GL_FLOAT, image); - float sum = 0.0; - for (int i = 0; i < w; i++) { - sum += (image[i*3+0] + image[i*3+1] + image[i*3+2]) / 3.0; + int h = 3; + GLfloat image[3 * windowWidth * 3]; // three rows of RGB values + + // Read three row of pixels and add up colors in each row. + // Use the row with the greatest sum. This helps gives us a bit + // of leeway in vertical point positioning. + // Colors should be white or shades of gray if smoothing is enabled. + glReadPixels(x, y - 1, w, h, GL_RGB, GL_FLOAT, image); + + float sum[3] = { 0.0, 0.0, 0.0 }; + for (int j = 0; j < 3; j++) { + for (int i = 0; i < w; i++) { + int k = j * 3 * w + i * 3; + sum[j] += (image[k+0] + image[k+1] + image[k+2]) / 3.0; + } } - return sum; + + // find max of the row sums + if (sum[0] >= sum[1] && sum[0] >= sum[2]) + return sum[0]; + else if (sum[1] >= sum[0] && sum[1] >= sum[2]) + return sum[1]; + else + return sum[2]; } @@ -152,13 +166,13 @@ PointAttenuationTest::testPointRendering(GLboolean smooth) { // epsilon is the allowed size difference in pixels between the // expected and actual rendering. - const GLfloat epsilon = smooth ? 1.5 : 1.0; + const GLfloat epsilon = (smooth ? 1.5 : 1.0) + 0.0; GLfloat atten[3]; int count = 0; // Enable front buffer if you want to see the rendering - //glDrawBuffer(GL_FRONT); - //glReadBuffer(GL_FRONT); + glDrawBuffer(GL_FRONT); + glReadBuffer(GL_FRONT); if (smooth) { glEnable(GL_POINT_SMOOTH); @@ -192,6 +206,8 @@ PointAttenuationTest::testPointRendering(GLboolean smooth) } glEnd(); + glFinish(); + // test the column of points for (float z = -6.0; z <= 6.0; z += 1.0) { count++; @@ -205,6 +221,10 @@ PointAttenuationTest::testPointRendering(GLboolean smooth) expected, actual); return false; } + else if(0){ + printf("pass z=%f exp=%f act=%f\n", + z, expected, actual); + } } } } |
From: Brian P. <br...@us...> - 2010-09-22 17:03:08
|
Module: glean Branch: master Commit: 390b0392f25dc85080a9a5c2a69926c290873e38 URL: no.cgit.repo/commit/?id=390b0392f25dc85080a9a5c2a69926c290873e38 Author: Brian Paul <br...@vm...> Date: Wed Sep 22 11:01:23 2010 -0600 glsl1: fix the texcoord varying test Redeclare the gl_TexCoord[] array with a specific size, per the GLSL spec. Note that the GLSL Orange book says that gl_TexCoord[] is declared with gl_MaxTextureCoords size while the GLSL 1.x specs declare it unsized. --- src/glean/tglsl1.cpp | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/src/glean/tglsl1.cpp b/src/glean/tglsl1.cpp index 79844a8..5d46353 100644 --- a/src/glean/tglsl1.cpp +++ b/src/glean/tglsl1.cpp @@ -4047,12 +4047,14 @@ static const ShaderProgram Programs[] = { // Does the linker correctly recognize that texcoord[1] is // written by the vertex shader and read by the fragment shader? // vert shader: + "varying vec4 gl_TexCoord[4]; \n" "void main() { \n" " int i = 1; \n" " gl_TexCoord[i] = vec4(0.5, 0, 0, 0); \n" " gl_Position = ftransform(); \n" "} \n", // frag shader: + "varying vec4 gl_TexCoord[4]; \n" "void main() { \n" " gl_FragColor = gl_TexCoord[1]; \n" "} \n", |