[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