Skip to content

Commit

Permalink
Generate static library on non-Windows platforms too.
Browse files Browse the repository at this point in the history
  • Loading branch information
briansmith committed Aug 27, 2015
1 parent 5007fb3 commit 375e02b
Show file tree
Hide file tree
Showing 4 changed files with 17 additions and 4 deletions.
4 changes: 4 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,10 @@ OBJS += \
$(RING_TEST_MAIN_OBJS) \
$(NULL)

LIBS += \
$(RING_LIB) \
$(NULL)

EXES += $(RING_TEST_EXES)
TESTS += $(RING_TESTS)

Expand Down
4 changes: 3 additions & 1 deletion mk/bottom_of_makefile.mk
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@
GENERATED = \
$(EXES) \
$(OBJS) \
$(OBJS:.o=.d) \
$(LIBS) \
$(OTHER_GENERATED) \
$(NULL)

Expand Down Expand Up @@ -49,7 +51,7 @@ check:

.PHONY: clean
clean:
$(RM) $(EXES) $(OBJS) $(OBJS:.o=.d)
$(RM) $(GENERATED)

# The C/C++ compiler generates dependency info for #includes.

Expand Down
11 changes: 9 additions & 2 deletions mk/ring.mk
Original file line number Diff line number Diff line change
Expand Up @@ -187,6 +187,12 @@ RING_OBJS = $(addprefix $(OBJ_PREFIX), \
$(RING_$(ARCH)_EXTRA_OBJS) \
$(NULL)

RING_LIB = $(LIB_PREFIX)libring.a
$(RING_LIB): ARFLAGS = cDrs
$(RING_LIB): $(RING_OBJS) $(PREFIX)mk/ring.mk
$(RM) $@
$(AR) $(ARFLAGS) $@ $(filter-out $(PREFIX)mk/ring.mk, $^)

RING_TEST_LIB_SRCS = \
crypto/test/file_test.cc \
crypto/test/malloc.cc \
Expand Down Expand Up @@ -232,10 +238,11 @@ $(RING_TEST_EXES): LDLIBS += $(RING_LDLIBS)

$(RING_TEST_EXES): $(EXE_PREFIX)% : \
$(OBJ_PREFIX)%.o \
$(RING_OBJS) \
$(RING_LIB) \
$(RING_TEST_LIB_OBJS) \
$(NULL)
$(CXX) $^ $(LDFLAGS) $(LDLIBS) -o $@
$(CXX) $(filter-out $(RING_LIB),$^) \
-L$(LIB_PREFIX) -lring $(LDFLAGS) $(LDLIBS) -o $@

# TODO: Have -DOPENSSL_NO_ASM controlled by a flag.
# TODO: Fix the code so -Wno-error overrides are not needed.
Expand Down
2 changes: 1 addition & 1 deletion mk/top_of_makefile.mk
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@ endif
BUILD_PREFIX ?= build/

EXE_PREFIX ?= $(BUILD_PREFIX)bin/

OBJ_PREFIX ?= $(BUILD_PREFIX)obj/
LIB_PREFIX ?= $(BUILD_PREFIX)lib/

CFLAGS_STD ?= -std=c11
CXXFLAGS_STD ?= -std=c++11
Expand Down

0 comments on commit 375e02b

Please sign in to comment.