[Nauty] Version 2.7 release 2 of nauty and Traces is available
Brendan McKay
Brendan.McKay at anu.edu.au
Thu Sep 2 16:51:56 AEST 2021
The second release of nauty+Traces version 2.7, that is 2.7r2, is
available at http://users.cecs.anu.edu.au/~bdm/nauty/ .
For technical reasons, it is not yet available at
https://pallini.di.uniroma1.it/ , but it should be soon.
Changes from 2.7r1 are listed below. See
http://users.cecs.anu.edu.au/~bdm/nauty/changes24-27.txt
for all changes since earlier versions.
As always, please report problems.
Cheers from Brendan and Adolfo.
--------------------------------------------------------
Changes from 2.7r1 to 2.7r2
---------------------------
* -march=native is not added to the compile command if the
user has specified an architecture via CC or CFLAGS
* traces.h has extern "C" { } for function declarations to
assist calling from C++.
* nauty.h defines FLEX_ARRAY_OK to 1 if flexible array
members of structures are allowed, and 0 otherwise.
(Flexible array members are declared as the last field
in structures like x[] and the user is allowed to
extend them.)
* Compiling with preprocessor variable USE_TLS defined will
have the same effect as configuring with --enable-tls.
(a) If either --enable-tls or USE_TLS is defined then:
USE_TLS is defined, HAVE_TLS is defined as 1, and
TLS_ATTR is defined to be the attribute for thread-local
memory (either thread_local, _Thread_local, __thread or
__declspec(thread)).
If the compiler doesn't support thread-local memory at
all, an error is issued.
(b) If --enable-tls is not used and USE_TLS is not defined,
then USE_TLS is not defined, HAVE_TLS is defined as 0,
and TLS_ATTR is defined as empty.
You have to compile everything including nauty the same way.
Calling the procedure nauty_check() will test for this
compatibility.
* Changes to the makefile:
(1) The line "AR?=ar" in the makefile violated the Posix standard, see
https://pubs.opengroup.org/onlinepubs/9699919799/utilities/make.html
It is now gone. This shouldn't be a problem since the variable AR
is used instead and its default value is "ar" unless a different
value is specified on the make command line.
(2) There is an install target. It puts executables into ${bindir},
include files into ${includedir} and static libraries into ${libdir}.
Configure with --prefix=DIR to specify a parent directory for these.
There is still no target for dynamic libraries.
(3) Several rearrangements that most users won't notice.
* There is a new utility nbrhoodg that can extract neighbourhoods
of vertices
* The amount of working space given to nauty was increased in a
few places.
More information about the Nauty
mailing list