User: curvirgo Date: 05/09/11 02:21:21 Modified: /ja/www/documents/develop/ ja_build
Log: add package divide function , etc ... File Changes: Directory: /ja/www/documents/develop/ ===================================== File [changed]: ja_build Url: http://ja.openoffice.org/source/browse/ja/www/documents/develop/ja_build?r1=1.20&r2=1.21 Delta lines: +150 -58 ---------------------- --- ja_build 16 Aug 2005 05:23:20 -0000 1.20 +++ ja_build 11 Sep 2005 09:21:18 -0000 1.21 @@ -6,7 +6,7 @@ for PATCH in `ls ${PATCHDIR}/*.patch` do echo ${PATCH} - patch -p1 < ${PATCH} | tee -a ${SRC_ROOT}/patch.log + ${GNUPATCH} -p1 < ${PATCH} | tee -a ${SRC_ROOT}/patch.log done } @@ -40,38 +40,46 @@ do if [ -d ${SRC_ROOT}/instsetoo_native/${OOOUTPATH}.pro/OpenOffice/install/${LANGUAGE} ]; then PrintMessage "Packaging installation set [Language : ${LANGUAGE}]" - cd ${SRC_ROOT}/instsetoo_native/${OOOUTPATH}.pro/OpenOffice/install/${LANGUAGE} + if [ "${PACKAGE}" = "deb" ]; then + DEBOUTPATH=_DEBIAN + else + DEBOUTPATH= + fi + cd ${SRC_ROOT}/instsetoo_native/${OOOUTPATH}.pro${DEBOUTPATH}/OpenOffice/install/${LANGUAGE} case ${OOO_BUILD_SYSTEM} in LinuxIntel) if [ "${PACKAGE}" = "portable" ]; then - TEMP=`grep -in 'requires openofficeorg-core02' */openofficeorg-core01.install | sed 's/:/ /' | awk '{print $1}'` + TEMP=`grep -in 'requires openoffice.org-core02' */openoffice.org-core01.install | sed 's/:/ /' | awk '{print $1}'` COUNT=`expr ${TEMP} - 1` - head -n ${COUNT} */openofficeorg-core01.install > ${TEMP_DIR}/tempfile - COUNT=`grep -in 'Backing up old versions' */openofficeorg-core01.install | sed 's/:/ /' | awk '{print $1}'` - tail +${COUNT} */openofficeorg-core01.install >> ${TEMP_DIR}/tempfile - cp ${TEMP_DIR}/tempfile */openofficeorg-core01.install + head -n ${COUNT} */openoffice.org-core01.install > ${TEMP_DIR}/tempfile + COUNT=`grep -in 'Backing up old versions' */openoffice.org-core01.install | sed 's/:/ /' | awk '{print $1}'` + tail +${COUNT} */openoffice.org-core01.install >> ${TEMP_DIR}/tempfile + ${GNUCP} ${TEMP_DIR}/tempfile */openoffice.org-core01.install for FILE in `grep -in 'echo $df' */*.install | grep -i 'print $11' | awk '{print $1}' | sed s/:.*//` do - cp ${FILE} ${TEMP_DIR}/tempfile + ${GNUCP} ${FILE} ${TEMP_DIR}/tempfile cat ${TEMP_DIR}/tempfile | sed "s/awk '{print \$11}'/awk '{print \$10}'/" > ${FILE} chmod 755 ${FILE} done rm -f */*.tar.gz rm -f ${TEMP_DIR}/tempfile fi - tar jcvf ${SRC_ROOT}/OOo_${VERSION}_${OOO_BUILD_SYSTEM}_install_${LANGUAGE}_${BUILDER_NAME}_${PACKAGE}.tar.bz2 * + tar jcvf ${PKGOUTDIR}/OOo_${VERSION}_${OOO_BUILD_SYSTEM}_install_${LANGUAGE}_${BUILDER_NAME}_${PACKAGE}.tar.bz2 * ;; Win32Intel) - zip -r ${SRC_ROOT}/OOo_${VERSION}_${OOO_BUILD_SYSTEM}_install_${LANGUAGE}_${BUILDER_NAME}.zip * + zip -r ${PKGOUTDIR}/OOo_${VERSION}_${OOO_BUILD_SYSTEM}_install_${LANGUAGE}_${BUILDER_NAME}.zip * + cd ${SRC_ROOT}/instsetoo_native/${OOOUTPATH}.pro/OpenOffice/install/${LANGUAGE}_download + cp -p OOo_`echo ${VERSION} | sed 's/m/\./'`_windows_install_${LANGUAGE}.exe OOo_`echo ${VERSION} | sed 's/m/\./'`_windows_install_${LANGUAGE}_${BUILDER_NAME}.exe ;; *) - tar zcvf ${SRC_ROOT}/OOo_${VERSION}_${OOO_BUILD_SYSTEM}_install_${LANGUAGE}_${BUILDER_NAME}.tar.gz * + tar zcvf ${PKGOUTDIR}/OOo_${VERSION}_${OOO_BUILD_SYSTEM}_install_${LANGUAGE}_${BUILDER_NAME}.tar.gz * ;; esac else PrintMessage "Installation sets not found, check installation sets." fi done + cd ${SRC_ROOT} } @@ -91,7 +99,12 @@ do if [ -d ${SRC_ROOT}/instsetoo_native/${OOOUTPATH}.pro/OpenOffice_languagepack/install/${LANGUAGE} ]; then PrintMessage "Packaging language packages [Language : ${LANGUAGE}]" - cd ${SRC_ROOT}/instsetoo_native/${OOOUTPATH}.pro/OpenOffice_languagepack/install/${LANGUAGE} + if [ "${PACKAGE}" = "deb" ]; then + DEBOUTPATH=_DEBIAN + else + DEBOUTPATH= + fi + cd ${SRC_ROOT}/instsetoo_native/${OOOUTPATH}.pro${DEBOUTPATH}/OpenOffice/install/${LANGUAGE} case ${OOO_BUILD_SYSTEM} in LinuxIntel) PrintMessage "Packaging format : ${PACKAGE}" @@ -99,7 +112,7 @@ portable) for FILE in `ls */*.install` do - cp ${FILE} ${TEMP_DIR}/tempfile + ${GNUCP} ${FILE} ${TEMP_DIR}/tempfile cat ${TEMP_DIR}/tempfile | sed "s/awk '{print \$11}'/awk '{print \$10}'/" > ${FILE} chmod 755 ${FILE} done @@ -116,22 +129,112 @@ *) ;; esac - tar jcvf ${SRC_ROOT}/OOo_${VERSION}_${OOO_BUILD_SYSTEM}_langpack_${LANGUAGE}_${BUILDER_NAME}_${PACKAGE}.tar.bz2 * + tar jcvf ${PKGOUTDIR}/OOo_${VERSION}_${OOO_BUILD_SYSTEM}_langpack_${LANGUAGE}_${BUILDER_NAME}_${PACKAGE}.tar.bz2 * ;; Win32Intel) - zip -r ${SRC_ROOT}/OOo_${VERSION}_${OOO_BUILD_SYSTEM}_langpack_${LANGUAGE}_${BUILDER_NAME}.zip * + zip -r ${PKGOUTDIR}/OOo_${VERSION}_${OOO_BUILD_SYSTEM}_langpack_${LANGUAGE}_${BUILDER_NAME}.zip * + cd ${SRC_ROOT}/instsetoo_native/${OOOUTPATH}.pro/OpenOffice_languagepack/install/${LANGUAGE}_download + cp -p OOo_`echo ${VERSION} | sed 's/m/\./'`_languagepack_windows_install_${LANGUAGE}.exe OOo_`echo ${VERSION} | sed 's/m/\./'`_languagepack_windows_install_${LANGUAGE}_${BUILDER_NAME}.exe ;; *) - tar zcvf ${SRC_ROOT}/OOo_${VERSION}_${OOO_BUILD_SYSTEM}_langpack_${LANGUAGE}_${BUILDER_NAME}.tar.gz * + tar zcvf ${PKGOUTDIR}/OOo_${VERSION}_${OOO_BUILD_SYSTEM}_langpack_${LANGUAGE}_${BUILDER_NAME}.tar.gz * ;; esac else PrintMessage "Language packages not found, check language packages." fi done + cd ${SRC_ROOT} +} + + +DividePackage () +{ + RPM_DIR=RPMS + DEB_DIR=DEBS + PORTABLE_DIR=linux-2.4-intel + + cd ${PKGOUTDIR} + for LANGUAGE in ${LANGUAGES} + do + for PACKAGE in ${PACKAGE_FORMAT} + do + for FILENAME in `ls *_install_${LANGUAGE}_${BUILDER_NAME}_${PACKAGE}.tar.bz2 | sed 's/\.tar\.bz2//'` + do + PrintMessage "LANGUAGE = ${LANGUAGE} : PACKAGE = ${PACKAGE}" + mkdir -vp ${PACKAGE} + pushd . > /dev/null + cd ${PACKAGE} + PrintMessage "UNPACKING FILENAME = ${FILENAME}.tar.bz2" + tar jxvf ../${FILENAME}.tar.bz2 + case ${PACKAGE} in + rpm) + DIRECTORY=${RPM_DIR} + PrintMessage "MOVING deb_package desktop-integration file" + mkdir -vp ../deb/${DEB_DIR}/desktop-integration/ + mv -v ./${RPM_DIR}/desktop-integration/*.deb ../deb/${DEB_DIR}/desktop-integration/ + ;; + deb) + DIRECTORY=${DEB_DIR} + ;; + portable) + DIRECTORY=${PORTABLE_DIR} + ;; + esac + PrintMessage "MOVING CORE FILES" + mkdir -vp core/${DIRECTORY} + mv -v ${DIRECTORY}/*core* core/${DIRECTORY} + PrintMessage "PACKING FILENAME = ${FILENAME}_other.tar.bz2" + tar jcvf ../${FILENAME}_other.tar.bz2 `/bin/ls -d [!c]*` + cd core + PrintMessage "PACKING FILENAME = ${FILENAME}_core.tar.bz2" + tar jcvf ../../${FILENAME}_core.tar.bz2 ${DIRECTORY} + popd > /dev/null + rm -fvr ${PACKAGE} + done + done + done + cd ${SRC_ROOT} } +Prepare_menus_package () +{ + [ x`echo ${OOO_BUILD_SYSTEM} | grep -i linux` != x ] && { + PrintMessage "Prepare menus package." + CFG_FLAGS=${CONFIG_FLAGS} + for PKG in ${PACKAGE_FORMAT} + do + [ ${PKG} != ${DEFAULT_PACKAGE} -a ${PKG} != portable ] && { + CONFIG_FLAGS=`echo ${CFG_FLAGS} | eval sed 's/--with-package-format=${DEFAULT_PACKAGE}/-with-package-format=${PKG}/'` + pushd . + cd ${SRC_ROOT}/config_office + eval ./configure ${CONFIG_FLAGS} + cd ${SRC_ROOT} + source ./${OOO_BUILD_SYSTEM}Env.Set.sh + cd ${SRC_ROOT}/sysui + build.pl --all && deliver.pl + popd + } + done + [ "${CONFIG_FLAGS}" != "${CFG_FLAGS}" ] && { + CONFIG_FLAGS=${CFG_FLAGS} + cd ${SRC_ROOT}/config_office + eval ./configure ${CONFIG_FLAGS} + cd ${SRC_ROOT} + source ./${OOO_BUILD_SYSTEM}Env.Set.sh + } + } +} + + +# ================================================== +# Load custom configuration settings +# ================================================== + +[ -f ./ooobuild.conf ] && . ./ooobuild.conf + + # ================================================== # build environment settings # ================================================== @@ -148,7 +251,7 @@ [ `uname -s` = Linux -a `uname -m` = x86_64 ] && export OOO_BUILD_SYSTEM=LinuxAMD BUILDER_NAME=${BUILDER_NAME:-curvirgo} -VERSION=${VERSION:-1.9m123} +VERSION=${VERSION:-1.9m128} BUILD_NUMBER=${BUILD_NUMBER:-680} #LANGUAGES=${LANGUAGES:-"JAPN"} # for 1.1.x LANGUAGES=${LANGUAGES:-"en-US ja"} @@ -157,6 +260,7 @@ SRC_ROOT=${SRC_ROOT:-`pwd`} TEMP_DIR=${TEMP_DIR:-${SRC_ROOT}/temp} PATCH_DIR=${PATCH_DIR:-${SRC_ROOT}/temp/patch/${BUILD_NUMBER}} +PKGOUTDIR=${PKGOUTDIR:-${SRC_ROOT}/OOo_Package} SETUPGUIDE_DIR=${SETUPGUIDE_DIR:-${SRC_ROOT}/temp/pdf} JAVA_HOME=${JAVA_HOME:-/usr/java/j2sdk1.4.2_08} ANT_HOME=${ANT_HOME:-/usr/local/apache-ant-1.6.2} @@ -167,7 +271,7 @@ WDEVENV_DIR=${WDEVENV_DIR:-/cygdrive/c/progra~1/conver~1} GNUCP=${GNUCP:-cp} -GNUPATCH=${GNUPATCH:-/usr/bin/gpatch} +GNUPATCH=${GNUPATCH:-/usr/bin/patch} GPC_LOCATE=ftp://ftp.cs.man.ac.uk/pub/toby/gpc GPC_ARCHIVE=gpc231.zip @@ -190,14 +294,14 @@ CREATE_SDK=${CREATE_SDK:-No} CREATE_SOLVER=${CREATE_SOLVER:-No} CREATE_LANGUAGEPACK=${CREATE_LANGUAGEPACK:-Yes} +DIVIDE_PACKAGE=${DIVIDE_PACKAGE:-Yes} PARALLEL_BUILD=${PARALLEL_BUILD:-Yes} MAX_JOBS=${MAX_JOBS:-10} CRASHDUMP=${CRASHDUMP:-Yes} ENABLE_MOZILLA=${ENABLE_MOZILLA:-Yes} -MOZILLA_BUILD=${MOZILLA_BUILD:-Yes} ORIGINALPATCH=${ORIGINALPATCH:-Yes} -MERGE_LOCALIZE_DATA=${MERGE_LOCALIZE_DATA:-No} +MERGE_LOCALIZE_DATA=${MERGE_LOCALIZE_DATA:-Yes} REPLACE_SPLASH=${REPLACE_SPLASH:-No} REPLACE_VENDOR_NAME=${REPLACE_VENDOR_NAME:-Yes} COPY_SYMBOL=${COPY_SYMBOL:-No} @@ -222,7 +326,7 @@ fi CONFIG_FLAGS="${CONFIG_FLAGS} --prefix=${PREFIX} --enable-gcc3" [ ${BUILD_NUMBER} != 645 ] && { - CONFIG_FLAGS="${CONFIG_FLAGS} --enable-gtk --enable-kde --enable-cups --enable-fontconfig --enable-libart --with-system-freetype --enable-openldap --enable-libsn -enable-pam-link --enable-xrender-link" + CONFIG_FLAGS="${CONFIG_FLAGS} --enable-gtk --enable-kde --with-system-stdlibs --enable-cups --enable-fontconfig --enable-libart --with-system-freetype --enable-openldap --enable-libsn -enable-pam-link --enable-xrender-link --with-system-xrender-headers" DEFAULT_PACKAGE=portable [ -f /etc/*-release ] && DEFAULT_PACKAGE=rpm [ -f /etc/debian-version ] && DEFAULT_PACKAGE=deb @@ -272,6 +376,7 @@ CONFIG_FLAGS="${CONFIG_FLAGS} -disable-directx" fi } + JAVA_HOME=/cygdrive/c/progra~1/java/j2sdk1.4.2_08 ;; *) PrintMessage "Operating system/CPU not supported yet." @@ -350,9 +455,8 @@ # ================================================= if [ ${ENABLE_MOZILLA} = Yes ]; then - CONFIG_FLAGS="${CONFIG_FLAGS} --enable-mozilla" - [ ${MOZILLA_BUILD} = Yes ] && { - CONFIG_FLAGS="${CONFIG_FLAGS} --enable-build-mozilla --with-mozilla-version=${MOZILLA_VERSION}" + if [ ${BUILD_NUMBER} != 645 ]; then + CONFIG_FLAGS="${CONFIG_FLAGS} --enable-mozilla --enable-build-mozilla --with-mozilla-version=${MOZILLA_VERSION}" PrintMessage "Download mozilla source file" [ -f ${TEMP_DIR}/${MOZILLA_SOURCE_ARCHIVE} ] || ( cd ${TEMP_DIR} @@ -368,36 +472,15 @@ ${GNUCP} -v ${TEMP_DIR}/${MOZ_LIBIDL_ARCHIVE} ${SRC_ROOT}/moz/download ${GNUCP} -v ${TEMP_DIR}/${MOZ_WINTOOLS_ARCHIVE} ${SRC_ROOT}/moz/download ) - } + else + CONFIG_FLAGS="${CONFIG_FLAGS} --enable-mozilla" + fi else CONFIG_FLAGS="${CONFIG_FLAGS} --disable-mozilla" fi # ================================================= -# Copy required libralies for Linux -# ================================================= - -[ ${OOO_BUILD_SYSTEM} = LinuxIntel ] && { - PrintMessage "Copying required libralies" - LIBGCC_NAME=libgcc_s.so.1 - if [ ${GCC_VER} -ge 340 ] ; then - LIBCPP_NAME=libstdc++.so.6 # gcc 3.4 - else - LIBCPP_NAME=libstdc++.so.5 # gcc 3.3 - fi - mkdir -p ${SRC_ROOT}/solver/${BUILD_NUMBER}/${OOOUTPATH}.pro/lib - DIR_LIST=`cat /etc/ld.so.conf | grep -e "^/"` - DIR_LIST="${DIR_LIST} /usr/local/lib /lib" - for LDDIR in ${DIR_LIST} - do - [ -f ${LDDIR}/${LIBGCC_NAME} ] && install -v -m644 ${LDDIR}/${LIBGCC_NAME} ${SRC_ROOT}/solver/${BUILD_NUMBER}/${OOOUTPATH}.pro/lib - [ -f ${LDDIR}/${LIBCPP_NAME} ] && install -v -m644 ${LDDIR}/${LIBCPP_NAME} ${SRC_ROOT}/solver/${BUILD_NUMBER}/${OOOUTPATH}.pro/lib - done -} - - -# ================================================= # Copy required DLL for Windows # ================================================= @@ -451,9 +534,7 @@ fi [ -e makefile.mk.original ] || { ${GNUCP} makefile.mk makefile.mk.original - echo s/\$\(USER\)\$\(USERNAME\)/${BUILDER_NAME}/ > ${TEMP_DIR}/sed.cmd - cat makefile.mk.original | sed -f ${TEMP_DIR}/sed.cmd > makefile.mk - rm -f ${TEMP_DIR}/sed.cmd + cat makefile.mk.original | eval sed 's/\$\(USER\)\$\(USERNAME\)/${BUILDER_NAME}/' > makefile.mk } cd ${SRC_ROOT} } @@ -622,6 +703,7 @@ PrintMessage "Start build process." if [ ${BUILD_NUMBER} != 645 ]; then if [ ${OOO_BUILD_SYSTEM} != Win32Intel -a ${PARALLEL_BUILD} = Yes ]; then + Prepare_menus_package cd ${SRC_ROOT}/instsetoo_native/util PrintMessage "Parallel Building ..." build.pl --all product=full -P${MAX_JOBS} ${BUILD_OPTION} || { @@ -631,6 +713,7 @@ cd ${SRC_ROOT} else PrintMessage "Serial Building ..." + Prepare_menus_package dmake ${BUILD_OPTION} || { echo "Dmake failed, fix the bug above." exit @@ -652,7 +735,7 @@ [ ${CREATE_SDK} = Yes ] && { PrintMessage "Packaging SDK" cd sdk_oo - build.pl --from sdk_oo + build.pl if [ ${OOO_BUILD_SYSTEM} != Win32Intel ] then ${GNUCP} ${OOOUTPATH}.pro/bin/OpenOffice.org*_SDK.tar.gz ${SRC_ROOT}/OOo_${VERSION}_${OOO_BUILD_SYSTEM}_sdk_${BUILDER_NAME}.tar.gz @@ -681,8 +764,10 @@ # Pack Installation sets # ================================================== +[ -d ${PKGOUTDIR} ] || mkdir -p ${PKGOUTDIR} + if [ ${BUILD_NUMBER} != 645 ]; then - if [ ${OOO_BUILD_SYSTEM} = LinuxIntel ]; then + if [ x`echo ${OOO_BUILD_SYSTEM} | grep -i linux` != x ]; then for PKG in ${PACKAGE_FORMAT} do CreateInstallSet ${PKG} @@ -711,11 +796,18 @@ fi } if [ ${OOO_BUILD_SYSTEM} = Win32Intel ]; then - zip -r ${SRC_ROOT}/OOo_${VERSION}_${OOO_BUILD_SYSTEM}_install_ja_${BUILDER_NAME}.zip install + zip -r ${PKGOUTDIR}/OOo_${VERSION}_${OOO_BUILD_SYSTEM}_install_ja_${BUILDER_NAME}.zip install else - tar jcvf ${SRC_ROOT}/OOo_${VERSION}_${OOO_BUILD_SYSTEM}_install_ja_${BUILDER_NAME}.tar.bz2 install + tar jcvf ${PKGOUTDIR}/OOo_${VERSION}_${OOO_BUILD_SYSTEM}_install_ja_${BUILDER_NAME}.tar.bz2 install fi else PrintMessage "Installation sets not found, check installation sets." fi fi + + +# ================================================== +# Divide Package +# ================================================== + +[ ${OOO_BUILD_SYSTEM} = LinuxIntel -a ${DIVIDE_PACKAGE} = Yes ] && DividePackage --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
