[cleanup]revise build scripts and packaging 52/241052/1
authorYoungjae Shin <yj99.shin@samsung.com>
Fri, 14 Aug 2020 06:27:09 +0000 (15:27 +0900)
committerYoungjae Shin <yj99.shin@samsung.com>
Fri, 14 Aug 2020 06:27:09 +0000 (15:27 +0900)
Change-Id: I23b506d271387cd4d16cd960d5f28393eeb5d642

CMakeLists.txt
packaging/nfc-plugin-emul.manifest [new file with mode: 0644]
packaging/nfc-plugin-emul.spec

index cdc76d2..7388580 100644 (file)
@@ -1,40 +1,18 @@
 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
 PROJECT(nfc-plugin C)
 
-MESSAGE("build nfc-plugin-emul")
-
-include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src)
-
-AUX_SOURCE_DIRECTORY(${CMAKE_CURRENT_SOURCE_DIR}/src SRCS)
-
-IF("${CMAKE_BUILD_TYPE}" STREQUAL "")
-       SET(CMAKE_BUILD_TYPE "Release")
-ENDIF("${CMAKE_BUILD_TYPE}" STREQUAL "")
-MESSAGE("Build type: ${CMAKE_BUILD_TYPE}")
-
 INCLUDE(FindPkgConfig)
 
-pkg_check_modules(pkgs REQUIRED glib-2.0 gobject-2.0 dlog nfc-common-lib vconf)
-
-FOREACH(flag ${pkgs_CFLAGS})
-       SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
-ENDFOREACH(flag)
-
-# this for NFC flag
+SET(EXTRA_FLAGS "-Wall -Werror -fvisibility=hidden")
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_FLAGS}")
 
-SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} -fno-strict-aliasing -pipe -fomit-frame-pointer -Wall -Wno-trigraphs -Werror-implicit-function-declaration -Wl,-zdefs -fvisibility=hidden")
-SET(ARM_CFLAGS "${ARM_CFLAGS} -mapcs -mno-sched-prolog -mabi=aapcs-linux -Uarm -fno-common -fpic")
-
-SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror-implicit-function-declaration -Wl,--unresolved-symbols=ignore-in-shared-libs")
-
-SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
-SET(CMAKE_C_FLAGS_DEBUG "-O0 -g")
-#SET(CMAKE_C_FLAGS_RELEASE "-O2")
-
-ADD_DEFINITIONS("-DPREFIX=\"${CMAKE_INSTALL_PREFIX}\"")
+pkg_check_modules(pkgs REQUIRED dlog nfc-common-lib vconf)
+INCLUDE_DIRECTORIES(${pkgs_INCLUDE_DIRS})
+LINK_DIRECTORIES(${pkgs_LIBRARY_DIRS})
 
+FILE(GLOB SRCS src/*.c)
 ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS})
-
-TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS} pthread "-ldl")
-
+TARGET_COMPILE_OPTIONS(${PROJECT_NAME} PUBLIC ${pkgs_CFLAGS_OTHER})
+TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LIBRARIES} pthread)
 INSTALL(TARGETS ${PROJECT_NAME} DESTINATION lib/nfc)
+INSTALL(FILES 98-${PROJECT_NAME}-emul.rules DESTINATION ${CMAKE_INSTALL_PREFIX}/lib/udev/rules.d/)
diff --git a/packaging/nfc-plugin-emul.manifest b/packaging/nfc-plugin-emul.manifest
new file mode 100644 (file)
index 0000000..a76fdba
--- /dev/null
@@ -0,0 +1,5 @@
+<manifest>
+       <request>
+               <domain name="_" />
+       </request>
+</manifest>
index 049f8e5..2424e16 100644 (file)
@@ -1,46 +1,32 @@
-Name:       nfc-plugin-emul
-Summary:    NFC emul plugin
-Version:    0.0.26
-Release:    0
-Group:      TO_BE/FILLED_IN
-License:    Apache-2.0
-Source0:    %{name}-%{version}.tar.gz
-BuildRequires: pkgconfig(glib-2.0)
-BuildRequires: pkgconfig(gobject-2.0)
-BuildRequires: pkgconfig(vconf)
+Name: nfc-plugin-emul
+Summary: NFC emul plugin
+Version: 0.0.26
+Release: 0
+Group: Network & Connectivity/NFC
+License: Apache-2.0
+Source0: %{name}-%{version}.tar.gz
+Source1001: %{name}.manifest
+BuildRequires: cmake
 BuildRequires: pkgconfig(dlog)
 BuildRequires: pkgconfig(nfc-common-lib)
-BuildRequires: cmake
-BuildRequires: gettext-tools
+BuildRequires: pkgconfig(vconf)
 
 %description
 NFC Plugin Emul
 
 %prep
 %setup -q
-
+cp %{SOURCE1001} ./%{name}.manifest
 
 %build
-cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix} \
-%ifarch aarch64 x86_64
-       -DTIZEN_ARCH_64=1 \
-%endif
-
-make %{?jobs:-j%jobs}
+%cmake . -DCMAKE_VERBOSE_MAKEFILE=OFF
+make %{?_smp_mflags}
 
 %install
-rm -rf %{buildroot}
 %make_install
 
-mkdir -p %{buildroot}/usr/lib/udev/rules.d
-cp 98-nfc-plugin-emul.rules %{buildroot}/usr/lib/udev/rules.d/98-nfc-plugin-emul.rules
-
-%postun -p /sbin/ldconfig
-
-%post -p /sbin/ldconfig
-
 %files
-%license LICENSE.APLv2
-%defattr(-,root,root,-)
+%manifest %{name}.manifest
 /usr/lib/nfc/libnfc-plugin.so
-/usr/lib/udev/rules.d/98-nfc-plugin-emul.rules
+%{_prefix}/lib/udev/rules.d/98-%{name}.rules
+%license LICENSE.APLv2