]> Pileus Git - ~andy/sunrise/blob - app-text/peg-markdown/files/peg-markdown-0.4.12-Makefile.patch
app-text/peg-markdown: New ebuild for bug #411895 thanks to mgorny
[~andy/sunrise] / app-text / peg-markdown / files / peg-markdown-0.4.12-Makefile.patch
1 --- Makefile
2 +++ Makefile
3 @@ -1,27 +1,46 @@
4 -ALL : markdown
5 -
6 -PROGRAM=markdown
7 +PROGRAM=peg-markdown
8 +LNAME=peg-markdown
9 +VER=0.4.12
10 +LIBRARY=lib$(LNAME).so
11 +REALNAME=$(LIBRARY).$(VER)
12 +CC ?= gcc
13  CFLAGS ?= -Wall -O3 -ansi
14  OBJS=markdown_parser.o markdown_output.o markdown_lib.o
15  PEGDIR=peg-0.1.4
16 -LEG=$(PEGDIR)/leg
17 +LEG=leg
18 +
19 +PREFIX ?= /usr/local
20 +BINDIR ?= $(PREFIX)/bin
21 +LIBDIR ?= $(PREFIX)/lib
22 +INCDIR ?= $(PREFIX)/inc
23 +
24 +INSTALL ?= install
25 +INSTALL_PROG ?= $(INSTALL) -m755
26 +INSTALL_H ?= $(INSTALL) -m644
27  
28 -$(LEG):
29 -       CC=gcc make -C $(PEGDIR)
30 +ALL : $(PROGRAM) build-doc
31  
32  %.o : %.c markdown_peg.h
33 -       $(CC) -c `pkg-config --cflags glib-2.0` $(CFLAGS) -o $@ $<
34 +       $(CC) -c `pkg-config --cflags glib-2.0` $(CFLAGS) -fPIC -o $@ $<
35 +
36 +$(PROGRAM) : markdown.c $(LIBRARY)
37 +       $(CC) `pkg-config --cflags glib-2.0` `pkg-config --libs glib-2.0` $(CFLAGS) $(LDFLAGS) -o $@ $< \
38 +       -L. -l $(LNAME)
39 +
40 +$(LIBRARY) : $(REALNAME)
41 +       ln -s $< $@
42  
43 -$(PROGRAM) : markdown.c $(OBJS)
44 -       $(CC) `pkg-config --cflags glib-2.0` `pkg-config --libs glib-2.0` $(CFLAGS) -o $@ $(OBJS) $<
45 +$(REALNAME) : $(OBJS)
46 +       $(CC) $(CFLAGS) $(LDFLAGS) -shared -o $@ $? \
47 +       `pkg-config --cflags glib-2.0` `pkg-config --libs glib-2.0`
48  
49 -markdown_parser.c : markdown_parser.leg $(LEG) markdown_peg.h parsing_functions.c utility_functions.c
50 +markdown_parser.c : markdown_parser.leg markdown_peg.h parsing_functions.c utility_functions.c
51         $(LEG) -o $@ $<
52  
53  .PHONY: clean test
54  
55  clean:
56 -       rm -f markdown_parser.c $(PROGRAM) $(OBJS); \
57 +       rm -f markdown_parser.c $(PROGRAM) $(OBJS) $(LIBRARY) $(REALNAME); \
58         make -C $(PEGDIR) clean
59  
60  distclean: clean
61 @@ -29,8 +48,13 @@
62  
63  test: $(PROGRAM)
64         cd MarkdownTest_1.0.3; \
65 +       export LD_LIBRARY_PATH=..; \
66         ./MarkdownTest.pl --script=../$(PROGRAM) --tidy
67  
68  leak-check: $(PROGRAM)
69 -       valgrind --leak-check=full ./markdown README
70 +       export LD_LIBRARY_PATH=.; \
71 +       valgrind --leak-check=full ./$(PROGRAM) README
72  
73 +build-doc: $(PROGRAM)
74 +       export LD_LIBRARY_PATH=.; \
75 +       ./$(PROGRAM) README > README.html