2014-06-20 15:52 GMT+02:00 marc doz : > hello, > Thanks but it don't work , > > I will prepare a test rule & a test package for monday in order to test > the different solutions & I will publish the log > > regards > marc > > > > > 2014-06-20 15:37 GMT+02:00 Michael Olbrich : > > Hi, >> >> On Fri, Jun 20, 2014 at 03:05:43PM +0200, marc doz wrote: >> > I’m writing a recipe & I’m using install_copy & install_tree function >> in my >> > recipe foo.make >> > >> > $(call install_copy, foo, 0, 0, 0755, $(FOO_DIR)/AAA/foo$1.bar, >> > /AAA/foo$1.bar) >> > >> > $(call install_tree, foo, 0, 0, 0755, $(FOO_DIR)/AAA/, /AAA/) >> > >> > >> > I would like to avoid the substitution of $1 because the file name that >> I >> > would like embed is really foo$1.bar & ptxdist try to copy foo.bar with >> > install_copy & install_tree.. >> > >> > >> > Do you know a way for escaping the $ ? >> > >> > >> > $$ don’t seem work >> >> $(call install_copy, foo, 0, 0, 0755, -, /AAA/foo$$1.bar) >> >> should work, at least with the current ptxdist. I'm not sure about >> ptxdist-2012.03.0, that's rather old. What error do you get? Maybe you >> need >> to escape it again (for make or shell). >> >> Michael >> >> -- >> Pengutronix e.K. | | >> Industrial Linux Solutions | http://www.pengutronix.de/ >> | >> Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 >> | >> Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 >> | >> >> -- >> ptxdist mailing list >> ptxdist@pengutronix.de >> > > hello, please find the test results : regularFile -> regularFile foo$1.bar -> foo.bar foo\$1.bar -> foo\.bar foo$$1.bar -> foo.bar foo\$\$1.bar -> foo\.bar foo$\$1 ->foo.bar 'foo$1.bar' -> foo.bar 'foo\$1.bar' -> foo.bar 'foo$$1.bar' -> foo.bar 'foo\$\$1.bar' -> foo.bar 'foo$\$1.bar' -> foo.bar Test package ( foo-0.1.tar): diff -Naur foo/AAA/foo$1.bar foo-0.1/AAA/foo$1.bar --- foo/AAA/foo$1.bar 1970-01-01 01:00:00.000000000 +0100 +++ foo-0.1/AAA/foo$1.bar 2014-06-23 11:16:53.757159549 +0200 @@ -0,0 +1 @@ +foo$1.bar diff -Naur foo/AAA/regularFile foo-0.1/AAA/regularFile --- foo/AAA/regularFile 1970-01-01 01:00:00.000000000 +0100 +++ foo-0.1/AAA/regularFile 2014-06-23 11:18:10.725160705 +0200 @@ -0,0 +1 @@ +regularFile ptdist rules foo.make : PACKAGES-$(PTXCONF_FOO) += foo FOO_VERSION := 0.1 FOO_MD5 := 6c45d1d62dc7beafecdd0362e40b95de FOO := foo-$(FOO_VERSION) FOO_SUFFIX := tar FOO_URL := FOO_SOURCE := $(SRCDIR)/$(FOO).$(FOO_SUFFIX) FOO_DIR := $(BUILDDIR)/$(FOO) FOO_LICENSE := unknown $(STATEDIR)/foo.compile: @$(call targetinfo) # do nothing @$(call touch) $(STATEDIR)/foo.install: @$(call targetinfo) # do nothing @$(call touch) $(STATEDIR)/foo.targetinstall: @$(call targetinfo) @$(call install_init, foo) @$(call install_fixup, foo,PRIORITY,optional) @$(call install_fixup, foo,SECTION,base) @$(call install_fixup, foo,AUTHOR,"marc") @$(call install_fixup, foo,DESCRIPTION,missing) # @$(call install_copy, foo, 0, 0, 0755, $(FOO_DIR)/AAA/regularFile , /AAA/regularFile) # @$(call install_copy, foo, 0, 0, 0755, $(FOO_DIR)/AAA/foo$1.bar , /AAA/foo$1.bar) @$(call install_copy, foo, 0, 0, 0755, $(FOO_DIR)/AAA/foo\$1.bar , /AAA/foo\$1.bar) # @$(call install_copy, foo, 0, 0, 0755, $(FOO_DIR)/AAA/foo$$1.bar , /AAA/foo$$1.bar) # @$(call install_copy, foo, 0, 0, 0755, $(FOO_DIR)/AAA/foo\$\$1.bar , /AAA/foo\$\$1.bar) # @$(call install_copy, foo, 0, 0, 0755, $(FOO_DIR)/AAA/foo$\$1.bar , /AAA/foo$\$1.bar) # @$(call install_copy, foo, 0, 0, 0755, $(FOO_DIR)/foobar, /dev/null) @$(call install_finish, foo) @$(call touch) # vim: syntax=make foo.in : ## SECTION=project_specific config FOO tristate prompt "foo" help FIXME these error messages are printed during tests : A) @$(call install_copy, foo, 0, 0, 0755, $(FOO_DIR)/AAA/regularFile , /AAA/regularFile) install file: src=BSP/platform-phyFLEX-i.MX6/build-target/foo-0.1/AAA/regularFile dst=/AAA/regularFile owner=0 group=0 permissions=0755 B) @$(call install_copy, foo, 0, 0, 0755, $(FOO_DIR)/AAA/foo$1.bar , /AAA/foo$1.bar) No suitable file '/AAA/foo.bar' could be found in any of these locations: /home/mdoz/BSP/platform-phyFLEX-i.MX6/build-target/foo-0.1/AAA/foo.bar.phyFLEX-i.MX6 /home/mdoz/BSP/platform-phyFLEX-i.MX6/build-target/foo-0.1/AAA/foo.bar install file: src=BSP/platform-phyFLEX-i.MX6/build-target/foo-0.1/AAA/foo.bar dst=/AAA/foo.bar owner=0 group=0 permissions=0755 Error: file not found: /home/mdoz/BSP/platform-phyFLEX-i.MX6/build-target/foo-0.1/AAA/foo.bar C) @$(call install_copy, foo, 0, 0, 0755, $(FOO_DIR)/AAA/foo\$1.bar , /AAA/foo\$1.bar) No suitable file '/AAA/foo\.bar' could be found in any of these locations: /home/mdoz/BSP/platform-phyFLEX-i.MX6/build-target/foo-0.1/AAA/foo\.bar.phyFLEX-i.MX6 /home/mdoz/BSP/platform-phyFLEX-i.MX6/build-target/foo-0.1/AAA/foo\.bar install file: src=BSP/platform-phyFLEX-i.MX6/build-target/foo-0.1/AAA/foo\.bar dst=/AAA/foo\.bar owner=0 group=0 permissions=0755 Error: file not found: /home/mdoz/BSP/platform-phyFLEX-i.MX6/build-target/foo-0.1/AAA/foo\.bar D) @$(call install_copy, foo, 0, 0, 0755, $(FOO_DIR)/AAA/foo$$1.bar , /AAA/foo$$1.bar) No suitable file '/AAA/foo.bar' could be found in any of these locations: /home/mdoz/BSP/platform-phyFLEX-i.MX6/build-target/foo-0.1/AAA/foo.bar.phyFLEX-i.MX6 /home/mdoz/BSP/platform-phyFLEX-i.MX6/build-target/foo-0.1/AAA/foo.bar install file: src=BSP/platform-phyFLEX-i.MX6/build-target/foo-0.1/AAA/foo.bar dst=/AAA/foo.bar owner=0 group=0 permissions=0755 Error: file not found: /home/mdoz/BSP/platform-phyFLEX-i.MX6/build-target/foo-0.1/AAA/foo.bar E) @$(call install_copy, foo, 0, 0, 0755, $(FOO_DIR)/AAA/foo\$\$1.bar , /AAA/foo\$\$1.bar) No suitable file '/AAA/foo\.bar' could be found in any of these locations: /home/mdoz/BSP/platform-phyFLEX-i.MX6/build-target/foo-0.1/AAA/foo\.bar.phyFLEX-i.MX6 /home/mdoz/BSP/platform-phyFLEX-i.MX6/build-target/foo-0.1/AAA/foo\.bar install file: src=BSP/platform-phyFLEX-i.MX6/build-target/foo-0.1/AAA/foo\.bar dst=/AAA/foo\.bar owner=0 group=0 permissions=0755 Error: file not found: /home/mdoz/BSP/platform-phyFLEX-i.MX6/build-target/foo-0.1/AAA/foo\.bar Error: install_file failed! F) @$(call install_copy, foo, 0, 0, 0755, $(FOO_DIR)/AAA/foo$\$1.bar , /AAA/foo$\$1.bar) No suitable file '/AAA/foo.bar' could be found in any of these locations: /home/mdoz/BSP/platform-phyFLEX-i.MX6/build-target/foo-0.1/AAA/foo.bar.phyFLEX-i.MX6 /home/mdoz/BSP/platform-phyFLEX-i.MX6/build-target/foo-0.1/AAA/foo.bar install file: src=BSP/platform-phyFLEX-i.MX6/build-target/foo-0.1/AAA/foo.bar dst=/AAA/foo.bar owner=0 group=0 permissions=0755 Error: file not found: /home/mdoz/BSP/platform-phyFLEX-i.MX6/build-target/foo-0.1/AAA/foo.bar regards, Marc