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