I would like a new "make" targeted that does not use between 98% and 100% CPU. Version-Release number of selected component (if applicable): * publican-0.38-0 Additional info: After thinking this over, I decided that it does not have to be a new "make" targeted - feel free to change existing targets to use less CPU. "make test" does not count.
* "...does not have to be a new "make" target - ..."
Doing anything about the performance really requires the make files to be rewritten in a proper programming language. This would take about 3 weeks to complete. One side affect of doing this would be that each books make file would need to be converted to a suitable configuration file. e.g. a conf, ini or xml file. Doing this would make the creation of a GUI, or integrating the build in an editing tool, easier.
Why write a net configuration file when you can just parse the existing make file in new ways. Just write publican.pl which looks the same as make and has similar functionality to the existing make system. For example, the present system: make html-single-en-US Hypothetical new system: publican html-single-en-US And spit out errors like: "You're not in a publican books directory, you dolt!" "I can't find a Makefile"
Or, similarly... prepForPublican = do wd โ liftIO $ getWorkingDirectory conts โ liftIO $ getDirectoryContents wd >>= return โฆ filter (โ [".", ".."]) env โ ask state โ get if lit_Makefile โ conts then do outLine $ msgNoBuildFile wd retCode 1 fnNm else do mf โ parseMakefile `liftM` (liftIO $ readFile lit_Makefile) put state { makefile = Just mf , docLocation = lookup "XML_LANG" mf , docName = (flip addExtension $ ".xml") `liftM` (lookup "DOCNAME" mf)} retCode 0 fnNm where fnNm = "prepForPublican" msgNoBuildFile wd = docitErr โงบ fnNm โงบ ": " โงบ "a Makefile does not not exist in the current working directory: " โงบ wd
This is being addressed. Stay tuned until post docs.redhat.com rebase.
This should be fixed in the BETA.
Fixed in 1.0 I built a simple book[1] with the following results: Version 0.44 -- took 73 seconds and used between 60% and 70% CPU for most of that time, but used 92% CPU for the final stage of the build, once Saxon was called. Version 1.0 -- took 3 seconds, and CPU shot up to a maximum of 40% momentarily (less than a second).
publican-1.2-0.fc12 has been submitted as an update for Fedora 12. http://admin.fedoraproject.org/updates/publican-1.2-0.fc12
publican-1.2-0.fc12 has been pushed to the Fedora 12 stable repository. If problems still persist, please make note of it in this bug report.
publican-1.2-0.fc11 has been pushed to the Fedora 11 stable repository. If problems still persist, please make note of it in this bug report.