mirror of
https://github.com/Poikilos/b3view.git
synced 2023-10-03 07:58:48 -07:00
Fix install to account for new directory structure. Optimize build.
This commit is contained in:
parent
0170567e66
commit
a8b9085a4e
1
.gitignore
vendored
1
.gitignore
vendored
@ -40,3 +40,4 @@ CMakeLists.txt.user
|
|||||||
nohup.out
|
nohup.out
|
||||||
*.tmp
|
*.tmp
|
||||||
err.txt
|
err.txt
|
||||||
|
/build/b3view
|
||||||
|
55
build.sh
55
build.sh
@ -2,6 +2,15 @@
|
|||||||
if [ -z "$PREFIX" ]; then
|
if [ -z "$PREFIX" ]; then
|
||||||
PREFIX="/usr"
|
PREFIX="/usr"
|
||||||
fi
|
fi
|
||||||
|
if [ -z "$DEBUG" ]; then
|
||||||
|
DEBUG=false
|
||||||
|
fi
|
||||||
|
OPTION1="-O2"
|
||||||
|
OPTION2=""
|
||||||
|
if [ "@$DEBUG" = "@true" ]; then
|
||||||
|
OPTION1="-g"
|
||||||
|
#OPTION2="-DQT_QML_DEBUG"
|
||||||
|
fi
|
||||||
#IRR_INCDIR=
|
#IRR_INCDIR=
|
||||||
#IRR_LIBDIR=
|
#IRR_LIBDIR=
|
||||||
FT2_INCDIR=$PREFIX/include/freetype2
|
FT2_INCDIR=$PREFIX/include/freetype2
|
||||||
@ -25,28 +34,17 @@ fi
|
|||||||
#^ can't find a pc file
|
#^ can't find a pc file
|
||||||
# gcc -o build/b3view main.cpp Debug.cpp Engine.cpp EventHandler.cpp settings.cpp UserInterface.cpp Utility.cpp View.cpp -I$FT2_INCDIR
|
# gcc -o build/b3view main.cpp Debug.cpp Engine.cpp EventHandler.cpp settings.cpp UserInterface.cpp Utility.cpp View.cpp -I$FT2_INCDIR
|
||||||
|
|
||||||
# Qmake does the following:
|
# based on qtcreator's build after clean (see contributing.md; some options are unclear):
|
||||||
#g++ -c -pipe -g -w -fPIC -DQT_QML_DEBUG -I../b3view -I. -I/usr/include/freetype2 -I/../lib64/qt5/mkspecs/linux-g++ -o tmp/main.o ../b3view/main.cpp
|
eche
|
||||||
#g++ -c -pipe -g -w -fPIC -DQT_QML_DEBUG -I../b3view -I. -I/usr/include/freetype2 -I/../lib64/qt5/mkspecs/linux-g++ -o tmp/Engine.o ../b3view/Engine.cpp
|
g++ -c -pipe $OPTION1 -fPIC -I../b3view -I$FT2_INCDIR -o $OBJDIR/main.o ../b3view/main.cpp
|
||||||
#g++ -c -pipe -g -w -fPIC -DQT_QML_DEBUG -I../b3view -I. -I/usr/include/freetype2 -I/../lib64/qt5/mkspecs/linux-g++ -o tmp/EventHandler.o ../b3view/EventHandler.cpp
|
g++ -c -pipe $OPTION1 -fPIC -I../b3view -I$FT2_INCDIR -o $OBJDIR/Engine.o ../b3view/Engine.cpp
|
||||||
#g++ -c -pipe -g -w -fPIC -DQT_QML_DEBUG -I../b3view -I. -I/usr/include/freetype2 -I/../lib64/qt5/mkspecs/linux-g++ -o tmp/UserInterface.o ../b3view/UserInterface.cpp
|
g++ -c -pipe $OPTION1 -fPIC -I../b3view -I$FT2_INCDIR -o $OBJDIR/EventHandler.o ../b3view/EventHandler.cpp
|
||||||
#g++ -c -pipe -g -w -fPIC -DQT_QML_DEBUG -I../b3view -I. -I/usr/include/freetype2 -I/../lib64/qt5/mkspecs/linux-g++ -o tmp/Debug.o ../b3view/Debug.cpp
|
g++ -c -pipe $OPTION1 -fPIC -I../b3view -I$FT2_INCDIR -o $OBJDIR/UserInterface.o ../b3view/UserInterface.cpp
|
||||||
#g++ -c -pipe -g -w -fPIC -DQT_QML_DEBUG -I../b3view -I. -I/usr/include/freetype2 -I/../lib64/qt5/mkspecs/linux-g++ -o tmp/View.o ../b3view/View.cpp
|
g++ -c -pipe $OPTION1 -fPIC -I../b3view -I$FT2_INCDIR -o $OBJDIR/View.o ../b3view/View.cpp
|
||||||
#g++ -c -pipe -g -w -fPIC -DQT_QML_DEBUG -I../b3view -I. -I/usr/include/freetype2 -I/../lib64/qt5/mkspecs/linux-g++ -o tmp/CGUITTFont.o ../b3view/extlib/CGUITTFont.cpp
|
g++ -c -pipe $OPTION1 -fPIC -I../b3view -I$FT2_INCDIR -o $OBJDIR/Debug.o ../b3view/Debug.cpp
|
||||||
#g++ -c -pipe -g -w -fPIC -DQT_QML_DEBUG -I../b3view -I. -I/usr/include/freetype2 -I/../lib64/qt5/mkspecs/linux-g++ -o tmp/Utility.o ../b3view/Utility.cpp
|
g++ -c -pipe $OPTION1 -fPIC -I../b3view -I$FT2_INCDIR -o $OBJDIR/CGUITTFont.o ../b3view/extlib/CGUITTFont.cpp
|
||||||
#g++ -c -pipe -g -w -fPIC -DQT_QML_DEBUG -I../b3view -I. -I/usr/include/freetype2 -I/../lib64/qt5/mkspecs/linux-g++ -o tmp/settings.o ../b3view/settings.cpp
|
g++ -c -pipe $OPTION1 -fPIC -I../b3view -I$FT2_INCDIR -o $OBJDIR/Utility.o ../b3view/Utility.cpp
|
||||||
#g++ -o build/b3view tmp/main.o tmp/Engine.o tmp/EventHandler.o tmp/UserInterface.o tmp/Debug.o tmp/View.o tmp/CGUITTFont.o tmp/Utility.o tmp/settings.o -lIrrlicht -lX11 -lGL -lXxf86vm -lXcursor -lstdc++fs -lfreetype
|
g++ -c -pipe $OPTION1 -fPIC -I../b3view -I$FT2_INCDIR -o $OBJDIR/settings.o ../b3view/settings.cpp
|
||||||
|
|
||||||
# based on the above (some options are unclear):
|
|
||||||
g++ -c -pipe -g -fPIC -I../b3view -I$FT2_INCDIR -o $OBJDIR/main.o ../b3view/main.cpp
|
|
||||||
g++ -c -pipe -g -fPIC -I../b3view -I$FT2_INCDIR -o $OBJDIR/Engine.o ../b3view/Engine.cpp
|
|
||||||
g++ -c -pipe -g -fPIC -I../b3view -I$FT2_INCDIR -o $OBJDIR/EventHandler.o ../b3view/EventHandler.cpp
|
|
||||||
g++ -c -pipe -g -fPIC -I../b3view -I$FT2_INCDIR -o $OBJDIR/UserInterface.o ../b3view/UserInterface.cpp
|
|
||||||
g++ -c -pipe -g -fPIC -I../b3view -I$FT2_INCDIR -o $OBJDIR/View.o ../b3view/View.cpp
|
|
||||||
g++ -c -pipe -g -fPIC -I../b3view -I$FT2_INCDIR -o $OBJDIR/Debug.o ../b3view/Debug.cpp
|
|
||||||
g++ -c -pipe -g -fPIC -I../b3view -I$FT2_INCDIR -o $OBJDIR/CGUITTFont.o ../b3view/extlib/CGUITTFont.cpp
|
|
||||||
g++ -c -pipe -g -fPIC -I../b3view -I$FT2_INCDIR -o $OBJDIR/Utility.o ../b3view/Utility.cpp
|
|
||||||
g++ -c -pipe -g -fPIC -I../b3view -I$FT2_INCDIR -o $OBJDIR/settings.o ../b3view/settings.cpp
|
|
||||||
#-w: suppress warning
|
#-w: suppress warning
|
||||||
# -I.: include the current directory (suppresses errors when using include < instead of include "
|
# -I.: include the current directory (suppresses errors when using include < instead of include "
|
||||||
#-pipe: "Use pipes rather than intermediate files."
|
#-pipe: "Use pipes rather than intermediate files."
|
||||||
@ -69,6 +67,15 @@ fi
|
|||||||
INSTALLED_BIN="$HOME/.local/bin/b3view"
|
INSTALLED_BIN="$HOME/.local/bin/b3view"
|
||||||
if [ -f "$INSTALLED_BIN" ]; then
|
if [ -f "$INSTALLED_BIN" ]; then
|
||||||
echo "* updating $INSTALLED_BIN..."
|
echo "* updating $INSTALLED_BIN..."
|
||||||
rm "$INSTALLED_BIN"
|
./$OUT_BIN
|
||||||
cp -f "$OUT_BIN" "$INSTALLED_BIN"
|
if [ $? -eq 0 ]; then
|
||||||
|
# if no errors occur, install it
|
||||||
|
rm "$INSTALLED_BIN"
|
||||||
|
cp -f "$OUT_BIN" "$INSTALLED_BIN"
|
||||||
|
if [ $? -eq 0 ]; then
|
||||||
|
echo "* installed $INSTALLED_BIN successfully."
|
||||||
|
else
|
||||||
|
echo "* FAILED to install $INSTALLED_BIN."
|
||||||
|
fi
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
50
contributing.md
Normal file
50
contributing.md
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
# Contributing
|
||||||
|
<https://github.com/poikilos/b3view>
|
||||||
|
|
||||||
|
## Regression Tests
|
||||||
|
|
||||||
|
### Manipulating mesh on failed load
|
||||||
|
- steps to reproduce
|
||||||
|
- File, Open, choose a mesh file such as animal_bat.b3d
|
||||||
|
- File, Open, choose a texture (purposely incorrect input)
|
||||||
|
- incorrect behaviors:
|
||||||
|
- manipulating the loaded scene, such as calling remove()
|
||||||
|
- SEGFAULT
|
||||||
|
- correct behaviors:
|
||||||
|
- Do nothing to the current scene.
|
||||||
|
- Show a message saying that the format is incorrect.
|
||||||
|
|
||||||
|
|
||||||
|
## What Qt Creator does
|
||||||
|
When building after clean, you can see the g++ commands in the "Compiler Output" bottom tab. See Debug and Release sections below.
|
||||||
|
|
||||||
|
### Debug
|
||||||
|
```
|
||||||
|
g++ -c -pipe -g -w -fPIC -DQT_QML_DEBUG -I../b3view -I. -I/usr/include/freetype2 -I/../lib64/qt5/mkspecs/linux-g++ -o tmp/main.o ../b3view/main.cpp
|
||||||
|
g++ -c -pipe -g -w -fPIC -DQT_QML_DEBUG -I../b3view -I. -I/usr/include/freetype2 -I/../lib64/qt5/mkspecs/linux-g++ -o tmp/Engine.o ../b3view/Engine.cpp
|
||||||
|
g++ -c -pipe -g -w -fPIC -DQT_QML_DEBUG -I../b3view -I. -I/usr/include/freetype2 -I/../lib64/qt5/mkspecs/linux-g++ -o tmp/EventHandler.o ../b3view/EventHandler.cpp
|
||||||
|
g++ -c -pipe -g -w -fPIC -DQT_QML_DEBUG -I../b3view -I. -I/usr/include/freetype2 -I/../lib64/qt5/mkspecs/linux-g++ -o tmp/UserInterface.o ../b3view/UserInterface.cpp
|
||||||
|
g++ -c -pipe -g -w -fPIC -DQT_QML_DEBUG -I../b3view -I. -I/usr/include/freetype2 -I/../lib64/qt5/mkspecs/linux-g++ -o tmp/Debug.o ../b3view/Debug.cpp
|
||||||
|
g++ -c -pipe -g -w -fPIC -DQT_QML_DEBUG -I../b3view -I. -I/usr/include/freetype2 -I/../lib64/qt5/mkspecs/linux-g++ -o tmp/View.o ../b3view/View.cpp
|
||||||
|
g++ -c -pipe -g -w -fPIC -DQT_QML_DEBUG -I../b3view -I. -I/usr/include/freetype2 -I/../lib64/qt5/mkspecs/linux-g++ -o tmp/CGUITTFont.o ../b3view/extlib/CGUITTFont.cpp
|
||||||
|
g++ -c -pipe -g -w -fPIC -DQT_QML_DEBUG -I../b3view -I. -I/usr/include/freetype2 -I/../lib64/qt5/mkspecs/linux-g++ -o tmp/Utility.o ../b3view/Utility.cpp
|
||||||
|
g++ -c -pipe -g -w -fPIC -DQT_QML_DEBUG -I../b3view -I. -I/usr/include/freetype2 -I/../lib64/qt5/mkspecs/linux-g++ -o tmp/settings.o ../b3view/settings.cpp
|
||||||
|
g++ -o build/b3view tmp/main.o tmp/Engine.o tmp/EventHandler.o tmp/UserInterface.o tmp/Debug.o tmp/View.o tmp/CGUITTFont.o tmp/Utility.o tmp/settings.o -lIrrlicht -lX11 -lGL -lXxf86vm -lXcursor -lstdc++fs -lfreetype
|
||||||
|
```
|
||||||
|
|
||||||
|
### Release
|
||||||
|
```
|
||||||
|
g++ -c -pipe -O2 -w -fPIC -I../b3view -I. -I/usr/include/freetype2 -I/../lib64/qt5/mkspecs/linux-g++ -o tmp/main.o ../b3view/main.cpp
|
||||||
|
g++ -c -pipe -O2 -w -fPIC -I../b3view -I. -I/usr/include/freetype2 -I/../lib64/qt5/mkspecs/linux-g++ -o tmp/Engine.o ../b3view/Engine.cpp
|
||||||
|
g++ -c -pipe -O2 -w -fPIC -I../b3view -I. -I/usr/include/freetype2 -I/../lib64/qt5/mkspecs/linux-g++ -o tmp/EventHandler.o ../b3view/EventHandler.cpp
|
||||||
|
g++ -c -pipe -O2 -w -fPIC -I../b3view -I. -I/usr/include/freetype2 -I/../lib64/qt5/mkspecs/linux-g++ -o tmp/UserInterface.o ../b3view/UserInterface.cpp
|
||||||
|
g++ -c -pipe -O2 -w -fPIC -I../b3view -I. -I/usr/include/freetype2 -I/../lib64/qt5/mkspecs/linux-g++ -o tmp/Debug.o ../b3view/Debug.cpp
|
||||||
|
g++ -c -pipe -O2 -w -fPIC -I../b3view -I. -I/usr/include/freetype2 -I/../lib64/qt5/mkspecs/linux-g++ -o tmp/View.o ../b3view/View.cpp
|
||||||
|
g++ -c -pipe -O2 -w -fPIC -I../b3view -I. -I/usr/include/freetype2 -I/../lib64/qt5/mkspecs/linux-g++ -o tmp/CGUITTFont.o ../b3view/extlib/CGUITTFont.cpp
|
||||||
|
g++ -c -pipe -O2 -w -fPIC -I../b3view -I. -I/usr/include/freetype2 -I/../lib64/qt5/mkspecs/linux-g++ -o tmp/Utility.o ../b3view/Utility.cpp
|
||||||
|
g++ -c -pipe -O2 -w -fPIC -I../b3view -I. -I/usr/include/freetype2 -I/../lib64/qt5/mkspecs/linux-g++ -o tmp/settings.o ../b3view/settings.cpp
|
||||||
|
g++ -Wl,-O1 -o build/b3view tmp/main.o tmp/Engine.o tmp/EventHandler.o tmp/UserInterface.o tmp/Debug.o tmp/View.o tmp/CGUITTFont.o tmp/Utility.o tmp/settings.o -lIrrlicht -lX11 -lGL -lXxf86vm -lXcursor -lstdc++fs -lfreetype
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
|
83
install.sh
83
install.sh
@ -1,6 +1,6 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
customDie() {
|
customExit() {
|
||||||
echo
|
echo
|
||||||
echo "ERROR:"
|
echo "ERROR:"
|
||||||
echo "$1"
|
echo "$1"
|
||||||
@ -9,10 +9,10 @@ customDie() {
|
|||||||
exit 1
|
exit 1
|
||||||
}
|
}
|
||||||
|
|
||||||
echo "Use the install.sh in build instead. Switching to build/install.sh..."
|
DIST_DIR="`realpath dist`"
|
||||||
DIST_DIR=dist
|
BUILD_DIR="build"
|
||||||
if [ ! -d "$DIST_DIR" ]; then
|
if [ ! -d "$DIST_DIR" ]; then
|
||||||
customDie "ERROR: There is no $DIST_DIR directory in `pwd`"
|
customExit "ERROR: There is no $DIST_DIR directory in `pwd`"
|
||||||
fi
|
fi
|
||||||
# chmod +x install.sh
|
# chmod +x install.sh
|
||||||
echo
|
echo
|
||||||
@ -23,63 +23,70 @@ dest_share_dir="$PREFIX/share"
|
|||||||
project_unix_name=b3view
|
project_unix_name=b3view
|
||||||
dest_name=$project_unix_name
|
dest_name=$project_unix_name
|
||||||
src_name="$project_unix_name"
|
src_name="$project_unix_name"
|
||||||
src_path="$src_name"
|
src_path="$src_name" # detected later (dependent on how built)
|
||||||
try_dest_bin="$dest_bin_dir/$dest_name"
|
dest_bin="$dest_bin_dir/$dest_name"
|
||||||
icon_name="b3view.png"
|
icon_name="b3view.png"
|
||||||
icon_src_path="icons/$icon_name"
|
icon_src_path="$DIST_DIR/icons/$icon_name"
|
||||||
shortcut_name="org.poikilos.b3view.desktop"
|
shortcut_name="org.poikilos.b3view.desktop"
|
||||||
shortcut_src_path="applications/$shortcut_name"
|
shortcut_src_path="$DIST_DIR/applications/$shortcut_name"
|
||||||
icons_root=$PREFIX/share/pixmaps
|
icons_root=$PREFIX/share/pixmaps
|
||||||
applications_path=$PREFIX/share/applications
|
applications_path=$PREFIX/share/applications
|
||||||
|
|
||||||
mimes_path="share/mime/packages"
|
mimes_path="$DIST_DIR/share/mime/packages"
|
||||||
USER_MIMETYPES_DB_PATH=$HOME/.local/share/mime
|
USER_MIMETYPES_DB_PATH=$HOME/.local/share/mime
|
||||||
#USER_MIMETYPES_PATH="$USER_MIMETYPES_DB_PATH/packages"
|
#USER_MIMETYPES_PATH="$USER_MIMETYPES_DB_PATH/packages"
|
||||||
SYSTEM_MIMETYPES_DB_PATH=/usr/share/mime
|
SYSTEM_MIMETYPES_DB_PATH=/usr/share/mime
|
||||||
#SYSTEM_MIMETYPES_PATH=$SYSTEM_MIMETYPES_DB_PATH/packages
|
#SYSTEM_MIMETYPES_PATH=$SYSTEM_MIMETYPES_DB_PATH/packages
|
||||||
MIMETYPES_DB_PATH=$SYSTEM_MIMETYPES_DB_PATH
|
MIMETYPES_DB_PATH=$SYSTEM_MIMETYPES_DB_PATH
|
||||||
|
|
||||||
try_build_path="../../build-$project_unix_name-Desktop-Release/build/"
|
for try_build_path in "$BUILD_DIR" "../build" "../../build-$project_unix_name-Desktop-Release/build/"
|
||||||
try_src_path="$try_build_path/$src_name"
|
do
|
||||||
if [ ! -f $src_path ]; then
|
try_src_path="$try_build_path/$src_name"
|
||||||
echo "Checking for $src_path...NOT FOUND"
|
if [ ! -f $src_path ]; then
|
||||||
if [ -f "$try_src_path" ]; then
|
echo "Checking for $src_path...NOT FOUND"
|
||||||
echo "Checking for $src_name in $try_build_path...FOUND"
|
if [ -f "$try_src_path" ]; then
|
||||||
src_path="$try_src_path"
|
echo "* Checking for $src_name in $try_build_path...FOUND"
|
||||||
else
|
src_path="$try_src_path"
|
||||||
echo "Checking for $src_name in $try_build_path...NOT FOUND"
|
break
|
||||||
|
else
|
||||||
|
echo "* Checking for $src_name in $try_build_path...NOT FOUND"
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
done
|
||||||
if [ ! -f "$src_path" ]; then
|
if [ ! -f "$src_path" ]; then
|
||||||
customDie "(Nothing done) missing $src_name (You must build first, such as using Qt Creator)."
|
customExit "(Nothing done) missing $src_name (You must build first, such as using build.sh or Qt Creator (Release))."
|
||||||
else
|
else
|
||||||
echo "Checking for $src_path...FOUND"
|
echo "Checking for $src_path...FOUND"
|
||||||
echo "* current directory: `pwd`"
|
echo "* current directory: `pwd`"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -d "$try_dest_bin" ]; then
|
if [ -d "$dest_bin" ]; then
|
||||||
customDie "(Nothing done) '$try_dest_bin' is a directory (should be deleted or a binary file of old version)"
|
customExit "(Nothing done) '$dest_bin' is a directory (should be deleted or a binary file of old version)"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
PROFILE_ENABLE=false
|
PROFILE_ENABLE=false
|
||||||
if [ -f "$try_dest_bin" ]; then
|
if [ -f "$dest_bin" ]; then
|
||||||
rm -f "$try_dest_bin"
|
rm -f "$dest_bin"
|
||||||
if [ -f "$try_dest_bin" ]; then
|
if [ -f "$dest_bin" ]; then
|
||||||
echo "WARNING: can't remove old $try_dest_bin, so"
|
echo "WARNING: can't remove old $dest_bin, so"
|
||||||
PROFILE_ENABLE=true
|
PROFILE_ENABLE=true
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
# echo "* using '$src_path'..."
|
# echo "* using '$src_path'..."
|
||||||
cp -f "$src_path" "$try_dest_bin"
|
if [ ! -f "$src_path" ]; then
|
||||||
|
customExit "* Error: missing $src_path in `pwd`"
|
||||||
|
fi
|
||||||
|
cp -f "$src_path" "$dest_bin"
|
||||||
|
|
||||||
if [ ! -f "$try_dest_bin" ]; then
|
if [ ! -f "$dest_bin" ]; then
|
||||||
PROFILE_ENABLE=true
|
PROFILE_ENABLE=true
|
||||||
prev_dir="$dest_bin_dir"
|
prev_dir="$dest_bin_dir"
|
||||||
echo "WARNING: can't write to $prev_dir, so"
|
echo "WARNING: can't write to $prev_dir, so"
|
||||||
fi
|
fi
|
||||||
if [ "@$PROFILE_ENABLE" = "@true" ]; then
|
if [ "@$PROFILE_ENABLE" = "@true" ]; then
|
||||||
dest_bin_dir="$HOME/.local/bin"
|
dest_bin_dir="$HOME/.local/bin"
|
||||||
echo "installing to '$dest_bin_dir'."
|
dest_bin="$dest_bin_dir/$src_name"
|
||||||
|
echo "installing as '$dest_bin'."
|
||||||
echo "Press Ctrl C to cancel..."
|
echo "Press Ctrl C to cancel..."
|
||||||
#sleep 1
|
#sleep 1
|
||||||
#echo "3..."
|
#echo "3..."
|
||||||
@ -89,11 +96,20 @@ if [ "@$PROFILE_ENABLE" = "@true" ]; then
|
|||||||
#echo "1..."
|
#echo "1..."
|
||||||
#sleep 1
|
#sleep 1
|
||||||
else
|
else
|
||||||
echo "Successfully installed as '$try_dest_bin'"
|
echo "Successfully installed as '$dest_bin'"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "@$PROFILE_ENABLE" = "@true" ]; then
|
if [ "@$PROFILE_ENABLE" = "@true" ]; then
|
||||||
if [ ! -d "$dest_bin_dir" ]; then mkdir "$dest_bin_dir"; fi
|
if [ ! -d "$dest_bin_dir" ]; then mkdir "$dest_bin_dir"; fi
|
||||||
cp -f $src_path "$dest_bin_dir/"
|
if [ -L "$dest_bin" ]; then
|
||||||
|
realpath="`readlink "$dest_bin"`"
|
||||||
|
echo "* \"$dest_bin\" was a symlink to \"$realpath\""
|
||||||
|
if [ ! -f "$realpath" ]; then
|
||||||
|
echo " * removing dangling symlink..."
|
||||||
|
rm "$dest_bin"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
cp -f $src_path "$dest_bin" || customExit "* copying to $dest_bin_dir/ FAILED"
|
||||||
icons_root="$HOME/.local/share/icons"
|
icons_root="$HOME/.local/share/icons"
|
||||||
applications_path="$HOME/.local/share/applications"
|
applications_path="$HOME/.local/share/applications"
|
||||||
MIMETYPES_DB_PATH="$USER_MIMETYPES_DB_PATH"
|
MIMETYPES_DB_PATH="$USER_MIMETYPES_DB_PATH"
|
||||||
@ -102,10 +118,11 @@ if [ ! -d "$icons_root" ]; then
|
|||||||
mkdir -p "$icons_root"
|
mkdir -p "$icons_root"
|
||||||
fi
|
fi
|
||||||
cp -f "$icon_src_path" "$icons_root/"
|
cp -f "$icon_src_path" "$icons_root/"
|
||||||
if [ -f "$icons_root/$icon_name" ]; then
|
if [ $? -eq 0 ]; then
|
||||||
echo "Successfully copied '$icons_root/$icon_name'"
|
echo "Successfully copied '$icons_root/$icon_name'"
|
||||||
else
|
else
|
||||||
echo "FAILED to install '$icons_root/$icon_name'"
|
echo "FAILED to install '$icons_root/$icon_name' from `pwd`"
|
||||||
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ ! -d "$applications_path" ]; then
|
if [ ! -d "$applications_path" ]; then
|
||||||
|
14
readme.md
14
readme.md
@ -224,16 +224,4 @@ only applies to Visual Studio users.)
|
|||||||
|
|
||||||
|
|
||||||
## Developer Notes
|
## Developer Notes
|
||||||
|
See contributing.md
|
||||||
### Regression Tests
|
|
||||||
|
|
||||||
#### Manipulating mesh on failed load
|
|
||||||
- steps to reproduce
|
|
||||||
- File, Open, choose a mesh file such as animal_bat.b3d
|
|
||||||
- File, Open, choose a texture (purposely incorrect input)
|
|
||||||
- incorrect behaviors:
|
|
||||||
- manipulating the loaded scene, such as calling remove()
|
|
||||||
- SEGFAULT
|
|
||||||
- correct behaviors:
|
|
||||||
- Do nothing to the current scene.
|
|
||||||
- Show a message saying that the format is incorrect.
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user