Skip to content

Commit b56c216

Browse files
committed
Add windows packaging script and text
1 parent 11f4c56 commit b56c216

File tree

3 files changed

+332
-0
lines changed

3 files changed

+332
-0
lines changed

depends/INSTALL-windows.txt

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
Source code: https://github.com/OpenKinect/libfreenect2
2+
API reference: http://openkinect.github.io/libfreenect2
3+
4+
This release is x64 only and has not enabled OpenCL support. If you need extra configurations and features, you will have to build it from source.
5+
6+
glfw3.dll, turbojpeg.dll, and libusb-1.0.dll are provided for convenience. You can download and upgrade them yourself.
7+
8+
"lib" and "include" directories contains libraries and headers. Configure your IDE respectively.
9+
10+
You must have or install respective version of VC++ runtime, if you are using a -vs201x release variant.
11+
12+
You must install the libusbK driver:
13+
14+
libusbK driver
15+
16+
You don't need the Kinect for Windows v2 SDK to build and install libfreenect2, though it doesn't hurt to have it too. You don't need to uninstall the SDK or the driver before doing this procedure.
17+
18+
Install the libusbK backend driver for libusb. Please follow the steps exactly:
19+
20+
1. Download Zadig from http://zadig.akeo.ie/
21+
2. Run Zadig and in options, check "List All Devices" and uncheck "Ignore Hubs or Composite Parents"
22+
3. Select the "Xbox NUI Sensor (composite parent)" from the drop-down box. (Important: Ignore the "NuiSensor Adaptor" varieties, which are the adapter, NOT the Kinect) The current driver will list usbccgp. USB ID is VID 045E, PID 02C4 or 02D8.
23+
4. Select libusbK (v3.0.7.0 or newer) from the replacement driver list.
24+
5. Click the "Replace Driver" button. Click yes on the warning about replacing a system driver. (This is because it is a composite parent.)
25+
6. Done.
26+
27+
To uninstall the libusbK driver (and get back the official SDK driver, if installed):
28+
29+
1. Open Device Manager
30+
2. Under "libusbK USB Devices" tree, right click the "Xbox NUI Sensor (Composite Parent)" device and select uninstall.
31+
3. Important: Check the "Delete the driver software for this device." checkbox, then click OK.
32+
33+
If you already had the official SDK driver installed and you want to use it:
34+
35+
1.In Device Manager, in the Action menu, click "Scan for hardware changes."
36+
37+
This will enumerate the Kinect sensor again and it will pick up the K4W2 SDK driver, and you should be ready to run KinectService.exe again immediately.
38+
39+
You can go back and forth between the SDK driver and the libusbK driver very quickly and easily with these steps.

depends/LICENSES.txt

Lines changed: 260 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,260 @@
1+
freenect2.dll, Protonect.exe, include/*, lib/*
2+
----------------------------------------------
3+
4+
The source code and build system can be found at
5+
https://github.com/OpenKinect/libfreenect2
6+
7+
Copyright (c) 2014-2015 individual OpenKinect contributors.
8+
9+
This code is licensed to you under the terms of the Apache License, version
10+
2.0, or, at your option, the terms of the GNU General Public License,
11+
version 2.0. See the APACHE20 and GPL2 files for the text of the licenses,
12+
or the following URLs:
13+
http://www.apache.org/licenses/LICENSE-2.0
14+
http://www.gnu.org/licenses/gpl-2.0.txt
15+
16+
If you redistribute this file in source form, modified or unmodified, you
17+
may:
18+
1) Leave this header intact and distribute it under the same terms,
19+
accompanying it with the APACHE20 and GPL20 files, or
20+
2) Delete the Apache 2.0 clause and accompany it with the GPL2 file, or
21+
3) Delete the GPL v2 clause and accompany it with the APACHE20 file
22+
In all cases you must keep the copyright notice intact and include a copy
23+
of the CONTRIB file.
24+
25+
Binary distributions must follow the binary distribution requirements of
26+
either License.
27+
28+
This project incorporates the following code under respective licenses:
29+
30+
* cl.hpp
31+
32+
Source: https://www.khronos.org/registry/cl/api/2.1/cl.hpp
33+
34+
Copyright (c) 2008-2015 The Khronos Group Inc.
35+
36+
Permission is hereby granted, free of charge, to any person obtaining a
37+
copy of this software and/or associated documentation files (the
38+
"Materials"), to deal in the Materials without restriction, including
39+
without limitation the rights to use, copy, modify, merge, publish,
40+
distribute, sublicense, and/or sell copies of the Materials, and to
41+
permit persons to whom the Materials are furnished to do so, subject to
42+
the following conditions:
43+
44+
The above copyright notice and this permission notice shall be included
45+
in all copies or substantial portions of the Materials.
46+
47+
THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
48+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
49+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
50+
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
51+
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
52+
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
53+
MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
54+
55+
* tinythread.cpp, tinythread.h
56+
57+
Copyright (c) 2010-2012 Marcus Geelnard
58+
59+
This software is provided 'as-is', without any express or implied
60+
warranty. In no event will the authors be held liable for any damages
61+
arising from the use of this software.
62+
63+
Permission is granted to anyone to use this software for any purpose,
64+
including commercial applications, and to alter it and redistribute it
65+
freely, subject to the following restrictions:
66+
67+
1. The origin of this software must not be misrepresented; you must not
68+
claim that you wrote the original software. If you use this software
69+
in a product, an acknowledgment in the product documentation would be
70+
appreciated but is not required.
71+
72+
2. Altered source versions must be plainly marked as such, and must not be
73+
misrepresented as being the original software.
74+
75+
3. This notice may not be removed or altered from any source
76+
distribution.
77+
78+
* flextGL.cpp, flextGL.h
79+
80+
Generated from flextGL https://github.com/ginkgo/flextGL
81+
82+
Copyright (C) 2011 by Thomas Weber
83+
84+
Permission is hereby granted, free of charge, to any person obtaining a copy
85+
of this software and associated documentation files (the "Software"), to deal
86+
in the Software without restriction, including without limitation the rights
87+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
88+
copies of the Software, and to permit persons to whom the Software is
89+
furnished to do so, subject to the following conditions:
90+
91+
The above copyright notice and this permission notice shall be included in
92+
all copies or substantial portions of the Software.
93+
94+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
95+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
96+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
97+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
98+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
99+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
100+
THE SOFTWARE.
101+
102+
turbojpeg.dll
103+
-------------
104+
105+
Copyright (C) 1991-2010 Thomas G. Lane
106+
Copyright (C) 1991-2011 Guido Vollbeding
107+
Copyright (C) 1999-2006 MIYASAKA Masaru
108+
Copyright (C) 2009-2011 D. R. Commander
109+
Copyright (C) 2009 Pierre Ossman <[email protected]> for Cendio AB
110+
Copyright (C) 2009-2011 Nokia Corporation and/or its subsidiary(-ies)
111+
112+
This software is based in part on the work of the Independent JPEG Group.
113+
114+
In plain English:
115+
116+
1. We don't promise that this software works. (But if you find any bugs,
117+
please let us know!)
118+
2. You can use this software for whatever you want. You don't have to pay us.
119+
3. You may not pretend that you wrote this software. If you use it in a
120+
program, you must acknowledge somewhere in your documentation that
121+
you've used the IJG code.
122+
123+
In legalese:
124+
125+
The authors make NO WARRANTY or representation, either express or implied,
126+
with respect to this software, its quality, accuracy, merchantability, or
127+
fitness for a particular purpose. This software is provided "AS IS", and you,
128+
its user, assume the entire risk as to its quality and accuracy.
129+
130+
This software is copyright (C) 1991-2012, Thomas G. Lane, Guido Vollbeding.
131+
All Rights Reserved except as specified below.
132+
133+
Permission is hereby granted to use, copy, modify, and distribute this
134+
software (or portions thereof) for any purpose, without fee, subject to these
135+
conditions:
136+
(1) If any part of the source code for this software is distributed, then this
137+
README file must be included, with this copyright and no-warranty notice
138+
unaltered; and any additions, deletions, or changes to the original files
139+
must be clearly indicated in accompanying documentation.
140+
(2) If only executable code is distributed, then the accompanying
141+
documentation must state that "this software is based in part on the work of
142+
the Independent JPEG Group".
143+
(3) Permission for use of this software is granted only if the user accepts
144+
full responsibility for any undesirable consequences; the authors accept
145+
NO LIABILITY for damages of any kind.
146+
147+
These conditions apply to any software derived from or based on the IJG code,
148+
not just to the unmodified library. If you use our work, you ought to
149+
acknowledge us.
150+
151+
Permission is NOT granted for the use of any IJG author's name or company name
152+
in advertising or publicity relating to this software or products derived from
153+
it. This software may be referred to only as "the Independent JPEG Group's
154+
software".
155+
156+
We specifically permit and encourage the use of this software as the basis of
157+
commercial products, provided that all warranty or liability claims are
158+
assumed by the product vendor.
159+
160+
The Unix configuration script "configure" was produced with GNU Autoconf.
161+
It is copyright by the Free Software Foundation but is freely distributable.
162+
The same holds for its supporting scripts (config.guess, config.sub,
163+
ltmain.sh). Another support script, install-sh, is copyright by X Consortium
164+
but is also freely distributable.
165+
166+
The IJG distribution formerly included code to read and write GIF files.
167+
To avoid entanglement with the Unisys LZW patent, GIF reading support has
168+
been removed altogether, and the GIF writer has been simplified to produce
169+
"uncompressed GIFs". This technique does not use the LZW algorithm; the
170+
resulting GIF files are larger than usual, but are readable by all standard
171+
GIF decoders.
172+
173+
We are required to state that
174+
"The Graphics Interchange Format(c) is the Copyright property of
175+
CompuServe Incorporated. GIF(sm) is a Service Mark property of
176+
CompuServe Incorporated."
177+
178+
TurboJPEG API library:
179+
180+
Redistribution and use in source and binary forms, with or without
181+
modification, are permitted provided that the following conditions are met:
182+
183+
- Redistributions of source code must retain the above copyright notice,
184+
this list of conditions and the following disclaimer.
185+
- Redistributions in binary form must reproduce the above copyright notice,
186+
this list of conditions and the following disclaimer in the documentation
187+
and/or other materials provided with the distribution.
188+
- Neither the name of the libjpeg-turbo Project nor the names of its
189+
contributors may be used to endorse or promote products derived from this
190+
software without specific prior written permission.
191+
192+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS",
193+
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
194+
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
195+
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE
196+
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
197+
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
198+
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
199+
INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
200+
CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
201+
ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
202+
POSSIBILITY OF SUCH DAMAGE.
203+
204+
glfw3.dll
205+
---------
206+
207+
Redistributed from http://www.glfw.org/ .
208+
209+
Copyright (C) 2006-2013 Camilla Berglund <[email protected]>
210+
Copyright (C) 2002-2006 Marcus Geelnard
211+
212+
License: zlib/libpng
213+
214+
This software is provided 'as-is', without any express or implied
215+
warranty. In no event will the authors be held liable for any damages
216+
arising from the use of this software.
217+
218+
Permission is granted to anyone to use this software for any purpose,
219+
including commercial applications, and to alter it and redistribute it
220+
freely, subject to the following restrictions:
221+
222+
1. The origin of this software must not be misrepresented; you must not
223+
claim that you wrote the original software. If you use this software
224+
in a product, an acknowledgment in the product documentation would
225+
be appreciated but is not required.
226+
227+
2. Altered source versions must be plainly marked as such, and must not
228+
be misrepresented as being the original software.
229+
230+
3. This notice may not be removed or altered from any source
231+
distribution.
232+
233+
libusb-1.0.dll
234+
--------------
235+
236+
Built from source code obtained https://github.com/libusb/libusb
237+
and patched with the "winiso" branch from
238+
https://github.com/JoshBlake/libusbx.git
239+
240+
The binary can be rebuilt using install_libusb_vs2015.cmd
241+
from https://github.com/OpenKinect/libfreenect2
242+
243+
Copyright (C) 2001-2015 libusb authors
244+
245+
License: LGPL 2.1
246+
247+
This library is free software; you can redistribute it and/or
248+
modify it under the terms of the GNU Lesser General Public
249+
License as published by the Free Software Foundation; either
250+
version 2.1 of the License, or (at your option) any later version.
251+
252+
This library is distributed in the hope that it will be useful,
253+
but WITHOUT ANY WARRANTY; without even the implied warranty of
254+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
255+
Lesser General Public License for more details.
256+
257+
You should have received a copy of the GNU Lesser General Public
258+
License along with this library; if not, write to the
259+
Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
260+
MA 02110-1301 USA.

depends/make_release_msvc.cmd

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
@echo off
2+
set ver=%1
3+
set vs_year=%2
4+
if "%vs_year%"=="2015" (
5+
set vs_ver=14
6+
) else (
7+
if "%vs_year%"=="2013" (
8+
set vs_ver=12
9+
) else (
10+
echo Unsupported MSVC version. Usage: %~nx0 version vs_year >&2
11+
exit /b
12+
)
13+
)
14+
@echo on
15+
16+
pushd .
17+
call install_libusb_vs%vs_year%.cmd
18+
popd
19+
20+
rmdir /s /q build
21+
mkdir build
22+
cd build
23+
cmake ..\.. -G "Visual Studio %vs_ver% %vs_year% Win64"
24+
cmake --build . --config Release --target install
25+
26+
rmdir /s /q install\lib\cmake
27+
rmdir /s /q install\lib\pkgconfig
28+
copy ..\LICENSES.txt install
29+
copy ..\INSTALL-windows.txt install
30+
cd ..
31+
rmdir /s /q libfreenect2-%ver%-vs%vs_year%-x64
32+
move build\install libfreenect2-%ver%-vs%vs_year%-x64
33+
rmdir /s /q build

0 commit comments

Comments
 (0)