wok rev 20486

perl: force arch
author Pascal Bellard <pascal.bellard@slitaz.org>
date Fri Oct 26 10:09:53 2018 +0200 (2018-10-26)
parents f5088c165f51
children b3c3c028e5ba
files linld/stuff/src/CRTL.ASM linld/stuff/src/LOAD.CPP linld/stuff/src/MEMTOP.ASM linld/stuff/src/TAZBOOT.CPP linld/stuff/src/VCPI.ASM linld/stuff/src/XMM.ASM linld/stuff/src/_BEG.ASM perl/receipt
line diff
     1.1 --- a/linld/stuff/src/CRTL.ASM	Tue Oct 23 08:25:49 2018 +0200
     1.2 +++ b/linld/stuff/src/CRTL.ASM	Fri Oct 26 10:09:53 2018 +0200
     1.3 @@ -180,7 +180,7 @@
     1.4                  pop	bx			; s
     1.5                  push	bx
     1.6                  push	ax
     1.7 -        global  puts:near			; puts(bx)
     1.8 +;        global  puts:near			; puts(bx)
     1.9  puts:
    1.10  		call	putsz
    1.11                  mov	bx,offset msg_crlf
    1.12 @@ -188,7 +188,6 @@
    1.13  putcz:
    1.14  		mov	ah,2
    1.15  		int	21h
    1.16 -        global  putsz:near			; putsz(bx)
    1.17  putsz:
    1.18  		mov	dl,[bx]
    1.19  		inc	bx
    1.20 @@ -319,11 +318,11 @@
    1.21                  push	bx
    1.22                  push	ax
    1.23  		;endif
    1.24 -        global  lseekset:near
    1.25 +;        global  lseekset:near
    1.26  lseekset:
    1.27  		clc
    1.28  		db	0B0h			; mov al,im
    1.29 -        global  rewind:near
    1.30 +;        global  rewind:near
    1.31  rewind:						; rewind(bx)
    1.32  		stc
    1.33  		mov	ax,4200h
    1.34 @@ -436,7 +435,7 @@
    1.35          global  die:near			; die(bx)
    1.36  die:
    1.37  		call	puts
    1.38 -        global  _exit:near
    1.39 +;        global  _exit:near
    1.40  _exit:
    1.41  		mov	al,[_no_exit]
    1.42  		cmp	al,0
    1.43 @@ -447,7 +446,7 @@
    1.44  @@hang:
    1.45  		mov	bx, offset msg_hang
    1.46  		call	puts
    1.47 -        global  _abort:near
    1.48 +;        global  _abort:near
    1.49  _abort:
    1.50  		cli
    1.51  @@stop:
     2.1 --- a/linld/stuff/src/LOAD.CPP	Tue Oct 23 08:25:49 2018 +0200
     2.2 +++ b/linld/stuff/src/LOAD.CPP	Fri Oct 26 10:09:53 2018 +0200
     2.3 @@ -112,8 +112,8 @@
     2.4  const u32 HdrS = 'H' + ('d'<<8) + (u32('r')<<16) + (u32('S')<<24);
     2.5  
     2.6  u16 rm_size;
     2.7 -u8 pm_high;	// @ = @rm_size + 2, see JUMP.ASM
     2.8 -u8* rm_buf;	// @ = @rm_size + 3, see JUMP.ASM
     2.9 +static u8 pm_high;	// @ = @rm_size + 2, see JUMP.ASM
    2.10 +static u8* rm_buf;	// @ = @rm_size + 3, see JUMP.ASM
    2.11  u32 base_himem = _1m+_64k;
    2.12  
    2.13  // register value to launch the kernel real mode code
     3.1 --- a/linld/stuff/src/MEMTOP.ASM	Tue Oct 23 08:25:49 2018 +0200
     3.2 +++ b/linld/stuff/src/MEMTOP.ASM	Fri Oct 26 10:09:53 2018 +0200
     3.3 @@ -27,7 +27,6 @@
     3.4  ;***************************************************************
     3.5  ;u32 memtopz();
     3.6  ;***************************************************************
     3.7 -        global  _memtopz:near
     3.8          proc    _memtopz near
     3.9  ;***************************************************************
    3.10  ;u32 memtop_e801()
     4.1 --- a/linld/stuff/src/TAZBOOT.CPP	Tue Oct 23 08:25:49 2018 +0200
     4.2 +++ b/linld/stuff/src/TAZBOOT.CPP	Fri Oct 26 10:09:53 2018 +0200
     4.3 @@ -62,8 +62,8 @@
     4.4  	return load_kernel();
     4.5  }
     4.6  
     4.7 -char _cmdline[4096];
     4.8 -const char *cmdline = (const char *) _cmdline+1;
     4.9 +static char buf_cmdline[4096];
    4.10 +const char *cmdline = (const char *) buf_cmdline+1;
    4.11  static void bootiso(char **iso)
    4.12  {
    4.13  	const char *init = " rdinit=/init.exe", *mode="menu";
    4.14 @@ -101,18 +101,18 @@
    4.15  		c = x->filename[6];
    4.16  	}
    4.17  
    4.18 -	strcatb(_cmdline," rw root=/dev/null autologin bootfrom=");
    4.19 -	strcat(_cmdline,*iso);
    4.20 +	strcatb(buf_cmdline," rw root=/dev/null autologin bootfrom=");
    4.21 +	strcat(buf_cmdline,*iso);
    4.22  	if (magic < 0x20630)
    4.23  		init = ""; // Does not support multiple initramfs
    4.24  
    4.25  	if (noauto) {
    4.26  		char *s;
    4.27 -		* (int *) _cmdline = 0;
    4.28 +		* (int *) buf_cmdline = 0;
    4.29  		iso++;
    4.30  		while ((s = *++iso) != NULL) {
    4.31  			if (strhead(s,"initrd=")) 
    4.32 -				strcatb(_cmdline,s);
    4.33 +				strcatb(buf_cmdline,s);
    4.34  			else if (isoopen(s+7) >= 0)
    4.35  				addinitrd();
    4.36  		}
    4.37 @@ -139,11 +139,11 @@
    4.38  			if (((short *) &x->fileofs)[1] == 0) addinitrd();
    4.39  			else init="";
    4.40  		}
    4.41 -		strcat(_cmdline,init);
    4.42 -		strcatb(_cmdline,"mode=");
    4.43 -		strcat(_cmdline,mode);
    4.44 -		strcatb(_cmdline,"magic=");
    4.45 -		strcat(_cmdline,ultoa(magic));
    4.46 +		strcat(buf_cmdline,init);
    4.47 +		strcatb(buf_cmdline,"mode=");
    4.48 +		strcat(buf_cmdline,mode);
    4.49 +		strcatb(buf_cmdline,"magic=");
    4.50 +		strcat(buf_cmdline,ultoa(magic));
    4.51  	}
    4.52  	load_initrds();
    4.53  	if (isknoppix) {
    4.54 @@ -241,7 +241,7 @@
    4.55  				s += 4;
    4.56  				topmem = strtol(s);
    4.57  			}
    4.58 -			strcatb(_cmdline,*argv);
    4.59 +			strcatb(buf_cmdline,*argv);
    4.60  		}}
    4.61  	}
    4.62  	if (iso && isoreset(iso) >= 0) {
     5.1 --- a/linld/stuff/src/VCPI.ASM	Tue Oct 23 08:25:49 2018 +0200
     5.2 +++ b/linld/stuff/src/VCPI.ASM	Fri Oct 26 10:09:53 2018 +0200
     5.3 @@ -132,15 +132,13 @@
     5.4  ;****** Return: AX=>first unused byte in pagebuf
     5.5  ;****** Uses:   Flags
     5.6  ;***************************************************************
     5.7 -        global  _prepare_vcpi:near
     5.8          global  prepare_vcpi:near
     5.9 -        proc    _prepare_vcpi near
    5.10 +        proc    prepare_vcpi near
    5.11  
    5.12                  ;pop     ax
    5.13                  ;pop     bx		;pgbuf
    5.14                  ;push    bx
    5.15                  ;push    ax
    5.16 -prepare_vcpi:
    5.17  
    5.18  ;Calculate pagedir/page0 addrs, initialize cr3 and pagedir[0]
    5.19                  xor     eax,eax
    5.20 @@ -183,7 +181,7 @@
    5.21  		mov	[_heap_top],ax
    5.22                  ;ret
    5.23  
    5.24 -        endp    _prepare_vcpi
    5.25 +        endp    prepare_vcpi
    5.26  
    5.27  
    5.28  ;***************************************************************
    5.29 @@ -192,7 +190,7 @@
    5.30  ;******         NZ - otherwise (it's bad)
    5.31  ;****** Uses:   Flags
    5.32  ;***************************************************************
    5.33 -        global  _get_vcpi_interface:near
    5.34 +        ;global  _get_vcpi_interface:near
    5.35          proc    _get_vcpi_interface near
    5.36  
    5.37                  ;push    si di
     6.1 --- a/linld/stuff/src/XMM.ASM	Tue Oct 23 08:25:49 2018 +0200
     6.2 +++ b/linld/stuff/src/XMM.ASM	Fri Oct 26 10:09:53 2018 +0200
     6.3 @@ -16,7 +16,6 @@
     6.4  
     6.5          segment _BSS byte public use16 'BSS'
     6.6  
     6.7 -        global  xmm_handler:dword
     6.8  xmm_handler	dd	?
     6.9  
    6.10          ends    _BSS
    6.11 @@ -40,7 +39,6 @@
    6.12  ;Call xmm driver addr or 0 if no xmm
    6.13  ;void xmm_driver(ah)
    6.14  ;***************************************************************
    6.15 -        global  xmm_driver:near
    6.16          proc    xmm_driver near
    6.17  
    6.18  		push	si
    6.19 @@ -100,6 +98,7 @@
    6.20          global  _xmm_alloc:near
    6.21          proc    _xmm_alloc near
    6.22  
    6.23 +	ret	; TO BE FIXED
    6.24                  pop     ax
    6.25                  pop     bx
    6.26                  push    bx
    6.27 @@ -108,6 +107,8 @@
    6.28  		mov	edx,[(image_himem bx).size]		; m->size
    6.29                  ;dec     edx
    6.30                  shr     edx,10          ; to Kb
    6.31 +                inc     edx
    6.32 +                mov     ah,89h          ;allocate blk of EDX kilobytes
    6.33  		else
    6.34  		;mov	ax,-1
    6.35  		;cwd
    6.36 @@ -118,10 +119,10 @@
    6.37  		mov	cl,16-10
    6.38  		extrn	N_LXLSH@:near
    6.39  		call	N_LXLSH@
    6.40 +                inc     dx
    6.41 +                mov     ah,9h          ;allocate blk of DX kilobytes (<64Mb)
    6.42  		endif
    6.43 -                inc     dx
    6.44  		push	bx
    6.45 -                mov     ah,09h          ;allocate blk of DX kilobytes
    6.46                  call    xmm_driver      ;
    6.47                  jnz     @@goerr
    6.48                                          ;now: dx=handle of the blk
     7.1 --- a/linld/stuff/src/_BEG.ASM	Tue Oct 23 08:25:49 2018 +0200
     7.2 +++ b/linld/stuff/src/_BEG.ASM	Fri Oct 26 10:09:53 2018 +0200
     7.3 @@ -237,7 +237,9 @@
     7.4  		call	near open
     7.5  		jc	argend
     7.6  		pop	bx			; trash argc,  argv >> 1Kb !
     7.7 +		ifdef	EXTRA
     7.8  	global	read_cmdline:near
     7.9 +		endif
    7.10  read_cmdline:
    7.11  		push	di
    7.12  		push	ax
     8.1 --- a/perl/receipt	Tue Oct 23 08:25:49 2018 +0200
     8.2 +++ b/perl/receipt	Fri Oct 26 10:09:53 2018 +0200
     8.3 @@ -17,9 +17,15 @@
     8.4  cook_tmp_toolchain()
     8.5  {
     8.6  	cd $src
     8.7 -	grep -rl 'uname -m' . | xargs sed -i 's|uname -m|echo i686|'
     8.8  	{ sh Configure -des -Dprefix=/tools \
     8.9 -		-Dstatic_ext='Data/Dumper Fcntl IO' &&
    8.10 +		-Darchname="$ARCH-linux" \
    8.11 +		-Dmyarchname="$ARCH-linux" \
    8.12 +		-Dsitearch="/usr/lib/perl5/site_perl/$VERSION/$ARCH-linux" \
    8.13 +		-Dsitearchexp="/usr/lib/perl5/site_perl/$VERSION/$ARCH-linux" \
    8.14 +		-Darchlib="/usr/lib/perl5/$VERSION/$ARCH-linux" \
    8.15 +		-Darchlibexp="/usr/lib/perl5/$VERSION/$ARCH-linux" \
    8.16 +		-Dinstallarchlib="/usr/lib/perl5/$VERSION/$ARCH-linux" \
    8.17 +		-Dstatic_ext='Data/Dumper Fcntl IO'
    8.18  	
    8.19  	# Only few tools are needed in the tmp toolchain.
    8.20  	make perl utilities ext/Errno/pm_to_blib
    8.21 @@ -34,8 +40,14 @@
    8.22  #
    8.23  compile_rules()
    8.24  {
    8.25 -	grep -rl 'uname -m' . | xargs sed -i 's|uname -m|echo i686|'
    8.26 -	./configure.gnu --prefix=/usr &&
    8.27 +	./configure.gnu --prefix=/usr \
    8.28 +		-Darchname="$ARCH-linux" \
    8.29 +		-Dmyarchname="$ARCH-linux" \
    8.30 +		-Dsitearch="/usr/lib/perl5/site_perl/$VERSION/$ARCH-linux" \
    8.31 +		-Dsitearchexp="/usr/lib/perl5/site_perl/$VERSION/$ARCH-linux" \
    8.32 +		-Darchlib="/usr/lib/perl5/$VERSION/$ARCH-linux" \
    8.33 +		-Darchlibexp="/usr/lib/perl5/$VERSION/$ARCH-linux" \
    8.34 +		-Dinstallarchlib="/usr/lib/perl5/$VERSION/$ARCH-linux" &&
    8.35  	make &&
    8.36  	make install
    8.37