fix the Makefile and make targets
							parent
							
								
									7a420925ac
								
							
						
					
					
						commit
						cb3fdc5c7d
					
				
							
								
								
									
										7
									
								
								Makefile
								
								
								
								
							
							
						
						
									
										7
									
								
								Makefile
								
								
								
								
							| 
						 | 
					@ -45,8 +45,8 @@ DLL_OBJS = $(PLAF_DLL_OBJS) \
 | 
				
			||||||
 | 
					
 | 
				
			||||||
EXE_OBJS = $(PLAF_EXE_OBJS)
 | 
					EXE_OBJS = $(PLAF_EXE_OBJS)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
default: build-support/wordsize
 | 
					default:
 | 
				
			||||||
	$(MAKE) `./build-support/target`
 | 
						$(MAKE) `./misc/factor.sh make-target`
 | 
				
			||||||
 | 
					
 | 
				
			||||||
help:
 | 
					help:
 | 
				
			||||||
	@echo "Run '$(MAKE)' with one of the following parameters:"
 | 
						@echo "Run '$(MAKE)' with one of the following parameters:"
 | 
				
			||||||
| 
						 | 
					@ -162,9 +162,6 @@ factor: $(DLL_OBJS) $(EXE_OBJS)
 | 
				
			||||||
	$(CC) $(LIBS) $(LIBPATH) -L. $(LINK_WITH_ENGINE) \
 | 
						$(CC) $(LIBS) $(LIBPATH) -L. $(LINK_WITH_ENGINE) \
 | 
				
			||||||
		$(CFLAGS) -o $@$(EXE_SUFFIX)$(EXE_EXTENSION) $(EXE_OBJS)
 | 
							$(CFLAGS) -o $@$(EXE_SUFFIX)$(EXE_EXTENSION) $(EXE_OBJS)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
build-support/wordsize: build-support/wordsize.c
 | 
					 | 
				
			||||||
	gcc build-support/wordsize.c -o build-support/wordsize
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
clean:
 | 
					clean:
 | 
				
			||||||
	rm -f vm/*.o
 | 
						rm -f vm/*.o
 | 
				
			||||||
	rm -f factor*.dll libfactor*.*
 | 
						rm -f factor*.dll libfactor*.*
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -7,6 +7,7 @@ set +e
 | 
				
			||||||
shopt -s nocaseglob
 | 
					shopt -s nocaseglob
 | 
				
			||||||
#shopt -s nocasematch
 | 
					#shopt -s nocasematch
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					ECHO=echo
 | 
				
			||||||
OS=
 | 
					OS=
 | 
				
			||||||
ARCH=
 | 
					ARCH=
 | 
				
			||||||
WORD=
 | 
					WORD=
 | 
				
			||||||
| 
						 | 
					@ -25,23 +26,23 @@ ensure_program_installed() {
 | 
				
			||||||
    installed=0;
 | 
					    installed=0;
 | 
				
			||||||
    for i in $* ;
 | 
					    for i in $* ;
 | 
				
			||||||
    do
 | 
					    do
 | 
				
			||||||
        echo -n "Checking for $i..."
 | 
					        $ECHO -n "Checking for $i..."
 | 
				
			||||||
        test_program_installed $i
 | 
					        test_program_installed $i
 | 
				
			||||||
        if [[ $? -eq 0 ]]; then
 | 
					        if [[ $? -eq 0 ]]; then
 | 
				
			||||||
            echo -n "not "
 | 
					            echo -n "not "
 | 
				
			||||||
        else    
 | 
					        else    
 | 
				
			||||||
            installed=$(( $installed + 1 ))
 | 
					            installed=$(( $installed + 1 ))
 | 
				
			||||||
        fi
 | 
					        fi
 | 
				
			||||||
        echo "found!"
 | 
					        $ECHO "found!"
 | 
				
			||||||
    done
 | 
					    done
 | 
				
			||||||
    if [[ $installed -eq 0 ]] ; then
 | 
					    if [[ $installed -eq 0 ]] ; then
 | 
				
			||||||
        echo -n "Install "
 | 
					        $ECHO -n "Install "
 | 
				
			||||||
        if [[ $# -eq 1 ]] ; then
 | 
					        if [[ $# -eq 1 ]] ; then
 | 
				
			||||||
            echo -n $1
 | 
					            $ECHO -n $1
 | 
				
			||||||
        else
 | 
					        else
 | 
				
			||||||
            echo -n "any of [ $* ]"
 | 
					            $ECHO -n "any of [ $* ]"
 | 
				
			||||||
        fi
 | 
					        fi
 | 
				
			||||||
        echo " and try again."
 | 
					        $ECHO " and try again."
 | 
				
			||||||
        exit 1
 | 
					        exit 1
 | 
				
			||||||
    fi
 | 
					    fi
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -49,22 +50,22 @@ ensure_program_installed() {
 | 
				
			||||||
check_ret() {
 | 
					check_ret() {
 | 
				
			||||||
    RET=$?
 | 
					    RET=$?
 | 
				
			||||||
    if [[ $RET -ne 0 ]] ; then
 | 
					    if [[ $RET -ne 0 ]] ; then
 | 
				
			||||||
       echo $1 failed
 | 
					       $ECHO $1 failed
 | 
				
			||||||
       exit 2
 | 
					       exit 2
 | 
				
			||||||
    fi
 | 
					    fi
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
check_gcc_version() {
 | 
					check_gcc_version() {
 | 
				
			||||||
    echo -n "Checking gcc version..."
 | 
					    $ECHO -n "Checking gcc version..."
 | 
				
			||||||
    GCC_VERSION=`$CC --version`
 | 
					    GCC_VERSION=`$CC --version`
 | 
				
			||||||
    check_ret gcc
 | 
					    check_ret gcc
 | 
				
			||||||
    if [[ $GCC_VERSION == *3.3.* ]] ; then
 | 
					    if [[ $GCC_VERSION == *3.3.* ]] ; then
 | 
				
			||||||
        echo "bad!"
 | 
					        $ECHO "bad!"
 | 
				
			||||||
        echo "You have a known buggy version of gcc (3.3)"
 | 
					        $ECHO "You have a known buggy version of gcc (3.3)"
 | 
				
			||||||
        echo "Install gcc 3.4 or higher and try again."
 | 
					        $ECHO "Install gcc 3.4 or higher and try again."
 | 
				
			||||||
        exit 3
 | 
					        exit 3
 | 
				
			||||||
    fi
 | 
					    fi
 | 
				
			||||||
    echo "ok."
 | 
					    $ECHO "ok."
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
set_downloader() {
 | 
					set_downloader() {
 | 
				
			||||||
| 
						 | 
					@ -125,20 +126,20 @@ check_installed_programs() {
 | 
				
			||||||
check_library_exists() {
 | 
					check_library_exists() {
 | 
				
			||||||
    GCC_TEST=factor-library-test.c
 | 
					    GCC_TEST=factor-library-test.c
 | 
				
			||||||
    GCC_OUT=factor-library-test.out
 | 
					    GCC_OUT=factor-library-test.out
 | 
				
			||||||
    echo -n "Checking for library $1..."
 | 
					    $ECHO -n "Checking for library $1..."
 | 
				
			||||||
    echo "int main(){return 0;}" > $GCC_TEST
 | 
					    $ECHO "int main(){return 0;}" > $GCC_TEST
 | 
				
			||||||
    $CC $GCC_TEST -o $GCC_OUT -l $1
 | 
					    $CC $GCC_TEST -o $GCC_OUT -l $1
 | 
				
			||||||
    if [[ $? -ne 0 ]] ; then
 | 
					    if [[ $? -ne 0 ]] ; then
 | 
				
			||||||
        echo "not found!"
 | 
					        $ECHO "not found!"
 | 
				
			||||||
        echo "Warning: library $1 not found."
 | 
					        $ECHO "Warning: library $1 not found."
 | 
				
			||||||
        echo "***Factor will compile NO_UI=1"
 | 
					        $ECHO "***Factor will compile NO_UI=1"
 | 
				
			||||||
        NO_UI=1
 | 
					        NO_UI=1
 | 
				
			||||||
    fi
 | 
					    fi
 | 
				
			||||||
    rm -f $GCC_TEST
 | 
					    rm -f $GCC_TEST
 | 
				
			||||||
    check_ret rm
 | 
					    check_ret rm
 | 
				
			||||||
    rm -f $GCC_OUT
 | 
					    rm -f $GCC_OUT
 | 
				
			||||||
    check_ret rm
 | 
					    check_ret rm
 | 
				
			||||||
    echo "found."
 | 
					    $ECHO "found."
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
check_X11_libraries() {
 | 
					check_X11_libraries() {
 | 
				
			||||||
| 
						 | 
					@ -156,14 +157,14 @@ check_libraries() {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
check_factor_exists() {
 | 
					check_factor_exists() {
 | 
				
			||||||
    if [[ -d "factor" ]] ; then
 | 
					    if [[ -d "factor" ]] ; then
 | 
				
			||||||
        echo "A directory called 'factor' already exists."
 | 
					        $ECHO "A directory called 'factor' already exists."
 | 
				
			||||||
        echo "Rename or delete it and try again."
 | 
					        $ECHO "Rename or delete it and try again."
 | 
				
			||||||
        exit 4
 | 
					        exit 4
 | 
				
			||||||
    fi
 | 
					    fi
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
find_os() {
 | 
					find_os() {
 | 
				
			||||||
    echo "Finding OS..."
 | 
					    $ECHO "Finding OS..."
 | 
				
			||||||
    uname_s=`uname -s`
 | 
					    uname_s=`uname -s`
 | 
				
			||||||
    check_ret uname
 | 
					    check_ret uname
 | 
				
			||||||
    case $uname_s in
 | 
					    case $uname_s in
 | 
				
			||||||
| 
						 | 
					@ -182,7 +183,7 @@ find_os() {
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
find_architecture() {
 | 
					find_architecture() {
 | 
				
			||||||
    echo "Finding ARCH..."
 | 
					    $ECHO "Finding ARCH..."
 | 
				
			||||||
    uname_m=`uname -m`
 | 
					    uname_m=`uname -m`
 | 
				
			||||||
    check_ret uname
 | 
					    check_ret uname
 | 
				
			||||||
    case $uname_m in
 | 
					    case $uname_m in
 | 
				
			||||||
| 
						 | 
					@ -201,7 +202,7 @@ write_test_program() {
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
find_word_size() {
 | 
					find_word_size() {
 | 
				
			||||||
    echo "Finding WORD..."
 | 
					    $ECHO "Finding WORD..."
 | 
				
			||||||
    C_WORD=factor-word-size
 | 
					    C_WORD=factor-word-size
 | 
				
			||||||
    write_test_program
 | 
					    write_test_program
 | 
				
			||||||
    gcc -o $C_WORD $C_WORD.c
 | 
					    gcc -o $C_WORD $C_WORD.c
 | 
				
			||||||
| 
						 | 
					@ -219,26 +220,26 @@ set_factor_binary() {
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
echo_build_info() {
 | 
					echo_build_info() {
 | 
				
			||||||
    echo OS=$OS
 | 
					    $ECHO OS=$OS
 | 
				
			||||||
    echo ARCH=$ARCH
 | 
					    $ECHO ARCH=$ARCH
 | 
				
			||||||
    echo WORD=$WORD
 | 
					    $ECHO WORD=$WORD
 | 
				
			||||||
    echo FACTOR_BINARY=$FACTOR_BINARY
 | 
					    $ECHO FACTOR_BINARY=$FACTOR_BINARY
 | 
				
			||||||
    echo MAKE_TARGET=$MAKE_TARGET
 | 
					    $ECHO MAKE_TARGET=$MAKE_TARGET
 | 
				
			||||||
    echo BOOT_IMAGE=$BOOT_IMAGE
 | 
					    $ECHO BOOT_IMAGE=$BOOT_IMAGE
 | 
				
			||||||
    echo MAKE_IMAGE_TARGET=$MAKE_IMAGE_TARGET
 | 
					    $ECHO MAKE_IMAGE_TARGET=$MAKE_IMAGE_TARGET
 | 
				
			||||||
    echo GIT_PROTOCOL=$GIT_PROTOCOL
 | 
					    $ECHO GIT_PROTOCOL=$GIT_PROTOCOL
 | 
				
			||||||
    echo GIT_URL=$GIT_URL
 | 
					    $ECHO GIT_URL=$GIT_URL
 | 
				
			||||||
    echo DOWNLOADER=$DOWNLOADER
 | 
					    $ECHO DOWNLOADER=$DOWNLOADER
 | 
				
			||||||
    echo CC=$CC
 | 
					    $ECHO CC=$CC
 | 
				
			||||||
    echo MAKE=$MAKE
 | 
					    $ECHO MAKE=$MAKE
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
set_build_info() {
 | 
					set_build_info() {
 | 
				
			||||||
    if ! [[ -n $OS && -n $ARCH && -n $WORD ]] ; then
 | 
					    if ! [[ -n $OS && -n $ARCH && -n $WORD ]] ; then
 | 
				
			||||||
        echo "OS: $OS"
 | 
					        $ECHO "OS: $OS"
 | 
				
			||||||
        echo "ARCH: $ARCH"
 | 
					        $ECHO "ARCH: $ARCH"
 | 
				
			||||||
        echo "WORD: $WORD"
 | 
					        $ECHO "WORD: $WORD"
 | 
				
			||||||
        echo "OS, ARCH, or WORD is empty.  Please report this"
 | 
					        $ECHO "OS, ARCH, or WORD is empty.  Please report this"
 | 
				
			||||||
        exit 5
 | 
					        exit 5
 | 
				
			||||||
    fi
 | 
					    fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -452,5 +453,7 @@ case "$1" in
 | 
				
			||||||
    bootstrap) get_config_info; bootstrap ;;
 | 
					    bootstrap) get_config_info; bootstrap ;;
 | 
				
			||||||
    dlls) get_config_info; maybe_download_dlls;;
 | 
					    dlls) get_config_info; maybe_download_dlls;;
 | 
				
			||||||
    net-bootstrap) get_config_info; update_boot_images; bootstrap ;;
 | 
					    net-bootstrap) get_config_info; update_boot_images; bootstrap ;;
 | 
				
			||||||
 | 
						#make-target) ECHO=`echo #`; find_build_info; echo $MAKE_TARGET ;;
 | 
				
			||||||
 | 
						make-target) ECHO=false; find_build_info; echo $MAKE_TARGET ;;
 | 
				
			||||||
    *) usage ;;
 | 
					    *) usage ;;
 | 
				
			||||||
esac
 | 
					esac
 | 
				
			||||||
| 
						 | 
					@ -1,38 +0,0 @@
 | 
				
			||||||
#!/usr/bin/env bash
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
uname_s=`uname -s`
 | 
					 | 
				
			||||||
case $uname_s in
 | 
					 | 
				
			||||||
	CYGWIN_NT-5.2-WOW64) OS=winnt;;
 | 
					 | 
				
			||||||
	*CYGWIN_NT*) OS=winnt;;
 | 
					 | 
				
			||||||
	*CYGWIN*) OS=winnt;;
 | 
					 | 
				
			||||||
	*darwin*) OS=macosx;;
 | 
					 | 
				
			||||||
	*Darwin*) OS=macosx;;
 | 
					 | 
				
			||||||
	*linux*) OS=linux;;
 | 
					 | 
				
			||||||
	*Linux*) OS=linux;;
 | 
					 | 
				
			||||||
	*NetBSD*) OS=netbsd;;
 | 
					 | 
				
			||||||
	*FreeBSD*) OS=freebsd;;
 | 
					 | 
				
			||||||
	*OpenBSD*) OS=openbsd;;
 | 
					 | 
				
			||||||
	*DragonFly*) OS=dragonflybsd;;
 | 
					 | 
				
			||||||
esac
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
uname_m=`uname -m`
 | 
					 | 
				
			||||||
case $uname_m in
 | 
					 | 
				
			||||||
   i386) ARCH=x86;;
 | 
					 | 
				
			||||||
   i686) ARCH=x86;;
 | 
					 | 
				
			||||||
   amd64) ARCH=x86;;
 | 
					 | 
				
			||||||
   *86) ARCH=x86;;
 | 
					 | 
				
			||||||
   *86_64) ARCH=x86;;
 | 
					 | 
				
			||||||
   "Power Macintosh") ARCH=ppc;;
 | 
					 | 
				
			||||||
esac
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
WORD=`./build-support/wordsize`
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
MAKE_TARGET=$OS-$ARCH-$WORD
 | 
					 | 
				
			||||||
if [[ $OS == macosx && $ARCH == ppc ]] ; then
 | 
					 | 
				
			||||||
	MAKE_TARGET=$OS-$ARCH
 | 
					 | 
				
			||||||
fi
 | 
					 | 
				
			||||||
if [[ $OS == linux && $ARCH == ppc ]] ; then
 | 
					 | 
				
			||||||
	MAKE_TARGET=$OS-$ARCH
 | 
					 | 
				
			||||||
fi
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
echo $MAKE_TARGET
 | 
					 | 
				
			||||||
| 
						 | 
					@ -1,8 +0,0 @@
 | 
				
			||||||
 | 
					 | 
				
			||||||
#include <stdio.h>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
int main ()
 | 
					 | 
				
			||||||
{
 | 
					 | 
				
			||||||
  printf("%d", 8*sizeof(void*));
 | 
					 | 
				
			||||||
  return 0;
 | 
					 | 
				
			||||||
}
 | 
					 | 
				
			||||||
		Loading…
	
		Reference in New Issue