diff --git a/.gitignore b/.gitignore index 97657b8..7143601 100644 --- a/.gitignore +++ b/.gitignore @@ -14,6 +14,7 @@ GNUmakefile.in /aclocal.m4 /autom4te.cache/ +/calc-bit-timing/.dirstamp /config.log /config.status /config/autoconf/ @@ -22,7 +23,7 @@ GNUmakefile.in /config/m4/ltsugar.m4 /config/m4/ltversion.m4 /config/m4/lt~obsolete.m4 -/calc-bit-timing/.dirstamp +/isobusfs/.dirstamp /mcp251xfd/.dirstamp /asc2log diff --git a/CMakeLists.txt b/CMakeLists.txt index f0fbd4a..acfeb59 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -91,11 +91,63 @@ add_executable(mcp251xfd-dump if(NOT ANDROID) list(APPEND PROGRAMS ${PROGRAMS_J1939}) - list(APPEND PROGRAMS ${PROGRAMS_ISOBUSFS}) add_library(j1939 STATIC libj1939.c ) + + add_library(isobusfs SHARED + isobusfs/isobusfs_cmn.c + isobusfs/isobusfs_cmn_dh.c + ) + + set(PUBLIC_HEADER_ISOBUSFS + isobusfs/isobusfs_cmn.h + isobusfs/isobusfs_cmn_cm.h + ) + + set_target_properties(isobusfs PROPERTIES + PUBLIC_HEADER "${PUBLIC_HEADER_ISOBUSFS}" + ) + + install(TARGETS isobusfs + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} + PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} + ) + + add_executable(isobusfs-cli + isobusfs/isobusfs_cli.c + isobusfs/isobusfs_cli_cm.c + isobusfs/isobusfs_cli_dh.c + isobusfs/isobusfs_cli_fa.c + isobusfs/isobusfs_cli_selftests.c + isobusfs/isobusfs_cli_int.c + ) + + target_link_libraries(isobusfs-cli + PRIVATE isobusfs + PRIVATE can + ) + + add_executable(isobusfs-srv + isobusfs/isobusfs_srv.c + isobusfs/isobusfs_srv_cm.c + isobusfs/isobusfs_srv_cm_fss.c + isobusfs/isobusfs_srv_dh.c + isobusfs/isobusfs_srv_fa.c + isobusfs/isobusfs_srv_fh.c + isobusfs/isobusfs_srv_vh.c + ) + + target_link_libraries(isobusfs-srv + PRIVATE isobusfs + PRIVATE can + ) + + install(TARGETS + isobusfs-cli + isobusfs-srv + DESTINATION ${CMAKE_INSTALL_BINDIR}) endif() add_library(can STATIC diff --git a/GNUmakefile.am b/GNUmakefile.am index 3ea593b..1f06437 100644 --- a/GNUmakefile.am +++ b/GNUmakefile.am @@ -139,7 +139,6 @@ isobusfs_cli_SOURCES = \ isobusfs_cli_LDADD = \ libisobusfs.la \ - libj1939.la \ libcan.la isobusfs_srv_SOURCES = \ @@ -153,9 +152,12 @@ isobusfs_srv_SOURCES = \ isobusfs_srv_LDADD = \ libisobusfs.la \ - libj1939.la \ libcan.la +EXTRA_DIST += \ + isobusfs/isobusfs_create_test_dirs.sh \ + isobusfs/isobusfs_create_test_file.sh + j1939acd_LDADD = libj1939.la j1939cat_LDADD = libj1939.la j1939spy_LDADD = libj1939.la diff --git a/Makefile b/Makefile index 7d36abe..8e47f0b 100644 --- a/Makefile +++ b/Makefile @@ -144,8 +144,8 @@ j1939cat.o: libj1939.h j1939spy.o: libj1939.h j1939sr.o: libj1939.h testj1939.o: libj1939.h -isobusfs_srv.o: libj1939.h lib.h -isobusfs_c.o: libj1939.h lib.h +isobusfs_srv.o: lib.h +isobusfs_c.o: lib.h canframelen.o: canframelen.h asc2log: asc2log.o lib.o @@ -165,7 +165,7 @@ j1939spy: j1939spy.o libj1939.o j1939sr: j1939sr.o libj1939.o testj1939: testj1939.o libj1939.o -isobusfs-srv: libj1939.o lib.o \ +isobusfs-srv: lib.o \ isobusfs/isobusfs_cmn.o \ isobusfs/isobusfs_srv.o \ isobusfs/isobusfs_srv_cm.o \ @@ -177,7 +177,7 @@ isobusfs-srv: libj1939.o lib.o \ isobusfs/isobusfs_cmn_dh.o $(CC) $(LDFLAGS) $^ $(LDLIBS) -o $@ -isobusfs-cli: libj1939.o lib.o \ +isobusfs-cli: lib.o \ isobusfs/isobusfs_cmn.o \ isobusfs/isobusfs_cli.o \ isobusfs/isobusfs_cli_cm.o \