Looks good, only some grammar suggestions. > -----Original Message----- > From: Beignet [mailto:beignet-boun...@lists.freedesktop.org] On Behalf Of > Yang Rong > Sent: Friday, January 20, 2017 5:41 PM > To: beignet@lists.freedesktop.org > Cc: Yang, Rong R <rong.r.y...@intel.com> > Subject: [Beignet] [PATCH] Doc: add android build howto. > > Signed-off-by: Yang Rong <rong.r.y...@intel.com> > --- > docs/Beignet.mdwn | 1 + > docs/howto/android-build-howto.mdwn | 63 > +++++++++++++++++++++++++++++++++++++ > 2 files changed, 64 insertions(+) > create mode 100644 docs/howto/android-build-howto.mdwn > > diff --git a/docs/Beignet.mdwn b/docs/Beignet.mdwn > index b0fea71..655059e 100644 > --- a/docs/Beignet.mdwn > +++ b/docs/Beignet.mdwn > @@ -285,6 +285,7 @@ Documents for OpenCL application developers > - [[V4l2 Buffer Sharing|Beignet/howto/v4l2-buffer-sharing-howto]] > - [[Video Motion Estimation|Beignet/howto/video-motion-estimation-howto]] > - [[Stand Alone Unit Test|Beignet/howto/stand-alone-utest-howto]] > +- [[Android build|Beignet/android-build-howto]] > > The wiki URL is as below: > > [http://www.freedesktop.org/wiki/Software/Beignet/](http://www.freedeskto > p.org/wiki/Software/Beignet/) > diff --git a/docs/howto/android-build-howto.mdwn b/docs/howto/android- > build-howto.mdwn > new file mode 100644 > index 0000000..0c9d465 > --- /dev/null > +++ b/docs/howto/android-build-howto.mdwn > @@ -0,0 +1,63 @@ > +Android build HowTo > +=================== > + > +Beignet supports android system, but there are several android versions, > Beignet > +only provide the android 5.1.1 (lollipop)'s build files. This document > describes > +how to build and install the Beignet driver and utests to android devices. > +Please notice that, Beignet disable PCH in the android, so the kernel's > compiling > is very > +slow, we recommend used cross-compiler and OpenCL's binary program in > android. > + > +Prerequisite > +------------- > +You must have the android's source code and have built the android system > success. successfully > + > +Build Beignet > +------------- > + > +Beignet is just similar as other android native libraries, the steps as > below. "are as below" > + > +- Add the Beignet to android source code tree. > + Put Beignet's source code to the appropriate directory under android source > code, > + such as vendor/intel/ufo or external. > + > +- Set up android's environment and choose a target > + Run source build/envsetup.sh and lunch. Launch? > + > +- Build clang target library. > + Android only build clang for host, Beignet depends on target libclang.so. > Beignet provide > + lollipop's patch for clang (version 3.5) to build target libclang.so, you > can > download the > + patch from (). Change directory to external/clang, run `git apply` to > apply the ulr missing? > patch, and > + run `mm` to build libclang.so. > + > +- Change to Beignet's directory, and make. > + Run `mm -B`, if failed first time, run `mm -B` again. When finish, the > Beignet > libraries and > + utests binary would generated in the out/target/product/<target>/system/ "be generated" > + > +Install Beignet to target device > +-------------------------------- > +To install Beignet, you need `adb push` all Beignet and clang libraries to > the > device's correspondent > +directory, include following files: > +out/target/product/<target>/system/lib64/libclang.so to /system/lib64/ > +out/target/product/<target>/system/lib64/libcl.so to /system/lib64/ > +out/target/product/<target>/system/lib64/libgbeinterp.so to /system/lib64/ > +out/target/product/<target>/system/lib64/libgbe.so to /system/lib64/ > +out/target/product/<target>/system/lib/libclang.so to /system/lib/ > +out/target/product/<target>/system/lib/libcl.so to /system/lib/ > +out/target/product/<target>/system/lib/libgbeinterp.so to /system/lib/ > +out/target/product/<target>/system/lib/libgbe.so to /system/lib/ > + > +Additional, the bitcode file and ocl head file also need copy to device, as Additionally
> following: > +out/target/product/<target>/gen/SHARED_LIBRARIES/libgbe_intermediates/b > eignet.bc to /system/lib/ocl/ > +out/target/product/<target>/gen/SHARED_LIBRARIES/libgbe_intermediates/li > bocl/include/ to /system/lib/ocl/include/ > + > +If your application is linked to libOpenCL.so, you also need create a soft > link `ln > -s libcl.so libOpenCL.so`. > + > +If you want to run utests in the device, you all need copy the utests files: > +out/target/product/<target>/system/bin/utest_run-x86 to > /system/bin/utest_run-x86 > +out/target/product/<target>/system/bin/utest_run-x86_64 to > /system/bin/utest_run-x86_64 > +out/target/product/<target>/system/lib64/libutests.so to /system/lib64/ > +out/target/product/<target>/system/lib/libcl.so to /system/lib/ > + > +You also need copy the utests' kernels to the device: > +<Beignet path>/kernels/ to /system/lib/ocl/ > +and set the environment variable > "OCL_KERNEL_PATH=/system/lib/ocl/kernels/"before run utests. > -- > 2.1.4 > > _______________________________________________ > Beignet mailing list > Beignet@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/beignet _______________________________________________ Beignet mailing list Beignet@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/beignet