On 2021-09-17 03:37, Carlo B. via Cygwin wrote:
in addition to my previous message, I did some experiments with the
code of cygport and I added these lines to
/usr/share/cygport/cygclass/cmake.cygclass:

echo "CYGCMAKE_SOURCE=${CYGCMAKE_SOURCE}"
echo "B=${B}"
echo "S=${S}"
echo "PWD=${PWD}"

and the result is:

CYGCMAKE_SOURCE=/cmake

If you look at the Cygport Install Functions docs for docinto, ...into, defining target directories, you would see that an "absolute" path disables cygport from prefixing a subdirectory name with the package name, etc. so CMakeLists.txt is (linked) under ${S,B}/cmake, and cygport will automatically find that, so it should not be required or specified:

        https://cygwin.github.io/cygport/cmake_cygclass.html#robo767

"This is only necessary when the top-level CMakeLists.txt is not in $S and cygcmake is not being run in the same subdirectory of $B which under $S contains the top-level CMakeLists.txt. (IOW if the top-level CMakeLists.txt is in $S/unix and cygcmake is run from $B/unix, setting CYGCMAKE_SOURCE would not be necessary.)"

as cygport would find CMakeLists.txt in $S/cmake/ so it would copy or link those under $B, and run cygcmake under the equivalent subdirectory.

B=/home/carlo/liblo.src/liblo-0.31-1.x86_64/build
S=/home/carlo/liblo.src/liblo-0.31-1.x86_64/src/liblo-0.31
PWD=/home/carlo/liblo.src/liblo-0.31-1.x86_64/build
*** ERROR: cygcmake: cmake directory not found

But ${CYGCMAKE_SOURCE} was set as:

CYGCMAKE_SOURCE="${S}/cmake"

So, it seems to me that there is at least a bug into the
documentation, because ${CYGCMAKE_SOURCE} does not seem to allow the
use of {S}.

CMakeLists.txt is found automatically by cygport if it is under $S, as that is the documented assumption (see above).

I was able to make it working by writing:

CYGCMAKE_SOURCE="$(pwd)/${NAME}-${VERSION}-${RELEASE}.${ARCH}/src/${NAME}-${VERSION}/cmake"

but I don't know if this is the right way to do it and could be accepted or not.

--
Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada

This email may be disturbing to some readers as it contains
too much technical detail. Reader discretion is advised.
[Data in binary units and prefixes, physical quantities in SI.]


=======> And this is the content of my liblo.cygport file:

inherit cmake

NAME="liblo"
VERSION=0.31
RELEASE=1
CATEGORY="Audio"
SUMMARY="Open Sound Control protocol for POSIX systems"
DESCRIPTION="Open Sound Control (OSC) is a protocol for communication
  among computers, sound synthesizers, and other multimedia devices that
  is optimized for modern networking technology."
HOMEPAGE="http://liblo.sourceforge.net/";
SRC_URI="http://downloads.sourceforge.net/liblo/liblo-${VERSION}.tar.gz";

PKG_NAMES="liblo1 liblo-devel"
PKG_IGNORE="
     usr/share/doc/liblo/AUTHORS
     usr/share/doc/liblo/COPYING
     usr/share/doc/liblo/ChangeLog
     usr/share/doc/liblo/NEWS
     usr/share/doc/liblo/README
     usr/share/doc/liblo/TODO
"

liblo1_CATEGORY="Libs"
liblo1_SUMMARY="${SUMMARY}"
liblo1_CONTENTS="
     usr/bin/cyglo-7.dll
     usr/bin/oscdump.exe
     usr/bin/oscsend.exe
"
liblo_devel_CATEGORY="Libs"
liblo_devel_SUMMARY="${SUMMARY}"
liblo_devel_CONTENTS="
     usr/include/lo/*
     usr/lib/liblo.dll.a
     usr/lib/pkgconfig/liblo.pc
     usr/lib/cmake/liblo/libloConfig.cmake
"

CYGCMAKE_SOURCE="${S}/cmake"



--
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple

Reply via email to