Can an automatically generated Tupfile then be used by the Tup build system?
I have the following order: C -> 1xTex -> 1xpdf -> Nx png On Tuesday, September 1, 2015 at 8:14:02 AM UTC-7, Pat Pannuto wrote: > > This should be reasonably easy to accomplish with run-scripts. > > Use something like this > http://stackoverflow.com/questions/4826485/ghostscript-pdf-total-pages to > determine the number of pages in the pdf and generate the rule on the fly. > > Run-scripts can be quite powerful / useful. For example, this > https://gist.github.com/ppannuto/2664fc10c2d87c8fbe23 will parse a > gnuplot file and automatically generate build rules for all the figures it > makes. > > HTH, > > -Pat > > On Tue, Sep 1, 2015 at 10:24 AM Ryan Gonzalez <[email protected] > <javascript:>> wrote: > >> I don't think this is possible with Tup. In Neil Mitchell's build system >> comparison, no one could figure out how to do something like this with Tup. >> You might want to try Shake or Fbuild, both of which are a bit more >> complicated but can do stuff like this. >> >> Maybe the Lua scripting could also help here? >> >> >> On August 31, 2015 11:27:28 PM CDT, Micah Villmow <[email protected] >> <javascript:>> wrote: >>> >>> This is what I don't want to do: >>> : build/nodes.pdf |> convert -density 300 %f -quality 100 install/%B.png >>> |> install/nodes-0.png install/nodes-1.png install/nodes-2.png >>> install/nodes-3.png install/nodes-4.png install/nodes-5.png >>> install/nodes-6.png install/nodes-7.png install/nodes-8.png >>> install/nodes-9.png install/nodes-10.png install/nodes-11.png >>> install/nodes-12.png install/nodes-13.png install/nodes-14.png >>> install/nodes-15.png install/nodes-16.png install/nodes-17.png >>> install/nodes-18.png install/nodes-19.png install/nodes-20.png >>> install/nodes-21.png install/nodes-22.png install/nodes-23.png >>> install/nodes-24.png install/nodes-25.png install/nodes-26.png >>> install/nodes-27.png install/nodes-28.png install/nodes-29.png >>> install/nodes-30.png install/nodes-31.png install/nodes-32.png >>> install/nodes-33.png install/nodes-34.png install/nodes-35.png >>> install/nodes-36.png install/nodes-37.png install/nodes-38.png >>> install/nodes-39.png install/nodes-40.png install/nodes-41.png >>> install/nodes-42.png install/nodes-43.png install/nodes-44.png >>> install/nodes-45.png install/nodes-46.png install/nodes-47.png >>> install/nodes-48.png install/nodes-49.png install/nodes-50.png >>> install/nodes-51.png install/nodes-52.png install/nodes-53.png >>> install/nodes-54.png install/nodes-55.png install/nodes-56.png >>> install/nodes-57.png install/nodes-58.png install/nodes-59.png >>> install/nodes-60.png install/nodes-61.png install/nodes-62.png >>> install/nodes-63.png install/nodes-64.png install/nodes-65.png >>> install/nodes-66.png install/nodes-67.png install/nodes-68.png >>> install/nodes-69.png install/nodes-70.png install/nodes-71.png >>> install/nodes-72.png install/nodes-73.png install/nodes-74.png >>> install/nodes-75.png install/nodes-76.png install/nodes-77.png >>> install/nodes-78.png install/nodes-79.png install/nodes-80.png >>> install/nodes-81.png install/nodes-82.png install/nodes-83.png >>> install/nodes-84.png install/nodes-85.png install/nodes-86.png >>> install/nodes-87.png install/nodes-88.png install/nodes-89.png >>> install/nodes-90.png install/nodes-91.png install/nodes-92.png >>> install/nodes-93.png install/nodes-94.png install/nodes-95.png >>> install/nodes-96.png install/nodes-97.png install/nodes-98.png >>> install/nodes-99.png install/nodes-100.png install/nodes-101.png >>> install/nodes-102.png install/nodes-103.png install/nodes-104.png >>> install/nodes-105.png install/nodes-106.png install/nodes-107.png >>> install/nodes-108.png install/nodes-109.png install/nodes-110.png >>> install/nodes-111.png install/nodes-112.png install/nodes-113.png >>> install/nodes-114.png install/nodes-115.png install/nodes-116.png >>> install/nodes-117.png install/nodes-118.png install/nodes-119.png >>> install/nodes-120.png install/nodes-121.png install/nodes-122.png >>> install/nodes-123.png install/nodes-124.png install/nodes-125.png >>> install/nodes-126.png install/nodes-127.png install/nodes-128.png >>> install/nodes-129.png install/nodes-130.png install/nodes-131.png >>> install/nodes-132.png install/nodes-133.png install/nodes-134.png >>> install/nodes-135.png install/nodes-136.png install/nodes-137.png >>> install/nodes-138.png install/nodes-139.png install/nodes-140.png >>> install/nodes-141.png install/nodes-142.png install/nodes-143.png >>> install/nodes-144.png install/nodes-145.png install/nodes-146.png >>> install/nodes-147.png install/nodes-148.png install/nodes-149.png >>> install/nodes-150.png install/nodes-151.png install/nodes-152.png >>> install/nodes-153.png install/nodes-154.png install/nodes-155.png >>> install/nodes-156.png install/nodes-157.png install/nodes-158.png >>> install/nodes-159.png install/nodes-160.png install/nodes-161.png >>> install/nodes-162.png install/nodes-163.png install/nodes-164.png >>> install/nodes-165.png install/nodes-166.png install/nodes-167.png >>> install/nodes-168.png >>> >>> >>> On Sunday, August 30, 2015 at 10:09:58 AM UTC-7, Micah Villmow wrote: >>>> >>>> I'm trying to get Tup to handle depenedencies on output only files >>>> without manually specifying them all directly. >>>> >>>> I have this rule: >>>> : foreach build/*.pdf |> convert -density 300 %f -quality 100 >>>> install/%B.png |> install/%g*.png >>>> >>>> >>>> This takes a bunch of intermediate PDF files that were created from >>>> latex that have pictures on them one per page and turns them into >>>> individual png files. I need a way to have TUP register all of the outputs >>>> as valid. The reason why I do not want to specify them manually is that >>>> each PDF file has a variable number of output images based on other >>>> inputs. >>>> >>>> So I want to basically say that anything in the install directory is a >>>> valid output, but never has a dependency. >>>> >>>> >> -- >> Sent from my Nexus 5 with K-9 Mail. Please excuse my brevity. >> >> -- >> -- >> tup-users mailing list >> email: [email protected] <javascript:> >> unsubscribe: [email protected] <javascript:> >> options: http://groups.google.com/group/tup-users?hl=en >> --- >> You received this message because you are subscribed to the Google Groups >> "tup-users" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected] <javascript:>. >> For more options, visit https://groups.google.com/d/optout. >> > -- -- tup-users mailing list email: [email protected] unsubscribe: [email protected] options: http://groups.google.com/group/tup-users?hl=en --- You received this message because you are subscribed to the Google Groups "tup-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
