Hi, I am working on a project that utilizes hugin as one of its use-cases. The idea is to distribute the execution of the hugin-generated makefile rules among several machines. One of the goals is that the user intervention necessary to achieve this should be minimal. At my current state, this means editing the hugin-generated makefile. The amount of editing required largely depends on whether a shared file system is used or not.
1) If the distributed computation uses shared filesystem (all the input and output files live in the same directory with the same absolute path among all participating machines) then editing the makefile requires little work (but still requires). All that is necessary here is to substitute the relevant the hugin-generated command names. Example (using nona, but also implies other commands such as enblend, enfuse, ..): (makefile contents) NONA=nona (substitution) NONA=myRemoteNona Here, myRemoteNona will be a simple shell script that actually logs into some available remote machine and invokes the "nona" program (passing it all of its given arguments). My intent here would be to avoid the need to edit the makefile. Simply: - take the ~/.hugin configuration file and set NonaExe to myRemoteNona - invoke hugin, add photos, define control points, .., generate makefile - the generated makefile would contain NONA=myRemoteNona instead of NONA=nona However, I am not entirely convinced of this way. Maybe generating NONA?=nona (a conditional assignment, only performed when the variable is not already set) instead of NONA=nona into the makefile, thus being able to set NONA in the shell environment prior to running the make. Also, I have tried setting up NonaExe in the ~/.hugin configuration file, only to discover that hugin overwrites it everytime it is run (using version 0.7.0.3427). 2) When shared filesystem is not used then, obviously, input and output files have to be copied among machines during the execution of a particular rule. It is therefore not sufficient to simply substitute the relevant hugin-generated command names as in the first scenario. Basically, I have to edit the makefile rules so that my substitute commands (like myRemoteNona) receive all the necessary input file names on the command like before the actual arguments (like arguments to nona). To me, the solution here (to avoid the need to edit each and every generated makefile) would be to be able to specify additional arguments to nona (like for autopano) in the ~/.hugin configuration file. Example: NonaArgs=%I -- Here, the %I would be replaced with all input files necessary to execute a particular makefile rule. The -- would delimit them from the actual nona arguments. That all said, can I somehow avoid editing the generated makefile (without having to modify hugin) and perform the distributed computation? Tomas Klacko --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "hugin and other free panoramic software" group. A list of frequently asked questions is available at: http://wiki.panotools.org/Hugin_FAQ To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/hugin-ptx -~----------~----~----~----~------~----~------~--~---
