vm: Fix DEBUG flag, make REPRODUCIBLE work like debug, minor fixes to build.sh
- ``make DEBUG=0`` caused debug mode because the check was ``ifdef DEBUG`` which is true even if DEBUG=0 - no need to ``#pragma message`` that we are doing a reproducible build imo - clang warns about redefining builtin macros, turn the warning off for reproducible builds - add ``./build.sh info`` as an alias for ``./build.sh report`` - show if we a reproducible in report/infowindows-drag
parent
044f7bbe11
commit
a9871b39aa
12
GNUmakefile
12
GNUmakefile
|
@ -1,9 +1,9 @@
|
|||
ifdef CONFIG
|
||||
VERSION = 0.99
|
||||
GIT_LABEL = $(shell echo `git describe --all`-`git rev-parse HEAD`)
|
||||
REPRODUCIBLE ?= 0
|
||||
|
||||
BUNDLE = Factor.app
|
||||
DEBUG ?= 0
|
||||
REPRODUCIBLE ?= 0
|
||||
|
||||
include $(CONFIG)
|
||||
|
||||
|
@ -11,17 +11,20 @@ ifdef CONFIG
|
|||
-pedantic \
|
||||
-DFACTOR_VERSION="$(VERSION)" \
|
||||
-DFACTOR_GIT_LABEL="$(GIT_LABEL)" \
|
||||
-DFACTOR_REPRODUCIBLE="$(REPRODUCIBLE)" \
|
||||
$(SITE_CFLAGS)
|
||||
|
||||
CXXFLAGS += -std=c++11
|
||||
|
||||
ifdef DEBUG
|
||||
ifneq ($(DEBUG), 0)
|
||||
CFLAGS += -g -DFACTOR_DEBUG
|
||||
else
|
||||
CFLAGS += -O3
|
||||
endif
|
||||
|
||||
ifneq ($(REPRODUCIBLE), 0)
|
||||
CFLAGS += -DFACTOR_REPRODUCIBLE -Wno-builtin-macro-redefined
|
||||
endif
|
||||
|
||||
ENGINE = $(DLL_PREFIX)factor$(DLL_SUFFIX)$(DLL_EXTENSION)
|
||||
EXECUTABLE = factor$(EXE_SUFFIX)$(EXE_EXTENSION)
|
||||
CONSOLE_EXECUTABLE = factor$(EXE_SUFFIX)$(CONSOLE_EXTENSION)
|
||||
|
@ -152,6 +155,7 @@ help:
|
|||
@echo "Additional modifiers:"
|
||||
@echo ""
|
||||
@echo "DEBUG=1 compile VM with debugging information"
|
||||
@echo "REPRODUCIBLE=1 compile VM without timestamp"
|
||||
@echo "SITE_CFLAGS=... additional optimization flags"
|
||||
@echo "X11=1 force link with X11 libraries instead of Cocoa (only on Mac OS X)"
|
||||
|
||||
|
|
|
@ -66,7 +66,7 @@ CL_FLAGS = $(CL_FLAGS) /Zi /DFACTOR_DEBUG
|
|||
!ENDIF
|
||||
|
||||
!IF DEFINED(REPRODUCIBLE)
|
||||
CL_FLAGS = $(CL_FLAGS) /DFACTOR_REPRODUCIBLE=1
|
||||
CL_FLAGS = $(CL_FLAGS) /DFACTOR_REPRODUCIBLE
|
||||
!ENDIF
|
||||
|
||||
ML_FLAGS = /nologo /safeseh
|
||||
|
|
15
build.sh
15
build.sh
|
@ -357,6 +357,7 @@ echo_build_info() {
|
|||
$ECHO NUM_CORES=$NUM_CORES
|
||||
$ECHO WORD=$WORD
|
||||
$ECHO DEBUG=$DEBUG
|
||||
$ECHO REPRODUCIBLE=$REPRODUCIBLE
|
||||
$ECHO CURRENT_BRANCH=$CURRENT_BRANCH
|
||||
$ECHO FACTOR_BINARY=$FACTOR_BINARY
|
||||
$ECHO FACTOR_LIBRARY=$FACTOR_LIBRARY
|
||||
|
@ -731,7 +732,7 @@ usage() {
|
|||
$ECHO " bootstrap - bootstrap with existing boot image"
|
||||
$ECHO " net-bootstrap - recompile, download a boot image, bootstrap"
|
||||
$ECHO " make-target - find and print the os-arch-cpu string"
|
||||
$ECHO " report - print the build variables"
|
||||
$ECHO " report|info - print the build variables"
|
||||
$ECHO " update-boot-image - get the boot image for the current branch of for master"
|
||||
$ECHO ""
|
||||
$ECHO "If you are behind a firewall, invoke as:"
|
||||
|
@ -747,6 +748,13 @@ MAKE_TARGET=unknown
|
|||
if [[ -n "$2" ]] ; then
|
||||
parse_build_info $2
|
||||
fi
|
||||
$ECHO "args $#"
|
||||
if [ "$#" -gt 3 ]; then
|
||||
usage
|
||||
$ECHO "error: too many arguments"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
||||
set_copy
|
||||
set_delete
|
||||
|
@ -760,13 +768,12 @@ case "$1" in
|
|||
deps-pkg) install_deps_pkg ;;
|
||||
self-update) update; make_boot_image; bootstrap;;
|
||||
quick-update) update; refresh_image ;;
|
||||
update) update; download_and_bootstrap ;;
|
||||
latest) update; download_and_bootstrap ;;
|
||||
update|latest) update; download_and_bootstrap ;;
|
||||
compile) find_build_info; make_factor ;;
|
||||
bootstrap) get_config_info; bootstrap ;;
|
||||
net-bootstrap) net_bootstrap_no_pull ;;
|
||||
make-target) FIND_MAKE_TARGET=true; ECHO=false; find_build_info; exit_script ;;
|
||||
report) find_build_info ;;
|
||||
report|info) find_build_info ;;
|
||||
full-report) find_build_info; check_installed_programs; check_libraries ;;
|
||||
update-boot-image) find_build_info; check_installed_programs; update_boot_image;;
|
||||
*) usage ;;
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
ifndef DEBUG
|
||||
ifneq ($(DEBUG), 0)
|
||||
SITE_CFLAGS += -fomit-frame-pointer
|
||||
endif
|
||||
|
||||
|
|
|
@ -52,8 +52,7 @@
|
|||
#define FACTOR_COMPILER_VERSION "unknown"
|
||||
#endif
|
||||
|
||||
#if (FACTOR_REPRODUCIBLE == 1)
|
||||
#pragma message "REPRODUCIBLE"
|
||||
#if defined(FACTOR_REPRODUCIBLE)
|
||||
#define FACTOR_COMPILE_TIME "[reproducible]"
|
||||
#else
|
||||
// Record compilation time
|
||||
|
|
Loading…
Reference in New Issue