[Galaxy S III Android Development] leleobhz:
Some preliminary info:

I compiled the ROM and used the following blobs from https://github.com/TheMuppets/proprietary_vendor_samsung/tree/lineage-16.0/i9300

m0:/ # md5sum /system/vendor/bin/glgps* /system/vendor/lib/hw/gps.exynos4.vendor.so*
4f6afec85eac8dbb8e6253b79ec7d0f1 /system/vendor/bin/glgps
a04fe612c9a8a53281a8f411499734ad /system/vendor/bin/glgps.orig
06631c00c9355dc49f228f2cdb7e6206 /system/vendor/lib/hw/gps.exynos4.vendor.so
fc3f3865157731239c8f842e1c145010 /system/vendor/lib/hw/gps.exynos4.vendor.so.orig

GPS still not working, but binary executes:

130|m0:/ # /system/vendor/bin/glgps ; echo -e \\n$?
WARNING: linker: Warning: "/system/vendor/bin/glgps" has text relocations and will not work when the app moves to API level 23 or later (https://android.googlesource.com/platform/bionic/+/master/Text-Relocations-Enforced-for-API-level-23) (allowing for now because this app's target API level is still 19)
Process is already running, the second instance will not be started!
255

That said, GPS does not work. Here is a log sample:

03-19 22:12:39.396 2328 2880 I ActivityManager: START u0 {act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.eclipsim.gpsstatus2/.GPSStatus (has extras)} from uid 10124
03-19 22:12:39.682 2328 3547 I GnssLocationProvider: WakeLock acquired by sendMessage(SET_REQUEST, 0, com.android.server.location.GnssLocationProvider$GpsRequest@3de6c0e)
03-19 22:12:39.683 2328 2342 D libgps : proxy_gps_set_position_mode()
03-19 22:12:39.684 2328 2342 I GnssLocationProvider: WakeLock released by handleMessage(SET_REQUEST, 0, com.android.server.location.GnssLocationProvider$GpsRequest@3de6c0e)
03-19 22:12:39.898 9311 9321 I psim.gpsstatus: Background concurrent copying GC freed 6464(541KB) AllocSpace objects, 0(0B) LOS objects, 25% free, 2MB/3MB, paused 162us total 120.623ms
03-19 22:12:39.999 15276 15276 D gpslogd : CALL_SENTRY: GlEngine::eek:nStart took 251 ms (from4125668 to 4125919) (log=0,0,0), start: 22:12:39.748
03-19 22:12:39.999 2328 2342 I ActivityManager: Displayed com.eclipsim.gpsstatus2/.GPSStatus: +582ms
03-19 22:12:40.006 15276 15276 D gpslogd : CALL_SENTRY: marshal_gps_start took 322 ms (from4125604 to 4125926) (log=0,0,0), start: 22:12:39.684
03-19 22:12:40.007 15276 15276 D gpslogd : CALL_SENTRY: ProcessEvent took 322 ms (from4125604 to 4125926) (log=0,0,0), start: 22:12:39.684
03-19 22:12:40.015 15276 15276 I glgps : type=1400 audit(0.0:5823): avc: denied { connectto } for path="/dev/socket/fwmarkd" scontext=u:r:glgps:s0 tcontext=u:r:netd:s0 tclass=unix_stream_socket permissive=1
03-19 22:12:40.015 2107 2107 I netd : type=1400 audit(0.0:5824): avc: denied { read write } for path="socket:[121600]" dev="sockfs" ino=121600 scontext=u:r:netd:s0 tcontext=u:r:glgps:s0 tclass=tcp_socket permissive=1
03-19 22:12:40.008 2328 2905 D libgps : proxy_gps_status_cb()
03-19 22:12:40.009 2328 2905 D libgps : proxy_gps_status_cb()
03-19 22:12:40.012 2328 2905 D libgps : proxy_gps_xtra_download_request_cb()
03-19 22:12:40.020 2328 3547 W BroadcastQueue: Background execution not allowed: receiving Intent { act=android.location.GPS_ENABLED_CHANGE flg=0x10 (has extras) } to com.eclipsim.gpsstatus2/.notification.GpsBroadcastReceiver
03-19 22:12:40.024 2328 2905 D libgps : proxy_agps_ril_request_refloc_cb()
03-19 22:12:40.041 2328 15706 E GpsXtraDownloader: No XTRA servers were specified in the GPS configuration
03-19 22:12:40.071 2328 2905 E libgps-shim: shim_set_ref_location: AGpsRefLocation is too small, bailing out!
03-19 22:12:40.072 2328 2905 D libgps : proxy_gps_acquire_wakelock_cb()
03-19 22:12:40.072 2328 2905 I GnssHAL_GnssInterface: updateWakelock: GNSS HAL Wakelock acquired due to gps: 1, fused: 0
03-19 22:12:40.072 2328 2905 D libgps : proxy_agps_ril_request_setid_cb()
03-19 22:12:40.077 2328 2905 D libgps : proxy_agps_ril_set_set_id()
03-19 22:12:44.342 9311 9321 I psim.gpsstatus: Background concurrent copying GC freed 28061(1074KB) AllocSpace objects, 0(0B) LOS objects, 25% free, 2MB/3MB, paused 306us total 118.794ms
03-19 22:12:47.702 9311 9321 I psim.gpsstatus: Background concurrent copying GC freed 24769(950KB) AllocSpace objects, 0(0B) LOS objects, 24% free, 2MB/3MB, paused 400us total 282.228ms
03-19 22:12:49.716 2328 2905 D libgps : proxy_agps_ril_request_refloc_cb()
03-19 22:12:49.841 2328 2905 E libgps-shim: shim_set_ref_location: AGpsRefLocation is too small, bailing out!
03-19 22:12:49.842 2328 2905 D gpslogd : CALL_SENTRY: marshal_agps_ril_request_refloc took 126 ms (from4135636 to 4135762) (log=0,0,0), start: 22:12:49.716
03-19 22:12:50.920 9311 9321 I psim.gpsstatus: Background concurrent copying GC freed 20165(768KB) AllocSpace objects, 0(0B) LOS objects, 24% free, 2MB/3MB, paused 486us total 201.782ms
03-19 22:12:54.130 9311 9321 I psim.gpsstatus: Background concurrent copying GC freed 20027(750KB) AllocSpace objects, 0(0B) LOS objects, 25% free, 2MB/3MB, paused 573us total 201.595ms
03-19 22:12:58.054 9311 9321 I psim.gpsstatus: Background concurrent copying GC freed 24727(866KB) AllocSpace objects, 0(0B) LOS objects, 24% free, 2MB/3MB, paused 546us total 215.923ms
03-19 22:12:59.701 2328 2905 D libgps : proxy_agps_ril_request_refloc_cb()
03-19 22:12:59.777 2328 2905 E libgps-shim: shim_set_ref_location: AGpsRefLocation is too small, bailing out!
03-19 22:13:01.563 9311 9321 I psim.gpsstatus: Background concurrent copying GC freed 21995(797KB) AllocSpace objects, 0(0B) LOS objects, 24% free, 2MB/3MB, paused 530us total 162.314ms
03-19 22:13:04.966 9311 9321 I psim.gpsstatus: Background concurrent copying GC freed 20794(771KB) AllocSpace objects, 0(0B) LOS objects, 25% free, 2MB/3MB, paused 1.042ms total 257.045ms
03-19 22:13:08.470 9311 9321 I psim.gpsstatus: Background concurrent copying GC freed 20725(765KB) AllocSpace objects, 0(0B) LOS objects, 24% free, 2MB/3MB, paused 558us total 325.522ms
03-19 22:13:09.690 15276 15276 I glgps : type=1400 audit(0.0:5827): avc: denied { write } for name="fwmarkd" dev="tmpfs" ino=1787 scontext=u:r:glgps:s0 tcontext=u:object_r:fwmarkd_socket:s0 tclass=sock_file permissive=1
03-19 22:13:09.708 2328 2905 D libgps : proxy_agps_ril_request_refloc_cb()
03-19 22:13:09.779 2328 2905 E libgps-shim: shim_set_ref_location: AGpsRefLocation is too small, bailing out!
03-19 22:13:12.630 9311 9321 I psim.gpsstatus: Background concurrent copying GC freed 26686(911KB) AllocSpace objects, 0(0B) LOS objects, 25% free, 2MB/3MB, paused 436us total 210.002ms
03-19 22:13:15.915 9311 9321 I psim.gpsstatus: Background concurrent copying GC freed 20091(752KB) AllocSpace objects, 0(0B) LOS objects, 24% free, 2MB/3MB, paused 3.540ms total 214.197ms
03-19 22:13:19.392 9311 9321 I psim.gpsstatus: Background concurrent copying GC freed 20430(751KB) AllocSpace objects, 0(0B) LOS objects, 25% free, 2MB/3MB, paused 751us total 270.622ms
03-19 22:13:19.704 2328 2905 D libgps : proxy_agps_ril_request_refloc_cb()
03-19 22:13:19.799 2328 2905 E libgps-shim: shim_set_ref_location: AGpsRefLocation is too small, bailing out!
03-19 22:13:23.940 9311 9321 I psim.gpsstatus: Background concurrent copying GC freed 26861(911KB) AllocSpace objects, 0(0B) LOS objects, 24% free, 2MB/3MB, paused 1.685ms total 386.157ms
03-19 22:13:27.625 9311 9321 I psim.gpsstatus: Background concurrent copying GC freed 22370(805KB) AllocSpace objects, 0(0B) LOS objects, 25% free, 2MB/3MB, paused 393us total 198.982ms
03-19 22:13:29.702 2328 2905 D libgps : proxy_agps_ril_request_refloc_cb()
03-19 22:13:29.790 2328 2905 E libgps-shim: shim_set_ref_location: AGpsRefLocation is too small, bailing out!
03-19 22:13:31.264 9311 9321 I psim.gpsstatus: Background concurrent copying GC freed 20080(750KB) AllocSpace objects, 0(0B) LOS objects, 24% free, 2MB/3MB, paused 434us total 400.782ms
03-19 22:13:35.458 9311 9321 I psim.gpsstatus: Background concurrent copying GC freed 25853(897KB) AllocSpace objects, 0(0B) LOS objects, 25% free, 2MB/3MB, paused 3.571ms total 361.595ms
03-19 22:13:39.701 2328 2905 D libgps : proxy_agps_ril_request_refloc_cb()
03-19 22:13:39.850 2328 2905 E libgps-shim: shim_set_ref_location: AGpsRefLocation is too small, bailing out!
03-19 22:13:39.850 2328 2905 D gpslogd : CALL_SENTRY: marshal_agps_ril_request_refloc took 149 ms (from4185621 to 4185770) (log=0,0,0), start: 22:13:39.701
03-19 22:13:39.882 9311 9321 I psim.gpsstatus: Background concurrent copying GC freed 26695(909KB) AllocSpace objects, 0(0B) LOS objects, 24% free, 2MB/3MB, paused 607us total 303.267ms
03-19 22:13:43.178 9311 9321 I psim.gpsstatus: Background concurrent copying GC freed 20910(771KB) AllocSpace objects, 0(0B) LOS objects, 24% free, 2MB/3MB, paused 276us total 178.997ms
03-19 22:13:47.392 9311 9321 I psim.gpsstatus: Background concurrent copying GC freed 25238(877KB) AllocSpace objects, 0(0B) LOS objects, 24% free, 2MB/3MB, paused 589us total 299.337ms
03-19 22:13:49.704 2328 2905 D libgps : proxy_agps_ril_request_refloc_cb()
03-19 22:13:49.780 2328 2905 E libgps-shim: shim_set_ref_location: AGpsRefLocation is too small, bailing out!
03-19 22:13:51.805 9311 9321 I psim.gpsstatus: Background concurrent copying GC freed 26902(914KB) AllocSpace objects, 0(0B) LOS objects, 25% free, 2MB/3MB, paused 2.385ms total 234.488ms

Any ideas?