Skip to content

Commit a8f66c5

Browse files
committed
deploy: 52377e5
0 parents  commit a8f66c5

File tree

952 files changed

+689684
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

952 files changed

+689684
-0
lines changed

.gitignore

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
# http://www.gnu.org/software/automake
2+
3+
Makefile.in
4+
5+
# http://www.gnu.org/software/autoconf
6+
7+
/autom4te.cache
8+
/autoscan.log
9+
/autoscan-*.log
10+
/aclocal.m4
11+
/compile
12+
/config.h.in
13+
/configure
14+
/configure.scan
15+
/depcomp
16+
/install-sh
17+
/missing
18+
/stamp-h1
19+
/doxygen-doc
20+
21+
*.o
22+
*.lo
23+
*.la
24+
COPYING
25+
src/Makefile
26+
tools/*/Makefile
27+
config.h
28+
config.guess
29+
config.log
30+
config.status
31+
config.sub
32+
libtool
33+
ltmain.sh
34+
ar-lib
35+
m4/ltversion.m4
36+
m4/ltsugar.m4
37+
m4/ltoptions.m4
38+
m4/lt~obsolete.m4
39+
m4/libtool.m4
40+
.deps
41+
.libs
42+
*.*~
43+
.idea
44+
45+
libethercat.pc
46+
libethercat.pt
47+
/build/
48+
cmake-build-*
49+
50+
*.cmd
51+
*.o.cmd
52+
*.o.d
53+
*.o
54+
*.mod
55+
*.mod.o
56+
*.mod.c
57+
*.ko
58+
Module.symvers
59+
modules.order
60+
61+
build

.gitmodules

Whitespace-only changes.

.nojekyll

Whitespace-only changes.

AUTHORS

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
Authors of libethercat
2+
See also the files THANKS and ChangeLog
3+
4+
Robert Burger designed and implemented libethercat
5+
Robert Burger:
6+
entire files coe.c, datagram.c, datagram_pool.c, dc.c, ec.c, eeprom.c, foe.c, hw.c, main.c, mbx.c, message_pool.c, slave.c, soe.c, timer.c

CMakeLists.txt

Lines changed: 114 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,114 @@
1+
cmake_minimum_required(VERSION 3.5)
2+
project(libethercat VERSION 0.4.0)
3+
4+
set(ECAT_DEVICE "sock_raw" CACHE STRING "EtherCAT device layer")
5+
6+
include(CheckIncludeFiles)
7+
include(CheckSymbolExists)
8+
include(CheckLibraryExists)
9+
include(ExternalProject)
10+
11+
set(CMAKE_CXX_STANDARD 11)
12+
set(CMAKE_C_STANDARD 11)
13+
14+
set(LIBETHERCAT_STDC_HEADERS 1)
15+
set(LIBETHERCAT_PACKAGE_VERSION "${CMAKE_PROJECT_VERSION}")
16+
set(LIBETHERCAT_VERSION "${CMAKE_PROJECT_VERSION}")
17+
set(LIBETHERCAT_PACKAGE_URL "${CMAKE_PROJECT_HOMEPAGE_URL}")
18+
set(LIBETHERCAT_PACKAGE "${CMAKE_PROJECT_NAME}")
19+
set(LIBETHERCAT_PACKAGE_NAME "${CMAKE_PROJECT_NAME}")
20+
set(LIBETHERCAT_PACKAGE_TARNAME "${CMAKE_PROJECT_NAME}")
21+
set(LIBETHERCAT_PACKAGE_STRING "${CMAKE_PROJECT_NAME} ${CMAKE_PROJECT_VERSION}")
22+
23+
check_include_files("arpa/inet.h" LIBETHERCAT_HAVE_ARPA_INET_H)
24+
check_symbol_exists("clock_gettime" "time.h" LIBETHERCAT_HAVE_CLOCK_GETTIME)
25+
check_include_files("dlfcn.h" LIBETHERCAT_HAVE_DLFCN_H)
26+
check_include_files("fcntl.h" LIBETHERCAT_HAVE_FCNTL_H)
27+
check_include_files("inttypes.h" LIBETHERCAT_HAVE_INTTYPES_H)
28+
find_library(HAS_RT_RAW rt)
29+
if(HAS_RT_RAW)
30+
SET(LIBETHERCAT_HAVE_LIBRT 1)
31+
endif()
32+
check_include_files("limits.h" LIBETHERCAT_HAVE_LIMITS_H)
33+
check_symbol_exists("malloc" "stdlib.h" LIBETHERCAT_HAVE_MALLOC)
34+
check_include_files("memory.h" LIBETHERCAT_HAVE_MEMORY_H)
35+
check_symbol_exists("memset" "string.h" LIBETHERCAT_HAVE_MALLOC)
36+
check_include_files("net/bpf.h" LIBETHERCAT_HAVE_NET_BPF_H)
37+
check_include_files("net/if.h" LIBETHERCAT_HAVE_NET_IF_H)
38+
check_include_files("pthread.h" LIBETHERCAT_HAVE_PTHREAD)
39+
list(APPEND CMAKE_REQUIRED_DEFINITIONS -D_GNU_SOURCE)
40+
check_symbol_exists("pthread_setaffinity_np" "pthread.h" LIBETHERCAT_HAVE_PTHREAD_SETAFFINITY_NP)
41+
check_symbol_exists("realloc" "stdlib.h" LIBETHERCAT_HAVE_REALLOC)
42+
check_symbol_exists("socket" "sys/socket.h" LIBETHERCAT_HAVE_SOCKET)
43+
check_include_files("stdint.h" LIBETHERCAT_HAVE_STDINT_H)
44+
check_include_files("stdlib.h" LIBETHERCAT_HAVE_STDLIB_H)
45+
check_symbol_exists("strdup" "string.h" LIBETHERCAT_HAVE_STRDUP)
46+
check_symbol_exists("strerror" "string.h" LIBETHERCAT_HAVE_STRERROR)
47+
check_include_files("strings.h" LIBETHERCAT_HAVE_STRINGS_H)
48+
check_include_files("string.h" LIBETHERCAT_HAVE_STRING_H)
49+
check_symbol_exists("strndup" "string.h" LIBETHERCAT_HAVE_STRNDUP)
50+
check_include_files("sys/ioctl.h" LIBETHERCAT_HAVE_SYS_IOCTL_H)
51+
check_include_files("sys/socket.h" LIBETHERCAT_HAVE_SYS_SOCKET_H)
52+
check_include_files("sys/stat.h" LIBETHERCAT_HAVE_SYS_STAT_H)
53+
check_include_files("sys/time.h" LIBETHERCAT_HAVE_SYS_TIME_H)
54+
check_include_files("sys/types.h" LIBETHERCAT_HAVE_SYS_TYPES_H)
55+
check_include_files("unistd.h" LIBETHERCAT_HAVE_UNISTD_H)
56+
57+
find_package(libosal REQUIRED)
58+
find_package (Threads REQUIRED)
59+
60+
include_directories(${libosal_INCLUDE_DIRS} include)
61+
link_directories(${libosal_LIB_DIR})
62+
63+
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/cmake/cmake_config.h.in ${CMAKE_CURRENT_SOURCE_DIR}/include/libethercat/config.h)
64+
65+
66+
set(SRC_ETHERCAT
67+
src/async_loop.c
68+
src/coe.c
69+
src/coe_master.c
70+
src/datagram.c
71+
src/dc.c
72+
src/ec.c
73+
src/eeprom.c
74+
src/eoe.c
75+
src/foe.c
76+
src/hw.c
77+
src/idx.c
78+
src/mbx.c
79+
src/mii.c
80+
src/pool.c
81+
src/slave.c
82+
src/soe.c)
83+
84+
if (${ECAT_DEVICE} STREQUAL "sock_raw")
85+
set(SRC_HW_LAYER src/hw_sock_raw.c)
86+
add_compile_definitions(LIBETHERCAT_BUILD_DEVICE_SOCK_RAW_LEGACY)
87+
elseif (${ECAT_DEVICE} STREQUAL "sock_raw_mmaped")
88+
set(SRC_HW_LAYER src/hw_file.c)
89+
add_compile_definitions(LIBETHERCAT_BUILD_DEVICE_SOCK_RAW_MMAPED)
90+
elseif (${ECAT_DEVICE} STREQUAL "file")
91+
set(SRC_HW_LAYER src/hw_file.c)
92+
add_compile_definitions(LIBETHERCAT_BUILD_DEVICE_FILE)
93+
elseif (${ECAT_DEVICE} STREQUAL "pikeos")
94+
set(SRC_HW_LAYER src/hw_pikeos.c)
95+
add_compile_definitions(LIBETHERCAT_BUILD_DEVICE_PIKEOS)
96+
elseif (${ECAT_DEVICE} STREQUAL "bpf")
97+
set(SRC_HW_LAYER src/hw_bpf.c)
98+
add_compile_definitions(LIBETHERCAT_BUILD_DEVICE_BPD)
99+
endif()
100+
101+
# LIBS
102+
add_library(ethercat ${SRC_ETHERCAT} ${SRC_HW_LAYER})
103+
target_link_libraries (ethercat ${CMAKE_THREAD_LIBS_INIT} ${libosal_LIBS})
104+
105+
# TOOLS
106+
add_executable(eepromtool tools/eepromtool/eepromtool.c)
107+
target_link_libraries (eepromtool ethercat ${libosal_LIBS})
108+
109+
add_executable(ethercatdiag tools/ethercatdiag/ethercatdiag.c)
110+
target_link_libraries (ethercatdiag ethercat ${libosal_LIBS})
111+
112+
add_executable(example_with_dc tools/example_with_dc/example_with_dc.c)
113+
target_link_libraries (example_with_dc ethercat ${libosal_LIBS} m)
114+

ChangeLog

Whitespace-only changes.

0 commit comments

Comments
 (0)