[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH XTF] Correct the usage of $(DESTDIR) and $(prefix)
On 21/07/16 11:43, Ian Jackson wrote: > Andrew Cooper writes ("[PATCH XTF] Correct the usage of $(DESTDIR) and > $(prefix)"): >> The GNU coding standards expect $(DESTDIR) to be the root of everything >> installed, and for prefix to then be added to the path. This is not how XTF >> previously behaved. >> >> Replace $(PREFIX) with its more common form $(prefix), and rearange >> $(DESTDIR) >> and $(prefix) to match expectation. > ... >> -DESTDIR ?= $(ROOT)/dist >> -PREFIX ?= $(ROOT) >> -export DESTDIR PREFIX >> +# $(prefix) defaults to $(ROOT) so development and testing can be done >> +# straight out of the working tree >> +prefix ?= $(ROOT) > ... >> +DEST := $(DESTDIR)$(prefix) > ... >> - @mkdir -p $(DESTDIR) >> - $(INSTALL_PROGRAM) -p xtf-runner $(DESTDIR) >> + @mkdir -p $(DEST) >> + $(INSTALL_PROGRAM) -p xtf-runner $(DEST) > The effect of this is that > make prefix=/usr > will create > /usr/xtf-runner > /usr/tests/*/test-info.json > which is not how things would normally be expected work. XTF doesn't match any standard installable package. It is some configuration files and a load of microkernels which are not system executables. I build it with prefix=/opt/xtf as that is the only plausible place for the results to live, per the FHS. It could certainly be argued that it should insert its own xtf/ directory rather than relying on prefix to pass it. > > I think to make this work right, you have to do something like > > ifeq ($prefix,) > bindir=$(ROOT) > xtflibdir=$(ROOT) > else > bindir=$(prefix)/bin > xtflibdir=$(prefix)/lib/xtf > endif > xtftestsdir=$(xtflibdir)/tests > ... > $(INSTALL_PROGRAM) -p xtf-runner $(DESTDIR)/$(bindir) > ... > $(INSTALL_DATA) -p test-info.json $(DESTDIR)/$(xtftestsdir)/$(NAME) xtf-runner expects to find tests/ in the same directory it resides in, because otherwise there is no sensible way to find it. > > Also it would be more conventional to use $(INSTALL) -d or > $(INSTALL_DIR) rather than mkdir. I will make this change. ~Andrew _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |