@@ -127,12 +127,12 @@ func (s *ExportProjectCMake) Run(ctx *types.Context) error {
127
127
// Extract CFLAGS, CPPFLAGS and LDFLAGS
128
128
var defines []string
129
129
var linkerflags []string
130
- var libs []string
130
+ var dynamicLibsFromGccMinusL []string
131
131
var linkDirectories []string
132
132
133
- extractCompileFlags (ctx , constants .RECIPE_C_COMBINE_PATTERN , & defines , & libs , & linkerflags , & linkDirectories , logger )
134
- extractCompileFlags (ctx , constants .RECIPE_C_PATTERN , & defines , & libs , & linkerflags , & linkDirectories , logger )
135
- extractCompileFlags (ctx , constants .RECIPE_CPP_PATTERN , & defines , & libs , & linkerflags , & linkDirectories , logger )
133
+ extractCompileFlags (ctx , constants .RECIPE_C_COMBINE_PATTERN , & defines , & dynamicLibsFromGccMinusL , & linkerflags , & linkDirectories , logger )
134
+ extractCompileFlags (ctx , constants .RECIPE_C_PATTERN , & defines , & dynamicLibsFromGccMinusL , & linkerflags , & linkDirectories , logger )
135
+ extractCompileFlags (ctx , constants .RECIPE_CPP_PATTERN , & defines , & dynamicLibsFromGccMinusL , & linkerflags , & linkDirectories , logger )
136
136
137
137
// Extract folders with .h in them for adding in include list
138
138
var headerFiles []string
@@ -141,9 +141,9 @@ func (s *ExportProjectCMake) Run(ctx *types.Context) error {
141
141
foldersContainingDotH := findUniqueFoldersRelative (headerFiles , cmakeFolder )
142
142
143
143
// Extract folders with .a in them for adding in static libs paths list
144
- var staticLibsFiles []string
144
+ var staticLibs []string
145
145
isStaticLib := func (ext string ) bool { return DOTAEXTENSION [ext ] }
146
- utils .FindFilesInFolder (& staticLibsFiles , cmakeFolder , isStaticLib , true )
146
+ utils .FindFilesInFolder (& staticLibs , cmakeFolder , isStaticLib , true )
147
147
148
148
// Generate the CMakeLists global file
149
149
@@ -169,22 +169,22 @@ func (s *ExportProjectCMake) Run(ctx *types.Context) error {
169
169
cmakelist += "set(EXTRA_LIBS_DIRS \" \" CACHE STRING \" Additional paths for dynamic libraries\" )\n "
170
170
171
171
linkGroup := ""
172
- for _ , lib := range libs {
172
+ for _ , lib := range dynamicLibsFromGccMinusL {
173
173
// Dynamic libraries should be discovered by pkg_config
174
174
cmakelist += "pkg_search_module (" + strings .ToUpper (lib ) + " " + lib + ")\n "
175
175
relLinkDirectories = append (relLinkDirectories , "${" + strings .ToUpper (lib )+ "_LIBRARY_DIRS}" )
176
176
linkGroup += " " + lib
177
177
}
178
178
cmakelist += "link_directories (" + strings .Join (relLinkDirectories , " " ) + " ${EXTRA_LIBS_DIRS})\n "
179
- for _ , staticLibsFile := range staticLibsFiles {
179
+ for _ , staticLib := range staticLibs {
180
180
// Static libraries are fully configured
181
- lib := filepath .Base (staticLibsFile )
181
+ lib := filepath .Base (staticLib )
182
182
lib = strings .TrimPrefix (lib , "lib" )
183
183
lib = strings .TrimSuffix (lib , ".a" )
184
- if ! utils .SliceContains (libs , lib ) {
184
+ if ! utils .SliceContains (dynamicLibsFromGccMinusL , lib ) {
185
185
linkGroup += " " + lib
186
186
cmakelist += "add_library (" + lib + " STATIC IMPORTED)\n "
187
- location := strings .TrimPrefix (staticLibsFile , cmakeFolder )
187
+ location := strings .TrimPrefix (staticLib , cmakeFolder )
188
188
cmakelist += "set_property(TARGET " + lib + " PROPERTY IMPORTED_LOCATION " + "${PROJECT_SOURCE_DIR}" + location + " )\n "
189
189
}
190
190
}
0 commit comments