[illumos-Developer] review request - webrev for #1045 not clobbering perl build dir
Mike Harsch
mike at harschsystems.com
Wed May 18 11:19:08 PDT 2011
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?
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