On 6/13/15 3:01 PM, Adrian Chadd wrote:
> Author: adrian
> Date: Sat Jun 13 22:01:21 2015
> New Revision: 284356
> URL: https://svnweb.freebsd.org/changeset/base/284356
> 
> Log:
>   Fix up crunchgen binary generation to work with external cross-build
>   tools.
>   
>   * Allow STRIP to be overridden by the environment

This change breaks the the build still. The build uses STRIP as the
parameter for install(1), i.e., -s or blank. Once you rebuild
usr.sbin/crunch/crunchgen with this change and then build rescue/rescue
with 'make STRIP=' the following is encountered:

rescue
sh: rescue: not found
*** [rescue] Error code 127

make[1]: stopped in /usr/obj/root/svn/base/rescue/rescue

I would suggest changing the name of this, perhaps STRIP_CMD as ports
has, or using a different mechanism.

Side note, something funky is going on with including /etc/make.conf.
When I build with buildworld (clean) I get the error, but not a plain
'make' having STRIP= in /etc/make.conf for both. My system is
pre-meta-mode merge at r280911.


>   * Use CC to tie things together, not LD
>   
>   Tested:
>   
>   * i386, mips32
>   
>   Submitted by:       kan
> 
> Modified:
>   head/usr.sbin/crunch/crunchgen/crunchgen.c
> 
> Modified: head/usr.sbin/crunch/crunchgen/crunchgen.c
> ==============================================================================
> --- head/usr.sbin/crunch/crunchgen/crunchgen.c        Sat Jun 13 20:15:44 
> 2015        (r284355)
> +++ head/usr.sbin/crunch/crunchgen/crunchgen.c        Sat Jun 13 22:01:21 
> 2015        (r284356)
> @@ -980,6 +980,7 @@ top_makefile_rules(FILE *outmk)
>       prog_t *p;
>  
>       fprintf(outmk, "LD?= ld\n");
> +     fprintf(outmk, "STRIP?= strip\n");
>       if ( subtract_strlst(&libs, &libs_so) )
>               fprintf(outmk, "# NOTE: Some LIBS declarations below overridden 
> by LIBS_SO\n");
>  
> @@ -1027,7 +1028,7 @@ top_makefile_rules(FILE *outmk)
>       fprintf(outmk, "\t$(CC) -static -o %s %s.o $(CRUNCHED_OBJS) $(LIBS)\n",
>           execfname, execfname);
>       fprintf(outmk, ".endif\n");
> -     fprintf(outmk, "\tstrip %s\n", execfname);
> +     fprintf(outmk, "\t$(STRIP) %s\n", execfname);
>       fprintf(outmk, "realclean: clean subclean\n");
>       fprintf(outmk, "clean:\n\trm -f %s *.lo *.o *_stub.c\n", execfname);
>       fprintf(outmk, "subclean: $(SUBCLEAN_TARGETS)\n");
> @@ -1109,7 +1110,7 @@ prog_makefile_rules(FILE *outmk, prog_t 
>               fprintf(outmk, " $(%s_LIBS)", p->ident);
>  
>       fprintf(outmk, "\n");
> -     fprintf(outmk, "\t$(LD) -dc -r -o %s.lo %s_stub.o $(%s_OBJPATHS)",
> +     fprintf(outmk, "\t$(CC) -nostdlibs -dc -r -o %s.lo %s_stub.o 
> $(%s_OBJPATHS)",
>           p->name, p->name, p->ident);
>       if (p->libs)
>               fprintf(outmk, " $(%s_LIBS)", p->ident);
> 


-- 
Regards,
Bryan Drewery
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to