Commit Graph

42 Commits

Author SHA1 Message Date
Esteban Papp bf0a309a3c copy commands need to be per permutation/per configuraiton (#5183)
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
2021-11-01 15:18:30 -07:00
Esteban Papp de4658b16c Corrects mistake naming the override commands (#5140)
* corrects mistake naming the override commands

Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>

* fixes PR comments

Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
2021-10-29 14:25:13 -07:00
Esteban Papp 595e0e1a83 better wrapping for install in core components
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
2021-10-22 20:38:52 -07:00
Esteban Papp c842fce4bf WIP, need to merge from development
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
2021-10-18 16:13:35 -07:00
SJ 1dbf9157ea Set working directory to the install directory so that cmake can find includes in the engine root's cmake directory. (#4328)
Signed-off-by: amzn-sj <srikkant@amazon.com>
2021-09-27 09:48:59 -07:00
SJ 5ae35810ae 1. Update iOS deployment target to 14 (#4266)
2. Set MacOS default deployment target to 11.

Signed-off-by: amzn-sj <srikkant@amazon.com>
2021-09-22 19:11:20 -07:00
SJ 1f542838bb [Mac] Generate O3DE SDK app bundle that can be notarized and distributed (#4150)
* [Mac] Initial support for building with hardened runtime enabled and code signing the binaries and bundles generated by the CMake install process.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* 1. Move call to ly_post_install_step
2. Entitlements should only be added for executables
3. Change use of CMake exec_program to newer execute_process
4. Remove broken symlinks from embedded Python frameworks
5. Run post install code signing only if hardened runtime is enabled

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Remove unnecessary flag

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Remove unnecessary additional call to condesign python inside a bundle

Signed-off-by: amzn-sj <srikkant@amazon.com>

* 1. Move commonly used install functions for codesigning, copying files, and fixing frameworks to a utility script
2. Remove unnecessary wait in the Editor/AP launchers I added earlier.
3. Codesign 3rd party libraries for distribution.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* 1. Codesigning on 3rd party libs should only happen when hardened runtime is enabled.
2. Change the order of the if blocks in Editor's main_dummy.cpp. This was causing strange notarization issues because it wass too similar to AP's main executable.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Add new line to end of file

Signed-off-by: amzn-sj <srikkant@amazon.com>

* 1. Move architecture specification to PAL_mac cmake file. 2. Codesign failure should be fatal.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Address some PR feedback

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Remove unnecessary comment. Change if to use IN_LIST.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* HOME may not always be defined. Adding alternate POSIX way of determining HOME.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Checking in partial work to get O3DE SDK built as an app bundle. Has a bunch of debug code that needs to be cleaned up.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Remove this and add it back later with fixed casing.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Adding file back with fixed case

Signed-off-by: amzn-sj <srikkant@amazon.com>

* 1. Add entitlements sparingly(only when necessary)
2. Convert entitlements to plist files which we can directly pass to codesign
3. Install python site-packages in the o3de_sdk launcher and then launch the project manger.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* 1. Move hardened runtime check to codesigning functions only. This way, non-hardened runtime install is identical to the former except for codesign. Makes it easy for QA to test internally.
2. Move cmake min version for install to the pre-install steps.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* 1. Remove the dummy launchers for AssetProcessor and Editor
2. Add loader_path to the rpaths of binaries outside an app bundle so that the dynamic loader can load their dependencies if any.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Remove file named main_dummy.cpp

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Add O3DE SDK launcher

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Add missing runtime dependencies to gems

Signed-off-by: amzn-sj <srikkant@amazon.com>

* 1. Update the path to binaries when codesigning to the correct one.
2. Remove some debug messages.
3. Move installed binary path setreg generation to the target install function. This way, we get the correct path to the bundle accounting for different configs and subdirectories.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Add explanatory comments.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* 1. ly_install_add_install_path_setreg cannot be called during install target because the runtime dependencies are already processed by then.
2. The SDK launcher now uses the ProjectManager's bundle setreg to find the path to the installed binaries

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Update path to install relative binaries after merge from dev

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Only one config of the SDK launcher needs to be installed. Preinstall steps should not be run per config, but only once.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* 1. Install python dependencies using the get_python.sh script.
2. Replace any reference to hard-coded package name/version numbers with variables.
3. Add one more missing runtime dependency.
4. Misc. PR feedback.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* 1. Remove the need for setreg files in all tool bundle. Project binary path can be used instead.
2. Move O3DE_SDK_Launcher to Code/Tools/BundleLauncher
3. Add ly_install_run_script() function for install(SCRIPT) functionality.
4. Address some other PR feedback.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Add source permission when installing O3DE_SDK executable.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Rename setreg file to add specialization tag.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Remove LY_BUILD_PERMUTATION that's not needed

Signed-off-by: amzn-sj <srikkant@amazon.com>

* 1. Add BinariesInstallPath.setreg to all our bundles like before. This is now only added during the install process though.
2. Fix path in Install_common.cmake

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Fix comment

Signed-off-by: amzn-sj <srikkant@amazon.com>
2021-09-20 11:13:47 -05:00
Esteban Papp 2c066a81da Adds support for creating an SDK layout from a Monolithic build (#4097)
Adds support for creating an SDK layout from a Monolithic build and have the same install prefix used between monolithic and non-monolithic

Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
2021-09-14 15:11:11 -07:00
Esteban Papp bfdcf74ea0 PR comments/suggestions
Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
2021-09-03 09:10:47 -07:00
Jeremy Ong d15d40fec6 Add Windows PIX runtime support
Signed-off-by: Jeremy Ong <jcong@amazon.com>
2021-08-18 17:33:07 -06:00
SJ 44b053df58 [Mac] Building and running game projects from an SDK (#2943)
* 1. Initial support for loading dylibs outside the bundle.
2. Child processes inherit parent's environment if no environment is explicitly specified(should change to append the parent's environment even if environment variables are explicitly specified).
3. Update some time functions to use system uptime instead of wall clock time when computing elapsed time. This fixes false timeouts when the OS goes to sleep.
4. Increase wait times for AssetBuilders and some Atom tools to connect to the AssetProcessor. This is needed because GateKeeper slows down first time bootup which results in asset processing failures.
With this change we'll be able to run Editor and AssetProcessor from an install on Mac and we will also be able to build and run projects using the installed engine as an SDK.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* 1. Remove debug messages.
2. Fix license
3. Pass parent's environment variables to child processes by default(on Mac).

Signed-off-by: amzn-sj <srikkant@amazon.com>

* 1. Add more detailed comments.2. Use a custom ly_copy for Mac and leave the default as is.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Address some feedback from review

Signed-off-by: amzn-sj <srikkant@amazon.com>
2021-08-10 10:10:37 -05:00
Terry Michaels d9ec159f0e Merge pull request #2235 from aws-lumberyard-dev/daimini/gitflow_210716_o3de
Gitflow 7/16/21 - O3DE
2021-07-16 17:50:44 -05:00
Steve Pham 38261d0800 Shorten copyright headers by splitting into 2 lines (#2213)
* Updated all copyright headers to split the longer original copyright line into 2 shorter lines

Signed-off-by: Steve Pham <spham@amazon.com>
2021-07-16 15:25:48 -07:00
Danilo Aimini e9270e491a Merge branch 'stabilization/2106' into daimini/gitflow_210716_o3de
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

# Conflicts:
#	scripts/build/bootstrap/incremental_build_util.py
2021-07-16 13:21:55 -07:00
SJ 7eeaf7dad5 Generate install layout for Mac (#2144)
* 1. Move call to install(TARGETS...) to its own function to create a platform specific implementation for Mac.
2. Add linker-signed flag to work around cmake install issue.

Signed-off-by: amzn-sj <srikkant@amazon.com>

* Add newline

Signed-off-by: amzn-sj <srikkant@amazon.com>

* 1. Rename function to ly_install_target_override and only call it if it has been implemented.
2. Pass in runtime, archive, and library directory paths as params to clean it up a bit.

Signed-off-by: amzn-sj <srikkant@amazon.com>
2021-07-14 17:32:07 -07:00
Esteban Papp a8435ec982 Issues/2045 3rdParty runtime dependencies copied multiple times (#2058)
* 3rdParty runtime dependencies copied multiple times

Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>

* 3rdParty to update timestamps when uncompressing to provoke copy of runtime dependencies

Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>

* typo fix

Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
2021-07-12 10:23:48 -07:00
Esteban Papp d7c8c0192f SPEC-7503 Mac nightly run asset profile failed to process "Translation/scriptcanvas_en_us.ts" (#1742)
* copy frameworks to output for loose file case

Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>

* patching lrelease

Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>

* Fix for python in loose files and bundles

Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>

* found what the problem is, setting a version just in case

Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>

* fixup_bundle working with Python.framework and codesigning on AssetProcessor.app

Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>

* Trying to ignore other files to solve Jenkins

Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>

* Fix some qt stuff for mac

Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>

* removal of cstemp files to prevent signature failures

Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>

* Updating Qt with fixes to solve some qt framework issues with include paths

Signed-off-by: Esteban Papp <81431996+amznestebanpapp@users.noreply.github.com>
2021-07-08 17:20:20 -07:00
Steve Pham b4a2edec6a Final update copyright headers to reference license files at the repo root (#1693)
* Final update copyright headers to reference license files at the repo root

Signed-off-by: spham <spham@amazon.com>

* Fix copyright validator unit tests to support the stale O3DE header scenario

Signed-off-by: spham <spham@amazon.com>
2021-06-30 19:51:55 -07:00
Steve Pham 70042fcdcd O3DE Copyright Updates for Linux Foundation (#1504) 2021-06-23 10:55:22 -07:00
Esteban Papp bfd266db8f LYN-4659 OSX: Prebuilt Editor and Asset Processor fail to launch (#1446)
* LYN-4657 OSX: Building AutomatedTesting project fails

* forgot this file

* fixing lrelease patching in mac/windows

* reverting change and disabling warning, the intention of the test is to compare to unitialized values

* Fix for dxc

* no need to disable the warning, just remove the const

* missing dependency to EditorCommon
2021-06-21 18:24:29 -07:00
Esteban Papp c02345fd71 LYN-4657 OSX: Building AutomatedTesting project fails (#1436)
* LYN-4657 OSX: Building AutomatedTesting project fails

* forgot this file
2021-06-18 11:57:37 -07:00
Esteban Papp 5e64586030 Handle a bug where gp_resolve_item picks up a header file instead of the binary for qt frameworks 2021-06-16 13:39:31 -07:00
pappeste daacd25fc9 change STREQUAL to cmake_path(COMPARE 2021-06-15 19:24:13 -07:00
Esteban Papp 1121299efc Set policy to avoid warnings on runtime dependencies 2021-06-15 18:58:23 -07:00
Esteban Papp 411bbc8e2f removed the copy of bundles since fixup_bundle does a better job 2021-06-15 17:33:33 -07:00
Esteban Papp 310f1b79dd plugins should be handled by fixup_bundle 2021-06-15 17:33:31 -07:00
Esteban Papp 02dd2138cb improving the check so it doesnt have to be "FALSE" (and can be 0/Off/etc) 2021-06-15 17:33:30 -07:00
Esteban Papp 6e2e187e31 improve incremental 2021-06-15 17:33:28 -07:00
Esteban Papp 4a53d79158 Fixup editor bundle working 2021-06-15 17:33:26 -07:00
Esteban Papp e7d8699293 passing plugin dirs 2021-06-15 17:33:25 -07:00
Esteban Papp b5c7a35442 working with fixup bundle and incrementals of 1s 2021-06-15 17:33:23 -07:00
pappeste 47c3c3a5d0 Solution that wraps qt deploy with cmake 2021-06-15 17:33:20 -07:00
Esteban Papp 9fe06453d3 Initial commit to use qt.conf for all builds 2021-06-15 17:33:18 -07:00
srikappa-amzn bbae6490d9 Enabled LyTestTools trait only for windows and mac 2021-06-10 14:38:14 -07:00
pappeste f1b688f435 Merge branch 'main' into ly-as-sdk/LYN-2948
# Conflicts:
#	CMakeLists.txt
#	Code/Tools/ProjectManager/Source/GemCatalog/GemInfo.h
#	Gems/AtomLyIntegration/AtomViewportDisplayInfo/gem.json
#	cmake/LYWrappers.cmake
#	cmake/SettingsRegistry.cmake
#	scripts/o3de/tests/unit_test_current_project.py
2021-05-27 10:29:19 -07:00
Terry Michaels 9b1be43367 Renamed osx_gl to mac and es3 to android for cache folders (#949) 2021-05-26 19:17:17 -05:00
pappeste ac7024cc06 Making install to be completely a post-processing step. We need this so all dependencies are declared and ready when we generate the target files 2021-05-10 11:19:35 -07:00
Esteban Papp 01f9d7bdc1 SPEC-6565 Cleanup paths to Tools/Python 2021-04-28 13:33:37 -07:00
scottr ca47e6dbbb [cpack_installer] added PAL trait to define if CPack is supported for a platform 2021-04-21 13:53:00 -07:00
alexpete 8469c9ca0a Integrating github/staging through commit 5f214be 2021-04-13 17:18:57 -07:00
alexpete 75dc720198 Integrating latest 47acbe8 2021-03-25 13:57:57 -07:00
alexpete a10351f38d Initial commit 2021-03-08 14:30:57 -08:00