convert to cmake
This commit is contained in:
parent
3da4427fb5
commit
efd7c8c4df
3 changed files with 27 additions and 41 deletions
6
.gitignore
vendored
6
.gitignore
vendored
|
@ -1,2 +1,8 @@
|
|||
Makefile
|
||||
CMakeCache.txt
|
||||
CMakeFiles
|
||||
*.cmake
|
||||
*.a
|
||||
*.so
|
||||
*.dylib
|
||||
install_manifest.txt
|
||||
|
|
21
CMakeLists.txt
Normal file
21
CMakeLists.txt
Normal file
|
@ -0,0 +1,21 @@
|
|||
cmake_minimum_required(VERSION 2.8)
|
||||
|
||||
PROJECT(ubox C)
|
||||
ADD_DEFINITIONS(-Os -Wall -Werror --std=gnu99 -g3)
|
||||
|
||||
SET(SOURCES avl.c blob.c blobmsg.c hash.c uhtbl.c uloop.c)
|
||||
IF("${CMAKE_SYSTEM}" MATCHES "Linux")
|
||||
SET(SOURCES ${SOURCES} unl.c)
|
||||
ENDIF("${CMAKE_SYSTEM}" MATCHES "Linux")
|
||||
|
||||
ADD_LIBRARY(ubox SHARED ${SOURCES})
|
||||
|
||||
SET(CMAKE_INSTALL_PREFIX /usr)
|
||||
|
||||
FILE(GLOB headers *.h)
|
||||
INSTALL(FILES ${headers}
|
||||
DESTINATION include/libubox
|
||||
)
|
||||
INSTALL(TARGETS ubox
|
||||
LIBRARY DESTINATION lib
|
||||
)
|
41
Makefile
41
Makefile
|
@ -1,41 +0,0 @@
|
|||
CC?=gcc
|
||||
CFLAGS?=-O2
|
||||
CFLAGS+=-std=gnu99 -Wall -Werror -pedantic -fpic
|
||||
LDFLAGS?=
|
||||
LIBNL=-lnl-tiny
|
||||
PREFIX=/usr
|
||||
INCLUDE_DIR=$(PREFIX)/include/libubox
|
||||
LIBDIR=$(PREFIX)/lib
|
||||
CPPFLAGS=
|
||||
|
||||
OS=$(shell uname)
|
||||
FILES=blob.c blobmsg.c hash.c uhtbl.c usock.c uloop.c avl.c
|
||||
ifeq ($(OS),Linux)
|
||||
FILES += unl.c
|
||||
LIBS += $(LIBNL)
|
||||
LDFLAGS_SHARED=-shared -Wl,-soname,$@
|
||||
SHLIB_EXT=so
|
||||
endif
|
||||
ifeq ($(OS),Darwin)
|
||||
LDFLAGS_SHARED=-dynamiclib
|
||||
SHLIB_EXT=dylib
|
||||
endif
|
||||
|
||||
all: libubox.$(SHLIB_EXT)
|
||||
|
||||
libubox.$(SHLIB_EXT): $(FILES)
|
||||
$(CC) $(CFLAGS) $(CPPFLAGS) -o $@ $^ $(LDFLAGS) $(LIBS) $(LDFLAGS_SHARED)
|
||||
|
||||
install-headers:
|
||||
mkdir -p $(INCLUDE_DIR)
|
||||
cp *.h $(INCLUDE_DIR)/
|
||||
|
||||
install-lib:
|
||||
mkdir -p $(LIBDIR)
|
||||
cp libubox.$(SHLIB_EXT) $(LIBDIR)/
|
||||
|
||||
install: install-lib install-headers
|
||||
|
||||
clean:
|
||||
rm -f *.$(SHLIB_EXT)
|
||||
|
Loading…
Reference in a new issue