Specifying a list of device adapters to build on Linux

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

Specifying a list of device adapters to build on Linux

Kyle Douglass-2

Hi everyone,

I am trying to find a flexible way to build only select device adapters on Linux. This is part of a larger goal of gaining more control over the Linux build process.

My current understanding is that the configure.ac file inside the DeviceAdapters folder defines a macro called "device_adapter_dirs" which contains a sorted list of all the device adapter subfolders that contain a Makefile. Running ./configure from the Micro-Manager source code root should set up 'make' to build all the device adapters specified by this macro.

If what I said is correct, then would anyone know how I might change the configure script to read the list from a file instead of the hard-coded macro? Is there a better way to do this?

I realize that this is more of an Autotools question than one about Micro-Manager, but I thought that maybe others could benefit since I see people building MM on Linux somewhat regularly.

Cheers,

Kyle


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
micro-manager-general mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/micro-manager-general
Reply | Threaded
Open this post in threaded view
|

Re: Specifying a list of device adapters to build on Linux

Mark Tsuchida-3
Hi Kyle

On Wed, Apr 18, 2018 at 12:00 AM, Kyle Douglass <[hidden email]> wrote:

My current understanding is that the configure.ac file inside the DeviceAdapters folder defines a macro called "device_adapter_dirs" which contains a sorted list of all the device adapter subfolders that contain a Makefile. Running ./configure from the Micro-Manager source code root should set up 'make' to build all the device adapters specified by this macro.

If what I said is correct, then would anyone know how I might change the configure script to read the list from a file instead of the hard-coded macro? Is there a better way to do this?


It would certainly be nice to have a flag like --enable-device-adapters=DemoCamera,Utilities.
Then you could run ./configure from a script (which is what I always do when I build for development) to get the desired set of adapters.

Unfortunately I don't have a quick answer for how best to do this in the restrictive environment of an autoconf script (configure.ac will need to generate the shell script (to be embedded in ./configure) that does the determination of the list of device adapters, but the final list will then need to be combined with the results of other configuration detection and then passed to automake).

Best,
Mark

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
micro-manager-general mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/micro-manager-general
Reply | Threaded
Open this post in threaded view
|

Re: Specifying a list of device adapters to build on Linux

Kyle Douglass-2

Hi Mark,


On Wed, Apr 18, 2018 at 12:00 AM, Kyle Douglass <[hidden email]> wrote:

My current understanding is that the configure.ac file inside the DeviceAdapters folder defines a macro called "device_adapter_dirs" which contains a sorted list of all the device adapter subfolders that contain a Makefile. Running ./configure from the Micro-Manager source code root should set up 'make' to build all the device adapters specified by this macro.

If what I said is correct, then would anyone know how I might change the configure script to read the list from a file instead of the hard-coded macro? Is there a better way to do this?


It would certainly be nice to have a flag like --enable-device-adapters=DemoCamera,Utilities.
Then you could run ./configure from a script (which is what I always do when I build for development) to get the desired set of adapters.

Unfortunately I don't have a quick answer for how best to do this in the restrictive environment of an autoconf script (configure.ac will need to generate the shell script (to be embedded in ./configure) that does the determination of the list of device adapters, but the final list will then need to be combined with the results of other configuration detection and then passed to automake).



Thanks for the feedback! I might play around with this a bit to see if I can get something working along the lines of what you suggested.

Cheers,
Kyle


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
micro-manager-general mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/micro-manager-general