[illumos-Developer] review request - webrev for #1045 not clobbering perl build dir

Albert Lee trisk at opensolaris.org
Wed May 18 13:37:25 PDT 2011


This will result in a leftover contrib/copy_contrib for someone
performing an incremental build, although I don't think that is a
major concern. The comment now only serves to confuse people.

Thanks,
-Albert

On Wed, May 18, 2011 at 3:34 PM, Mike Harsch <mike at harschsystems.com> wrote:
> Thanks Albert,
>
> I've removed the contrib/copy_contrib target and the reference to
> contrib/copy_contrib from the clobber line.  I'd like to request another
> round of review  -- webrev is here:
> http://harschsystems.com/bugs/illumos-1045.2/
>
> Test results:
> After running make in usr/src/cmd/perl we have:
>
> -bash-4.0$ ls -l
> total 18
> drwxr-xr-x   3 mharsch  staff          4 May 18 13:22 5.10.0
> drwxr-xr-x   5 mharsch  staff          7 May 18 13:06 contrib
> -rw-r--r--   1 mharsch  staff       1782 May 18 13:07 Makefile
> -rw-r--r--   1 mharsch  staff       1050 May 17 13:55 req.flg
> drwxr-xr-x   2 mharsch  staff          3 May 18 13:08 skel
> -bash-4.0$ bldenv ~/mharsch-ws/illumos.sh 'make clobber'
> Build type   is  non-DEBUG
> RELEASE      is
> VERSION      is mharsch-ws
> RELEASE_DATE is May 2011
>
> The top-level 'setup' target is available to build headers and tools.
>
> Using /usr/bin/bash as shell.
> /export/home/mharsch/mharsch-ws/usr/src/cmd/perl/5.10.0
> /usr/bin/rm -f -r 5.10.0
> -bash-4.0$ ls -l
> total 15
> drwxr-xr-x   5 mharsch  staff          7 May 18 13:06 contrib
> -rw-r--r--   1 mharsch  staff       1782 May 18 13:07 Makefile
> -rw-r--r--   1 mharsch  staff       1050 May 17 13:55 req.flg
> drwxr-xr-x   2 mharsch  staff          3 May 18 13:08 skel
> -bash-4.0$
>
>
>
> On 5/18/2011 1:07 PM, Albert Lee wrote:
>>
>> On Wed, May 18, 2011 at 2:19 PM, Mike Harsch<mike at harschsystems.com>
>>  wrote:
>>>
>>> contrib/copy_contrib isn't a directory, it's an executable copy of
>>> contrib/copy_contrib.sh that is generated by the dependency on line 45 of
>>> usr/src/cmd/perl/Makefile
>>>
>>> the comment just above this line talks about fetching copy_contrib from
>>> SCCS
>>> before calling the specific perl version makefiles.  The commands that
>>> end
>>> up generating contrib/copy_contrib are:
>>>
>>> -bash-4.0$ bldenv ~/mharsch-ws/illumos.sh 'make'
>>> Build type   is  non-DEBUG
>>> RELEASE      is
>>> VERSION      is mharsch-ws
>>> RELEASE_DATE is May 2011
>>>
>>> The top-level 'setup' target is available to build headers and tools.
>>>
>>> Using /usr/bin/bash as shell.
>>> /usr/bin/rm -f contrib/copy_contrib
>>> cat contrib/copy_contrib.sh>  contrib/copy_contrib
>>> chmod +x contrib/copy_contrib
>>> /export/home/mharsch/mharsch-ws/usr/src/cmd/perl/5.10.0
>>> ...
>>>
>>> That said, we don't appear to use contrib/copy_contrib, since we invoke
>>> contrib/copy_contrib.sh with $(KSH93) in the copy_contrib target for each
>>> version of perl (copied over from skel/Makefile).
>>>
>>>
>>> Is the dependency on line 45 of usr/src/cmd/perl/Makefile leftover from
>>> some
>>> previous state of the build system?  Could someone explain the 'SCCS
>>> fetch'
>>> reference?
>>>
>> This part of the tree has seen the SCCS to Mercurial migration (prior
>> to OpenSolaris), the addition of Perl 5.10 module support, and removal
>> (in illumos) of all of Perl 5.8.
>>
>> I assume (someone familiar with the TeamWare workflow should correct
>> me) the rule which creates contrib/copy_contrib as a executable copy
>> of contrib/copy_contrib.sh is a relic of SCCS not preserving file
>> permissions as metadata. Not sure why it's described as a "fetch".
>>
>> skel/Makefile was added relatively recently by John S. for Perl 5.10
>> module support, so it's possible that the references to
>> contrib/copy_contrib were meant to be removed later. I think you might
>> as well do that.
>>
>> -Albert
>>
>>> Thanks,
>>>
>>> Mike
>>>
>>>
>>> On 5/18/2011 10:25 AM, Albert Lee wrote:
>>>>
>>>> Shouldn't clobber either depend on contrib/copy_contrib or use rm -rf,
>>>> so that it cannot fail when contrib/copy_contrib is missing?
>>>>
>>>> I'm unsure as to how contrib/copy_contrib is actually created, though.
>>>> skel/Makefile has a target named copy_contrib that runs
>>>> contrib/copy_contrib.sh but it doesn't create a new directory.
>>>>
>>>> -Albert
>>>>
>>>> On Tue, May 17, 2011 at 5:11 PM, Garrett D'Amore<garrett at damore.org>
>>>> wrote:
>>>>>
>>>>> Looks good to me.
>>>>>
>>>>>  -- Garrett D'Amore
>>>>>
>>>>> On May 17, 2011, at 1:55 PM, Mike Harsch<mike at harschsystems.com>
>>>>>  wrote:
>>>>>
>>>>>> webrev is here:
>>>>>>   http://harschsystems.com/bugs/illumos-1045-webrev/
>>>>>>
>>>>>> Test Results:
>>>>>>
>>>>>> After building running make in usr/src/cmd/perl we have:
>>>>>>
>>>>>> -bash-4.0$ ls -l
>>>>>> total 23
>>>>>> drwxr-xr-x   3 mharsch  staff          4 May 17 14:16 5.10.0
>>>>>> drwxr-xr-x   5 mharsch  staff          8 May 17 14:16 contrib
>>>>>> -rw-r--r--   1 mharsch  staff       1819 May 17 13:55 Makefile
>>>>>> -rw-r--r--   1 mharsch  staff       1824 May 17 14:12 Makefile.new
>>>>>> -rw-r--r--   1 mharsch  staff       1050 May 17 13:55 req.flg
>>>>>> drwxr-xr-x   2 mharsch  staff          3 May 17 13:55 skel
>>>>>>
>>>>>> Now run make clobber
>>>>>>
>>>>>> -bash-4.0$ bldenv ~/mharsch-ws/illumos.sh 'make clobber'
>>>>>> Build type   is  non-DEBUG
>>>>>> RELEASE      is
>>>>>> VERSION      is mharsch-ws
>>>>>> RELEASE_DATE is May 2011
>>>>>>
>>>>>> The top-level 'setup' target is available to build headers and tools.
>>>>>>
>>>>>> Using /usr/bin/bash as shell.
>>>>>> /export/home/mharsch/mharsch-ws/usr/src/cmd/perl/5.10.0
>>>>>> /usr/bin/rm -f -r contrib/copy_contrib
>>>>>> -bash-4.0$ ls -l
>>>>>> total 23
>>>>>> drwxr-xr-x   2 mharsch  staff          3 May 17 14:17 5.10.0
>>>>>> drwxr-xr-x   5 mharsch  staff          7 May 17 14:17 contrib
>>>>>> -rw-r--r--   1 mharsch  staff       1819 May 17 13:55 Makefile
>>>>>> -rw-r--r--   1 mharsch  staff       1824 May 17 14:12 Makefile.new
>>>>>> -rw-r--r--   1 mharsch  staff       1050 May 17 13:55 req.flg
>>>>>> drwxr-xr-x   2 mharsch  staff          3 May 17 13:55 skel
>>>>>>
>>>>>> Notice 5.10.0 is still there
>>>>>>
>>>>>> -bash-4.0$ mv Makefile Makefile.old
>>>>>> -bash-4.0$ mv Makefile.new Makefile
>>>>>> -bash-4.0$ bldenv ~/mharsch-ws/illumos.sh 'make clobber'
>>>>>> Build type   is  non-DEBUG
>>>>>> RELEASE      is
>>>>>> VERSION      is mharsch-ws
>>>>>> RELEASE_DATE is May 2011
>>>>>>
>>>>>> The top-level 'setup' target is available to build headers and tools.
>>>>>>
>>>>>> Using /usr/bin/bash as shell.
>>>>>> /export/home/mharsch/mharsch-ws/usr/src/cmd/perl/5.10.0
>>>>>> /usr/bin/rm -f -r contrib/copy_contrib 5.10.0
>>>>>> -bash-4.0$ ls -l
>>>>>> total 20
>>>>>> drwxr-xr-x   5 mharsch  staff          7 May 17 14:17 contrib
>>>>>> -rw-r--r--   1 mharsch  staff       1824 May 17 14:12 Makefile
>>>>>> -rw-r--r--   1 mharsch  staff       1819 May 17 13:55 Makefile.old
>>>>>> -rw-r--r--   1 mharsch  staff       1050 May 17 13:55 req.flg
>>>>>> drwxr-xr-x   2 mharsch  staff          3 May 17 13:55 skel
>>>>>> -bash-4.0$
>>>>>>
>>>>>> _______________________________________________
>>>>>> Developer mailing list
>>>>>> Developer at lists.illumos.org
>>>>>> http://lists.illumos.org/m/listinfo/developer
>>>>>
>>>>> _______________________________________________
>>>>> Developer mailing list
>>>>> Developer at lists.illumos.org
>>>>> http://lists.illumos.org/m/listinfo/developer
>>>>>
>>>
>
>



More information about the Developer mailing list