diff --git a/Docs/Whats_New.md b/Docs/Whats_New.md index 613a4a5c..c50838c4 100644 --- a/Docs/Whats_New.md +++ b/Docs/Whats_New.md @@ -32,6 +32,8 @@ Released 2020/04/05 - Fix issue causing screen captures from swapchain image to deadlock. - Fix memory estimates for iOS 13+. - Broaden conditions for host read sync for image memory barriers on macOS. +- Fix the `make install` build command to overwrite the existing framework in the system + framework library, and update `README.md` to clarify the instructions for using `make install`. - Update the `README.md` and `MoltenVK_Runtime_UserGuide.md` documents to clarify that **MoltenVK** is not a fully-compliant implementation of *Vulkan*. - Support Xcode 11.4. diff --git a/Makefile b/Makefile index fec26424..9954182c 100644 --- a/Makefile +++ b/Makefile @@ -18,8 +18,9 @@ clean: xcodebuild -quiet -project "$(XCODE_PROJ)" -scheme "$(XCODE_SCHEME_BASE)" clean rm -rf Package -#Likely requires 'sudo make install' +#Usually requires 'sudo make install' .PHONY: install install: - /bin/cp -a Package/Latest/MoltenVK/macOS/framework/MoltenVK.framework /Library/Frameworks/ + rm -rf /Library/Frameworks/MoltenVK.framework + cp -a Package/Latest/MoltenVK/macOS/framework/MoltenVK.framework /Library/Frameworks/ diff --git a/README.md b/README.md index e9a815cb..a8f4e844 100644 --- a/README.md +++ b/README.md @@ -181,16 +181,21 @@ in the **_Release_** configuration from the command line. The following `make` t make clean make install + +Running `make all` is the same as running both `make macos` and `make ios`. Running `make` with no +arguments is the same as running `make all`. + The `install` target will copy the most recently built *macOS* `MoltenVK.framework` into the `/Library/Frameworks` folder of your computer. Since `/Library/Frameworks` is protected, -you will generally need to run it as `sudo make install` and enter your password. +you will generally need to run it as `sudo make install` and enter your password. -The default `make` command with no arguments is the same as `make all`. +The `install` target just installs the built framework, it does not first build the framework. +So you will first need to at least run `make macos`, or use *Xcode* to build the framework as described above. The `make` targets all require that *Xcode* is installed on your system. -Building from the command line creates the same `Package` folder structure described above when building -from within *Xcode*. +Building from the command line creates the same `Package` folder structure described above when +building from within *Xcode*. ### Building Within a Larger External Build Environment