summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Cross/config.sh-arm-linux11
-rw-r--r--Makefile.micro6
-rw-r--r--NetWare/config.wc24
-rw-r--r--Porting/checkcfgvar.pl3
-rw-r--r--README.micro10
-rw-r--r--epoc/config.sh16
-rw-r--r--plan9/config_sh.sample18
-rw-r--r--symbian/config.sh4
-rw-r--r--uconfig.h2
-rwxr-xr-xuconfig.sh7
-rw-r--r--win32/config.bc1
-rw-r--r--win32/config.ce13
-rw-r--r--win32/config.vc1
-rw-r--r--win32/config.vc641
14 files changed, 98 insertions, 19 deletions
diff --git a/Cross/config.sh-arm-linux b/Cross/config.sh-arm-linux
index ce98b3d598..aa169c6c07 100644
--- a/Cross/config.sh-arm-linux
+++ b/Cross/config.sh-arm-linux
@@ -123,9 +123,10 @@ d_bcopy='define'
d_bsd='undef'
d_bsdgetpgrp='undef'
d_bsdsetpgrp='undef'
-d_builtin_expect='define'
d_builtin_choose_expr='define'
+d_builtin_expect='define'
d_bzero='define'
+d_c99_variadic_macros='undef'
d_casti32='define'
d_castneg='define'
d_charvspr='undef'
@@ -138,12 +139,13 @@ d_closedir='define'
d_cmsghdr_s='define'
d_const='define'
d_copysignl='define'
+d_cplusplus='undef'
d_crypt='define'
d_crypt_r='undef'
d_csh='define'
+d_ctermid='undef'
d_ctermid_r='undef'
d_ctime_r='undef'
-d_c99_variadic_macros='undef'
d_cuserid='define'
d_dbl_dig='define'
d_dbminitproto='undef'
@@ -341,7 +343,9 @@ d_phostname='undef'
d_pipe='define'
d_poll='define'
d_portable='define'
+d_printf_format_null='undef'
d_procselfexe='define'
+d_pseudofork='undef'
d_pthread_atfork='undef'
d_pthread_attr_setscope='define'
d_pthread_yield='undef'
@@ -421,6 +425,7 @@ d_shmctl='define'
d_shmdt='define'
d_shmget='define'
d_sigaction='define'
+d_signbit='define'
d_sigprocmask='define'
d_sigsetjmp='define'
d_sitearch='define'
@@ -995,8 +1000,8 @@ useposix='true'
usereentrant='undef'
userelocatableinc='undef'
usesfio='false'
-usesitecustomize='undef'
useshrplib='true'
+usesitecustomize='undef'
usesocks='undef'
usethreads='undef'
usevendorprefix='undef'
diff --git a/Makefile.micro b/Makefile.micro
index 890140bff2..61a758e71b 100644
--- a/Makefile.micro
+++ b/Makefile.micro
@@ -5,6 +5,7 @@ CFLAGS = $(DEFINES) $(OPTIMIZE)
LIBS = -lm
_O = .o
ENV = env
+PERL = perl
all: microperl
@@ -36,6 +37,11 @@ distclean: clean
# The microconfiguration.
+# Cannot use $$ in the command line itself, so using var expansion instead.
+Config = '$$Config{$$1}'
+patch_uconfig:
+ $(PERL) -MConfig -pi -e "s/^((?:short|int|long(?:dbl|long)?|ptr|double|[iun]v|u?quad|[iu]\d+|fpos|lseek)(?:size|type)|byteorder|d_quad|quadkind|use64.+)=.*/\\1='"$(Config)"'/g" uconfig.shx
+
regen_uconfig uconfig.h: uconfig.sh
$(ENV) CONFIG_SH=uconfig.sh CONFIG_H=uconfig.h sh ./config_h.SH
diff --git a/NetWare/config.wc b/NetWare/config.wc
index e84b02e057..f818359943 100644
--- a/NetWare/config.wc
+++ b/NetWare/config.wc
@@ -111,7 +111,10 @@ d_bcopy='undef'
d_bsd='define'
d_bsdgetpgrp='undef'
d_bsdsetpgrp='undef'
+d_builtin_choose_expr='undef'
+d_builtin_expect='undef'
d_bzero='undef'
+d_c99_variadic_macros='undef'
d_casti32='undef'
d_castneg='define'
d_charvspr='undef'
@@ -128,9 +131,9 @@ d_cplusplus='undef'
d_crypt='undef'
d_crypt_r='undef'
d_csh='undef'
+d_ctermid='undef'
d_ctermid_r='undef'
d_ctime_r='undef'
-d_c99_variadic_macros='undef'
d_cuserid='undef'
d_dbl_dig='define'
d_dbminitproto='undef'
@@ -256,6 +259,7 @@ d_grpasswd='undef'
d_hasmntopt='undef'
d_htonl='define'
d_ilogbl='undef'
+d_inc_version_list='undef'
d_index='undef'
d_inetaton='undef'
d_int64_t='undef'
@@ -329,7 +333,9 @@ d_phostname='undef'
d_pipe='define'
d_poll='undef'
d_portable='define'
+d_printf_format_null='undef'
d_procselfexe='undef'
+d_pseudofork='undef'
d_pthread_atfork='undef'
d_pthread_attr_setscope='undef'
d_pthread_yield='undef'
@@ -410,8 +416,10 @@ d_shmctl='undef'
d_shmdt='undef'
d_shmget='undef'
d_sigaction='undef'
+d_signbit='undef'
d_sigprocmask='undef'
d_sigsetjmp='undef'
+d_sitearch='undef'
d_snprintf='undef'
d_sockatmark='undef'
d_sockatmarkproto='undef'
@@ -497,12 +505,15 @@ d_vsnprintf='undef'
d_wait4='undef'
d_waitpid='define'
d_wcstombs='define'
-d_writev='undef'
d_wctomb='define'
+d_writev='undef'
d_xenix='undef'
date='date'
db_hashtype='int'
db_prefixtype='int'
+db_version_major='0'
+db_version_minor='0'
+db_version_patch='0'
def_perlroot='sys:\perl\scripts'
def_temp='sys:\perl\temp'
defvoidused='15'
@@ -758,6 +769,7 @@ mydomain=''
myhostname=''
myuname=''
n='-n'
+need_va_copy='define'
netdb_hlen_type='int'
netdb_host_type='char *'
netdb_name_type='char *'
@@ -770,12 +782,12 @@ nroff=''
nvEUformat='"E"'
nvFUformat='"F"'
nvGUformat='"G"'
+nv_preserves_uv_bits='32'
nveformat='"e"'
nvfformat='"f"'
nvgformat='"g"'
nvsize='8'
nvtype='double'
-nv_preserves_uv_bits='32'
o_nonblock='O_NONBLOCK'
obj_ext='.obj'
old_pthread_create_joinable=''
@@ -783,6 +795,7 @@ optimize='-O'
orderlib='false'
osname='NetWare'
osvers='5.x'
+otherlibdirs=''
package='perl5'
pager='more /e'
passcat=''
@@ -904,6 +917,7 @@ subversion='~SUBVERSION~'
sysman='/usr/man/man1'
tail=''
tar=''
+targetarch=''
tbl=''
tee=''
test=''
@@ -930,11 +944,11 @@ uidtype='uid_t'
uname='uname'
uniq='uniq'
uquadtype='unsigned __int64'
+use5005threads='undef'
use64bitall='undef'
use64bitint='undef'
-usedl='define'
-use5005threads='undef'
usecrosscompile='undef'
+usedl='define'
usefaststdio='undef'
useithreads='define'
uselargefiles='undef'
diff --git a/Porting/checkcfgvar.pl b/Porting/checkcfgvar.pl
index fc0f8c693b..3f14b6f89e 100644
--- a/Porting/checkcfgvar.pl
+++ b/Porting/checkcfgvar.pl
@@ -50,8 +50,7 @@ sub read_file {
sub config_h_SH_reader {
my $cfg = shift;
return sub {
- return if 1../^echo \"Extracting \$CONFIG_H/;
- while (/[^\\]\$(\w+)/g) {
+ while (/[^\\]\$([a-z]\w+)/g) {
my $v = $1;
next if $v =~ /^(CONFIG_H|CONFIG_SH)$/;
$cfg->{$v}++;
diff --git a/README.micro b/README.micro
index 457778c6b6..040fcff6bb 100644
--- a/README.micro
+++ b/README.micro
@@ -24,4 +24,12 @@ If you make changes to uconfig.sh, run
make -f Makefile.micro regen_uconfig
-to regenerate uconfig.h.
+to regenerate uconfig.h. If your compilation platform is not 32-bit
+little-endian (like x86), you might want to try
+
+ make -f Makefile.micro patch_uconfig
+
+*before* the "make -f Makefile.micro". This tries to minimally patch
+the uconfig.sh using your *current* Perl so that your microperl has
+the correct basic types and sizes and byteorder.
+
diff --git a/epoc/config.sh b/epoc/config.sh
index ad559c8ae2..1971ff3451 100644
--- a/epoc/config.sh
+++ b/epoc/config.sh
@@ -1155,3 +1155,19 @@ nvfformat='"f"'
nvgformat='"g"'
sSCNfldbl=''
uquadtype='uint64_t'
+d_builtin_choose_expr='undef'
+d_builtin_expect='undef'
+d_ctermid='undef'
+d_inc_version_list='undef'
+d_libm_lib_version='0'
+d_printf_format_null='undef'
+d_pseudofork='undef'
+d_signbit='undef'
+d_sitearch='undef'
+db_version_major='0'
+db_version_minor='0'
+db_version_patch='0'
+targetarch=''
+vendorarch=''
+vendorarchexp=''
+
diff --git a/plan9/config_sh.sample b/plan9/config_sh.sample
index 86771d9410..f112ba9b73 100644
--- a/plan9/config_sh.sample
+++ b/plan9/config_sh.sample
@@ -123,7 +123,10 @@ d_bcopy='define'
d_bsd='undef'
d_bsdgetpgrp='undef'
d_bsdsetpgrp='undef'
+d_builtin_choose_expr='undef'
+d_builtin_expect='undef'
d_bzero='define'
+d_c99_variadic_macros='undef'
d_casti32='undef'
d_castneg='undef'
d_charvspr='define'
@@ -136,12 +139,13 @@ d_closedir='define'
d_cmsghdr_s='undef'
d_const='define'
d_copysignl='undef'
+d_cplusplus='undef'
d_crypt='undef'
d_crypt_r='undef'
d_csh='undef'
+d_ctermid='undef'
d_ctermid_r='undef'
d_ctime_r='undef'
-d_c99_variadic_macros='undef'
d_cuserid='define'
d_dbl_dig='define'
d_dbminitproto='undef'
@@ -265,6 +269,7 @@ d_grpasswd='undef'
d_hasmntopt='undef'
d_htonl='define'
d_ilogbl='undef'
+d_inc_version_list='undef'
d_index='undef'
d_inetaton='undef'
d_int64_t='define'
@@ -276,6 +281,7 @@ d_isnanl='undef'
d_killpg='undef'
d_lchown='undef'
d_ldbl_dig='define'
+d_libm_lib_version='0'
d_link='define'
d_localtime_r='undef'
d_localtime_r_needs_tzset='undef'
@@ -304,8 +310,8 @@ d_mkstemps='undef'
d_mktime='define'
d_mmap='undef'
d_modfl='undef'
-d_modflproto='undef'
d_modfl_pow32_bug='undef'
+d_modflproto='undef'
d_mprotect='undef'
d_msg='undef'
d_msg_ctrunc='undef'
@@ -337,7 +343,9 @@ d_phostname='undef'
d_pipe='define'
d_poll='undef'
d_portable='define'
+d_printf_format_null='undef'
d_procselfexe='undef'
+d_pseudofork='undef'
d_pthread_atfork='undef'
d_pthread_attr_setscope='undef'
d_pthread_yield='undef'
@@ -365,8 +373,8 @@ d_safebcpy='undef'
d_safemcpy='undef'
d_sanemcmp='define'
d_sbrkproto='undef'
-d_sched_yield='undef'
d_scalbnl='undef'
+d_sched_yield='undef'
d_scm_rights='undef'
d_seekdir='undef'
d_select='define'
@@ -417,9 +425,10 @@ d_shmctl='undef'
d_shmdt='undef'
d_shmget='undef'
d_sigaction='define'
+d_signbit='define'
d_sigprocmask='define'
d_sigsetjmp='define'
-d_sprintf_returns_strlen='undef'
+d_sitearch='define'
d_snprintf='undef'
d_sockatmark='undef'
d_sockatmarkproto='undef'
@@ -427,6 +436,7 @@ d_socket='define'
d_socklen_t='undef'
d_sockpair='define'
d_socks5_init='undef'
+d_sprintf_returns_strlen='undef'
d_sqrtl='undef'
d_srand48_r='undef'
d_srandom_r='undef'
diff --git a/symbian/config.sh b/symbian/config.sh
index 5a1b8116e9..30d4848927 100644
--- a/symbian/config.sh
+++ b/symbian/config.sh
@@ -20,6 +20,8 @@ castflags='0'
cc='gcc'
cccdlflags=''
ccdlflags=''
+cf_by='root@localhost'
+cf_time='Thu Jan 1 00:00:00 GMT 1970'
charsize='1'
clocktype='clock_t'
cpp_stuff='42'
@@ -369,6 +371,7 @@ d_shmctl='undef'
d_shmdt='undef'
d_shmget='undef'
d_sigaction='undef'
+d_signbit='undef'
d_sigprocmask='undef'
d_sigsetjmp='undef'
d_sitearch='define'
@@ -734,6 +737,7 @@ so='o'
socksizetype='unsigned int'
srand48_r_proto='0'
srandom_r_proto='0'
+src=''
ssizetype=int
startperl=''
stdchar=char
diff --git a/uconfig.h b/uconfig.h
index d618b03a6d..197b390db0 100644
--- a/uconfig.h
+++ b/uconfig.h
@@ -3721,7 +3721,7 @@
* This symbol is the type of pointer returned by malloc and realloc.
*/
#define Malloc_t void * /**/
-#define Free_t int /**/
+#define Free_t void /**/
/* PERL_MALLOC_WRAP:
* This symbol, if defined, indicates that we'd like malloc wrap checks.
diff --git a/uconfig.sh b/uconfig.sh
index 0c487858c3..22e8f03207 100755
--- a/uconfig.sh
+++ b/uconfig.sh
@@ -364,6 +364,7 @@ d_shmctl='undef'
d_shmdt='undef'
d_shmget='undef'
d_sigaction='undef'
+d_signbit='undef'
d_sigprocmask='undef'
d_sigsetjmp='undef'
d_sitearch='undef'
@@ -478,7 +479,9 @@ fflushall='undef'
firstmakefile='makefile'
fpossize='4'
fpostype=int
-freetype=int
+freetype=void
+full_csh=''
+full_sed=''
getgrent_r_proto='0'
getgrgid_r_proto='0'
getgrnam_r_proto='0'
@@ -685,7 +688,7 @@ setpwent_r_proto='0'
setservent_r_proto='0'
sh='/bin/sh'
shmattype='void *'
-shortsize=2
+shortsize='2'
sig_name_init='0'
sig_num_init='0'
sig_size='1'
diff --git a/win32/config.bc b/win32/config.bc
index b769d48996..10a148b863 100644
--- a/win32/config.bc
+++ b/win32/config.bc
@@ -413,6 +413,7 @@ d_shmctl='undef'
d_shmdt='undef'
d_shmget='undef'
d_sigaction='undef'
+d_signbit='undef'
d_sigprocmask='undef'
d_sigsetjmp='undef'
d_sitearch='define'
diff --git a/win32/config.ce b/win32/config.ce
index 32e4eea685..c459ac5ca3 100644
--- a/win32/config.ce
+++ b/win32/config.ce
@@ -111,7 +111,10 @@ d_bcopy='undef'
d_bsd='define'
d_bsdgetpgrp='undef'
d_bsdsetpgrp='undef'
+d_builtin_choose_expr='undef'
+d_builtin_expect='undef'
d_bzero='undef'
+d_c99_variadic_macros='undef'
d_casti32='undef'
d_castneg='define'
d_charvspr='undef'
@@ -128,12 +131,14 @@ d_cplusplus='undef'
d_crypt='undef'
d_crypt_r='undef'
d_csh='undef'
+d_ctermid='undef'
d_ctermid_r='undef'
d_ctime_r='undef'
d_cuserid='undef'
d_dbl_dig='define'
d_dbminitproto='undef'
d_difftime='define'
+d_dir_dd_fd='undef'
d_dirfd='undef'
d_dirnamlen='define'
d_dlerror='define'
@@ -328,7 +333,9 @@ d_phostname='undef'
d_pipe='undef'
d_poll='undef'
d_portable='define'
+d_printf_format_null='undef'
d_procselfexe='undef'
+d_pseudofork='undef'
d_pthread_atfork='undef'
d_pthread_attr_setscope='undef'
d_pthread_yield='undef'
@@ -409,6 +416,7 @@ d_shmctl='undef'
d_shmdt='undef'
d_shmget='undef'
d_sigaction='undef'
+d_signbit='undef'
d_sigprocmask='undef'
d_sigsetjmp='undef'
d_sitearch='define'
@@ -503,6 +511,9 @@ d_xenix='undef'
date='date'
db_hashtype='int'
db_prefixtype='int'
+db_version_major='0'
+db_version_minor='0'
+db_version_patch='0'
defvoidused='15'
direntrytype='struct direct'
dlext='dll'
@@ -762,12 +773,12 @@ nm_opt=''
nm_so_opt=''
nonxs_ext='Errno'
nroff=''
+nv_preserves_uv_bits='32'
nveformat='"e"'
nvfformat='"f"'
nvgformat='"g"'
nvsize='8'
nvtype='double'
-nv_preserves_uv_bits='32'
o_nonblock='O_NONBLOCK'
obj_ext='.obj'
old_pthread_create_joinable=''
diff --git a/win32/config.vc b/win32/config.vc
index bf0f22329b..4eceeb4b3b 100644
--- a/win32/config.vc
+++ b/win32/config.vc
@@ -413,6 +413,7 @@ d_shmctl='undef'
d_shmdt='undef'
d_shmget='undef'
d_sigaction='undef'
+d_signbit='undef'
d_sigprocmask='undef'
d_sigsetjmp='undef'
d_sitearch='define'
diff --git a/win32/config.vc64 b/win32/config.vc64
index b5d296282e..1e821bda89 100644
--- a/win32/config.vc64
+++ b/win32/config.vc64
@@ -413,6 +413,7 @@ d_shmctl='undef'
d_shmdt='undef'
d_shmget='undef'
d_sigaction='undef'
+d_signbit='undef'
d_sigprocmask='undef'
d_sigsetjmp='undef'
d_sitearch='define'