Stratego/XT JIRA  History | Log In     View a printable version of the current page. Get help!  
Issue Details (XML | Word)

Key: STR-579
Type: Bug Bug
Status: Closed Closed
Resolution: Fixed
Priority: Minor Minor
Assignee: Martin Bravenboer
Reporter: Martin Bravenboer
Votes: 0
Watchers: 0
Operations

Clone this issue
Create sub-task
If you were logged in you would be able to see more operations.
Stratego/XT

Makefile.xt: don't use ; for composing xtc invocations

Created: 2006-06-01 20:59   Updated: 2008-03-31 20:46
Component/s: autoxt
Affects Version/s: 0.16 (Stratego Core Compiler)
Fix Version/s: 0.17

Original Estimate: Unknown Remaining Estimate: Unknown Time Spent: Unknown


 Description  « Hide
See this mail by Akim:
http://mail.cs.uu.nl/pipermail/stratego-dev/2005q1/000864.html

Now we can disable XTC registration in specific packages, it should be possible to finally remove the ; .


Quote:

My environment is certainly somewhat unusual, but I face problems when
trying to compile some modules (here, Tiger in Stratego). Some issues
remain hidden for too long, for instance, in Makefile.xt, I read:

| install-data-local::
| $(mkinstalldirs) `dirname $(DREPOSITORY)`
| @$(XTC)/bin/xtc -r $(DREPOSITORY) register -l $(prefix) -V $(VERSION) -t $(PACKAGE); \
| for file in fordummy $(XTC_IMPORT) ; do \
| if [ "$$file" = "fordummy" ]; then continue; fi; \
| $(XTC)/bin/xtc -r $(DREPOSITORY) import $$file ; \
| echo $(XTC)/bin/xtc -r $(DREPOSITORY) import $$file ; \
| done ; \
| for file in fordummy $(pkgdata_DATA) ; do \
| if [ "$$file" = "fordummy" ]; then continue; fi; \
| $(XTC)/bin/xtc -r $(DREPOSITORY) register -l $(pkgdatadir) -V $(VERSION) \
| -t $$file ; \
| done ; \
| for file in fordummy $(sdfdata_DATA) ; do \
| if [ "$$file" = "fordummy" ]; then continue; fi; \
| $(XTC)/bin/xtc -r $(DREPOSITORY) register -l $(sdfdatadir) -V $(VERSION) \
| -t $$file ; \
| done; \
| echo "Data registered in repository $(DREPOSITORY): $(pkgdata_DATA) $(sdfdata_DATA)"
|
| This is a single command, hence, if there is an early failure, the
| "shell script" will continue instead of failing immediately. Why
|
| @$(XTC)/bin/xtc -r $(DREPOSITORY) register -l $(prefix) -V $(VERSION) -t $(PACKAGE); \
| for file in fordummy $(XTC_IMPORT) ; do \
| if [ "$$file" = "fordummy" ]; then continue; fi; \
| $(XTC)/bin/xtc -r $(DREPOSITORY) import $$file ; \
| echo $(XTC)/bin/xtc -r $(DREPOSITORY) import $$file ; \
| done ; \

instead of (without the ;\ between the two commands)

| @$(XTC)/bin/xtc -r $(DREPOSITORY) register -l $(prefix) -V $(VERSION) -t $(PACKAGE)
| for file in fordummy $(XTC_IMPORT) ; do \
| if [ "$$file" = "fordummy" ]; then continue; fi; \
| $(XTC)/bin/xtc -r $(DREPOSITORY) import $$file ; \
| echo $(XTC)/bin/xtc -r $(DREPOSITORY) import $$file ; \
| done

that way, if the first command fails, make stops immediately. Also,
verbose message would be more helpful *before* running the command,
than after.

This comment applies to several rules in Makefile.xt that would
rather, IMHO, be composed of several shell invocations instead of a
single. But maybe I missed the point?

 All   Comments   Work Log   Change History      Sort Order:
There are no comments yet on this issue.