Age | Commit message (Collapse) | Author | Files | Lines |
|
* Distributions might need to change the header dir
* Also change the template paths in the `.pc` files to
the idiomatic CMake `GNUInstallDirs` full paths,
which are always correct, regardless of whether the
user specified relative or absolute paths. This makes
the build system somewhat easier and more idiomatic.
|
|
cleanobj: Remove object files
cleanlib: Remove libraries
cleanexe: Remove test and example executables
cleantest: Remove test output and core dumps
clean: All of the above
|
|
|
|
|
|
Use the automatic variable $^ to refer to all prerequisites when
linking or creating an archive.
|
|
|
|
|
|
Removes duplication and allows error checking to be done in one spot.
Moved most of the status printouts to where the options are defined.
|
|
Allows any combination of types/precisions to be built at once.
Name the lists "SOURCES" instead of "ALLOBJ" since they contain lists of
source files, not object files.
Fix problems in BLAS: Was missing the ${CBLAS3} file set when building
with BLAS_COMPLEX. Was adding ${BLASLIB} as if it were a source file.
|
|
Be consistent and use CMAKE_INSTALL_*DIR variables throughout, instead
of a mix of CMAKE_INSTALL_PREFIX with appended text.
|
|
|
|
Use targets that are actual filenames so that make can determine if the
target is already up-to-date.
Since $(CBLASLIB) is a relative path, delete it from a Makefile at the
right depth.
|
|
Fix missing $(errhand) on the all3 Makefile target.
|
|
|
|
|
|
Contribution by @turboencabulator
Closing #84
|
|
|
|
#67 by turboencabulator
|
|
The prefix and libdir lines at the top of the .pc files are variable
declarations. Set these variables appropriately, reference them in the
rest of the file, and prevent cmake from expanding ${}-style references.
Switch back to @prefix@ and @libdir@ for compatibility with autoconf.
Make the descriptions consistent and update the URLs.
|
|
Fix cblas and lapacke pkgconfig files
|
|
|
|
|
|
calls. Reported by Hans Johnson. Thanks Hans. Julien.
|
|
https://github.com/hjmjohnson/lapack into hjmjohnson-FixInstalledPathingWithLib64
|
|
Ancient versions of CMake required else(), endif(), and similar block
termination commands to have arguments matching the command starting the
block. This is no longer the preferred style.
NOTE: MUST USE GNU compliant version of sed
Run the following shell code:
for c in else endif endforeach endfunction endmacro endwhile; do
echo 's/\b'"$c"'\(\s*\)(.\+)/'"$c"'\1()/'
done >convert.sed \
&& git ls-files -z -- bootstrap '*.cmake' '*.cmake.in' '*CMakeLists.txt' \
| xargs -0 gsed -i -f convert.sed \
&& rm convert.sed
|
|
Ancient CMake versions required upper-case commands. Later command
names became case-insensitive. Now the preferred style is lower-case.
Run the following shell code:
NOTE: MUST USE GNU compliant version of sed
cmake --help-command-list \
| grep -v "cmake version" \
| while read c; do
echo 's/\b'"$(echo $c | tr '[:lower:]' '[:upper:]')"'\(\s*\)(/'"$c"'\1(/g'
done >convert.sed \
&& git ls-files -z -- bootstrap '*.cmake' '*.cmake.in' '*CMakeLists.txt' \
| xargs -0 gsed -i -f convert.sed \
&& rm convert.sed
|
|
This is mostly a long term maintenance improvement.
Many coding styles require elimination of trailing whitespace, and
many editors and source code management configurations automatically
gobble up whitespace. When these tools gobble up whitespace, it
complicates reviewing the meaningful code changes.
By removing whitespace on one patch, it makes future
code reviews much easier.
=SCRIPT====================================================================
if which tempfile &>/dev/null; then
TEMPMAKER=tempfile
elif which mktemp &>/dev/null; then
TEMPMAKER=mktemp
else
echo "Cannot find tempfile program." 2>&1
exit 1
fi
MYTEMP=$($TEMPMAKER)
trap 'rm -f $MYTEMP' SIGINT SIGTERM
stripit() {
echo "stripping $1"
sed 's/[ \t]*$//' "$1" > $MYTEMP
cp $MYTEMP "$1"
}
if [ $# -gt 0 ]; then
while [ "$1" != "" ]; do
stripit $1
shift
done
else
while read -t 2; do
stripit $REPLY
done
fi
rm $MYTEMP
=================================================
|
|
This is mostly a long term maintenance improvement.
Many coding styles require elimination of trailing whitespace, and
many editors and source code management configurations automatically
gobble up whitespace. When these tools gobble up whitespace, it
complicates reviewing the meaningful code changes.
By removing whitespace on one patch, it makes future
code reviews much easier.
=SCRIPT====================================================================
if which tempfile &>/dev/null; then
TEMPMAKER=tempfile
elif which mktemp &>/dev/null; then
TEMPMAKER=mktemp
else
echo "Cannot find tempfile program." 2>&1
exit 1
fi
MYTEMP=$($TEMPMAKER)
trap 'rm -f $MYTEMP' SIGINT SIGTERM
stripit() {
echo "stripping $1"
sed 's/[ \t]*$//' "$1" > $MYTEMP
cp $MYTEMP "$1"
}
if [ $# -gt 0 ]; then
while [ "$1" != "" ]; do
stripit $1
shift
done
else
while read -t 2; do
stripit $REPLY
done
fi
rm $MYTEMP
=================================================
|
|
This is mostly a long term maintenance improvement.
Many coding styles require elimination of trailing whitespace, and
many editors and source code management configurations automatically
gobble up whitespace. When these tools gobble up whitespace, it
complicates reviewing the meaningful code changes.
By removing whitespace on one patch, it makes future
code reviews much easier.
=SCRIPT====================================================================
if which tempfile &>/dev/null; then
TEMPMAKER=tempfile
elif which mktemp &>/dev/null; then
TEMPMAKER=mktemp
else
echo "Cannot find tempfile program." 2>&1
exit 1
fi
MYTEMP=$($TEMPMAKER)
trap 'rm -f $MYTEMP' SIGINT SIGTERM
stripit() {
echo "stripping $1"
sed 's/[ \t]*$//' "$1" > $MYTEMP
cp $MYTEMP "$1"
}
if [ $# -gt 0 ]; then
while [ "$1" != "" ]; do
stripit $1
shift
done
else
while read -t 2; do
stripit $REPLY
done
fi
rm $MYTEMP
=================================================
|
|
This is mostly a long term maintenance improvement.
Many coding styles require elimination of trailing whitespace, and
many editors and source code management configurations automatically
gobble up whitespace. When these tools gobble up whitespace, it
complicates reviewing the meaningful code changes.
By removing whitespace on one patch, it makes future
code reviews much easier.
|
|
CMake Error at src/lapack-install/lib64/cmake/lapacke-3.6.1/lapacke-config.cmake:13 (include):
include could not find load file:
src/lapack-install/lib64/cmake/lapacke-3.6.1/lapacke-targets.cmake
Call Stack (most recent call first):
CMakeLists.txt:26 (find_package)
-- src/lapack-install/lib64/cmake/lapacke-3.6.1
-- Configuring incomplete, errors occurred!
See also "src/lapackTest-bld/CMakeFiles/CMakeOutput.log".
The file was installed in:
src/lapack-install/lib/cmake/lapacke-3.6.1/lapacke-targets.cmake
^^ - Missing lib suffix of 64
|
|
BUG: Fix pathing to include files
|
|
Use CMake capabilities to test if the specified fortran
and C compilers are compatible. Fail early if they are
determined to be incompatible.
Use CMake capabilities to generate platform specific
header files, If CMake FortranCInterface_HEADER function
fails to identify FortranCInterface_GLOBAL_FOUND or
FortranCInterface_MODULE_FOUND, then fall back to the
statically generated file that is used by Makefiles.
|
|
During building of external packages, only the build tree or install
tree files should be used (the source tree may not be available from
the binary package). Set to use the build tree locations for the
configuration files.
|
|
The cblas_mangling_with_flags.h and lapacke_mangling_with_flags.h
are template files that are not used directly. They need to be
configured (i.e. copied) to lapacke_mangling.h and cblas_mangling.h
header files that are used. These renamings make the intent of
these files more clearly reported.
The file LAPACKE/include/lapacke_mangling.h should not be stored in the
repository because it should be generated (copied from above) at build
time.
|
|
|
|
Mailing list
From Sébastien Villemot:
I attach to this message 5 patches that are currently applied to the
Debian package for LAPACK, and that I think could be usefully merged in
the LAPACK SVN tree.
The patches include fixes for old outstanding bugs in the CBLAS test
programs, fixes for the build system, and fixes for various typos.
Each patch file contains a more detailed description of its purpose.
|
|
|
|
to Julie
In CBLAS/CMakeLists.txt:
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/CMAKE/cblas-config-version.cmake.in
${LAPACK_BINARY_DIR}/cblas-config-version.cmake @ONLY)
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/CMAKE/cblas-config-build.cmake.in
${LAPACK_BINARY_DIR}/cblas-config.cmake @ONLY)
The /CMAKE subdirectory should be lowercase, I guess some work on OSX which (still!) has a case-insensitive file-system.
|
|
|
|
Netlib CBLAS can be put on top of BLAS with 64-bit integers.
It can be accomplished using the flag "WeirdNEC" :)
It basically redefines int to long, but at the same time, it had multiple bugs.
|
|
|