OSDN Git Service

[maven-release-plugin] prepare release sqlite-jdbc-3.6.17.3
[xerial/sqlite-jdbc.git] / Makefile.package
1 RESOURCE_DIR=src/main/resources\r
2 NATIVE_DIR=$(RESOURCE_DIR)/native\r
3 RSYNC=rsync -av -e ssh --exclude=".svn"\r
4 \r
5 WIN_SERVER=192.168.131.10\r
6 WIN_WORK=work/eclipse/xerial/sqlite-jdbc\r
7 \r
8 MAC_SERVER=192.168.131.9\r
9 MAC_WORK=work/eclipse/workspace/xerial/sqlite-jdbc\r
10 \r
11 LINUX_SERVER=sprite\r
12 LINUX_WORK=work/eclipse/xerial/sqlite-jdbc\r
13 \r
14 AMD_SERVER=utgb01\r
15 AMD_WORK=work/eclipse/xerial/sqlite-jdbc\r
16 \r
17 BUILD_CMD = svn update && make clean-native && make native\r
18 TEST_CMD = mvn test\r
19 \r
20 all: compile test\r
21 \r
22 include VERSION\r
23 sqlite-version := sqlite-$(sqlite_version)\r
24 \r
25 LIB_DIR=target/dll/$(sqlite-version)\r
26 DLL_DIR=$(LIB_DIR)/native\r
27 \r
28 DLL_WIN=$(DLL_DIR)/Windows/x86/sqlitejdbc.dll\r
29 DLL_MAC=$(DLL_DIR)/Mac/i386/libsqlitejdbc.jnilib\r
30 DLL_LINUX=$(DLL_DIR)/Linux/i386/libsqlitejdbc.so\r
31 DLL_AMD64=$(DLL_DIR)/Linux/amd64/libsqlitejdbc.so\r
32 LIB_PUREJAVA=$(LIB_DIR)/purejava/SQLite.class\r
33 \r
34 $(LIB_PUREJAVA):\r
35         ssh $(MAC_SERVER) "source .zprofile && cd $(MAC_WORK)/sqlitejdbc && make -f Makefile.nested"\r
36         mkdir -p $(LIB_DIR)/purejava\r
37         scp $(MAC_SERVER):./$(MAC_WORK)/sqlitejdbc/build/org/sqlite/SQLite.class $(LIB_DIR)/purejava/\r
38 \r
39 \r
40 $(DLL_WIN): \r
41         ssh $(WIN_SERVER) "source .zprofile && cd $(WIN_WORK) && $(BUILD_CMD)"\r
42         mkdir -p $(DLL_DIR)/Windows\r
43         $(RSYNC)  $(WIN_SERVER):./$(WIN_WORK)/$(DLL_DIR)/Windows/ $(DLL_DIR)/Windows/\r
44 \r
45 $(DLL_MAC): \r
46         ssh $(MAC_SERVER) "source .zprofile && cd $(MAC_WORK) && $(BUILD_CMD)"\r
47         mkdir -p $(DLL_DIR)/Mac\r
48         $(RSYNC)  $(MAC_SERVER):./$(MAC_WORK)/$(DLL_DIR)/Mac/ $(DLL_DIR)/Mac/\r
49 \r
50 $(DLL_LINUX):\r
51         ssh $(LINUX_SERVER) "source .zprofile && source /etc/profile.d/java.sh && cd $(LINUX_WORK) && $(BUILD_CMD)"\r
52         mkdir -p $(DLL_DIR)/Linux/i386\r
53         $(RSYNC)  $(LINUX_SERVER):./$(LINUX_WORK)/$(DLL_DIR)/Linux/i386/ $(DLL_DIR)/Linux/i386/\r
54 \r
55 $(DLL_AMD64):\r
56         ssh $(AMD_SERVER) "source .zprofile && cd $(AMD_WORK) && $(BUILD_CMD)"\r
57         mkdir -p $(DLL_DIR)/Linux/amd64\r
58         $(RSYNC)  $(AMD_SERVER):./$(AMD_WORK)/$(DLL_DIR)/Linux/amd64/ $(DLL_DIR)/Linux/amd64/\r
59 \r
60 $(DLL_DIR):\r
61         mkdir -p $@\r
62 \r
63 compile: $(DLL_DIR) $(LIB_PUREJAVA) $(DLL_WIN) $(DLL_MAC) $(DLL_LINUX) $(DLL_AMD64)\r
64         cp $(LIB_PUREJAVA) $(RESOURCE_DIR)/org/sqlite\r
65         cp -r $(DLL_DIR)/ $(RESOURCE_DIR)/native/\r
66 \r
67 test:\r
68         ssh $(WIN_SERVER) "source .zprofile && cd $(WIN_WORK) && $(TEST_CMD)"\r
69         ssh $(MAC_SERVER) "source .zprofile && cd $(MAC_WORK) && $(TEST_CMD)"\r
70         ssh $(LINUX_SERVER) "source .zprofile && source /etc/profile.d/java.sh && cd $(LINUX_WORK) && $(TEST_CMD)"\r
71         ssh $(AMD_SERVER) "source .zprofile && cd $(AMD_WORK) && $(TEST_CMD)"\r
72         ssh $(MAC_SERVER) "source .zprofile && cd $(MAC_WORK) && $(TEST_CMD) -DargLine='-Dsqlite.purejava=true'"\r
73 \r
74         \r
75 release:\r
76         mvn release:prepare\r
77         mvn release:perform\r
78 \r
79 release-xerial:\r
80         mvn release:perform -DconnectionUrl=scm:svn:https://www.xerial.org/svn/project/XerialJ/tags/sqlite-jdbc/sqlite-jdbc-$(sqlite_version)\r
81 \r
82 release-sourceforge:\r
83         mvn release:perform -Darguments="-P sourceforge" -DconnectionUrl=scm:svn:https://www.xerial.org/svn/project/XerialJ/tags/sqlite-jdbc/sqlite-jdbc-$(sqlite_version)\r
84