fix uname result.

This commit is contained in:
SANO Masatoshi 2020-02-21 12:49:49 +09:00
parent 0ebcc04d58
commit abce7a2486
3 changed files with 14 additions and 7 deletions

View file

@ -77,6 +77,14 @@ AS_IF([test "x$GIT_CHECK" = xyes],
[AC_SUBST([git_version_long], `set -e | git describe --abbrev=7 --dirty 2>/dev/null || echo 'NO-GIT-REVISION'`, [long version for git source])],
[AC_SUBST([git_version_long], [NO-GIT-REVISION])])
AC_CHECK_PROG(UNAME_CHECK,uname,yes)
AS_IF([test "x$UNAME_CHECK" = xyes],
[AC_SUBST([uname_m], `set -e | uname -m`, [uname -m])],
[AC_MSG_ERROR([uname -m errored?])])
AS_IF([test "x$UNAME_CHECK" = xyes],
[AC_SUBST([uname_s], `set -e | uname -s`, [uname -s])],
[AC_MSG_ERROR([uname -s errored?])])
# Define rosdir and rospatchdir
# TODO: Make these ./configure line options.

View file

@ -9,6 +9,8 @@ tsv_sbcl_CFLAGS = "-D ROSWELL_TSV_TEST"
gend.h: FORCE
printf '#define ROS_COMPILE_ENVIRONMENT "%s"\n' "`$(CC) --version|head -n 1`" > $@.tmp
printf '#define ROS_REVISION "@git_version@"\n' >> $@.tmp
printf '#define UNAME_M "@uname_m@"\n' >> $@.tmp
printf '#define UNAME_S "@uname_s@"\n' >> $@.tmp
printf '#define PATCH_PATH "@roslisppatchdir@"\n' >> $@.tmp
if WITH_WINDOWS
printf '#define LISP_PATH "%s"\n' "`mkdir -p @roslispdir@;cd @roslispdir@; pwd -W 2>/dev/null`" >> $@.tmp
@ -20,6 +22,7 @@ endif
rm -f $@.tmp
cmd-internal.o: gend.h
util.o: gend.h
bin_PROGRAMS = ros
ros_SOURCES = main.c opt.c download.c download_windows.c archive.c archive_windows.c \

View file

@ -1,11 +1,10 @@
#include "util.h"
#include "gend.h"
#ifndef HAVE_WINDOWS_H
char* uname_s(void) {
char *p,*p2;
p2=remove_char("\r\n",p=system_("uname"));
s(p);
char *p2=q(UNAME_S);
if(strcmp(p2,"SunOS")==0) {
s(p2);
return q("solaris");
@ -14,10 +13,7 @@ char* uname_s(void) {
}
char* uname_m(void) {
char *p=system_("uname -m");
char *p2;
p2=remove_char("\r\n",p);
s(p);
char *p2=q(UNAME_M);
if(strcmp(p2,"i86pc")==0) {
s(p2);
return q("x86-64");