Hello community,

here is the log from the commit of package bam for openSUSE:Factory checked in 
at 2018-03-14 19:40:14
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/bam (Old)
 and      /work/SRC/openSUSE:Factory/.bam.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "bam"

Wed Mar 14 19:40:14 2018 rev:3 rq:586455 version:0.5.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/bam/bam.changes  2016-09-21 18:50:26.000000000 
+0200
+++ /work/SRC/openSUSE:Factory/.bam.new/bam.changes     2018-03-14 
19:40:38.901769689 +0100
@@ -1,0 +2,11 @@
+Fri Feb  2 16:03:25 UTC 2018 - [email protected]
+
+- update to version 0.5.1
+  * Fixed issues with CC environment variables
+  * Out of bounds fixed to debug output and output cache
+  * XLC compiler support
+  * Fixed parallel build with make
+- disable tests
+- enforce Lua 5.3
+
+-------------------------------------------------------------------
@@ -16 +27,5 @@
-
+  * Upgraded to Lua 5.3.3 from 5.1
+  * More accurate cache to reduce recompiles when switching parameters
+  * Make use of CC environment variables when available by default
+  * Build should now be reproducable and not add date or timestamps into the 
executable
+  * Bug-fixes

Old:
----
  bam-0.5.0.tar.gz

New:
----
  bam-0.5.1.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ bam.spec ++++++
--- /var/tmp/diff_new_pack.dErUFt/_old  2018-03-14 19:40:39.969731753 +0100
+++ /var/tmp/diff_new_pack.dErUFt/_new  2018-03-14 19:40:39.981731327 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package bam
 #
-# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -17,7 +17,7 @@
 
 
 Name:           bam
-Version:        0.5.0
+Version:        0.5.1
 Release:        0
 Summary:        Lua-based build system
 License:        Zlib
@@ -28,7 +28,7 @@
 BuildRequires:  pandoc
 BuildRequires:  pkgconfig
 BuildRequires:  python
-BuildRequires:  pkgconfig(lua)
+BuildRequires:  pkgconfig(lua5.3)
 
 %description
 Bam is a build system focusing on arbitrary build scripts. Instead of
@@ -39,7 +39,7 @@
 
 %build
 export CFLAGS="%{optflags}"
-make -j1
+make %{?_smp_mflags}
 
 %install
 %make_install
@@ -47,9 +47,6 @@
 mkdir -p %{buildroot}%{_mandir}/man1
 pandoc docs/bam.1.txt -s -t man > %{buildroot}%{_mandir}/man1/bam.1
 
-%check
-make test
-
 %files
 %defattr(-,root,root)
 %doc COPYING README.md

++++++ bam-0.5.0.tar.gz -> bam-0.5.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/bam-0.5.0/CHANGELOG new/bam-0.5.1/CHANGELOG
--- old/bam-0.5.0/CHANGELOG     1970-01-01 01:00:00.000000000 +0100
+++ new/bam-0.5.1/CHANGELOG     2016-10-29 08:16:41.000000000 +0200
@@ -0,0 +1,14 @@
+Release 0.5.1
+       - Fixed issues with CC environment variables
+       - Out of bounds fixed to debug output and output cache ( RyanLucchese )
+       - Solaris compiler support ( RyanLucchese )
+       - XLC compiler support ( RyanLucchese )
+       - Fixed parallel build with make ( hasufell )
+       - Syntax hilighting for the readme ( mailaender )
+
+Release 0.5.0
+       - Upgraded to Lua 5.3.3 from 5.1
+       - More accurate cache to reduce recompiles when switching parameters
+       - Make use of CC environment variables when available by default
+       - Build should now be reproducable and not add date or timestamps into 
the executable
+       - Many more changes that isn't listed here
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/bam-0.5.0/Makefile new/bam-0.5.1/Makefile
--- old/bam-0.5.0/Makefile      2016-06-17 07:24:45.000000000 +0200
+++ new/bam-0.5.1/Makefile      2016-10-29 08:16:41.000000000 +0200
@@ -16,7 +16,7 @@
 
 
 # objects
-TARGETS = txt2c internal_base bam
+TARGETS = bam
 BAM_OBJ = $(patsubst %.c,%.o,$(wildcard src/*.c))
 TXT2C_LUA = $(wildcard src/*.lua)
 
@@ -24,14 +24,14 @@
 # make rules
 all: $(TARGETS)
 
-txt2c: src/tools/txt2c
+src/tools/txt2c: src/tools/txt2c.c
 
-internal_base: src/internal_base.h
-
-src/internal_base.h:
+src/internal_base.h: src/tools/txt2c
        src/tools/txt2c $(TXT2C_LUA) > src/internal_base.h
 
-bam: txt2c internal_base $(BAM_OBJ)
+src/main.o: src/internal_base.h src/main.c
+
+bam: $(BAM_OBJ)
        $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(BAM_OBJ) $(LIBS)
 
 test: $(TARGETS)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/bam-0.5.0/README.md new/bam-0.5.1/README.md
--- old/bam-0.5.0/README.md     2016-06-17 07:24:45.000000000 +0200
+++ new/bam-0.5.1/README.md     2016-10-29 08:16:41.000000000 +0200
@@ -5,7 +5,7 @@
 
 This section is a short introduction to bam and is designed to get you started 
quickly.
 
-```
+```lua
 1: settings = NewSettings()
 2: settings.cc.defines:Add("MYDEFINE")
 3: source = Collect("src/*.c")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/bam-0.5.0/make_aix.sh new/bam-0.5.1/make_aix.sh
--- old/bam-0.5.0/make_aix.sh   2016-06-17 07:24:45.000000000 +0200
+++ new/bam-0.5.1/make_aix.sh   2016-10-29 08:16:41.000000000 +0200
@@ -1,4 +1,4 @@
 #!/bin/sh
 xlc_r src/tools/txt2c.c -o src/tools/txt2c
-src/tools/txt2c src/base.lua src/tools.lua src/driver_gcc.lua 
src/driver_cl.lua src/driver_clang.lua > src/internal_base.h
+src/tools/txt2c src/base.lua src/tools.lua src/driver_gcc.lua 
src/driver_cl.lua src/driver_clang.lua src/driver_solstudio.lua 
src/driver_xlc.lua > src/internal_base.h
 xlc_r -D_ALL_SOURCE -D_INCLUDE_POSIX_SOURCE src/*.c src/lua/*.c -o bam -I 
src/lua -lm -lpthread -ldl -O2 $*
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/bam-0.5.0/make_beos.sh new/bam-0.5.1/make_beos.sh
--- old/bam-0.5.0/make_beos.sh  2016-06-17 07:24:45.000000000 +0200
+++ new/bam-0.5.1/make_beos.sh  2016-10-29 08:16:41.000000000 +0200
@@ -1,4 +1,4 @@
 #!/bin/sh
 gcc -Wall -ansi -pedantic src/tools/txt2c.c -o src/tools/txt2c
-src/tools/txt2c src/base.lua src/tools.lua src/driver_gcc.lua 
src/driver_clang.lua src/driver_cl.lua > src/internal_base.h
+src/tools/txt2c src/base.lua src/tools.lua src/driver_gcc.lua 
src/driver_clang.lua src/driver_cl.lua src/driver_solstudio.lua 
src/driver_xlc.lua > src/internal_base.h
 gcc -Wall -ansi -pedantic src/lua/*.c src/*.c -o bam -I src/lua -lpthread -O2 
$*
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/bam-0.5.0/make_hpux.sh new/bam-0.5.1/make_hpux.sh
--- old/bam-0.5.0/make_hpux.sh  2016-06-17 07:24:45.000000000 +0200
+++ new/bam-0.5.1/make_hpux.sh  2016-10-29 08:16:41.000000000 +0200
@@ -1,4 +1,4 @@
 #!/bin/sh
 cc src/tools/txt2c.c -o src/tools/txt2c
-src/tools/txt2c src/base.lua src/tools.lua src/driver_gcc.lua 
src/driver_cl.lua src/driver_clang.lua > src/internal_base.h
+src/tools/txt2c src/base.lua src/tools.lua src/driver_gcc.lua 
src/driver_cl.lua src/driver_clang.lua src/driver_solstudio.lua 
src/driver_xlc.lua > src/internal_base.h
 cc -D_ALL_SOURCE -D_INCLUDE_POSIX_SOURCE src/*.c src/lua/*.c -o bam -I src/lua 
-lm -lpthread -ldl -mt +DD64 $*
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/bam-0.5.0/make_solaris.sh 
new/bam-0.5.1/make_solaris.sh
--- old/bam-0.5.0/make_solaris.sh       2016-06-17 07:24:45.000000000 +0200
+++ new/bam-0.5.1/make_solaris.sh       2016-10-29 08:16:41.000000000 +0200
@@ -1,4 +1,4 @@
 #!/bin/sh
 cc src/tools/txt2c.c -o src/tools/txt2c
-src/tools/txt2c src/base.lua src/tools.lua src/driver_gcc.lua 
src/driver_cl.lua src/driver_cc.lua src/driver_clang.lua > src/internal_base.h
-cc src/*.c src/lua/*.c -o bam -I src/lua -lm -lrt -lpthread -ldl -mt -O2 $*
+src/tools/txt2c src/base.lua src/tools.lua src/driver_gcc.lua 
src/driver_cl.lua src/driver_clang.lua src/driver_solstudio.lua 
src/driver_xlc.lua > src/internal_base.h
+cc src/*.c src/lua/*.c -o bam -I src/lua -lm -lrt -lpthread -ldl -mt -O2 
-std=c99 $*
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/bam-0.5.0/make_unix.sh new/bam-0.5.1/make_unix.sh
--- old/bam-0.5.0/make_unix.sh  2016-06-17 07:24:45.000000000 +0200
+++ new/bam-0.5.1/make_unix.sh  2016-10-29 08:16:41.000000000 +0200
@@ -24,5 +24,5 @@
 # the actual compile
 echo "compiling using $CC..." >&2
 $CC -Wall -pedantic src/tools/txt2c.c -o src/tools/txt2c
-src/tools/txt2c src/base.lua src/tools.lua src/driver_gcc.lua 
src/driver_clang.lua src/driver_cl.lua > src/internal_base.h
+src/tools/txt2c src/base.lua src/tools.lua src/driver_gcc.lua 
src/driver_clang.lua src/driver_cl.lua src/driver_solstudio.lua 
src/driver_xlc.lua > src/internal_base.h
 $CC -Wall -pedantic src/*.c src/lua/*.c -o bam -I src/lua -lm -lpthread $ldl 
-O2 -rdynamic $*
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/bam-0.5.0/make_win32_dmc.bat 
new/bam-0.5.1/make_win32_dmc.bat
--- old/bam-0.5.0/make_win32_dmc.bat    2016-06-17 07:24:45.000000000 +0200
+++ new/bam-0.5.1/make_win32_dmc.bat    2016-10-29 08:16:41.000000000 +0200
@@ -1,7 +1,7 @@
 @REM --- Batch file that builds bam using Digital Mars C Compiler
 
 @dmc -L/NOL -A src\tools\txt2c.c -o src\tools\txt2c.exe
-@src\tools\txt2c.exe src\base.lua src\tools.lua src\driver_gcc.lua 
src/driver_clang.lua src\driver_cl.lua > src\internal_base.h
+@src\tools\txt2c.exe src\base.lua src\tools.lua src\driver_gcc.lua 
src/driver_clang.lua src\driver_cl.lua src\driver_solstudio.lua 
src\driver_xlc.lua > src\internal_base.h
 
 @REM ------ Generate fileliest
 @move src\tools\txt2c.c src\tools\txt2c.c.temp > nul
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/bam-0.5.0/make_win32_mingw.bat 
new/bam-0.5.1/make_win32_mingw.bat
--- old/bam-0.5.0/make_win32_mingw.bat  2016-06-17 07:24:45.000000000 +0200
+++ new/bam-0.5.1/make_win32_mingw.bat  2016-10-29 08:16:41.000000000 +0200
@@ -1,3 +1,3 @@
 @gcc -ansi -pedantic -Wall src/tools/txt2c.c -o src/tools/txt2c
-@src\tools\txt2c.exe src/base.lua src/tools.lua src/driver_gcc.lua 
src/driver_clang.lua src/driver_cl.lua > src/internal_base.h
+@src\tools\txt2c.exe src/base.lua src/tools.lua src/driver_gcc.lua 
src/driver_clang.lua src/driver_cl.lua src/driver_solstudio.lua 
src/driver_xlc.lua > src/internal_base.h
 @gcc -pedantic -Wall src/*.c src/lua/*.c -o bam -I src/lua/
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/bam-0.5.0/make_win32_msvc.bat 
new/bam-0.5.1/make_win32_msvc.bat
--- old/bam-0.5.0/make_win32_msvc.bat   2016-06-17 07:24:45.000000000 +0200
+++ new/bam-0.5.1/make_win32_msvc.bat   2016-10-29 08:16:41.000000000 +0200
@@ -45,7 +45,7 @@
 :compile
 @echo === building bam ===
 @cl /D_CRT_SECURE_NO_DEPRECATE /O2 /nologo src/tools/txt2c.c 
/Fesrc/tools/txt2c.exe
-@src\tools\txt2c src/base.lua src/tools.lua src/driver_gcc.lua 
src/driver_clang.lua src/driver_cl.lua > src\internal_base.h
+@src\tools\txt2c src/base.lua src/tools.lua src/driver_gcc.lua 
src/driver_clang.lua src/driver_cl.lua src/driver_solstudio.lua 
src/driver_xlc.lua > src\internal_base.h
 
 @REM /DLUA_BUILD_AS_DLL = export lua functions
 @REM /W3 = Warning level 3
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/bam-0.5.0/make_win64_msvc.bat 
new/bam-0.5.1/make_win64_msvc.bat
--- old/bam-0.5.0/make_win64_msvc.bat   2016-06-17 07:24:45.000000000 +0200
+++ new/bam-0.5.1/make_win64_msvc.bat   2016-10-29 08:16:41.000000000 +0200
@@ -45,7 +45,7 @@
 :compile
 @echo === building bam ===
 @cl /D_CRT_SECURE_NO_DEPRECATE /O2 /nologo src/tools/txt2c.c 
/Fesrc/tools/txt2c.exe
-@src\tools\txt2c src/base.lua src/tools.lua src/driver_gcc.lua 
src/driver_clang.lua src/driver_cl.lua > src\internal_base.h
+@src\tools\txt2c src/base.lua src/tools.lua src/driver_gcc.lua 
src/driver_clang.lua src/driver_cl.lua src/driver_solstudio.lua 
src/driver_xlc.lua > src\internal_base.h
 
 @REM /DLUA_BUILD_AS_DLL = export lua functions
 @REM /W3 = Warning level 3
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/bam-0.5.0/src/cache.c new/bam-0.5.1/src/cache.c
--- old/bam-0.5.0/src/cache.c   2016-06-17 07:24:45.000000000 +0200
+++ new/bam-0.5.1/src/cache.c   2016-10-29 08:16:41.000000000 +0200
@@ -605,7 +605,7 @@
        unsigned high = outputcache->count;
        unsigned index;
 
-       if(!outputcache)
+       if(!outputcache || outputcache->count == 0)
                return NULL;
 
        while(low < high)
@@ -624,7 +624,7 @@
                        return &outputcache->info[index];
        }
 
-       if(hashid == outputcache->info[low].hashid)
+       if(low < outputcache->count && hashid == outputcache->info[low].hashid)
                return &outputcache->info[low];
 
        return NULL;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/bam-0.5.0/src/driver_solstudio.lua 
new/bam-0.5.1/src/driver_solstudio.lua
--- old/bam-0.5.0/src/driver_solstudio.lua      1970-01-01 01:00:00.000000000 
+0100
+++ new/bam-0.5.1/src/driver_solstudio.lua      2016-10-29 08:16:41.000000000 
+0200
@@ -0,0 +1,28 @@
+function DriverSolarisStudio_CTest(code, options)
+       local f = io.open("_test.c", "w")
+       f:write(code)
+       f:write("\n")
+       f:close()
+       local ret = ExecuteSilent("cc _test.c -o _test " .. options)
+       os.remove("_test.c")
+       os.remove("_test")
+       return ret==0
+end
+
+function SetDriversSolarisStudio(settings)
+       SetDriversGCC(settings)
+
+       if settings.cc then
+               settings.cc.exe_c = "suncc"
+               settings.cc.exe_cxx = "sunCC"
+               settings.cc.DriverCTest = DriverSolarisStudio_CTest
+       end
+
+       if settings.link then
+               settings.link.exe = "sunCC"
+       end
+
+       if settings.dll then
+               settings.dll.exe = "sunCC"
+       end
+end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/bam-0.5.0/src/driver_xlc.lua 
new/bam-0.5.1/src/driver_xlc.lua
--- old/bam-0.5.0/src/driver_xlc.lua    1970-01-01 01:00:00.000000000 +0100
+++ new/bam-0.5.1/src/driver_xlc.lua    2016-10-29 08:16:41.000000000 +0200
@@ -0,0 +1,107 @@
+
+------------------------ C/C++ cc DRIVER ------------------------
+function DriverXLC_Get(exe, cache_name, flags_name)
+       return function(label, output, input, settings)
+               local cache = settings.cc[cache_name]
+               if settings.invoke_count ~= cache.nr then
+                       cache.nr = settings.invoke_count
+                       local cc = settings.cc
+                       local d = TableToString(cc.defines, "-D", " ")
+                       local i = TableToString(cc.includes, '-I "', '" ')
+                       local i = i .. TableToString(cc.systemincludes, 
'-isystem "', '" ')
+                       local i = i .. TableToString(cc.frameworks, '-framework 
', ' ')
+                       local f = cc.flags:ToString()
+                       f = f .. cc[flags_name]:ToString()
+                       if settings.debug > 0 then f = f .. "-g " end
+                       if settings.optimize > 0 then f = f .. "-O2 " end
+
+                       cache.str = cc[exe] .. " " .. f .. "-c " .. d .. i .. " 
-o "
+               end
+
+               AddJob(output, label, cache.str .. '"' .. output .. '" "' .. 
input .. '"')
+       end
+end
+
+function DriverXLC_CTest(code, options)
+       local f = io.open("_test.c", "w")
+       f:write(code)
+       f:write("\n")
+       f:close()
+       local ret = ExecuteSilent("xlc_r _test.c -o _test " .. options)
+       os.remove("_test.c")
+       os.remove("_test")
+       return ret==0
+end
+
+------------------------ LINK cc DRIVER ------------------------
+
+function DriverXLC_Link(label, output, inputs, settings)
+       local e = settings.link.exe .. " -o " .. output
+       local e = e .. " " .. settings.link.inputflags .. " " .. 
TableToString(inputs, '"', '" ')
+       local e = e .. TableToString(settings.link.extrafiles, '"', '" ')
+       local e = e .. TableToString(settings.link.libpath, '-L"', '" ')
+       local e = e .. TableToString(settings.link.libs, '-l"', '" ')
+       local e = e .. TableToString(settings.link.frameworkpath, '-F', ' ')
+       local e = e .. TableToString(settings.link.frameworks, '-framework ', ' 
')
+       local e = e .. settings.link.flags:ToString()
+       AddJob(output, label, e)
+end
+
+------------------------ LIB cc DRIVER ------------------------
+
+function DriverXLC_Lib(output, inputs, settings)
+       local e = "rm -f " .. output .. " 2> /dev/null; "
+       local e = e .. settings.lib.exe .. " -Xany rcu " .. output
+       local e = e .. " " .. TableToString(inputs, '', ' ') .. 
settings.lib.flags:ToString()
+       return e
+end
+
+------------------------ DLL cc DRIVER ------------------------
+
+function DriverXLC_DLL(label, output, inputs, settings)
+       local shared_flags = ""
+
+       shared_flags = " -qmkshrobj"
+
+       local e = settings.dll.exe .. shared_flags .. " -o " .. output
+       local e = e .. " " .. settings.dll.inputflags .. " " .. 
TableToString(inputs, '"', '" ')
+       local e = e .. TableToString(settings.dll.extrafiles, '"', '" ')
+       local e = e .. TableToString(settings.dll.libpath, '-L"', '" ')
+       local e = e .. TableToString(settings.dll.libs, '-l"', '" ')
+       local e = e .. TableToString(settings.dll.frameworkpath, '-F', ' ')
+       local e = e .. TableToString(settings.dll.frameworks, '-framework ', ' 
')
+       local e = e .. settings.dll.flags:ToString()
+       AddJob(output, label, e)
+end
+
+function SetDriversXLC(settings)
+       if settings.cc then
+               settings.cc.extension = ".o"
+               settings.cc.exe_c = "xlc_r"
+               settings.cc.exe_cxx = "xlC_r"
+               settings.cc.DriverCTest = DriverXLC_CTest
+               settings.cc.DriverC = DriverXLC_Get("exe_c", "_c_cache", 
"flags_c")
+               settings.cc.DriverCXX = DriverXLC_Get("exe_cxx", "_cxx_cache", 
"flags_cxx")
+       end
+
+       if settings.link then
+               settings.link.extension = ""
+               settings.link.exe = settings.cc.exe_cxx
+               settings.link.Driver = DriverXLC_Link
+       end
+
+       if settings.lib then
+               settings.lib.prefix = "lib"
+               settings.lib.extension = ".a"
+               settings.lib.exe = "ar"
+               settings.lib.Driver = DriverXLC_Lib
+       end
+
+       if settings.dll then
+               settings.dll.prefix = "lib"
+               settings.dll.extension = ".so"
+               settings.dll.extension = ".so"
+               settings.dll.exe = settings.cc.exe_cxx
+               settings.dll.Driver = DriverXLC_DLL
+       end
+end
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/bam-0.5.0/src/node.c new/bam-0.5.1/src/node.c
--- old/bam-0.5.0/src/node.c    2016-06-17 07:24:45.000000000 +0200
+++ new/bam-0.5.1/src/node.c    2016-10-29 08:16:41.000000000 +0200
@@ -655,13 +655,26 @@
        printf("}\n");
 }
 
+const char* dirty_flag_name(int flag)
+{
+       switch (flag)
+       {
+               case NODEDIRTY_MISSING: return "MI";
+               case NODEDIRTY_CMDHASH: return "CH";
+               case NODEDIRTY_DEPDIRTY: return "DD";
+               case NODEDIRTY_DEPNEWER: return "DN";
+               case NODEDIRTY_GLOBALSTAMP: return "GS";
+               case NODEDIRTY_FORCED: return "FO";
+               default: return "--";
+       }
+}
+
 void node_debug_dump_jobs(struct GRAPH *graph)
 {
        struct NODELINK *link;
        struct STRINGLINK *strlink;
        struct JOB *job = graph->firstjob;
 
-       static const char *dirtyflag[] = {"--", "MI", "CH", "DD", "DN", "GS", 
"FO"};
        printf("MI = Missing CH = Command hash dirty, DD = Dependency dirty\n");
        printf("DN = Dependency is newer, GS = Global stamp is newer, FO = 
Forced dirty\n");
        printf("Dirty Prio %-30s Command\n", "Label");
@@ -670,12 +683,12 @@
                printf(" %s   %4d %-30s %s\n", "  ", job->priority, job->label, 
job->cmdline);
                
                for(link = job->firstoutput; link; link = link->next)
-                       printf(" %s          OUTPUT %-30s\n", 
dirtyflag[link->node->dirty], link->node->filename);
+                       printf(" %s          OUTPUT %-30s\n", 
dirty_flag_name(link->node->dirty), link->node->filename);
 
                for(strlink = job->firstclean; strlink; strlink = strlink->next)
                        printf(" %s          CLEAN  %-30s\n", "  ", 
strlink->str);
 
                for(link = job->firstjobdep; link; link = link->next)
-                       printf(" %s          DEPEND %-30s\n", 
dirtyflag[link->node->dirty], link->node->filename);
+                       printf(" %s          DEPEND %-30s\n", 
dirty_flag_name(link->node->dirty), link->node->filename);
        }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/bam-0.5.0/src/tools.lua new/bam-0.5.1/src/tools.lua
--- old/bam-0.5.0/src/tools.lua 2016-06-17 07:24:45.000000000 +0200
+++ new/bam-0.5.1/src/tools.lua 2016-10-29 08:16:41.000000000 +0200
@@ -5,15 +5,16 @@
        if _checked_default_drivers == false then
                _checked_default_drivers = true
                if os.getenv("CC") then
-                       if string.match(os.getenv("CC"), "^clang") then
-                               print("CLANG!")
+                       if string.match(os.getenv("CC"), ".*clang.*") then
                                SetDriversDefault = SetDriversClang
-                       elseif string.match(os.getenv("CC"), "^gcc") then
-                               print("GCC!")
+                       elseif string.match(os.getenv("CC"), ".*gcc.*") then
                                SetDriversDefault = SetDriversGCC
-                       elseif string.match(os.getenv("CC"), "^clang") then
-                               print("CL!")
+                       elseif string.match(os.getenv("CC"), ".*cl.*") then
                                SetDriversDefault = SetDriversCL
+                       elseif string.match(os.getenv("CC"), ".*sunCC.*") then
+                               SetDriversDefault = SetDriversSolarisStudio
+                       elseif string.match(os.getenv("CC"), ".*xlC.*") then
+                               SetDriversDefault = SetDriversXLC
                        end
                else
                        if ExecuteSilent("cl") == 0 then
@@ -22,6 +23,10 @@
                                SetDriversDefault = SetDriversGCC
                        elseif ExecuteSilent("clang -v") == 0 then
                                SetDriversDefault = SetDriversClang
+                       elseif ExecuteSilent("suncc -flags") == 0 then
+                               SetDriversDefault = SetDriversSolarisStudio
+                       elseif ExecuteSilent("xlc_r -qversion") == 0 then
+                               SetDriversDefault = SetDriversXLC
                        end
                end
        end
@@ -39,6 +44,11 @@
        if os.getenv("CXX") then
                settings.cc.exe_cxx = os.getenv("CXX")
                settings.link.exe = os.getenv("CXX")
+               settings.dll.exe = os.getenv("CXX")
+       end
+
+       if os.getenv("AR") then
+               settings.lib.exe = os.getenv("AR")
        end
 
        if os.getenv("CFLAGS") then
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/bam-0.5.0/src/version.h new/bam-0.5.1/src/version.h
--- old/bam-0.5.0/src/version.h 2016-06-17 07:24:45.000000000 +0200
+++ new/bam-0.5.1/src/version.h 2016-10-29 08:16:41.000000000 +0200
@@ -1,6 +1,6 @@
 #define BAM_VERSION_MAJOR "0"
 #define BAM_VERSION_MINOR "5"
-#define BAM_VERSION_PATCH "0"
+#define BAM_VERSION_PATCH "1"
 #define BAM_VERSION_STRING BAM_VERSION_MAJOR "." BAM_VERSION_MINOR
 #define BAM_VERSION_STRING_COMPLETE BAM_VERSION_MAJOR "." BAM_VERSION_MINOR 
"." BAM_VERSION_PATCH
        


Reply via email to