Re: cygport: CYGCMAKE_SOURCE seems to have no effect.
Hello, > 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 > cygport does not find it. If CYGCMAKE_SOURCE is not defined into my liblo.cygport, it prints: *** ERROR: cygcmake: cmake directory not found If CYGCMAKE_SOURCE is defined as "${S}/cmake", it prints again: *** ERROR: cygcmake: cmake directory not found If CYGCMAKE_SOURCE is defined as an absolute path like I have written in my previous message, it finally works. > "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.)" "This is only necessary when the top-level CMakeLists.txt is not in $S" true, it is under "$S/cmake" "and cygcmake is not being run in the same subdirectory of $B which under $S contains the top-level CMakeLists.txt." also true in my opinion. It could be possible that I have not understood something, but however there is also an easy way: - my cygport file was included in my first email and also attached into this last one. - the source archive can be downloaded from this direct link: http://downloads.sourceforge.net/liblo/liblo-0.31.tar.gz - put both them into a directory and execute: cygport liblo.cygport all and you will see with your eyes that it does not work. Perhaps, there are other extra things to write in my cygport that I don't know about. thank you very much for your support. Sincerely. liblo.cygport Description: Binary data -- 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
[ANNOUNCEMENT] cygwin 3.3.0-0.1.9814cfd8f693 (TEST)
The following packages have been uploaded to the Cygwin distribution as test releases: * cygwin-3.3.0-0.1.9814cfd8f693 * cygwin-devel-3.3.0-0.1.9814cfd8f693 * cygwin-doc-3.3.0-0.1.9814cfd8f693 This release comes with an overhaul of the internal pipe code. In theory, there should be no user-visible changes except for bug fixes and performance improvements. But of course there will be new bugs. Please test! === What's new: --- - An IP-sampling profiler named 'profiler' has been added. It can be used to profile any Cygwin program along with any DLLs loaded. - A new tool 'gmondump' has been added. It can dump the raw information of any "gmon.out" file created by profiler, ssp, or use of the gcc/g++ option '-pg'. (Continue using gprof to get symbolic profile displays.) - New GNU-specific APIs, slated to become part of the next POSIX standard: pthread_cond_clockwait, pthread_mutex_clocklock, pthread_rwlock_clockrdlock, pthread_rwlock_clockwrlock, sem_clockwait. - New Solaris-specific APIs, slated to become part of the next POSIX standard: sig2str, str2sig. What changed: - - The speed argument to cfsetspeed(3) can now be a numerical baud rate rather than a Bnnn constant, as on Linux. Addresses: https://cygwin.com/pipermail/cygwin/2021-July/248887.html - The internal implementation of pipes has been overhauled; this should result in improved performance. Addresses: https://cygwin.com/pipermail/cygwin/2021-August/249238.html Bug Fixes - - Fix values returned by select(2) for shutdown sockets. Addresses: https://cygwin.com/pipermail/cygwin-developers/2021-April/012092.html - Introduce a new hypotl(3) function not suffering unnecessary overflows. Addresses: https://cygwin.com/pipermail/cygwin/2021-April/248302.html - Fix path handling for paths spanning native symlinks. Addresses: https://cygwin.com/pipermail/cygwin/2021-April/248307.html - Fix tab position evaluation after console window resize. - Fix a regression in pseudo console handling, resulting in rlwrap not being able to start a new pseudo console. - Handle two race conditions in pseudo console usage. Addresses: https://cygwin.com/pipermail/cygwin/2021-April/248292.html - Fix a bug in recognizing a successful completion of connect(2) on a datagram socket. - Fix connect(2) when called with an address structure whose family is AF_UNSPEC. As specified by POSIX and Linux, this is allowed on datagram sockets, and its effect is to reset the socket's peer address. - Fix nanosleep(2) returning negative rem. NtQueryTimer appears to be able to return a negative remaining time (less than the timer resolution) for unsignalled timers. - Fix getifaddrs(3) returning address family 0 or IPv4 address 0. Addresses: https://cygwin.com/pipermail/cygwin/2021-July/248970.html - Fix getaddrinfo(3) to return valid ai_socktype and ai_protocol values if the underlying GetAddrInfoW screws up. Addresses: https://cygwin.com/pipermail/cygwin/2021-July/248985.html - Fix duplicate /proc/partitions entries and (presumably) duplicate PIDs in ps(1) output. Addresses: https://cygwin.com/pipermail/cygwin/2021-July/248998.html https://cygwin.com/pipermail/cygwin/2021-August/249124.html === Have fun, Ken Brown, on behalf of Corinna -- 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
Re: cygport: CYGCMAKE_SOURCE seems to have no effect.
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
Re: cygport: CYGCMAKE_SOURCE seems to have no effect.
Hello, 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 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}. 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. Sincerely. Il giorno gio 16 set 2021 alle ore 17:18 Carlo B. ha scritto: > > Hello, > I'm trying to make a package for CYGWIN to provide liblo, but I'm > having some difficulties. > This library is available to the most used linux distributions (but > not limited to), here there is the link to the one into a Debian as > example: > > https://packages.debian.org/buster/liblo-dev > > I implemented a script for cygport but this is the output on the > console when I execute it: > > $ cygport liblo.cygport all > >>> Preparing liblo-0.31-1.x86_64 > >>> Unpacking source liblo-0.31.tar.gz > >>> Preparing working source directory > >>> Compiling liblo-0.31-1.x86_64 > *** ERROR: cygcmake: cmake directory not found > > The unique aspect of this library is that the CMakeLists.txt file is > not into the root of the source tree, but it is located into a > subfolder, see here: > > https://github.com/radarsat1/liblo/tree/master/cmake > > So, in my script, I configured ${CYGCMAKE_SOURCE} to point there, but > it still cannot make it working. Since it seems that I'm not able to > make it working in any way, I'm wondering if the behaviour of this > variable has been ever tested, so I'm writing here with the hope to > receive a suggestion. > > Thank you very much for your support. > > ===> 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
Re: cygport: CYGCMAKE_SOURCE seems to have no effect.
Hello, thank you for your message, > Worked just fine for a recent update of fortune-mod. > I gave a look to the source tree inside the package fortune-mod-3.6.1-1-src.tar.xz and the CMakeLists.txt is into the top-level directory, so it is not the same thing. And it seems to me that ${CYGCMAKE_SOURCE} is not used by fortune-mod.cygport. > See online or under your Cygwin directory: > > https://cygwin.github.io/cygport/cmake_cygclass.html#robo765 > > cygstart /usr/share/doc/cygport/html/manual/cmake_cygclass.html > Yes, I had read that. > Try directory specification rather than path - cygport often just DTRT: > > CYGCMAKE_SOURCE=cmake > Yes, I had also tried that, but without success. Sincerely. > -- > 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 -- 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