From: marc doz <doz.marc@gmail.com>
To: ptxdist@pengutronix.de
Subject: Re: [ptxdist] how to escape $ in a rule ?
Date: Mon, 23 Jun 2014 13:46:56 +0200 [thread overview]
Message-ID: <CAP+MAyzeLvrtBr6u=7RXO1+enT=H6ThBX-O1Mm6462PazwmvRw@mail.gmail.com> (raw)
In-Reply-To: <CAP+MAyxunYR8RukLJQK0h2Oo3DynZRNBNhwzLVERsuTPE5MrDA@mail.gmail.com>
[-- 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
next prev parent reply other threads:[~2014-06-23 11:47 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-06-20 13:05 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 [this message]
2014-06-23 13:20 ` Michael Olbrich
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='CAP+MAyzeLvrtBr6u=7RXO1+enT=H6ThBX-O1Mm6462PazwmvRw@mail.gmail.com' \
--to=doz.marc@gmail.com \
--cc=ptxdist@pengutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox