The answer to ?how to port? depends partly on your chosen
OS and the design of your application.

port/*.h constitutes the ?platform abstraction interface?.
You will most certainly have to implement the interfaces in
oc_connectivity.h, oc_clock.h and oc_random.h. You will have
to implement oc_storage.h if you want to test with OCF security
enabled. You might need to implement oc_network_events_mutex.h
(inside your connectivity implementation) if the framework?s event loop
(which calls oc_main_poll()) happens to be running in a preemptible
context. 
You might want to implement oc_signal_main_loop.h (inside your
application) to make the framework?s execution completely event
driven. Please look in apps/{server_linux.c, client_linux.c}
for an example of how its used.

Please look at the Linux implementation under port/linux/* to get
a sense of what needs to be done for implementing the platform abstraction.
If you?re familiar with Zephyr concepts you may look under port/zephyr/*
as 
Well.
Otherwise, all of the application APIs (creating resources,
setting handlers, encoding/parsing payloads, etc.) are the
same across all ports.
port/linux/Makefile should give you an idea of all the included sources,
and compiler flags to use when you configure your build using Riot/Contiki
build systems.

The interfaces have a set contract which your implementation must
abide by and if you?re familiar with the architecture/APIs for your
OS/network stack, it shouldn?t take a very long time to
get something basic up and running.

The project is in active development, and documentation is in the works.
To that end, any questions you ask would help eventually refine and
structure that documentation in a way that?s its useful.

-Kishen.



-
Kishen Maloor
Intel Open Source Technology Center




On 8/25/16, 9:58 AM, "iotivity-dev-bounces at lists.iotivity.org on behalf of
Jack Mingaw" <iotivity-dev-bounces at lists.iotivity.org on behalf of
jack.mingaw at gmail.com> wrote:

>Hi,
>
>Is someone working on the port of iotivity-constrained for RIOT?
>Or is there a wiki explaining which functions iotivity-constrained
>require to work on other OS?
>
>A quick wiki to explain how to port to other OS would be great.
>
>Cheers,
>
>Jack
>_______________________________________________
>iotivity-dev mailing list
>iotivity-dev at lists.iotivity.org
>https://lists.iotivity.org/mailman/listinfo/iotivity-dev

Reply via email to