Implement multiarch support in catkin

commit 7bad3dabfc0efe28f4abfb010f746757ccde4dec
Author: Steven Peters <scpeters@osrfoundation.org>
Date:   Mon May 5 16:55:04 2014 -0700

    Implement multiarch support in catkin

    commit e99145af8fb2d46022395806e34d9468a4e0df92
    Author: Steven Peters <scpeters@osrfoundation.org>
    Date:   Mon May 5 16:45:19 2014 -0700

        Updates per comments by @dirk-thomas

        Remove shell keyword and call Popen with list of strings.
        Remove extra : from PATH variable packing.
        Fix indentation.
        Use " to fix escaped single quotes.

    commit a0eb2a0ac790f39d8e99f32c45f094479f0102c2
    Author: Steven Peters <scpeters@osrfoundation.org>
    Date:   Mon May 5 15:11:28 2014 -0700

        Don't check multiarch on non-Linux systems

    commit 655012a59b06825732ec6a31594f69b8670a4084
    Author: Steven Peters <scpeters@osrfoundation.org>
    Date:   Mon May 5 14:45:47 2014 -0700

        Updates per comments from @wjwwood

        Renamed the CATKIN_MULTIARCH_*_DESTINATION variables to
        CATKIN_*_ENVIRONMENT_PATHS.
        Use isinstance to verify that variables are lists.
        Check Popen return code instead of std_err.
        Fix logic error in catkin_generate_environment.cmake

commit 35d982799cba965e87897362d94b4efd1d814b6d
Author: Steven Peters <scpeters@osrfoundation.org>
Date:   Tue Apr 29 18:10:43 2014 -0700

    Implement multiarch support in catkin

    Squashed commit of the following:

    commit 0f2d1c77f16822072a898d745a4fb190e0c7ed18
    Author: Jose Luis Rivero <jrivero@osrfoundation.org>
    Date:   Wed Apr 30 02:36:11 2014 +0200

        Improve the method of detecting multiarch

        Run a two step approach using gcc -print-multiarch and, if failed,
        fallback to use dpkg-architecture.

    commit 6039d93ffb75d7e1fc9adfc356eca93e77d739af
    Author: Jose Luis Rivero <jrivero@osrfoundation.org>
    Date:   Tue Apr 29 19:21:44 2014 +0200

        Fix call to get_multiarch by removing the parameter

    commit dcbc8f34adb698d5f4dd35d291126f98a802dc68
    Author: Jose Luis Rivero <jrivero@osrfoundation.org>
    Date:   Tue Apr 29 19:08:27 2014 +0200

        Replace dpkg-architecture by gcc -print-multiarch.

        Silent the error on cmake if the flag is not present. Checking the
        content of the OUTPUT_VARIABLE for empty should be enough to detect
        errors on multiarch detection.

    commit c1c02af04e6f00bb3f18be9ee42dbd06c6d03f96
    Author: Steven Peters <scpeters@osrfoundation.org>
    Date:   Mon Apr 28 17:07:42 2014 -0700

        Fix test by escaping single quotes

    commit ae19d1b00804eb80c88be21cfb962a18f6661261
    Author: Steven Peters <scpeters@osrfoundation.org>
    Date:   Mon Apr 28 16:20:22 2014 -0700

        Starting to fix broken test

    commit 232d56bd995ce17459a7fb8b4d713e1768716402
    Author: Steven Peters <scpeters@osrfoundation.org>
    Date:   Mon Apr 28 15:55:27 2014 -0700

        Use temporary path variable in loop per @dirk-thomas 's suggestion

    commit 324ac938617dabacc9f0f2b54a6aa2f32417b470
    Author: Steven Peters <scpeters@osrfoundation.org>
    Date:   Mon Apr 28 15:46:22 2014 -0700

        Remove trailing whitespace from dpkg-architecture call

    commit 90f56a464926c41d7cd08a6f77b3e7d769117e2e
    Author: Steven Peters <scpeters@osrfoundation.org>
    Date:   Mon Apr 28 15:41:22 2014 -0700

        Use string with spaces for subprocess command

    commit 948eb7db7382441a572a7e38e484da75b6d91cfe
    Author: Steven Peters <scpeters@osrfoundation.org>
    Date:   Mon Apr 28 15:32:02 2014 -0700

        Fix subprocess invocation per suggestion from @wjwwood

    commit e114c9df656a5fd91662ae124573fb30cfdc3f39
    Author: Steven Peters <scpeters@osrfoundation.org>
    Date:   Mon Apr 28 15:24:38 2014 -0700

        Use CATKIN_GLOBAL_LIB_DESTINATION and os.path.join

    commit 6f89efe431491b9627089aee8f68cfae33cf0d4f
    Author: Steven Peters <scpeters@osrfoundation.org>
    Date:   Mon Apr 28 15:01:52 2014 -0700

        Attempt at multiarch support (#545)

        This is an attempt at multiarch support (#545), supercedes
        (#604). The dpkg-architecture command is used to identify
        an appropriate lib folder suffix to use for LD_LIBRARY_PATH
        and PKG_CONFIG_PATH. builder.py and
        catkin_generate_environment.cmake are modified
        accordingly, though there's still a problem with isolated
        devel spaces.