Skip to content

Commit dbb1058

Browse files
committed
Set up jar-test and some refactoring
1 parent a6afd61 commit dbb1058

6 files changed

Lines changed: 22 additions & 11 deletions

File tree

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
.vimrc
12
/*.clj
23
/*.md
34
*.md.tmp

common/vars.mk

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -242,7 +242,8 @@ RAPIDYAML_JAVA := \
242242
$(ROOT)/rapidyaml/src/main/java/org/rapidyaml/Evt.java \
243243
$(ROOT)/rapidyaml/src/main/java/org/rapidyaml/YamlParseErrorException.java
244244
RAPIDYAML_JNI_H := $(ROOT)/rapidyaml/native/org_rapidyaml_Rapidyaml.h
245-
RAPIDYAML_SO := $(ROOT)/rapidyaml/native/librapidyaml.$(RAPIDYAML_VERSION).$(SO)
245+
RAPIDYAML_SO_NAME := librapidyaml.$(RAPIDYAML_VERSION).$(SO)
246+
RAPIDYAML_SO := $(ROOT)/rapidyaml/native/$(RAPIDYAML_SO_NAME)
246247
RAPIDYAML_LIB := $(ROOT)/rapidyaml/native/librapidyaml.$(DOTLIB)
247248
RAPIDYAML_JAR := $(ROOT)/rapidyaml/target/rapidyaml-$(RAPIDYAML_VERSION).jar
248249
RAPIDYAML_INSTALLED_DIR := \

rapidyaml/Makefile

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -11,21 +11,21 @@ RAPIDYAML_JAR_DEPS := \
1111
)
1212

1313
RAPIDYAML_CLASS := $(RAPIDYAML_JAVA:.java=.class)
14+
RAPIDYAML_CLASSES := \
15+
$(RAPIDYAML_CLASS:$(RAPIDYAML)/src/main/java/%=-C src/main/java %)
1416

1517

1618
#------------------------------------------------------------------------------
1719
default::
18-
echo $(RAPIDYAML_SO)
19-
echo $(RAPIDYAML_LIB)
20-
21-
x:
22-
YS -ce 'foo: var'
2320

2421
build:: $(RAPIDYAML_JNI_H) $(RAPIDYAML_SO) $(RAPIDYAML_LIB) $(RAPIDYAML_JAR)
2522
@:
2623

2724
jar: $(RAPIDYAML_JAR)
2825

26+
jar-test: $(RAPIDYAML_JAR)
27+
java -jar $<
28+
2929
install:: $(RAPIDYAML_INSTALLED)
3030

3131
test:: build $(JAVA_INSTALLED)
@@ -54,17 +54,19 @@ jni: $(RAPIDYAML_JNI_H)
5454
#------------------------------------------------------------------------------
5555
$(RAPIDYAML_SO): $(RAPIDYAML_JNI_H)
5656
$(MAKE) -C native $@
57+
58+
# XXX Probably don't need this:
5759
$(RAPIDYAML_LIB): $(RAPIDYAML_JNI_H)
5860
$(MAKE) -C native $@
5961

6062
$(RAPIDYAML_INSTALLED): $(RAPIDYAML_JAR) $(JAVA_INSTALLED)
6163
YS_RAPIDYAML_MAVEN_TEST=1 $(MVN) install
6264
touch $@
6365

64-
$(RAPIDYAML_JAR): $(RAPIDYAML_CLASS) $(JAVA_INSTALLED)
65-
$(JAR) -cvf $@ $<
66-
jar -uf $@ \
67-
-C $(ROOT)/rapidyaml/native/ librapidyaml.0.8.0.so
66+
$(RAPIDYAML_JAR): $(RAPIDYAML_CLASS) $(JAVA_INSTALLED) $(RAPIDYAML_SO)
67+
$(JAR) -cf $@ $(RAPIDYAML_CLASSES)
68+
$(JAR) -uf $@ -C $(RAPIDYAML)/native/ $(RAPIDYAML_SO_NAME)
69+
$(JAR) -umf manifest.txt $@
6870

6971
$(RAPIDYAML_CLASS): $(RAPIDYAML_JAVA) $(JAVA_INSTALLED)
7072
@# this doesn't work:

rapidyaml/manifest.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Main-Class: org.rapidyaml.Rapidyaml

rapidyaml/src/main/java/org/rapidyaml/Rapidyaml.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
* https://stackoverflow.com/questions/1429172/how-to-list-the-files-inside-a-jar-file
1616
* https://docs.oracle.com/javase/8/docs/api/java/lang/ClassLoader.html#getSystemResources-java.lang.String-
1717
*/
18+
1819
package org.rapidyaml;
1920

2021
import java.net.URL;
@@ -56,6 +57,11 @@ private native int ysparse_parse_buf(long ysparse, String filename,
5657

5758
private final long ysparse;
5859

60+
public static void main(String[] args) throws Exception, IOException {
61+
(new Rapidyaml()).timingEnabled(true);
62+
System.out.printf("It works!\n");
63+
}
64+
5965

6066
//------------------------
6167
// CTOR/DTOR

rapidyaml/src/test/java/org/rapidyaml/RapidyamlTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package org.rapidyaml;
22

3-
import org.rapidyaml.*;
3+
import org.rapidyaml.Rapidyaml;
44
import junit.framework.Test;
55
import junit.framework.TestCase;
66
import junit.framework.TestSuite;

0 commit comments

Comments
 (0)