fix the CI

This commit is contained in:
Basile Burg 2020-04-16 12:34:44 +02:00
parent 3a9e270909
commit 760f2952a9
8 changed files with 48 additions and 21 deletions

View File

@ -21,14 +21,13 @@ release:
GIT_SUBMODULE_STRATEGY: normal
before_script:
- apt-get update -y
- apt-get install -y dpkg
- apt-get install -y rpm
- apt-get install -y git
- apt-get install -y zip
- apt-get install -y libcurl4-openssl-dev
- curl -JLO https://sourceforge.net/projects/lazarus/files/Lazarus%20Linux%20amd64%20DEB/Lazarus%202.0.6/fpc-laz_3.0.4-1_amd64.deb/download && apt install -y ./fpc-laz_3.0.4-1_amd64.deb
- curl -JLO https://sourceforge.net/projects/lazarus/files/Lazarus%20Linux%20amd64%20DEB/Lazarus%202.0.6/fpc-src_3.0.4-2_amd64.deb/download && apt install -y ./fpc-src_3.0.4-2_amd64.deb
- curl -JLO https://sourceforge.net/projects/lazarus/files/Lazarus%20Linux%20amd64%20DEB/Lazarus%202.0.6/lazarus-project_2.0.6-0_amd64.deb/download && apt install -y ./lazarus-project_2.0.6-0_amd64.deb
- curl -JLO https://sourceforge.net/projects/lazarus/files/Lazarus%20Linux%20amd64%20DEB/Lazarus%202.0.8/fpc-laz_3.0.4-1_amd64.deb/download && apt install -y ./fpc-laz_3.0.4-1_amd64.deb
- curl -JLO https://sourceforge.net/projects/lazarus/files/Lazarus%20Linux%20amd64%20DEB/Lazarus%202.0.8/fpc-src_3.0.4-2_amd64.deb/download && apt install -y ./fpc-src_3.0.4-2_amd64.deb
- curl -JLO https://sourceforge.net/projects/lazarus/files/Lazarus%20Linux%20amd64%20DEB/Lazarus%202.0.8/lazarus-project_2.0.8-0_amd64.deb/download && apt install -y ./lazarus-project_2.0.8-0_amd64.deb
script:
- bash setup/build-release.sh
artifacts:

View File

@ -9,5 +9,8 @@
"iz" : {
"path" : "../etc/iz"
}
}
}
},
"dflags" : [
"-link-defaultlib-shared=false"
]
}

View File

@ -434,6 +434,9 @@
<Debugging>
<UseHeaptrc Value="True"/>
</Debugging>
<Options>
<LinkerOptions Value="-L..\bin --verbose"/>
</Options>
</Linking>
<Other>
<CompilerMessages>
@ -485,6 +488,7 @@
<UseHeaptrc Value="True"/>
</Debugging>
<Options>
<LinkerOptions Value="-L..\bin --verbose"/>
<Win32>
<GraphicApplication Value="True"/>
</Win32>
@ -887,6 +891,7 @@
</Debugging>
<LinkSmart Value="True"/>
<Options>
<LinkerOptions Value="-L..\bin --verbose"/>
<Win32>
<GraphicApplication Value="True"/>
</Win32>

View File

@ -12,14 +12,22 @@ echo "building dexed release" $ver
if [ ! -d "./bin" ]; then
mkdir "./bin"
fi
LDC_SHARED10=$(find "/dlang/" -iname "libdruntime-ldc-shared.so.*" 2>/dev/null | grep -m 1 "lib/libdruntime-ldc-shared")
LDC_SHARED11=$(find "/dlang/" -iname "libdruntime-ldc-shared.so" 2>/dev/null | grep -m 1 "lib/libdruntime-ldc-shared")
LDC_SHARED20=$(find "/dlang/" -iname "libphobos2-ldc-shared.so.*" 2>/dev/null | grep -m 1 "lib/libphobos2-ldc-shared")
LDC_SHARED21=$(find "/dlang/" -iname "libphobos2-ldc-shared.so" 2>/dev/null | grep -m 1 "lib/libphobos2-ldc-shared")
cp "$LDC_SHARED10" "./bin"
cp "$LDC_SHARED11" "./bin"
cp "$LDC_SHARED20" "./bin"
cp "$LDC_SHARED21" "./bin"
DEXED_BIN_PATH=$(readlink --canonicalize "./bin")
SEARCH_PATH_LDC=$(find "/" -iname "libdruntime-ldc.a" 2>/dev/null | grep -m 1 "libdruntime")
SEARCH_PATH_LDC=$(dirname $SEARCH_PATH_LDC)
export LIBRARY_PATH="$LIBRARY_PATH":"$SEARCH_PATH_LDC":"$DEXED_BIN_PATH"
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH":"$SEARCH_PATH_LDC":"$DEXED_BIN_PATH"
# libdexed-d
cd dexed-d
dub build --build=release --compiler=ldc2
if [ ! -f "../bin/libdexed-d.so" ]; then
echo "this explains linking issues..."
exit 1
fi
cp "../bin/libdexed-d.so" "/lib64/libdexed-d.so"
cp "../bin/libdexed-d.so" "/lib/libdexed-d.so"
cd ..
# dexed
echo "building dexed..."
@ -69,7 +77,7 @@ echo "moving files and binaries..."
if [ ! -d setup/nux64 ]; then
mkdir setup/nux64
fi
mv bin/dastworx setup/nux64/
mv bin/libdexed-d.so setup/nux64/
mv bin/dexed setup/nux64/
mv dcd/bin/dcd-server setup/nux64/
mv dcd/bin/dcd-client setup/nux64/
@ -92,7 +100,7 @@ SETUP_APP_NAME="dexed.$ver.linux64.setup"
echo "building the custom setup program..."
SETUP_DC=$DC
if [ "$SETUP_DC" = ldc2 ]; then
SETUP_DC=ldmd
SETUP_DC=ldmd2
fi
$SETUP_DC setup.d -O -release -Jnux64 -J./ -of"output/"$SETUP_APP_NAME
bash zip-nux64.sh

View File

@ -17,15 +17,18 @@ cfgdir=$basdir/DEBIAN
bindir=$basdir/usr/bin
pixdir=$basdir/usr/share/pixmaps
shcdir=$basdir/usr/share/applications
libdir=$basdir/usr/lib64
mkdir -p $basdir
mkdir -p $cfgdir
mkdir -p $bindir
mkdir -p $pixdir
mkdir -p $shcdir
mkdir -p $libdir
cp nux64/dexed $bindir
cp nux64/dexed.png $pixdir
cp nux64/libdexed-d.so $libdir
echo "[Desktop Entry]
Categories=Application;IDE;Development;

View File

@ -37,14 +37,17 @@ buildroot=$HOME/rpmbuild/BUILDROOT/$name_and_ver
bindir=$buildroot/usr/bin
pixdir=$buildroot/usr/share/pixmaps
shcdir=$buildroot/usr/share/applications
libdir=$buildroot/usr/lib64
mkdir -p $buildroot
mkdir -p $bindir
mkdir -p $pixdir
mkdir -p $shcdir
mkdir -p $libdir
cp nux64/dexed $bindir
cp nux64/dexed.png $pixdir
cp nux64/libdexed-d.so $libdir
echo "[Desktop Entry]
Categories=Application;IDE;Development;
@ -71,6 +74,7 @@ Dexed is an IDE for the DMD D compiler.
%files
/usr/bin/dexed
/usr/lib64/libdexed-d.so
/usr/share/applications/dexed.desktop
/usr/share/pixmaps/dexed.png

View File

@ -11,9 +11,14 @@ version(X86) version(Windows)version = win32;
version(Windows)
{
enum exeExt = ".exe";
enum libExt = ".dll";
pragma(lib, "ole32.lib");
}
else enum exeExt = "";
else
{
enum exeExt = "";
enum libExt = ".so";
}
alias ImpType = immutable ubyte[];
alias ResType = immutable Resource;
@ -36,6 +41,7 @@ struct Resource
immutable Resource[] ceResources =
[
Resource(cast(ImpType) import("dexed" ~ exeExt), "dexed" ~ exeExt, Kind.exe),
Resource(cast(ImpType) import("libdexed-d" ~ libExt), "libdexed-d" ~ libExt, Kind.exe),
Resource(cast(ImpType) import("dexed.ico"), "dexed.ico", Kind.dat),
Resource(cast(ImpType) import("dexed.png"), "dexed.png", Kind.dat),
Resource(cast(ImpType) import("dexed.license.txt"), "dexed.license.txt", Kind.doc)
@ -428,7 +434,7 @@ void postInstall()
f.writeln("[Desktop Entry]");
f.writeln("Name=dexed");
f.writeln("Path=" ~ exePath);
f.writeln("Exec=" ~ exePath ~ "dexed %f");
f.writeln("Exec=env LD_LIBRARY_PATH="~ exePath ~ " "~ exePath ~ "dexed %f");
f.writeln("Icon=" ~ datPath ~ "dexed.png");
f.writeln("Type=Application");
f.writeln("Categories=Application;IDE;Development;");

View File

@ -39,11 +39,10 @@ type
// Give a view on D `char[][]`
TDStrings = specialize TDArray<TDString>;
{$LINKLIB libphobos2-ldc-shared}
// Necessary to start the GC, run the static constructors, etc
procedure rt_init(); cdecl; external 'libdruntime-ldc-shared';
procedure rt_init(); cdecl; external 'libdexed-d';
// Cleanup
procedure rt_term(); cdecl; external 'libdruntime-ldc-shared';
procedure rt_term(); cdecl; external 'libdexed-d';
// Demangle a line possibly containing a D mangled name.
function ddemangle(const text: PChar): PChar; cdecl; external 'libdexed-d';
// Detects wether the source code for the module `src` contains the main() function.