diff --git a/CMakeLists.txt b/CMakeLists.txt
index 57ec760c33f3853b3773ea6f3ed50e201d3e588b..b9c390df544ac0bbc570648b7bb826c69997d4e1 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -137,10 +137,11 @@ include_directories(
 # add_library(${PROJECT_NAME}
 #   src/${PROJECT_NAME}/wolf_ros.cpp
 # )
-add_library(subscriber_gnss src/subscriber_gnss.cpp)
-add_library(subscriber_gnss_fix src/subscriber_gnss_fix.cpp)
-add_library(subscriber_gnss_tdcp src/subscriber_gnss_tdcp.cpp)
-add_library(subscriber_gnss_ublox src/subscriber_gnss_ublox.cpp)
+add_library(subscriber_${PROJECT_NAME}
+  src/subscriber_gnss.cpp
+  src/subscriber_gnss_fix.cpp
+  src/subscriber_gnss_tdcp.cpp
+  src/subscriber_gnss_ublox.cpp)
 
 ## Add cmake target dependencies of the library
 ## as an example, code may need to be generated before libraries
@@ -164,26 +165,11 @@ add_library(subscriber_gnss_ublox src/subscriber_gnss_ublox.cpp)
 #add_dependencies(${PROJECT_NAME}_visualizer ${PROJECT_NAME}_gencfg)
 
 ## Specify libraries to link a library or executable target against
-target_link_libraries(subscriber_gnss
-					  ${wolf_LIBRARIES} 
-					  ${wolfgnss_LIBRARIES} 
-					  ${iri_gnss_msgs_LIBRARIES}
-					  )
-target_link_libraries(subscriber_gnss_fix
-					  ${wolf_LIBRARIES} 
-					  ${wolfgnss_LIBRARIES} 
-					  ${iri_gnss_msgs_LIBRARIES}
-					  )
-target_link_libraries(subscriber_gnss_tdcp
-					  ${wolf_LIBRARIES} 
-					  ${wolfgnss_LIBRARIES} 
-					  ${iri_gnss_msgs_LIBRARIES}
-            		  )
-target_link_libraries(subscriber_gnss_ublox
-					  ${wolf_LIBRARIES} 
-					  ${wolfgnss_LIBRARIES} 
-					  ${iri_gnss_msgs_LIBRARIES}
-					  )
+target_link_libraries(subscriber_${PROJECT_NAME}
+            ${wolf_LIBRARIES}
+            ${wolfgnss_LIBRARIES}
+            ${iri_gnss_msgs_LIBRARIES}
+            )
 
 #############
 ## Install ##