revise build scripts and packaging 27/241927/1
authorYoungjae Shin <yj99.shin@samsung.com>
Fri, 21 Aug 2020 01:51:40 +0000 (10:51 +0900)
committerYoungjae Shin <yj99.shin@samsung.com>
Fri, 21 Aug 2020 01:51:49 +0000 (10:51 +0900)
Change-Id: Id248941a4291a67d34b539ec04a4ecab39fc48cc

22 files changed:
CMakeLists.txt
LICENSE.APLv2
dbus-interface/CMakeLists.txt
include/stc-firewall.h
include/stc-gdbus.h
manager/CMakeLists.txt
manager/database/CMakeLists.txt [new file with mode: 0644]
manager/helper/helper-cgroup.c
manager/helper/helper-file.c
manager/stcmgr.c
misc/CMakeLists.txt
packaging/stc-manager.spec
plugin/CMakeLists.txt
plugin/appstatus/CMakeLists.txt
plugin/exception/CMakeLists.txt
plugin/firewall/CMakeLists.txt
plugin/monitor/CMakeLists.txt
plugin/pcap/CMakeLists.txt
plugin/procfs/CMakeLists.txt
plugin/tether/CMakeLists.txt
res/CMakeLists.txt [new file with mode: 0644]
tests/CMakeLists.txt

index 011c4bc185518e498e9d2286a00af5a8acbbdbd1..15da9ef83fef4a38bed507b4d9740b3d8783d8fe 100644 (file)
@@ -1,17 +1,31 @@
-CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
-PROJECT(stc-manager C CXX)
-SET(PACKAGE ${PROJECT_NAME})
-SET(INTERFACES "${CMAKE_SOURCE_DIR}/dbus-interface")
-SET(PREFIX ${CMAKE_INSTALL_PREFIX})
-SET(LIBDIR ${PREFIX}/${LIB_PATH})
+CMAKE_MINIMUM_REQUIRED(VERSION 3.9)
+PROJECT(stc-manager)
 
-SET(DATA_DIR   ${CMAKE_SOURCE_DIR}/res)
+INCLUDE(FindPkgConfig)
+INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include)
+INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/dbus-interface)
+
+INCLUDE_DIRECTORIES("${CMAKE_SOURCE_DIR}/manager/helper")
+
+SET(EXTRA_FLAGS "-Wall -Werror -fvisibility=hidden")
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_FLAGS}")
+SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_FLAGS} -std=c++11")
+SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -pie")
+
+SET(DBUS_IFACE "${CMAKE_SOURCE_DIR}/dbus-interface")
+SET(DATA_DIR ${CMAKE_SOURCE_DIR}/res)
+SET(DB_OBJ "STC_DB")
+
+ADD_DEFINITIONS("-DUSE_DLOG")
+IF(BUILD_GCOV)
+       ADD_DEFINITIONS("-DTIZEN_TEST_GCOV")
+ENDIF(BUILD_GCOV)
 
 ADD_SUBDIRECTORY(dbus-interface)
 ADD_SUBDIRECTORY(manager)
 ADD_SUBDIRECTORY(plugin)
 ADD_SUBDIRECTORY(misc)
-
+ADD_SUBDIRECTORY(res)
 IF(BUILD_GTESTS)
        ADD_SUBDIRECTORY(tests)
 ENDIF(BUILD_GTESTS)
index d645695673349e3947e8e5ae42332d0ac3164cd7..8221aa1551f0d14863f5a4c59bb57ace9f8566b3 100644 (file)
@@ -1,3 +1,4 @@
+Copyright (c) 2016-2020 Samsung Electronics Co., Ltd. All rights reserved.
 
                                  Apache License
                            Version 2.0, January 2004
index dc26fa171be9ab691fd0ffd26293e3cf57191487..d1e413594cac231d414cb1e841770cd2f0e97bf6 100644 (file)
@@ -1,16 +1,17 @@
+FILE(GLOB DBUS_FILES *.xml)
+
+FIND_PROGRAM(GDBUS_CODEGEN NAMES gdbus-codegen)
+
 ADD_CUSTOM_COMMAND(
-       WORKING_DIRECTORY
-       OUTPUT dbus
-       COMMAND gdbus-codegen --interface-prefix net.stc.
-                       --generate-c-code generated-code
+       OUTPUT stc-generated-dbus.c
+       COMMAND ${GDBUS_CODEGEN} --interface-prefix net.stc.
+                       --generate-c-code stc-generated-dbus
                        --c-namespace Stc
                        --c-generate-object-manager
                        --generate-docbook generated-code-docs
-                       ${INTERFACES}/stcmanager-iface-manager.xml
-                       ${INTERFACES}/stcmanager-iface-restriction.xml
-                       ${INTERFACES}/stcmanager-iface-statistics.xml
-                       ${INTERFACES}/stcmanager-iface-firewall.xml
-                       ${INTERFACES}/stcmanager-iface-pcap.xml
-                       COMMENT "Generating GDBus .c/.h")
+                       ${DBUS_FILES}
+       DEPENDS ${DBUS_FILES}
+       COMMENT "Generating GDBus .c/.h"
+)
 
-ADD_CUSTOM_TARGET(GENERATED_DBUS_CODE DEPENDS dbus)
+ADD_CUSTOM_TARGET(GENERATED_DBUS_CODE DEPENDS stc-generated-dbus.c)
index ee40f2760f7f3a8ec6dd0582db10e7c2a14d7f81..f813d7ace2551620adb043590073d4218fc7930a 100644 (file)
@@ -20,7 +20,7 @@
 #include <glib.h>
 #include "stc.h"
 #include "stc-gdbus.h"
-#include "table-firewall.h"
+#include "db/table-firewall.h"
 
 /*****************************************************************************
  * Macros and Typedefs
index 141742c8290d094cb276ffa988f2f6937472b7a8..6715b268126ed0db5480f61bc7bc35c09fe1f742 100644 (file)
@@ -18,7 +18,7 @@
 #define __STC_MANAGER_GDBUS_H__
 
 #include "stc.h"
-#include "generated-code.h"
+#include "stc-generated-dbus.h"
 
 #define STC_DBUS_SERVICE                   "net.stc"
 #define STC_DBUS_INTERFACE_RESTRICTION     STC_DBUS_SERVICE ".restriction"
index 3c0d1b77031ec65dcef4fb3079f08b256fecc280..57ed0682ed0f1966304ffbdfb1bbddad8ba7b758 100644 (file)
@@ -1,91 +1,22 @@
-CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
+SET(REQUIRES_LIST glib-2.0 gio-2.0 gio-unix-2.0 dlog vconf capi-system-info openssl1.1
+       sqlite3)
 
-SET(REQUIRES_LIST ${REQUIRES_LIST}
-       glib-2.0
-       gio-2.0
-       gio-unix-2.0
-       dlog
-       vconf
-       capi-system-info
-       openssl1.1
-       )
-
-IF("${ENABLE_DATABASE}" STREQUAL "YES")
-       SET(REQUIRES_LIST ${REQUIRES_LIST} sqlite3)
-ENDIF()
-
-INCLUDE(FindPkgConfig)
 PKG_CHECK_MODULES(stc_pkgs REQUIRED "${REQUIRES_LIST}")
+INCLUDE_DIRECTORIES(${stc_pkgs_INCLUDE_DIRS})
+LINK_DIRECTORIES(${stc_pkgs_LIBRARY_DIRS})
 
-FOREACH(flag ${stc_pkgs_CFLAGS})
-       SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
-ENDFOREACH(flag)
-
-SET(SOURCE_DIR                  ${CMAKE_SOURCE_DIR}/manager)
-SET(HELPER_SOURCE_DIR           ${SOURCE_DIR}/helper)
-SET(DATABASE_SOURCE_DIR         ${SOURCE_DIR}/database)
-SET(LIMITATION_SOURCE_DIR       ${SOURCE_DIR}/limitation)
-SET(PLUGIN_DIR                  ${CMAKE_SOURCE_DIR}/plugin)
-SET(APPSTATUS_SOURCE_DIR        ${PLUGIN_DIR}/appstatus)
-SET(EXCEPTION_SOURCE_DIR        ${PLUGIN_DIR}/exception)
-SET(PROCFS_SOURCE_DIR           ${PLUGIN_DIR}/procfs)
-SET(PCAP_SOURCE_DIR             ${PLUGIN_DIR}/pcap)
-SET(TETHER_SOURCE_DIR           ${PLUGIN_DIR}/tether)
-SET(MONITOR_SOURCE_DIR          ${PLUGIN_DIR}/monitor)
-SET(FIREWALL_SOURCE_DIR         ${PLUGIN_DIR}/firewall)
-
-INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include)
-INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/dbus-interface)
-
-INCLUDE_DIRECTORIES(${SOURCE_DIR})
-INCLUDE_DIRECTORIES(${HELPER_SOURCE_DIR})
-
-INCLUDE_DIRECTORIES(${DATABASE_SOURCE_DIR})
-INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include/db)
-
-INCLUDE_DIRECTORIES(${APPSTATUS_SOURCE_DIR})
-INCLUDE_DIRECTORIES(${EXCEPTION_SOURCE_DIR})
-INCLUDE_DIRECTORIES(${PROCFS_SOURCE_DIR})
-INCLUDE_DIRECTORIES(${PCAP_SOURCE_DIR})
-INCLUDE_DIRECTORIES(${TETHER_SOURCE_DIR})
-INCLUDE_DIRECTORIES(${MONITOR_SOURCE_DIR})
-INCLUDE_DIRECTORIES(${FIREWALL_SOURCE_DIR})
-
-FILE(GLOB SOURCE_SRCS        ${SOURCE_DIR}/*.c util/*.c)
-FILE(GLOB HELPER_SRCS        ${HELPER_SOURCE_DIR}/*.c)
+FILE(GLOB SRCS *.c helper/*.c util/*.c)
 
-SET(SRCS ${SRCS} ${SOURCE_SRCS} ${HELPER_SRCS})
+SET(SRCS ${SRCS} ${DBUS_IFACE}/stc-generated-dbus.c)
+SET_SOURCE_FILES_PROPERTIES(${DBUS_IFACE}/stc-generated-dbus.c PROPERTIES GENERATED TRUE)
 
-IF("${ENABLE_DATABASE}" STREQUAL "YES")
-       FILE(GLOB DATABASE_SRCS           ${DATABASE_SOURCE_DIR}/*.c)
-
-       SET(SRCS ${SRCS} ${DATABASE_SRCS})
-
-       INSTALL(FILES ${DATA_DIR}/traffic_db.sql DESTINATION /usr/share)
-       INSTALL(FILES ${DATA_DIR}/firewall_db.sql DESTINATION /usr/share)
-ENDIF()
-
-IF(BUILD_GTESTS)
-SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fpic -Wall -Werror-implicit-function-declaration")
-SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -fprofile-arcs -ftest-coverage")
-ELSE(BUILD_GTESTS)
-SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fpic -Wall -Werror-implicit-function-declaration -fvisibility=hidden")
-SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
-ENDIF(BUILD_GTESTS)
-
-SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -pie")
-
-ADD_DEFINITIONS("-DUSE_DLOG")
-ADD_DEFINITIONS("-DDATABASE_FULL_PATH=\"${DATABASE_FULL_PATH}\"")
-ADD_DEFINITIONS("-DDATABASE_BACKUP_PATH=\"${DATABASE_BACKUP_PATH}\"")
-IF(BUILD_GTESTS)
-       ADD_DEFINITIONS(-DTIZEN_GTESTS)
-ENDIF(BUILD_GTESTS)
-
-SET(SRCS ${SRCS} ${INTERFACES}/generated-code.c)
-SET_SOURCE_FILES_PROPERTIES(${INTERFACES}/generated-code.c PROPERTIES GENERATED TRUE)
-
-ADD_EXECUTABLE(${PROJECT_NAME} ${SRCS})
-TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${stc_pkgs_LDFLAGS} -ldl)
-INSTALL(TARGETS ${PROJECT_NAME} RUNTIME DESTINATION ${BIN_DIR})
+ADD_EXECUTABLE(${PROJECT_NAME} ${SRCS} $<TARGET_OBJECTS:${DB_OBJ}>)
+TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${stc_pkgs_LIBRARIES} dl)
+SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES
+       POSITION_INDEPENDENT_CODE ON
+       ENABLE_EXPORTS 1)
+TARGET_COMPILE_OPTIONS(${PROJECT_NAME} PUBLIC ${stc_pkgs_CFLAGS_OTHER})
+INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${BIN_INSTALL_DIR})
 ADD_DEPENDENCIES(${PROJECT_NAME} GENERATED_DBUS_CODE)
+
+ADD_SUBDIRECTORY(database)
diff --git a/manager/database/CMakeLists.txt b/manager/database/CMakeLists.txt
new file mode 100644 (file)
index 0000000..b63ef69
--- /dev/null
@@ -0,0 +1,8 @@
+FILE(GLOB DB_SRCS *.c)
+
+ADD_DEFINITIONS("-DDATABASE_FULL_PATH=\"${DATABASE_FULL_PATH}\"")
+ADD_DEFINITIONS("-DDATABASE_BACKUP_PATH=\"${DATABASE_BACKUP_PATH}\"")
+
+ADD_LIBRARY(${DB_OBJ} OBJECT ${DB_SRCS})
+SET_TARGET_PROPERTIES(${DB_OBJ} PROPERTIES POSITION_INDEPENDENT_CODE ON)
+ADD_DEPENDENCIES(${DB_OBJ} GENERATED_DBUS_CODE)
index 1d5ba2b7e6f4ec3fab2d1d7e60d7621bf75cf545..5cd7a663715cd559011e4b76e0c39c88bde3f028 100644 (file)
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-
+#define _GNU_SOURCE
 #include "helper-cgroup.h"
 
 #define RELEASE_AGENT  "release_agent"
index e2f284fdf0e643f8ebcff34702f699da11f360df..d93741c5497f81b44f952eb83244768562a714d0 100644 (file)
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-
+#define _GNU_SOURCE
 #include "helper-file.h"
 
 #define BUF_MAX                (BUFSIZ)
index 66bb1194dfb8ffb06a32c79e506c07c4ecd7eb6e..baf3b6d051899c4ae528488e1e91f92071921c8c 100644 (file)
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
-
+#define _GNU_SOURCE
 #include <signal.h>
 #include <errno.h>
 #include <sys/wait.h>
index c9ca10b54fd6f5f477f5c5c19ec1ba01895a8c33..1f778c83b24c81beb451fb6469b0525ca0394117 100644 (file)
@@ -1,5 +1,5 @@
-CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
-
 SET(NET_CLS_RELEASE "net-cls-release")
-ADD_EXECUTABLE(${NET_CLS_RELEASE} ${CMAKE_CURRENT_SOURCE_DIR}/${NET_CLS_RELEASE}.c)
-INSTALL(TARGETS ${NET_CLS_RELEASE} RUNTIME DESTINATION ${BIN_DIR})
+
+ADD_EXECUTABLE(${NET_CLS_RELEASE} ${NET_CLS_RELEASE}.c)
+SET_TARGET_PROPERTIES(${NET_CLS_RELEASE} PROPERTIES POSITION_INDEPENDENT_CODE ON)
+INSTALL(TARGETS ${NET_CLS_RELEASE} DESTINATION ${BIN_INSTALL_DIR})
index 576387479bec4ed1c49ffe19728eb8c25d5747f9..4997b6ef9076148db59fc8c563907f949586b43f 100644 (file)
@@ -1,20 +1,12 @@
 Name:       stc-manager
 Summary:    STC(Smart Traffic Control) manager
-Version:    0.1.4
+Version:    0.1.5
 Release:    0
 Group:      Network & Connectivity/Other
 License:    Apache-2.0
 Source0:    %{name}-%{version}.tar.gz
 Source1001: %{name}.manifest
 
-%define enable_database YES
-%define enable_statistics YES
-%define enable_restriction YES
-%define database_full_path %{TZ_SYS_GLOBALUSER_DB}/.stc-manager-datausage.db
-%define database_backup_path %{TZ_SYS_RO_SHARE}/stc/.stc-manager-datausage.db
-%define upgrade_script_filename 500.stc-manager_upgrade.sh
-%define upgrade_script_path %{TZ_SYS_RO_SHARE}/upgrade/scripts
-
 BuildRequires:  cmake
 BuildRequires:  pkgconfig(glib-2.0)
 BuildRequires:  pkgconfig(gio-2.0)
@@ -25,14 +17,9 @@ BuildRequires:  pkgconfig(libtzplatform-config)
 BuildRequires: pkgconfig(vconf)
 BuildRequires:  pkgconfig(capi-system-info)
 BuildRequires:  pkgconfig(openssl1.1)
-
-%if %{?enable_database} == YES
-BuildRequires: pkgconfig(sqlite3)
-%endif
-
 BuildRequires:  python
 BuildRequires:  python-xml
-
+BuildRequires: pkgconfig(sqlite3)
 %if 0%{?gtests:1}
 BuildRequires: pkgconfig(gmock)
 %endif
@@ -92,123 +79,120 @@ Summary: Firewall plugin for managing firewall rules
 %description plugin-firewall
 A smart traffic control manager extension for firewall plugin
 
+%if 0%{?gcov:1}
+%package gcov
+Summary: Coverage Data of %{name}
+Group: System/Testing
+
+%description gcov
+The %{name}-gcov pacakge contains gcov objects
+%endif
+
+%global stc_db_file %{TZ_SYS_GLOBALUSER_DB}/.%{name}-datausage.db
+%global stc_backup_db_file %{TZ_SYS_RO_SHARE}/stc/.%{name}-datausage.db
+
 %prep
 %setup -q
 cp %{SOURCE1001} ./%{name}.manifest
 
 %build
-
-export CFLAGS="$CFLAGS -D_GNU_SOURCE"
-export CXXFLAGS="$CXXFLAGS -D_GNU_SOURCE"
-
 %if "%{tizen_profile_name}" == "tv"
        CFLAGS+=" -DTIZEN_TV_EXT"
 %endif
 
+%if 0%{?gcov:1}
+export CFLAGS+=" -fprofile-arcs -ftest-coverage"
+export CXXFLAGS+=" -fprofile-arcs -ftest-coverage"
+export LDFLAGS+=" -lgcov -Wl,--dynamic-list-data"
+%endif
+
 %cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix} \
-       -DBIN_DIR=%{_bindir} \
-       -DLIB_PATH=%{_lib} \
-       -DENABLE_DATABASE=%{enable_database} \
-       -DDATABASE_FULL_PATH=%{database_full_path} \
-       -DDATABASE_BACKUP_PATH=%{database_backup_path} \
-       -DENABLE_STATISTICS=%{enable_statistics} \
-       -DENABLE_RESTRICTION=%{enable_restriction} \
+       -DCMAKE_VERBOSE_MAKEFILE=OFF \
+       -DBIN_INSTALL_DIR:PATH=%{_bindir} \
+       -DSYSTEMD_DIR:PATH=%{_unitdir} \
+       -DSYSCONF_DIR:PATH=%{_sysconfdir} \
+       -DSTC_RW_DIR:PATH=%{_localstatedir}/lib/stc \
+       -DDATABASE_FULL_PATH=%{stc_db_file} \
+       -DDATABASE_BACKUP_PATH=%{stc_backup_db_file} \
        -DBUILD_GTESTS=%{?gtests:1}%{!?gtests:0} \
        -DBUILD_GCOV=%{?gcov:1}%{!?gcov:0}
-
 make %{?_smp_mflags}
 
 %install
-rm -rf %{buildroot}
-
 %make_install
 
-#database initialization
-%if %{?enable_database} == YES
-       mkdir -p %{buildroot}%{TZ_SYS_GLOBALUSER_DB}
-       sqlite3 %{buildroot}%{database_full_path} < %{buildroot}/usr/share/traffic_db.sql
-       sqlite3 %{buildroot}%{database_full_path} < %{buildroot}/usr/share/firewall_db.sql
-       mkdir -p %{buildroot}%{TZ_SYS_RO_SHARE}/stc
-       cp %{buildroot}%{database_full_path} %{buildroot}%{database_backup_path}
-       rm %{buildroot}/usr/share/traffic_db.sql
-       rm %{buildroot}/usr/share/firewall_db.sql
+%if 0%{?gcov:1}
+find .. -name '*.gcno' | tar cf %{name}-gcov.tar -T -
+install -d -m 0755 %{buildroot}%{_datadir}/gcov/obj
+tar xf %{name}-gcov.tar -C %{buildroot}%{_datadir}/gcov/obj
 %endif
 
-#Exceptions file
-mkdir -p %{buildroot}/%{_localstatedir}/lib/stc
-cp res/exceptions %{buildroot}/%{_localstatedir}/lib/stc/exceptions
-
-#Systemd service file
-mkdir -p %{buildroot}%{_unitdir}
-cp res/systemd/stc-manager.service %{buildroot}%{_unitdir}/stc-manager.service
-
-mkdir -p %{buildroot}%{_unitdir}/multi-user.target.wants/
-ln -s ../stc-manager.service %{buildroot}%{_unitdir}/multi-user.target.wants/stc-manager.service
+#database initialization
+mkdir -p %{buildroot}%{TZ_SYS_GLOBALUSER_DB}
+sqlite3 %{buildroot}%{stc_db_file} < res/traffic_db.sql
+sqlite3 %{buildroot}%{stc_db_file} < res/firewall_db.sql
+install -D -m 0660 %{buildroot}%{stc_db_file} %{buildroot}%{stc_backup_db_file}
 
-#DBus DAC (stc-manager.manifest enables DBus SMACK)
-mkdir -p %{buildroot}%{_sysconfdir}/dbus-1/system.d
-cp res/dbus/stc-manager.conf %{buildroot}%{_sysconfdir}/dbus-1/system.d/stc-manager.conf
+mkdir -p %{buildroot}%{TZ_SYS_UPGRADE_SCRIPTS}
+install -m 0755 res/500.%{name}_upgrade.sh %{buildroot}%{TZ_SYS_UPGRADE_SCRIPTS}
 
-mkdir -p %{buildroot}%{_datadir}/dbus-1/system-services/
-cp res/dbus/net.stc.service %{buildroot}%{_datadir}/dbus-1/system-services/net.stc.service
+%install_service multi-user.target.wants %{name}.service
 
-#OS Upgrade
-mkdir -p %{buildroot}%{upgrade_script_path}
-cp -f res/%{upgrade_script_filename} %{buildroot}%{upgrade_script_path}
 
 %files
 %manifest %{name}.manifest
-%license LICENSE.APLv2
-%defattr(-,root,root,-)
-%attr(500,root,root) %{_bindir}/*
-
-%attr(644,root,root) %{_unitdir}/stc-manager.service
-%attr(644,root,root) %{_unitdir}/multi-user.target.wants/stc-manager.service
-
-%attr(755,network_fw,network_fw) /%{_localstatedir}/lib/stc
-%attr(600,root,root) /%{_localstatedir}/lib/stc/exceptions
-
-#DBus DAC
-%attr(644,root,root) %{_sysconfdir}/dbus-1/system.d/*
-%attr(644,root,root) %{_datadir}/dbus-1/system-services/*
-
-%if %{?enable_database} == YES
-%config(noreplace) %attr(660, root, root) %{database_full_path}
-%config(noreplace) %attr(660, root, root) %{database_full_path}-journal
-%config(noreplace) %attr(660, root, root) %{database_backup_path}
-%endif
-
+%{_bindir}/*
+%{_unitdir}/%{name}.service
+%{_unitdir}/multi-user.target.wants/%{name}.service
+%{_localstatedir}/lib/stc/exceptions
+%{_sysconfdir}/dbus-1/system.d/*
+%{_datadir}/dbus-1/system-services/*
+%dir %attr(0755,network_fw,network_fw) %{_localstatedir}/lib/stc
+%config(noreplace) %{stc_db_file}*
+%config(noreplace) %{stc_backup_db_file}
+%{TZ_SYS_UPGRADE_SCRIPTS}/500.%{name}_upgrade.sh
 %if 0%{?gtests:1}
 %{_bindir}/gtest*
 %endif
-
-%{upgrade_script_path}/%{upgrade_script_filename}
+%license LICENSE.APLv2
 
 %files plugin-appstatus
 %manifest %{name}.manifest
-%attr(644, -,-) %{_datadir}/icons/*.png
-%attr(500,root,root) %{_libdir}/stc-plugin-appstatus.so
+%{_datadir}/icons/*.png
+%{_libdir}/stc-plugin-appstatus.so
+%license LICENSE.APLv2
 
 %files plugin-exception
 %manifest %{name}.manifest
-%attr(500,root,root) %{_libdir}/stc-plugin-exception.so
+%{_libdir}/stc-plugin-exception.so
+%license LICENSE.APLv2
 
 %files plugin-procfs
 %manifest %{name}.manifest
-%attr(500,root,root) %{_libdir}/stc-plugin-procfs.so
+%{_libdir}/stc-plugin-procfs.so
+%license LICENSE.APLv2
 
 %files plugin-pcap
 %manifest %{name}.manifest
-%attr(500,root,root) %{_libdir}/stc-plugin-pcap.so
+%{_libdir}/stc-plugin-pcap.so
+%license LICENSE.APLv2
 
 %files plugin-tether
 %manifest %{name}.manifest
-%attr(500,root,root) %{_libdir}/stc-plugin-tether.so
+%{_libdir}/stc-plugin-tether.so
+%license LICENSE.APLv2
 
 %files plugin-monitor
 %manifest %{name}.manifest
-%attr(500,root,root) %{_libdir}/stc-plugin-monitor.so
+%{_libdir}/stc-plugin-monitor.so
+%license LICENSE.APLv2
 
 %files plugin-firewall
 %manifest %{name}.manifest
-%attr(500,root,root) %{_libdir}/stc-plugin-firewall.so
+%{_libdir}/stc-plugin-firewall.so
+%license LICENSE.APLv2
+
+%if 0%{?gcov:1}
+%files gcov
+%{_datadir}/gcov/*
+%endif
index d1777f222fddaddf44ac412b5e1794755acb1dfe..6b730050713856de51f18315b5b672abaf88ff29 100644 (file)
@@ -1,14 +1,6 @@
-SET(SOURCE_DIR               ${CMAKE_SOURCE_DIR}/manager)
-SET(HELPER_SOURCE_DIR        ${SOURCE_DIR}/helper)
-SET(DATABASE_SOURCE_DIR      ${SOURCE_DIR}/database)
-
-INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include)
-INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/dbus-interface)
-
-INCLUDE_DIRECTORIES(${SOURCE_DIR})
-INCLUDE_DIRECTORIES(${HELPER_SOURCE_DIR})
-
-INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include/db)
+PKG_CHECK_MODULES(plugin_pkgs REQUIRED dlog gio-2.0 gio-unix-2.0 glib-2.0)
+INCLUDE_DIRECTORIES(${plugin_pkgs_INCLUDE_DIRS})
+LINK_DIRECTORIES(${plugin_pkgs_LIBRARY_DIRS})
 
 ADD_SUBDIRECTORY(appstatus)
 ADD_SUBDIRECTORY(exception)
index 30b45f3cc2c5921ff7b155bf2525673c1923e687..975778a985d1218a301e69c8308ed8bc9a912c68 100644 (file)
@@ -1,36 +1,15 @@
-CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
-PROJECT(stc-plugin-appstatus C)
+SET(STC_PI_APPSTATUS "stc-plugin-appstatus")
 
-# Set required packages
-INCLUDE(FindPkgConfig)
-PKG_CHECK_MODULES(appstatus_plugin REQUIRED
-       dlog
-       gio-2.0
-       gio-unix-2.0
-       glib-2.0
-       bundle
-       syspopup-caller
-       )
+PKG_CHECK_MODULES(appstatus_pkgs REQUIRED bundle syspopup-caller)
+INCLUDE_DIRECTORIES(${appstatus_pkgs_INCLUDE_DIRS})
+LINK_DIRECTORIES(${appstatus_pkgs_LIBRARY_DIRS})
 
-FOREACH(flag ${appstatus_plugin_CFLAGS})
-       SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
-ENDFOREACH(flag)
+FILE(GLOB APPSTATUS_SRCS *.c)
 
-SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -g -Werror -fvisibility=hidden")
-SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
-SET(CMAKE_C_FLAGS_RELEASE "-O2")
+ADD_LIBRARY(${STC_PI_APPSTATUS} SHARED ${APPSTATUS_SRCS})
+TARGET_LINK_LIBRARIES(${STC_PI_APPSTATUS} ${plugin_pkgs_LIBRARIES} ${appstatus_pkgs_LIBRARIES})
+TARGET_COMPILE_OPTIONS(${STC_PI_APPSTATUS} PUBLIC ${plugin_pkgs_CFLAGS_OTHER} ${appstatus_pkgs_CFLAGS_OTHER})
+SET_TARGET_PROPERTIES(${STC_PI_APPSTATUS} PROPERTIES PREFIX "" OUTPUT_NAME ${STC_PI_APPSTATUS})
 
-ADD_DEFINITIONS("-DUSE_DLOG")
-
-SET(SRCS_PLUGIN
-       stcplugin-appstatus.c
-       )
-
-# library build
-ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS_PLUGIN})
-TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${appstatus_plugin_LDFLAGS})
-SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES PREFIX "" OUTPUT_NAME ${PROJECT_NAME})
-
-# install
-INSTALL(TARGETS ${PROJECT_NAME} LIBRARY DESTINATION ${LIBDIR})
-INSTALL(FILES ${CMAKE_CURRENT_SOURCE_DIR}/data/stc_noti_datausage.png DESTINATION /usr/share/icons)
+INSTALL(TARGETS ${STC_PI_APPSTATUS} DESTINATION ${LIB_INSTALL_DIR})
+INSTALL(FILES data/stc_noti_datausage.png DESTINATION ${SHARE_INSTALL_PREFIX}/icons)
index 734f587cffa38f75261da46766eb0118900d13a5..b9e791a14ce59de47a233f86a5c750879700e24e 100644 (file)
@@ -1,34 +1,14 @@
-CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
-PROJECT(stc-plugin-exception C)
+SET(STC_PI_EXCEPTION "stc-plugin-exception")
 
-# Set required packages
-INCLUDE(FindPkgConfig)
-PKG_CHECK_MODULES(exception_plugin REQUIRED
-       dlog
-       gio-2.0
-       gio-unix-2.0
-       glib-2.0
-       pkgmgr-info
-       )
+PKG_CHECK_MODULES(exception_pkgs REQUIRED pkgmgr-info)
+INCLUDE_DIRECTORIES(${exception_pkgs_INCLUDE_DIRS})
+LINK_DIRECTORIES(${exception_pkgs_LIBRARY_DIRS})
 
-FOREACH(flag ${exception_plugin_CFLAGS})
-       SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
-ENDFOREACH(flag)
+FILE(GLOB EXCEPTION_SRCS *.c)
 
-SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -g -Werror -fvisibility=hidden")
-SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
-SET(CMAKE_C_FLAGS_RELEASE "-O2")
+ADD_LIBRARY(${STC_PI_EXCEPTION} SHARED ${EXCEPTION_SRCS})
+TARGET_LINK_LIBRARIES(${STC_PI_EXCEPTION} ${plugin_pkgs_LIBRARIES} ${exception_pkgs_LIBRARIES})
+TARGET_COMPILE_OPTIONS(${STC_PI_EXCEPTION} PUBLIC ${plugin_pkgs_CFLAGS_OTHER} ${exception_pkgs_CFLAGS_OTHER})
+SET_TARGET_PROPERTIES(${STC_PI_EXCEPTION} PROPERTIES PREFIX "" OUTPUT_NAME ${STC_PI_EXCEPTION})
 
-ADD_DEFINITIONS("-DUSE_DLOG")
-
-SET(SRCS_PLUGIN
-       stcplugin-exception.c
-       )
-
-# library build
-ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS_PLUGIN})
-TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${exception_plugin_LDFLAGS})
-SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES PREFIX "" OUTPUT_NAME ${PROJECT_NAME})
-
-# install
-INSTALL(TARGETS ${PROJECT_NAME} LIBRARY DESTINATION ${LIBDIR})
+INSTALL(TARGETS ${STC_PI_EXCEPTION} DESTINATION ${LIB_INSTALL_DIR})
index d09e5123b091ce34edaa9c19d43122cc7e9e2bc8..7a9433cfd32d3e0602f8c4422e44bc51b812ed7c 100644 (file)
@@ -1,34 +1,10 @@
-CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
-PROJECT(stc-plugin-firewall C)
+SET(STC_PI_FIREWALL "stc-plugin-firewall")
 
-# Set required packages
-INCLUDE(FindPkgConfig)
-PKG_CHECK_MODULES(firewall_plugin REQUIRED
-       dlog
-       gio-2.0
-       gio-unix-2.0
-       glib-2.0
-       )
+FILE(GLOB FIREWALL_SRCS *.c)
+ADD_LIBRARY(${STC_PI_FIREWALL} SHARED ${FIREWALL_SRCS})
+TARGET_LINK_LIBRARIES(${STC_PI_FIREWALL} ${plugin_pkgs_LIBRARIES})
+TARGET_COMPILE_OPTIONS(${STC_PI_FIREWALL} PUBLIC ${plugin_pkgs_CFLAGS_OTHER})
+SET_TARGET_PROPERTIES(${STC_PI_FIREWALL} PROPERTIES PREFIX "" OUTPUT_NAME ${STC_PI_FIREWALL})
+ADD_DEPENDENCIES(${STC_PI_FIREWALL} GENERATED_DBUS_CODE)
 
-FOREACH(flag ${firewall_plugin_CFLAGS})
-       SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
-ENDFOREACH(flag)
-
-SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -g -Werror -fvisibility=hidden")
-SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
-SET(CMAKE_C_FLAGS_RELEASE "-O2")
-
-ADD_DEFINITIONS("-DUSE_DLOG")
-
-SET(SRCS_PLUGIN
-       stcplugin-firewall.c
-       )
-
-# library build
-ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS_PLUGIN})
-ADD_DEPENDENCIES(${PROJECT_NAME} GENERATED_DBUS_CODE)
-TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${firewall_plugin_LDFLAGS})
-SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES PREFIX "" OUTPUT_NAME ${PROJECT_NAME})
-
-# install
-INSTALL(TARGETS ${PROJECT_NAME} LIBRARY DESTINATION ${LIBDIR})
+INSTALL(TARGETS ${STC_PI_FIREWALL} DESTINATION ${LIB_INSTALL_DIR})
index ce792eb62da5d254060b91f882f2cefe6d07be09..abe818f2a2f6b27400e686d3022b88e3b9058aa6 100644 (file)
@@ -1,49 +1,14 @@
-CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
-PROJECT(stc-plugin-monitor C)
+SET(STC_PI_MONITOR "stc-plugin-monitor")
 
-# Set required packages
-INCLUDE(FindPkgConfig)
-PKG_CHECK_MODULES(monitor_plugin REQUIRED
-       dlog
-       gio-2.0
-       gio-unix-2.0
-       glib-2.0
-       vconf
-       openssl1.1
-       bundle
-       syspopup-caller
-       )
+PKG_CHECK_MODULES(monitor_pkgs REQUIRED vconf openssl1.1 bundle syspopup-caller)
+INCLUDE_DIRECTORIES(${monitor_pkgs_INCLUDE_DIRS})
+LINK_DIRECTORIES(${monitor_pkgs_LIBRARY_DIRS})
 
-FOREACH(flag ${monitor_plugin_CFLAGS})
-       SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
-ENDFOREACH(flag)
+FILE(GLOB MONITOR_SRCS *.c)
+ADD_LIBRARY(${STC_PI_MONITOR} SHARED ${MONITOR_SRCS})
+TARGET_LINK_LIBRARIES(${STC_PI_MONITOR} ${plugin_pkgs_LIBRARIES} ${monitor_pkgs_LIBRARIES})
+TARGET_COMPILE_OPTIONS(${STC_PI_MONITOR} PUBLIC ${plugin_pkgs_CFLAGS_OTHER} ${monitor_pkgs_CFLAGS_OTHER})
+SET_TARGET_PROPERTIES(${STC_PI_MONITOR} PROPERTIES PREFIX "" OUTPUT_NAME ${STC_PI_MONITOR})
+ADD_DEPENDENCIES(${STC_PI_MONITOR} GENERATED_DBUS_CODE)
 
-INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/plugin/tether)
-INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/plugin/exception)
-INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/plugin/appstatus)
-INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/plugin/firewall)
-
-SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -g -Werror -fvisibility=hidden")
-SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
-SET(CMAKE_C_FLAGS_RELEASE "-O2")
-
-ADD_DEFINITIONS("-DUSE_DLOG")
-
-SET(SRCS_PLUGIN
-       stcplugin-monitor.c
-       stcplugin-monitor-proc.c
-       stcplugin-monitor-connection.c
-       stcplugin-monitor-rstn.c
-       stcplugin-monitor-app.c
-       stcplugin-monitor-ipt.c
-       stcplugin-monitor-time.c
-       )
-
-# library build
-ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS_PLUGIN})
-ADD_DEPENDENCIES(${PROJECT_NAME} GENERATED_DBUS_CODE)
-TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${monitor_plugin_LDFLAGS})
-SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES PREFIX "" OUTPUT_NAME ${PROJECT_NAME})
-
-# install
-INSTALL(TARGETS ${PROJECT_NAME} LIBRARY DESTINATION ${LIBDIR})
+INSTALL(TARGETS ${STC_PI_MONITOR} DESTINATION ${LIB_INSTALL_DIR})
index d38817099bbea0118f180b27698e9ef784d6a0dd..38c071c865e96002afff757366d7bd48807a40dd 100644 (file)
@@ -1,34 +1,10 @@
-CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
-PROJECT(stc-plugin-pcap C)
+SET(STC_PI_PCAP "stc-plugin-pcap")
 
-# Set required packages
-INCLUDE(FindPkgConfig)
-PKG_CHECK_MODULES(pcap_plugin REQUIRED
-       dlog
-       gio-2.0
-       gio-unix-2.0
-       glib-2.0
-       )
+FILE(GLOB PCAP_SRCS *.c)
 
-FOREACH(flag ${pcap_plugin_CFLAGS})
-       SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
-ENDFOREACH(flag)
+ADD_LIBRARY(${STC_PI_PCAP} SHARED ${PCAP_SRCS})
+TARGET_LINK_LIBRARIES(${STC_PI_PCAP} ${plugin_pkgs_LIBRARIES} pcap)
+TARGET_COMPILE_OPTIONS(${STC_PI_PCAP} PUBLIC ${plugin_pkgs_CFLAGS_OTHER})
+SET_TARGET_PROPERTIES(${STC_PI_PCAP} PROPERTIES PREFIX "" OUTPUT_NAME ${STC_PI_PCAP})
 
-SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -g -Werror -fvisibility=hidden")
-SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
-SET(CMAKE_C_FLAGS_RELEASE "-O2")
-
-ADD_DEFINITIONS("-DUSE_DLOG")
-
-SET(SRCS_PLUGIN
-       stcplugin-pcap.c
-       )
-
-# library build
-ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS_PLUGIN})
-ADD_DEPENDENCIES(${PROJECT_NAME} GENERATED_DBUS_CODE)
-TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pcap_plugin_LDFLAGS} -lpcap)
-SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES PREFIX "" OUTPUT_NAME ${PROJECT_NAME})
-
-# install
-INSTALL(TARGETS ${PROJECT_NAME} LIBRARY DESTINATION ${LIBDIR})
+INSTALL(TARGETS ${STC_PI_PCAP} DESTINATION ${LIB_INSTALL_DIR})
index c61b895c2a848b6a81b8a651f6bd7dd13dd0f8ea..2ea7fa7f9d03d60f0580f8eb04310db405eceb26 100644 (file)
@@ -1,37 +1,11 @@
-CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
-PROJECT(stc-plugin-procfs C)
+SET(STC_PI_PROCFS "stc-plugin-procfs")
 
-# Set required packages
-INCLUDE(FindPkgConfig)
-PKG_CHECK_MODULES(procfs_plugin REQUIRED
-       dlog
-       gio-2.0
-       gio-unix-2.0
-       glib-2.0
-       )
+FILE(GLOB PROCFS_SRCS *.c)
 
-FOREACH(flag ${procfs_plugin_CFLAGS})
-       SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
-ENDFOREACH(flag)
+ADD_LIBRARY(${STC_PI_PROCFS} SHARED ${PROCFS_SRCS})
+TARGET_LINK_LIBRARIES(${STC_PI_PROCFS} ${plugin_pkgs_LIBRARIES})
+TARGET_COMPILE_OPTIONS(${STC_PI_PROCFS} PUBLIC ${plugin_pkgs_CFLAGS_OTHER})
+SET_TARGET_PROPERTIES(${STC_PI_PROCFS} PROPERTIES PREFIX "" OUTPUT_NAME ${STC_PI_PROCFS})
+ADD_DEPENDENCIES(${STC_PI_PROCFS} GENERATED_DBUS_CODE)
 
-INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/plugin/monitor)
-INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/plugin/exception)
-
-SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -g -Werror -fvisibility=hidden")
-SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
-SET(CMAKE_C_FLAGS_RELEASE "-O2")
-
-ADD_DEFINITIONS("-DUSE_DLOG")
-
-SET(SRCS_PLUGIN
-       stcplugin-procfs.c
-       )
-
-# library build
-ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS_PLUGIN})
-ADD_DEPENDENCIES(${PROJECT_NAME} GENERATED_DBUS_CODE)
-TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${procfs_plugin_LDFLAGS})
-SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES PREFIX "" OUTPUT_NAME ${PROJECT_NAME})
-
-# install
-INSTALL(TARGETS ${PROJECT_NAME} LIBRARY DESTINATION ${LIBDIR})
+INSTALL(TARGETS ${STC_PI_PROCFS} DESTINATION ${LIB_INSTALL_DIR})
index 52d8970d3fb9e469f9743be84c2d92b9217b0c94..e067a1d989a45c7d7f80a65daee5bcc4665845dd 100644 (file)
@@ -1,36 +1,10 @@
-CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
-PROJECT(stc-plugin-tether C)
+SET(STC_PI_TETHER "stc-plugin-tether")
 
-# Set required packages
-INCLUDE(FindPkgConfig)
-PKG_CHECK_MODULES(tether_plugin REQUIRED
-       dlog
-       gio-2.0
-       gio-unix-2.0
-       glib-2.0
-       )
+FILE(GLOB TETHER_SRCS *.c)
 
-FOREACH(flag ${tether_plugin_CFLAGS})
-       SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
-ENDFOREACH(flag)
+ADD_LIBRARY(${STC_PI_TETHER} SHARED ${TETHER_SRCS})
+TARGET_LINK_LIBRARIES(${STC_PI_TETHER} ${plugin_pkgs_LIBRARIES})
+TARGET_COMPILE_OPTIONS(${STC_PI_TETHER} PUBLIC ${plugin_pkgs_CFLAGS_OTHER})
+SET_TARGET_PROPERTIES(${STC_PI_TETHER} PROPERTIES PREFIX "" OUTPUT_NAME ${STC_PI_TETHER})
 
-INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/plugin/monitor)
-
-SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -g -Werror -fvisibility=hidden")
-SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
-SET(CMAKE_C_FLAGS_RELEASE "-O2")
-
-ADD_DEFINITIONS("-DUSE_DLOG")
-
-SET(SRCS_PLUGIN
-       stcplugin-tether.c
-       )
-
-# library build
-ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS_PLUGIN})
-ADD_DEPENDENCIES(${PROJECT_NAME} GENERATED_DBUS_CODE)
-TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${tether_plugin_LDFLAGS})
-SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES PREFIX "" OUTPUT_NAME ${PROJECT_NAME})
-
-# install
-INSTALL(TARGETS ${PROJECT_NAME} LIBRARY DESTINATION ${LIBDIR})
+INSTALL(TARGETS ${STC_PI_TETHER} DESTINATION ${LIB_INSTALL_DIR})
diff --git a/res/CMakeLists.txt b/res/CMakeLists.txt
new file mode 100644 (file)
index 0000000..12fa35e
--- /dev/null
@@ -0,0 +1,9 @@
+INSTALL(FILES systemd/${PROJECT_NAME}.service DESTINATION ${SYSTEMD_DIR})
+
+INSTALL(FILES dbus/${PROJECT_NAME}.conf DESTINATION ${SYSCONF_DIR}/dbus-1/system.d)
+INSTALL(FILES dbus/net.stc.service DESTINATION ${SHARE_INSTALL_PREFIX}/dbus-1/system-services)
+
+INSTALL(FILES exceptions DESTINATION ${STC_RW_DIR})
+
+#INSTALL(FILES ${DATA_DIR}/traffic_db.sql DESTINATION /usr/share)
+#INSTALL(FILES ${DATA_DIR}/firewall_db.sql DESTINATION /usr/share)
index 6ae9e4827dfdbceb0aa0a4fd7b3f46ba60534e9e..492a50ecf2b4657e309412240bd0bc983b83b68f 100644 (file)
@@ -1,32 +1,15 @@
-CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
-PROJECT(gtest-stc-manager C CXX)
-
 SET(GTEST_TEST "gtest-stc-manager")
-ADD_DEFINITIONS("-DUSE_DLOG")
-
-SET(REQUIRES_LIST ${REQUIRES_LIST}
-       glib-2.0
-       gio-2.0
-       gmock
-       dlog
-)
-INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include)
-INCLUDE(FindPkgConfig)
-PKG_CHECK_MODULES(GTEST_TEST_PKG REQUIRED ${REQUIRES_LIST})
-
-FOREACH(flag ${GTEST_TEST_PKG_CFLAGS})
-       SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
-ENDFOREACH(flag)
 
-SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -Wall -fPIE")
-SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
-SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_CFLAGS}")
-SET(CMAKE_EXE_LINKER_FLAGS "-Wl,--as-needed -pie")
+SET(REQUIRES_LIST ${REQUIRES_LIST} glib-2.0 gio-2.0 gmock dlog)
+PKG_CHECK_MODULES(test_pkgs REQUIRED ${REQUIRES_LIST})
+INCLUDE_DIRECTORIES(${test_pkgs_INCLUDE_DIRS})
+LINK_DIRECTORIES(${test_pkgs_LIBRARY_DIRS})
 
-FILE(GLOB GTEST_TEST_SRCS *.cpp)
-SET(GTEST_TEST_SRCS ${GTEST_TEST_SRCS})
+FILE(GLOB TEST_SRCS *.cpp)
 
-ADD_EXECUTABLE(${GTEST_TEST} ${GTEST_TEST_SRCS})
-TARGET_LINK_LIBRARIES(${GTEST_TEST} ${GTEST_TEST_LDFLAGS} ${GTEST_TEST_PKG_LDFLAGS} -ldl -lgcov)
+ADD_EXECUTABLE(${GTEST_TEST} ${TEST_SRCS})
+SET_TARGET_PROPERTIES(${GTEST_TEST} PROPERTIES POSITION_INDEPENDENT_CODE ON)
+TARGET_COMPILE_OPTIONS(${GTEST_TEST} PUBLIC ${test_pkgs_CFLAGS_OTHER})
+TARGET_LINK_LIBRARIES(${GTEST_TEST} ${test_pkgs_LIBRARIES} dl)
 
-INSTALL(TARGETS ${GTEST_TEST} RUNTIME DESTINATION ${BIN_DIR})
+INSTALL(TARGETS ${GTEST_TEST} DESTINATION ${BIN_INSTALL_DIR})