macOS: rename blender.app to Blender.app

Using a capitalized app name fits the platform guidelines. Since macOS file
systems are case insensitive by default this should not break scripts that
assume lowercase.
This commit is contained in:
Brecht Van Lommel 2019-06-21 18:12:00 +02:00
parent ad4f5092ec
commit c553b790fc
14 changed files with 27 additions and 36 deletions

@ -228,7 +228,7 @@ endif
# Allow passing in own BLENDER_BIN so developers who don't # Allow passing in own BLENDER_BIN so developers who don't
# use the default build path can still use utility helpers. # use the default build path can still use utility helpers.
ifeq ($(OS), Darwin) ifeq ($(OS), Darwin)
BLENDER_BIN?="$(BUILD_DIR)/bin/blender.app/Contents/MacOS/blender" BLENDER_BIN?="$(BUILD_DIR)/bin/Blender.app/Contents/MacOS/Blender"
else else
BLENDER_BIN?="$(BUILD_DIR)/bin/blender" BLENDER_BIN?="$(BUILD_DIR)/bin/blender"
endif endif

@ -17,7 +17,7 @@ $ ./bundle.sh --source <sourcedir> --dmg <dmg> --bundle-id <bundleid> --username
where: where:
<sourcedir> directory where built blender.app is <sourcedir> directory where built Blender.app is
<dmg> location and name of the final disk image <dmg> location and name of the final disk image
<bundleid> id on notarization, you choose (for example org.blender.release) <bundleid> id on notarization, you choose (for example org.blender.release)
<username> your appleid <username> your appleid

@ -4,7 +4,7 @@ Updated as by august 01.2014 - removed deprecated rules and not recommended deep
1. You need to obtain the certificates for blender foundation, they can bw pulled at Apple developer account for BF 1. You need to obtain the certificates for blender foundation, they can bw pulled at Apple developer account for BF
2. Run the following commands from terminal: 2. Run the following commands from terminal:
codesign -s <IDENTITY> <path_to_blender.app> codesign -s <IDENTITY> <path_to_Blender.app>
codesign -s <IDENTITY> <path_to_blenderplayer.app> codesign -s <IDENTITY> <path_to_blenderplayer.app>
@ -12,12 +12,12 @@ codesign -s <IDENTITY> <path_to_blenderplayer.app>
3. Checking: 3. Checking:
codesign -vv <path_to_blenderplayer.app> codesign -vv <path_to_blenderplayer.app>
codesign -vv <path_to_blender.app> codesign -vv <path_to_Blender.app>
The result should be something like: The result should be something like:
<build_path>/blender.app: valid on disk <build_path>/Blender.app: valid on disk
<build_path>/blender.app: satisfies its Designated Requirement <build_path>/Blender.app: satisfies its Designated Requirement
<build_path>/blenderplayer.app: valid on disk <build_path>/blenderplayer.app: valid on disk
<build_path>/blenderplayer.app: satisfies its Designated Requirement <build_path>/blenderplayer.app: satisfies its Designated Requirement

@ -69,8 +69,8 @@ while [[ $# -gt 0 ]]; do
esac esac
done done
if [ ! -d "${SRC_DIR}/blender.app" ]; then if [ ! -d "${SRC_DIR}/Blender.app" ]; then
echo "use --source parameter to set source directory where blender.app can be found" echo "use --source parameter to set source directory where Blender.app can be found"
exit 1 exit 1
fi fi
@ -91,8 +91,8 @@ fi
# let's go. # let's go.
echo -n "Copying blender.app..." echo -n "Copying Blender.app..."
cp -r "${SRC_DIR}/blender.app" "${_tmpdir}/" || exit 1 cp -r "${SRC_DIR}/Blender.app" "${_tmpdir}/" || exit 1
echo echo
# Create the disk image # Create the disk image
@ -130,10 +130,10 @@ if [ ! -z "${C_CERT}" ]; then
# codesigning seems to be thingie. all libs and binaries need to be # codesigning seems to be thingie. all libs and binaries need to be
# signed separately. todo: use some find magic to find those # signed separately. todo: use some find magic to find those
echo -n "Codesigning..." echo -n "Codesigning..."
codesign --timestamp --options runtime --sign "${C_CERT}" "${MOUNT_DIR}/blender.app/Contents/Resources/2.80/python/bin/python3.7m" codesign --timestamp --options runtime --sign "${C_CERT}" "${MOUNT_DIR}/Blender.app/Contents/Resources/2.80/python/bin/python3.7m"
codesign --timestamp --options runtime --sign "${C_CERT}" "${MOUNT_DIR}/blender.app/Contents/Resources/2.80/python/lib/python3.7/site-packages/libextern_draco.dylib" codesign --timestamp --options runtime --sign "${C_CERT}" "${MOUNT_DIR}/Blender.app/Contents/Resources/2.80/python/lib/python3.7/site-packages/libextern_draco.dylib"
codesign --timestamp --options runtime --sign "${C_CERT}" "${MOUNT_DIR}/blender.app/Contents/Resources/lib/libomp.dylib" codesign --timestamp --options runtime --sign "${C_CERT}" "${MOUNT_DIR}/Blender.app/Contents/Resources/lib/libomp.dylib"
codesign --timestamp --options runtime --sign "${C_CERT}" "${MOUNT_DIR}/blender.app" codesign --timestamp --options runtime --sign "${C_CERT}" "${MOUNT_DIR}/Blender.app"
echo echo
else else
echo "No codesigning cert given, skipping..." echo "No codesigning cert given, skipping..."

@ -42,7 +42,7 @@ if not os.path.exists(blender_bin):
if not os.path.exists(blender_bin): if not os.path.exists(blender_bin):
if sys.platform == 'darwin': if sys.platform == 'darwin':
blender_app_path = '/Applications/blender.app/Contents/MacOS/blender' blender_app_path = '/Applications/Blender.app/Contents/MacOS/Blender'
if os.path.exists(blender_app_path): if os.path.exists(blender_app_path):
blender_bin = blender_app_path blender_bin = blender_app_path

@ -18,7 +18,7 @@ if sys.platform == 'darwin':
inkscape_app_path = '/Applications/Inkscape.app/Contents/Resources/script' inkscape_app_path = '/Applications/Inkscape.app/Contents/Resources/script'
if os.path.exists(inkscape_app_path): if os.path.exists(inkscape_app_path):
inkscape_bin = inkscape_app_path inkscape_bin = inkscape_app_path
blender_app_path = '/Applications/blender.app/Contents/MacOS/blender' blender_app_path = '/Applications/Blender.app/Contents/MacOS/Blender'
if os.path.exists(blender_app_path): if os.path.exists(blender_app_path):
blender_bin = blender_app_path blender_bin = blender_app_path

@ -67,7 +67,7 @@ To launch Blender, double-click on Blender.exe.
<b>Linux: </b>Unpack the archive, then run the Blender executable. <b>Linux: </b>Unpack the archive, then run the Blender executable.
</p> </p>
<p class="p4"> <p class="p4">
<b>macOS: </b>The downloaded package includes blender.app. <b>macOS: </b>The downloaded package includes Blender.app.
Optionally copy this to your Applications folder, and add it to the dock by dragging it from there to the dock. Optionally copy this to your Applications folder, and add it to the dock by dragging it from there to the dock.
</p> </p>
<p class="p2"><br></p> <p class="p2"><br></p>

@ -340,7 +340,7 @@ elseif(APPLE)
if(WITH_PYTHON_MODULE) if(WITH_PYTHON_MODULE)
set(TARGETDIR_VER ${BLENDER_VERSION}) set(TARGETDIR_VER ${BLENDER_VERSION})
else() else()
set(TARGETDIR_VER blender.app/Contents/Resources/${BLENDER_VERSION}) set(TARGETDIR_VER Blender.app/Contents/Resources/${BLENDER_VERSION})
endif() endif()
# Skip relinking on cpack / install # Skip relinking on cpack / install
set_target_properties(blender PROPERTIES BUILD_WITH_INSTALL_RPATH true) set_target_properties(blender PROPERTIES BUILD_WITH_INSTALL_RPATH true)
@ -868,6 +868,8 @@ elseif(WIN32)
) )
endif() endif()
elseif(APPLE) elseif(APPLE)
# Uppercase name for app bundle
set_target_properties(blender PROPERTIES OUTPUT_NAME Blender)
# handy install macro to exclude files, we use \$ escape for the "to" # handy install macro to exclude files, we use \$ escape for the "to"
# argument when calling so ${BUILD_TYPE} does not get expanded # argument when calling so ${BUILD_TYPE} does not get expanded
@ -895,7 +897,7 @@ elseif(APPLE)
) )
endmacro() endmacro()
set(OSX_APP_SOURCEDIR ${CMAKE_SOURCE_DIR}/release/darwin/blender.app) set(OSX_APP_SOURCEDIR ${CMAKE_SOURCE_DIR}/release/darwin/Blender.app)
# setup Info.plist # setup Info.plist
execute_process(COMMAND date "+%Y-%m-%d" execute_process(COMMAND date "+%Y-%m-%d"
@ -914,7 +916,7 @@ elseif(APPLE)
# Give the bundle actual creation/modification date # Give the bundle actual creation/modification date
execute_process(COMMAND SetFile -d ${SETFILE_DATE} -m ${SETFILE_DATE} execute_process(COMMAND SetFile -d ${SETFILE_DATE} -m ${SETFILE_DATE}
${EXECUTABLE_OUTPUT_PATH}/blender.app) ${EXECUTABLE_OUTPUT_PATH}/Blender.app)
install( install(
TARGETS blender TARGETS blender
@ -926,25 +928,25 @@ elseif(APPLE)
install( install(
FILES ${OSX_APP_SOURCEDIR}/Contents/PkgInfo FILES ${OSX_APP_SOURCEDIR}/Contents/PkgInfo
DESTINATION blender.app/Contents DESTINATION Blender.app/Contents
) )
install_dir( install_dir(
${OSX_APP_SOURCEDIR}/Contents/Resources ${OSX_APP_SOURCEDIR}/Contents/Resources
blender.app/Contents/ Blender.app/Contents/
) )
if(WITH_OPENMP AND OPENMP_CUSTOM) if(WITH_OPENMP AND OPENMP_CUSTOM)
install( install(
FILES ${LIBDIR}/openmp/lib/libomp.dylib FILES ${LIBDIR}/openmp/lib/libomp.dylib
DESTINATION blender.app/Contents/Resources/lib DESTINATION Blender.app/Contents/Resources/lib
) )
endif() endif()
if(WITH_LLVM AND NOT LLVM_STATIC) if(WITH_LLVM AND NOT LLVM_STATIC)
install( install(
FILES ${LIBDIR}/llvm/lib/libLLVM-3.4.dylib FILES ${LIBDIR}/llvm/lib/libLLVM-3.4.dylib
DESTINATION blender.app/Contents/MacOS DESTINATION Blender.app/Contents/MacOS
) )
endif() endif()

@ -29,19 +29,8 @@ execute_process(COMMAND ${CMAKE_COMMAND} -E make_directory ${TEST_OUT_DIR})
#~ message(FATAL_ERROR "CMake test directory not found!") #~ message(FATAL_ERROR "CMake test directory not found!")
#~ endif() #~ endif()
# all calls to blender use this
if(APPLE)
if(${CMAKE_GENERATOR} MATCHES "Xcode")
set(TEST_BLENDER_EXE ${EXECUTABLE_OUTPUT_PATH}/Debug/blender.app/Contents/MacOS/blender)
else()
set(TEST_BLENDER_EXE ${EXECUTABLE_OUTPUT_PATH}/blender.app/Contents/MacOS/blender)
endif()
else()
set(TEST_BLENDER_EXE ${EXECUTABLE_OUTPUT_PATH}/blender)
endif()
# for testing with valgrind prefix: valgrind --track-origins=yes --error-limit=no # for testing with valgrind prefix: valgrind --track-origins=yes --error-limit=no
set(TEST_BLENDER_EXE ${TEST_BLENDER_EXE} --background -noaudio --factory-startup --env-system-scripts ${CMAKE_SOURCE_DIR}/release/scripts) set(TEST_BLENDER_EXE $<TARGET_FILE:blender> --background -noaudio --factory-startup --env-system-scripts ${CMAKE_SOURCE_DIR}/release/scripts)
# ------------------------------------------------------------------------------ # ------------------------------------------------------------------------------