Skip to content

Commit

Permalink
doublecmd: add mariux pre-release version 1.0.10-0
Browse files Browse the repository at this point in the history
- still has many bugs, but hey...
  • Loading branch information
wwwutz committed Feb 7, 2023
1 parent ed279a7 commit 6c7977b
Showing 1 changed file with 87 additions and 62 deletions.
149 changes: 87 additions & 62 deletions doublecmd.be0
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
#!/usr/bin/env beesh

# BEE_VERSION doublecmd-1.0.7-0
# BEE_VERSION doublecmd-1.0.10-0

# SRCURL[0]="https://downloads.sourceforge.net/project/doublecmd/Double%20Commander%20Source/doublecmd-${PKGVERSION}-src.tar.gz"
#SRCURL+=("https://beehive.molgen.mpg.de/31f7414f19bb0917afadf42069e05482/doublecmd-1.0.7-src.tar.gz")
SRCURL+=("https://beehive.molgen.mpg.de/add9601cbca3b9ba1df85e502fec3c97/doublecmd-1.0.10-src.tar.gz")

# git clone https://github.com/doublecmd/doublecmd.git doublecmd
SRCURL+=("https://beehive.molgen.mpg.de/b4dc381a2640a41cc881d7f41d0b8cc1/doublecmd-git.tar")
# SRCURL+=("https://beehive.molgen.mpg.de/b4dc381a2640a41cc881d7f41d0b8cc1/doublecmd-git.tar")

# https://downloads.sourceforge.net/project/freepascal/Source/3.2.2/fpc-3.2.2.source.tar.gz
#SRCURL+=("https://beehive.molgen.mpg.de/e7649ad0fc9230fdd9493a7fcabbd426/fpc-3.2.2.source.tar.gz")
Expand All @@ -21,32 +21,39 @@ SRCURL+=("https://beehive.molgen.mpg.de/b4dc381a2640a41cc881d7f41d0b8cc1/doublec
# SRCURL+=("https://beehive.molgen.mpg.de/96a1b21fc709daaa620b057ba22f8692/lazarus-2.2.2-0.tar.gz")

# git clone --recurse-submodules https://gitlab.com/freepascal.org/fpc/source.git/ fpcsrc
SRCURL+=("https://beehive.molgen.mpg.de/f7fd6c50cd6787d4a1a481ff41cbeba3/fpcsrc-git.tar")
### SRCURL+=("https://beehive.molgen.mpg.de/f7fd6c50cd6787d4a1a481ff41cbeba3/fpcsrc-git.tar")

# bootstrapper
# https://github.com/LongDirtyAnimAlf/fpcupdeluxe/releases/download/bootstrappers_v1.0/fpcup-3_2_2-x86_64-linux-ppcx64
SRCURL+=("https://beehive.molgen.mpg.de/b1b37cb1366df1d7dabe64345590d225/fpcup-3_2_2-x86_64-linux-ppcx64 ppcx64")
### SRCURL+=("https://beehive.molgen.mpg.de/b1b37cb1366df1d7dabe64345590d225/fpcup-3_2_2-x86_64-linux-ppcx64 ppcx64")

# git clone --recurse-submodules https://gitlab.com/freepascal.org/lazarus/lazarus.git/ lazarus
SRCURL+=("https://beehive.molgen.mpg.de/9c502cc2018b6d0b84fc6898ce79208a/lazarus-git.tar")
###SRCURL+=("https://beehive.molgen.mpg.de/9c502cc2018b6d0b84fc6898ce79208a/lazarus-git.tar")

# prebuilt
SRCURL+=("https://beehive.molgen.mpg.de/f1090423fc6c97bb9c6fd6af28e78bb5/dc-1.0.10-fpcupdeluxe.tar")

# PATCHURL[0]=""

NPROC=$(nproc)

export BEE_TMP_BUILDROOT=/scratch/local2/bee-root

# build_in_sourcedir

MXDIFF=/dev/shm/mxdiff.dc.$$
MXDIFF=/dev/shm/mxdiff.dc

mee_extract() {
for t in "${@}"; do
[[ $t =~ \.(tar.gz)$ ]] && X+=($t);
done
bee_extract "${X[@]}"

tar xf ${F}/doublecmd-git.tar --strip-components=1 -C ${S}
# tar xf ${F}/doublecmd-git.tar --strip-components=1 -C ${S}

if [ ! -d ${B}/fpcupdeluxe ]; then
mkdir -p ${B}
# tar xf ${F}/dc-1.0.10-fpcupdeluxe.tar -C ${B}
mkdir -p ${B}/fpcupdeluxe
tar xf ${F}/fpcsrc-git.tar -C ${B}/fpcupdeluxe
tar xf ${F}/lazarus-git.tar -C ${B}/fpcupdeluxe
Expand All @@ -60,11 +67,12 @@ mee_extract() {

mee_configure_pre() {

# DEST=/home/wwwutz/fpcupdeluxe/
rm -rfv /root/.lazarus
find /etc /root -mtime 0 -ls > ${MXDIFF}.1
trap "find /etc /root -mtime 0 -ls > ${MXDIFF}.2;diff ${MXDIFF}.[12];rm -vf ${MXDIFF}.[12];" EXIT

# if [ ! -d ${B}/fpcupdeluxe ]; then
if [ 1 = 1 ]; then
mkdir -p ${B}/fpcupdeluxe/fpcbootstrap

cd ${B}/fpcupdeluxe
Expand All @@ -75,7 +83,7 @@ mee_configure_pre() {

git checkout release_3_2_2

patch -N -p1 -i /scratch/local/samplecfg.patch
# patch -N -p1 -i /scratch/local/samplecfg.patch

local _MOPS=(
--jobs=${NPROC}
Expand Down Expand Up @@ -126,10 +134,8 @@ _EOT_

# fehlte offenbar
cat >>${B}/fpcupdeluxe/fpc/bin/x86_64-linux/fpc.cfg <<_EOT_

# Adding binary tools paths to plain bin dir and architecture bin dir so fpc 3.1+ fpcres etc can be found.
# /scratch/local2/bee-root/doublecmd/doublecmd-1.0.7-0/build/fpcupdeluxe/lazarus/ide/lazbuild.lpr(1878,1) Error: (9021) resource compiler "fpcres" not found, switching to external mode
-FD${B}/fpcupdeluxe/fpc/bin/x86_64-linux/
-Fl${B}/fpcupdeluxe/lazarus/lcl/interfaces/qt5/cbindings
_EOT_

#
Expand All @@ -140,10 +146,18 @@ _EOT_
#

cd ${B}/fpcupdeluxe/lazarus

git config --local advice.detachedHead false # no-ise

git checkout lazarus_2_2_4

#
# libqt5pas.so
#
cd ${B}/fpcupdeluxe/lazarus/lcl/interfaces/qt5/cbindings
qmake
make -j${NPROC}

local _MOPS=(
--directory=${B}/fpcupdeluxe/lazarus
FPC=${B}/fpcupdeluxe/fpc/bin/x86_64-linux/fpc.sh
Expand All @@ -156,25 +170,11 @@ _EOT_
FPCMAKE=${B}/fpcupdeluxe/fpc/bin/x86_64-linux/fpcmake
PPUMOVE=${B}/fpcupdeluxe/fpc/bin/x86_64-linux/ppumove
OPT="-vw-n-h-l-d-u-t-p-c- -g -gl"
LCL_PLATFORM=qt5
)

make "${_MOPS[@]}" lazbuild

return
#
# libqt5pas.so
#

cd ${B}/fpcupdeluxe/lazarus/lcl/interfaces/qt5/cbindings
qmake
make -j${NPROC}
mkdir -vp ${D}/usr/lib
cp -vax libQt5Pas.so* ${D}/usr/lib

#lrwxrwxrwx 1 root root 18 Oct 4 14:04 libQt5Pas.so -> libQt5Pas.so.1.2.9
#lrwxrwxrwx 1 root root 18 Oct 4 14:04 libQt5Pas.so.1 -> libQt5Pas.so.1.2.9
#lrwxrwxrwx 1 root root 18 Oct 4 14:04 libQt5Pas.so.1.2 -> libQt5Pas.so.1.2.9
#-rwxr-xr-x 1 root root 3560720 Oct 4 14:04 libQt5Pas.so.1.2.9
fi # if [ ! -d ${B}/fpcupdeluxe ]; then

}

Expand All @@ -185,13 +185,26 @@ return
mee_build() {
cd ${S}


cat >$S/build.bee.mkbuild <<_EOF_
PATH=${B}/fpcupdeluxe/fpc/bin/x86_64-linux:${B}/fpcupdeluxe/lazarus:$PATH

#!/bin/sh
set -x
set -e
B=${B}
INSTANTFPCCACHE=$B/instantfpccache

sed -e 's|export lazbuild=\\$.*|export lazbuild="lazbuild --pcp=$B --lazarusdir=$B/fpcupdeluxe/lazarus --verbose --verbose-pkgsearch "|' build.sh > build.bee.sh
# https://wiki.freepascal.org/Configuration_file
# /etc/fpc.cfg suchen
PPC_CONFIG_PATH=$B/fpcupdeluxe/fpc/bin/x86_64-linux/
export PPC_CONFIG_PATH

sed -e 's|export lazbuild=\\$.*|export lazbuild="${B}/fpcupdeluxe/lazarus/lazbuild --pcp=$B --lazarusdir=$B/fpcupdeluxe/lazarus --verbose --verbose-pkgsearch "|' \
-e 's|set -e|set -e\nPATH=${B}/fpcupdeluxe/fpc/bin/x86_64-linux:${B}/fpcupdeluxe/lazarus:${PATH}|' \
build.sh > build.bee.sh

# -e 's|components/build.sh|components/build.bee.sh|' \

# sed -e 's| /etc/fpc.cfg| $B/fpcupdeluxe/fpc/bin/x86_64-linux/fpc.cfg|' components/build.sh > components/build.bee.sh
# chmod 755 components/build.bee.sh

cat >$B/environmentoptions.xml <<_EOXML_
<CONFIG>
Expand All @@ -202,52 +215,64 @@ cat >$B/environmentoptions.xml <<_EOXML_
</CONFIG>
_EOXML_

sh -x ./build.bee.sh components qt5
# fpc chsdet findet fpc.cfg nicht, weil nicht in /etc
# dummfix: reinsymlinken
#ln -fs $B/fpcupdeluxe/fpc/bin/x86_64-linux/fpc.cfg components/
#ln -fs ../fpc.cfg components/chsdet/

_EOF_
export lcl=qt5

sh -x $S/build.bee.mkbuild
sh -x ./build.bee.sh components qt5

echo ${S}/build.bee.sh
# ln -fs $B/fpcupdeluxe/fpc/bin/x86_64-linux/fpc.cfg

exit
sh -x ./build.bee.sh plugins

# FPCDIR=$B/fpcupdeluxe/fpc \
# PATH=${B}/fpcupdeluxe/fpc/bin/x86_64-linux:${B}/fpcupdeluxe/lazarus:$PATH \
# ln -fs $B/fpcupdeluxe/fpc/bin/x86_64-linux/fpc.cfg

INSTANTFPCCACHE=$B/instantfpccache \
./build.sh components qt5
sh -x ./build.bee.sh doublecmd

local _MOPS=(
--lazarusdir=${B}/fpcupdeluxe/lazarus
--verbose --verbose --verbose-pkgsearch
--create-makefile
--pcp=${B}
--widgetset=qt5
)
exit

# lazbuild "${_MOPS[@]}" src/doublecmd.lpi
_MOPS=(
--lazarusdir=${B}/fpcupdeluxe/lazarus
--verbose --verbose --verbose-pkgsearch
--create-makefile
--pcp=${B}
--widgetset=qt5
)

lazbuild "${_MOPS[@]}" src/doublecmd.lpi

_EOF_

# access("/scratch/local2/bee-root/doublecmd/doublecmd-1.0.7-0/build/fpcupdeluxe/lazarus/lazarus.cfg", F_OK) = -1 ENOENT (No such file or directory)
chmod 755 ${S}/build.bee.mkbuild
${S}/build.bee.mkbuild

#cat $EtcSrcDir/environmentoptions.xml | \
# sed -e "s#__LAZARUSDIR__#$LazDestDirInstalled/#" \
# -e "s#__FPCSRCDIR__#/usr/share/fpcsrc/\$(FPCVER)/#" \
# > $LazBuildDir/etc/lazarus/environmentoptions.xml
#./tools/install/linux/environmentoptions.xml
#"__LAZARUSDIR__"
#"__FPCSRCDIR__"
cat >${B}/doublecmd <<_EOF_
#!/bin/bash
export QT_XCB_GL_INTEGRATION=none
export LD_LIBRARY_PATH=/usr/libexec/doublecmd${LD_LIBRARY_PATH:+:}$LD_LIBRARY_PATH
exec /usr/libexec/doublecmd/doublecmd "${@}"
_EOF_

}

#mee_install() {
# bee_install prefix=${D}/${PREFIX}
#}
mee_install() {

# wrapper
mkdir -vp ${D}/usr/bin
install -v -m0755 ${B}/doublecmd ${D}/usr/bin
# binary
mkdir -vp ${D}/usr/libexec/doublecmd
install -v -m0755 ${S}/doublecmd ${D}/usr/libexec/doublecmd
# libs
cp -vax ${B}/fpcupdeluxe/lazarus/lcl/interfaces/qt5/cbindings/libQt5Pas.so* ${D}/usr/libexec/doublecmd
}

mee_install_post() {
echo "./contentdiff.pl /usr/share/bee/${PKGFULLNAME}-[0-9]*/CONTENT ${D}/"
echo "( cd ${D}; find . -ls )"
exit
}

# QT_XCB_GL_INTEGRATION=none LD_LIBRARY_PATH=/scratch/local2/bee-root/doublecmd/doublecmd-1.0.10-0/image/usr/lib ./doublecmd

0 comments on commit 6c7977b

Please sign in to comment.