[tor-bugs] #15524 [Tor]: makefile rules for *.i files broken

Tor Bug Tracker & Wiki blackhole at torproject.org
Tue Mar 31 18:02:43 UTC 2015


#15524: makefile rules for *.i files broken
----------------------+------------------------------
 Reporter:  Alan      |          Owner:
     Type:  defect    |         Status:  new
 Priority:  normal    |      Milestone:
Component:  Tor       |        Version:  Tor: 0.2.6.6
 Keywords:  makefile  |  Actual Points:
Parent ID:            |         Points:
----------------------+------------------------------
 The makefile rules for generating the *.i files are not working for me
 under cygwin.  The rules are intended to generate .i files that contain
 lines like:

 "388282ad2a9be7209d64f18d05b1ba65fd254dc8 *src/common/aes.c\n"

 However, instead of inserting the substring "\n", the makefile is
 inserting a 0x0A control character, so the trailing doublequote is getting
 split to a second line, like this:

 "388282ad2a9be7209d64f18d05b1ba65fd254dc8 *src/common/aes.c
 "

 As a result, the file will not compile.

 The fix for me was to edit the makefile to change the rules for
 src/common/common_sha1.i and src/or/or_sha1.i.  Where the rules read:

 "sed" -n [some more stuff] [backslash]1[backslash][backslash]n"/p'

 I changed the backslash-backslash-n to backslash-backslash-backslash-n, so
 that it then reads:

 "sed" -n [some more stuff]
 [backslash]1[backslash][backslash][backslash]n"/p'

 Note: when I typed multiple \ characters into the description above, they
 disappeared in the preview screen, so I have used [backslash] to represent
 a single \ character in the lines above.

 In summary, I made a total of four changes, inserting one \ character on
 four different "sed" lines in the makefile.  With these changes, the *.i
 files were generated correctly.

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/15524>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list