Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
#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.
|
|
|