octave-patch-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Octave-patch-tracker] [patch #10058] src/biosig.mk: update to v2.2.1


From: Markus Mützel
Subject: [Octave-patch-tracker] [patch #10058] src/biosig.mk: update to v2.2.1
Date: Fri, 16 Apr 2021 08:56:24 -0400 (EDT)
User-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.128 Safari/537.36 Edg/89.0.774.77

Follow-up Comment #4, patch #10058 (project octave):

Thanks for explaining. That probably means that it is good to go on the
release branch. There is probably a low risk of breaking anything apart from
the biosig4octmat package anyway.

Wrt installing the package itself, I see the following rules for Octave
(Forge) packages in `Makefile.in` in the MXE Octave repository:

ifeq ($(MXE_SYSTEM),msvc)
define OCTAVE_FORGE_PKG_BUILD
    $(INSTALL) -d
'$(3)$(HOST_PREFIX)/local/octave-$(octave_VERSION)/share/octave'
    $(INSTALL) -d
'$(3)$(HOST_PREFIX)/local/octave-$(octave_VERSION)/lib/octave'
    cd '$(1)/..' && tar cvfz $($(PKG)_FILE) $($(PKG)_SUBDIR)
    cd '$(1)/..' &&
$(HOST_PREFIX)/local/octave-$(octave_VERSION)/bin/octave-cli.exe -H -f -q \
        --eval "more off;" \
        --eval "pkg('prefix', '`cd "$(3)" && pwd
-W`$(HOST_PREFIX)/local/octave-$(octave_VERSION)/share/octave/packages', '`cd
"$(3)" && pwd
-W`$(HOST_PREFIX)/local/octave-$(octave_VERSION)/lib/octave/packages');" \
        --eval "pkg('install', '-verbose', '$($(PKG)_FILE)');"
endef
else
define OCTAVE_FORGE_PKG_BUILD
    if [ $(ENABLE_BINARY_PACKAGES) = no ]; then \
      mkdir -p '$(3)$(HOST_PREFIX)/src'; \
      cd '$(1)/..' \
        && tar cvfz $($(PKG)_FILE) $($(PKG)_SUBDIR) \
        && $(INSTALL) -m644 '$($(PKG)_FILE)' '$(3)$(HOST_PREFIX)/src'; \
    else \
      cd '$(1)/..' && \
      tar cfz $($(PKG)_FILE) $($(PKG)_SUBDIR) && \
        OCTAVE_CONFIG=$(MXE_OCTAVECONFIG) TMP="$(1)/.." \
        $(CONFIGURE_CPPFLAGS) $(CONFIGURE_LDFLAGS) \
        MKOCTFILE=$(MXE_MKOCTFILE) MAKE=$(MAKE) \
        CONFIGURE_OPTIONS="$(HOST_AND_BUILD_CONFIGURE_OPTIONS)" $(4) \
        $(PYTHON3) $(TOP_DIR)/tools/pkg-install.py install -verbose
"$($(PKG)_FILE)"; \
     fi
endef
endif


I'm not sure if MXE Octave can still be used with msvc currently. (At least, I
don't know of anyone that currently uses it that way.) So it is probably ok to
focus on the rule in the `else` branch for now.

IIUC, the (patched) tarballs of the packages are installed instead of the
"actual" packages if ENABLE_BINARY_PACKAGES is "no".
I'm not sure if this will be important for your package. Anyway, I think that
we can probably defer that to later.

The python script that the `else` branch is calling is this one:
https://hg.octave.org/mxe-octave/file/tip/tools/pkg-install.py

We'd probably need to do something equivalent with the biosig4octmat package
if we want to get it installed correctly by MXE Octave. That's probably at
least the later part of `install_pkg` and the entire(?) `rebuild_pkg`
function.

"biosig4octmat" is a bit of an "oddball" in that it's packaging a library + an
Octave package in the same tarball.

>From an MXE Octave point of view, it would be much easier if we could split
installation of the library and the package into two separate
tarballs/packages.
In that case, we could use the former part (or the existing one) to install
the library like we currently do.
Ideally, we could just use the OCTAVE_FORGE_PKG_BUILD rule to build and
install the Octave package tarball.

I slightly modified the Makefile in your mexbiosig tarball and added a MXE
Octave buildrule for it.
I don't know if that modification would break Matlab compatibility. But it
looks like the package compiled and installed its files correctly in a test
with MXE Octave for me.
See attached files.

Do you think, this is something you could work with?


(file #51279, file #51280)
    _______________________________________________________

Additional Item Attachment:

File name: mexbiosig-2.0.6.src.tar.gz     Size:35 KB
   
<https://file.savannah.gnu.org/file/mexbiosig-2.0.6.src.tar.gz?file_id=51279>

File name: mexbiosig.mk                   Size:0 KB
    <https://file.savannah.gnu.org/file/mexbiosig.mk?file_id=51280>



    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/patch/?10058>

_______________________________________________
  Message sent via Savannah
  https://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]