diff --git a/build/bin/32bit/.gitignore b/build/bin/32bit/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/build/bin/64bit/.gitignore b/build/bin/64bit/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/build/draw.effect b/build/data/test-input/draw.effect similarity index 100% rename from build/draw.effect rename to build/data/test-input/draw.effect diff --git a/build/test.effect b/build/data/test-input/test.effect similarity index 100% rename from build/test.effect rename to build/data/test-input/test.effect diff --git a/build/data/effects/default.effect b/build/libobs/default.effect similarity index 100% rename from build/data/effects/default.effect rename to build/libobs/default.effect diff --git a/build/makefile.am b/build/makefile.am index 3e0bf3b3c43444764c9c44b32b577db57190dd93..857b5c2df19bfcbbfa8a88b4c8d07c14335284d9 100644 --- a/build/makefile.am +++ b/build/makefile.am @@ -1,11 +1,13 @@ -EXTRA_DIST = data +if !OS_WIN +obs_plugin_datadir = $(datadir)/obs-plugins +obs_plugin_data_testdir = $(obs_plugin_datadir)/test-input +data_libobsdir = $(datadir)/libobs -# just be cheap and do a full recursive copy. -install-data-local: - $(INSTALL) -d $(DESTDIR)$(datadir)/obsproject - $(INSTALL) -d $(DESTDIR)$(datadir)/obsproject/data - $(INSTALL) -d $(DESTDIR)$(datadir)/obsproject/data/effects - cp -R $(srcdir)/data/* $(DESTDIR)$(datadir)/obsproject/data +obs_plugin_data_test_DATA = data/test-input/draw.effect \ + data/test-input/test.effect +data_libobs_DATA = libobs/default.effect -uninstall-local: - rm -rf $(DESTDIR)$(datadir)/obsproject +#uninstall-local: +# rm -r $(DESTDIR)$(obs_plugin_datadir) +# rm -r $(DESTDIR)$(data_libobsdir) +endif diff --git a/build/plugins/32bit/.gitignore b/build/plugins/32bit/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/build/plugins/64bit/.gitignore b/build/plugins/64bit/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/configure.ac b/configure.ac index b7baea147c24c932e2830b841a3353ea07ce9238..5ff2dfd9027099bc8fd929c3b6726e5496cf677f 100644 --- a/configure.ac +++ b/configure.ac @@ -2,9 +2,10 @@ # Process this file with autoconf to produce a configure script. AC_PREREQ([2.67]) -AC_INIT([obs], [0.0.1], [obs.jim@gmail.com]) +AC_INIT([obs-studio], [0.0.1], [obs.jim@gmail.com]) AC_CONFIG_SRCDIR([libobs/obs.c]) AC_CONFIG_MACRO_DIR([m4]) +# AC_CONFIG_HEADERS([config.h]) AC_CANONICAL_HOST LT_INIT @@ -21,6 +22,21 @@ AX_CXX_COMPILE_STDCXX_11 # AX_EXT AX_APPEND_FLAG(["-msse2"], [CPPFLAGS]) +# currently only x86 and x86_64 are supported architectures +case $host in + i?86*) + AM_CONDITIONAL([ARCH_X86], true) + AM_CONDITIONAL([ARCH_X86_64], false) + ;; + amd64* | x86_64*) + AM_CONDITIONAL([ARCH_X86], false) + AM_CONDITIONAL([ARCH_X86_64], true) + ;; + *) + AC_MSG_ERROR([host architecture not currently supported]) + ;; +esac + case $host_os in mingw*) AM_CONDITIONAL([OS_WIN], true) @@ -40,13 +56,17 @@ case $host_os in ;; esac -PKG_CHECK_MODULES([ffmpeg], - [libavcodec - libavformat - libavutil - libswscale - libswresample - libavfilter]) +AC_CHECK_HEADER([libavcodec/avcodec.h]) +AC_CHECK_HEADER([libavformat/avformat.h]) +AC_CHECK_HEADER([libavutil/avutil.h]) +AC_CHECK_HEADER([libavutil/channel_layout.h]) +AC_CHECK_HEADER([libswscale/swscale.h]) +AC_CHECK_HEADER([libswresample/swresample.h]) +AC_CHECK_LIB([avcodec], [avcodec_find_encoder_by_name]) +AC_CHECK_LIB([avformat], [av_guess_format]) +AC_CHECK_LIB([avutil], [av_samples_alloc]) +AC_CHECK_LIB([swscale], [sws_scale]) +AC_CHECK_LIB([swresample], [swr_convert]) # Checks for header files. AC_PATH_X diff --git a/libobs-opengl/makefile.am b/libobs-opengl/makefile.am index c7fb1df33fff4470fea76ec3fdd903108dda4c93..54642f0f924ee3415099cf69c5b117671474b97b 100644 --- a/libobs-opengl/makefile.am +++ b/libobs-opengl/makefile.am @@ -1,7 +1,18 @@ INCLUDES = -iquote$(top_srcdir)/libobs -isystem./glew/include AM_CFLAGS = -DGLEW_NO_GLU -DGLEW_STATIC -lib_LTLIBRARIES = libobs-opengl.la +if OS_WIN +if ARCH_X86 +libobs_opengldir = ../build/bin/32bit +else +libobs_opengldir = ../build/bin/64bit +endif +else +libobs_opengldir = $(libdir) +endif + +libobs_opengl_LTLIBRARIES = libobs-opengl.la + libobs_opengl_la_LDFLAGS = -no-undefined libobs_opengl_la_LIBADD = ../libobs/libobs.la if OS_WIN @@ -19,7 +30,6 @@ libobs_opengl_la_SOURCES = gl-helpers.c \ gl-vertexbuffer.c \ gl-zstencil.c \ glew/src/glew.c - if OS_WIN libobs_opengl_la_SOURCES += gl-windows.c endif diff --git a/libobs/makefile.am b/libobs/makefile.am index 3023894aff4ee39d7bc581de573b9cf2c3fbb19b..515b9043f3e323fd0822d7603020ab1ebe4be073 100644 --- a/libobs/makefile.am +++ b/libobs/makefile.am @@ -1,4 +1,14 @@ -lib_LTLIBRARIES = libobs.la +if OS_WIN +if ARCH_X86 +libobsdir = ../build/bin/32bit +else +libobsdir = ../build/bin/64bit +endif +else +libobsdir = $(libdir) +endif + +libobs_LTLIBRARIES = libobs.la libobs_la_LDFLAGS = -no-undefined --version-info 0:0:0 if OS_WIN @@ -45,5 +55,9 @@ libobs_la_SOURCES = obs.c \ graphics/vec4.c if OS_WIN -libobs_la_SOURCES += util/platform-windows.c +libobs_la_SOURCES += util/platform-windows.c obs-windows.c +endif + +if OS_NIX +libobs_la_SOURCES += util/platform-nix.c obs-nix.c endif diff --git a/libobs/obs-module.c b/libobs/obs-module.c index 52375f5ab8094c14ff16637c060f77075df72384..10d451b178c7dd150f4118bdf09d42dc002763a2 100644 --- a/libobs/obs-module.c +++ b/libobs/obs-module.c @@ -76,12 +76,16 @@ complete: dstr_free(&enum_name); } +extern char *find_plugin(const char *plugin); + int obs_load_module(const char *path) { struct obs_module mod; bool (*module_load)(void) = NULL; + char *plugin_path = find_plugin(path); mod.module = os_dlopen(path); + bfree(plugin_path); if (!mod.module) return MODULE_FILENOTFOUND; diff --git a/libobs/obs-nix.c b/libobs/obs-nix.c new file mode 100644 index 0000000000000000000000000000000000000000..c77a783b8c26d99f925b392f8bda8b3f7a346e77 --- /dev/null +++ b/libobs/obs-nix.c @@ -0,0 +1,51 @@ +/****************************************************************************** + Copyright (C) 2013 by Hugh Bailey + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . +******************************************************************************/ + +#include + +#include "util/dstr.h" +#include "obs.h" + +/* + * /usr/local/lib/obs-plugins + * /usr/lib/obs-plugins + */ +char *find_plugin(const char *plugin) +{ + /* TODO */ + return NULL; +} + +/* + * /usr/local/share/libobs + * /usr/share/libobs + */ +char *find_libobs_data_file(const char *file) +{ + /* TODO */ + return NULL; +} + +/* + * /usr/local/share/obs-plugins + * /usr/share/obs-plugins + */ +char *obs_find_plugin_file(const char *file) +{ + /* TODO */ + return NULL; +} diff --git a/libobs/obs-windows.c b/libobs/obs-windows.c new file mode 100644 index 0000000000000000000000000000000000000000..b48f5fdae07188c3a5d314ce61650eb8e8b32a93 --- /dev/null +++ b/libobs/obs-windows.c @@ -0,0 +1,52 @@ +/****************************************************************************** + Copyright (C) 2013 by Hugh Bailey + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . +******************************************************************************/ + +#include "util/platform.h" +#include "util/dstr.h" +#include "obs.h" +#include "obs-data.h" + +/* on windows, plugin files are located in [base directory]/plugins/[bit] */ +char *find_plugin(const char *plugin) +{ + struct dstr path; +#ifdef _WIN64 + dstr_init_copy(&path, "../../plugins/64bit/"); +#else + dstr_init_copy(&path, "../../plugins/32bit/"); +#endif + dstr_cat(&path, plugin); + return path.array; +} + +/* on windows, points to [base directory]/libobs */ +char *find_libobs_data_file(const char *file) +{ + struct dstr path; + dstr_init_copy(&path, "../../libobs/"); + dstr_cat(&path, file); + return path.array; +} + +/* on windows, data files should always be in [base directory]/data */ +char *obs_find_plugin_file(const char *file) +{ + struct dstr path; + dstr_init_copy(&path, "../../data/"); + dstr_cat(&path, file); + return path.array; +} diff --git a/libobs/obs.c b/libobs/obs.c index b097a0889e9f1e8c965bcc1a657a3c4fd0c76b0a..2e32e04f1375d91a7e3c62d75c6d6f615e106048 100644 --- a/libobs/obs.c +++ b/libobs/obs.c @@ -21,6 +21,8 @@ struct obs_data *obs = NULL; +extern char *find_libobs_data_file(const char *file); + static bool obs_init_graphics(const char *graphics_module, struct gs_init_data *graphics_data, struct video_info *vi) { @@ -46,8 +48,10 @@ static bool obs_init_graphics(const char *graphics_module, } if (success) { - obs->default_effect = gs_create_effect_from_file( - "data/effects/default.effect", NULL); + char *filename = find_libobs_data_file("default.effect"); + obs->default_effect = gs_create_effect_from_file( filename, + NULL); + bfree(filename); if (!obs->default_effect) success = false; } diff --git a/libobs/obs.h b/libobs/obs.h index 1931d20f283ce15a4e36d9551f48765e5a9e9349..0fb2374371a7f64e09a619634ad12a0ad19be827 100644 --- a/libobs/obs.h +++ b/libobs/obs.h @@ -184,6 +184,14 @@ EXPORT media_t obs_media(void); EXPORT void obs_set_primary_source(obs_source_t source); EXPORT obs_source_t obs_get_primary_source(void); +/** + * Returns the location of a plugin data file. + * + * file: Name of file to locate. For example, "myplugin/mydata.data" + * returns: Output string, or NULL if not found. Use bfree to free string. + */ +EXPORT char *obs_find_plugin_file(const char *file); + /* ------------------------------------------------------------------------- */ /* Display context */ diff --git a/libobs/util/platform-nix.c b/libobs/util/platform-nix.c new file mode 100644 index 0000000000000000000000000000000000000000..75ba4a9034129a60c41a7806a40cb0a61415e651 --- /dev/null +++ b/libobs/util/platform-nix.c @@ -0,0 +1,73 @@ +/****************************************************************************** + Copyright (c) 2013 by Hugh Bailey + + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + + 3. This notice may not be removed or altered from any source + distribution. +******************************************************************************/ + +#include + +#include "dstr.h" +#include "platform.h" + +void *os_dlopen(const char *path) +{ + /* TODO */ + return NULL; +} + +void *os_dlsym(void *module, const char *func) +{ + /* TODO */ + return NULL; +} + +void os_dlclose(void *module) +{ + /* TODO */ +} + +void os_sleepto_ns(uint64_t time_target) +{ + /* TODO */ +} + +void os_sleep_ms(uint32_t duration) +{ + /* TODO */ +} + +uint64_t os_gettime_ns(void) +{ + /* TODO */ + return 0; +} + +uint64_t os_gettime_ms(void) +{ + /* TODO */ + return 0; +} + +/* should return $HOME/ */ +char *os_get_home_path(void) +{ + /* TODO */ + return NULL; +} diff --git a/libobs/util/platform-windows.c b/libobs/util/platform-windows.c index 8ba1de1fcbdfe49c06773a4b10e2867fa215b330..00771a08541b0d8185f5de0fb48bc6574200ec42 100644 --- a/libobs/util/platform-windows.c +++ b/libobs/util/platform-windows.c @@ -22,9 +22,12 @@ ******************************************************************************/ #include +#include +#include + #include "base.h" #include "platform.h" -#include "bmem.h" +#include "dstr.h" #include "../../deps/w32-pthreads/pthread.h" @@ -68,7 +71,16 @@ void *os_dlopen(const char *path) void *os_dlsym(void *module, const char *func) { - return (void*)GetProcAddress(module, func); + struct dstr dll_name; + void *handle; + + dstr_init_copy(&dll_name, module); + dstr_cat(&dll_name, ".dll"); + + handle = (void*)GetProcAddress(module, func); + + dstr_free(&dll_name); + return handle; } void os_dlclose(void *module) @@ -136,6 +148,18 @@ uint64_t os_gettime_ms(void) return time_val; } +/* returns %appdata% on windows */ +char *os_get_home_path(void) +{ + char *out; + wchar_t path_utf16[MAX_PATH]; + SHGetFolderPathW(NULL, CSIDL_APPDATA, NULL, SHGFP_TYPE_CURRENT, + path_utf16); + + os_wcs_to_utf8(path_utf16, 0, &out); + return out; +} + #ifdef PTW32_STATIC_LIB BOOL WINAPI DllMain(HINSTANCE hinst_dll, DWORD reason, LPVOID reserved) diff --git a/libobs/util/platform.h b/libobs/util/platform.h index c2aaf5aa0d7422c60d610269e5aa55b4ed9fdbc1..77edc8030bd9bc555f0c75aa6b53dc30a0606688 100644 --- a/libobs/util/platform.h +++ b/libobs/util/platform.h @@ -70,6 +70,8 @@ EXPORT void os_sleep_ms(uint32_t duration); EXPORT uint64_t os_gettime_ns(void); EXPORT uint64_t os_gettime_ms(void); +EXPORT char *os_get_home_path(void); + #ifdef _MSC_VER EXPORT int fseeko(FILE *stream, off_t offset, int whence); EXPORT off_t ftello(FILE *stream); diff --git a/test/test-input/makefile.am b/test/test-input/makefile.am index 6db43aa5b58897fae3f12ab2e423a24559df05bd..01a947d8f1f525dc46709769c8b6ba58f2e832b8 100644 --- a/test/test-input/makefile.am +++ b/test/test-input/makefile.am @@ -1,12 +1,21 @@ INCLUDES = -iquote$(top_srcdir)/libobs -lib_LTLIBRARIES = libtest-input.la -libtest_input_la_LDFLAGS = -no-undefined +if OS_WIN +if ARCH_X86 +libtestdir = ../../build/plugins/32bit +else +libtestdir = ../../build/plugins/64bit +endif +else +libtestdir = $(libdir)/obs-plugins +endif +pkglib_LTLIBRARIES = libtest-input.la + +libtest_input_la_LDFLAGS = -no-undefined if OS_WIN libtest_input_la_LDFLAGS += -avoid-version endif - libtest_input_la_LIBADD = $(top_srcdir)/libobs/libobs.la libtest_input_la_SOURCES = test-filter.c \ test-input.c \ diff --git a/test/test-input/test-filter.c b/test/test-input/test-filter.c index d94b0d4fedd3ec88953dfdebb0564738f5cefb4a..ae40af3bc1c985a884efa8da3471bbd1a45eb649 100644 --- a/test/test-input/test-filter.c +++ b/test/test-input/test-filter.c @@ -3,12 +3,16 @@ struct test_filter *test_create(const char *settings, obs_source_t source) { struct test_filter *tf = bmalloc(sizeof(struct test_filter)); + char *effect_file; memset(tf, 0, sizeof(struct test_filter)); gs_entercontext(obs_graphics()); + effect_file = obs_find_plugin_file("test-input/test.effect"); + tf->source = source; - tf->whatever = gs_create_effect_from_file("test.effect", NULL); + tf->whatever = gs_create_effect_from_file(effect_file, NULL); + bfree(effect_file); if (!tf->whatever) { test_destroy(tf); return NULL; diff --git a/test/test-input/test-random.c b/test/test-input/test-random.c index ce07486d47bffa4acf918ae7416b3a5445aea81f..e007825f51688a0da56f58182499650c2113a4e1 100644 --- a/test/test-input/test-random.c +++ b/test/test-input/test-random.c @@ -5,6 +5,7 @@ struct random_tex *random_create(const char *settings, obs_source_t source) { struct random_tex *rt = bmalloc(sizeof(struct random_tex)); uint32_t *pixels = bmalloc(20*20*4); + char *effect_file; size_t x, y; memset(rt, 0, sizeof(struct random_tex)); @@ -31,7 +32,10 @@ struct random_tex *random_create(const char *settings, obs_source_t source) return NULL; } - rt->whatever = gs_create_effect_from_file("draw.effect", NULL); + effect_file = obs_find_plugin_file("test-input/draw.effect"); + rt->whatever = gs_create_effect_from_file(effect_file, NULL); + bfree(effect_file); + if (!rt->whatever) { random_destroy(rt); return NULL; diff --git a/test/win/makefile.am b/test/win/makefile.am index 9ae3a86616e9ccdf87da898d10e4aad0ec83f166..96feb3d932bc8b3607b5278d45407a88b92545c9 100644 --- a/test/win/makefile.am +++ b/test/win/makefile.am @@ -1,6 +1,8 @@ INCLUDES = -iquote$(top_srcdir)/libobs AM_CPPFLAGS = -DUNICODE -D_UNICODE -bin_PROGRAMS = test + +builddir = ../../build +build_PROGRAMS = test test_LDADD = $(top_srcdir)/libobs/libobs.la test_LDFLAGS = -mwindows test_SOURCES = test.cpp diff --git a/test/win/test.cpp b/test/win/test.cpp index f73d94fcff07c35ba213d60e85ab4637d9fe6f20..72fae5c4d316fd9916ff79c1cfb7b58484eb8bc9 100644 --- a/test/win/test.cpp +++ b/test/win/test.cpp @@ -84,7 +84,7 @@ static void CreateOBS(HWND hwnd) gsid.num_backbuffers = 2; gsid.format = GS_RGBA; - if (!obs_startup("libobs-opengl.dll", &gsid, &vi, NULL)) + if (!obs_startup("libobs-opengl", &gsid, &vi, NULL)) throw "Couldn't create OBS"; } @@ -146,7 +146,7 @@ int WINAPI WinMain(HINSTANCE instance, HINSTANCE prevInstance, LPSTR cmdLine, /* ------------------------------------------------------ */ /* load module */ - if (obs_load_module("test-input.dll") != 0) + if (obs_load_module("test-input") != 0) throw "Couldn't load module"; /* ------------------------------------------------------ */ diff --git a/vs/2010/libobs-d3d11/libobs-d3d11.vcxproj b/vs/2010/libobs-d3d11/libobs-d3d11.vcxproj index 6edb78e820326eefdf5e0e93b95c714140cfef5c..14569a3e3911184ec9eb54e51fa41909143eff1c 100644 --- a/vs/2010/libobs-d3d11/libobs-d3d11.vcxproj +++ b/vs/2010/libobs-d3d11/libobs-d3d11.vcxproj @@ -115,7 +115,7 @@ d3d11.lib;dxgi.lib;d3dcompiler.lib;libobs.lib;%(AdditionalDependencies) - copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/$(TargetName)$(TargetExt)" + copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/bin/32bit/$(TargetName)$(TargetExt)" @@ -135,7 +135,7 @@ d3d11.lib;dxgi.lib;d3dcompiler.lib;libobs.lib;%(AdditionalDependencies) - copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/$(TargetName)$(TargetExt)" + copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/bin/64bit/$(TargetName)$(TargetExt)" @@ -159,7 +159,7 @@ d3d11.lib;dxgi.lib;d3dcompiler.lib;libobs.lib;%(AdditionalDependencies) - copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/$(TargetName)$(TargetExt)" + copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/bin/32bit/$(TargetName)$(TargetExt)" @@ -183,7 +183,7 @@ d3d11.lib;dxgi.lib;d3dcompiler.lib;libobs.lib;%(AdditionalDependencies) - copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/$(TargetName)$(TargetExt)" + copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/bin/64bit/$(TargetName)$(TargetExt)" diff --git a/vs/2010/libobs-opengl/libobs-opengl.vcxproj b/vs/2010/libobs-opengl/libobs-opengl.vcxproj index 87964442de2d5e8efa9a756d538a35e9fe80d4dc..f6c483f3da9b1e1c2d815088aaf9c87404f545ab 100644 --- a/vs/2010/libobs-opengl/libobs-opengl.vcxproj +++ b/vs/2010/libobs-opengl/libobs-opengl.vcxproj @@ -92,7 +92,7 @@ glew32sd.lib;opengl32.lib;libobs.lib;%(AdditionalDependencies) - copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/$(TargetName)$(TargetExt)" + copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/bin/32bit/$(TargetName)$(TargetExt)" @@ -113,7 +113,7 @@ glew32sd.lib;opengl32.lib;libobs.lib;%(AdditionalDependencies) - copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/$(TargetName)$(TargetExt)" + copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/bin/64bit/$(TargetName)$(TargetExt)" @@ -138,7 +138,7 @@ glew32s.lib;opengl32.lib;libobs.lib;%(AdditionalDependencies) - copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/$(TargetName)$(TargetExt)" + copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/bin/32bit/$(TargetName)$(TargetExt)" @@ -163,7 +163,7 @@ glew32s.lib;opengl32.lib;libobs.lib;%(AdditionalDependencies) - copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/$(TargetName)$(TargetExt)" + copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/bin/64bit/$(TargetName)$(TargetExt)" diff --git a/vs/2010/libobs/libobs.vcxproj b/vs/2010/libobs/libobs.vcxproj index be02752849e9ff95d48da22691fefeaf0d76200f..f799a91eec350a3a1a0d459a1e13e5f1139f044c 100644 --- a/vs/2010/libobs/libobs.vcxproj +++ b/vs/2010/libobs/libobs.vcxproj @@ -92,6 +92,7 @@ + @@ -187,7 +188,7 @@ $(OutDir);%(AdditionalLibraryDirectories) - copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/$(TargetName)$(TargetExt)" + copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/bin/32bit/$(TargetName)$(TargetExt)" @@ -208,7 +209,7 @@ $(OutDir);%(AdditionalLibraryDirectories) - copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/$(TargetName)$(TargetExt)" + copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/bin/64bit/$(TargetName)$(TargetExt)" @@ -233,7 +234,7 @@ $(OutDir);%(AdditionalLibraryDirectories) - copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/$(TargetName)$(TargetExt)" + copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/bin/32bit/$(TargetName)$(TargetExt)" @@ -258,7 +259,7 @@ $(OutDir);%(AdditionalLibraryDirectories) - copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/$(TargetName)$(TargetExt)" + copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/bin/64bit/$(TargetName)$(TargetExt)" diff --git a/vs/2010/libobs/libobs.vcxproj.filters b/vs/2010/libobs/libobs.vcxproj.filters index 678435093263cb30c7b89b6e8c8c073b71e4d728..585807259ec63edb73080935742fbd29f3fdfbba 100644 --- a/vs/2010/libobs/libobs.vcxproj.filters +++ b/vs/2010/libobs/libobs.vcxproj.filters @@ -302,5 +302,8 @@ media-io\Source Files + + libobs\Source Files + \ No newline at end of file diff --git a/vs/2010/test-input/test-input.vcxproj b/vs/2010/test-input/test-input.vcxproj index fac191091d604c1e24feef8e5a301cfb72666b49..eabedd507e23a5af90216a02156927849f3dd0d0 100644 --- a/vs/2010/test-input/test-input.vcxproj +++ b/vs/2010/test-input/test-input.vcxproj @@ -101,7 +101,7 @@ libobs.lib;%(AdditionalDependencies) - copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/$(TargetName)$(TargetExt)" + copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/plugins/32bit/$(TargetName)$(TargetExt)" @@ -121,7 +121,7 @@ libobs.lib;%(AdditionalDependencies) - copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/$(TargetName)$(TargetExt)" + copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/plugins/64bit/$(TargetName)$(TargetExt)" @@ -145,7 +145,7 @@ libobs.lib;%(AdditionalDependencies) - copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/$(TargetName)$(TargetExt)" + copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/plugins/32bit/$(TargetName)$(TargetExt)" @@ -169,7 +169,7 @@ libobs.lib;%(AdditionalDependencies) - copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/$(TargetName)$(TargetExt)" + copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/plugins/64bit/$(TargetName)$(TargetExt)" diff --git a/vs/2010/wintest/wintest.vcxproj b/vs/2010/wintest/wintest.vcxproj index d0e3747a01a9b600d5abc66435ffc31fdb7d8f2b..9a9ea10559aa7ba6039742a68f85d468929e222f 100644 --- a/vs/2010/wintest/wintest.vcxproj +++ b/vs/2010/wintest/wintest.vcxproj @@ -94,7 +94,7 @@ $(OutDir);%(AdditionalLibraryDirectories) - copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/$(TargetName)$(TargetExt)" + copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/bin/32bit/$(TargetName)$(TargetExt)" @@ -114,7 +114,7 @@ $(OutDir);%(AdditionalLibraryDirectories) - copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/$(TargetName)$(TargetExt)" + copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/bin/64bit/$(TargetName)$(TargetExt)" @@ -138,7 +138,7 @@ $(OutDir);%(AdditionalLibraryDirectories) - copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/$(TargetName)$(TargetExt)" + copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/bin/32bit/$(TargetName)$(TargetExt)" @@ -162,7 +162,7 @@ $(OutDir);%(AdditionalLibraryDirectories) - copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/$(TargetName)$(TargetExt)" + copy "$(OutDir)$(TargetName)$(TargetExt)" "../../../build/bin/64bit/$(TargetName)$(TargetExt)"