aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2018-11-16org.yocto.sdk.releng: add project set file for new pluginsChin Huat Ang
Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.sdk.autotools.core: make YP toolchain compatible with upstreamChin Huat Ang
Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.sdk.core: use consistent naming for detected profilesChin Huat Ang
Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.sdk.docker.ui: toggling container mode resets editor valueChin Huat Ang
Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.docker.ui: don't reset value when container mode changesChin Huat Ang
Resetting editor's value whenever container mode is toggled via setContainerMode() is not recommended as the setter might be used in load() method in subclass or composed class. Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.cmake.core: don't resolve cmake executable pathChin Huat Ang
The current approach for resolving cmake executable's absolute path does not work with ContainerCommandLauncher as it is not possible to use java.io.File to test the existence of the executable. Instead we relax or delegate to the underlying command launcher to determined the best way to resolve the executable's absolute path. Alternatively, this can also be done in CMakeMakefileGenerator subclasses. Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.sdk.cmake.core: cosmetic fixChin Huat Ang
Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.sdk.docker.ui: relax container path validationChin Huat Ang
Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.sdk.ui: streamline profile decoratorChin Huat Ang
Auto-detected profiles will include target prefix as part of the naming scheme, so remove target prefix from the profile decorator to eliminate redundancy. Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.sdk.cmake.core: improve builder error messageChin Huat Ang
Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16Streamline YoctoProjectProfilePreferencesChin Huat Ang
Environment variables should now be obtained via YoctoProjectEnvironmentSetupScript instead. Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.sdk.core: refactor environment setup script handlingChin Huat Ang
Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.sdk.core: auto-detect build tree toolchainChin Huat Ang
Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.sdk.core: auto-detect SDK installationChin Huat Ang
Add experimental feature which detects SDK installation for Linux host. Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.sdk.docker.ui: emphasize profile managementChin Huat Ang
Tweak property page and preference page to group profile related buttons with the profile selection combo box, this emphasizes the relationship between the combo box and the buttons such that the buttons' roles for managing the profiles are more intuitive. Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.sdk.docker.ui: manage profiles in project property pageChin Huat Ang
Add a button in project property page for managing workspace profiles in case no workspace profiles are selectable in project property page. This button will open the Yocto Project workspace preference page which then makes makes it possible to add, remove or rename workspace profiles. Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.sdk.ui: show property page when nature is enabledChin Huat Ang
Show Yocto Project project property page when the project is being configured with Yocto Project nature. This allows the user to configure preferences such as selecting a profile to use so that the validity of the initial state of the preferences is decided by the user. Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.sdk.cmake.core: validate project preferenceChin Huat Ang
CMake projects configured to use Yocto Project CMake Builder will their preferences checked by the builder to make sure the preferences are valid, otherwise the builder will refuse to generate Makefile and instead throw an exception highlighting the problematic preference. Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.ui: fix IndexOutOfBoundsExceptionChin Huat Ang
When the combo box is initialized with empty label name and data value pairs, always return null if the selected data value is requested. Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.sdk.ui: clean upChin Huat Ang
Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.sdk.docker.ui: fix broken externalized stringsChin Huat Ang
Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16Bump new plugins' version to 1.4.1Chin Huat Ang
Update all new plugins' version in manifest file to 1.0.0 to 1.4.1 to resolve the following maven build issue: [ERROR] Failed to execute goal org.eclipse.tycho:tycho-packaging-plugin:1.0.0:validate-version (default-validate-version) on project org.yocto.cmake.core: Unqualified OSGi version 1.0.0.qualifier must match unqualified Maven version 1.4.1-SNAPSHOT for SNAPSHOT builds -> [Help 1] Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16Build new plugins using mavenChin Huat Ang
Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.sdk.docker.ui: add Yocto Project CROPS-aware UIChin Huat Ang
This plugin provides the common Yocto Project UI which supports both host or container mode development. This requires most of the underlying field editors, especially all the file and directory field editors, to support host and container mode. In other words, this requires Yocto Project preference page and project property page to have inherit knowledge of container mode, despite it is an optional mode. Field editors which are specific to Yocto Project preferences are also provided, namely YoctoProjectProfileComboFieldEditor which encapsulates most of the profile creation, renaming and removal logistics, while the YoctoProjectProfileComposedEditor is a enchilada of field editors are tightly bound to YoctoProjectProfilePreference. The new workspace preference page and project property page have been reworked based on JFace framework, where the JFace MVC design pattern allows cleaner separation of UI-related states by using the field editors, and the data models are directly backed by the preference stores, with the remaining UI-model stateful controls being handled by the preference or property pages. Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.sdk.docker.launcher: add CROPS-aware container command launcherChin Huat Ang
This plugin registers YoctoCropsContainerCommandLauncherFactory which has higher priority than the default factory. This factory only applies to projects which have the new Yocto Project nature, otherwise it will return null whenever command launcher for a given project is requested, this allows the CommandLauncherManager to fallback to lower priority default factory. YoctoCropsContainerCommandLauncher extends the forked ContainerCommandLauncher to always not set UID. Note that this has only been tested on CROPS containers. YoctoCropsContainerLauncher extends the forked ContainerLauncher to reformat the command and arguments as the container entrypoint's arguments. This requires YoctoCropsContainerLauncher to have explicit knowledge of the entry point used by the container and the type of flags supported, as well as how to remap the working directory, command and arguments for the entry point's flags. Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.docker.ui: add generic container-related UIChin Huat Ang
This plugin provides dialogs and field editors for selecting files or directories as seen within containers. In addition, the field editors also provides ability to fallback to support browsing for host files or directories by setting setContainerMode(false). Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.docker.launcher: fork container command launcherChin Huat Ang
Fork Docker Tooling's ContainerLauncher to tweak runCommand() method to include UID argument instead of inferring UID from the project's directory ownership. As a side-effect, CDT's ContainerCommandLauncher and factory which depend on concrete class ContainerLauncher also needs to be forked. Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.sdk.autotools.core: add Yocto Project GNU Autotools toolchainChin Huat Ang
The Yocto Project GNU Autotools toolchain definition extends the generic GNU Autotools toolchain definition to include Yocto Project specific extensions, i.e. projects configured to use the Yocto Project GNU Autotools toolchain will have the necessary build environment variables automatically initialized from the environment setup script based on the selected cross compilation profile. Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.sdk.cmake.core: add Yocto Project CMake toolchainChin Huat Ang
The Yocto Project CMake toolchain definition extends the generic CMake toolchain definition to include Yocto Project specific extensions, i.e. projects configured to use the Yocto Project CMake toolchain will have necessary build environment variables automatically initialized from the environment setup script based on the selected cross compilation profile. Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.sdk.ui: add Yocto Project preference dialogs and field editorsChin Huat Ang
This plugin provides generic Yocto Project UI such as menu for enabling or disabling Yocto Project nature, and a label decorator which displays useful information about the selected cross compilation profile for a given project with Yocto Project nature associated. Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.sdk.core: add Yocto Project nature and preferencesChin Huat Ang
This plugin is a streamlined version of org.yocto.sdk.ide, focusing on core Yocto Project functionalities which should be applicable to any C/C++ projects. The new Yocto Project nature is the primary activation switch for all Yocto Project related extensions, e.g. new menus, workspace preference page and project property page. All Yocto Project preferences have been redesigned with more simplified data model classes which encapsulates the backing preference stores each with their respective scopes. In other words: * YoctoProjectProfilePreferences is the primary data model which encapsulates all Yocto Project related preference, which can be either backed by project or workspace preference stores. In addition, this class also provides convenient methods for casting the preference string values back to the respective data types (i.e. only getters are provided, setters are not required as the preferences are only writable by JFace field editors which will serialize the data objects to string), determining the target triplet, getting the location of environment setup script as well as the environment variables. * YoctoProjectWorkspacePreferences is always backed by a workspace preference store which keeps track of all available workspace profile preferences by name. It also provides the ability to create, rename or remove profile preferences, where each profile preference will be backed by its own workspace-scoped preference store. * YoctoProjectProjectPreferences is always backed by a project preference store which also doubles as a project profile preference store only when project specific settings is enabled, otherwise the profile preferences stored in the project preference will not be readable nor writable, and instead the selected workspace profile preference will be returned for read-only access. Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.cmake.ui: add CMake build consoleChin Huat Ang
The CMake build console provides useful information during the Makefile build system generation process. Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.cmake.core: expose CMakeMakefileGenerator as APIChin Huat Ang
Move CMakeMakefileGenerator to a non-internal and exported package as it provides target agnostic Makefile build system generation base features which is intended for reuse, e.g. extended to support cross compilation. Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.cmake.core: fix NLS missing message warningsChin Huat Ang
Move Messages class to a non-internal and exported package so that static initialization via OSGi NLS won't complain about missing externalized strings. Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.cmake.core: add generic cmake build system supportChin Huat Ang
This plugin is a reimplementation of org.yocto.cmake.managedbuilder which provides Managed Build System CMake project support. Unlike prior implementation, the new CMake project works with host (native) CMake toolchain, and is intended for extension to support cross compilation. The CMake project template is reused from org.yocto.cmake.managedbuilder, while a new generic CMake toolchain definition is provided which should works with any host CMake toolchain out of the box, and yet this toolchain definition can be extended to support arbitrary CMake toolchain installation. Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-11-16org.yocto.ui: add new or extended JFace field editorsChin Huat Ang
This plugin extends JFace field editors to improve usability or resolve known issues: * BooleanFieldEditor2 extends JFace BooleanFieldEditor to include a new method for getting the checkbox control. * StringFieldEditor2 extends JFace StringFieldEditor to workaround doStore() method issue. * ComboFieldEditor2 is forked from JFace ComboFieldEditor to include new method for getting data based on the selected combo box entry. * RadioFieldEditor is a simplified reimplemention of RadioGroupFieldEditor which does not create radio button within a group. Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-10-11setup.sh: use Photon update site URLChin Huat Ang
Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com> Signed-off-by: Tim Orling <timothy.t.orling@linux.intel.com>
2018-10-11setup.sh: CDT: 9.5.0 -> 9.5.2Chin Huat Ang
Install the latest CDT release from update site. Also install Eclipse PTP Remote Services required by CDT from simrel site as p2 does not automatically resolve dependencies across update sites. Instead of removing the instructions for installing the prior version of CDT from simrel, those lines are commented out to serve as a placeholder for installing future simrel releases. Additional documentation on preferring features (other than CDT) from simrel over their respective update sites is also added. Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com> Signed-off-by: Tim Orling <timothy.t.orling@linux.intel.com>
2018-10-11setup.sh: Eclipse: Oxygen.3a -> PhotonChin Huat Ang
Upgrade all features to the latest versions in Photon simrel. Note that the Eclipse 2.0 Style Plugin Support feature is no longer available in Photon simrel. TM Terminal View Remote System Explorer add-in is no longer installable from Photon simrel, instead it is now installed from TM Terminal's update site. Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com> Signed-off-by: Tim Orling <timothy.t.orling@linux.intel.com>
2018-09-05scripts/setup.sh: Update to Oxygen.3aTim Orling
The Oxygen.3a release was mostly to fix Java 9 support, but it is the latest Oxygen version which will be downloaded by clicking through: http://www.eclipse.org/ Download > Download Packages > More Downloads - Eclipse Oxygen(4.7) > Eclipse IDE for C/C++ Developers Or http://www.eclipse.org/downloads/packages/release/oxygen/3a > Eclipse IDE for C/C++ Developers Signed-off-by: Tim Orling <timothy.t.orling@linux.intel.com>
2018-09-05scripts/setup.sh: use YP full eclipse mirrorTim Orling
Rather than using the manually updated snapshot mirror directories, use the YP full Eclipse mirror. Signed-off-by: Tim Orling <timothy.t.orling@linux.intel.com>
2018-09-05setup.sh: clean upChin Huat Ang
Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com> Signed-off-by: Tim Orling <timothy.t.orling@linux.intel.com>
2018-09-05setup.sh: update to Oxygen.3 featuresChin Huat Ang
Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com> Signed-off-by: Tim Orling <timothy.t.orling@linux.intel.com>
2018-09-05setup.sh: Eclipse: Oxygen.2 -> Oxygen.3Chin Huat Ang
Eclipse SDK Oxygen.2 download link no longer works, update to Oxygen.3 instead. Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com> Signed-off-by: Tim Orling <timothy.t.orling@linux.intel.com>
2018-09-05setup.sh: clean up older releaseChin Huat Ang
Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com> Signed-off-by: Tim Orling <timothy.t.orling@linux.intel.com>
2018-09-05o.y.cmake.managedbuilder: fix broken cmake toolchain fileChin Huat Ang
The generated toolchain.cmake file was misconfigured to build using toolchain from OECORE_TARGET_SYSROOT which led to spurious cmake error claiming the toolchain is broken. The solution is to make sure cmake never looks for programs in OECORE_TARGET_SYSROOT, also CMAKE_FIND_ROOT_PATH now only contains OECORE_TARGET_SYSROOT so that only target's libraries and include files are used. [YOCTO #12714] [YOCTO #12483] Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-09-05o.y.cmake.managedbuilder: resolve absolute path to cmake executableChin Huat Ang
The cmake project appears to always use host cmake unless an absolute path to the executable in SDK or build directory is specified in project settings, this is likely caused by a misunderstanding in how the Java ProcessBuilder works, where setting the PATH environment variable to include path to SDK or build directory would not help to resolve the location of the cmake executable. With this fix, the cmake process would be executed using absolute path resolved from the latest value PATH environment variable, and in the event that SDK or build directory paths are not set, this would fallback to use the original PATH value to resolve host cmake. Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>
2018-08-09eclipse-yocto.target: use latest org.apache.commons.compress from OrbitChin Huat Ang
Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com> Signed-off-by: Tim Orling <timothy.t.orling@linux.intel.com>
2018-08-09eclipse-yocto.target: Oxygen -> PhotonChin Huat Ang
Upgrade all features to Photon release, namely: * Eclipse: 4.7.3 -> 4.8.0 * CDT: 9.4.0 -> 9.5.2 * Docker Tooling: 3.2.0 -> 4.0.0 Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com> Signed-off-by: Tim Orling <timothy.t.orling@linux.intel.com>
2018-07-11eclipse-yocto-dev.target: add target platformChin Huat Ang
This target platform includes the latest CDT and Docker Tooling nightly builds regardless of the version. It is useful for tracking contributions or bug fixes submitted to CDT, Docker Tooling or any projects which eclipse-yocto might depend on. Note that this target platform currently does not specify any specific version of CDT or Docker Tooling features required, as such every time when it is reloaded, it will always resolve to the latest nightly builds. Signed-off-by: Chin Huat Ang <chin.huat.ang@intel.com>