summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorradioxoma2014-05-23 20:25:24 +0300
committerradioxoma2014-05-23 20:32:35 +0300
commit8973461d7b362aa01f792e9abdd1d223b6b5fab7 (patch)
tree97dc32f7e6670f2659f1ce969143a7ddce7755c6
parent5a9564df9503bce33081889adabdf62fb0acc898 (diff)
downloadaur-8973461d7b362aa01f792e9abdd1d223b6b5fab7.tar.gz
Micromanager updated
-rw-r--r--.SRCINFO8
-rw-r--r--PKGBUILD43
-rw-r--r--info.txt19
-rw-r--r--python_makefile.diff22
-rw-r--r--python_setup.diff25
5 files changed, 35 insertions, 82 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 7a676b9c4471..a70c751e3e01 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,6 +1,6 @@
pkgbase = micromanager-git
pkgdesc = Software package for control of automated microscopes. CMMCore and python2 bindings only.
- pkgver = 1.4.13.r2306.gf5e50bd
+ pkgver = 1.4.13.r3204.g13250d0
pkgrel = 1
url = http://www.micro-manager.org
install = mm.install
@@ -16,13 +16,9 @@ pkgbase = micromanager-git
depends = python2-numpy
provides = micromanager
conflicts = micromanager
- source = micromanager-git::git+https://github.com/mdcurtis/micromanager-upstream.git#commit=f5e50bd
- source = python_makefile.diff
- source = python_setup.diff
+ source = micromanager-git::git+https://github.com/mdcurtis/micromanager-upstream.git#commit=13250d0
source = micromanager-lib.conf
md5sums = SKIP
- md5sums = 76a9fb824728a8397e3b5245ffe4ddaf
- md5sums = e14361cc344c2fb0d03f3458d53eb152
md5sums = b7b6a68ce53d8ea1a4a29d187174ee4c
pkgname = micromanager-git
diff --git a/PKGBUILD b/PKGBUILD
index 8d8f863ad92c..4dd651dc5756 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,7 +1,8 @@
# Maintainer: radioxoma <radioxoma from gmail com>
-# Last successful build with 1.4.13.r2306.gf5e50bd 22.01.2014 on x86_64.
+# Visit https://github.com/radioxoma/aur for pull requests or issue solving.
+
pkgname=micromanager-git
-pkgver=1.4.13.r2306.gf5e50bd
+pkgver=1.4.13.r3204.g13250d0
pkgrel=1
epoch=
pkgdesc="Software package for control of automated microscopes. CMMCore and python2 bindings only."
@@ -20,14 +21,10 @@ backup=()
options=()
install=mm.install
changelog=
-source=($pkgname::git+https://github.com/mdcurtis/micromanager-upstream.git#commit=f5e50bd
- 'python_makefile.diff'
- 'python_setup.diff'
+source=($pkgname::git+https://github.com/mdcurtis/micromanager-upstream.git#commit=13250d0
'micromanager-lib.conf')
noextract=()
md5sums=('SKIP'
- '76a9fb824728a8397e3b5245ffe4ddaf'
- 'e14361cc344c2fb0d03f3458d53eb152'
'b7b6a68ce53d8ea1a4a29d187174ee4c') #generate with 'makepkg -g'
pkgver() {
@@ -37,27 +34,17 @@ pkgver() {
prepare() {
cd "$srcdir/$pkgname"
-
- # Change python to python2.
- # Remove installing commands form makefile and use setuptools instead.
- # See PKGBUILD package() function.
- patch -p0 < "$srcdir/python_makefile.diff"
-
- # Patching setup.py to prevent
- # >>> import MMCorePy
- # ...
- # ImportError: ./_MMCorePy.so: undefined symbol: _ZTI8CMMError
- # ... etc
- patch -p0 < "$srcdir/python_setup.diff"
-
- sh mmUnixBuild.sh
+ sh ./autogen.sh
}
build() {
cd "$srcdir/$pkgname"
- # Without Java-based GUI too.
+ # With MMCore, device adapters, Python2 wrapper (MMCorePy).
+ # Without Java wrapper (MMCoreJ), MMStudio (Java GUI)
+ # and closed-source device adapters.
+
# Feel free to improve package to work with ImageJ or FIJI.
- ./configure --prefix=/usr --without-imagej --enable-python
+ ./configure --prefix=/usr --with-java=no --with-python PYTHON="python2"
make
}
@@ -68,12 +55,12 @@ build() {
package() {
cd "$srcdir/$pkgname"
- make DESTDIR="$pkgdir/" install
-
- # Micro-manager devs plan use autotools without setuptools for python.
- cd "$srcdir/$pkgname/MMCorePy_wrap/"
- python2 setup.py install --root="$pkgdir"
+ mkdir -p "$pkgdir/usr/lib/micro-manager"
+ make install DESTDIR="$pkgdir"
+ mkdir -p "$pkgdir/usr/lib/python2.7/site-packages"
+ mv "$pkgdir/usr/lib/micro-manager/MMCorePy.py" "$pkgdir/usr/lib/python2.7/site-packages"
+ mv "$pkgdir/usr/lib/micro-manager/_MMCorePy.so" "$pkgdir/usr/lib/python2.7/site-packages"
# We need to update ldconfig cache with new libs.
install -D -m644 "$srcdir/micromanager-lib.conf" "$pkgdir/etc/ld.so.conf.d/micromanager-lib.conf"
}
diff --git a/info.txt b/info.txt
index 4d020a28d372..fa233238b5f3 100644
--- a/info.txt
+++ b/info.txt
@@ -92,4 +92,21 @@ $ make DESTDIR="$pkgdir" install
# https://stackoverflow.com/questions/11643666/python-importerror-undefined-symbol-for-custom-c-module
g++ -fPIC -shared -o mymodule.so mymodule.cpp `pkg-config --cflags --libs python` `pkg-config --cflags --libs opencv` -I/usr/local/include/opencv2/legacy
-g++ -fPIC -shared -o mymodule.so mymodule.cpp `pkg-config --cflags --libs python` `pkg-config --cflags --libs opencv` -I/usr/local/include/opencv2/legacy \ No newline at end of file
+g++ -fPIC -shared -o mymodule.so mymodule.cpp `pkg-config --cflags --libs python` `pkg-config --cflags --libs opencv` -I/usr/local/include/opencv2/legacy
+
+
+"I would recommend Setuptools". Но в проекте используется distutils.
+
+Произвольные файлы можно запаковать через манифест или package_data. Или неймспейсы.
+
+setup(
+ # ...
+ namespace_packages = ["root"]
+)
+
+Предоставить выбор python2/3 swig -py3
+python2 setup.py install
+И дальше чёрт с ним, с makefile'ом.
+
+***
+May 22, 2014 13250d0d9c99319e202a80a859bb46f2f3c427fa \ No newline at end of file
diff --git a/python_makefile.diff b/python_makefile.diff
deleted file mode 100644
index 00c06e191108..000000000000
--- a/python_makefile.diff
+++ /dev/null
@@ -1,22 +0,0 @@
---- MMCorePy_wrap/Makefile.am 2014-01-21 05:25:37.000000000 +0300
-+++ MMCorePy_wrap/Makefile_new.am 2014-01-24 17:14:15.904157691 +0300
-@@ -34,18 +34,14 @@
- $(top_srcdir)/MMCore/LoadableModules/LoadedDeviceAdapter.cpp
-
- _MMCorePy.so: MMCorePy_wrap.cxx $(MMCOREPYSOURCES)
-- python setup.py build_ext --inplace
-+ python2 setup.py build
-
- all:
- make MMCorePy_wrap.cxx
- make MMCorePy.py
- make _MMCorePy.so
-- cp MMCorePy.py ../bin
-- cp _MMCorePy.so ../bin
-
- install:
-- cp MMCorePy.py $(DEVICEADAPTERPATH)
-- cp _MMCorePy.so $(DEVICEADAPTERPATH)
-
- clean:
- rm MMCorePy_wrap.cxx || echo "Not found, no problem"
diff --git a/python_setup.diff b/python_setup.diff
deleted file mode 100644
index 17df60da04aa..000000000000
--- a/python_setup.diff
+++ /dev/null
@@ -1,25 +0,0 @@
---- MMCorePy_wrap/setup.py 2014-01-21 05:25:37.000000000 +0300
-+++ MMCorePy_wrap/setup_new.py 2014-01-23 04:06:20.676996837 +0300
-@@ -1,4 +1,4 @@
--#!/usr/bin/env python
-+#!/usr/bin/env python2
-
- """
- This setup.py is intended for use from the Autoconf/Automake build system.
-@@ -27,10 +27,16 @@
- '../MMCore/Host.cpp',
- '../MMCore/MMCore.cpp',
- '../MMCore/PluginManager.cpp',
-+ '../MMCore/Error.cpp',
-+ '../MMCore/LoadableModules/LoadedDeviceAdapter.cpp',
-+ '../MMCore/LoadableModules/LoadedModule.cpp',
-+ '../MMCore/LoadableModules/LoadedModuleImpl.cpp',
-+ '../MMCore/LoadableModules/LoadedModuleImplUnix.cpp',
- '../MMDevice/DeviceUtils.cpp',
- '../MMDevice/ImgBuffer.cpp',
- ],
- language="c++",
-+ libraries=['boost_system', 'z'],
- include_dirs=numpy.distutils.misc_util.get_numpy_include_dirs(),
- )
-