Skip to content
This repository has been archived by the owner on Feb 16, 2019. It is now read-only.

Suggested development workflow

Radha Giduthuri edited this page Feb 26, 2018 · 4 revisions

1. Fork your own copy of amdovx-core to your account

Public can access your repository from http://github.com/USER/amdovx-core where USER is your GitHub username.

See GitHub help for more details.

2. Setup your development environment

2.1 Install dependencies

  • CMake 2.8 or newer
  • OpenCL SDK
  • OpenCV 3 SDK (optional)

2.2 Setup local copy of your personal repository, if not already checkout using amdovx-modules Wiki

% cd ~/work/amdovx-modules/deps
% git clone http://github.com/USER/amdovx-core.git
% cd amdovx-core
% git branch -m master-personal
% git remote add amd http://github.com/GPUOpen-ProfessionalCompute-Libraries/amdovx-core.git
% git fetch --all
% git checkout -b master --track amd/master
% git checkout -b develop --track amd/develop
% git pull

2.3 Make sure you can build

% cd ~/work/amdovx-modules/deps
% mkdir build
% cd build
% cmake -DCMAKE_BUILD_TYPE=Release ../amdovx-modules
% make
% ls -l bin
... all the binaries will be in ~/work/build/bin folder ...

3. Start the development work

3.1 Sync personal repository and create a new branch before making any local changes

% cd ~/work/amdovx-modules/deps/amdovx-core
% git checkout develop
% git pull
% git checkout -b your-name-initials/new-branch-name

Here is an example of new branch name: rg/optimized-sobel-kernel

3.2 Make source code changes, build, and unit test

% cd ~/work/amdovx-modules/deps/amdovx-core
% ... edit source files ...
% cd ~/work/build
% make
% ... unit test using binaries in ~/work/build/bin folder ...

3.3 Review your source code changes before commit

% cd ~/work/amdovx-modules/deps/amdovx-core
% git status
... review changes and make sure that only files that you intended to change are listed ...
% git diff
... review every change to source code files ...
% git add list-of-file(s)
% git status
... review changes again and make sure that only files that you intended to change are listed ...
% git commit -m "describe your changes"
% git push
... this will push local commits into your personal repository on github ...
  • select base fork as GPUOpen-ProfessionalCompute-Libraries/amdovx-core
  • select base branch as develop
  • select head fork as USER/amdovx-core
  • select compare branch as your-name-initials/new-branch-name
  • type in the title and comment
  • scroll down and review all code change once more
  • scroll up and click Create pull request button to submit the pull request
  • once the pull request is accepted and merged, checkout develop branch and pull the latest changes
    % cd ~/work/amdovx-modules/deps/amdovx-core
    % git checkout develop
    % git pull
  • now you need to make sure amdovx-modules point to this change in amdovx-core latest commit, by following the instructions in Step 3.3 and Step 3.4 of amdovx-modules development workflow after verifying that all tests pass with current changes in amdovx-core and amdovx-modules repos.

See GitHub help for more details.

Now go back to Step 3.1