* Re: newcomer issues when packaging biosig,stimfit, etc.
[not found] <99eff890-3d7f-7fa9-1f42-d8d611b92ded@gmail.com>
@ 2022-01-08 17:41 ` Marco Atzeri
2022-01-08 19:15 ` Marco Atzeri
0 siblings, 1 reply; 22+ messages in thread
From: Marco Atzeri @ 2022-01-08 17:41 UTC (permalink / raw)
To: cygwin-apps; +Cc: cygwin
On 08.01.2022 18:34, Alois Schlögl wrote:
> Dear Cygwin community,
>
Hi Alois,
> I intend to package Stimfit [1] and Biosig [2] (and perhaps
> libb64,libbiosig,sigviewer) for cygwin. The packages are already
> available in Debian, but when trying to package them for cygwin, I run
> into some difficulties.
> I read the documentation [3-5], but I got stuck, and I'd appreciate your
> help on this. Attached are my current versions of *.cygports and *.hint
> files
please subscribe to cygwin-apps.
The discussion about maintainership and packaging are handled there
>
> When trying to build them with cygport I run into these difficulties:
>
> $ cygport libb64.cygport all
> >>> Preparing libb64-1.2.1-1.x86_64
> >>> Unpacking source libb64-1.2.1.zip
> >>> Preparing working source directory
> >>> Compiling libb64-1.2.1-1.x86_64
> *** ERROR: Could not find configure.ac or configure.in
>
> libb64 does not require running configure, the Makefile is already
> available and a simple "make" command would do.
> How can I specifiy this in the libb64.cygport file ?
>
>
> "cygport biosig.cygport all"
> ....
> config.status: creating biosig4c++/tcl/Makefile
> config.status: creating config.h
> config.status: config.h is unchanged
> make: *** No rule to make target 'Makefile.in', needed by 'Makefile'.
> Stop.
> *** ERROR: make failed
>
> Makefile.in is in the sources, why do I see this error when trying to
> build it with cygport ?
>
> Attached are also stimfit.cygport and sigviewer.cygport, they require
> libbiosig, and are most likely incomplete. If you have suggestions to
> make it work, please let me know.
>
>
> Cheers,
> Alois
>
>
>
> [1] https://github.com/neurodroid/stimfit
> [2] http://biosig.sourceforge.net/
> [3] https://cygwin.com/packages.html
> [4] https://cygwin.com/packaging-contributors-guide.html
> [5] https://cygwin.com/packaging-hint-files.html
>
regards
Marco
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: newcomer issues when packaging biosig,stimfit, etc.
2022-01-08 17:41 ` newcomer issues when packaging biosig,stimfit, etc Marco Atzeri
@ 2022-01-08 19:15 ` Marco Atzeri
2022-01-08 19:24 ` Marco Atzeri
[not found] ` <a3f8e657-1e1d-c582-2a07-806c6c03be02@gmail.com>
0 siblings, 2 replies; 22+ messages in thread
From: Marco Atzeri @ 2022-01-08 19:15 UTC (permalink / raw)
To: cygwin-apps; +Cc: alois.schloegl
[-- Attachment #1: Type: text/plain, Size: 1008 bytes --]
following on cygwin-apps
On 08.01.2022 18:41, Marco Atzeri wrote:
> On 08.01.2022 18:34, Alois Schlögl wrote:
>> Dear Cygwin community,
>>
>
> Hi Alois,
>
>> I intend to package Stimfit [1] and Biosig [2] (and perhaps
>> libb64,libbiosig,sigviewer) for cygwin. The packages are already
>> available in Debian, but when trying to package them for cygwin, I run
>> into some difficulties.
>> I read the documentation [3-5], but I got stuck, and I'd appreciate
>> your help on this. Attached are my current versions of *.cygports and
>> *.hint files
>
> please subscribe to cygwin-apps.
> The discussion about maintainership and packaging are handled there
>
I looked on libb64, as it is not using autoconf/automake
you can not use the default src_* but you need to define them.
As the Makefile is building only static lib and has no install
procedure I modified to build only shared and I used
cygport for the installation.
I also separated the test.
See attached update cygport and patch.
[-- Attachment #2: libb64.cygport --]
[-- Type: text/plain, Size: 1039 bytes --]
# package name
NAME="libb64"
VERSION=1.2.1
RELEASE=1
# .hint generation
CATEGORY="Libs"
SUMMARY="libary for base64-encoding"
DESCRIPTION="A library of ANSI C routines for fast
encoding/decoding data into and from a base64-encoded format"
SRC_URI="https://sourceforge.net/projects/libb64/files/libb64/libb64/libb64-${PV}.zip"
PKG_NAMES="libb64 libb64-devel libb64-util"
libb64_util_CONTENTS="usr/bin/base64.exe"
libb64_CONTENTS="usr/bin/cygb64.dll"
libb64_devel_CONTENTS="
usr/share/doc/
usr/include
usr/lib
"
DIFF_EXCLUDES="depend"
# use not standard src_compile, src_install and src_test
src_compile() {
cd ${S}
lndirs
cd ${B}
make
}
src_install() {
cd ${D}
dodir usr/include/b64
insinto /usr/include/b64
doins ${S}/include/b64/*
dobin ${B}/base64/base64.exe
dobin ${B}/src/cygb64.dll
dolib ${B}/src/libb64.dll.a
dodir usr/share/b64/examples
insinto usr/share/b64/examples
dodoc ${S}/examples/*.c ${S}/examples/*.txt ${S}/examples/README.md
}
src_test() {
cd ${B}
make -C examples test
}
[-- Attachment #3: libb64-1.2.1-1.src.patch --]
[-- Type: text/plain, Size: 1993 bytes --]
--- origsrc/libb64-1.2.1/base64/Makefile 2013-06-18 14:49:36.000000000 +0200
+++ src/libb64-1.2.1/base64/Makefile 2022-01-08 19:42:26.156240800 +0100
@@ -34,10 +34,8 @@ vpath %.a ../src
all: $(TARGETS) #strip
-base64: libb64.a
-
-strip:
- strip $(BINARIES) *.exe
+base64: ../src/cygb64.dll
+ g++ $(CXXFLAGS) $(SOURCES) -L../src -lb64 -o $@
clean: clean_VisualStudioProject
rm -f *.exe* *.o $(TARGETS) *.bak *~
--- origsrc/libb64-1.2.1/examples/Makefile 2013-06-18 14:49:36.000000000 +0200
+++ src/libb64-1.2.1/examples/Makefile 2022-01-08 20:12:21.021189700 +0100
@@ -19,9 +19,13 @@ vpath %.a ../src
.PHONY : clean
-all: $(TARGETS) test
+all: $(TARGETS)
-c-example1 c-example2: libb64.a
+c-example1: ../src/cygb64.dll
+ gcc $(CXXFLAGS) c-example1.c -L../src -lb64 -o $@
+
+c-example2: ../src/cygb64.dll
+ gcc $(CXXFLAGS) c-example2.c -L../src -lb64 -o $@
clean:
rm -f *.exe* *.o $(TARGETS) $(DEBRIS) *.bak *~
@@ -33,10 +37,10 @@ depend: $(SOURCES)
makedepend -f- $(CFLAGS) $(SOURCES) 2> /dev/null 1> depend
test-c-example1: c-example1
- ./c-example1
+ PATH=$(PWD)/src:$(PATH) ./c-example1
test-c-example2: c-example2
- ./c-example2 loremgibson.txt encoded.txt decoded.txt
+ PATH=$(PWD)/src:$(PATH) ./c-example2 loremgibson.txt encoded.txt decoded.txt
diff -q loremgibson.txt decoded.txt
test: test-c-example1 test-c-example2
--- origsrc/libb64-1.2.1/src/Makefile 2013-06-18 14:49:36.000000000 +0200
+++ src/libb64-1.2.1/src/Makefile 2022-01-08 19:39:12.010457300 +0100
@@ -1,4 +1,4 @@
-LIBRARIES = libb64.a
+LIBRARIES = cygb64.dll
# Build flags (uncomment one)
#############################
@@ -24,11 +24,9 @@ vpath %.h ../include/b64
all: $(TARGETS) #strip
-libb64.a: cencode.o cdecode.o
- $(AR) $(ARFLAGS) $@ $^
-
-strip:
- strip $(BINARIES) *.exe
+cygb64.dll: cencode.o cdecode.o
+ gcc -shared -Wl,--enable-auto-import -Wl,--enable-auto-image-base \
+ -o $@ -Wl,--out-implib=libb64.dll.a $^
clean:
rm -f *.exe* *.o $(TARGETS) *.bak *~
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: newcomer issues when packaging biosig,stimfit, etc.
2022-01-08 19:15 ` Marco Atzeri
@ 2022-01-08 19:24 ` Marco Atzeri
[not found] ` <a3f8e657-1e1d-c582-2a07-806c6c03be02@gmail.com>
1 sibling, 0 replies; 22+ messages in thread
From: Marco Atzeri @ 2022-01-08 19:24 UTC (permalink / raw)
To: cygwin-apps; +Cc: alois.schloegl
On 08.01.2022 20:15, Marco Atzeri wrote:
> following on cygwin-apps
>
> On 08.01.2022 18:41, Marco Atzeri wrote:
>> On 08.01.2022 18:34, Alois Schlögl wrote:
>>> Dear Cygwin community,
>>>
>>
>> Hi Alois,
>>
>>> I intend to package Stimfit [1] and Biosig [2] (and perhaps
>>> libb64,libbiosig,sigviewer) for cygwin. The packages are already
>>> available in Debian, but when trying to package them for cygwin, I
>>> run into some difficulties.
>>> I read the documentation [3-5], but I got stuck, and I'd appreciate
>>> your help on this. Attached are my current versions of *.cygports
>>> and *.hint files
>>
>> please subscribe to cygwin-apps.
>> The discussion about maintainership and packaging are handled there
>>
>
> I looked on libb64, as it is not using autoconf/automake
> you can not use the default src_* but you need to define them.
>
> As the Makefile is building only static lib and has no install
> procedure I modified to build only shared and I used
> cygport for the installation.
> I also separated the test.
>
> See attached update cygport and patch.
>
as we have already base64
$ cygcheck -l coreutils | grep base64
/usr/bin/base64.exe
/usr/share/man/man1/base64.1.gz
I wonder if is it really useful.
Otherwise you need to change name to the binary
Regards
Marco
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: newcomer issues when packaging biosig,stimfit, etc.
[not found] ` <a3f8e657-1e1d-c582-2a07-806c6c03be02@gmail.com>
@ 2022-01-12 5:47 ` Marco Atzeri
2022-01-12 6:16 ` Brian Inglis
0 siblings, 1 reply; 22+ messages in thread
From: Marco Atzeri @ 2022-01-12 5:47 UTC (permalink / raw)
To: Alois Schlögl; +Cc: cygwin-apps
On 11.01.2022 12:33, Alois Schlögl wrote:
>
> Dear Marco,
>
>
> Yesterday, I've tried to subscribe to the cygwin-apps mailinglist, but
> so far I did not get any confirmation email. When trying to send to the
> mailinglist, it fails with " Your message has been rejected, probably
> because you are not ...".
> Do you know how long it typically takes until the mailing list
> subscription is confirmed ?
sorry I don't.
I am subscripted by so long.
Jon,
could you check ?
> In the meantime, please find below the status for the libb64 and biosig
> packages.
> Thanks that was helpful. Attached is an updated version for biosig and
> libb64.
>
> cygport libb64.cygport all
> cygport biosig.cygport all
>
> runs now w/o error. How can I test whether result can be installed and
> used ?
One major problem.
Never build in the source directory, the final src.patch
must fit with you desired patch.
So only what you patched should come out.
For this package that does not respect the build in a
different directory than source, you shoud start
with something like:
src_compile() {
cd ${S}
lndirs
cd ${B}
cygautoreconf
cygconf
cygmake
}
unfortunately I have no time to dig further
short term
Regards
Marco
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: newcomer issues when packaging biosig,stimfit, etc.
2022-01-12 5:47 ` Marco Atzeri
@ 2022-01-12 6:16 ` Brian Inglis
2022-01-12 22:59 ` [ITP] biosig [was: Re: newcomer issues when packaging biosig, stimfit, etc.] Alois Schlögl
0 siblings, 1 reply; 22+ messages in thread
From: Brian Inglis @ 2022-01-12 6:16 UTC (permalink / raw)
To: Alois Schlögl; +Cc: cygwin-apps
On 11.01.2022 12:33, Alois Schlögl wrote:
> Yesterday, I've tried to subscribe to the cygwin-apps mailinglist, but
> so far I did not get any confirmation email. When trying to send to
> the mailinglist, it fails with " Your message has been rejected,
> probably because you are not ...".
> Do you know how long it typically takes until the mailing list
> subscription is confirmed?
You need to configure email to cygwin, sourceware, and other lists as
plain text only, otherwise the server may reject your messages.
To subscribe quickly use:
https://cygwin.com/mailman/listinfo/cygwin-apps/
fill out your email address, name, "password", and click [Subscribe].
You should get a confirmation email in a few minutes, where you click on
the embedded link to enable the subscription.
--
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.]
^ permalink raw reply [flat|nested] 22+ messages in thread
* [ITP] biosig [was: Re: newcomer issues when packaging biosig, stimfit, etc.]
2022-01-12 6:16 ` Brian Inglis
@ 2022-01-12 22:59 ` Alois Schlögl
2022-01-14 10:09 ` Marco Atzeri
0 siblings, 1 reply; 22+ messages in thread
From: Alois Schlögl @ 2022-01-12 22:59 UTC (permalink / raw)
To: cygwin-apps
[-- Attachment #1: Type: text/plain, Size: 1612 bytes --]
Am 1/12/22 um 06:47 schrieb Marco Atzeri:
>> In the meantime, please find below the status for the libb64 and
>> biosig packages.
>
>> Thanks that was helpful. Attached is an updated version for biosig
>> and libb64.
>>
>> cygport libb64.cygport all
>> cygport biosig.cygport all
>>
>> runs now w/o error. How can I test whether result can be installed
>> and used ?
>
> One major problem.
> Never build in the source directory, the final src.patch
> must fit with you desired patch.
> So only what you patched should come out.
>
> For this package that does not respect the build in a
> different directory than source, you shoud start
> with something like:
>
> src_compile() {
> cd ${S}
> lndirs
> cd ${B}
> cygautoreconf
> cygconf
> cygmake
> }
I've adapted biosig.cygport accordingly and addressed this in the
attached version. It runs fine when doing
cygport biosig.cygport all
runs w/o error. Also testing the package with
tar -C / -xvf
biosig-2.3.3-1.x86_64/dist/biosig/biosig-tools/biosig-tools-2.3.3-1.tar.xz
tar -C / -xvf
biosig-2.3.3-1.x86_64/dist/biosig/libbiosig/libbiosig-2.3.3-1.tar.xz
tar -C / -xvf
biosig-2.3.3-1.x86_64/dist/biosig/libbiosig-devel/libbiosig-devel-2.3.3-1.tar.xz
and running
save2gdf -h
works fine.
Moreover, I understand now why my libb64.cygport file is not ready.
ecause libb64 is not necessary for libbiosig's support of Stimfit, I'll
omit libb64 for now.
Would you please check whether Biosig is ready to be included in cygwin ?
Cheers,
Alois
[-- Attachment #2: biosig.cygport --]
[-- Type: text/plain, Size: 3379 bytes --]
# package name
NAME="biosig"
VERSION=2.3.3
RELEASE=1
# .hint generation
CATEGORY="Libs,Science"
SUMMARY="Tools for biomedical signal processing."
DESCRIPTION="BioSig is an open source software library for
biomedical signal processing, featuring for example the
analysis of biosignals such as the electroencephalogram (EEG),
electrocorticogram (ECoG), electrocardiogram (ECG),
electrooculogram (EOG), electromyogram (EMG), respiration,
and so on. Major application areas are: Neuroinformatics,
brain-computer interfaces, neurophysiology, psychology, c
ardiovascular systems and sleep research. The aim of the
BioSig project is to foster research in biomedical signal
processing by providing open source software tools for many
different applications. Generally, many concerns have to be a
ddressed in this scientific field. BioSig handles this by providing
solutions for data acquisition, artifact processing, quality control,
feature extraction, classification, modeling, data visualization, etc. "
# source and patch files
SRC_URI="https://sourceforge.net/projects/biosig/files/BioSig%20for%20C_C%2B%2B/src/biosig-2.3.3.src.tar.gz"
# PATCH_URI="biosig-2.3.3-fix-build.patch"
# use the standard src_compile, src_install and src_test
PKG_NAMES="libbiosig libbiosig-devel biosig-tools"
biosig_tools_CONTENTS="
usr/bin/save2gdf.exe
usr/bin/physicalunits.exe
usr/bin/biosig2gdf.exe
usr/share/man/man1/save2gdf.1.gz
usr/share/man/man1/biosig2gdf.1.gz
usr/share/man/man1/biosig_fhir.1.gz
usr/share/man/man1/physicalunits.1.gz
usr/share/doc/biosig/COPYING
usr/share/doc/biosig/README
"
# not included yet
# usr/share/man/biosig_fhir.1 usr/share/man/sigviewer.1
libbiosig_CONTENTS="
usr/bin/libbiosig.dll
usr/bin/libphysicalunits.dll
"
libbiosig_devel_CONTENTS="
usr/include/biosig-dev.h
usr/include/biosig.h
usr/include/biosig2.h
usr/include/gdftime.h
usr/include/physicalunits.h
usr/include/biosig-network.h
usr/include/mdc_ecg_codes.h
usr/lib/libbiosig.a
usr/lib/libbiosig.dll.a
usr/lib/libphysicalunits.a
usr/lib/libphysicalunits.dll.a
usr/lib/pkgconfig/libbiosig.pc
"
DIFF_EXCLUDES="depend"
# use not standard src_compile, src_install and src_test
src_compile() {
cd ${S}
lndirs
cd ${B}
cygautoreconf
cygconf # --prefix=/usr
# libbiosig
cygmake lib
# biosig-tools w/o biosig_fhir
cygmake -C biosig4c++ save2gdf physicalunits biosig2gdf
# python3-biosig
}
src_install() {
cd ${S}
doinclude ${S}/biosig4c++/*.h
dobin ${B}/biosig4c++/save2gdf.exe
# dobin ${B}/biosig4c++/biosig_fhir.exe
dobin ${B}/biosig4c++/biosig2gdf.exe
dobin ${B}/biosig4c++/physicalunits.exe
dobin ${B}/biosig4c++/libbiosig.dll
dobin ${B}/biosig4c++/libphysicalunits.dll
dolib ${B}/biosig4c++/libbiosig.dll.a
dolib ${B}/biosig4c++/libbiosig.a
dolib ${B}/biosig4c++/libphysicalunits.dll.a
dolib ${B}/biosig4c++/libphysicalunits.a
dopkgconfig ${B}/biosig4c++/libbiosig.pc
# doman ${S}/biosig4c++/doc/bin2rec.1
doman ${S}/biosig4c++/doc/biosig2gdf.1
doman ${S}/biosig4c++/doc/biosig_fhir.1
doman ${S}/biosig4c++/doc/physicalunits.1
doman ${S}/biosig4c++/doc/save2gdf.1
}
src_test() {
cd ${S}
biosig4c++/physicalunits.exe
biosig4c++/save2gdf.exe --help
# biosig4c++/biosig_fhir.exe --help
}
[-- Attachment #3: biosig-2.3.3-1.hint --]
[-- Type: text/plain, Size: 1293 bytes --]
# comment
sdesc: "Tools for biomedical signal processing"
ldesc: "Library for biomedical signal processing,
featuring for example the analysis of biosignals such
as the electroencephalogram (EEG), electrocorticogram (ECoG),
electrocardiogram (ECG), electrooculogram (EOG), electromyogram (EMG),
respiration, etc. Major application areas are: Neuroinformatics,
brain-computer interfaces, neurophysiology, psychology,
cardiovascular systems and sleep research. The aim of the
BioSig project is to foster research in biomedical signal
processing by providing open source software tools for many
different applications. Generally, many concerns have to be addressed
in this scientific field. BioSig handles this by providing solutions for
data acquisition, artifact processing, quality control, feature extraction,
classification, modeling, data visualization, etc. "
category: Libs,Science,Utils
requires: libb64 libcholmod tinyxml cygwin
# depends: version-relation[, version-relation...]
# obsoletes: version-relation[, version-relation...]
# provides: package[, package...]
# conflicts: version-relation[, version-relation...]
external-source: release/biosig/biosig-2.3.3-1-src.tar.xz
# message: id "some text"
test:
version: 2.3.3
# disable-check: check-name [check-name...]
[-- Attachment #4: biosig-2.3.3-1.src.patch --]
[-- Type: text/x-patch, Size: 4871 bytes --]
--- origsrc/biosig-2.3.3/Makefile 2021-08-13 11:17:24.000000000 +0200
+++ src/biosig-2.3.3/Makefile 2022-01-12 21:54:44.813446500 +0100
@@ -30,13 +30,13 @@ R: lib
install ::
$(MAKE) -C biosig4c++ install
- install -d $(DESTDIR)/usr/local/share/biosig/matlab
- cp -r biosig4matlab/* $(DESTDIR)/usr/local/share/biosig/matlab/
- -rm -rf $(DESTDIR)/usr/local/share/biosig/matlab/maybe-missing
+ install -d $(DESTDIR)/usr/share/biosig/matlab
+ cp -r biosig4matlab/* $(DESTDIR)/usr/share/biosig/matlab/
+ -rm -rf $(DESTDIR)/usr/share/biosig/matlab/maybe-missing
uninstall ::
$(MAKE) -C biosig4c++ uninstall
- -rm -rf $(DESTDIR)/usr/local/share/biosig
+ -rm -rf $(DESTDIR)/usr/share/biosig
clean ::
$(MAKE) -C biosig4c++/mma clean
@@ -52,8 +52,8 @@ distclean : clean
biosig4c++/python/setup.py \
biosig4c++/R/DESCRIPTION
-ifneq (:,/usr/bin/java)
-ifneq (:,/usr/bin/javac)
+ifneq (:,:)
+ifneq (:,:)
first :: lib
-$(MAKE) -C biosig4c++/java
endif
@@ -92,11 +92,11 @@ biosig4octave ::
ln -sf biosig4c++/mex/biosig4octave-2.3.3.src.tar.gz
ifneq (:,/usr/bin/octave)
-ifneq (:,/usr/bin/mkoctfile)
+ifneq (:,:)
BIOSIG_MEX_DIR = $(DESTDIR)$(shell octave-config -p LOCALOCTFILEDIR)/biosig
BIOSIG_DIR = $(DESTDIR)$(shell octave-config -p LOCALFCNFILEDIR)/biosig
first ::
- MKOCTFILE="/usr/bin/mkoctfile" $(MAKE) -C biosig4c++/mex mex4o
+ MKOCTFILE=":" $(MAKE) -C biosig4c++/mex mex4o
install ::
# mexbiosig
#-/usr/bin/octave --no-gui --eval "pkg install -global biosig4c++/mex/mexbiosig-2.3.3.src.tar.gz"
@@ -145,7 +145,7 @@ clean ::
$(MAKE) -C biosig4c++/python clean
endif
-ifneq (:,/usr/bin/R)
+ifneq (:,:)
first ::
-$(MAKE) -C biosig4c++/R build
install ::
--- origsrc/biosig-2.3.3/biosig4c++/Makefile 2021-08-13 11:17:24.000000000 +0200
+++ src/biosig-2.3.3/biosig4c++/Makefile 2022-01-12 21:54:45.047825000 +0100
@@ -94,8 +94,8 @@ CFLAGS += -pipe -fPIC -fno-builtin
CFLAGS += -Wno-deprecated
CFLAGS += -fvisibility=hidden
-prefix = /usr/local
-exec_prefix ?= /usr/local
+prefix = /usr
+exec_prefix ?= /usr
libdir = ${exec_prefix}/lib
includedir = ${prefix}/include
bindir = ${exec_prefix}/bin
@@ -241,7 +241,7 @@ ifeq (1,1)
LDLIBS += -lsuitesparseconfig
endif
endif
-ifeq (1,1)
+ifeq (1,)
DEFINES += -D=WITH_DCMTK
LDLIBS += -ldcmdata -loflog -lofstd
SOURCES += t210/sopen_dcmtk_read.cpp
@@ -257,7 +257,7 @@ endif
ifeq (1,1)
LDLIBS += -lm
endif
-ifeq (1,1)
+ifeq (1,)
DEFINES += -D=WITH_LIBTINYXML
LDLIBS += -ltinyxml
endif
@@ -370,7 +370,7 @@ SOURCES += biosig.c \
biosig_client.c \
biosig_server.c
-ifneq (1,1)
+ifneq (1,)
## build with internal TinyXML when libtinyxml is not available
SOURCES += XMLParser/tinyxml.cpp \
XMLParser/tinyxmlparser.cpp \
@@ -790,7 +790,7 @@ win64mma: mma/biosig.tm mma/biosig.c
#############################################################
mex4o mex4m oct mex:
- MKOCTFILE="/usr/bin/mkoctfile" $(MAKE) -C mex $@
+ MKOCTFILE=":" $(MAKE) -C mex $@
mexw32 mexw64:
CROSS=$(CROSS) CROSS64=$(CROSS64) $(MAKE) -C mex $@
--- origsrc/biosig-2.3.3/biosig4c++/java/Makefile 2021-08-13 11:17:24.000000000 +0200
+++ src/biosig-2.3.3/biosig4c++/java/Makefile 2022-01-12 21:54:45.719726700 +0100
@@ -9,7 +9,7 @@
### JNI ###
# https://stackoverflow.com/questions/5963266/call-c-function-from-java
-JAVA_HOME ?= $(realpath $(dir $(realpath $(shell which /usr/bin/javac )))/..)
+JAVA_HOME ?= $(realpath $(dir $(realpath $(shell which : )))/..)
CLASS_PATH ?= $(JAVA_HOME)/bin
@@ -21,13 +21,13 @@ libBiosig.so: Biosig.h Biosig.c
Biosig.c -L.. -lbiosig -o libBiosig.so
Biosig.h: Biosig.class
- /usr/bin/javac -h . Biosig.java
+ : -h . Biosig.java
Biosig.class: Biosig.java
- /usr/bin/javac Biosig.java
+ : Biosig.java
test: libBiosig.so
- LD_LIBRARY_PATH=.. /usr/bin/java -Djava.library.path=. Biosig "../data/Newtest17-256.bdf"
+ LD_LIBRARY_PATH=.. : -Djava.library.path=. Biosig "../data/Newtest17-256.bdf"
clean:
-rm *.h
--- origsrc/biosig-2.3.3/biosig4c++/mex/Makefile 2021-08-13 11:17:24.000000000 +0200
+++ src/biosig-2.3.3/biosig4c++/mex/Makefile 2022-01-12 21:54:46.157222500 +0100
@@ -116,7 +116,7 @@ else
SONAME_POSTFIX = .$(DLEXT).${MAJOR_VERSION}.${MINOR_VERSION}
endif
-exec_prefix ?= /usr/local
+exec_prefix ?= /usr
DEFINES_ALL = #-D=NDEBUG
--- origsrc/biosig-2.3.3/biosig4c++/mma/Makefile 2021-08-13 11:17:24.000000000 +0200
+++ src/biosig-2.3.3/biosig4c++/mma/Makefile 2022-01-12 21:54:46.375982200 +0100
@@ -13,7 +13,7 @@
CROSS ?= /home/schloegl/src/mxe.github.schloegl/usr/bin/i686-w64-mingw32.static
CROSS64 ?= /home/schloegl/src/mxe.github.schloegl/usr/bin/x86_64-w64-mingw32.static
-exec_prefix ?= /usr/local
+exec_prefix ?= /usr
###########################################
## set Mathematica variables
[-- Attachment #5: biosig-2.3.3-1-src.hint --]
[-- Type: text/plain, Size: 1071 bytes --]
# comment
sdesc: "Tools for biomedical signal processing"
ldesc: "Library for biomedical signal processing,
featuring for example the analysis of biosignals such
as the electroencephalogram (EEG), electrocorticogram (ECoG),
electrocardiogram (ECG), electrooculogram (EOG), electromyogram (EMG),
respiration, etc. Major application areas are: Neuroinformatics,
brain-computer interfaces, neurophysiology, psychology,
cardiovascular systems and sleep research. The aim of the
BioSig project is to foster research in biomedical signal
processing by providing open source software tools for many
different applications. Generally, many concerns have to be addressed
in this scientific field. BioSig handles this by providing solutions for
data acquisition, artifact processing, quality control, feature extraction,
classification, modeling, data visualization, etc. "
category: Libs,Science,Utils
homepage: http://biosig.sourceforge.net/
build-depends: libb64 libcholmod-dev libtinyxml libz
test:
skip:
version: 2.3.3
# disable-check: check-name [check-name...]
[-- Attachment #6: libbiosig-2.3.3-1.hint --]
[-- Type: text/plain, Size: 445 bytes --]
# comment
sdesc: "Libary for biomedical signal processing"
ldesc: "Libary for biomedical signal processing"
category: Libs
requires: cholmod cygwin
# depends: version-relation[, version-relation...]
# obsoletes: version-relation[, version-relation...]
provides: libbiosig
# conflicts: version-relation[, version-relation...]
external-source: biosig
# message: id "some text"
test:
version: 2.3.3
# disable-check: check-name [check-name...]
[-- Attachment #7: libbiosig_devel-2.3.3-1.hint --]
[-- Type: text/plain, Size: 453 bytes --]
# comment
sdesc: "Libary for biomedical signal processing"
ldesc: "Libary for biomedical signal processing"
category: Libs
requires: cholmod-devel cygwin
# depends: version-relation[, version-relation...]
# obsoletes: version-relation[, version-relation...]
# provides: libbiosig
# conflicts: version-relation[, version-relation...]
external-source: biosig
# message: id "some text"
test:
version: 2.3.3
# disable-check: check-name [check-name...]
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [ITP] biosig [was: Re: newcomer issues when packaging biosig, stimfit, etc.]
2022-01-12 22:59 ` [ITP] biosig [was: Re: newcomer issues when packaging biosig, stimfit, etc.] Alois Schlögl
@ 2022-01-14 10:09 ` Marco Atzeri
2022-01-14 21:48 ` Alois Schlögl
0 siblings, 1 reply; 22+ messages in thread
From: Marco Atzeri @ 2022-01-14 10:09 UTC (permalink / raw)
To: cygwin-apps
On 12.01.2022 23:59, Alois Schlögl wrote:
>
>
> Am 1/12/22 um 06:47 schrieb Marco Atzeri:
>>> In the meantime, please find below the status for the libb64 and
>>> biosig packages.
>>
>>> Thanks that was helpful. Attached is an updated version for biosig
>>> and libb64.
>>>
>>> cygport libb64.cygport all
>>> cygport biosig.cygport all
>>>
>>> runs now w/o error. How can I test whether result can be installed
>>> and used ?
>>
>> One major problem.
>> Never build in the source directory, the final src.patch
>> must fit with you desired patch.
>> So only what you patched should come out.
>>
>> For this package that does not respect the build in a
>> different directory than source, you shoud start
>> with something like:
>>
>> src_compile() {
>> cd ${S}
>> lndirs
>> cd ${B}
>> cygautoreconf
>> cygconf
>> cygmake
>> }
>
>
>
> I've adapted biosig.cygport accordingly and addressed this in the
> attached version. It runs fine when doing
>
> cygport biosig.cygport all
>
> runs w/o error. Also testing the package with
>
> tar -C / -xvf
> biosig-2.3.3-1.x86_64/dist/biosig/biosig-tools/biosig-tools-2.3.3-1.tar.xz
> tar -C / -xvf
> biosig-2.3.3-1.x86_64/dist/biosig/libbiosig/libbiosig-2.3.3-1.tar.xz
> tar -C / -xvf
> biosig-2.3.3-1.x86_64/dist/biosig/libbiosig-devel/libbiosig-devel-2.3.3-1.tar.xz
>
>
> and running
> save2gdf -h
> works fine.
>
> Moreover, I understand now why my libb64.cygport file is not ready.
> ecause libb64 is not necessary for libbiosig's support of Stimfit, I'll
> omit libb64 for now.
> Would you please check whether Biosig is ready to be included in cygwin ?
>
>
> Cheers,
> Alois
Hi Alois.
it is almost fine
the only problem I see is that the shared library are build as
libbiosig.dll while they should be called cygbiosig.dll
(probably better cygbiosig-3.dll to handle the SOMANE)
please also run the test in the ${B} directory
I was playing with the CMakeList.txt to see if that was more easy
than your deep patch of the upstream Makefile's
src_compile() {
cd ${B}
CYGCMAKE_SOURCE="${S}/biosig4c++"
cygcmake
cygmake
I see however that also the CMakeLists.txt need some patching as
it builds only the shared lib withouh the SONAME and it is not updated
to include all the needed file in the t40x directory
and does not build the utility.
Sorry for slow response, but I have little time in this moment
Regards
Marco
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [ITP] biosig [was: Re: newcomer issues when packaging biosig, stimfit, etc.]
2022-01-14 10:09 ` Marco Atzeri
@ 2022-01-14 21:48 ` Alois Schlögl
2022-01-15 18:01 ` Marco Atzeri
0 siblings, 1 reply; 22+ messages in thread
From: Alois Schlögl @ 2022-01-14 21:48 UTC (permalink / raw)
To: cygwin-apps
Am 1/14/22 um 11:09 schrieb Marco Atzeri:
> On 12.01.2022 23:59, Alois Schlögl wrote:
>>
>>
>> Am 1/12/22 um 06:47 schrieb Marco Atzeri:
>>>> In the meantime, please find below the status for the libb64 and
>>>> biosig packages.
>>>
>>>> Thanks that was helpful. Attached is an updated version for biosig
>>>> and libb64.
>>>>
>>>> cygport libb64.cygport all
>>>> cygport biosig.cygport all
>>>>
>>>> runs now w/o error. How can I test whether result can be installed
>>>> and used ?
>>>
>>> One major problem.
>>> Never build in the source directory, the final src.patch
>>> must fit with you desired patch.
>>> So only what you patched should come out.
>>>
>>> For this package that does not respect the build in a
>>> different directory than source, you shoud start
>>> with something like:
>>>
>>> src_compile() {
>>> cd ${S}
>>> lndirs
>>> cd ${B}
>>> cygautoreconf
>>> cygconf
>>> cygmake
>>> }
>>
>>
>>
>> I've adapted biosig.cygport accordingly and addressed this in the
>> attached version. It runs fine when doing
>>
>> cygport biosig.cygport all
>>
>> runs w/o error. Also testing the package with
>>
>> tar -C / -xvf
>> biosig-2.3.3-1.x86_64/dist/biosig/biosig-tools/biosig-tools-2.3.3-1.tar.xz
>> tar -C / -xvf
>> biosig-2.3.3-1.x86_64/dist/biosig/libbiosig/libbiosig-2.3.3-1.tar.xz
>> tar -C / -xvf
>> biosig-2.3.3-1.x86_64/dist/biosig/libbiosig-devel/libbiosig-devel-2.3.3-1.tar.xz
>>
>>
>> and running
>> save2gdf -h
>> works fine.
>>
>> Moreover, I understand now why my libb64.cygport file is not ready.
>> ecause libb64 is not necessary for libbiosig's support of Stimfit,
>> I'll omit libb64 for now.
>> Would you please check whether Biosig is ready to be included in
>> cygwin ?
>>
>>
>> Cheers,
>> Alois
>
>
> Hi Alois.
>
> it is almost fine
Hi Marco,
thanks for the feedback.
>
> the only problem I see is that the shared library are build as
>
> libbiosig.dll while they should be called cygbiosig.dll
> (probably better cygbiosig-3.dll to handle the SOMANE)
>
I tried to do that, but run into issue. The exe-files still expect
libbbiosig.dll, and do not recognise cygbiosig-3.dll
It seems this would require significant changes by upstream, also by
other projects that would make use of libbiosig (e.g. stimfit,
sigviewer, python-biosig, etc.)
Since I do not under stand the purpose of renaming libbiosig to
cygbiosig, I'm reluctant to go that route.
What kind of problems is this renaming supposed to solve ?
Concerning SONAME-versioning, I'd like to avoid this for now, and
introduce versioning only when its really needed.
In the foreseeable future, I do not expect any changes will be needed
that would break the API
> please also run the test in the ${B} directory
Done, this works without error. Please adapt that change accordingly.
>
>
> I was playing with the CMakeList.txt to see if that was more easy
> than your deep patch of the upstream Makefile's
>
I'm afraid that this "deep patch" is just an accidental artifact.
When running configure, all Makefile are rebuild from Makefile.in,
The Makefile(s) were packaged just by accident in v2.3.3.
But in fact these Makefiles should not have part of the released package.
Cheers,
Alois
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [ITP] biosig [was: Re: newcomer issues when packaging biosig, stimfit, etc.]
2022-01-14 21:48 ` Alois Schlögl
@ 2022-01-15 18:01 ` Marco Atzeri
2022-01-15 20:44 ` Achim Gratz
2022-01-16 22:13 ` Alois Schlögl
0 siblings, 2 replies; 22+ messages in thread
From: Marco Atzeri @ 2022-01-15 18:01 UTC (permalink / raw)
To: cygwin-apps
On 14.01.2022 22:48, Alois Schlögl wrote:
>
>
> Am 1/14/22 um 11:09 schrieb Marco Atzeri:
>> On 12.01.2022 23:59, Alois Schlögl wrote:
>>
>> I was playing with the CMakeList.txt to see if that was more easy
>> than your deep patch of the upstream Makefile's
>>
>
> I'm afraid that this "deep patch" is just an accidental artifact.
> When running configure, all Makefile are rebuild from Makefile.in,
> The Makefile(s) were packaged just by accident in v2.3.3.
> But in fact these Makefiles should not have part of the released package.
>
add DIFF_EXCLUDES="Makefile" to avoid the artifact
> Cheers,
> Alois
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [ITP] biosig [was: Re: newcomer issues when packaging biosig, stimfit, etc.]
2022-01-15 18:01 ` Marco Atzeri
@ 2022-01-15 20:44 ` Achim Gratz
2022-01-17 21:44 ` Alois Schlögl
2022-01-16 22:13 ` Alois Schlögl
1 sibling, 1 reply; 22+ messages in thread
From: Achim Gratz @ 2022-01-15 20:44 UTC (permalink / raw)
To: cygwin-apps
Marco Atzeri writes:
> add DIFF_EXCLUDES="Makefile" to avoid the artifact
DISTCLEANFILES would be more appropriate it seems.
Regards,
Achim.
--
+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+
SD adaptation for Waldorf microQ V2.22R2:
http://Synth.Stromeko.net/Downloads.html#WaldorfSDada
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [ITP] biosig [was: Re: newcomer issues when packaging biosig, stimfit, etc.]
2022-01-15 18:01 ` Marco Atzeri
2022-01-15 20:44 ` Achim Gratz
@ 2022-01-16 22:13 ` Alois Schlögl
2022-01-22 17:52 ` Marco Atzeri
1 sibling, 1 reply; 22+ messages in thread
From: Alois Schlögl @ 2022-01-16 22:13 UTC (permalink / raw)
To: Marco Atzeri, cygwin-apps
[-- Attachment #1: Type: text/plain, Size: 888 bytes --]
Am 1/15/22 um 19:01 schrieb Marco Atzeri:
> On 14.01.2022 22:48, Alois Schlögl wrote:
>>
>>
>> Am 1/14/22 um 11:09 schrieb Marco Atzeri:
>>> On 12.01.2022 23:59, Alois Schlögl wrote:
>
>>>
>>> I was playing with the CMakeList.txt to see if that was more easy
>>> than your deep patch of the upstream Makefile's
>>>
>>
>> I'm afraid that this "deep patch" is just an accidental artifact.
>> When running configure, all Makefile are rebuild from Makefile.in,
>> The Makefile(s) were packaged just by accident in v2.3.3.
>> But in fact these Makefiles should not have part of the released
>> package.
>>
>
> add DIFF_EXCLUDES="Makefile" to avoid the artifact
>
>
>> Cheers,
>> Alois
Dear Marco,
attached is the revised version.
In addition, I'm trying also to include the python39-biosig package.
Could you please check whether this would work ?
Cheers,
Alois
[-- Attachment #2: biosig.cygport --]
[-- Type: text/plain, Size: 3792 bytes --]
# package name
NAME="biosig"
VERSION=2.3.3
RELEASE=1
# .hint generation
CATEGORY="Libs,Science"
SUMMARY="Tools for biomedical signal processing."
DESCRIPTION="BioSig is an open source software library for
biomedical signal processing, featuring for example the
analysis of biosignals such as the electroencephalogram (EEG),
electrocorticogram (ECoG), electrocardiogram (ECG),
electrooculogram (EOG), electromyogram (EMG), respiration,
and so on. Major application areas are: Neuroinformatics,
brain-computer interfaces, neurophysiology, psychology, c
ardiovascular systems and sleep research. The aim of the
BioSig project is to foster research in biomedical signal
processing by providing open source software tools for many
different applications. Generally, many concerns have to be a
ddressed in this scientific field. BioSig handles this by providing
solutions for data acquisition, artifact processing, quality control,
feature extraction, classification, modeling, data visualization, etc. "
# source and patch files
SRC_URI="https://sourceforge.net/projects/biosig/files/BioSig%20for%20C_C%2B%2B/src/biosig-2.3.3.src.tar.gz"
# PATCH_URI="biosig-2.3.3-fix-build.patch"
# use the standard src_compile, src_install and src_test
PKG_NAMES="libbiosig libbiosig-devel biosig-tools python39-biosig"
# PKG_NAMES="libbiosig libbiosig-devel biosig-tools"
biosig_tools_CONTENTS="
usr/bin/save2gdf.exe
usr/bin/physicalunits.exe
usr/bin/biosig2gdf.exe
usr/share/man/man1/save2gdf.1.gz
usr/share/man/man1/biosig2gdf.1.gz
usr/share/man/man1/biosig_fhir.1.gz
usr/share/man/man1/physicalunits.1.gz
usr/share/doc/biosig/COPYING
usr/share/doc/biosig/README
"
# not included yet
# usr/share/man/biosig_fhir.1 usr/share/man/sigviewer.1
libbiosig_CONTENTS="
usr/bin/libbiosig.dll
usr/bin/libphysicalunits.dll
"
libbiosig_devel_CONTENTS="
usr/include/biosig-dev.h
usr/include/biosig.h
usr/include/biosig2.h
usr/include/gdftime.h
usr/include/physicalunits.h
usr/include/biosig-network.h
usr/include/mdc_ecg_codes.h
usr/lib/libbiosig.a
usr/lib/libbiosig.dll.a
usr/lib/libphysicalunits.a
usr/lib/libphysicalunits.dll.a
usr/lib/pkgconfig/libbiosig.pc
"
#python3-biosig_CONTENTS="
# dist/Biosig-2.3.3-cp39-cp39-cygwin_3_3_3_x86_64.whl
#"
DIFF_EXCLUDES="depend Makefile"
# use not standard src_compile, src_install and src_test
src_compile() {
cd ${S}
lndirs
cd ${B}
cygautoreconf
cygconf # --prefix=/usr
# libbiosig
cygmake lib
# biosig-tools w/o biosig_fhir
cygmake -C biosig4c++ save2gdf physicalunits biosig2gdf
# python3-biosig
cygmake -C biosig4c++/python wheel
# cd ${B}/biosig4c++/python/
# python3_distutils_compile bdist_wheel
# python3_wheel_compile
}
src_install() {
cd ${S}
doinclude ${S}/biosig4c++/*.h
dobin ${B}/biosig4c++/save2gdf.exe
# dobin ${B}/biosig4c++/biosig_fhir.exe
dobin ${B}/biosig4c++/biosig2gdf.exe
dobin ${B}/biosig4c++/physicalunits.exe
dobin ${B}/biosig4c++/libbiosig.dll
dobin ${B}/biosig4c++/libphysicalunits.dll
dolib ${B}/biosig4c++/libbiosig.dll.a
dolib ${B}/biosig4c++/libbiosig.a
dolib ${B}/biosig4c++/libphysicalunits.dll.a
dolib ${B}/biosig4c++/libphysicalunits.a
dopkgconfig ${B}/biosig4c++/libbiosig.pc
# doman ${S}/biosig4c++/doc/bin2rec.1
doman ${S}/biosig4c++/doc/biosig2gdf.1
doman ${S}/biosig4c++/doc/biosig_fhir.1
doman ${S}/biosig4c++/doc/physicalunits.1
doman ${S}/biosig4c++/doc/save2gdf.1
# dowheel ${B}/biosig4c++/python/dist/Biosig-2.3.3-cp39-cp39-cygwin_3_3_3_x86_64.whl
}
src_test() {
cd ${B}
biosig4c++/physicalunits.exe
biosig4c++/save2gdf.exe --help
# biosig4c++/biosig_fhir.exe --help
python -c "import biosig"
}
[-- Attachment #3: biosig-2.3.3-1-src.hint --]
[-- Type: text/plain, Size: 1090 bytes --]
# comment
sdesc: "Tools for biomedical signal processing"
ldesc: "Library for biomedical signal processing,
featuring for example the analysis of biosignals such
as the electroencephalogram (EEG), electrocorticogram (ECoG),
electrocardiogram (ECG), electrooculogram (EOG), electromyogram (EMG),
respiration, etc. Major application areas are: Neuroinformatics,
brain-computer interfaces, neurophysiology, psychology,
cardiovascular systems and sleep research. The aim of the
BioSig project is to foster research in biomedical signal
processing by providing open source software tools for many
different applications. Generally, many concerns have to be addressed
in this scientific field. BioSig handles this by providing solutions for
data acquisition, artifact processing, quality control, feature extraction,
classification, modeling, data visualization, etc. "
category: Libs,Science,Utils
homepage: http://biosig.sourceforge.net/
build-depends: libb64 libcholmod-dev libtinyxml libz python-wheel-wheel
test:
skip:
version: 2.3.3
# disable-check: check-name [check-name...]
[-- Attachment #4: biosig-2.3.3-1.hint --]
[-- Type: text/plain, Size: 1293 bytes --]
# comment
sdesc: "Tools for biomedical signal processing"
ldesc: "Library for biomedical signal processing,
featuring for example the analysis of biosignals such
as the electroencephalogram (EEG), electrocorticogram (ECoG),
electrocardiogram (ECG), electrooculogram (EOG), electromyogram (EMG),
respiration, etc. Major application areas are: Neuroinformatics,
brain-computer interfaces, neurophysiology, psychology,
cardiovascular systems and sleep research. The aim of the
BioSig project is to foster research in biomedical signal
processing by providing open source software tools for many
different applications. Generally, many concerns have to be addressed
in this scientific field. BioSig handles this by providing solutions for
data acquisition, artifact processing, quality control, feature extraction,
classification, modeling, data visualization, etc. "
category: Libs,Science,Utils
requires: libb64 libcholmod tinyxml cygwin
# depends: version-relation[, version-relation...]
# obsoletes: version-relation[, version-relation...]
# provides: package[, package...]
# conflicts: version-relation[, version-relation...]
external-source: release/biosig/biosig-2.3.3-1-src.tar.xz
# message: id "some text"
test:
version: 2.3.3
# disable-check: check-name [check-name...]
[-- Attachment #5: libbiosig-2.3.3-1.hint --]
[-- Type: text/plain, Size: 445 bytes --]
# comment
sdesc: "Libary for biomedical signal processing"
ldesc: "Libary for biomedical signal processing"
category: Libs
requires: cholmod cygwin
# depends: version-relation[, version-relation...]
# obsoletes: version-relation[, version-relation...]
provides: libbiosig
# conflicts: version-relation[, version-relation...]
external-source: biosig
# message: id "some text"
test:
version: 2.3.3
# disable-check: check-name [check-name...]
[-- Attachment #6: libbiosig_devel-2.3.3-1.hint --]
[-- Type: text/plain, Size: 453 bytes --]
# comment
sdesc: "Libary for biomedical signal processing"
ldesc: "Libary for biomedical signal processing"
category: Libs
requires: cholmod-devel cygwin
# depends: version-relation[, version-relation...]
# obsoletes: version-relation[, version-relation...]
# provides: libbiosig
# conflicts: version-relation[, version-relation...]
external-source: biosig
# message: id "some text"
test:
version: 2.3.3
# disable-check: check-name [check-name...]
[-- Attachment #7: python39-biosig-2.3.3-1.hint --]
[-- Type: text/plain, Size: 563 bytes --]
# comment
sdesc: "Biosig for Python"
ldesc: "Python-bindings to libbiosig, can be use
to load all biosig dataformats in to Python.
category: Libs,Science,Utils
requires: libbiosig-devel python39 python39-numpy cygwin
# depends: version-relation[, version-relation...]
# obsoletes: version-relation[, version-relation...]
# provides: package[, package...]
# conflicts: version-relation[, version-relation...]
external-source: release/biosig/biosig-2.3.3-1-src.tar.xz
# message: id "some text"
test:
version: 2.3.3
# disable-check: check-name [check-name...]
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [ITP] biosig [was: Re: newcomer issues when packaging biosig, stimfit, etc.]
2022-01-15 20:44 ` Achim Gratz
@ 2022-01-17 21:44 ` Alois Schlögl
2022-01-18 5:32 ` Brian Inglis
0 siblings, 1 reply; 22+ messages in thread
From: Alois Schlögl @ 2022-01-17 21:44 UTC (permalink / raw)
To: Achim Gratz, cygwin-apps
[-- Attachment #1: Type: text/plain, Size: 293 bytes --]
Am 1/15/22 um 21:44 schrieb Achim Gratz:
> Marco Atzeri writes:
>> add DIFF_EXCLUDES="Makefile" to avoid the artifact
> DISTCLEANFILES would be more appropriate it seems.
>
>
> Regards,
> Achim.
I tried this (see attachment), but I'm not sure this is what you meant.
Regards,
Alois
[-- Attachment #2: biosig.cygport --]
[-- Type: text/plain, Size: 3878 bytes --]
# package name
NAME="biosig"
VERSION=2.3.3
RELEASE=1
# .hint generation
CATEGORY="Libs,Science"
SUMMARY="Tools for biomedical signal processing."
DESCRIPTION="BioSig is an open source software library for
biomedical signal processing, featuring for example the
analysis of biosignals such as the electroencephalogram (EEG),
electrocorticogram (ECoG), electrocardiogram (ECG),
electrooculogram (EOG), electromyogram (EMG), respiration,
and so on. Major application areas are: Neuroinformatics,
brain-computer interfaces, neurophysiology, psychology, c
ardiovascular systems and sleep research. The aim of the
BioSig project is to foster research in biomedical signal
processing by providing open source software tools for many
different applications. Generally, many concerns have to be a
ddressed in this scientific field. BioSig handles this by providing
solutions for data acquisition, artifact processing, quality control,
feature extraction, classification, modeling, data visualization, etc. "
# source and patch files
SRC_URI="https://sourceforge.net/projects/biosig/files/BioSig%20for%20C_C%2B%2B/src/biosig-2.3.3.src.tar.gz"
# PATCH_URI="biosig-2.3.3-fix-build.patch"
# use the standard src_compile, src_install and src_test
PKG_NAMES="libbiosig libbiosig-devel biosig-tools python3-biosig"
# PKG_NAMES="libbiosig libbiosig-devel biosig-tools"
biosig_tools_CONTENTS="
usr/bin/save2gdf.exe
usr/bin/physicalunits.exe
usr/bin/biosig2gdf.exe
usr/share/man/man1/save2gdf.1.gz
usr/share/man/man1/biosig2gdf.1.gz
usr/share/man/man1/biosig_fhir.1.gz
usr/share/man/man1/physicalunits.1.gz
usr/share/doc/biosig/COPYING
usr/share/doc/biosig/README
"
# not included yet
# usr/share/man/biosig_fhir.1 usr/share/man/sigviewer.1
libbiosig_CONTENTS="
usr/bin/libbiosig.dll
usr/bin/libphysicalunits.dll
"
libbiosig_devel_CONTENTS="
usr/include/biosig-dev.h
usr/include/biosig.h
usr/include/biosig2.h
usr/include/gdftime.h
usr/include/physicalunits.h
usr/include/biosig-network.h
usr/include/mdc_ecg_codes.h
usr/lib/libbiosig.a
usr/lib/libbiosig.dll.a
usr/lib/libphysicalunits.a
usr/lib/libphysicalunits.dll.a
usr/lib/pkgconfig/libbiosig.pc
"
#python3-biosig_CONTENTS="
# dist/Biosig-2.3.3-cp39-cp39-cygwin_3_3_3_x86_64.whl
#"
DIFF_EXCLUDES="depend"
# CYGPORT_USE_UNSTABLE_API=1
# use not standard src_compile, src_install and src_test
src_prep() {
DISTCLEANFILES
}
src_compile() {
cd ${S}
lndirs
cd ${B}
cygautoreconf
cygconf # --prefix=/usr
# libbiosig
cygmake lib
# biosig-tools w/o biosig_fhir
cygmake -C biosig4c++ save2gdf physicalunits biosig2gdf
# python3-biosig
cygmake -C biosig4c++/python wheel
# cd ${B}/biosig4c++/python/
# python3_distutils_compile bdist_wheel
# python3_wheel_compile
}
src_install() {
cd ${S}
doinclude ${S}/biosig4c++/*.h
dobin ${B}/biosig4c++/save2gdf.exe
# dobin ${B}/biosig4c++/biosig_fhir.exe
dobin ${B}/biosig4c++/biosig2gdf.exe
dobin ${B}/biosig4c++/physicalunits.exe
dobin ${B}/biosig4c++/libbiosig.dll
dobin ${B}/biosig4c++/libphysicalunits.dll
dolib ${B}/biosig4c++/libbiosig.dll.a
dolib ${B}/biosig4c++/libbiosig.a
dolib ${B}/biosig4c++/libphysicalunits.dll.a
dolib ${B}/biosig4c++/libphysicalunits.a
dopkgconfig ${B}/biosig4c++/libbiosig.pc
# doman ${S}/biosig4c++/doc/bin2rec.1
doman ${S}/biosig4c++/doc/biosig2gdf.1
doman ${S}/biosig4c++/doc/biosig_fhir.1
doman ${S}/biosig4c++/doc/physicalunits.1
doman ${S}/biosig4c++/doc/save2gdf.1
# dowheel ${B}/biosig4c++/python/dist/Biosig-2.3.3-cp39-cp39-cygwin_3_3_3_x86_64.whl
}
src_test() {
cd ${B}
biosig4c++/physicalunits.exe
biosig4c++/save2gdf.exe --help
# biosig4c++/biosig_fhir.exe --help
python -c "import biosig"
check_python3_module biosigABC
}
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [ITP] biosig [was: Re: newcomer issues when packaging biosig, stimfit, etc.]
2022-01-17 21:44 ` Alois Schlögl
@ 2022-01-18 5:32 ` Brian Inglis
2022-01-18 21:50 ` Alois Schlögl
0 siblings, 1 reply; 22+ messages in thread
From: Brian Inglis @ 2022-01-18 5:32 UTC (permalink / raw)
To: cygwin-apps
On 2022-01-17 14:44, Alois Schlögl wrote:
> Am 1/15/22 um 21:44 schrieb Achim Gratz:
>> Marco Atzeri writes:
>>> add DIFF_EXCLUDES="Makefile" to avoid the artifact
>> DISTCLEANFILES would be more appropriate it seems.
DISTCLEANFILES is deleted immediately after downloading and unpacking
the *UPSTREAM* source:
https://cygwin.github.io/cygport/src_prep_cygpart.html#robo112
"A list of files to be deleted immediately upon unpacking sources,
relative to $S. This is intended to be used with buildsystem-generated
files which are incorrectly included in the source tarball."
> I tried this (see attachment), but I'm not sure this is what you meant.
DIFF_EXCLUDES is a list of files generated in $S not automatically
excluded from the source package:
https://cygwin.github.io/cygport/pkg_pkg_cygpart.html#robo384
"A list of file names, directory names, or glob patterns in $S which
will be excluded when creating the .src.patch file. This should be used
for files automatically generated in $S to avoid polluting the patch.
NOTE
Files generated by various buildsystem infrastructures, such as
autoconf, automake, gettext, and libtool are already excluded
automatically and need not be listed here."
Add to DIFF_EXCLUDES the names of any files you see after the output
header:
>>> Creating source patches
--
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.]
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [ITP] biosig [was: Re: newcomer issues when packaging biosig, stimfit, etc.]
2022-01-18 5:32 ` Brian Inglis
@ 2022-01-18 21:50 ` Alois Schlögl
2022-01-18 22:56 ` Brian Inglis
0 siblings, 1 reply; 22+ messages in thread
From: Alois Schlögl @ 2022-01-18 21:50 UTC (permalink / raw)
To: cygwin-apps, Brian Inglis
[-- Attachment #1: Type: text/plain, Size: 1782 bytes --]
Am 1/18/22 um 06:32 schrieb Brian Inglis:
> On 2022-01-17 14:44, Alois Schlögl wrote:
>> Am 1/15/22 um 21:44 schrieb Achim Gratz:
>>> Marco Atzeri writes:
>
>>>> add DIFF_EXCLUDES="Makefile" to avoid the artifact
>
>>> DISTCLEANFILES would be more appropriate it seems.
>
> DISTCLEANFILES is deleted immediately after downloading and unpacking
> the *UPSTREAM* source:
>
> https://cygwin.github.io/cygport/src_prep_cygpart.html#robo112
>
> "A list of files to be deleted immediately upon unpacking sources,
> relative to $S. This is intended to be used with buildsystem-generated
> files which are incorrectly included in the source tarball."
>
>> I tried this (see attachment), but I'm not sure this is what you meant.
>
> DIFF_EXCLUDES is a list of files generated in $S not automatically
> excluded from the source package:
>
> https://cygwin.github.io/cygport/pkg_pkg_cygpart.html#robo384
>
> "A list of file names, directory names, or glob patterns in $S which
> will be excluded when creating the .src.patch file. This should be
> used for files automatically generated in $S to avoid polluting the
> patch.
> NOTE
> Files generated by various buildsystem infrastructures, such as
> autoconf, automake, gettext, and libtool are already excluded
> automatically and need not be listed here."
>
> Add to DIFF_EXCLUDES the names of any files you see after the output
> header:
>
>>>> Creating source patches
>
Ok, thanks for these clear hints. I've now added these files as
suggested. The revised version is attached.
Moreover, I've removed (commented) all aspects for building of
python-biosig bindings, in order not to delay the inclusion of Biosig in
Cygwin.
Is there anything else that need to be considered ?
Cheers,
Alois
[-- Attachment #2: biosig.cygport --]
[-- Type: text/plain, Size: 3981 bytes --]
# package name
NAME="biosig"
VERSION=2.3.3
RELEASE=1
# .hint generation
CATEGORY="Libs,Science"
SUMMARY="Tools for biomedical signal processing."
DESCRIPTION="BioSig is an open source software library for
biomedical signal processing, featuring for example the
analysis of biosignals such as the electroencephalogram (EEG),
electrocorticogram (ECoG), electrocardiogram (ECG),
electrooculogram (EOG), electromyogram (EMG), respiration,
and so on. Major application areas are: Neuroinformatics,
brain-computer interfaces, neurophysiology, psychology, c
ardiovascular systems and sleep research. The aim of the
BioSig project is to foster research in biomedical signal
processing by providing open source software tools for many
different applications. Generally, many concerns have to be a
ddressed in this scientific field. BioSig handles this by providing
solutions for data acquisition, artifact processing, quality control,
feature extraction, classification, modeling, data visualization, etc. "
# source and patch files
SRC_URI="https://sourceforge.net/projects/biosig/files/BioSig%20for%20C_C%2B%2B/src/biosig-2.3.3.src.tar.gz"
# PATCH_URI="biosig-2.3.3-fix-build.patch"
# use the standard src_compile, src_install and src_test
# PKG_NAMES="libbiosig libbiosig-devel biosig-tools python3-biosig"
PKG_NAMES="libbiosig libbiosig-devel biosig-tools"
biosig_tools_CONTENTS="
usr/bin/save2gdf.exe
usr/bin/physicalunits.exe
usr/bin/biosig2gdf.exe
usr/share/man/man1/save2gdf.1.gz
usr/share/man/man1/biosig2gdf.1.gz
usr/share/man/man1/biosig_fhir.1.gz
usr/share/man/man1/physicalunits.1.gz
usr/share/doc/biosig/COPYING
usr/share/doc/biosig/README
"
# not included yet, would require libb64
# usr/share/man/biosig_fhir.1 usr/share/man/sigviewer.1
libbiosig_CONTENTS="
usr/bin/libbiosig.dll
usr/bin/libphysicalunits.dll
"
libbiosig_devel_CONTENTS="
usr/include/biosig-dev.h
usr/include/biosig.h
usr/include/biosig2.h
usr/include/gdftime.h
usr/include/physicalunits.h
usr/include/biosig-network.h
usr/include/mdc_ecg_codes.h
usr/lib/libbiosig.a
usr/lib/libbiosig.dll.a
usr/lib/libphysicalunits.a
usr/lib/libphysicalunits.dll.a
usr/lib/pkgconfig/libbiosig.pc
"
#python3-biosig_CONTENTS="
# dist/Biosig-2.3.3-cp39-cp39-cygwin_3_3_3_x86_64.whl
#"
DIFF_EXCLUDES="depend
Makefile
biosig4c++/Makefile
biosig4c++/java/Makefile
biosig4c++/mex/Makefile
biosig4c++/mma/Makefile
"
# use not standard src_compile, src_install and src_test
src_compile() {
cd ${S}
lndirs
cd ${B}
cygautoreconf
cygconf # --prefix=/usr
### libbiosig
cygmake lib
### biosig-tools w/o biosig_fhir
cygmake -C biosig4c++ save2gdf physicalunits biosig2gdf
### python3-biosig
# cygmake -C biosig4c++/python wheel
# cd ${B}/biosig4c++/python/
# python3_distutils_compile bdist_wheel
# python3_wheel_compile
}
src_install() {
cd ${S}
doinclude ${S}/biosig4c++/*.h
dobin ${B}/biosig4c++/save2gdf.exe
# dobin ${B}/biosig4c++/biosig_fhir.exe
dobin ${B}/biosig4c++/biosig2gdf.exe
dobin ${B}/biosig4c++/physicalunits.exe
dobin ${B}/biosig4c++/libbiosig.dll
dobin ${B}/biosig4c++/libphysicalunits.dll
dolib ${B}/biosig4c++/libbiosig.dll.a
dolib ${B}/biosig4c++/libbiosig.a
dolib ${B}/biosig4c++/libphysicalunits.dll.a
dolib ${B}/biosig4c++/libphysicalunits.a
dopkgconfig ${B}/biosig4c++/libbiosig.pc
# doman ${S}/biosig4c++/doc/bin2rec.1
doman ${S}/biosig4c++/doc/biosig2gdf.1
doman ${S}/biosig4c++/doc/biosig_fhir.1
doman ${S}/biosig4c++/doc/physicalunits.1
doman ${S}/biosig4c++/doc/save2gdf.1
# dowheel ${B}/biosig4c++/python/dist/Biosig-2.3.3-cp39-cp39-cygwin_3_3_3_x86_64.whl
}
src_test() {
cd ${B}
biosig4c++/physicalunits.exe
biosig4c++/save2gdf.exe --help
# biosig4c++/biosig_fhir.exe --help
# python -c "import biosig"
# check_python3_module biosig
}
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [ITP] biosig [was: Re: newcomer issues when packaging biosig, stimfit, etc.]
2022-01-18 21:50 ` Alois Schlögl
@ 2022-01-18 22:56 ` Brian Inglis
2022-01-19 3:51 ` Brian Inglis
2022-01-20 20:48 ` Alois Schlögl
0 siblings, 2 replies; 22+ messages in thread
From: Brian Inglis @ 2022-01-18 22:56 UTC (permalink / raw)
To: cygwin-apps
On 2022-01-18 14:50, Alois Schlögl wrote:
> Am 1/18/22 um 06:32 schrieb Brian Inglis:
>> On 2022-01-17 14:44, Alois Schlögl wrote:
>>> Am 1/15/22 um 21:44 schrieb Achim Gratz:
>>>> Marco Atzeri writes:
>>
>>>>> add DIFF_EXCLUDES="Makefile" to avoid the artifact
>>
>>>> DISTCLEANFILES would be more appropriate it seems.
>>
>> DISTCLEANFILES is deleted immediately after downloading and unpacking
>> the *UPSTREAM* source:
>>
>> https://cygwin.github.io/cygport/src_prep_cygpart.html#robo112
>>
>> "A list of files to be deleted immediately upon unpacking sources,
>> relative to $S. This is intended to be used with buildsystem-generated
>> files which are incorrectly included in the source tarball."
>>
>>> I tried this (see attachment), but I'm not sure this is what you meant.
>>
>> DIFF_EXCLUDES is a list of files generated in $S not automatically
>> excluded from the source package:
>>
>> https://cygwin.github.io/cygport/pkg_pkg_cygpart.html#robo384
>>
>> "A list of file names, directory names, or glob patterns in $S which
>> will be excluded when creating the .src.patch file. This should be
>> used for files automatically generated in $S to avoid polluting the
>> patch.
>> NOTE
>> Files generated by various buildsystem infrastructures, such as
>> autoconf, automake, gettext, and libtool are already excluded
>> automatically and need not be listed here."
>> Add to DIFF_EXCLUDES the names of any files you see after the output
>> header:
>>
>>>>> Creating source patches
> Ok, thanks for these clear hints. I've now added these files as
> suggested. The revised version is attached.
> Moreover, I've removed (commented) all aspects for building of
> python-biosig bindings, in order not to delay the inclusion of Biosig in
> Cygwin.
> Is there anything else that need to be considered ?
CATEGORY is a *space* separated list in quotes.
Before SRC_URI and PATCH_URI normally comes:
HOMEPAGE=https://sourceforge.net/projects/biosig/files/
you don't need to add quotes for nonspaced strings.
You may also test your cygport and any other source patches and files
you require by creating and committing them into a local git repo named
the same as the package (preferably all lower case) and pushing to the
git-cygwin-packages playground repo and branch:
git push --set-upstream ssh://cygwin/git/cygwin-packages/playground.git
playground -f
which will submit the build to the Cygwin GitHub Action CI and print the
link for you to monitor the CI job, view the build logs for noarch, x86,
and x86_64, and download them.
--
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.]
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [ITP] biosig [was: Re: newcomer issues when packaging biosig, stimfit, etc.]
2022-01-18 22:56 ` Brian Inglis
@ 2022-01-19 3:51 ` Brian Inglis
2022-01-20 20:48 ` Alois Schlögl
1 sibling, 0 replies; 22+ messages in thread
From: Brian Inglis @ 2022-01-19 3:51 UTC (permalink / raw)
To: cygwin-apps
On 2022-01-18 15:56, Brian Inglis wrote:
> On 2022-01-18 14:50, Alois Schlögl wrote:
>> Am 1/18/22 um 06:32 schrieb Brian Inglis:
>>> On 2022-01-17 14:44, Alois Schlögl wrote:
>>>> Am 1/15/22 um 21:44 schrieb Achim Gratz:
>>>>> Marco Atzeri writes:
>>>
>>>>>> add DIFF_EXCLUDES="Makefile" to avoid the artifact
>>>
>>>>> DISTCLEANFILES would be more appropriate it seems.
>>>
>>> DISTCLEANFILES is deleted immediately after downloading and unpacking
>>> the *UPSTREAM* source:
>>>
>>> https://cygwin.github.io/cygport/src_prep_cygpart.html#robo112
>>>
>>> "A list of files to be deleted immediately upon unpacking sources,
>>> relative to $S. This is intended to be used with
>>> buildsystem-generated files which are incorrectly included in the
>>> source tarball."
>>>
>>>> I tried this (see attachment), but I'm not sure this is what you meant.
>>>
>>> DIFF_EXCLUDES is a list of files generated in $S not automatically
>>> excluded from the source package:
>>>
>>> https://cygwin.github.io/cygport/pkg_pkg_cygpart.html#robo384
>>>
>>> "A list of file names, directory names, or glob patterns in $S which
>>> will be excluded when creating the .src.patch file. This should be
>>> used for files automatically generated in $S to avoid polluting the
>>> patch.
>>> NOTE
>>> Files generated by various buildsystem infrastructures, such as
>>> autoconf, automake, gettext, and libtool are already excluded
>>> automatically and need not be listed here."
>
>>> Add to DIFF_EXCLUDES the names of any files you see after the output
>>> header:
>>>
>>>>>> Creating source patches
>
>> Ok, thanks for these clear hints. I've now added these files as
>> suggested. The revised version is attached.
>> Moreover, I've removed (commented) all aspects for building of
>> python-biosig bindings, in order not to delay the inclusion of Biosig
>> in Cygwin.
>> Is there anything else that need to be considered ?
>
> CATEGORY is a *space* separated list in quotes.
>
> Before SRC_URI and PATCH_URI normally comes:
>
> HOMEPAGE=https://sourceforge.net/projects/biosig/files/
>
> you don't need to add quotes for nonspaced strings.
>
> You may also test your cygport and any other source patches and files
> you require by creating and committing them into a local git repo named
> the same as the package (preferably all lower case) and pushing to the
> git-cygwin-packages playground repo and branch:
>
> git push --set-upstream ssh://cygwin/git/cygwin-packages/playground.git
> playground -f
>
> which will submit the build to the Cygwin GitHub Action CI and print the
> link for you to monitor the CI job, view the build logs for noarch, x86,
> and x86_64, and download them.
I just noticed that your description is badly wrapped: to avoid this,
run the text through fmt or your editor equivalent (e.g. gvim :set tw=72
then gqq to wrap the lines) and paste between the quotes after
DESCRIPTION="...
...".
Forgot to mention BUILD_REQUIRES which lists all the packages and
libraries which need installed to build the package(s) using cygport.
From your README for Debian, on Cygwin those packages would probably be:
BUILD_REQUIRES="libtinyxml2-devel octave-devel python-devel"
BUILD_REQUIRES+=" gawk python-numpy python3-numpy R"
and your runtime dependencies should be reported by cygport at the end
of the packaging stage as:
>>> biosig requires: cygwin libtinyxml2_6 octave-nan octave-tsa R
If any are missing, you may add them using REQUIRES similar to
BUILD_REQUIRES, however specifying all the packages with REQUIRES
results in confusing duplication in cygport output and the setup.ini
biosig requires: line entry.
--
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.]
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [ITP] biosig [was: Re: newcomer issues when packaging biosig, stimfit, etc.]
2022-01-18 22:56 ` Brian Inglis
2022-01-19 3:51 ` Brian Inglis
@ 2022-01-20 20:48 ` Alois Schlögl
2022-01-21 12:53 ` Jon Turney
1 sibling, 1 reply; 22+ messages in thread
From: Alois Schlögl @ 2022-01-20 20:48 UTC (permalink / raw)
To: cygwin-apps
Am 1/18/22 um 23:56 schrieb Brian Inglis:
> On 2022-01-18 14:50, Alois Schlögl wrote:
>> Am 1/18/22 um 06:32 schrieb Brian Inglis:
>>> On 2022-01-17 14:44, Alois Schlögl wrote:
>>>> Am 1/15/22 um 21:44 schrieb Achim Gratz:
>>>>> Marco Atzeri writes:
>>>
>>>>>> add DIFF_EXCLUDES="Makefile" to avoid the artifact
>>>
>>>>> DISTCLEANFILES would be more appropriate it seems.
>>>
>>> DISTCLEANFILES is deleted immediately after downloading and
>>> unpacking the *UPSTREAM* source:
>>>
>>> https://cygwin.github.io/cygport/src_prep_cygpart.html#robo112
>>>
>>> "A list of files to be deleted immediately upon unpacking sources,
>>> relative to $S. This is intended to be used with
>>> buildsystem-generated files which are incorrectly included in the
>>> source tarball."
>>>
>>>> I tried this (see attachment), but I'm not sure this is what you
>>>> meant.
>>>
>>> DIFF_EXCLUDES is a list of files generated in $S not automatically
>>> excluded from the source package:
>>>
>>> https://cygwin.github.io/cygport/pkg_pkg_cygpart.html#robo384
>>>
>>> "A list of file names, directory names, or glob patterns in $S which
>>> will be excluded when creating the .src.patch file. This should be
>>> used for files automatically generated in $S to avoid polluting the
>>> patch.
>>> NOTE
>>> Files generated by various buildsystem infrastructures, such as
>>> autoconf, automake, gettext, and libtool are already excluded
>>> automatically and need not be listed here."
>
>>> Add to DIFF_EXCLUDES the names of any files you see after the output
>>> header:
>>>
>>>>>> Creating source patches
>
>> Ok, thanks for these clear hints. I've now added these files as
>> suggested. The revised version is attached.
>> Moreover, I've removed (commented) all aspects for building of
>> python-biosig bindings, in order not to delay the inclusion of Biosig
>> in Cygwin.
>> Is there anything else that need to be considered ?
>
> CATEGORY is a *space* separated list in quotes.
>
> Before SRC_URI and PATCH_URI normally comes:
>
> HOMEPAGE=https://sourceforge.net/projects/biosig/files/
>
> you don't need to add quotes for nonspaced strings.
>
> You may also test your cygport and any other source patches and files
> you require by creating and committing them into a local git repo
> named the same as the package (preferably all lower case) and pushing
> to the git-cygwin-packages playground repo and branch:
>
> git push --set-upstream ssh://cygwin/git/cygwin-packages/playground.git
> playground -f
>
> which will submit the build to the Cygwin GitHub Action CI and print
> the link for you to monitor the CI job, view the build logs for
> noarch, x86, and x86_64, and download them.
>
In order to use the playgroun, I guess I need to provide my ssh key.
Here it is:
Name: Alois Schloegl
---- BEGIN SSH2 PUBLIC KEY ----
AAAAC3NzaC1lZDI1NTE5AAAAILKBmNf1QN3lStTwpn46QIip7sS6zNKy0rG8WCYHv/ZU
---- END SSH2 PUBLIC KEY ----
Cheers,
Alois
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [ITP] biosig [was: Re: newcomer issues when packaging biosig, stimfit, etc.]
2022-01-20 20:48 ` Alois Schlögl
@ 2022-01-21 12:53 ` Jon Turney
0 siblings, 0 replies; 22+ messages in thread
From: Jon Turney @ 2022-01-21 12:53 UTC (permalink / raw)
To: cygwin-apps, Alois Schloegl
On 20/01/2022 20:48, Alois Schlögl wrote:
>
> In order to use the playgroun, I guess I need to provide my ssh key.
> Here it is:
>
> Name: Alois Schloegl
> ---- BEGIN SSH2 PUBLIC KEY ----
> AAAAC3NzaC1lZDI1NTE5AAAAILKBmNf1QN3lStTwpn46QIip7sS6zNKy0rG8WCYHv/ZU
> ---- END SSH2 PUBLIC KEY ----
Done.
> Updating ssh key for Alois Schloegl
> Fingerprint: 256 SHA256:bvMkxeY5KcLLESayAW43ZPOiYI9owtf0UKKWIWmue00 no comment (ED25519)
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [ITP] biosig [was: Re: newcomer issues when packaging biosig, stimfit, etc.]
2022-01-16 22:13 ` Alois Schlögl
@ 2022-01-22 17:52 ` Marco Atzeri
2022-01-25 23:50 ` Alois Schlögl
0 siblings, 1 reply; 22+ messages in thread
From: Marco Atzeri @ 2022-01-22 17:52 UTC (permalink / raw)
To: Alois Schlögl, cygwin-apps
[-- Attachment #1: Type: text/plain, Size: 1752 bytes --]
On 16.01.2022 23:13, Alois Schlögl wrote:
>
> Dear Marco,
>
>
> attached is the revised version.
>
> In addition, I'm trying also to include the python39-biosig package.
> Could you please check whether this would work ?
>
>
> Cheers,
> Alois
>
Hi Alois,
I finally had some time to work on the package.
See attachment.
Instead of complicating the cygport I decided
to adapt the Makefile.in to be Cygwin aware,
so using a much simple biosig.cygport
It is not perfect, and you could need to adopt
other parts to make the overall consistent.
A better solution will be to use not only Autoconf but also
also Automake so that all platforms will be managed in the same way,
without the need of a lot of customization.
Alternative you can use cmake to obtain a similar results.
Now the DLL's are respecting the Cygwin format
and also the Python 3.9 package is available.
$ nice cygport biosig.cygport list |grep dll
/usr/bin/cygbiosig-3.dll
/usr/bin/cygphysicalunits-3.dll
/usr/lib/libbiosig.dll.a
/usr/lib/libphysicalunits.dll.a
/usr/lib/python3.9/site-packages/biosig.cpython-39-x86_64-cygwin.dll
$ nice cygport biosig.cygport list |grep usr/bin
/usr/bin/bin2rec
/usr/bin/biosig2gdf.exe
/usr/bin/biosig_fhir.exe
/usr/bin/cygbiosig-3.dll
/usr/bin/cygphysicalunits-3.dll
/usr/bin/heka2itx
/usr/bin/physicalunits.exe
/usr/bin/rec2bin
/usr/bin/save2aecg
/usr/bin/save2gdf.exe
/usr/bin/save2scp
please check that I have not missed something
and inadvertently crippled some of the utility.
It seems that the build is unable to use the
libcholmod-devel
libtinyxml2-devel
libraries. I suspect the configure is missing something
I left the static libraries, but they should be superflous
as the shared libs are present.
Regards
Marco
[-- Attachment #2: 2.3.3-1.Makefilein.patch --]
[-- Type: text/plain, Size: 9144 bytes --]
--- origsrc/biosig-2.3.3/biosig4c++/Makefile.in 2021-08-13 11:17:15.000000000 +0200
+++ src/biosig-2.3.3/biosig4c++/Makefile.in 2022-01-22 15:13:42.122963600 +0100
@@ -137,6 +137,7 @@ else
endif
SONAMEVERSION ?= 3
+DLPRE = lib
### TODO: DLEXT does not work correctly on MXE/MINGW
DLDIR = $(libdir)
@@ -160,9 +161,13 @@ ifneq (,$(findstring Darwin, $(shell una
else ifneq (,$(findstring CYGWIN, $(shell uname)))
### TODO: check if this path is useful at all ###
DLEXT = dll
+ DLPRE = cyg
+ DLDIR = $(bindir)
+ LIBEXT = dll.a
+ BINEXT = .exe
LD = $(CXX)
LDLIBS += -liconv -lstdc++
- FULLDLEXT = ${SONAMEVERSION}.dll
+ FULLDLEXT = -${SONAMEVERSION}.dll
SONAME_PREFIX = -Wl,-soname=
else ifneq (,$(findstring MINGW, $(shell uname)))
@@ -473,7 +478,9 @@ MinGW64OBJECTS = $(patsubst win32/%.obj
TARGET = save2gdf libbiosig.a
LIB_OBJECTS = libbiosig.a libgdf.a libphysicalunits.a libbiosig.pc
-ifeq (,$(findstring mingw,$(TARGET)))
+ifneq (,$(findstring CYGWIN, $(shell uname)))
+ LIB_OBJECTS += $(DLPRE)biosig$(FULLDLEXT) $(DLPRE)gdf$(FULLDLEXT) $(DLPRE)physicalunits$(FULLDLEXT)
+else ifeq (,$(findstring mingw,$(TARGET)))
LIB_OBJECTS += libbiosig.$(DLEXT) libgdf.$(DLEXT) libphysicalunits.$(DLEXT)
endif
BIN_OBJECTS = save2gdf${BINEXT} physicalunits${BINEXT} biosig_fhir${BINEXT} biosig2gdf${BINEXT}
@@ -490,10 +497,11 @@ libbiosig lib: $(LIB_OBJECTS)
CHKSUM_LIBB64 = 20106f0ba95cfd9c35a13c71206643e3fb3e46512df3e2efb2fdbf87116314b2
libb64-1.2.1.zip:
curl -SLO https://downloads.sourceforge.net/project/libb64/libb64/libb64/libb64-1.2.1.zip
- test $(shell sha256sum libb64-1.2.1.zip | cut -d " " -f 1) = $(CHKSUM_LIBB64) || rm libb64-1.2.1.zip
+# test $(shell sha256sum libb64-1.2.1.zip | cut -d " " -f 1) = $(CHKSUM_LIBB64) || rm libb64-1.2.1.zip
libb64-1.2.1/src/cencode.c: libb64-1.2.1.zip
- test $(shell sha256sum libb64-1.2.1.zip | cut -d " " -f 1) = $(CHKSUM_LIBB64) && unzip -o libb64-1.2.1.zip -d .
+# test $(shell sha256sum libb64-1.2.1.zip | cut -d " " -f 1) = $(CHKSUM_LIBB64) && unzip -o libb64-1.2.1.zip -d .
+ unzip -o libb64-1.2.1.zip -d .
touch $@
vpath %.c ./:./t210:./t220:./t240:./test0:./src:./mma
@@ -668,7 +676,7 @@ win32: mexw32 win32mma
win64/%.exe: %.c
$(MinGW64CXX) $(DEFINES) $(MinGW64CFLAGS) "$<" $(MinGW64LIBS) -o "$@"
win64/physicalunits.exe: pu.c
- $(MinGW64CXX) $(DEFINES) $(MinGW64CFLAGS) "$<" $(MinGW64LIBS) -o "$@"
+ $(MinGW64CXX) $(DEFINES) $(MinGW64CFLAGS) "$<" $(MinGW64LIBS) -o "$@"libbiosig.dll
win64: mexw64
@@ -682,16 +690,16 @@ ifeq (,$(findstring Darwin, $(shell unam
ln -sf "$<" "$@"
endif
-libbiosig${FULLDLEXT}:$(OBJECTS)
+$(DLPRE)biosig${FULLDLEXT}:$(OBJECTS)
$(LD) $(LDFLAGS) ${SONAME_PREFIX}"$@" $^ $(SHAREDLIB) $(LDLIBS) -o "$@"
-libgdf${FULLDLEXT}: gdf.o gdftime.o physicalunits.o getlogin.o
+$(DLPRE)gdf${FULLDLEXT}: gdf.o gdftime.o physicalunits.o getlogin.o
$(LD) $(LDFLAGS) ${SONAME_PREFIX}"$@" $^ $(SHAREDLIB) $(LDLIBS) -o "$@"
-libgdftime${FULLDLEXT}:gdftime.o
+$(DLPRE)gdftime${FULLDLEXT}:gdftime.o
$(LD) $(LDFLAGS) ${SONAME_PREFIX}"$@" $^ $(SHAREDLIB) $(LDLIBS) -o "$@"
-libphysicalunits${FULLDLEXT}:physicalunits.o
+$(DLPRE)physicalunits${FULLDLEXT}:physicalunits.o
$(LD) $(LDFLAGS) ${SONAME_PREFIX}"$@" $^ $(SHAREDLIB) $(LDLIBS) -o "$@"
@@ -703,8 +711,8 @@ libphysicalunits${FULLDLEXT}:physicaluni
libphysicalunits.a: physicalunits.o
-$(DELETE) "$@"
$(AR) "$@" "$<"
-libphysicalunits.dll: physicalunits.o
- $(LD) $(LDFLAGS) -o libphysicalunits.dll -s -shared -fPIC "$<" $(LDLIBS) -Wl,-subsystem,windows,--output-def,libphysicalunits.def,--out-implib,libphysicalunits.dll.a
+$(DLPRE)physicalunits${FULLDLEXT}: physicalunits.o
+ $(LD) $(LDFLAGS) -o "$@" -s -shared -fPIC "$<" $(LDLIBS) -Wl,-subsystem,windows,--output-def,libphysicalunits.def,--out-implib,libphysicalunits.dll.a
#libgdftime.a: gdftime.o
# -$(DELETE) "$@"
@@ -715,14 +723,14 @@ libphysicalunits.dll: physicalunits.o
libgdf.a: gdf.o getlogin.o gdftime.o physicalunits.o
-$(DELETE) "$@"
$(AR) "$@" gdf.o gdftime.o physicalunits.o
-libgdf.dll: gdf.o getlogin.o gdftime.o physicalunits.o
- $(LD) $(LDFLAGS) -s -shared -fPIC -o libgdf.dll gdf.o getlogin.o gdftime.o physicalunits.o $(LDLIBS) -Wl,-subsystem,windows,--output-def,libgdf.def,--out-implib,libgdf.dll.a
+$(DLPRE)gdf${FULLDLEXT}: gdf.o getlogin.o gdftime.o physicalunits.o
+ $(LD) $(LDFLAGS) -s -shared -fPIC -o "$@" gdf.o getlogin.o gdftime.o physicalunits.o $(LDLIBS) -Wl,-subsystem,windows,--output-def,libgdf.def,--out-implib,libgdf.dll.a
libbiosig.a: $(OBJECTS) libbiosig.pc
-$(DELETE) libbiosig.a
$(AR) libbiosig.a $(OBJECTS)
-libbiosig.dll: $(OBJECTS) libbiosig.pc
- $(LD) $(LDFLAGS) -o libbiosig.dll -s -shared -fPIC $(OBJECTS) $(LDLIBS) -Wl,-subsystem,windows,--output-def,libbiosig.def,--out-implib,libbiosig.dll.a
+$(DLPRE)biosig${FULLDLEXT}: $(OBJECTS) libbiosig.pc
+ $(LD) $(LDFLAGS) -o "$@" -s -shared -fPIC $(OBJECTS) $(LDLIBS) -Wl,-subsystem,windows,--output-def,libbiosig.def,--out-implib,libbiosig.dll.a
libbiosig.pc :
mkdir -p pkgconfig
@@ -744,17 +752,17 @@ libbiosig.pc :
echo "Libs.private: $(LDLIBS)" >> "$@"
## save2gdf, pdp2gdf
-%${BINEXT}: %.c libbiosig.$(DLEXT)
+%${BINEXT}: %.c $(DLPRE)biosig$(FULLDLEXT)
$(CC) $(DEFINES) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) "$<" -L. -lbiosig -lstdc++ $(LDLIBS) -o "$@"
physicalunits${BINEXT} : pu.c physicalunits.o
$(CC) $(DEFINES) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) $^ $(LDLIBS) -o "$@"
ifeq (1,@HAVE_LIBB64@)
-biosig_fhir${BINEXT}: biosig_fhir.c libbiosig.$(DLEXT)
+biosig_fhir${BINEXT}: biosig_fhir.c $(DLPRE)biosig$(FULLDLEXT)
$(CC) $(DEFINES) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) "$<" -L. -lbiosig -lstdc++ -lb64 $(LDLIBS) -o "$@"
else
-biosig_fhir${BINEXT}: biosig_fhir.c libb64-1.2.1/src/cencode.c libbiosig.$(DLEXT)
+biosig_fhir${BINEXT}: biosig_fhir.c libb64-1.2.1/src/cencode.c $(DLPRE)biosig$(FULLDLEXT)
$(CC) $(DEFINES) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) -Ilibb64-1.2.1/include/ "$<" libb64-1.2.1/src/cencode.c -L. -lbiosig -lstdc++ $(LDLIBS) -o "$@"
endif
@@ -949,28 +957,31 @@ install_headers: biosig-dev.h biosig.h b
install -d $(DESTDIR)$(includedir)
install $? $(DESTDIR)$(includedir)
-install_libbiosig: install_libbiosig.$(DLEXT) install_libbiosig.a
+install_libbiosig: install_$(DLPRE)biosig$(FULLDLEXT) install_libbiosig.a
install_libbiosig.a: libbiosig.a libphysicalunits.a libbiosig.pc
install -d $(DESTDIR)$(libdir)/pkgconfig/
install libbiosig.a $(DESTDIR)$(libdir)
install libphysicalunits.a $(DESTDIR)$(libdir)
+ install libbiosig.$(LIBEXT) $(DESTDIR)$(libdir)
+ install libphysicalunits.$(LIBEXT) $(DESTDIR)$(libdir)
install libbiosig.pc $(DESTDIR)$(libdir)/pkgconfig/
-install_libbiosig.$(DLEXT): libbiosig.$(DLEXT)
- install -d $(DESTDIR)$(DLDIR)/pkgconfig/
- install libbiosig.$(DLEXT) $(DESTDIR)$(DLDIR)/libbiosig$(FULLDLEXT)
-ifneq (Darwin,$(shell uname))
- cd $(DESTDIR)$(DLDIR) && ln -sf libbiosig$(FULLDLEXT) libbiosig.$(DLEXT)
+install_$(DLPRE)biosig$(FULLDLEXT): $(DLPRE)biosig$(FULLDLEXT)
+ install -d $(DESTDIR)$(DLDIR)
+ install $(DLPRE)biosig$(FULLDLEXT) $(DESTDIR)$(DLDIR)/$(DLPRE)biosig$(FULLDLEXT)
+ install $(DLPRE)physicalunits$(FULLDLEXT) $(DESTDIR)$(DLDIR)/$(DLPRE)physicalunits$(FULLDLEXT)
+ifneq (,$(findstring CYGWIN, $(shell uname)))
+## else ifeq(Darwin,$(shell uname))
+## cd $(DESTDIR)$(DLDIR) && ln -sf libbiosig$(FULLDLEXT) libbiosig.$(DLEXT)
endif
- -ldconfig
-install: install_libbiosig.$(DLEXT) install_libbiosig.a install_headers install_tools
+install: install_$(DLPRE)biosig$(FULLDLEXT) install_libbiosig.a install_headers install_tools
install-strip: install
-strip -x $(DESTDIR)$(libdir)/libbiosig.a
-strip -x $(DESTDIR)$(libdir)/libphysicalunits.a
- -strip -x $(DESTDIR)$(libdir)/libbiosig$(FULLDLEXT)
+ -strip -x $(DESTDIR)$(libdir)/$(DLPRE)biosig$(FULLDLEXT)
install_tools: tools doc/save2gdf.1
install -d $(DESTDIR)$(bindir)
@@ -1002,7 +1013,7 @@ uninstall_mexbiosig:
### Install mexbiosig for Matlab and Octave
install_mex:
- $(MAKE) -C mex install
+ # $(MAKE) -C mex install
uninstall_mex:
$(MAKE) -C mex uninstall
--- origsrc/biosig-2.3.3/biosig4c++/Makefile.in 2022-01-22 16:02:23.176759100 +0100
+++ src/biosig-2.3.3/biosig4c++/Makefile.in 2022-01-22 17:57:01.549457000 +0100
@@ -372,6 +372,7 @@ SOURCES += biosig.c \
physicalunits.c \
save2gdf.c \
biosig2gdf.c \
+ biosig-network.c \
biosig_client.c \
biosig_server.c
@@ -476,7 +477,7 @@ endif
MinGW64OBJECTS = $(patsubst win32/%.obj, win64/%.obj, $(MinGWOBJECTS))
-TARGET = save2gdf libbiosig.a
+TARGET = save2gdf${BINEXT} libbiosig.a
LIB_OBJECTS = libbiosig.a libgdf.a libphysicalunits.a libbiosig.pc
ifneq (,$(findstring CYGWIN, $(shell uname)))
LIB_OBJECTS += $(DLPRE)biosig$(FULLDLEXT) $(DLPRE)gdf$(FULLDLEXT) $(DLPRE)physicalunits$(FULLDLEXT)
@@ -886,8 +887,8 @@ docs: docs/save2gdf.txt docs/mexSLOAD.
# for backward compatibility
-save2scp: save2gdf
-save2aecg: save2gdf
+save2scp: save2gdf${BINEXT}
+save2aecg: save2gdf${BINEXT}
#############################################################
[-- Attachment #3: biosig.cygport --]
[-- Type: text/plain, Size: 2918 bytes --]
# package name
NAME="biosig"
VERSION=2.3.3
RELEASE=1
PYTHON_WHEEL_VERSIONS="3.9"
inherit python-wheel
# .hint generation
CATEGORY="Libs Science"
SUMMARY="Tools for biomedical signal processing."
DESCRIPTION="BioSig is an open source software library for
biomedical signal processing, featuring for example the
analysis of biosignals such as the electroencephalogram (EEG),
electrocorticogram (ECoG), electrocardiogram (ECG),
electrooculogram (EOG), electromyogram (EMG), respiration,
and so on. Major application areas are: Neuroinformatics,
brain-computer interfaces, neurophysiology, psychology, c
ardiovascular systems and sleep research. The aim of the
BioSig project is to foster research in biomedical signal
processing by providing open source software tools for many
different applications. Generally, many concerns have to be a
ddressed in this scientific field. BioSig handles this by providing
solutions for data acquisition, artifact processing, quality control,
feature extraction, classification, modeling, data visualization, etc. "
# source and patch files
SRC_URI="https://sourceforge.net/projects/biosig/files/BioSig%20for%20C_C%2B%2B/src/biosig-2.3.3.src.tar.gz"
PATCH_URI=" 2.3.3-1.Makefilein.patch"
PKG_NAMES="libbiosig3 libbiosig-devel biosig-tools python39-biosig"
BUILD_REQUIRES=" libiconv-devel pkg-config python39-devel"
biosig_tools_CONTENTS="
usr/bin/bin2rec
usr/bin/heka2itx
usr/bin/rec2bin
usr/bin/save2aecg
usr/bin/save2scp
usr/bin/save2gdf.exe
usr/bin/physicalunits.exe
usr/bin/biosig2gdf.exe
usr/bin/biosig_fhir.exe
usr/share/man/
usr/share/doc
"
# not included yet
# usr/share/man/biosig_fhir.1 usr/share/man/sigviewer.1
libbiosig3_CONTENTS="
usr/bin/cygbiosig-3.dll
usr/bin/cygphysicalunits-3.dll
"
libbiosig_devel_CONTENTS="
usr/include/biosig-dev.h
usr/include/biosig.h
usr/include/biosig2.h
usr/include/gdftime.h
usr/include/physicalunits.h
usr/include/biosig-network.h
usr/include/mdc_ecg_codes.h
usr/lib/libbiosig.a
usr/lib/libbiosig.dll.a
usr/lib/libphysicalunits.a
usr/lib/libphysicalunits.dll.a
usr/lib/pkgconfig/libbiosig.pc
"
python39_biosig_CONTENTS="
usr/lib/python3.9
"
DIFF_EXCLUDES="depend Makefile"
# use not standard src_compile, src_install and src_test
CFLAGS+=" -I/usr/include/suitesparse"
src_compile() {
cd ${S}
lndirs
cd ${B}
cygautoreconf
export DESTDIR="${D}"
cygconf
# libbiosig
cygmake -C biosig4c++ lib
# biosig-tools w/o biosig_fhir
cygmake -C biosig4c++ tools
# python3-biosig
cygmake -C biosig4c++/python wheel
}
src_install() {
cd ${S}
doinclude ${S}/biosig4c++/*.h
cd ${B}/biosig4c++
export DESTDIR="${D}"
cygmake install
cd ${B}/biosig4c++/python
python_wheel_install
}
src_test() {
cd ${B}
biosig4c++/physicalunits.exe
biosig4c++/save2gdf.exe --help
biosig4c++/biosig_fhir.exe --help
#python -c "import biosig"
}
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [ITP] biosig [was: Re: newcomer issues when packaging biosig, stimfit, etc.]
2022-01-22 17:52 ` Marco Atzeri
@ 2022-01-25 23:50 ` Alois Schlögl
2022-01-26 4:52 ` Marco Atzeri
0 siblings, 1 reply; 22+ messages in thread
From: Alois Schlögl @ 2022-01-25 23:50 UTC (permalink / raw)
To: Marco Atzeri, cygwin-apps
[-- Attachment #1: Type: text/plain, Size: 2178 bytes --]
Am 1/22/22 um 18:52 schrieb Marco Atzeri:
> On 16.01.2022 23:13, Alois Schlögl wrote:
>>
>> Dear Marco,
>>
>>
>> attached is the revised version.
>>
>> In addition, I'm trying also to include the python39-biosig package.
>> Could you please check whether this would work ?
>>
>>
>> Cheers,
>> Alois
>>
>
> Hi Alois,
>
> I finally had some time to work on the package.
> See attachment.
>
> Instead of complicating the cygport I decided
> to adapt the Makefile.in to be Cygwin aware,
> so using a much simple biosig.cygport
>
> It is not perfect, and you could need to adopt
> other parts to make the overall consistent.
>
> A better solution will be to use not only Autoconf but also
> also Automake so that all platforms will be managed in the same way,
> without the need of a lot of customization.
>
> Alternative you can use cmake to obtain a similar results.
>
> Now the DLL's are respecting the Cygwin format
> and also the Python 3.9 package is available.
>
> $ nice cygport biosig.cygport list |grep dll
> /usr/bin/cygbiosig-3.dll
> /usr/bin/cygphysicalunits-3.dll
> /usr/lib/libbiosig.dll.a
> /usr/lib/libphysicalunits.dll.a
> /usr/lib/python3.9/site-packages/biosig.cpython-39-x86_64-cygwin.dll
>
> $ nice cygport biosig.cygport list |grep usr/bin
> /usr/bin/bin2rec
> /usr/bin/biosig2gdf.exe
> /usr/bin/biosig_fhir.exe
> /usr/bin/cygbiosig-3.dll
> /usr/bin/cygphysicalunits-3.dll
> /usr/bin/heka2itx
> /usr/bin/physicalunits.exe
> /usr/bin/rec2bin
> /usr/bin/save2aecg
> /usr/bin/save2gdf.exe
> /usr/bin/save2scp
>
> please check that I have not missed something
> and inadvertently crippled some of the utility.
>
> It seems that the build is unable to use the
> libcholmod-devel
> libtinyxml2-devel
> libraries. I suspect the configure is missing something
>
> I left the static libraries, but they should be superflous
> as the shared libs are present.
>
> Regards
> Marco
Hi Marco,
thanks for the improvements (especially, libb64 which enables
biosig_fhir, and python-biosig).
Attached is a revised version. Check on playground was successful [1].
Regards,
Alois
[1] https://github.com/cygwin/scallywag/actions/runs/1748211333
[-- Attachment #2: 2.3.3-1.Makefilein.patch --]
[-- Type: text/x-patch, Size: 9144 bytes --]
--- origsrc/biosig-2.3.3/biosig4c++/Makefile.in 2021-08-13 11:17:15.000000000 +0200
+++ src/biosig-2.3.3/biosig4c++/Makefile.in 2022-01-22 15:13:42.122963600 +0100
@@ -137,6 +137,7 @@ else
endif
SONAMEVERSION ?= 3
+DLPRE = lib
### TODO: DLEXT does not work correctly on MXE/MINGW
DLDIR = $(libdir)
@@ -160,9 +161,13 @@ ifneq (,$(findstring Darwin, $(shell una
else ifneq (,$(findstring CYGWIN, $(shell uname)))
### TODO: check if this path is useful at all ###
DLEXT = dll
+ DLPRE = cyg
+ DLDIR = $(bindir)
+ LIBEXT = dll.a
+ BINEXT = .exe
LD = $(CXX)
LDLIBS += -liconv -lstdc++
- FULLDLEXT = ${SONAMEVERSION}.dll
+ FULLDLEXT = -${SONAMEVERSION}.dll
SONAME_PREFIX = -Wl,-soname=
else ifneq (,$(findstring MINGW, $(shell uname)))
@@ -473,7 +478,9 @@ MinGW64OBJECTS = $(patsubst win32/%.obj
TARGET = save2gdf libbiosig.a
LIB_OBJECTS = libbiosig.a libgdf.a libphysicalunits.a libbiosig.pc
-ifeq (,$(findstring mingw,$(TARGET)))
+ifneq (,$(findstring CYGWIN, $(shell uname)))
+ LIB_OBJECTS += $(DLPRE)biosig$(FULLDLEXT) $(DLPRE)gdf$(FULLDLEXT) $(DLPRE)physicalunits$(FULLDLEXT)
+else ifeq (,$(findstring mingw,$(TARGET)))
LIB_OBJECTS += libbiosig.$(DLEXT) libgdf.$(DLEXT) libphysicalunits.$(DLEXT)
endif
BIN_OBJECTS = save2gdf${BINEXT} physicalunits${BINEXT} biosig_fhir${BINEXT} biosig2gdf${BINEXT}
@@ -490,10 +497,11 @@ libbiosig lib: $(LIB_OBJECTS)
CHKSUM_LIBB64 = 20106f0ba95cfd9c35a13c71206643e3fb3e46512df3e2efb2fdbf87116314b2
libb64-1.2.1.zip:
curl -SLO https://downloads.sourceforge.net/project/libb64/libb64/libb64/libb64-1.2.1.zip
- test $(shell sha256sum libb64-1.2.1.zip | cut -d " " -f 1) = $(CHKSUM_LIBB64) || rm libb64-1.2.1.zip
+# test $(shell sha256sum libb64-1.2.1.zip | cut -d " " -f 1) = $(CHKSUM_LIBB64) || rm libb64-1.2.1.zip
libb64-1.2.1/src/cencode.c: libb64-1.2.1.zip
- test $(shell sha256sum libb64-1.2.1.zip | cut -d " " -f 1) = $(CHKSUM_LIBB64) && unzip -o libb64-1.2.1.zip -d .
+# test $(shell sha256sum libb64-1.2.1.zip | cut -d " " -f 1) = $(CHKSUM_LIBB64) && unzip -o libb64-1.2.1.zip -d .
+ unzip -o libb64-1.2.1.zip -d .
touch $@
vpath %.c ./:./t210:./t220:./t240:./test0:./src:./mma
@@ -668,7 +676,7 @@ win32: mexw32 win32mma
win64/%.exe: %.c
$(MinGW64CXX) $(DEFINES) $(MinGW64CFLAGS) "$<" $(MinGW64LIBS) -o "$@"
win64/physicalunits.exe: pu.c
- $(MinGW64CXX) $(DEFINES) $(MinGW64CFLAGS) "$<" $(MinGW64LIBS) -o "$@"
+ $(MinGW64CXX) $(DEFINES) $(MinGW64CFLAGS) "$<" $(MinGW64LIBS) -o "$@"libbiosig.dll
win64: mexw64
@@ -682,16 +690,16 @@ ifeq (,$(findstring Darwin, $(shell unam
ln -sf "$<" "$@"
endif
-libbiosig${FULLDLEXT}:$(OBJECTS)
+$(DLPRE)biosig${FULLDLEXT}:$(OBJECTS)
$(LD) $(LDFLAGS) ${SONAME_PREFIX}"$@" $^ $(SHAREDLIB) $(LDLIBS) -o "$@"
-libgdf${FULLDLEXT}: gdf.o gdftime.o physicalunits.o getlogin.o
+$(DLPRE)gdf${FULLDLEXT}: gdf.o gdftime.o physicalunits.o getlogin.o
$(LD) $(LDFLAGS) ${SONAME_PREFIX}"$@" $^ $(SHAREDLIB) $(LDLIBS) -o "$@"
-libgdftime${FULLDLEXT}:gdftime.o
+$(DLPRE)gdftime${FULLDLEXT}:gdftime.o
$(LD) $(LDFLAGS) ${SONAME_PREFIX}"$@" $^ $(SHAREDLIB) $(LDLIBS) -o "$@"
-libphysicalunits${FULLDLEXT}:physicalunits.o
+$(DLPRE)physicalunits${FULLDLEXT}:physicalunits.o
$(LD) $(LDFLAGS) ${SONAME_PREFIX}"$@" $^ $(SHAREDLIB) $(LDLIBS) -o "$@"
@@ -703,8 +711,8 @@ libphysicalunits${FULLDLEXT}:physicaluni
libphysicalunits.a: physicalunits.o
-$(DELETE) "$@"
$(AR) "$@" "$<"
-libphysicalunits.dll: physicalunits.o
- $(LD) $(LDFLAGS) -o libphysicalunits.dll -s -shared -fPIC "$<" $(LDLIBS) -Wl,-subsystem,windows,--output-def,libphysicalunits.def,--out-implib,libphysicalunits.dll.a
+$(DLPRE)physicalunits${FULLDLEXT}: physicalunits.o
+ $(LD) $(LDFLAGS) -o "$@" -s -shared -fPIC "$<" $(LDLIBS) -Wl,-subsystem,windows,--output-def,libphysicalunits.def,--out-implib,libphysicalunits.dll.a
#libgdftime.a: gdftime.o
# -$(DELETE) "$@"
@@ -715,14 +723,14 @@ libphysicalunits.dll: physicalunits.o
libgdf.a: gdf.o getlogin.o gdftime.o physicalunits.o
-$(DELETE) "$@"
$(AR) "$@" gdf.o gdftime.o physicalunits.o
-libgdf.dll: gdf.o getlogin.o gdftime.o physicalunits.o
- $(LD) $(LDFLAGS) -s -shared -fPIC -o libgdf.dll gdf.o getlogin.o gdftime.o physicalunits.o $(LDLIBS) -Wl,-subsystem,windows,--output-def,libgdf.def,--out-implib,libgdf.dll.a
+$(DLPRE)gdf${FULLDLEXT}: gdf.o getlogin.o gdftime.o physicalunits.o
+ $(LD) $(LDFLAGS) -s -shared -fPIC -o "$@" gdf.o getlogin.o gdftime.o physicalunits.o $(LDLIBS) -Wl,-subsystem,windows,--output-def,libgdf.def,--out-implib,libgdf.dll.a
libbiosig.a: $(OBJECTS) libbiosig.pc
-$(DELETE) libbiosig.a
$(AR) libbiosig.a $(OBJECTS)
-libbiosig.dll: $(OBJECTS) libbiosig.pc
- $(LD) $(LDFLAGS) -o libbiosig.dll -s -shared -fPIC $(OBJECTS) $(LDLIBS) -Wl,-subsystem,windows,--output-def,libbiosig.def,--out-implib,libbiosig.dll.a
+$(DLPRE)biosig${FULLDLEXT}: $(OBJECTS) libbiosig.pc
+ $(LD) $(LDFLAGS) -o "$@" -s -shared -fPIC $(OBJECTS) $(LDLIBS) -Wl,-subsystem,windows,--output-def,libbiosig.def,--out-implib,libbiosig.dll.a
libbiosig.pc :
mkdir -p pkgconfig
@@ -744,17 +752,17 @@ libbiosig.pc :
echo "Libs.private: $(LDLIBS)" >> "$@"
## save2gdf, pdp2gdf
-%${BINEXT}: %.c libbiosig.$(DLEXT)
+%${BINEXT}: %.c $(DLPRE)biosig$(FULLDLEXT)
$(CC) $(DEFINES) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) "$<" -L. -lbiosig -lstdc++ $(LDLIBS) -o "$@"
physicalunits${BINEXT} : pu.c physicalunits.o
$(CC) $(DEFINES) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) $^ $(LDLIBS) -o "$@"
ifeq (1,@HAVE_LIBB64@)
-biosig_fhir${BINEXT}: biosig_fhir.c libbiosig.$(DLEXT)
+biosig_fhir${BINEXT}: biosig_fhir.c $(DLPRE)biosig$(FULLDLEXT)
$(CC) $(DEFINES) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) "$<" -L. -lbiosig -lstdc++ -lb64 $(LDLIBS) -o "$@"
else
-biosig_fhir${BINEXT}: biosig_fhir.c libb64-1.2.1/src/cencode.c libbiosig.$(DLEXT)
+biosig_fhir${BINEXT}: biosig_fhir.c libb64-1.2.1/src/cencode.c $(DLPRE)biosig$(FULLDLEXT)
$(CC) $(DEFINES) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) -Ilibb64-1.2.1/include/ "$<" libb64-1.2.1/src/cencode.c -L. -lbiosig -lstdc++ $(LDLIBS) -o "$@"
endif
@@ -949,28 +957,31 @@ install_headers: biosig-dev.h biosig.h b
install -d $(DESTDIR)$(includedir)
install $? $(DESTDIR)$(includedir)
-install_libbiosig: install_libbiosig.$(DLEXT) install_libbiosig.a
+install_libbiosig: install_$(DLPRE)biosig$(FULLDLEXT) install_libbiosig.a
install_libbiosig.a: libbiosig.a libphysicalunits.a libbiosig.pc
install -d $(DESTDIR)$(libdir)/pkgconfig/
install libbiosig.a $(DESTDIR)$(libdir)
install libphysicalunits.a $(DESTDIR)$(libdir)
+ install libbiosig.$(LIBEXT) $(DESTDIR)$(libdir)
+ install libphysicalunits.$(LIBEXT) $(DESTDIR)$(libdir)
install libbiosig.pc $(DESTDIR)$(libdir)/pkgconfig/
-install_libbiosig.$(DLEXT): libbiosig.$(DLEXT)
- install -d $(DESTDIR)$(DLDIR)/pkgconfig/
- install libbiosig.$(DLEXT) $(DESTDIR)$(DLDIR)/libbiosig$(FULLDLEXT)
-ifneq (Darwin,$(shell uname))
- cd $(DESTDIR)$(DLDIR) && ln -sf libbiosig$(FULLDLEXT) libbiosig.$(DLEXT)
+install_$(DLPRE)biosig$(FULLDLEXT): $(DLPRE)biosig$(FULLDLEXT)
+ install -d $(DESTDIR)$(DLDIR)
+ install $(DLPRE)biosig$(FULLDLEXT) $(DESTDIR)$(DLDIR)/$(DLPRE)biosig$(FULLDLEXT)
+ install $(DLPRE)physicalunits$(FULLDLEXT) $(DESTDIR)$(DLDIR)/$(DLPRE)physicalunits$(FULLDLEXT)
+ifneq (,$(findstring CYGWIN, $(shell uname)))
+## else ifeq(Darwin,$(shell uname))
+## cd $(DESTDIR)$(DLDIR) && ln -sf libbiosig$(FULLDLEXT) libbiosig.$(DLEXT)
endif
- -ldconfig
-install: install_libbiosig.$(DLEXT) install_libbiosig.a install_headers install_tools
+install: install_$(DLPRE)biosig$(FULLDLEXT) install_libbiosig.a install_headers install_tools
install-strip: install
-strip -x $(DESTDIR)$(libdir)/libbiosig.a
-strip -x $(DESTDIR)$(libdir)/libphysicalunits.a
- -strip -x $(DESTDIR)$(libdir)/libbiosig$(FULLDLEXT)
+ -strip -x $(DESTDIR)$(libdir)/$(DLPRE)biosig$(FULLDLEXT)
install_tools: tools doc/save2gdf.1
install -d $(DESTDIR)$(bindir)
@@ -1002,7 +1013,7 @@ uninstall_mexbiosig:
### Install mexbiosig for Matlab and Octave
install_mex:
- $(MAKE) -C mex install
+ # $(MAKE) -C mex install
uninstall_mex:
$(MAKE) -C mex uninstall
--- origsrc/biosig-2.3.3/biosig4c++/Makefile.in 2022-01-22 16:02:23.176759100 +0100
+++ src/biosig-2.3.3/biosig4c++/Makefile.in 2022-01-22 17:57:01.549457000 +0100
@@ -372,6 +372,7 @@ SOURCES += biosig.c \
physicalunits.c \
save2gdf.c \
biosig2gdf.c \
+ biosig-network.c \
biosig_client.c \
biosig_server.c
@@ -476,7 +477,7 @@ endif
MinGW64OBJECTS = $(patsubst win32/%.obj, win64/%.obj, $(MinGWOBJECTS))
-TARGET = save2gdf libbiosig.a
+TARGET = save2gdf${BINEXT} libbiosig.a
LIB_OBJECTS = libbiosig.a libgdf.a libphysicalunits.a libbiosig.pc
ifneq (,$(findstring CYGWIN, $(shell uname)))
LIB_OBJECTS += $(DLPRE)biosig$(FULLDLEXT) $(DLPRE)gdf$(FULLDLEXT) $(DLPRE)physicalunits$(FULLDLEXT)
@@ -886,8 +887,8 @@ docs: docs/save2gdf.txt docs/mexSLOAD.
# for backward compatibility
-save2scp: save2gdf
-save2aecg: save2gdf
+save2scp: save2gdf${BINEXT}
+save2aecg: save2gdf${BINEXT}
#############################################################
[-- Attachment #3: biosig.cygport --]
[-- Type: text/plain, Size: 3572 bytes --]
# package name
NAME="biosig"
VERSION=2.3.3
RELEASE=1
PYTHON_WHEEL_VERSIONS="3.9"
inherit python-wheel
# .hint generation
CATEGORY="Libs Science"
SUMMARY="Tools for biomedical signal processing."
DESCRIPTION="BioSig is an open source software library for
biomedical signal processing, featuring for example the
analysis of biosignals such as the electroencephalogram (EEG),
electrocorticogram (ECoG), electrocardiogram (ECG),
electrooculogram (EOG), electromyogram (EMG), respiration,
and so on. Major application areas are: Neuroinformatics,
brain-computer interfaces, neurophysiology, psychology, c
ardiovascular systems and sleep research. The aim of the
BioSig project is to foster research in biomedical signal
processing by providing open source software tools for many
different applications. Generally, many concerns have to be a
ddressed in this scientific field. BioSig handles this by providing
solutions for data acquisition, artifact processing, quality control,
feature extraction, classification, modeling, data visualization, etc. "
HOMEPAGE=https://biosig.sourceforge.io
# source and patch files
SRC_URI=https://sourceforge.net/projects/biosig/files/BioSig%20for%20C_C%2B%2B/src/biosig-2.3.3.src.tar.gz
PATCH_URI=" 2.3.3-1.Makefilein.patch"
BUILD_REQUIRES="libiconv-devel libcholmod-devel zlib-devel pkg-config"
BUILD_REQUIRES+=" gawk python39-numpy python39-devel"
REQUIRES="libcholmod libconv zlib python39-numpy"
PKG_NAMES="libbiosig3 libbiosig-devel biosig-tools python39-biosig"
biosig_tools_CONTENTS="
usr/bin/bin2rec
usr/bin/heka2itx
usr/bin/rec2bin
usr/bin/save2aecg
usr/bin/save2scp
usr/bin/save2gdf.exe
usr/bin/physicalunits.exe
usr/bin/biosig2gdf.exe
usr/bin/biosig_fhir.exe
usr/share/man/man1/save2gdf.1.gz
usr/share/man/man1/physicalunits.1.gz
usr/share/man/man1/biosig2gdf.1.gz
usr/share/man/man1/biosig_fhir.1.gz
usr/share/man/man1/sigviewer.1.gz
usr/share/man/man1/mexSLOAD.1.gz
usr/share/man/man1/bin2rec.1.gz
usr/share/man/man1/heka2itx.1.gz
usr/share/man/man1/rec2bin.1.gz
usr/share/man/man1/save2aecg.1.gz
usr/share/man/man1/save2scp.1.gz
usr/share/doc/biosig/COPYING
usr/share/doc/biosig/README
"
# not included yet
# usr/share/man/sigviewer.1
# usr/share/man/man1/mexSLOAD.1.gz
libbiosig3_CONTENTS="
usr/bin/cygbiosig-3.dll
usr/bin/cygphysicalunits-3.dll
"
libbiosig_devel_CONTENTS="
usr/include/biosig-dev.h
usr/include/biosig.h
usr/include/biosig2.h
usr/include/gdftime.h
usr/include/physicalunits.h
usr/include/biosig-network.h
usr/include/mdc_ecg_codes.h
usr/lib/libbiosig.a
usr/lib/libbiosig.dll.a
usr/lib/libphysicalunits.a
usr/lib/libphysicalunits.dll.a
usr/lib/pkgconfig/libbiosig.pc
"
python39_biosig_CONTENTS="
usr/lib/python3.9
"
DIFF_EXCLUDES="depend
Makefile
biosig4c++/Makefile
biosig4c++/java/Makefile
biosig4c++/mex/Makefile
biosig4c++/mma/Makefile
"
# use not standard src_compile, src_install and src_test
src_compile() {
cd ${S}
lndirs
cd ${B}
cygautoreconf
export DESTDIR="${D}"
cygconf
# libbiosig and biosig-tools
# cygmake -C biosig4c++ lib tools
cygmake lib tools
# python3-biosig
cygmake -C biosig4c++/python wheel
}
src_install() {
cd ${S}
doinclude ${S}/biosig4c++/*.h
cd ${B}/biosig4c++
export DESTDIR="${D}"
cygmake install
cd ${B}/biosig4c++/python
python_wheel_install
}
src_test() {
cd ${B}
biosig4c++/physicalunits.exe
biosig4c++/save2gdf.exe --help
biosig4c++/biosig2gdf.exe --help
biosig4c++/biosig_fhir.exe --help
# python -c "import biosig"
}
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [ITP] biosig [was: Re: newcomer issues when packaging biosig, stimfit, etc.]
2022-01-25 23:50 ` Alois Schlögl
@ 2022-01-26 4:52 ` Marco Atzeri
2022-01-26 22:47 ` Marco Atzeri
0 siblings, 1 reply; 22+ messages in thread
From: Marco Atzeri @ 2022-01-26 4:52 UTC (permalink / raw)
To: Alois Schlögl, cygwin-apps
On 26.01.2022 00:50, Alois Schlögl wrote:
>
>
> Hi Marco,
>
>
> thanks for the improvements (especially, libb64 which enables
> biosig_fhir, and python-biosig).
> Attached is a revised version. Check on playground was successful [1].
>
>
> Regards,
> Alois
>
>
> [1] https://github.com/cygwin/scallywag/actions/runs/1748211333
>
GTG for me.
I added the package on the package list
$ grep biosig cygwin-pkg-maint
biosig Alois Schloegl
you should be able to upload.
https://cygwin.com/package-upload.html
Regards
Marco
^ permalink raw reply [flat|nested] 22+ messages in thread
* Re: [ITP] biosig [was: Re: newcomer issues when packaging biosig, stimfit, etc.]
2022-01-26 4:52 ` Marco Atzeri
@ 2022-01-26 22:47 ` Marco Atzeri
0 siblings, 0 replies; 22+ messages in thread
From: Marco Atzeri @ 2022-01-26 22:47 UTC (permalink / raw)
To: Alois Schlögl, cygwin-apps
On 26.01.2022 05:52, Marco Atzeri wrote:
> On 26.01.2022 00:50, Alois Schlögl wrote:
>>
>
>>
>> Hi Marco,
>>
>>
>> thanks for the improvements (especially, libb64 which enables
>> biosig_fhir, and python-biosig).
>> Attached is a revised version. Check on playground was successful [1].
>>
>>
>> Regards,
>> Alois
>>
>>
>> [1] https://github.com/cygwin/scallywag/actions/runs/1748211333
>>
>
> GTG for me.
>
> I added the package on the package list
>
> $ grep biosig cygwin-pkg-maint
> biosig Alois Schloegl
>
>
> you should be able to upload.
> https://cygwin.com/package-upload.html
>
> Regards
> Marco
>
Alois,
do not forget to Announce on the proper mailing list
https://cygwin.com/mailman/listinfo/cygwin-announce
Regards
Marco
^ permalink raw reply [flat|nested] 22+ messages in thread
end of thread, other threads:[~2022-01-26 22:47 UTC | newest]
Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <99eff890-3d7f-7fa9-1f42-d8d611b92ded@gmail.com>
2022-01-08 17:41 ` newcomer issues when packaging biosig,stimfit, etc Marco Atzeri
2022-01-08 19:15 ` Marco Atzeri
2022-01-08 19:24 ` Marco Atzeri
[not found] ` <a3f8e657-1e1d-c582-2a07-806c6c03be02@gmail.com>
2022-01-12 5:47 ` Marco Atzeri
2022-01-12 6:16 ` Brian Inglis
2022-01-12 22:59 ` [ITP] biosig [was: Re: newcomer issues when packaging biosig, stimfit, etc.] Alois Schlögl
2022-01-14 10:09 ` Marco Atzeri
2022-01-14 21:48 ` Alois Schlögl
2022-01-15 18:01 ` Marco Atzeri
2022-01-15 20:44 ` Achim Gratz
2022-01-17 21:44 ` Alois Schlögl
2022-01-18 5:32 ` Brian Inglis
2022-01-18 21:50 ` Alois Schlögl
2022-01-18 22:56 ` Brian Inglis
2022-01-19 3:51 ` Brian Inglis
2022-01-20 20:48 ` Alois Schlögl
2022-01-21 12:53 ` Jon Turney
2022-01-16 22:13 ` Alois Schlögl
2022-01-22 17:52 ` Marco Atzeri
2022-01-25 23:50 ` Alois Schlögl
2022-01-26 4:52 ` Marco Atzeri
2022-01-26 22:47 ` Marco Atzeri
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).