| 1 |
1 |
moose |
VERBOSE=0 |
| 2 |
|
|
ifopt --verbose VERBOSE=1 |
| 3 |
|
|
V="$(getoptval --verbose)" |
| 4 |
|
|
do ifnot "${V}"="" |
| 5 |
|
|
VERBOSE="${V}" |
| 6 |
|
|
echo Verbose: ${VERBOSE} |
| 7 |
|
|
done |
| 8 |
|
|
|
| 9 |
|
|
verbose ${VERBOSE} |
| 10 |
|
|
|
| 11 |
|
|
CLEAN=0 |
| 12 |
|
|
ifopt clean CLEAN=1 |
| 13 |
|
|
|
| 14 |
|
|
|
| 15 |
|
|
RELEASE=enabled |
| 16 |
|
|
DEBUG=disabled |
| 17 |
|
|
PROFILE=disabled |
| 18 |
|
|
SHARED=disabled |
| 19 |
|
|
STATIC=enabled |
| 20 |
|
|
FASTBUILD=disabled |
| 21 |
|
|
|
| 22 |
|
|
AR_OPT="rcs" |
| 23 |
|
|
|
| 24 |
|
|
CONFIG="cbuild/config.cbd" |
| 25 |
|
|
APPEND_CONFIG='appendfile ${CONFIG}' |
| 26 |
|
|
|
| 27 |
|
|
# Library base source files # |
| 28 |
|
|
LIB_SRC= |
| 29 |
|
|
|
| 30 |
|
|
do ifopt --help |
| 31 |
|
|
echo Available Flags: |
| 32 |
|
|
echo " --reconfig (use this to override saved settings)" |
| 33 |
|
|
echo " --platform=(unix|win32)" |
| 34 |
|
|
echo " --prefix=<path>" |
| 35 |
|
|
echo " --with-lib-dir=<path>" |
| 36 |
|
|
echo " --with-include-dir=<path>" |
| 37 |
|
|
echo " --with-bin-dir=<path>" |
| 38 |
|
|
echo " --with-qt-dir=<path>" |
| 39 |
|
|
echo " --with-qt-inc-dir=<path>" |
| 40 |
|
|
echo " --with-qt-lib-dir=<path>" |
| 41 |
|
|
echo " --with-qt-bin-dir=<path>" |
| 42 |
|
|
echo "" |
| 43 |
|
|
echo " --enable-<option>" |
| 44 |
|
|
echo " --disable-<option>" |
| 45 |
|
|
echo "" |
| 46 |
|
|
echo " Options: (default)" |
| 47 |
|
|
echo " release (${RELEASE})" |
| 48 |
|
|
echo " debug (${DEBUG})" |
| 49 |
|
|
echo " profile (${PROFILE})" |
| 50 |
|
|
echo " shared (${SHARED})" |
| 51 |
|
|
echo " static (${STATIC})" |
| 52 |
|
|
echo " fastbuild (${FASTBUILD})" |
| 53 |
|
|
exit 0 |
| 54 |
|
|
done |
| 55 |
|
|
|
| 56 |
|
|
LIB_VER=1.0 |
| 57 |
|
|
LIBBASENAME= |
| 58 |
|
|
|
| 59 |
|
|
QT_MAJOR=4 |
| 60 |
|
|
QT_MIN_MINOR=1 |
| 61 |
|
|
|
| 62 |
|
|
win32_SHARED_LDFLAGS='-shared -Wl,-add-stdcall-alias -Wl,-out-implib,${OBJ_DIR}/shared/lib${LIBBASENAME}${EXT}.a -Wl,-output-def,${OBJ_DIR}/shared/${LIBBASENAME}${EXT}.def' |
| 63 |
|
|
win32_SHARED_LIBNAME='${LIBBASENAME}${EXT}.dll' |
| 64 |
|
|
|
| 65 |
|
|
unix_SHARED_LDFLAGS='-shared -Wl,-export-dynamic -Wl,-soname,lib${LIBBASENAME}${EXT}.so -Wl,-rpath,${LIB_PREFIX} -fPIC' |
| 66 |
|
|
unix_SHARED_LIBNAME='lib${LIBBASENAME}${EXT}.so' |
| 67 |
|
|
|
| 68 |
|
|
ifopt --reconfig rm ${CONFIG} |
| 69 |
|
|
|
| 70 |
|
|
do ifexist ${CONFIG} |
| 71 |
|
|
!invoke ${CONFIG} |
| 72 |
|
|
goto start_compile |
| 73 |
|
|
done |
| 74 |
|
|
|
| 75 |
|
|
do ifnexist ${CONFIG} |
| 76 |
|
|
!writefile ${CONFIG} \# detected config, delete to reconfigure, or pass --reconfig to ./cbuild.c |
| 77 |
|
|
${APPEND_CONFIG} "" |
| 78 |
|
|
do ifnret 0 |
| 79 |
|
|
echo Warning: Failed to save config (${CONFIG}) |
| 80 |
|
|
done |
| 81 |
|
|
done |
| 82 |
|
|
|
| 83 |
|
|
invoke cbuild/detect-install-prefix.cbd |
| 84 |
|
|
invoke cbuild/detect-platform.cbd |
| 85 |
|
|
invoke cbuild/detect-versions.cbd |
| 86 |
|
|
invoke cbuild/detect-options.cbd |
| 87 |
|
|
invoke cbuild/detect-qt.cbd |
| 88 |
|
|
invoke cbuild/fastbuild.cbd |
| 89 |
|
|
|
| 90 |
|
|
#:start_compile |
| 91 |
|
|
#exit 0 |
| 92 |
|
|
|
| 93 |
|
|
echo "" |
| 94 |
|
|
echo Detected Configuration: |
| 95 |
|
|
echo " Platform: ${PLAT}" |
| 96 |
|
|
echo " Release build: ${RELEASE}" |
| 97 |
|
|
echo " Debug build: ${DEBUG}" |
| 98 |
|
|
echo " Profile build: ${PROFILE}" |
| 99 |
|
|
echo " Shared build: ${SHARED}" |
| 100 |
|
|
echo " Static build: ${STATIC}" |
| 101 |
|
|
echo " Fast Build: ${FASTBUILD}" |
| 102 |
|
|
echo " Install Prefix: ${PREFIX}" |
| 103 |
|
|
echo " libs: ${LIB_PREFIX}" |
| 104 |
|
|
echo " includes: ${INC_PREFIX}" |
| 105 |
|
|
echo " programs: ${BIN_PREFIX}" |
| 106 |
|
|
echo " Qt Version: ${QT_VERSION}" |
| 107 |
|
|
echo " Qt Prefix: ${QT4DIR}" |
| 108 |
|
|
echo " Qt Inc Dir: ${QT4INCDIR}" |
| 109 |
|
|
echo " Qt Lib Dir: ${QT4LIBDIR}" |
| 110 |
|
|
echo " Qt Bin Dir: ${QT4BINDIR}" |
| 111 |
|
|
echo "" |
| 112 |
|
|
|
| 113 |
|
|
OBJ_DIR=obj/${PLAT} |
| 114 |
|
|
DEP_DIR=dep/${PLAT} |
| 115 |
|
|
LIB_DIR=lib/${PLAT} |
| 116 |
|
|
|
| 117 |
|
|
ifnexist dep mkdir dep |
| 118 |
|
|
ifnexist ${DEP_DIR} mkdir ${DEP_DIR} |
| 119 |
|
|
|
| 120 |
|
|
ifnexist obj mkdir obj |
| 121 |
|
|
ifnexist ${OBJ_DIR} mkdir ${OBJ_DIR} |
| 122 |
|
|
|
| 123 |
|
|
ifnexist src mkdir src |
| 124 |
|
|
ifnexist include mkdir include |
| 125 |
|
|
src_paths src ../scintilla/src |
| 126 |
|
|
|
| 127 |
|
|
ifnexist lib mkdir lib |
| 128 |
|
|
ifnexist ${LIB_DIR} mkdir ${LIB_DIR} |
| 129 |
|
|
|
| 130 |
|
|
BASE_LDFLAGS=" -Wl,-z,now " |
| 131 |
|
|
BASE_CFLAGS=" -W -Wall " |
| 132 |
|
|
BASE_CXXFLAGS=" -W -Wall " |
| 133 |
|
|
BASE_CPPFLAGS=" -Iinclude -I../scintilla/include -I../scintilla/src -I../scintilla/qt -DQT " |
| 134 |
|
|
|
| 135 |
|
|
DEBUG_LDFLAGS="" |
| 136 |
|
|
DEBUG_CPPFLAGS=" -DDEBUG -DQT_DEBUG " |
| 137 |
|
|
DEBUG_CXXFLAGS=" -ggdb3 " |
| 138 |
|
|
DEBUG_CFLAGS=" -ggdb3 " |
| 139 |
|
|
|
| 140 |
|
|
RELEASE_LDFLAGS=" -s " |
| 141 |
|
|
RELEASE_CPPFLAGS="" |
| 142 |
|
|
RELEASE_CXXFLAGS=" -O2 " |
| 143 |
|
|
RELEASE_CFLAGS=" -O2 " |
| 144 |
|
|
|
| 145 |
|
|
SHARED_LDFLAGS="${${PLAT}_SHARED_LDFLAGS}" |
| 146 |
|
|
SHARED_CPPFLAGS=" -DPIC " |
| 147 |
|
|
SHARED_CXXFLAGS=" -fPIC " |
| 148 |
|
|
SHARED_CFLAGS=" -fPIC " |
| 149 |
|
|
SHARED_LIB_EXT=".so" |
| 150 |
|
|
|
| 151 |
|
|
STATIC_LDFLAGS=" -static " |
| 152 |
|
|
STATIC_CPPFLAGS="" |
| 153 |
|
|
STATIC_CXXFLAGS="" |
| 154 |
|
|
STATIC_CFLAGS="" |
| 155 |
|
|
STATIC_LIB_EXT=".a" |
| 156 |
|
|
|
| 157 |
|
|
PROFILE_LDFLAGS=" -pg " |
| 158 |
|
|
PROFILE_CPPFLAGS="" |
| 159 |
|
|
PROFILE_CXXFLAGS=" -pg " |
| 160 |
|
|
PROFILE_CFLAGS=" -pg " |
| 161 |
|
|
|
| 162 |
|
|
CPPFLAGS="${BASE_CPPFLAGS}" |
| 163 |
|
|
CFLAGS="${BASE_CFLAGS}" |
| 164 |
|
|
CXXFLAGS="${BASE_CXXFLAGS}" |
| 165 |
|
|
LDFLAGS="${BASE_LDFLAGS}" |
| 166 |
|
|
|
| 167 |
|
|
${FASTBUILD_COMMAND} |
| 168 |
|
|
invoke cbuild/shared.cbd |
| 169 |
|
|
invoke cbuild/static.cbd |
| 170 |
|
|
|
| 171 |
|
|
ifopt clean goto clean |
| 172 |
|
|
ifopt distclean goto distclean |
| 173 |
|
|
|
| 174 |
|
|
exit 0 |
| 175 |
|
|
|
| 176 |
|
|
#:clean |
| 177 |
|
|
!invoke ${CONFIG} |
| 178 |
|
|
echo Cleaning... |
| 179 |
|
|
echo CLEAN: ${CLEAN} |
| 180 |
|
|
|
| 181 |
|
|
do ifplat unix |
| 182 |
|
|
call find . -iname '*~' | xargs rm -f |
| 183 |
|
|
done |
| 184 |
|
|
|
| 185 |
|
|
exit 0 |
| 186 |
|
|
|
| 187 |
|
|
#:distclean |
| 188 |
|
|
!invoke config.cbd |
| 189 |
|
|
echo disclean |
| 190 |
|
|
goto clean |
| 191 |
|
|
|