diff --git a/Makefile b/Makefile index 4d855a7..aedfdb3 100644 --- a/Makefile +++ b/Makefile @@ -10,9 +10,9 @@ # TOPDIR ?= . RULEDIR ?= $(TOPDIR)/mk -NAME = test -TARGET = $(NAME).a -SUBDIR = +NAME = sample +TARGET = $(NAME) +SUBDIRS = libraries @@ -25,11 +25,11 @@ # 以下、オプションを適宜変更してください。 # -INCLUDES += +INCLUDES += -Ilibraries/include CFLAGS += CXXFLAGS += LDFLAGS += -LIBS += +LIBS += -Llibraries -lcalc CLEAN_FILES += CLEAN_DIRS += diff --git a/Makefile b/Makefile index 4d855a7..aedfdb3 100644 --- a/Makefile +++ b/Makefile @@ -10,9 +10,9 @@ # TOPDIR ?= . RULEDIR ?= $(TOPDIR)/mk -NAME = test -TARGET = $(NAME).a -SUBDIR = +NAME = sample +TARGET = $(NAME) +SUBDIRS = libraries @@ -25,11 +25,11 @@ # 以下、オプションを適宜変更してください。 # -INCLUDES += +INCLUDES += -Ilibraries/include CFLAGS += CXXFLAGS += LDFLAGS += -LIBS += +LIBS += -Llibraries -lcalc CLEAN_FILES += CLEAN_DIRS += diff --git a/libraries/Makefile b/libraries/Makefile new file mode 100644 index 0000000..88abe23 --- /dev/null +++ b/libraries/Makefile @@ -0,0 +1,43 @@ +# ============================================================================== +# Makefile +# ============================================================================== +# +# TOPDIR : トップディレクトリ +# RULEDIR : Meke のルール一式が格納されているディレクトリ +# NAME : モジュール名 (拡張子を含めないこと) +# TARGET : モジュールファイル名 (拡張子を含めること) +# SUBDIR : サブディレクトリ (処理したい順に空白区切りで記述すること) +# +TOPDIR ?= .. +RULEDIR ?= $(TOPDIR)/mk +NAME = libcalc +TARGET = $(NAME).so +SUBDIRS = + + +# ------------------------------------------------------------------------------ +include $(RULEDIR)/*-cmd.mk +include $(RULEDIR)/*-conf.mk +include $(RULEDIR)/*-auto.mk +# ------------------------------------------------------------------------------ +# +# 以下、オプションを適宜変更してください。 +# + +INCLUDES += +CFLAGS += +CXXFLAGS += +LDFLAGS += +LIBS += + +CLEAN_FILES += +CLEAN_DIRS += + +.DEFAULT_GOAL := all + + + +# ------------------------------------------------------------------------------ +include $(RULEDIR)/*-rule.mk +# ------------------------------------------------------------------------------ + diff --git a/Makefile b/Makefile index 4d855a7..aedfdb3 100644 --- a/Makefile +++ b/Makefile @@ -10,9 +10,9 @@ # TOPDIR ?= . RULEDIR ?= $(TOPDIR)/mk -NAME = test -TARGET = $(NAME).a -SUBDIR = +NAME = sample +TARGET = $(NAME) +SUBDIRS = libraries @@ -25,11 +25,11 @@ # 以下、オプションを適宜変更してください。 # -INCLUDES += +INCLUDES += -Ilibraries/include CFLAGS += CXXFLAGS += LDFLAGS += -LIBS += +LIBS += -Llibraries -lcalc CLEAN_FILES += CLEAN_DIRS += diff --git a/libraries/Makefile b/libraries/Makefile new file mode 100644 index 0000000..88abe23 --- /dev/null +++ b/libraries/Makefile @@ -0,0 +1,43 @@ +# ============================================================================== +# Makefile +# ============================================================================== +# +# TOPDIR : トップディレクトリ +# RULEDIR : Meke のルール一式が格納されているディレクトリ +# NAME : モジュール名 (拡張子を含めないこと) +# TARGET : モジュールファイル名 (拡張子を含めること) +# SUBDIR : サブディレクトリ (処理したい順に空白区切りで記述すること) +# +TOPDIR ?= .. +RULEDIR ?= $(TOPDIR)/mk +NAME = libcalc +TARGET = $(NAME).so +SUBDIRS = + + +# ------------------------------------------------------------------------------ +include $(RULEDIR)/*-cmd.mk +include $(RULEDIR)/*-conf.mk +include $(RULEDIR)/*-auto.mk +# ------------------------------------------------------------------------------ +# +# 以下、オプションを適宜変更してください。 +# + +INCLUDES += +CFLAGS += +CXXFLAGS += +LDFLAGS += +LIBS += + +CLEAN_FILES += +CLEAN_DIRS += + +.DEFAULT_GOAL := all + + + +# ------------------------------------------------------------------------------ +include $(RULEDIR)/*-rule.mk +# ------------------------------------------------------------------------------ + diff --git a/libraries/include/calc.h b/libraries/include/calc.h new file mode 100644 index 0000000..e28d00f --- /dev/null +++ b/libraries/include/calc.h @@ -0,0 +1,8 @@ +#ifndef CALC_H +#define CALC_H + + +int add(int a, int b); + +#endif + diff --git a/Makefile b/Makefile index 4d855a7..aedfdb3 100644 --- a/Makefile +++ b/Makefile @@ -10,9 +10,9 @@ # TOPDIR ?= . RULEDIR ?= $(TOPDIR)/mk -NAME = test -TARGET = $(NAME).a -SUBDIR = +NAME = sample +TARGET = $(NAME) +SUBDIRS = libraries @@ -25,11 +25,11 @@ # 以下、オプションを適宜変更してください。 # -INCLUDES += +INCLUDES += -Ilibraries/include CFLAGS += CXXFLAGS += LDFLAGS += -LIBS += +LIBS += -Llibraries -lcalc CLEAN_FILES += CLEAN_DIRS += diff --git a/libraries/Makefile b/libraries/Makefile new file mode 100644 index 0000000..88abe23 --- /dev/null +++ b/libraries/Makefile @@ -0,0 +1,43 @@ +# ============================================================================== +# Makefile +# ============================================================================== +# +# TOPDIR : トップディレクトリ +# RULEDIR : Meke のルール一式が格納されているディレクトリ +# NAME : モジュール名 (拡張子を含めないこと) +# TARGET : モジュールファイル名 (拡張子を含めること) +# SUBDIR : サブディレクトリ (処理したい順に空白区切りで記述すること) +# +TOPDIR ?= .. +RULEDIR ?= $(TOPDIR)/mk +NAME = libcalc +TARGET = $(NAME).so +SUBDIRS = + + +# ------------------------------------------------------------------------------ +include $(RULEDIR)/*-cmd.mk +include $(RULEDIR)/*-conf.mk +include $(RULEDIR)/*-auto.mk +# ------------------------------------------------------------------------------ +# +# 以下、オプションを適宜変更してください。 +# + +INCLUDES += +CFLAGS += +CXXFLAGS += +LDFLAGS += +LIBS += + +CLEAN_FILES += +CLEAN_DIRS += + +.DEFAULT_GOAL := all + + + +# ------------------------------------------------------------------------------ +include $(RULEDIR)/*-rule.mk +# ------------------------------------------------------------------------------ + diff --git a/libraries/include/calc.h b/libraries/include/calc.h new file mode 100644 index 0000000..e28d00f --- /dev/null +++ b/libraries/include/calc.h @@ -0,0 +1,8 @@ +#ifndef CALC_H +#define CALC_H + + +int add(int a, int b); + +#endif + diff --git a/libraries/src/calc.c b/libraries/src/calc.c new file mode 100644 index 0000000..059d557 --- /dev/null +++ b/libraries/src/calc.c @@ -0,0 +1,6 @@ +#include <stdio.h> + +int add(int a, int b) +{ + return (a + b); +} diff --git a/Makefile b/Makefile index 4d855a7..aedfdb3 100644 --- a/Makefile +++ b/Makefile @@ -10,9 +10,9 @@ # TOPDIR ?= . RULEDIR ?= $(TOPDIR)/mk -NAME = test -TARGET = $(NAME).a -SUBDIR = +NAME = sample +TARGET = $(NAME) +SUBDIRS = libraries @@ -25,11 +25,11 @@ # 以下、オプションを適宜変更してください。 # -INCLUDES += +INCLUDES += -Ilibraries/include CFLAGS += CXXFLAGS += LDFLAGS += -LIBS += +LIBS += -Llibraries -lcalc CLEAN_FILES += CLEAN_DIRS += diff --git a/libraries/Makefile b/libraries/Makefile new file mode 100644 index 0000000..88abe23 --- /dev/null +++ b/libraries/Makefile @@ -0,0 +1,43 @@ +# ============================================================================== +# Makefile +# ============================================================================== +# +# TOPDIR : トップディレクトリ +# RULEDIR : Meke のルール一式が格納されているディレクトリ +# NAME : モジュール名 (拡張子を含めないこと) +# TARGET : モジュールファイル名 (拡張子を含めること) +# SUBDIR : サブディレクトリ (処理したい順に空白区切りで記述すること) +# +TOPDIR ?= .. +RULEDIR ?= $(TOPDIR)/mk +NAME = libcalc +TARGET = $(NAME).so +SUBDIRS = + + +# ------------------------------------------------------------------------------ +include $(RULEDIR)/*-cmd.mk +include $(RULEDIR)/*-conf.mk +include $(RULEDIR)/*-auto.mk +# ------------------------------------------------------------------------------ +# +# 以下、オプションを適宜変更してください。 +# + +INCLUDES += +CFLAGS += +CXXFLAGS += +LDFLAGS += +LIBS += + +CLEAN_FILES += +CLEAN_DIRS += + +.DEFAULT_GOAL := all + + + +# ------------------------------------------------------------------------------ +include $(RULEDIR)/*-rule.mk +# ------------------------------------------------------------------------------ + diff --git a/libraries/include/calc.h b/libraries/include/calc.h new file mode 100644 index 0000000..e28d00f --- /dev/null +++ b/libraries/include/calc.h @@ -0,0 +1,8 @@ +#ifndef CALC_H +#define CALC_H + + +int add(int a, int b); + +#endif + diff --git a/libraries/src/calc.c b/libraries/src/calc.c new file mode 100644 index 0000000..059d557 --- /dev/null +++ b/libraries/src/calc.c @@ -0,0 +1,6 @@ +#include <stdio.h> + +int add(int a, int b) +{ + return (a + b); +} diff --git a/mk/all-rule.mk b/mk/all-rule.mk index 3cf2923..96faef4 100644 --- a/mk/all-rule.mk +++ b/mk/all-rule.mk @@ -6,7 +6,7 @@ @for subdir in $(SUBDIRS); do \ $(MAKE) all -C $$subdir; \ done -ifneq ($(strip $(TOP_TARGET)),) - $(MAKE) $(TOP_TARGET) +ifneq ($(strip $(TARGET)),) + $(MAKE) $(TARGET) endif diff --git a/Makefile b/Makefile index 4d855a7..aedfdb3 100644 --- a/Makefile +++ b/Makefile @@ -10,9 +10,9 @@ # TOPDIR ?= . RULEDIR ?= $(TOPDIR)/mk -NAME = test -TARGET = $(NAME).a -SUBDIR = +NAME = sample +TARGET = $(NAME) +SUBDIRS = libraries @@ -25,11 +25,11 @@ # 以下、オプションを適宜変更してください。 # -INCLUDES += +INCLUDES += -Ilibraries/include CFLAGS += CXXFLAGS += LDFLAGS += -LIBS += +LIBS += -Llibraries -lcalc CLEAN_FILES += CLEAN_DIRS += diff --git a/libraries/Makefile b/libraries/Makefile new file mode 100644 index 0000000..88abe23 --- /dev/null +++ b/libraries/Makefile @@ -0,0 +1,43 @@ +# ============================================================================== +# Makefile +# ============================================================================== +# +# TOPDIR : トップディレクトリ +# RULEDIR : Meke のルール一式が格納されているディレクトリ +# NAME : モジュール名 (拡張子を含めないこと) +# TARGET : モジュールファイル名 (拡張子を含めること) +# SUBDIR : サブディレクトリ (処理したい順に空白区切りで記述すること) +# +TOPDIR ?= .. +RULEDIR ?= $(TOPDIR)/mk +NAME = libcalc +TARGET = $(NAME).so +SUBDIRS = + + +# ------------------------------------------------------------------------------ +include $(RULEDIR)/*-cmd.mk +include $(RULEDIR)/*-conf.mk +include $(RULEDIR)/*-auto.mk +# ------------------------------------------------------------------------------ +# +# 以下、オプションを適宜変更してください。 +# + +INCLUDES += +CFLAGS += +CXXFLAGS += +LDFLAGS += +LIBS += + +CLEAN_FILES += +CLEAN_DIRS += + +.DEFAULT_GOAL := all + + + +# ------------------------------------------------------------------------------ +include $(RULEDIR)/*-rule.mk +# ------------------------------------------------------------------------------ + diff --git a/libraries/include/calc.h b/libraries/include/calc.h new file mode 100644 index 0000000..e28d00f --- /dev/null +++ b/libraries/include/calc.h @@ -0,0 +1,8 @@ +#ifndef CALC_H +#define CALC_H + + +int add(int a, int b); + +#endif + diff --git a/libraries/src/calc.c b/libraries/src/calc.c new file mode 100644 index 0000000..059d557 --- /dev/null +++ b/libraries/src/calc.c @@ -0,0 +1,6 @@ +#include <stdio.h> + +int add(int a, int b) +{ + return (a + b); +} diff --git a/mk/all-rule.mk b/mk/all-rule.mk index 3cf2923..96faef4 100644 --- a/mk/all-rule.mk +++ b/mk/all-rule.mk @@ -6,7 +6,7 @@ @for subdir in $(SUBDIRS); do \ $(MAKE) all -C $$subdir; \ done -ifneq ($(strip $(TOP_TARGET)),) - $(MAKE) $(TOP_TARGET) +ifneq ($(strip $(TARGET)),) + $(MAKE) $(TARGET) endif diff --git a/mk/check-cppcheck-conf.mk b/mk/check-cppcheck-conf.mk index ca3db60..c94554a 100644 --- a/mk/check-cppcheck-conf.mk +++ b/mk/check-cppcheck-conf.mk @@ -2,8 +2,6 @@ # cppcheck 設定 # ============================================================================== - - # ------------------------------------------------------------------------------ # 基本設定 # ------------------------------------------------------------------------------ @@ -12,8 +10,6 @@ CPPHECK_REPORT_DIR = report/cppcheck CPPCHECK_LOG = $(CPPCHECK_REPORT_DIR)/cppcheck.xml - - # ------------------------------------------------------------------------------ # 警告抑止 # ------------------------------------------------------------------------------ @@ -23,8 +19,6 @@ CPPCHECK_SUPPRESS = --suppress=missingIncludeSystem CPPCHECK_SUPPRESS += --suppress=unusedFunction - - # ------------------------------------------------------------------------------ # CLEAN 時の削除ファイル追加 # ------------------------------------------------------------------------------ diff --git a/Makefile b/Makefile index 4d855a7..aedfdb3 100644 --- a/Makefile +++ b/Makefile @@ -10,9 +10,9 @@ # TOPDIR ?= . RULEDIR ?= $(TOPDIR)/mk -NAME = test -TARGET = $(NAME).a -SUBDIR = +NAME = sample +TARGET = $(NAME) +SUBDIRS = libraries @@ -25,11 +25,11 @@ # 以下、オプションを適宜変更してください。 # -INCLUDES += +INCLUDES += -Ilibraries/include CFLAGS += CXXFLAGS += LDFLAGS += -LIBS += +LIBS += -Llibraries -lcalc CLEAN_FILES += CLEAN_DIRS += diff --git a/libraries/Makefile b/libraries/Makefile new file mode 100644 index 0000000..88abe23 --- /dev/null +++ b/libraries/Makefile @@ -0,0 +1,43 @@ +# ============================================================================== +# Makefile +# ============================================================================== +# +# TOPDIR : トップディレクトリ +# RULEDIR : Meke のルール一式が格納されているディレクトリ +# NAME : モジュール名 (拡張子を含めないこと) +# TARGET : モジュールファイル名 (拡張子を含めること) +# SUBDIR : サブディレクトリ (処理したい順に空白区切りで記述すること) +# +TOPDIR ?= .. +RULEDIR ?= $(TOPDIR)/mk +NAME = libcalc +TARGET = $(NAME).so +SUBDIRS = + + +# ------------------------------------------------------------------------------ +include $(RULEDIR)/*-cmd.mk +include $(RULEDIR)/*-conf.mk +include $(RULEDIR)/*-auto.mk +# ------------------------------------------------------------------------------ +# +# 以下、オプションを適宜変更してください。 +# + +INCLUDES += +CFLAGS += +CXXFLAGS += +LDFLAGS += +LIBS += + +CLEAN_FILES += +CLEAN_DIRS += + +.DEFAULT_GOAL := all + + + +# ------------------------------------------------------------------------------ +include $(RULEDIR)/*-rule.mk +# ------------------------------------------------------------------------------ + diff --git a/libraries/include/calc.h b/libraries/include/calc.h new file mode 100644 index 0000000..e28d00f --- /dev/null +++ b/libraries/include/calc.h @@ -0,0 +1,8 @@ +#ifndef CALC_H +#define CALC_H + + +int add(int a, int b); + +#endif + diff --git a/libraries/src/calc.c b/libraries/src/calc.c new file mode 100644 index 0000000..059d557 --- /dev/null +++ b/libraries/src/calc.c @@ -0,0 +1,6 @@ +#include <stdio.h> + +int add(int a, int b) +{ + return (a + b); +} diff --git a/mk/all-rule.mk b/mk/all-rule.mk index 3cf2923..96faef4 100644 --- a/mk/all-rule.mk +++ b/mk/all-rule.mk @@ -6,7 +6,7 @@ @for subdir in $(SUBDIRS); do \ $(MAKE) all -C $$subdir; \ done -ifneq ($(strip $(TOP_TARGET)),) - $(MAKE) $(TOP_TARGET) +ifneq ($(strip $(TARGET)),) + $(MAKE) $(TARGET) endif diff --git a/mk/check-cppcheck-conf.mk b/mk/check-cppcheck-conf.mk index ca3db60..c94554a 100644 --- a/mk/check-cppcheck-conf.mk +++ b/mk/check-cppcheck-conf.mk @@ -2,8 +2,6 @@ # cppcheck 設定 # ============================================================================== - - # ------------------------------------------------------------------------------ # 基本設定 # ------------------------------------------------------------------------------ @@ -12,8 +10,6 @@ CPPHECK_REPORT_DIR = report/cppcheck CPPCHECK_LOG = $(CPPCHECK_REPORT_DIR)/cppcheck.xml - - # ------------------------------------------------------------------------------ # 警告抑止 # ------------------------------------------------------------------------------ @@ -23,8 +19,6 @@ CPPCHECK_SUPPRESS = --suppress=missingIncludeSystem CPPCHECK_SUPPRESS += --suppress=unusedFunction - - # ------------------------------------------------------------------------------ # CLEAN 時の削除ファイル追加 # ------------------------------------------------------------------------------ diff --git a/mk/check-lcov-cobertura-conf.mk b/mk/check-lcov-cobertura-conf.mk index 8ca940f..3e27680 100644 --- a/mk/check-lcov-cobertura-conf.mk +++ b/mk/check-lcov-cobertura-conf.mk @@ -2,8 +2,6 @@ # lcov cobertura 設定 # ============================================================================== - - # ------------------------------------------------------------------------------ # 基本設定 # ------------------------------------------------------------------------------ diff --git a/Makefile b/Makefile index 4d855a7..aedfdb3 100644 --- a/Makefile +++ b/Makefile @@ -10,9 +10,9 @@ # TOPDIR ?= . RULEDIR ?= $(TOPDIR)/mk -NAME = test -TARGET = $(NAME).a -SUBDIR = +NAME = sample +TARGET = $(NAME) +SUBDIRS = libraries @@ -25,11 +25,11 @@ # 以下、オプションを適宜変更してください。 # -INCLUDES += +INCLUDES += -Ilibraries/include CFLAGS += CXXFLAGS += LDFLAGS += -LIBS += +LIBS += -Llibraries -lcalc CLEAN_FILES += CLEAN_DIRS += diff --git a/libraries/Makefile b/libraries/Makefile new file mode 100644 index 0000000..88abe23 --- /dev/null +++ b/libraries/Makefile @@ -0,0 +1,43 @@ +# ============================================================================== +# Makefile +# ============================================================================== +# +# TOPDIR : トップディレクトリ +# RULEDIR : Meke のルール一式が格納されているディレクトリ +# NAME : モジュール名 (拡張子を含めないこと) +# TARGET : モジュールファイル名 (拡張子を含めること) +# SUBDIR : サブディレクトリ (処理したい順に空白区切りで記述すること) +# +TOPDIR ?= .. +RULEDIR ?= $(TOPDIR)/mk +NAME = libcalc +TARGET = $(NAME).so +SUBDIRS = + + +# ------------------------------------------------------------------------------ +include $(RULEDIR)/*-cmd.mk +include $(RULEDIR)/*-conf.mk +include $(RULEDIR)/*-auto.mk +# ------------------------------------------------------------------------------ +# +# 以下、オプションを適宜変更してください。 +# + +INCLUDES += +CFLAGS += +CXXFLAGS += +LDFLAGS += +LIBS += + +CLEAN_FILES += +CLEAN_DIRS += + +.DEFAULT_GOAL := all + + + +# ------------------------------------------------------------------------------ +include $(RULEDIR)/*-rule.mk +# ------------------------------------------------------------------------------ + diff --git a/libraries/include/calc.h b/libraries/include/calc.h new file mode 100644 index 0000000..e28d00f --- /dev/null +++ b/libraries/include/calc.h @@ -0,0 +1,8 @@ +#ifndef CALC_H +#define CALC_H + + +int add(int a, int b); + +#endif + diff --git a/libraries/src/calc.c b/libraries/src/calc.c new file mode 100644 index 0000000..059d557 --- /dev/null +++ b/libraries/src/calc.c @@ -0,0 +1,6 @@ +#include <stdio.h> + +int add(int a, int b) +{ + return (a + b); +} diff --git a/mk/all-rule.mk b/mk/all-rule.mk index 3cf2923..96faef4 100644 --- a/mk/all-rule.mk +++ b/mk/all-rule.mk @@ -6,7 +6,7 @@ @for subdir in $(SUBDIRS); do \ $(MAKE) all -C $$subdir; \ done -ifneq ($(strip $(TOP_TARGET)),) - $(MAKE) $(TOP_TARGET) +ifneq ($(strip $(TARGET)),) + $(MAKE) $(TARGET) endif diff --git a/mk/check-cppcheck-conf.mk b/mk/check-cppcheck-conf.mk index ca3db60..c94554a 100644 --- a/mk/check-cppcheck-conf.mk +++ b/mk/check-cppcheck-conf.mk @@ -2,8 +2,6 @@ # cppcheck 設定 # ============================================================================== - - # ------------------------------------------------------------------------------ # 基本設定 # ------------------------------------------------------------------------------ @@ -12,8 +10,6 @@ CPPHECK_REPORT_DIR = report/cppcheck CPPCHECK_LOG = $(CPPCHECK_REPORT_DIR)/cppcheck.xml - - # ------------------------------------------------------------------------------ # 警告抑止 # ------------------------------------------------------------------------------ @@ -23,8 +19,6 @@ CPPCHECK_SUPPRESS = --suppress=missingIncludeSystem CPPCHECK_SUPPRESS += --suppress=unusedFunction - - # ------------------------------------------------------------------------------ # CLEAN 時の削除ファイル追加 # ------------------------------------------------------------------------------ diff --git a/mk/check-lcov-cobertura-conf.mk b/mk/check-lcov-cobertura-conf.mk index 8ca940f..3e27680 100644 --- a/mk/check-lcov-cobertura-conf.mk +++ b/mk/check-lcov-cobertura-conf.mk @@ -2,8 +2,6 @@ # lcov cobertura 設定 # ============================================================================== - - # ------------------------------------------------------------------------------ # 基本設定 # ------------------------------------------------------------------------------ diff --git a/mk/clean-conf.mk b/mk/clean-conf.mk index 0d3e443..c0ceed7 100644 --- a/mk/clean-conf.mk +++ b/mk/clean-conf.mk @@ -1,17 +1,13 @@ # ============================================================================== -# TARGET ファイル削除設定 +# clean 設定 # ============================================================================== -# -# CLEAN 時に削除されるファイルを追加 -# - ifneq ($(strip $(TARGET)),) - CLEAN_FILES += $(OBJDIR)/*.o $(OBJDIR)/*.d $(OBJDIR)/*.gcno $(OBJDIR)/*.gcda CLEAN_FILES += $(TARGET) # $(TOPDIR) に置かれたファイルの削除 ifneq ($(strip $(TARGET)),$(strip $(NAME))) + # TARGET がライブラリの場合 CLEAN_FILES += $(addprefix $(TOPDIR)/include/,$(notdir $(wildcard include/*.h))) CLEAN_FILES += $(addprefix $(TOPDIR)/lib/,$(TARGET)) diff --git a/Makefile b/Makefile index 4d855a7..aedfdb3 100644 --- a/Makefile +++ b/Makefile @@ -10,9 +10,9 @@ # TOPDIR ?= . RULEDIR ?= $(TOPDIR)/mk -NAME = test -TARGET = $(NAME).a -SUBDIR = +NAME = sample +TARGET = $(NAME) +SUBDIRS = libraries @@ -25,11 +25,11 @@ # 以下、オプションを適宜変更してください。 # -INCLUDES += +INCLUDES += -Ilibraries/include CFLAGS += CXXFLAGS += LDFLAGS += -LIBS += +LIBS += -Llibraries -lcalc CLEAN_FILES += CLEAN_DIRS += diff --git a/libraries/Makefile b/libraries/Makefile new file mode 100644 index 0000000..88abe23 --- /dev/null +++ b/libraries/Makefile @@ -0,0 +1,43 @@ +# ============================================================================== +# Makefile +# ============================================================================== +# +# TOPDIR : トップディレクトリ +# RULEDIR : Meke のルール一式が格納されているディレクトリ +# NAME : モジュール名 (拡張子を含めないこと) +# TARGET : モジュールファイル名 (拡張子を含めること) +# SUBDIR : サブディレクトリ (処理したい順に空白区切りで記述すること) +# +TOPDIR ?= .. +RULEDIR ?= $(TOPDIR)/mk +NAME = libcalc +TARGET = $(NAME).so +SUBDIRS = + + +# ------------------------------------------------------------------------------ +include $(RULEDIR)/*-cmd.mk +include $(RULEDIR)/*-conf.mk +include $(RULEDIR)/*-auto.mk +# ------------------------------------------------------------------------------ +# +# 以下、オプションを適宜変更してください。 +# + +INCLUDES += +CFLAGS += +CXXFLAGS += +LDFLAGS += +LIBS += + +CLEAN_FILES += +CLEAN_DIRS += + +.DEFAULT_GOAL := all + + + +# ------------------------------------------------------------------------------ +include $(RULEDIR)/*-rule.mk +# ------------------------------------------------------------------------------ + diff --git a/libraries/include/calc.h b/libraries/include/calc.h new file mode 100644 index 0000000..e28d00f --- /dev/null +++ b/libraries/include/calc.h @@ -0,0 +1,8 @@ +#ifndef CALC_H +#define CALC_H + + +int add(int a, int b); + +#endif + diff --git a/libraries/src/calc.c b/libraries/src/calc.c new file mode 100644 index 0000000..059d557 --- /dev/null +++ b/libraries/src/calc.c @@ -0,0 +1,6 @@ +#include <stdio.h> + +int add(int a, int b) +{ + return (a + b); +} diff --git a/mk/all-rule.mk b/mk/all-rule.mk index 3cf2923..96faef4 100644 --- a/mk/all-rule.mk +++ b/mk/all-rule.mk @@ -6,7 +6,7 @@ @for subdir in $(SUBDIRS); do \ $(MAKE) all -C $$subdir; \ done -ifneq ($(strip $(TOP_TARGET)),) - $(MAKE) $(TOP_TARGET) +ifneq ($(strip $(TARGET)),) + $(MAKE) $(TARGET) endif diff --git a/mk/check-cppcheck-conf.mk b/mk/check-cppcheck-conf.mk index ca3db60..c94554a 100644 --- a/mk/check-cppcheck-conf.mk +++ b/mk/check-cppcheck-conf.mk @@ -2,8 +2,6 @@ # cppcheck 設定 # ============================================================================== - - # ------------------------------------------------------------------------------ # 基本設定 # ------------------------------------------------------------------------------ @@ -12,8 +10,6 @@ CPPHECK_REPORT_DIR = report/cppcheck CPPCHECK_LOG = $(CPPCHECK_REPORT_DIR)/cppcheck.xml - - # ------------------------------------------------------------------------------ # 警告抑止 # ------------------------------------------------------------------------------ @@ -23,8 +19,6 @@ CPPCHECK_SUPPRESS = --suppress=missingIncludeSystem CPPCHECK_SUPPRESS += --suppress=unusedFunction - - # ------------------------------------------------------------------------------ # CLEAN 時の削除ファイル追加 # ------------------------------------------------------------------------------ diff --git a/mk/check-lcov-cobertura-conf.mk b/mk/check-lcov-cobertura-conf.mk index 8ca940f..3e27680 100644 --- a/mk/check-lcov-cobertura-conf.mk +++ b/mk/check-lcov-cobertura-conf.mk @@ -2,8 +2,6 @@ # lcov cobertura 設定 # ============================================================================== - - # ------------------------------------------------------------------------------ # 基本設定 # ------------------------------------------------------------------------------ diff --git a/mk/clean-conf.mk b/mk/clean-conf.mk index 0d3e443..c0ceed7 100644 --- a/mk/clean-conf.mk +++ b/mk/clean-conf.mk @@ -1,17 +1,13 @@ # ============================================================================== -# TARGET ファイル削除設定 +# clean 設定 # ============================================================================== -# -# CLEAN 時に削除されるファイルを追加 -# - ifneq ($(strip $(TARGET)),) - CLEAN_FILES += $(OBJDIR)/*.o $(OBJDIR)/*.d $(OBJDIR)/*.gcno $(OBJDIR)/*.gcda CLEAN_FILES += $(TARGET) # $(TOPDIR) に置かれたファイルの削除 ifneq ($(strip $(TARGET)),$(strip $(NAME))) + # TARGET がライブラリの場合 CLEAN_FILES += $(addprefix $(TOPDIR)/include/,$(notdir $(wildcard include/*.h))) CLEAN_FILES += $(addprefix $(TOPDIR)/lib/,$(TARGET)) diff --git a/src/test.c b/src/test.c new file mode 100644 index 0000000..4265469 --- /dev/null +++ b/src/test.c @@ -0,0 +1,15 @@ +#include <stdio.h> + +#include "calc.h" + + +int main(void) +{ + int a = 5; + int b = 100; + int c = add(a, b); + printf("%d\n", c); + return 0; +} + +