* [ptxdist] how to escape $ in a rule ?
@ 2014-06-20 13:05 marc doz
2014-06-20 13:08 ` Alexander Aring
2014-06-20 13:37 ` Michael Olbrich
0 siblings, 2 replies; 7+ messages in thread
From: marc doz @ 2014-06-20 13:05 UTC (permalink / raw)
To: ptxdist
[-- Attachment #1.1: Type: text/plain, Size: 593 bytes --]
Hello,
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
Thank you for your attention
#ptxdist version
2012.03.0
Marc
[-- Attachment #1.2: Type: text/html, Size: 1098 bytes --]
[-- Attachment #2: Type: text/plain, Size: 48 bytes --]
--
ptxdist mailing list
ptxdist@pengutronix.de
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [ptxdist] how to escape $ in a rule ?
2014-06-20 13:05 [ptxdist] how to escape $ in a rule ? marc doz
@ 2014-06-20 13:08 ` Alexander Aring
2014-06-20 13:15 ` marc doz
2014-06-20 13:37 ` Michael Olbrich
1 sibling, 1 reply; 7+ messages in thread
From: Alexander Aring @ 2014-06-20 13:08 UTC (permalink / raw)
To: ptxdist
On Fri, Jun 20, 2014 at 03:05:43PM +0200, marc doz wrote:
> Hello,
>
>
> 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
>
does work \$ ?
- Alex
--
ptxdist mailing list
ptxdist@pengutronix.de
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [ptxdist] how to escape $ in a rule ?
2014-06-20 13:08 ` Alexander Aring
@ 2014-06-20 13:15 ` marc doz
0 siblings, 0 replies; 7+ messages in thread
From: marc doz @ 2014-06-20 13:15 UTC (permalink / raw)
To: ptxdist
[-- Attachment #1.1: Type: text/plain, Size: 917 bytes --]
Hello,
no AAA/foo$1.bar give AAA/foo.bar
no AAA/foo\$1.bar give AAA/foo\.bar
Marc
2014-06-20 15:08 GMT+02:00 Alexander Aring <alex.aring@gmail.com>:
> On Fri, Jun 20, 2014 at 03:05:43PM +0200, marc doz wrote:
> > Hello,
> >
> >
> > 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
> >
>
> does work \$ ?
>
> - Alex
>
> --
> ptxdist mailing list
> ptxdist@pengutronix.de
>
[-- Attachment #1.2: Type: text/html, Size: 2243 bytes --]
[-- Attachment #2: Type: text/plain, Size: 48 bytes --]
--
ptxdist mailing list
ptxdist@pengutronix.de
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [ptxdist] how to escape $ in a rule ?
2014-06-20 13:05 [ptxdist] how to escape $ in a rule ? marc doz
2014-06-20 13:08 ` Alexander Aring
@ 2014-06-20 13:37 ` Michael Olbrich
2014-06-20 13:52 ` marc doz
1 sibling, 1 reply; 7+ messages in thread
From: Michael Olbrich @ 2014-06-20 13:37 UTC (permalink / raw)
To: ptxdist
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
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [ptxdist] how to escape $ in a rule ?
2014-06-20 13:37 ` Michael Olbrich
@ 2014-06-20 13:52 ` marc doz
2014-06-23 11:46 ` marc doz
0 siblings, 1 reply; 7+ messages in thread
From: marc doz @ 2014-06-20 13:52 UTC (permalink / raw)
To: ptxdist
[-- Attachment #1.1: Type: text/plain, Size: 1556 bytes --]
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 <m.olbrich@pengutronix.de>:
> 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
>
[-- Attachment #1.2: Type: text/html, Size: 2534 bytes --]
[-- Attachment #2: Type: text/plain, Size: 48 bytes --]
--
ptxdist mailing list
ptxdist@pengutronix.de
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [ptxdist] how to escape $ in a rule ?
2014-06-20 13:52 ` marc doz
@ 2014-06-23 11:46 ` marc doz
2014-06-23 13:20 ` Michael Olbrich
0 siblings, 1 reply; 7+ messages in thread
From: marc doz @ 2014-06-23 11:46 UTC (permalink / raw)
To: ptxdist
[-- Attachment #1.1: Type: text/plain, Size: 7184 bytes --]
2014-06-20 15:52 GMT+02:00 marc doz <doz.marc@gmail.com>:
> 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 <m.olbrich@pengutronix.de>:
>
> 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
[-- Attachment #1.2: Type: text/html, Size: 12460 bytes --]
[-- Attachment #2: foo-0.1.tar --]
[-- Type: application/x-tar, Size: 10240 bytes --]
[-- Attachment #3: Type: text/plain, Size: 48 bytes --]
--
ptxdist mailing list
ptxdist@pengutronix.de
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [ptxdist] how to escape $ in a rule ?
2014-06-23 11:46 ` marc doz
@ 2014-06-23 13:20 ` Michael Olbrich
0 siblings, 0 replies; 7+ messages in thread
From: Michael Olbrich @ 2014-06-23 13:20 UTC (permalink / raw)
To: ptxdist
On Mon, Jun 23, 2014 at 01:46:56PM +0200, marc doz wrote:
> 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
You need $$ for make and quotes (') for the shell:
@$(call install_copy, foo, 0, 0, 0755, '$(FOO_DIR)/AAA/foo$$1.bar' , '/AAA/foo$$1.bar')
For newer ptxdist versions you probably need to remove the quotes.
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
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2014-06-23 13:20 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-06-20 13:05 [ptxdist] how to escape $ in a rule ? marc doz
2014-06-20 13:08 ` Alexander Aring
2014-06-20 13:15 ` marc doz
2014-06-20 13:37 ` Michael Olbrich
2014-06-20 13:52 ` marc doz
2014-06-23 11:46 ` marc doz
2014-06-23 13:20 ` Michael Olbrich
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox