vision-dbms / vision

The master repository for the Vision database system.
https://vision-dbms.com
BSD 3-Clause "New" or "Revised" License
27 stars 12 forks source link

Assume Linux 'make' IS GNU make by default. #3

Closed MichaelJCaruso closed 7 years ago

MichaelJCaruso commented 7 years ago

As written, visionBuilder assumed that the default version of 'make' on LINUX was something other than GNU make. While this assumption likely remains valid for vendor specific Unix versions (e.g., SunOS) and FreeBSD, Linux distros (distros whose 'uname' returns 'Linux') all appear to use GNU make.

Note that this change addresses issues that are more than cosmetic. Unless the MAKEBIN environment variable is defined to be 'make' prior to running 'visionBuilder', all builds fail almost immediately with an error complaining that the 'gmake' command was not found. While defining MAKEBIN averts that error, it confuses 'visionBuilder' into thinking that it is not using GNU make when, in fact, it is. Thus confused, 'visionBuilder' does not make use of GNU make specific functionality (specifically, the -j option) -- a very valuable option when building on a high core count machine :-)

MichaelJCaruso commented 7 years ago

A bit more clarification on 'gmake' and 'make'... On RHEL derived systems (RHEL 7, Centos 7, Oracle Linux), both /usr/bin/gmake and /usr/bin/make exist and point to GNU make. 'gmake' does not exist elsewhere in distro land (e.g, Debian based distros). Anyone trying to run 'visionBuilder' there gets the error described.