Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
B
Beam Positoning Monitor - Software
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
Wiki
Wiki
image/svg+xml
Discourse
Discourse
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
Projects
Beam Positoning Monitor - Software
Commits
8b1bfa25
Commit
8b1bfa25
authored
Oct 21, 2015
by
Lucas Russo
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
libs/libbpmclient/Makefile: make it more generic/standard
parent
d53bd398
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
44 additions
and
42 deletions
+44
-42
Makefile
src/libs/libbpmclient/Makefile
+44
-42
No files found.
src/libs/libbpmclient/Makefile
View file @
8b1bfa25
...
...
@@ -16,13 +16,20 @@ PWD = $(shell pwd)
# Select board in which we will work. Options are: ml605 or afcv3
BOARD
?=
ml605
PREFIX
?=
/usr/local
export
PREFIX
LIBNAME_RAW
=
bpmclient
LIBNAME
=
lib
$(LIBNAME_RAW)
LIBBPMCLIENT
=
libbpmclient
# Special variable for version.h script only
LIBNAME_FILES
=
bpm_client
# Config variables suitable for creating shared libraries
LIB_VER
=
$(
shell
./version.sh bpm_client
)
LIB_VER
=
$(
shell
./version.sh
$(LIBNAME_FILES))
LIB_VER_MAJOR
=
$(
shell
echo
$(LIB_VER)
|
cut
-d
'.'
-f1
)
LIB_VER_MINOR
=
$(
shell
echo
$(LIB_VER)
|
cut
-d
'.'
-f2
)
LIB_VER_REVESION
=
$(
shell
echo
$(LIB_VER)
|
cut
-d
'.'
-f3
)
PREFIX
?=
/usr/local
export
PREFIX
# General C/CPP flags
CFLAGS_USR
=
-std
=
gnu99
-O2
-fPIC
...
...
@@ -68,13 +75,15 @@ CFLAGS_PLATFORM = -Wall -Wextra -Werror
LDFLAGS_PLATFORM
=
# Libraries
LIBS
=
-lzmq
-lczmq
-lmlm
-luuid
LIBS
=
# General library flags -L<libdir>
LFLAGS
=
# Source directory
SRC_DIR
=
src
# Include directory
INCLUDE_DIR
=
include
# Specific board objects
OBJS_BOARD
=
...
...
@@ -94,8 +103,7 @@ OBJS_EXTERNAL = ../../sm_io/modules/sm_io_codes.o \
boards_INCLUDE_DIRS
=
-I
../../../include/boards/
$(BOARD)
# Include directories
INCLUDE_DIRS
=
-I
.
-Iinclude
-I
../liberrhand
-I
../libhutils
-I
../libdisptable
\
-I
../libconvc
\
INCLUDE_DIRS
=
-I
.
-Iinclude
\
$(boards_INCLUDE_DIRS)
\
-I
../../../include
\
-I
../../sm_io/modules
\
...
...
@@ -113,29 +121,23 @@ override CFLAGS += $(CFLAGS_USR) $(CFLAGS_PLATFORM) $(CFLAGS_DEBUG) $(CPPFLAGS)
override
LDFLAGS
+=
$(LFLAGS)
$(LDFLAGS_PLATFORM)
# Output library names
OUT
=
$(LIB
BPMCLIENT
)
OUT
=
$(LIB
NAME
)
.SECONDEXPANSION
:
# Library objects
$(LIB
BPMCLIENT
)
_OBJS_LIB
=
$(SRC_DIR)
/bpm_client_core.o
$(SRC_DIR)
/bpm_client_err.o
\
$(LIB
NAME
)
_OBJS_LIB
=
$(SRC_DIR)
/bpm_client_core.o
$(SRC_DIR)
/bpm_client_err.o
\
$(SRC_DIR)
/bpm_client_rw_param.o
# Objects common for both server and client libraries.
common_OBJS
=
$(OBJS_BOARD)
$(OBJS_PLATFORM)
$(OBJS_EXTERNAL)
# Objects for each version of library
$(LIBBPMCLIENT)
_OBJS
=
$(common_OBJS)
$
(
$(LIBBPMCLIENT)
_OBJS_LIB
)
$(LIBBPMCLIENT)
_CODE_HEADERS
=
\
../../../include/acq_chan_gen_defs.h
\
../libdisptable/disp_table.h
\
../libdisptable/disp_table_err.h
\
../libhutils/hutils.h
\
../libhutils/hutils_err.h
\
../libhutils/hutils_math.h
\
../libhutils/hutils_utils.h
$(LIBBPMCLIENT)
_SMIO_CODES
=
../../sm_io/modules/fmc130m_4ch/sm_io_fmc130m_4ch_codes.h
\
$(LIBNAME)
_OBJS
=
$(common_OBJS)
$
(
$(LIBNAME)
_OBJS_LIB
)
$(LIBNAME)
_CODE_HEADERS
=
\
../../../include/acq_chan_gen_defs.h
$(LIBNAME)
_SMIO_CODES
=
../../sm_io/modules/fmc130m_4ch/sm_io_fmc130m_4ch_codes.h
\
../../sm_io/modules/acq/sm_io_acq_codes.h
\
../../sm_io/modules/dsp/sm_io_dsp_codes.h
\
../../sm_io/modules/swap/sm_io_swap_codes.h
\
...
...
@@ -143,7 +145,7 @@ $(LIBBPMCLIENT)_SMIO_CODES = ../../sm_io/modules/fmc130m_4ch/sm_io_fmc130m_4ch_c
../../sm_io/modules/afc_diag/sm_io_afc_diag_codes.h
\
../../sm_io/modules/sm_io_codes.h
$(LIB
BPMCLIENT
)
_SMIO_EXPORTS
=
../../sm_io/modules/fmc130m_4ch/sm_io_fmc130m_4ch_exports.h
\
$(LIB
NAME
)
_SMIO_EXPORTS
=
../../sm_io/modules/fmc130m_4ch/sm_io_fmc130m_4ch_exports.h
\
../../sm_io/modules/acq/sm_io_acq_exports.h
\
../../sm_io/modules/dsp/sm_io_dsp_exports.h
\
../../sm_io/modules/swap/sm_io_swap_exports.h
\
...
...
@@ -151,26 +153,26 @@ $(LIBBPMCLIENT)_SMIO_EXPORTS = ../../sm_io/modules/fmc130m_4ch/sm_io_fmc130m_4ch
../../sm_io/modules/afc_diag/sm_io_afc_diag_exports.h
# Copy specific acq_chan.h defintions according to the BOARD MACRO
$(LIB
BPMCLIENT
)
_ACQ_HEADERS_BASENAME
=
acq_chan
$(LIB
BPMCLIENT
)
_ACQ_HEADERS
=
\
../../../include/boards/
$(BOARD)
/priv_defs/
$
(
$(LIB
BPMCLIENT
)
_ACQ_HEADERS_BASENAME
)
_
$(BOARD)
.h
$(LIB
BPMCLIENT)
_INST_ACQ_HEADERS
=
include/
$
(
$(LIBBPMCLIENT
)
_ACQ_HEADERS_BASENAME
)
.h
$(LIB
NAME
)
_ACQ_HEADERS_BASENAME
=
acq_chan
$(LIB
NAME
)
_ACQ_HEADERS
=
\
../../../include/boards/
$(BOARD)
/priv_defs/
$
(
$(LIB
NAME
)
_ACQ_HEADERS_BASENAME
)
_
$(BOARD)
.h
$(LIB
NAME)
_INST_ACQ_HEADERS
=
include/
$
(
$(LIBNAME
)
_ACQ_HEADERS_BASENAME
)
.h
# Copy non-standard headers
$(LIB
BPMCLIENT)
_SMIO_HEADERS_BASENAME
=
$
(
basename
$
(
notdir
$
(
$(LIBBPMCLIENT)
_SMIO_CODES
)
$
(
$(LIBBPMCLIENT
)
_SMIO_EXPORTS
)))
$(LIB
BPMCLIENT)
_SMIO_HEADERS
=
$
(
$(LIBBPMCLIENT)
_SMIO_CODES
)
$
(
$(LIBBPMCLIENT
)
_SMIO_EXPORTS
)
$(LIB
BPMCLIENT)
_INST_SMIO_HEADERS
=
$
(
addprefix include/,
$
(
addsuffix .h,
$
(
$(LIBBPMCLIENT
)
_SMIO_HEADERS_BASENAME
)))
$(LIB
NAME)
_SMIO_HEADERS_BASENAME
=
$
(
basename
$
(
notdir
$
(
$(LIBNAME)
_SMIO_CODES
)
$
(
$(LIBNAME
)
_SMIO_EXPORTS
)))
$(LIB
NAME)
_SMIO_HEADERS
=
$
(
$(LIBNAME)
_SMIO_CODES
)
$
(
$(LIBNAME
)
_SMIO_EXPORTS
)
$(LIB
NAME)
_INST_SMIO_HEADERS
=
$
(
addprefix include/,
$
(
addsuffix .h,
$
(
$(LIBNAME
)
_SMIO_HEADERS_BASENAME
)))
# Our local library headers
$(LIB
BPMCLIENT)
_HEADERS_LIB
=
include/bpm_client.h include
/bpm_client_classes.h
\
include/bpm_client_prelude.h include
/bpm_client_codes.h
\
$
(
subst src/,include/,
$
(
patsubst %.o,%.h,
$
(
$(LIB
BPMCLIENT
)
_OBJS_LIB
)))
$(LIB
NAME)
_HEADERS_LIB
=
$(INCLUDE_DIR)
/bpm_client.h
$(INCLUDE_DIR)
/bpm_client_classes.h
\
$(INCLUDE_DIR)
/bpm_client_prelude.h
$(INCLUDE_DIR)
/bpm_client_codes.h
\
$
(
subst src/,include/,
$
(
patsubst %.o,%.h,
$
(
$(LIB
NAME
)
_OBJS_LIB
)))
$(LIB
BPMCLIENT)
_HEADERS
=
$
(
$(LIBBPMCLIENT)
_HEADERS_LIB
)
$
(
$(LIBBPMCLIENT
)
_CODE_HEADERS
)
\
$
(
$(LIB
BPMCLIENT
)
_INST_SMIO_HEADERS
)
$(LIB
NAME)
_HEADERS
=
$
(
$(LIBNAME)
_HEADERS_LIB
)
$
(
$(LIBNAME
)
_CODE_HEADERS
)
\
$
(
$(LIB
NAME
)
_INST_SMIO_HEADERS
)
# Installation headers
$(LIB
BPMCLIENT)
_INST_HEADERS
=
$
(
$(LIBBPMCLIENT)
_HEADERS
)
$
(
$(LIBBPMCLIENT
)
_INST_ACQ_HEADERS
)
$(LIB
NAME)
_INST_HEADERS
=
$
(
$(LIBNAME)
_HEADERS
)
$
(
$(LIBNAME
)
_INST_ACQ_HEADERS
)
# Save a git repository description
GIT_REVISION
=
$(
shell
git describe
--dirty
--always
)
...
...
@@ -180,7 +182,7 @@ GIT_USER_EMAIL = $(shell git config --get user.email)
revision_OBJS
=
$(SRC_DIR)
/bpm_client_revision.o
revision_SRCS
=
$
(
patsubst %.o,%.c,
$(revision_OBJS)
)
OBJS_all
=
$(common_OBJS)
$
(
$(LIB
BPMCLIENT
)
_OBJS
)
\
OBJS_all
=
$(common_OBJS)
$
(
$(LIB
NAME
)
_OBJS
)
\
$(revision_OBJS)
# Libraries suffixes
...
...
@@ -252,15 +254,15 @@ $(revision_OBJS): $(revision_SRCS)
# Prepare the environment for install rule
pre_inst
:
$
(
foreach header,
$
(
$(LIB
BPMCLIENT
)
_ACQ_HEADERS
)
,cp
-p
$(header)
\
$(PWD)
/
$
(
$(LIB
BPMCLIENT
)
_INST_ACQ_HEADERS
)
$(CMDSEP)
)
$
(
foreach header,
$
(
$(LIB
BPMCLIENT
)
_SMIO_HEADERS
)
,cp
-p
$(header)
\
$
(
foreach header,
$
(
$(LIB
NAME
)
_ACQ_HEADERS
)
,cp
-p
$(header)
\
$(PWD)
/
$
(
$(LIB
NAME
)
_INST_ACQ_HEADERS
)
$(CMDSEP)
)
$
(
foreach header,
$
(
$(LIB
NAME
)
_SMIO_HEADERS
)
,cp
-p
$(header)
\
$(PWD)
/include/
$(CMDSEP)
)
pre_clean
:
$
(
foreach header,
$(PWD)
/
$
(
$(LIB
BPMCLIENT
)
_INST_ACQ_HEADERS
)
,
\
$
(
foreach header,
$(PWD)
/
$
(
$(LIB
NAME
)
_INST_ACQ_HEADERS
)
,
\
rm
-f
$(header)
$(CMDSEP)
)
$
(
foreach header,
$(PWD)
/
$
(
$(LIB
BPMCLIENT
)
_INST_SMIO_HEADERS
)
,
\
$
(
foreach header,
$(PWD)
/
$
(
$(LIB
NAME
)
_INST_SMIO_HEADERS
)
,
\
rm
-f
$(header)
$(CMDSEP)
)
install
:
...
...
@@ -268,14 +270,14 @@ install:
$
(
foreach lib,
$(TARGET_SHARED)
,ln
-sf
$(lib)
.
$(LIB_VER)
$(PREFIX)
/lib/
$(lib)
$(CMDSEP)
)
$
(
foreach lib,
$(TARGET_SHARED)
,ln
-sf
$(lib)
.
$(LIB_VER)
$(PREFIX)
/lib/
$(lib)
.
$(LIB_VER_MAJOR)
$(CMDSEP)
)
$
(
foreach lib,
$(TARGET_STATIC)
,install
-m
755
$(lib)
$(PREFIX)
/lib
$(CMDSEP)
)
$
(
foreach header,
$
(
$(LIB
BPMCLIENT
)
_INST_HEADERS
)
,install
-m
755
$(header)
$(PREFIX)
/include
$(CMDSEP)
)
$
(
foreach header,
$
(
$(LIB
NAME
)
_INST_HEADERS
)
,install
-m
755
$(header)
$(PREFIX)
/include
$(CMDSEP)
)
uninstall
:
$
(
foreach lib,
$(TARGET_SHARED)
,rm
-f
$(PREFIX)
/lib/
$(lib)
.
$(LIB_VER)
$(CMDSEP)
)
$
(
foreach lib,
$(TARGET_SHARED)
,rm
-f
$(PREFIX)
/lib/
$(lib)
$(CMDSEP)
)
$
(
foreach lib,
$(TARGET_SHARED)
,rm
-f
$(PREFIX)
/lib/
$(lib)
.
$(LIB_VER_MAJOR)
$(CMDSEP)
)
$
(
foreach lib,
$(TARGET_STATIC)
,rm
-f
$(PREFIX)
/lib/
$(lib)
$(CMDSEP)
)
$
(
foreach header,
$
(
notdir
$
(
$(LIB
BPMCLIENT
)
_INST_HEADERS
))
,rm
-f
\
$
(
foreach header,
$
(
notdir
$
(
$(LIB
NAME
)
_INST_HEADERS
))
,rm
-f
\
$(PREFIX)
/include/
$(header)
$(CMDSEP)
)
clean
:
pre_clean
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment