1 |
|
---|
2 | # RDFInt.php - RDF Interfaces for PHP
|
---|
3 | # Copyright 2011 netlabs.org
|
---|
4 | # Author: Christian Langanke, Adrian Gschwend
|
---|
5 | #
|
---|
6 | # Licensed under the Apache License, Version 2.0 (the "License");
|
---|
7 | # you may not use this file except in compliance with the License.
|
---|
8 | # You may obtain a copy of the License at
|
---|
9 | #
|
---|
10 | # http://www.apache.org/licenses/LICENSE-2.0
|
---|
11 | #
|
---|
12 | # Unless required by applicable law or agreed to in writing, software
|
---|
13 | # distributed under the License is distributed on an "AS IS" BASIS,
|
---|
14 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
---|
15 | # See the License for the specific language governing permissions and
|
---|
16 | # limitations under the License.
|
---|
17 |
|
---|
18 | # CONFIGURE HERE
|
---|
19 |
|
---|
20 | LIBNAME=RDFint.php
|
---|
21 | LIBDESCRIPTION=RDF Interfaces for PHP
|
---|
22 | LIBROOT=..
|
---|
23 | OUTPUTDIR=doc
|
---|
24 | SOURCEFILES=*.php
|
---|
25 | SOURCEFILES_EXCLUDE=*/.svn/* */classes/Core.php */unittest/* */samples/* */fdebug.php */doxygen/doc/*
|
---|
26 | EXAMPLE_PATH=..
|
---|
27 | SOURCE_DEPENDENCIES=../LICENSE-2.0.txt ../classes/*
|
---|
28 |
|
---|
29 | # SHIP*: mind the trailing slash !!!
|
---|
30 | SHIPDIR=https://webdav.netlabs.org/developer/rdfint.php/
|
---|
31 | SHIPSUBDIR=$(SHIPDIR)search/
|
---|
32 |
|
---|
33 | # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
---|
34 |
|
---|
35 | # determine os dependent values
|
---|
36 | ifeq ($(OS), Windows_NT)
|
---|
37 | CAT=type
|
---|
38 | CP=copy
|
---|
39 | RM=del
|
---|
40 | RMDIR=rd /s /q
|
---|
41 | NUL=NUL
|
---|
42 | LAUNCH=cscript /nologo doclaunch.vbs
|
---|
43 | DATE=$(shell echo %DATE%)
|
---|
44 | MORE=cmd /c start notepad
|
---|
45 | else
|
---|
46 | CAT=cat
|
---|
47 | CP=cp
|
---|
48 | RM=rm
|
---|
49 | RMDIR=rm -rf
|
---|
50 | NUL=/dev/null
|
---|
51 | LAUNCH=firefox
|
---|
52 | DATE=$(shell date +%d.%m.%Y)
|
---|
53 | MORE=less
|
---|
54 | endif
|
---|
55 |
|
---|
56 | # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
---|
57 |
|
---|
58 | # determine automatic values
|
---|
59 |
|
---|
60 | # use branch name as version
|
---|
61 | CURRDIR=$(abspath ..)
|
---|
62 | CURRDIR_LIST=$(subst /, , ${CURRDIR})
|
---|
63 | LIBVERSION=$(lastword ${CURRDIR_LIST})
|
---|
64 |
|
---|
65 | # extrat year from date
|
---|
66 | DATE_LIST=$(subst ., , ${DATE})
|
---|
67 | LIBYEAR=$(lastword ${DATE_LIST})
|
---|
68 |
|
---|
69 | # determine user for shipping
|
---|
70 | ifeq ($(CURL_USER),)
|
---|
71 | CURL_USER=$(USERNAME)
|
---|
72 | endif
|
---|
73 | ifneq ($(CURL_PASSWORD),)
|
---|
74 | CURL_USER:=$(CURL_USER):$(CURL_PASSWORD)
|
---|
75 | endif
|
---|
76 |
|
---|
77 | CFGFILE=cfg
|
---|
78 |
|
---|
79 | # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
---|
80 |
|
---|
81 | # library specific defaults
|
---|
82 |
|
---|
83 | ifeq ($(OS), Windows_NT)
|
---|
84 | DOXYGENCFG:=$(TEMP)\doxygen_$(LIBNAME).cfg
|
---|
85 | SHIPFILES=$(OUTPUTDIR)\html\*
|
---|
86 | SHIPFILES_SEARCH=$(OUTPUTDIR)\html\search\*
|
---|
87 | CURLCFG_SHIP_CLEAN:=$(TEMP)\curl_ship_clean_$(LIBNAME).cfg
|
---|
88 | CURLCFG_SHIP_INIT:=$(TEMP)\curl_ship_init_$(LIBNAME).cfg
|
---|
89 | CURLCFG_SHIP_UPLOAD:=$(TEMP)\curl_ship_upload_$(LIBNAME).cfg
|
---|
90 | CURLLOG_SHIP:=$(TEMP)\curl_log_$(LIBNAME).txt
|
---|
91 | else
|
---|
92 | DOXYGENCFG:=/tmp/doxygen_$(LIBNAME).cfg
|
---|
93 | SHIPFILES=$(OUTPUTDIR)/html/*
|
---|
94 | SHIPFILES_SEARCH=$(OUTPUTDIR)/html/search/*
|
---|
95 | CURLCFG_SHIP_CLEAN:=/tmp/curl_ship_clean_$(LIBNAME).cfg
|
---|
96 | CURLCFG_SHIP_INIT:=/tmp/curl_ship_init_$(LIBNAME).cfg
|
---|
97 | CURLCFG_SHIP_UPLOAD:=/tmp/curl_ship_upload_$(LIBNAME).cfg
|
---|
98 | CURLLOG_SHIP:=/tmp/curl_log_$(LIBNAME).cfg
|
---|
99 | endif
|
---|
100 |
|
---|
101 | OUTPUTFILE=$(OUTPUTDIR)/html/index.html
|
---|
102 |
|
---|
103 | # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
---|
104 |
|
---|
105 | # --- phony targets
|
---|
106 |
|
---|
107 | .PHONY: help all launch ship showcfg clean again curlcfg curllog
|
---|
108 |
|
---|
109 | help:
|
---|
110 | @$(CAT) help.txt
|
---|
111 |
|
---|
112 | all: $(OUTPUTFILE)
|
---|
113 |
|
---|
114 | launch: all
|
---|
115 | @$(LAUNCH) $(OUTPUTFILE) &
|
---|
116 |
|
---|
117 | ship: $(OUTPUTFILE) $(CURLCFG_SHIP_CLEAN) $(CURLCFG_SHIP_INIT) $(CURLCFG_SHIP_UPLOAD)
|
---|
118 | -@echo Shipping documentation to: $(SHIPDIR)
|
---|
119 | -@echo cleaning up...
|
---|
120 | -@curl --config $(CURLCFG_SHIP_CLEAN) >$(CURLLOG_SHIP) 2>&1
|
---|
121 | -@echo initializing...
|
---|
122 | -@curl --config $(CURLCFG_SHIP_INIT) >>$(CURLLOG_SHIP) 2>&1
|
---|
123 | -@echo uploading...
|
---|
124 | -@curl --config $(CURLCFG_SHIP_UPLOAD) >>$(CURLLOG_SHIP) 2>&1
|
---|
125 | -@echo done.
|
---|
126 |
|
---|
127 | showcfg: $(DOXYGENCFG)
|
---|
128 | @echo $(DOXYGENCFG)
|
---|
129 | @echo -------------------------------------------------------
|
---|
130 | @$(CAT) $(DOXYGENCFG)
|
---|
131 |
|
---|
132 | clean:
|
---|
133 | @echo cleaning up
|
---|
134 | -@$(RM) $(DOXYGENCFG) $(CURLCFG_SHIP_CLEAN) $(CURLCFG_SHIP_INIT) $(CURLCFG_SHIP_UPLOAD) $(CURLLOG_SHIP) 2>$(NUL)
|
---|
135 | -@$(RMDIR) $(OUTPUTDIR) 2>$(NUL)
|
---|
136 |
|
---|
137 |
|
---|
138 | again: clean all
|
---|
139 |
|
---|
140 | curlcfg: $(CURLCFG_SHIP_CLEAN) $(CURLCFG_SHIP_INIT) $(CURLCFG_SHIP_UPLOAD)
|
---|
141 | @$(MORE) $(CURLCFG_SHIP_CLEAN)
|
---|
142 | @$(MORE) $(CURLCFG_SHIP_INIT)
|
---|
143 | @$(MORE) $(CURLCFG_SHIP_UPLOAD)
|
---|
144 |
|
---|
145 | curllog:
|
---|
146 | @$(MORE) $(CURLLOG_SHIP)
|
---|
147 |
|
---|
148 | # - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
---|
149 |
|
---|
150 | # --- generate HTML help with doxygen
|
---|
151 |
|
---|
152 | $(OUTPUTFILE): $(DOXYGENCFG) $(SOURCE_DEPENDENCIES) makefile
|
---|
153 | @doxygen $(DOXYGENCFG) >$(NUL)
|
---|
154 |
|
---|
155 | # --- generate doxygen configuration file
|
---|
156 |
|
---|
157 | $(DOXYGENCFG): makefile
|
---|
158 | @echo PROJECT_NAME=$(LIBNAME)> $(DOXYGENCFG)
|
---|
159 | @echo OUTPUT_DIRECTORY=$(OUTPUTDIR)>> $(DOXYGENCFG)
|
---|
160 | @echo FULL_PATH_NAMES=NO>> $(DOXYGENCFG)
|
---|
161 | @echo INPUT=$(LIBROOT)>> $(DOXYGENCFG)
|
---|
162 | @echo FILE_PATTERNS=$(SOURCEFILES)>> $(DOXYGENCFG)
|
---|
163 | @echo RECURSIVE=YES>> $(DOXYGENCFG)
|
---|
164 | @echo EXCLUDE_PATTERNS=$(SOURCEFILES_EXCLUDE)>> $(DOXYGENCFG)
|
---|
165 | @echo GENERATE_HTML=YES>> $(DOXYGENCFG)
|
---|
166 | @echo GENERATE_LATEX=no>> $(DOXYGENCFG)
|
---|
167 | @echo SORT_MEMBER_DOCS=no>> $(DOXYGENCFG)
|
---|
168 | @echo EXAMPLE_PATH=$(EXAMPLE_PATH)>> $(DOXYGENCFG)
|
---|
169 | @echo HTML_HEADER=custom_header.html>> $(DOXYGENCFG)
|
---|
170 | @echo HTML_FOOTER=custom_footer.html>> $(DOXYGENCFG)
|
---|
171 | @echo HTML_STYLESHEET=custom_doxygen.css>> $(DOXYGENCFG)
|
---|
172 | ifeq ($(OS), Windows_NT)
|
---|
173 | @echo ALIASES+=libname="\c $(LIBNAME)">> $(DOXYGENCFG)
|
---|
174 | @echo ALIASES+=libname_lit="$(LIBNAME)">> $(DOXYGENCFG)
|
---|
175 | @echo ALIASES+=libdescription="$(LIBDESCRIPTION)">> $(DOXYGENCFG)
|
---|
176 | @echo ALIASES+=libversion="$(LIBVERSION)">> $(DOXYGENCFG)
|
---|
177 | @echo ALIASES+=libyear="$(LIBYEAR)">> $(DOXYGENCFG)
|
---|
178 | @echo ALIASES+=htmllink{1}="<a href=\1>\1</a>">> $(DOXYGENCFG)
|
---|
179 | @echo ALIASES+=htmllink{2}="<a href=\1>\2</a>">> $(DOXYGENCFG)
|
---|
180 | @echo ALIASES+=htmllinkext{1}="<a href=\1 target=\1>\1</a>">> $(DOXYGENCFG)
|
---|
181 | @echo ALIASES+=htmllinkext{2}="<a href=\1 target=\1>\2</a>">> $(DOXYGENCFG)
|
---|
182 | @echo ALIASES+=desctable="<table border=0 cellpadding=2>">> $(DOXYGENCFG)
|
---|
183 | @echo ALIASES+=desc{2}="<tr><td>\1</td><td>\2</td></tr>">> $(DOXYGENCFG)
|
---|
184 | @echo ALIASES+=enddesctable="</table>">> $(DOXYGENCFG)
|
---|
185 | else
|
---|
186 | @echo ALIASES+=libname=\""\\\\c $(LIBNAME)\"">> $(DOXYGENCFG)
|
---|
187 | @echo ALIASES+=libname_lit="$(LIBNAME)">> $(DOXYGENCFG)
|
---|
188 | @echo ALIASES+=libdescription=\"$(LIBDESCRIPTION)\">> $(DOXYGENCFG)
|
---|
189 | @echo ALIASES+=libversion=\"$(LIBVERSION)\">> $(DOXYGENCFG)
|
---|
190 | @echo ALIASES+=libyear=\"$(LIBYEAR)\">> $(DOXYGENCFG)
|
---|
191 | @echo ALIASES+=htmllink{1}=\""<a href=\\\\1>\\\\1</a>\"">> $(DOXYGENCFG)
|
---|
192 | @echo ALIASES+=htmllink{2}=\""<a href=\\\\1>\\\\2</a>\"">> $(DOXYGENCFG)
|
---|
193 | @echo ALIASES+=htmllinkext{1}=\""<a href=\\\\1 target=\\\\1>\\\\1</a>\"">> $(DOXYGENCFG)
|
---|
194 | @echo ALIASES+=htmllinkext{2}=\""<a href=\\\\1 target=\\\\1>\\\\2</a>\"">> $(DOXYGENCFG)
|
---|
195 | @echo ALIASES+=desctable=\""<table border=0>\"">> $(DOXYGENCFG)
|
---|
196 | @echo ALIASES+=desc{2}=\""<tr><td>\\\\1</td><td>\\\\2</td></tr>\"">> $(DOXYGENCFG)
|
---|
197 | @echo ALIASES+=enddesctable=\""</table>\"">> $(DOXYGENCFG)
|
---|
198 | endif
|
---|
199 |
|
---|
200 | # --- generate curl configuration file with DELETE request
|
---|
201 | # remove directories with files
|
---|
202 |
|
---|
203 | $(CURLCFG_SHIP_CLEAN): makefile
|
---|
204 | @echo fail>$(CURLCFG_SHIP_CLEAN)
|
---|
205 | @echo insecure>>$(CURLCFG_SHIP_CLEAN)
|
---|
206 | @echo user=$(CURL_USER)>>$(CURLCFG_SHIP_CLEAN)
|
---|
207 | @echo silent>>$(CURLCFG_SHIP_CLEAN)
|
---|
208 | @echo verbose>>$(CURLCFG_SHIP_CLEAN)
|
---|
209 | @echo request=DELETE>>$(CURLCFG_SHIP_CLEAN)
|
---|
210 | @echo url=$(SHIPSUBDIR)>>$(CURLCFG_SHIP_CLEAN)
|
---|
211 | @echo url=$(SHIPDIR)>>$(CURLCFG_SHIP_CLEAN)
|
---|
212 |
|
---|
213 | # --- generate curl configuration file with MKCOL request
|
---|
214 | # create directories
|
---|
215 |
|
---|
216 | $(CURLCFG_SHIP_INIT): makefile
|
---|
217 | @echo fail>$(CURLCFG_SHIP_INIT)
|
---|
218 | @echo insecure>>$(CURLCFG_SHIP_INIT)
|
---|
219 | @echo user=$(CURL_USER)>>$(CURLCFG_SHIP_INIT)
|
---|
220 | @echo silent>>$(CURLCFG_SHIP_INIT)
|
---|
221 | @echo verbose>>$(CURLCFG_SHIP_INIT)
|
---|
222 | @echo request=MKCOL>>$(CURLCFG_SHIP_INIT)
|
---|
223 | @echo url=$(SHIPDIR)>>$(CURLCFG_SHIP_INIT)
|
---|
224 | @echo url=$(SHIPSUBDIR)>>$(CURLCFG_SHIP_INIT)
|
---|
225 |
|
---|
226 |
|
---|
227 | # --- generate curl configuration file with upload request
|
---|
228 | # upload files
|
---|
229 |
|
---|
230 | $(CURLCFG_SHIP_UPLOAD): makefile
|
---|
231 | @echo fail>$(CURLCFG_SHIP_UPLOAD)
|
---|
232 | @echo insecure>>$(CURLCFG_SHIP_UPLOAD)
|
---|
233 | @echo user=$(CURL_USER)>>$(CURLCFG_SHIP_UPLOAD)
|
---|
234 | @echo silent>>$(CURLCFG_SHIP_UPLOAD)
|
---|
235 | @echo verbose>>$(CURLCFG_SHIP_UPLOAD)
|
---|
236 | ifeq ($(OS), Windows_NT)
|
---|
237 | -@for %%f in ($(SHIPFILES)) do (echo url=$(SHIPDIR) >>$(CURLCFG_SHIP_UPLOAD) & echo upload=%%f >>$(CURLCFG_SHIP_UPLOAD))
|
---|
238 | -@for %%f in ($(SHIPFILES_SEARCH)) do (echo url=$(SHIPSUBDIR) >>$(CURLCFG_SHIP_UPLOAD) & echo upload=%%f >>$(CURLCFG_SHIP_UPLOAD))
|
---|
239 | else
|
---|
240 | -@echo $(SHIPFILES)
|
---|
241 | -@for f in $(SHIPFILES); do echo url=$(SHIPDIR) >>$(CURLCFG_SHIP_UPLOAD); echo upload=$$f >>$(CURLCFG_SHIP_UPLOAD); done
|
---|
242 | -@for f in $(SHIPFILES_SEARCH); do echo url=$(SHIPSUBDIR) >>$(CURLCFG_SHIP_UPLOAD); echo upload=$$f >>$(CURLCFG_SHIP_UPLOAD); done
|
---|
243 | endif
|
---|